Built-in Object Security

  • Martín Abadi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2743)


Modern programming languages and systems provide much support for security. Through strong typing, they can substantially reduce the opportunities for low-level coding errors that could result in buffer overflows and other vulnerabilities. They also allow protection by encapsulation and the treatment of objects as unforgeable capabilities. In addition, they sometimes include rich security infrastructures, for example libraries for authentication and authorization.

Although common programming languages are not primarily concerned with security, language definitions can be the basis for security guarantees. A language specification may imply, for instance, that object references are unguessable. An implementation may resort to cryptography in order to enforce this property and others built into the language.

Conversely, for better or for worse, security machinery can have a significant effect on language semantics and implementations, even when it is regarded as an add-on. For instance, access-control techniques that depend on the contents of the execution stack give an observable role to the stack, affecting program equivalences. A language perspective can help in understanding such security mechanisms and sometimes in developing new ones.


Program Equivalence Security Mechanism Strong Typing Buffer Overflow Language Definition 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Abadi, M.: Protection in programming-language translations. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, pp. 868–883. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  2. 2.
    Abadi, M., Fournet, C.: Access control based on execution history. In: Proceedings of the 10th Annual Network and Distributed System Security Symposium, February 2003, pp. 107–121 (2003)Google Scholar
  3. 3.
    Abadi, M., Fournet, C., Gonthier, G.: Secure implementation of channel abstractions. Information and Computation 174(1), 37–83 (2002)zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    van Doorn, L., Abadi, M., Burrows, M., Wobber, E.: Secure network objects. In: Proceedings of the 1996 IEEE Symposium on Security and Privacy, May 1996, pp. 211–221 (1996)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Martín Abadi
    • 1
  1. 1.Computer Science DepartmentUniversity of CaliforniaSanta Cruz

Personalised recommendations