Theoretical Computer Science
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Language Primitives and Type Discipline for Structured Communication-Based Programming
ESOP '98 Proceedings of the 7th European Symposium on Programming: Programming Languages and Systems
Communication Interference in Mobile Boxed Ambients
FST TCS '02 Proceedings of the 22nd Conference Kanpur on Foundations of Software Technology and Theoretical Computer Science
Access control for mobile agents: The calculus of boxed ambients
ACM Transactions on Programming Languages and Systems (TOPLAS)
BASS: boxed ambients with safe sessions
Proceedings of the 8th ACM SIGPLAN international conference on Principles and practice of declarative programming
Role-based access control for boxed ambients
Theoretical Computer Science
Hi-index | 0.00 |
Stemming from our previous work on BACI, a boxed ambient calculus with communication in- terfaces, we define a new calculus that further enhances communication mechanisms and mobility control by introducing multiple communication ports, access control lists, and port hiding. The development of the calculus is mainly focused on three objectives: separation of concerns between mobility and communication, fine-grained controls, and locality. Communication primi- tives use ports to establish communication channels between ambients, while ambient names are only used for mobility. In order to achieve a better control over mobility, the calculus includes co-capabilities a la Safe Ambients, but with the addition of access control lists. These lists contain the names of the ambients that are allowed to enter or exit the ambient with that co-capability. The resulting calculus not only provides more flexibility and expressiveness than Boxed Ambients, but also enables simpler implementations using more powerful constructs for communication and mobility. We establish the basic meta-theory of the calculus by providing rules for type safety and showing that typing is preserved during execution.