35
Decentralized Regulation of Distributed Systems: Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract This paper introduces a model of interaction control for the regulation of distributed systems, which can cope with their increasing openness and heterogeneity. This model goes well beyond conventional access control. It is, in particular, inherently decentral- ized, and thus scalable even for wide range of stateful policies. And it is very general, and not biased toward any particular type of policies; thus providing a significant realization of the age old principle of separation of policy from mechanism. This, so called, LGI model is an abstraction of an implemented mechanism called Moses (that has sometimes been called “LGI” as well), which regulates Internet com- munication, providing several important capabilities not present in the LGI model, but consistent with it. Moreover, the LGI model can be reified into a whole family of additional mechanisms—called LGI-based mechanisms —which would share the basic properties of this model, but may be applied to different types of communications, such as wireless communication of various kinds, and can add a host of features to those inherent in the model itself. 1

Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

Decentralized Regulation of Distributed Systems:

Beyond Access Control

Naftaly Minsky

Rutgers University

December 30, 2007

Abstract

This paper introduces a model of interaction control for the regulation of distributed

systems, which can cope with their increasing openness and heterogeneity. This model

goes well beyond conventional access control. It is, in particular, inherently decentral-

ized, and thus scalable even for wide range of stateful policies. And it is very general,

and not biased toward any particular type of policies; thus providing a significant

realization of the age old principle of separation of policy from mechanism.

This, so called, LGI model is an abstraction of an implemented mechanism called

Moses (that has sometimes been called “LGI” as well), which regulates Internet com-

munication, providing several important capabilities not present in the LGI model,

but consistent with it. Moreover, the LGI model can be reified into a whole family of

additional mechanisms—called LGI-based mechanisms—which would share the basic

properties of this model, but may be applied to different types of communications, such

as wireless communication of various kinds, and can add a host of features to those

inherent in the model itself.

1

Page 2: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

1 Introduction

Software technology is undergoing a relentless transition from monolithic systems, con-

structed according to a single overall design, into open systems, consisting of a distributed and

heterogeneous collection of autonomous components written in different languages, running

on different platforms, and designed, constructed, and even maintained by different organiza-

tions. (The concept of service oriented architecture (SOA), popular particularly for business

applications [15], is one approach, among many, for building such systems.) Unfortunately,

although there are powerful reasons for this transition to open systems, the anarchical nature

of such systems presents serious obstacles to their manageability, dependability and security

[26].

The thesis of this paper is that the inherent anarchy of open systems can be usefully

tamed by regulating the interaction between their disparate components, thus inducing a

degree of order into them. This, in analogy, is how orderly societal systems are formed. The

transportation system, for example, is governed by traffic laws that regulate such things as:

on which side of the road one is allowed to drive, to whom should one give the right of way, and

how should one react to the changing traffic lights. Such laws enable drivers to coordinate

harmoniously with each other, and to negotiate their passage through intersections with

relative safety. This, despite the fact that the drivers themselves are an heterogeneous

bunch, with little if any knowledge of each other, except for the confidence they have in the,

more or less, universal compliance with the common traffic laws.

The regulation of distributed software systems can have analogous salutary effects. In

particular, such regulation can help address the following needs of open systems: (1) The

need to protect a system from unruly, buggy, or malicious components, from within or from

without. (2) The need to provide for modularization, in particular by bundling a given group

of components—which may be dispersed over the Internet—into a kind of virtual module,

with some private aspects, and with a specified interfaces to the rest of the system. (3)

The need to facilitate safe and harmonious coordination between disparate agents, even if

they have little or no prior knowledge of each other’s internal behavior. And (4) the need to

support effective system management, by providing the designated managers with the power

to monitor and control the activities of the system components within their purview.

To be able to address these needs, and others, in a reasonably efficient and scalable

2

Page 3: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

manner, we maintain that a regulatory mechanism must satisfy the following three principles:

Principle 1 (statefulness) The regulatory mechanism needs to be sensitive to the history

of interaction between the regulated components.

Such sensitivity is obviously necessary for regulating coordinations, and for supporting man-

agement, both of which are highly dynamic processes; and it is also necessary for the security

of systems, which can be endangered by improper dynamic behavior of components, such as

sending message in an improper order, or sending too many messages.

Principle 2 (decentralization) The regulatory mechanism need to be decentralized.

This principle is required because centralized regulation tends to be unscalable, particularly

under stateful regulation (as argued in [24]), and because central control (by means of a refer-

ence monitor, say) tends to distort the inherently concurrent, and independent, interactions

between the distributed components.

Principle 3 (generality) The regulatory mechanism should not be biased towards any par-

ticular kind of policies, and should be able to support a wide range of them.

This is, essentially, the age-old principle of separation of policy from mechanism [31]. This

principle is increasingly critical because complex systems tend to involve a multitude of

diverse policies, regarding various types of system activities; and such policies often need to

interoperate. Using dozens of incompatible mechanisms to implement these policies would

be very hard, and would make the resulting system incomprehensible and unmanageable.

Unfortunately, these principles are largely not satisfied by conventional access control

(AC)—the currently dominant approach to regulation of distributed systems—which limits

the ability of AC to address the above mentioned needs of open systems. This is true for

contemporary industrial AC mechanisms such as Tivoli [17] and XACML [12]; for middle-

wares such as CORBA and J2EE; as well as for modern academic policy mechanisms such

as Ponder [10], Oasis [13], and SPL [27].

The limitations of the conventional AC mechanisms are due, in part, to their origin,

which is a model formulated more than thirty years ago, to regulate processes residing in

a single host. Despite the many extensions of the original model, including the use of

digital certificates and roles (as under RBAC [28]), and some attempts at stateful policies

3

Page 4: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

[27], most current AC mechanisms still retain much of their original structure, including a

mostly centralized reference monitor, and an unwarranted dichotomy between mandatory

and discretionary policies—which, as we shall see, tends to limit the generality of these

mechanisms. Moreover, current AC mechanisms generally share the rather limited objective

of the original AC model, which is, broadly speaking, to permit access only to those that

have the right for it, but without any concern about the the dynamic behavior of those that

get such access. This is analogous to having traffic laws that require only that every driver

has a driving license, without any concern about the dynamic process of driving.

We submit that conventional access control is not sufficient for effective regulation of

open distributed systems. What is needed is a more general, and structurally different,

kind of regulation, which satisfies the three principles stated above; and which controls not

only access to objects and services, but the entire dynamic process of interaction between

distributed agents. We use the term interaction control (IC) for such a regulation.

The purpose of this paper is to introduce an abstract model of such interaction control,

which we call the LGI model (LGI stands for “law governed interaction”). This model,

which is an abstraction of an existing interaction control mechanism called Moses1 [22], can

be reified into a whole family of mechanisms—called LGI-based mechanisms—of which Moses

is a member.

The rest of this paper is organized as follows: The LGI model is introduced in Section 2.

An analysis of this model is carried out in Section 3, along with a fairly detailed comparison

with conventional access control. Section 4 elaborates on a critical aspect of the LGI model,

namely the type of trust it provides between distinct actors interacting under an LGI-based

mechanism. We conclude in Section 5 with a very brief summary of this paper; and with a

glimpse at the realization of the LGI model via the Moses mechanism; and at some additional

LGI-based mechanisms currently under consideration.

1The Moses mechanism has also been called LGI, resulting in some confusion. Henceforth, we will reserve

the name LGI for the model introduced here, and will use the name Moses exclusively for the concrete

mechanism that inspired this model, but which is only one of its possible realizations.

4

Page 5: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

2 The LGI Model of Interaction Control

The model to be introduced here aims to provides the means for regulating the interactions

among the members of distributed groups of autonomous computing processes, which we

call actors. The regulation is expressed via a constraint, called a law, over the interaction

between actors. And an actor operating in compliance with a specific law L is called an

L-agent.

In formulating this model we make no assumptions about the internal structure or behav-

ior of the actors whose interactions are to be regulated, about the languages in which they

are programmed, or about the type of host on which they run. Actors are viewed essentially

as black boxes that interact by means of message passing. The messages exchanged between

the actors can be asynchronous or synchronous (via RPC of some kind). And the model

makes no assumptions about the reliability of the message passing, or about their latency;

or even about the fabric of the communication network, which can, in particular, be via the

Internet, or via some form of ad hoc wireless communication. But the specific mechanisms

based on this model may make various choices about these matters.

We start, in Section 2.1 by introducing the concepts of an L-agent, and of the law under

which it operates. Then, in Section 2.2, we introduce the concept of law-based trust between

agents, and a grouping of agents called communities, whose significance is based on the

existence of such trust. We conclude, in Section 2.3, with a discussion of the manner in which

this abstract model can to be reified into any number of concrete LGI-based mechanisms.

2.1 Agents and Laws

We define an L-agent to be an actor that complies with a given law L. (We often use the

term LGI agent, or simply an agent, when the law under which it operates is assumed to be

known, or if it is of no immediate concern.) Structurally, an L-agent x is viewed as a pair

x = 〈a, TLx 〉 (1)

where a is an actor, and TLx is a device trusted to mediate the interactions of a with other

agents, in compliance with law L. The mediator TLx is called the private controller (or simply

the controller) of agent x, and the actor a is said to animate agent x.

Mostly, however, this model views an agent as a unit, and is not concerned with its

5

Page 6: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

internal structure. In particular, this model does not specify the structure of the controller,

and its precise relationship with the actor whose messaging activity it mediates. Indeed, as

we shall see in Section 4, different realizations of this model may have the controller either

hosted by a different process than the actor, or by the actor itself. Also, we point out that

the controller TLx should not be viewed as a wrapper of a. In particular, because we do not

rule out the possibility that the same computing process a operates, concurrently, as the

actor of several different agents, possibly under different laws; moreover, the actor might

communicate via regular, non-LGI, messages.

Note also that an agent may be permitted, by its law, to cross-interact (or “interoperate”)

with agents operating under different laws; and even with actors not operating under LGI

at all2. But the messages sent by an L-agent must comply with its law L, and are, thus,

called L-messages.

Now, an LGI law (or, simply, a law) is defined in terms of three elements: (a) a set E of

regulated events; (b) the control-state (CSx) associated with each agent x; and (c) a set O of

control operations. We define these elements below, and then, in Section 2.1.1, we define the

concept of law, and what it means to comply with it. We conclude this section by modeling

the interactive behavior of an agent as a state machine on Section 2.1.2.

The Set E of Regulated Events: This is the set of events that may occur at any agent

and whose disposition is subject to the law under which this agent operates. The specific

agent where an event occurs is called the home of this event. And every event is associated

with the local time of its occurrence.

This set consists of the following three types of events, described here without any details

of their structures: (a) the arrived event, which represents the arrival at the home agent

of a message sent from elsewhere, identifying the law under which this message has been

sent; (b) the sent event, which represents the act of message sending by the actor of the

home agent; and (c) the adopted event, which occurs when some actor adopts a law L,

thus creating an L-agent (this is, thus, the very first regulated event in the lifetime of every

agent, representing its birth, as it were.) Note that a mechanism based on this model can

add events to this set, more about which later.

2For simplicity, we mostly ignore in this paper the possibility of an interaction between LGI agents and

actors not operating under LGI (a possibility that is supported by the Moses mechanism).

6

Page 7: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

The Control-State (CS) of an Agent: The control-state CSx is the state maintained by

agent x in compliance with the law under which it operates—it is distinct from the internal

state of the actor of agent x. This state, which is initially empty, can change dynamically

in response to the various events that occur at it, subject to the law under which this agent

operates.

The Set O of Control Operations: These are the operations that can be mandated by

a law, to be carried out at a given agent, upon the occurrence of regulated events at it. In

a sense, these operations constitute the repertoire of the law—i.e., it is the set of operations

that the law is able to mandate. The set O is partitioned into two subsets: the set Os of

state-operations, and the set and Oc of communication-operations. Operations in Os, which

are not spelled out here, can change the control state CS of an agent. Operations in Oc

affect the exchange of messages between a given agents and its peers. This set consists of

the following two operations: (a) the forward operation, which forwards a message from x

to some other agent; and (b) the deliver operation, which delivers a message to the actor

of the home agent—in effect, accepting the message on behalf of this actor. As in the case

of regulated events, the set O can be extended by a mechanism based on this model.

2.1.1 The Concept of LGI Law

The role of a law under LGI is to decide what should be done in response to the occurrence

of a regulated event at an agent operating under this law. This decision, which is called the

ruling of the law, consists of a sequence of zero or more control operations from the set O.

More formally, a law is defined as follows:

Definition 1 (law) Given a set E of all regulated events, a set O of all control operations,

and a set S of all possible control-states, a law L is a function:

L : E × S → O∗ (2)

In other words, a law maps every possible (event, state) pair into a sequence of zero or more

control operations, which constitute the ruling of the law. Note that this mapping may be

nondeterministic.

7

Page 8: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

It should be pointed out that this definition does not specify a language for writing

laws (which we call a law-language). This for several reasons: First, because despite the

pragmatic importance of choosing an appropriate law-language, this choice has no impact

on the semantics of the model itself, as long as the chosen language is sufficiently powerful

to specify all possible functions of the form of Formula 2. Second, by not specifying a law-

language we provide the freedom to employ different law-languages for different applications

domains, possibly under the same mechanism. Indeed, the implemented Moses mechanism

employs two different law-languages, one based on the logic-programming language Prolog,

and the other based on Java. Finally, leaving the language out of this model simplifies it,

and would facilitate the analysis of its underlying nature.

Several additional observations are worth making about this concept of law. First, a

law is local. That is, it is defined locally, at each agent, in the following sense: (a) the law

regulates explicitly only local events at each individual agent; (b) the ruling of the law for an

event e at agent x depends only on e itself and on the local control-state CSx of x; and (c) the

ruling of the law at a given agent x can mandate only operations to be carried out locally at

x, such as an update of the local control-state CSx, or the forwarding of a message from x to

some other agent. As we shall see later, this locality has profound implications. In particular,

it enhances the scalability of LGI-based mechanisms, and with no loss of generality.

Second, a law cannot be inconsistent. That is, a law specifies a single ruling for any given

(event, state) pair. This is worth mentioning, in particular, because many conventional AC

mechanisms admit policies with conflicts, and then have to provide means for the resolution

of these conflicts.

Third, it may be instructive to compare the concept of law under LGI with the concept

of policy under conventional AC. Broadly speaking an LGI law represents a class of AC

policies. For example, we may have a law that represents a whole class of capability based

policies, and another law that represents RBAC policies. More specifically, the counterpart

under LGI of a single AC policy, is a law together with the states of all agents operating

under it, at a given moment in time. These states may represents such things as the the

capabilities possessed by these agents. We shall illustrate this correspondence via an example

in Section 3.1. In this paper we use the term “policy” when discussing access control; and,

sometimes, when talking informally about a constraints over interactions.

8

Page 9: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

Compliance with a Law: We say that an agent x complies with a given law L—and thus

constitutes an L-agent—if the following three conditions are satisfied: (1) the ruling of law

is carried out3 in response to the occurrence of every regulated event at x; (2) the ruling,

which consists of a sequence of operations, is carried out atomically for each event at x, in

the order of the occurrence of these events (events that occur simultaneously are handled

sequentially, in arbitrary order); and (3) control operations are not carried out at x, unless

mandated by its law—thus, in particular, no messages are forwarded from x to anybody,

without it being mandated by the law.

2.1.2 An L-Agent as a State-Machine

It is instructive to take the state machine view of the interactive behavior of an L-Agent.

This view is defined by the following variant of Formula 1:

L : E × S → (S × O∗c ) (3)

where E—the set of regulated events—represents the input alphabet of the machine; S rep-

resents (as above) all possible control-states of an agent; and Oc—the set of communication

operations—represents the output alphabet of the machine. In other words, a law in this

formula maps every (event, state) pair into a new state, via state operations from Os in

its ruling, along with the set of outputs (using the state machine terminology) defined by

operation from Oc in its ruling.

This formula represents explicitly the interplay between the law and the state of an agent.

On one hand, the ruling of the law depends, in part, on the state of the home agent. On

the other hand, the law maps the state to another state. That is, the dynamic behavior

of the state of an agent is regulated by its law. This interplay between the fixed law and

the dynamically changing state is an important characteristic of the LGI model, which is

responsible for much of its power, as we shall see in due course.

It should be pointed out that this view of an agent is similar to the model of I/O automata

introduced by Nancy Lynch [19]. But there is a fundamental difference between LGI and

the I/O automata model, in their treatment of collections of distributed actors, which is the

subject of the following section.

3If the ruling of the law for a given event is empty, then nothing extra will be done in response to this

event; in other words, this event is effectively ignored by the law.

9

Page 10: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

2.2 Communities, and the Concept of Law-Based Trust

As has been pointed out above, the purpose of this model is to provide means for regulating

the interactions among the members of distributed groups of agents. The main type of group

to be considered here is a set of agents operating under a common law L. Such a group is

called an L-community (or, simply, a community, when the identity of L is assumed known,

or is of no concern). While our discussion below focuses on communities, the ability of agents

operating under different laws to cross-interact, subject to their respective laws (as stated

in Section 2.1), means that one can deal with systems consisting of multiple interoperating

communities.

One of the main advantages of effective regulation is that it provides the members of

an L-community a degree of predictability about each other’s interactive behavior, even if

the community is heterogeneous, and even if its members are unfamiliar with each other’s

structure and internal behavior. Such predictability could allow software agents to coordinate

harmoniously with each other, in some analogy to the manner in which car drivers coordinate

their passage through intersection, based on their (often reliable) trust that other drivers

comply with the traffic laws.

But this ability to predict the behavior of the members of an L-community is meaningful

only if we know who they are. This is not as simple as it may seem to be. In particular,

when getting a message m from some IP address, how does one know that it has been sent

by a bona fide L-agent? In other words, how does one know that m is an L-message?

One way for knowing who is an L-agent, is by directly enforcing a law L on a given set S

of actors. This can be done by isolating all members of S from all means of communications,

except communication via mediators designed to enforce law L. But while such direct

law-enforcement may be possible in some close environments, such as a LAN, it is not

possible for more open systems, where one cannot isolate actors from the standard means of

communication.

To provide a meaningful ability for an LGI agent to reason about the interactive behavior

of its peers, in the absence of direct law-enforcement, one needs to be able to recognize other

LGI agents upon actual interaction with them, and to identify the law under which they

operate. We call such a recognition law-based trust (or L-trust, for short), as defined below:

Definition 2 (law-based trust) Consider an L-agent x interacting with some computing

10

Page 11: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

process y, (i.e, x sends a message to y, or receives a message from it). We say that x has a

law-based trust in y if the following two conditions are satisfied: (a) x can recognize whether

or not y is an LGI agent; and (b) if y is an LGI agent, operating under some law L’, then

x can determine if L’ is equal to its own law L, and it can get the text of law L’, if it is

different from L.

In particular, L-trust means that if both x and y are LGI agents, operating, respectively,

under laws L and L’, and if x sends a message to y, then: (a) x can be confident that the

message it is sending would be treated by y in compliance with its law L’; and (b) y can

be confident that the message it got from x has been sent in compliance with the law L of

x. So, this concept of trust provides interacting LGI agents with a degree of predictability

about each other’s behavior, whether they belong to a single community, or to different ones.

Note that this model does not specify how L-trust is to be supported. This is left up to

every LGI-based mechanism.

L-Trust Versus Law-Enforcement: L-trust is clearly weaker than the trust resulting

from actually forcing certain actors to become L-agents. Nevertheless, the very existence

of L-trust may often effectively compel certain actors to operate under a particular law L.

Broadly, this can be the case when one wishes to use services provided only under this law.

We illustrate this situation via the following example.

Consider an enterprise, whose management decided that all internal services—such as

printing, file-services, databases, etc.—be paid with internal currency, made available to

various agents as their budgets. The requests for such services, and the budgets that enables

them, are to be governed by the following (informally stated) three-point LGI law: (1) an

agent that plays the role of budget officer can assign any amount of currency to the budget

of any agent; (2) each service request must carry a payment, which cannot exceed the budget

available to the client—and which is deducted automatically from its budget, and then added

to the budget of the server; and (3) servers may send the balance of their earning to the

budget-officer, to get some credit (not specified here) from the management.

Now, if the budget officer operates under this law, than any server that wants to get

credit for its services would have to do likewise. And the clients who wish to get such

services would have to follow suit, both in their interaction with the compliant servers, and

with their interaction with the budget officer.

11

Page 12: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

Due to this effective similarity between strict law-enforcement and L-trust, we will oc-

casionally talk about an LGI-based mechanism as if it enforces its laws, although this is

not strictly correct. This somewhat loose usage of the term “enforcement” is quite common

in access-control literature, when dealing with open set of clients and servers. Indeed, a

reference monitor, e.g. such as employed by the XACML mechanism, also cannot enforce its

policies, but can only provide an analogue for our law-based trust. Yet, it is usually referred

to as a policy enforcement mechanism.

2.3 From LGI model to LGI-based mechanisms

The LGI model is not itself an interaction control mechanism, because it is incomplete.

But it can be completed, and extended, in a variety of different ways, giving rise to a

potential family of what we call LGI-based mechanisms—one of which being the existing

Moses mechanism [22], which inspired this model. The elements of this model that need

to be completed, and those that can be extended, for the creation of a concrete LGI-based

mechanism, are mainly the following: (a) the specification of the communication medium

between system components; (b) the sets E and O; (c) the language for writing laws; and

(d) the support for L-trust. Moreover, an LGI-based mechanism can add new elements,

provided they are not inconsistent with the model itself. We now elaborate briefly on some

of these matters, pointing out the choices that have been made for the construction of the

Moses mechanism.

Concerning the nature of communication, Moses has been designed for Internet commu-

nication, using TCP/IP; but it is easy to apply the LGI model to variants of TCP, such

as HTTP, and it should be possible to do so for radically different types of communication,

such as wireless.

to other Internet communication protocols, such as HTTP, as well as to various modes

of wireless communication.

The set E of regulated events, and the set O of control operations specified in this model

are complete, in the sense that they are sufficient for an LGI-based mechanism. Indeed, as we

shall see in Section 3, an LGI-based mechanism that employs precisely these sets is possible,

and is more powerful, and better structured, than the traditional AC mechanisms. However,

one can add important capabilities to an LGI-based mechanism—such as obligations and

exception handling—simply by extending these two sets, as has been done in Moses.

12

Page 13: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

A law-language is, of course, required for every LGI-based mechanism. In particular, the

Moses mechanism provides a choice between two such languages: one based on prolog, and

one on Java; and there is work underway for adopting a simpler language for Moses. In this

paper we use an informal law-language, described in in due course.

The support for law-based trust is critical to every LGI-based mechanism. In Section 4

we will discuss two techniques for providing such support, one of which is employed by the

Moses mechanism.

Finally, one can enhance the power and usability of an LGI-based mechanism by adding

completely new elements to it. We mention here two such elements, one of which has been

already added to the Moses mechanism, and the other is under construction. The first of these

is an hierarchical structure of laws, which adds significantly to our ability to regulate truly

complex systems, such as virtual enterprises [2]. The second new element is a mechanism for

changing the law of a community dynamically, while the community operates. This features

has been proposed in the original paper about LGI [20], but has not been implemented yet.

3 Analysis of the LGI Model

The purpose of this analysis is to identify the main characteristics of the LGI model, and thus

of every LGI-based mechanism—such as Moses. We will also compare this model with the

traditional access control, attempting to highlight the underlying differences between the two.

However, for simplicity we will confine our discussion to the case of a single L-community;

that is, we will not consider in this section any cross-interaction between different laws.

For the sake of this analysis, the reader is asked to assume that the LGI model has been

reified into a concrete mechanism by completing the parts left open by the model, along the

lines prescribed in Section 2.3, but without any extensions (in particular, without extending

the sets E and O of the model). We will, thus, be discussing an essentially minimalist LGI-

based mechanism, considerably weaker than the implemented Moses, in particular. Yet, we

will find that even this stripped down mechanism, would (if implemented) be more powerful

than conventional access control.

We start by exemplifying the manner in which AC policies can be handled under the

LGI model, via a law that implements a variant of the conventional capability-based class

of policies. In Section 3.2 we discuss the treatment of stateful policies—i.e., policies that

13

Page 14: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

are sensitive to the history of interaction. We then reflect on the underlying structure of

the LGI model, and on its main consequences, as follows: first, we show in Section 3.3

that this model unifies the DAC and MAC dichotomy of traditional access control; second,

in Section 3.4, we show that this unification facilitates the realization of the principle of

separation of policy from mechanism, which largely eluded conventional AC mechanisms;

and third, in Section 3.5 we discuss the global sway that an LGI law can have over the

community governed by it—this despite the inherently local nature of laws. We conclude in

Section 3.6 by demonstrating the support provided by the LGI model to context sensitive

policies, for several types of context.

3.1 The Treatment of Conventional AC Policies

To show how conventional AC policies can be implemented under LGI, we discuss here a law

that implements a class of capability-based access control policies. Before we describe the

details of this law, called CB (for “capability based”), we outline below its main provisions.

First, under this law a capability is a term cap(y, d), which, when contained in the CS of

some agent x, signifies the right of x (its holder) to send messages of the form msg(m)

(with any content m) to agent y. Second, a capability cap(y, d) is delegateable only if d

is 1; and it can be delegated by its holder to any agent z by sending to z the message

delegate(cap(y, d′)), where d′ can be either 1 or 0. The arrival of this message at z would

provide z with a delegateable or an undelegateable version of this capability, depending on

whether d′ is 1 or 0. (Note that this is just one of many possible ways for doing delegation;

we will return to the general topic of delegation later.) Finally, every new member x of

the CB-community is initialized with the delegateable capability cap(x, 1) for itself —which

according to the above, it would be able to delegate to any other member.

We specify this law here via an informal law-language modeled after the real Prolog-based

language of the Moses mechanism [22]. Under this language, a law (see Figure 1) consists of

a sequence of event-condition-action rules of the following form:

UPON e IF c DO [o]

where e is a regulated event (or a pattern that could match several such events); c is an

optional condition defined over the event e, and over the state CS of the home agent ; and [o]

14

Page 15: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

is the sequence of control-operations that constitute the ruling of the law (i.e., the “action”

part of the rule).

Whenever an event e′ occurs at some some agent x, the ruling of its law is computed in

the following way: The sequences of rules that constitute the law are evaluated from top

to bottom, until a rule is found whose e part matches event e′, and whose condition c is

satisfied. The action [o] of this successful rule is then defined as the ruling of the law. If no

rule succeeds for a given event and state, then the ruling of the law for this event is defined

as empty, causing this event to be simply ignored.

Few additional details about this informal language are needed for the understanding of

our example laws in this paper. In particular, the control-state of the home agent can be

checked via a predicates of the form ∃T, which means “there exists a term T in the control

state of the home agent.” More details are provided in Appendix A.

R1. UPON adopted DO [+cap(self,1)]

R2. UPON sent(msg( ),Y)

IF ∃cap(Y, ) DO [forward]

ELSE DO [deliver(‘‘illegal message’’)]

R3. UPON arrived( ,msg( )) DO [deliver]

R4. UPON sent(delegate(cap(Y,D)), )

IF (∃cap(Y,1)) DO [deliver]

R5. UPON arrived( ,delegate(cap(Y,D)))

DO [+cap(Y,D), deliver]

Figure 1: Law CB of Capability Based Control

Now, law CB itself, written in this informal language, is displayed in Figure 1. This law

consists of five rules, which we now discuss in some detail. Rule R1 is triggered by the

adopted event—the first event in the lifetime of every agent—and its ruling is to add to the

state (CS) of the home agent a term cap(self,1) representing a delegateable capability

for itself (note that the symbol self denotes the home agent). This means that every agent

operating under this law would be initialized in this way.

Rule R2 is triggered by the sending of any message of the form msg( ) (“ ” means an

arbitrary term—see Appendix A for this and other syntactic details of this law), to any agent

15

Page 16: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

Y. This rule produces the ruling to forward the sent message only if the condition ∃cap(Y, )

is satisfied; that is if the sender has a cap term for Y in its state. Otherwise, this rule would

produce a ruling to deliver to the sender an “illegal message” warning. When a message

sent under this rule arrives at its destination it is delivered without further ado by Rule R3.

Note that these two rules provide the cap(...) terms with the semantics of a right to send

messages, i.e., the semantics of capabilities.

Rule R4 is triggered by an agent sending a message delegate(cap(Y,D)) to any agent

Z. The ruling for such sending would be to forward this message, but only if the sender

has the term cap(Y,1) in its CS, representing a delegateable capability. Finally, when this

delegate message arrives at its destination Z, it would trigger Rule R5 at Z, which would

cause the sent capability to be added to the CS of the receiver.

Finally, note that this law represents a class of AC policies, in that a policy under access

control includes the specification of a particular distribution of rights (e.g., capabilities),

while law CB allows for arbitrary such distributions. And it is only one of many possible

classes of capability-base policies, because law CB establishes a particular initialization of

states of agents, and a particular approach to delegation. And, obviously, many other

approaches to such matters can be supported by LGI—more about which, later.

3.2 Scalable Sensitivity to the History of Interaction

We now address the manner in which the LGI model meets the need for regulation to be

scalabely sensitive to the history of interaction between agents. Broadly speaking, this is

done not by maintaining the history itself, and not even selected parts of it—although both

are possible under this model, if really necessary—but by maintaining relevant functions of

this history, in the local states of individual agents.

We start this discussion with a very simple, and rather synthetic, example of so-called

budgetary control—a very important types of stateful control, which is nevertheless not sup-

ported by most, if not all, AC mechanisms. (For the treatment of a much more realistic

version of this example via LGI, see [22].) After this demonstration of the manner in which

sensitivity to history is accomplished under LGI, we will discuss the scalability of this ap-

proach, and point out to aspects of LGI that are instrumental in enabling it. We conclude

with a review of the treatment of stateful control under conventional access control, and will

point out the underlying reason for its limitations.

16

Page 17: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

A Messaging-Budget (MB) Law—an Example: Consider a community required to

operate under the following constrain: no member of this community is allowed to send more

than 1000 messages. This constraint can be established by mean of law MB displayed in

Figure 2, under which the term budget(B) in the CS of an agent x means that x is allowed

to send B messages.

R1. UPON adopted DO [+(budget(1000))]

R2. UPON sent( , )

IF ∃budget(B) AND (B > 0) DO [decr(budget(B)), forward]

ELSE DO [deliver(‘‘message blocked’’)]

R3. UPON arrived( , ) DO [deliver]

Figure 2: Law MB of Messaging-Budget

This law consists of three rules. Rule R1 is triggered by the adopted event, and its ruling

is to add the term budget(1000) to the CS of the newly created agent—thus providing each

MB-agent with the initial messaging budget of 1000. Rule R2 is triggered by the sending

of any message, with the following result: If the message sender has in its CS the term

budget(B) with a positive B, its budget would be decremented by 1 (that is, budget(B) will

be replaced by budget(B-1)) and the message would be forwarded to its destination. But

if B is 0 then the sender would get a “message block” response, and its message would not

be forwarded. Finally, by Rule R3, the arrival of a message to any agent would cause this

message to be delivered with no further ado.

Scalability: The control provided by this law is scalable in two important senses. First,

it is scalable with respect to the length of interaction history. This is because there is no

need to maintain a complete, or even partial, record of the actual history of interaction.

All one needs here is to maintain the easily computable function of this history, namely the

balance of the budget for each agent. And the overhead of computing this balance would

stay essentially the same for any size of initial budget N. Second, this control is scalable with

respect to the size of the MB-community, because this law can be enforced in a completely

decentralized manner. This is due to the fact our constraint is defined over the local history

at each agent.

17

Page 18: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

Of course, not every history-sensitive constraint can be implemented under LGI in such

a completely scalable manner. Because one can imagine constraints that require longer

historical records to be maintained, and which are non-local. LGI can handle all such

constraints, as discussed in Section 3.5, although not always scalably. But it is worth noting

that many kinds of important history-sensitive constraints are implementable very scalably

under LGI. This includes, in particular, the well known Chinese wall policy as has been

shown in [21]; and dynamic separation of duties policies, as has been shown in [4].

Enablers: It is worth identifying the aspects of the LGI model that enables this treatment

of history-sensitive constraints. Besides the very concept of law, and the fact that it is

sensitive to the local state at every agent, the main enabler of sensitivity to history is the

fact that the ruling of the law is not restricted to accepting a message or blocking it, but it

can contain several operations, including operations that can change the state. This allows

an agent to maintain in its state an arbitrary function of its local history of interaction.

The lack of this facility in most conventional AC mechanism, preclude them from providing

reasonably scalable sensitivity to history, as we shall see below.

Related Work: Traditional AC is stateful in a very limited sense: the distribution of

rights among the various subjects can be changed by delegation of rights. The need for

some additional forms sensitivity to history has been pointed out early on, including: the

so called “Chinese wall” policies and dynamic separation of duties policies [28]. But the

first comprehensive support for history-sensitivity has been proposed in the 1991 paper that

introduced LGI [20]. This has been followed by several attempts to provide general history-

sensitivity in the context of conventional access control. The best of these seem to be an AC

model introduced by Jojodia et al. [14], and the AC mechanism called SPL introduced and

implemented by Ribeiro et al. [27]. But both of these attempts are not sufficiently scalable,

due to inherent limitation of traditional access control.

Both of the above mentioned attempts are unscalable with respect to the size of the com-

munity in question, because both employ a central reference monitor for policy enforcement.

And although in the absence of state, a centralized policy enforcement can be made scal-

able by replicating the reference monitor, such replication becomes very problematic under

stateful policies because of the need to synchronize the replicas, as has been argued in [24].

18

Page 19: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

Regarding scalability with respect to the length of interaction history: The model of

Jojodia et al. [14] is not scalable because it implements history-sensitivity by storing globally

every event (or action) that happen in a system. The SPL mechanism of Ribeiro et al. [27],

is more sophisticated in this respect. This mechanism provides an automatic “compilation

algorithm” that reduces the amount of information to be saved and the way that information

should be queried, for a given constraint to be evaluated over the history. The technique is

clearly more scalable than the previously mentioned one, but it is not scalable enough. In

particular, to implement our simple example of messaging budget, SPL will have to keep at

least part of the history of up to N messages—where N is the initial messaging budget—and

this history will have to be kept in a central place, which makes it quite unscalable for large

values of N. The underlying reason for this lack of scalability of SPL, and of the Jajodia’s

model, is that both of them retain the traditional AC model, under which a policy can only

rule to permit or deny the transfer of a message, but cannot also change any state, as is done

under law MB above.

3.3 The Unification of Mandatory and Discretionary Controls

The 1999 report “Trust in Cyberspace,” by the National Academy of Science, characterizes

the conventional access control technology as follows ([29] page 114): the two basic types

of access control policies that have dominated the computer security work for over two and

a half decades [are the] discretionary access control [DAC] and mandatory access control

[MAC] . This report continues to explain that DAC policies are discretionary in the sense

that a subject can pass (via delegation) it’s access permissions on to another subject; and

that MAC policies enforce access control on the basis of fixed regulations mandated by a

central authority, as typified by the Bell-LaPadula model.

But despite the prevalence of this MAC-DAC dichotomy, it is highly problematic. First,

because it is not quite coherent, and second because it tends to limit the generality of

AC mechanisms. This dichotomy is not coherent in that every DAC policy has an implicit

mandatory aspect. For example, the distribution of capabilities in an access control matrix is

a common example of a discretionary (DAC) policy, but the very meaning of the capabilities,

and the ability to delegate them, are based on an essentially mandatory (MAC) policy built

into the very fabric of the AC mechanism at hand. It is this implicit nature of the mandatory

part of this policy that makes it seem to be a pure DAC, which it is not. Moreover, making

19

Page 20: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

the mandatory counterpart of what is called a DAC policy implicit, reduces the flexibility

and generality of AC mechanisms. Because any change in this mandatory policy—like a

change of the delegation process—would involve changing the mechanism itself, or replacing

it with another. We will return to this matter in the following section.

Under the LGI model, on the other hand, a regulatory regime4 has two parts: the explic-

itly stated and fixed law, which is mandatory for all members of the community in question;

and the semi discretionary, dynamically changing, state. While the law and the state cor-

respond roughly to the concepts of MAC and DAC, they cannot be viewed as a dichotomy,

but are, rather, inextricable intertwined parts of a unified concept of regulation. Indeed,

the ruling of the law depends on the state; and the state changes in response to events that

occur mostly at the discretion of some actors, but only according to the mandatory rules

laid out by the law.

This interdependence between the law and the state under the LGI model is clearly

demonstrated by law CB introduced in Section 3.1. It is this law that defines the semantics

of capabilities, and the manner in which they can be delegated. But the actual distribution

of such capabilities—i.e., the state of the various agents—is determined by the delegate

messages, sent at the discretion of the various actors. An important consequence of this

unification of the traditional MAC and DAC is discussed next.

3.4 Separation of Policy from Mechanism

One of the holy grails of secure computing has been the age-old principle of separation

of policy from mechanism, formulated in the early 1970s, by Wulf et al. [31] and others.

What this principle means, essentially, is that an AC mechanism should be as general as

possible, without a bias to any particular kind of policies, thus accommodating a wide range

of them. But despite the obvious importance of this principle—particularly for complex

systems that need to use multiple policies—it has not been satisfied to a significant degree

by conventional AC mechanism. This is arguably because the failure of these mechanisms

to have the mandatory aspects of a policy explicit.

The situation is very different under the LGI model due to its concept of law. The lack

of bias of this model toward any particular type of policy is evident from our example CB4We are avoiding here the term “policy,” to avoid confusion with the concept of policy under the traditional

AC model.

20

Page 21: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

law. Although the LGI model has no built-in concepts of capability, or of delegation, this

law creates a certain interpretation of these concepts, as it can as easily creates others, as

we shall see below. We now demonstrate the degree to which LGI satisfies the principle of

separation of policy from mechanism, via brief case studies of the treatment of two well known

aspects of control—delegation, and role-based access control (RBAC)—under conventional

AC mechanisms, and under LGI.

3.4.1 Delegation—a Case Study

The basic concept of delegation is very simple: it is the giving to somebody else a right that

one has for itself. But there are various possible ways for delegation to be carried out, and

various kinds of constraints that one may want to impose on the process of delegation. We call

a specific choice among these possibilities delegation-regime, which may specify such things as

who is permitted to delegate which privileges to whom, and under which circumstances; and

how such delegation should affect the privileges of the delegator itself. Here is a sample of

possible aspects of such a regime: (1) The requirement that certain rights would be delegated

only by transfer ; that is, the delegator would give up its own right, when delegating it to

somebody else. (2) Some restriction on the number of times a given right may be delegated, if

at all. (3) Making delegation operate as loans, to be returned within a specified time period.

And, of course, one may want to have a sophisticated delegation regime that employs some

combinations of the above mention types of constraints, and others.

Despite the need of different applications to employ different delegation regimes of such

kinds, most conventional AC mechanism employ a fairly simple built-in regime that does

not provide much choice. According to [6], “The standard approach to delegation is binary:

either delegation is possible, and then no substantial further control over the way it is used

is possible, or else no delegation is permitted.” Recently, several more sophisticated delega-

tion regimes have been proposed. In particular, Bandmann et al. [6] proposed a model of

constraint delegation which allows one to control the possible shapes of delegation chains.

Also, Li et al. [18] permitting a fixed upper bound to be imposed on the depth of dele-

gation chains. But each of these delegation regimes requires a new AC mechanism to be

constructed—contrary to the principle of separation of policy from mechanism.

Under the LGI model, on the other hand, the delegation regime is specified by the law of

a community, as it is the case with law CB introduced in Section 3.1. And it is easy to see

21

Page 22: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

how other types of delegation regimes can be similarly defined. For a demonstration of how

sophisticated delegation and revocation (the inverse of delegation) regimes can be defined

by a law, under the Moses LGI-based mechanism, see [5, 1].

3.4.2 Role Base Access Control (RBAC)—a Case Study

An important extension of the traditional matrix-based AC model has been the introduction

of the “role-based access control” (RBAC) model, by Sandhu and his colleagues [28]. This

model views roles—which represent such things as the position that a given individual holds

in a given organization—as a set of permissions, and defines an AC-policy essentially as a

pair of mappings: a mapping of users to sets of roles, and a mapping of roles to sets of

permissions. The RBAC model also provides for a hierarchical organization of roles, and

includes certain constraints on the combinations of roles that a given individual can possess

at one time.

The RBAC model has been widely adopted by the industry and been broadly accepted

by the research community. But despite its considerable structural complexity (the official

RBAC has four “reference models” of increasing sophistication) RBAC proved to be overly

restrictive, which gave rise to a host of RBAC-based models that generalized RBAC in

various ways. These generalizations include, but are not limited to: (1) parameterization of

the roles of a subject by its other attributes [11]; (2) making authorization dependent on

some dynamic relationship between the subject, and the object on which it operates [7]; (3)

making the rights associated with a role dependent on the context, such as time and location

[25]; and (4) providing for dynamic, and temporal, control over role-permission activation

and deactivation, and over user-role assignment and activation (TRBAC [8] and GTRBAC

[16]).

Now, the original RBAC model, and each of its extensions, requires a different AC mech-

anism for its support—again, in a sharp breach of the principle of separation of policy from

mechanism.

Under LGI, on the other hand, we have shown in [4] that the original RBAC model itself,

and every one of the above mentioned extensions of it, can be defined simply by writing a

suitable law. And, thus, they can all be realized via a single fully implemented LGI-based

mechanism. And this, despite the fact that LGI has no built-in concept of roles.

22

Page 23: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

3.5 On the Global Sway of the Local Laws of LGI

By its very definition, a law L eestablishes a regularity over the entire L-community governed

by it, in that every member of this community responds to events occurring at it according

to the same law L. This does not mean that the members of this community behave in

the same way, because different members may have different states, resulting in different

rulings for the same events occurring in them. But the existence of a common law induces

an order over a community, providing its members with a degree of predictability concerning

the possible behavior of their peers. For instance, and under law CB (of Section 3.1) a term

cap(z,0) has the same meaning for every agent that has it in its CS; and no agent operating

under law MB (see Section 3.2) can send more than N messages.

Structurally, the regularities that can be established via LGI laws are local, in that the

constraint imposed by a given law L on the behavior of every member of the L-community

can be sensitive only to its own local state—due to the local nature of laws. This seems

to imply that non-local constraints, i.e., a constraint defined over the coincidental state

of several (perhaps all) community members, cannot be imposed via LGI laws. A general

definition of the concept of non-local constraints is somewhat problematic because of the

inherent ambiguity of the term “coincidental” in a distributed context. One way to define

this concept involves assuming a central reference monitor that mediates all interactions

between the members of a given community, thus maintaining its global state. Due to space

limitation we will not provide here a formal definition of this concept, but will, instead,

bring the following simple, if synthetic, example of a non-local constraint: the aggregate of

all messages sent by all members of a given community should not exceed a given N .

Fortunately, as has been shown in [24], the locality of LGI laws does not reduce their

expressive power, in the following sense:

Any non-local constraint on interaction that can be implemented via a central

reference monitor, which maintains the global interaction state of the entire com-

munity, can be formulated via a local LGI law.

This important result is due to the ability of LGI laws to mandate the movement of relevant

information from one agent to another, getting such information to the appropriate decision

points. This ability can be used to effectively localize non-local constraints. Of course,

the implementation of a non-local constraint via a local law may involve certain amount

23

Page 24: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

of aggregation of information, which may reduce its scalability. But we have found that in

practice, many useful non-local constraints involve modest amounts of aggregation, which

has only a marginal effect of scalability. For more about this matter, see [32].

3.6 Sensitivity to Context

The LGI model seems to be inherently insensitive to anything but the history of the regulated

events that occurred at each agent (which includes the history of interaction of a given agent

with others). This is because the ruling of a law is a function of the pair (event, state), and

the state is itself some function of the history of local events. Nevertheless, we show here

that LGI laws can be written to be effectively sensitive to other things besides the interaction

history. Specifically, we will discuss sensitivity to what we call: (a) credentials, (b) physical

context, and (c) inside information.

Sensitivity to Credential: Much of the trust one is willing to place in actors over the

Internet is based on credentials represented, most notably, by digital certificates. And both

authentication and authorization decisions needs to be sensitive to such credentials. This

gave rise to what is broadly called trust management, and to tools such as KeyNote [9].

LGI can exhibit such sensitivity to credential simply as follows. The law of a community

can be written to accept valid certificates signed by specified CAs, which are contained

in certain messages. For example, a given law L can be written to accept certain types

of messages sent by an actor as a submission of a certificate attesting to the role played

by this actor in a given societal context (say, an enterprise). This law would then verify

the cryptographic validity of this certificate, and that it has been signed by a CA that is

acceptable to this law. If the certificate is found valid and acceptable, then the law can

mandate to record the role attested to by the certificate in the state of agent at hand (say,

by adding to it a term such as role(manager)). Moreover, this law can be written to take

this term into account in its rulings concerning various event.

Although this sensitivity to credential is implicit in the basic LGI model, and requires

no additional elements, the existing Moses mechanism provides some tools for making the

treatment of credentials more convenient. These tools have been described in [22], and their

use has been explored in several papers, such as [1, 5].

24

Page 25: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

Sensitivity to Physical Context: By “physical context” we mean here attributes of the

environment in which a given actors operates. These may, for example, be the temperature

and pressure measured by the sensors associated with an actor; or the geographical location

reported by its GPS. Of course, an LGI-based mechanism per se is not aware of such at-

tributes. But it can be made aware of them via the following simple means: (a) the actor in

question sends a message, ostensibly to itself, but really meant to be picked up by the law,

reporting its location, say, as measured by its GPS; (b) the law at hand is written to pick up

this message and to store the reported location in the control-state of this agent. Now, when

the location is stored in the state of an agent it can be taken into account for computing the

ruling of the law for various events occurring at that agent.

Of course, the resulting sensitivity to location, or to other physical attributes, is mean-

ingful only if the self reporting of actors is trustworthy. But this is often the case in practice,

either for specific actors, or even for entire community of them. As an example, consider a

community of cars communicating electronically with each other, subject to some LGI law.

The GPS built into such cars, and the software that manages it, may have been produced

by a single manufacturer, and their behavior may be known and trusted. Various sensor

networks can be handled in a similar fashion.

Sensitivity to Inside Information: By “inside information” we mean information about

some attributes of the internal state of an actor, such as the CPU utilization of its host,

or its stage in whatever computing task it is involved in. Here, like in the case of physical

context, we would rely on self reporting by the actor itself. And, again, such self reporting

needs to be trustworthy to be relayed on by the law. Thus, a law of a certain community

can incorporate information about the dynamically changing internal state of trusted actors,

despite the fact that the LGI model itself views actors as black boxes.

4 Establishing Law-Based Trust

This Section introduces two approaches for establishing law-based trust (L-trust), as required

by the LGI model: (a) mediation of interaction between the actors, by means of decentralized

trusted computing base (TCB); and (b) voluntary compliance by the actors themselves.

25

Page 26: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

4.1 Using Trusted Mediators

The technique discussed here for establishing L-trust is the one employed by the Moses LGI-

based mechanism. Under this technique, the private controller TLx of an L-agent x, defined

by Equation 1, is hosted by a process that is independent of the actor a of agent x, and is

running on a different host than that of this actor, anywhere on the Internet. We assume for

now that TLx is trusted—thus the letter “T” in the symbol for controllers—by all members

of the L-community. For the support of this assumption, see Section 4.1.2. A distributed

collection of such controllers are assumed to be available, as is illustrated in Figure 3. We

first discuss the nature of this mediation mechanism, and then explain how it can serve as

the basis for L-trust.

4.1.1 The Mediation Mechanism

The Structure and Operations of Controllers: It is the controller TLx that is viewed

as the locus of the regulated events at agent x. In particular, an arrived event occurs at

controller TLx when a message addressed to x arrives at TL

x . Similarly, a sent event occurs

at TLx when a message sent by its actor a arrives at it, on its way to its target. It is also

the controller TLx that maintain the control-state of agent x, and which can execute control

operations mandated by its law. Structurally, a controller can be described as a triple

(depicted by boxes in Figure 3):

TLx = 〈L, Sx, I〉, (4)

where L is the law under which this particular controller operates; Sx is the control-state

of agent x, which is not directly accessible to the actor of this agent; and I is a generic

mechanism that complies with law L by interpreting this law, and carrying out its rulings,

in the manner defined in Section 2.1.1.

The Dual Mediation Implied by the LGI Model One of the important consequences

of the local nature of LGI laws is that under LGI every message exchange involves dual

control: on the sides of both the sender of a message, and of its receiver. Indeed, the

passage of a message from an actor ax of agent x to an actor ay of y must be mediated

first by the controller Tx associated with of ax, and then by the controller Ty associated

with ay, as is illustrated in Figure 3. This is because both the sender and receiver must

26

Page 27: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

I

S

IL

IL

IL

IL

IL

IL

II

Sx SyTyTx

AyAx

S

S

S

S

agent x

agent y

Figure 3: LGI Interaction: Actors are depicted by circles, interacting across the internet

(lightly shaded cloud) via their controllers (boxes) operating under law L. Agents are depicted

by dashed ovals that enclose (actor, controller) pairs. Thin arrows represent messages, and

thick arrows represent modification of state.

individually comply with the law under which each of them operates. This is in contrast

with the conventional AC mechanisms, which use a single reference monitor to mediate the

exchange of messages. Such a reference monitor is usually placed at the server side, or is

used as a central policy decision point (PDP) for an entire system, as under XACML [12].

The dual mediation under LGI has several important implications, not the least of them is

that it facilitates interoperability by providing flexible control over cross-interaction between

agents operating under different laws, as has been shown in [2].

Selective Decentralization of Mediation: Although the mediation of inter-agent in-

teraction under Moses is inherently decentralized—each actor operating via its own con-

troller—this mechanism lends itself to a wide range of choices of partial centralizations, or

even complete centralization, of mediation.

This is due to the fact that private controllers are hosted, under Moses, by the so called

controller pool, each of which capable of hosting a large number5 of private controllers, thus

5Under the current implementation of Moses each controller pool can host several thousand of controllers,

depending on the application.

27

Page 28: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

serving several different agents, possibly subject to different laws. A distributed collection

of such controller pools are assumed to be available, as is illustrated in Figure 3.

This allows one to run any given sub-group of controllers on a single controller-pool,

thus creating a whole spectrum of possible implementations of mediation—anything be-

tween complete decentralization, where each controller of a given community operates on a

separate controller-pool, to a complete centralization, where all controllers are hosted by a

single controller pool. The potential for performance optimization inherent in such selective

centralization of mediation is yet to be explored; for some initial ideas about this matter see

[22].

4.1.2 The Basis for L-Trust

The support for L-trust provided by this technique of mediation of inter-agent communica-

tion, as realized by the Moses mechanism, rests on three elements: (a) the assurance that

the message exchange between x and y is mediated by correctly implemented controllers; (b)

the ability of each of these agents to identify the law under which its interlocutor operates;

and (c) the assurance that the messages exchanged between x and y are transmitted securely

over the internet.

The first of these elements means, essentially, that the collection of controller pools

used by the given system must all be trusted to be correctly implemented, and that they

have not been corrupted by some malicious attacks. Such a collection can then serve the

role of a trusted computing base (TCB). But unlike the traditional TCB, which is usually

centralized, our collection of controller is designed to be decentralized, and is thus referred

to as “decentralized TCB”, or DTCB.

Moses implements such a DTCB via what is called a controller service (CoS), which

creates, maintains, and continuously tests, a distributed collection of controller-pools. The

CoS also vouches for the correctness of its controller-pools via digital certificates, which are

used by controllers to authenticate each other as part of their handshake. And there is an

ongoing research on techniques for protecting such a DTCB from various kinds of attacks;

in particular, by intrusion detection, by making it harder to target specific actors, or specific

law; and by other means.

The controller-service provided by Moses can be operated by an enterprise for its own

internal use, or by a federation of enterprises for the use of its members. But if Moses is to

28

Page 29: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

be used by arbitrary actors all over the Internet, then the CoS needs to be managed by a

reputable commercial company or governmental institution, whose business it is to provide

its customers with trustworthy controllers. This organization must be willing to vouch for

the trustworthiness of its controllers, and to assume liability for their failures. Such an

Internet wide CoS is yet to be established.

To provide for element (b) above, namely the ability of each agents to identify the law

under which the controller of its interlocutor operates, the handshake between controllers

include exchange of the one way hash [30] of their respective laws. Finally, to provide

for element (c), namely the assurance that L-messages exchanged between x and y are

transmitted securely over the internet, all messages between actors and their controllers, and

between pairs of controllers, need to be digitally signed and encrypted. These conventional,

but rather expensive, measures can be dispensed with if one is not concerned about malicious

attacks on the transfer of messages. (The current release of Moses does not take these

measures, but it can be easily modified to incorporate them.)

4.2 Voluntary Compliance

Consider a set S of actors that agree to interact with each other, subject to a given law L,

thus forming an L-community. An individual member in this set can comply with law L,

without any extra knowledge about its peers, due to the local nature of laws under LGI. In

particular, this can be done by having each member x of S implement its own controller TLx

(see Equation 4) as a stub—in some analogy to the manner in which one conforms to the

TCP/IP communication. But can such purely voluntary compliance be a basis for L-trust?

We maintain that voluntary compliance can be a reasonable basis for L-trust in the

following three cases: (a) when the set S of actors is small and close-knit; (b) when the set

S is homogeneous, even if large; and (c) under some stringent conditions, even when S is

large and heterogeneous.

When a set S of actors is small, and when all its members have been written by one

programmer, or by a small team of programmers working in concert, they can confidently

trust each other to write code that complies with an agreed upon law—in some analogy to

the manner in which the members of a string quartet can trust each other to play the same

music.

When a set S is homogeneous, for example, when its members are copies of a single

29

Page 30: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

program, then they can obviously trust each other to conform to the law that is built into

their common code—regardless of the size of the set. This is how birds of a feather flock

together, having their rules of engagement inborn. Note, however, that in these two cases,

the L-trust between the members of set S would be compromised if there is a danger of

malicious attacks on the code of some of these actors, or on the messages exchanged between

them.

Finally, even when the set S is heterogeneous, open, and large, one can still base L-trust

on voluntary compliance with a given law L if the following two conditions are satisfied:

(1) if it is the vested interest of every actor in the system to comply with law L; and (2) if

failure of any given agent x to comply with L ccannot cause any serious harm to anybody

else. Both of these conditions need to be satisfied for L-trust to be effective, because if

condition (1) is not satisfied then there is little chance for L to be universally adopted and

complied with, without some form of enforcement; and if condition (2) is not satisfied, than

one has to worry about someone not observing L—perhaps inadvertently and even contrary

to its own self interest—and thus causing harm to others.

There are some well known applications where both of these conditions are satisfied, at

least approximately. This is what enables the use of HTML for writing web pages, and the use

of IP for communication, to be voluntarily established as de facto “laws” of the Internet. But

for many, perhaps most, applications—including e-commerce, medical applications, various

societal infrastructures, and defense applications—one or both of these conditions are far

from being satisfied. For these critical applications, and others, one has to resort to an

“enforcement” technique, such as described in Section 4.1.

5 Conclusion

This paper introduces a model of interaction control for the regulation of distributed systems,

which can cope with their increasing openness and heterogeneity. The model, called LGI,

differs from conventional access control (AC) in several respects: in its objectives, in its

technical approach, and in its results. The main objective of conventional AC is to permit

access only to those that have the right for it, but without any concern about the dynamic

behavior of those that do get access. LGI, on the other hand, aims to regulate the dynamic

behavior of interacting parties as well.

30

Page 31: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

The technical approach adopted by LGI differs from that of AC, in two ways: First,

LGI is inherently decentralized. Second, LGI replaces the conventional concept of policy,

traditionally defined as an access control matrix, with the pair 〈law, state〉. Here the law

holds sway over an entire distributed community, and is fixed; while the state is a distributed

collection of local states, each of which can change dynamically independently of the others,

but subject to the global law.

The consequence of this approach to regulation includes the following results, not matched

by any conventional AC mechanism: (1) Scalability of the support provided for a wide range

of constraints over interaction, mostly due to decentralization. And (2) generality of the

model, due, in part, to its unification of the traditional dichotomy between mandatory

and discretionary policies. Consequently, LGI constitutes a significant realization of the

important principle of separation of policy from mechanism.

Moreover, the LGI model can be reified into a whole family of mechanisms—called LGI-

based mechanisms, which may be designed for different types of communication, and can

add a host of capabilities to those inherent in the model itself. In particular the Moses

mechanism—of which the LGI model is an abstraction—which has been designed for Internet

messaging, has several capabilities not present in the LGI model itself. These include:

(a) proactive control, provided via the concept of enforced obligation, which ensures that

a specified action would be carried out in the future, under specified circumstances [24];

(b) the treatment of certain types of communication failures as regulated events, called

exceptions, which can then be acted upon by the control mechanism, providing a significance

fault-tolerance capability [23]; and (c) the organization of the laws of a given system into

a conformance hierarchy [3], which facilitates the regulation of very complex systems, like

virtual organizations, grids, and dynamic coalitions [2].

We are now considering another LGI-based mechanisms, one defined over wireless com-

munication, to be designed for the needs of pervasive computing.

Acknowledgment: I am indebted to Yaron Minsky for many rewarding discussions on

this topic.

31

Page 32: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

A Appendix: Some Details of the Informal Law-

Language Used in this Paper:

Here are some details about the informal law-languages used in this paper: (1) Capitalized

symbols represent variables that can match any string; and “ ” represents a don’t-care sym-

bol. (2) The regulated events in the set E of this mechanism consists of: (a) adopted, which

represents the first event in the lifetime of the agent; (b) sent(Msg,Target), which repre-

sents the sending of message Msg to the specified target; and (c) arrived(Sender, Msg),

which represents the arrival at the home agent of the specified message, sent by the specified

sender. (3) The control state of an agent is represented as a bag of terms, whose structure

is left unspecified here. And (4) The control operations available under this mechanism

include: (a) forward(Msg,Target), which forwards the specified message to its target (a

shorter variant, forward, usable only in a rule that deals with a sent event, forwards the

message sent to its intended target); (b) deliver(Text) delivers the specified text to the

actor of the home agent (a shorter variant, simply deliver, delivers the arriving message to

the home actor); and (c) several operations on the state, including +T, which adds the term

T to the state, (additional such operations are, as needed, in our examples).

References

[1] X. Ao, N. Minsky, and V. Ungureanu. Formal treatment of certificate revoca-

tion under communal access control. In Proc. of the 2001 IEEE Symposium on

Security and Privacy, May 2001, Oakland California, May 2001. (available from

http://www.cs.rutgers.edu/~minsky/pubs.html).

[2] X. Ao and N. H. Minsky. Flexible regulation of distributed coalitions. In LNCS 2808: the

Proc. of the European Symposium on Research in Computer Security (ESORICS) 2003,

October 2003. (available from http://www.cs.rutgers.edu/~minsky/pubs.html).

[3] X. Ao, N. H. Minsky, and T. Nguyen. A hierarchical policy specification language, and

enforcement mechanism, for governing digital enterprises. In Proc. of the IEEE 3rd In-

ternational Workshop on Policies for Distributed Systems and Networks Monterey Cali-

fornia, June 2002. (available from http://www.cs.rutgers.edu/~minsky/pubs.html).

32

Page 33: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

[4] X. Ao and Naftaly H. Minsky. On the role of roles: from role-based to role-

sensitive access control. In Proc. of the 9th ACM Symposium on Access Control

Models and Technologies, Yorktown Hights, NY, USA, June 2004. (available from

http://www.cs.rutgers.edu/~minsky/pubs.html).

[5] Xuhui Ao and Naftaly H. Minsky. Regulated delegation in distributed sys-

tems. In Proc. of the IEEE 7th International Workshop on Policies for Distributed

Systems and Networks, London, Ontario, Canada, June 2006. (available from

http://www.cs.rutgers.edu/~minsky/pubs.html).

[6] Olav Bandmann, Mads Dam, and Babak Sadighi Firozabadi. Constrained delegations.

In proceedings of 2002 IEEE Symposium on Security and Privacy, May 2002.

[7] J. Barkley, K. Beznosov, and J. Uppal. Supporting relationships in access control using

role based access control. In Proceedings of the Fourth ACM Workshop on Role-Based

Access Control, pages 55–65, October 1999.

[8] Elisa Bertino, Piero A. Bonatti, and Elena Ferrari. Trbac: A temporal role-based access

control model. ACM Transactions on Information and System Security, 4(3):191–233,

2001.

[9] M. Blaze, J. Feigenbaum, J. Ioannidis, and A. Keromytis. The keynote trust-

management systems, version 2. ietf rfc 2704. Sep 1999.

[10] N. Damianou, N. Dulay, E. Lupu, and M. Sloman. The ponder policy specification

language. In Morris Sloman, editor, Proc. of Policy Worshop, 2001, Bristol UK, January

2001.

[11] Luigi Giuri and Pietro Iglio. Role templates for content-based access control. In Pro-

ceedings of the Second ACM Workshop on Role-Based Access Control (RBAC’97), pages

153–159, 1997.

[12] S. Godic and T. Moses. Oasis extensible access control. markup language

(xacml), version 2. Technical report, Oasis, March 2005. (available at

http://xml.coverpages.org/ni2004-10-05-a.html ).

33

Page 34: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

[13] R.J. Hayton, J.M. Bacon, and K. Moody. Access control in an open distributed enviro-

ment. In Proceedings of the 1998 IEEE Symposium on Security and Privacy, 1998.

[14] S. jajodia, P. Samarati, M. L. Sapino, and V. S. Subramanian. Flexible support for

multiple access control policies. ACM Trans. on Database Systems, 26(2):214–260, June

2001.

[15] J. J. Jen, H. Chang, and J. Y. Chung. A policy framework for web-service based

business activity management (bam). Journal of Information Systems and e-Business

Management, 1(2), April 2004.

[16] James B. D. Joshi, Elisa Bertino, Basit Sahfiq, and Arif Ghafoor. Dependencies and

separation of duty constraints in gtrbac. In Proceedings of the 8th ACM Symposium on

Access Control Models and Technologies (SACMAT 2003), 2003.

[17] G. Karjoth. The authorization service of tivoli policy director. In Proc. of the 17th

Annual Computer Security Applications Conference (ACSAC 2001), December 2001.

[18] Ninghui Li, Benjamin N. Grosof, and Joan Feigenbaum. Delegation logic: A logic-based

approach to distributed authorization. ACM Transaction on Information and System

Security (TISSEC), pages 128–171, Feb 2003.

[19] N.A. Lynch and Tuttle M.R. An introduction to input/output automata. Technical

report, MIT, November 1988.

[20] Naftaly H. Minsky. The imposition of protocols over open distributed systems. IEEE

Transactions on Software Engineering, February 1991.

[21] Naftaly H. Minsky. A decentralized treatment of a highly distributed chinese-wall policy.

In Proc. of the IEEE 5th International Workshop on Policies for Distributed Systems

and Networks, Yorktown Hights, NY, USA, June 2004. (to be published; available from

http://www.cs.rutgers.edu/~minsky/pubs.html).

[22] Naftaly H. Minsky. Law Governed Interaction (LGI): A Distributed Coordination and

Control Mechanism (An Introduction, and a Reference Manual), June 2005. (available

at http://www.moses.rutgers.edu/documentation/manual.pdf).

34

Page 35: Decentralized Regulation of Distributed Systems: Beyond ...minsky/papers/IC.pdf · Beyond Access Control Naftaly Minsky Rutgers University December 30, 2007 Abstract Thispaperintroducesamodelof

[23] Naftaly H. Minsky and T. Murata. On manageability and robustness of open multi-agent

systems. In Carlos Lucena, Alessandro Garcia, Alexander Romanovsky, Jaelson Castro, ,

and Paulo Alencar, editors, Computer Security, Dependability, and Assurance. lncs 2940,

February 2004. (available from http://www.cs.rutgers.edu/~minsky/pubs.html).

[24] Naftaly H. Minsky and V. Ungureanu. Law-governed interaction: a coordination and

control mechanism for heterogeneous distributed systems. TOSEM, ACM Transactions

on Software Engineering and Methodology, 9(3):273–305, July 2000. (available from

http://www.cs.rutgers.edu/~minsky/pubs.html).

[25] M.J. Moyer and M. Abamad. Generalized role-based access control. In Proceedings of

the 21st International Conference on Distributed Computing Systems, pages 391–398,

2001.

[26] M. P. Papazoglou, P. Traverso, S. Dustdar, F. Leymann, and B. J. Kramer. Service-

oriented computing: A research roadmap. In Francisco Cubera, editor, Service Oriented

Computing (SOC), number 05462 in Dagstuhl Seminar Proceedings. Internationales

Begegnungs, 2006.

[27] Carlos Ribeiro and Paulo Ferreira. A policy-oriented language for expressing security

specifications. International Journal of Network Security, 5(3):299–316, November 2007.

[28] R.S. Sandhu, D. Ferraiolo, and R. Kuhn. The nist model for role-based access control:

Towards a unified standard. In Proceedings of ACM Workshop on Role-Based Access

Control. ACM, July 2000.

[29] F.B. Schneider, editor. Trust in Cyberspace. National Academy Press, 1999.

[30] B. Schneier. Applied Cryptography. John Wiley and Sons, 1996.

[31] W. Wulf, E. Cohen, W. Corwin, A. Jones, C. Levin, C. Pierson, and F. Pollack. Hydra:

The kernel of a multiprocessor operating system. Communications of the ACM, 17:337–

345, 1974.

[32] Wenxuan Zhang, Constantin Serban, and Naftaly H. Minsky. Establishing global prop-

erties of multi-agent systems via local laws. In Danny Weyns, editor, Environments for

Multiagent Systems III, LNAI 4389, pages 170–183. Springer-Verlag, 2007.

35