Resource Access Control in Systems of Mobile Agents

Abstract We describe a typing system for a distributed π-calculus which guarantees that distributed agents cannot access the resources of a system without first being granted the capability to do so. The language studied allows agents to move between distributed locations and to augment their set of capabilities via communication with other agents. The type system is based on the novel notion of a location type , which describes the set of resources available to an agent at a location. Resources are themselves equipped with capabilities, and thus an agent may be given permission to send data along a channel at a particular location without being granted permission to read data along the same channel. We also describe a tagged version of the language, where the capabilities of agents are made explicit in the syntax. Using this tagged language we define access violations as runtime errors and prove that well-typed programs are incapable of such errors.

[1]  Luca Cardelli,et al.  A language with distributed scope , 1995, POPL '95.

[2]  David N. Turner,et al.  The polymorphic Pi-calculus : theory and implementation , 1996 .

[3]  Matthew Hennessy A Typed Language for Distributed Mobile Processes , 1998 .

[4]  Jean-Jacques Lévy,et al.  A Calculus of Mobile Agents , 1996, CONCUR.

[5]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[6]  Benjamin C. Pierce,et al.  Linearity and the pi-calculus , 1999, TOPL.

[7]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[8]  R. Amadio,et al.  Localities and Failures , 1995 .

[9]  K. Mani Chandy,et al.  A world-wide distributed system using Java and the Internet , 1996, Proceedings of 5th IEEE International Symposium on High Performance Distributed Computing.

[10]  Jon G. Riecke,et al.  The SLam calculus: programming with secrecy and integrity , 1998, POPL '98.

[11]  Cédric Fournet,et al.  The reflexive CHAM and the join-calculus , 1996, POPL '96.

[12]  Roberto M. Amadio,et al.  Modelling IP Mobility , 1998, Formal Methods Syst. Des..

[13]  Davide Sangiorgi,et al.  Typing and subtyping for mobile processes , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[14]  Robin Milner,et al.  A Calculus of Mobile Processes, II , 1992, Inf. Comput..

[15]  Oscar Nierstrasz,et al.  Object-Based Models and Languages for Concurrent Systems , 1994, Lecture Notes in Computer Science.

[16]  Robin Milner,et al.  The Polyadic π-Calculus: a Tutorial , 1993 .

[17]  GiacaloneAlessandro,et al.  Facile: a symmetric integration of concurrent and functional programming , 1990 .

[18]  Cosimo Laneve,et al.  Implicit Typing à la ML for the Join-Calculus , 1997, CONCUR.

[19]  Gérard Berry,et al.  The chemical abstract machine , 1989, POPL '90.

[20]  Rocco De Nicola,et al.  Coordinating Mobile Agents via Blackboards and Access Rights , 1997, COORDINATION.

[21]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[22]  Peter Sewell Global / Local Subtyping for a Distributed-calculus , 1997 .

[23]  Charles E. Perkins,et al.  IP Mobility Support , 1996, RFC.

[24]  Nicholas Carriero,et al.  Bauhaus Linda , 1994, ECOOP Workshop.

[25]  Danny B. Lange,et al.  A Security Model for Aglets , 1997, IEEE Internet Comput..

[26]  Roberto M. Amadio An Asynchronous Model of Locality, Failurem and Process Mobility , 1997, COORDINATION.