Skip to main content
Log in

Mark, a Reasoning Kit for Mobility

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

The experience gained to date in the development of network applications has shown the difficulties of using traditional software technologies: reasoning about network applications is subtly different from reasoning about ordinary programs because of stronger requirements on security, different forms of termination, and phenomena like mobility and network-awareness. There are currently no standard methods, techniques and tools to support specification, development and (property) certification of these applications.

To support property certification of network applications, we propose to use the network-aware logic Mobadtl and its proof assistant, Mark (Mobadtl Reasoning Kit). In the paper we present the prototype implementation of Mark and, as a validating example, we consider applications where mobile components are allowed to carry some resources with them when moving around the network.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  • Abadi, M. and Gordon, A. 1999. A calculus for cryptographic protocols: The spi calculus. Information and Computation, 148(1):1–70.

    Google Scholar 

  • Arnold, K. and Gosling, J. 1998. The Java Programming Language, 2nd edn. The Java Series. Reading, MA: Addison-Wesley.

    Google Scholar 

  • Burrows, M., Abadi, M., and Needham, R. 1989. A logic of authentication. Proceedings of the Royal Society, Series A, 426:233–271. In shorthened form also in ACM Transactions on Computer Systems, 8(1):18–36, 1990.

    Google Scholar 

  • Cardelli, L., Ghelli, G., and Gordon, A.D. 1999. Mobility types for mobile ambients. In J. Wiederman, P. van Emde Boas, and M. Nielsen, editors, 26th Colloquium on Automata, Languages and Programming (ICALP), Prague, Czech Republic, July 1999, Vol. 1644 of Lecture Notes in Computer Science. Berlin: Springer-Verlag, pp. 230–239.

    Google Scholar 

  • Cardelli, L. and Gordon, A.D. 1998. Mobile ambients. In M. Nivat, editor, Foundations of Software Science and Computational Structures, Vol. 1378 of Lecture Notes in Computer Science. Berlin: Springer-Verlag, pp. 140–155.

    Google Scholar 

  • Chandy, K.M. and Misra, J. 1988. Parallel Program Design: A Foundation. Reading, MA: Addison-Wesley.

    Google Scholar 

  • Cugola, G., Ghezzi, C., Picco, G.P., and Vigna, G. 1997. Analyzing mobile code languages. In Mobile Object Systems: Towards the Programmable Internet,Vol. 1222 of Lecture Notes in Computer Science. Berlin: Springer-Verlag, pp. 93–110.

    Google Scholar 

  • De Nicola, R., Ferrari, G., and Pugliese, R. 1998. A kernel language for agents interaction and mobility. IEEE Transactions on Software Engineering, 24(5):315–330.

    Google Scholar 

  • De Nicola, R., Ferrari, G., Pugliese, R., and Venneri, B. 2000. Types for access control. Theoretical Computer Science, 240(1):215–254.

    Google Scholar 

  • Ferrari, G., Montangero, C., Semini, L., and Semprini, S. (2000a). Multiple security policies in Mobadtl. In Proc. Workshop on Issues in the Theory of Security (WITS'00), Geneva, 78 July 2000.

  • Ferrari, G., Montangero, C., Semini, L., and Semprini, S. (2000b). Mobile agents coordination in Mobadtl. In A. Porto and G.-C. Roman, editors, Proc. Limassol, Cyprus, Sept. 2000, 4th Int. Conf. on Coordination Models and Languages, COORDINATION'00, Vol. 1906 of Lecture Notes in Computer Science. Berlin: Springer-Verlag.

    Google Scholar 

  • Focardi, R., Gorrieri, R., and Martinelli, F. 2000. Non-interference for the analysis of cryptographic protocols. In Proc. ICALP'2000, LNCS.

  • Fournet, C., Gonthier, G., Lévy, J.-J., Maranget, L., and Rémy, D. 1996. A calculus of mobile agents. In U. Montanari and V. Sassone, editors, Proc. CONCUR '96: Concurrency Theory, 7th International Conference, Pisa, Aug. 1996. Vol. 1119 of Lecture Notes in Computer Science. Berlin: Springer-Verlag, pp. 406–421.

    Google Scholar 

  • Fuggetta, A., Picco, G.P., and Vigna, G. 1998. Understanding code mobility. IEEE Transactions on Software Engineering, 24(5):342–361.

    Google Scholar 

  • Griffioen, D. and Huisman, M. 1998. A comparison of PVS and Isabelle/HOL. In J. Grundy and M. Newey, editors, Theorem Proving in Higher Order Logics: 11th International Conference, TPHOLs '98, Vol. 1479 of Lecture Notes in Computer Science, Canberra, Australia, Sept. 1998. Berlin: Springer-Verlag, pp. 123–142.

    Google Scholar 

  • Hennessy, M. and Riely, J. 1998. Resource access control in systems of mobile agents. In U. Nestmann and B.C. Pierce, editors, Proc. HLCL '98: High-Level Concurrent Languages, Vol. 16.3 of Electronic Notes on Theoretical Computer Science. Nice, France, Sept. 1998. New York: Elsevier Science, pp. 3–17.

    Google Scholar 

  • Lange, D.B. and Oshima, M. 1998. Programming and Deploying Java Mobile Agents with Aglets. Reading, MA: Addison-Wesley.

    Google Scholar 

  • Levi, F. and Sangiorgi, D. 2000. Controlling interference in Ambients. In Proc. 27th Annual ACM Symp. on Principles of Programming Languages, Boston, Jan. 2000. New York: ACM Press, pp. 352–364.

    Google Scholar 

  • Marrero, W., Clarke, E.M., and Jha, S. 1997. Model checking for security protocols. Technical Report CMU-SCS–97–139, Carnegie Mellon University.

  • McCann, P.J. and Roman, G.-C. 1998. Compositional programming abstractions for mobile computing. IEEE Transactions on Software Engineering, 24(2):97–110.

    Google Scholar 

  • Mitchell, J.C., Mitchell, M., and Ster, U. 1997. Automated analysis of cryptographic protocols using Murϕ. In 10th IEEE Computer Security Foundations Workshop. Piscataway, NJ: IEEE Press, pp. 141–151.

    Google Scholar 

  • Montangero, C. and Semini, L. 1999. Composing specifications for coordination. In P. Ciancarini and A. Wolf, editors, Proc. 3nd Int. Conf. on Coordination Models and Languages, Vol. 1594 of Lecture Notes in Computer Science. Amsterdam, April 1999. Berlin: Springer-Verlag, pp. 118–133.

    Google Scholar 

  • Necula, G. 1997. Proof-carrying code. In Proc. 24th ACM Symp. on Priciples of Programming Languages. New York: ACM Press, pp. 106–119.

    Google Scholar 

  • Owre, S., Rushby, J., and Shankar, N. The PVS specification and verification system. Available at http://pvs.csl.sri.com/.

  • Paulson, L.C. 1997. Proving properties of security protocols by induction. In 10th IEEE Computer Security Foundations Workshop. New York: IEEE Press, pp. 70–83.

    Google Scholar 

  • Paulson, L. and Nipkow, T. Isabelle. Available at www.cl.cam.ac.uk/Research/HVG/Isabelle/.

  • Semini, L. and Montangero, C. 1999. A refinement calculus for tuple spaces. Science of Computer Programming, 34:79–140.

    Google Scholar 

  • Sewell, P. and Vitek, J. 1999. Secure composition of insecure components. In Proc. Computer Security Foundations Workshop 12, CSFW-12. New York: IEEE.

    Google Scholar 

  • Vitek, J. and Castagna, G. 1998. Towards a calculus of secure mobile computations. In Proc.Workshop on Internet Programming Languages,Vol. 1686 of Lecture Notes in Computer Science. Chicago, Illinois, May 1998. Berlin: Springer-Verlag.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ferrari, G., Montangero, C., Semini, L. et al. Mark, a Reasoning Kit for Mobility. Automated Software Engineering 9, 137–150 (2002). https://doi.org/10.1023/A:1014530313153

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1014530313153

Navigation