Skip to main content

A Typed Assembly Language for Non-interference

  • Conference paper
Theoretical Computer Science (ICTCS 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3701))

Included in the following conference series:

Abstract

Non-interference is a desirable property of systems in a multilevel security architecture, stating that confidential information is not disclosed in public output. The challenge of studying information flow for assembly languages is that the control flow constructs that guide the analysis in high-level languages are not present. To address this problem, we define a typed assembly language that uses pseudo-instructions to impose a stack discipline on the control flow of programs. We develop a type system for checking that assembly programs enjoy non-interference and its proof of soundness.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aspinall, D., Compagnoni, A.B.: Heap bounded assembly language. Journal of Automated Reasoning, Special Issue on Proof-Carrying Code 31(3-4), 261–302 (2003)

    MATH  Google Scholar 

  2. Banerjee, A., Naumann, D.: Secure information flow and pointer confinement in a java-like language. In: Proceedings of Fifteenth IEEE Computer Security Foundations - CSFW, June 2002, pp. 253–267 (2002)

    Google Scholar 

  3. Barthe, G., Basu, A., Rezk, T.: Security types preserving compilation. In: Steffen, B., Levi, G. (eds.) VMCAI 2004. LNCS, vol. 2937, pp. 2–15. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  4. Bell, D., LaPadula, L.: Secure computer systems: Mathematical foundations and model. Technical Report Technical Report MTR 2547 v2, MITRE (November 1973)

    Google Scholar 

  5. Biba, K.: Integrity considerations for secure computer systems. Technical Report ESD-TR-76-372, USAF Electronic Systems Division, Bedford, MA (April 1977)

    Google Scholar 

  6. Crary, K., Kliger, A., Pfenning, F.: A monadic analysis of information flow security with mutable state. Technical Report CMU-CS-03-164, Carnegie Mellon University (September 2003)

    Google Scholar 

  7. Denning, D.E., Denning, P.J.: Certification of programs for secure information flow. Communications of the ACM 20(7), 504–513 (1977)

    Article  MATH  Google Scholar 

  8. Denning, D.E.: A lattice model of secure information flow. Communications of the ACM 19(5), 236–242 (1976)

    Article  MATH  MathSciNet  Google Scholar 

  9. Feiertag, R.J., Levitt, K.N., Robinson, L.: Proving multilevel security of a system design. In: 6th ACM Symp. Operating System Principles, November 1977, pp. 57–65 (1977)

    Google Scholar 

  10. Goguen, J.A., Meseguer, J.: Security policy and security models. In: Proceedings of the Symposium on Security and Privacy, pp. 11–20. IEEE Press, Los Alamitos (1982)

    Google Scholar 

  11. Hedin, D., Sands, D.: Timing aware information flow security for a javacard-like bytecode. In: Proceedings of BYTECODE, ETAPS 2005 (2005) (to appear)

    Google Scholar 

  12. Leroy, X.: Java bytecode verification: an overview. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 265–285. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  13. Medel, R., Compagnoni, A., Bonelli, E.: A typed assembly language for secure information flow analysis (2005), http://www.cs.stevens.edu/~rmedel/hbal/publications/sifTechReport.ps

  14. Morrisett, G., Walker, D., Crary, K., Glew, N.: From System F to Typed Assembly Language. ACM Transactions on Programming Languages and Systems 21(3), 528–569 (1999)

    Article  Google Scholar 

  15. Morrisett, G., Crary, K., Glew, N., Walker, D.: Stack-based typed assembly language. In: Leroy, X., Ohori, A. (eds.) TIC 1998. LNCS, vol. 1473, pp. 28–52. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  16. Necula, G.: Compiling with Proofs. PhD thesis, Carnegie Mellon University (September 1998)

    Google Scholar 

  17. Neumman, P.G., Feiertag, R.J., Levitt, K.N., Robinson, L.: Software development and proofs of multi-level security. In: Proceedings of the 2nd International Conference on Software Engineering, pp. 421–428. IEEE Computer Society Press, Los Alamitos (1976)

    Google Scholar 

  18. Sabelfeld, A., Myers, A.: Language-based information-flow security. IEEE Journal on Selected Areas in Communications 21(1) (2003)

    Google Scholar 

  19. Smith, F., Walker, D., Morrisett, G.: Alias types. In: Smolka, G. (ed.) ESOP 2000. LNCS, vol. 1782, pp. 366–381. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  20. Volpano, D.M., Smith, G.: A type-based approach to program security. In: TAPSOFT, pp. 607–621 (1997)

    Google Scholar 

  21. Xi, H., Harper, R.: A dependently typed assembly language. Technical Report OGI-CSE-99-008, Oregon Graduate Institute of Science and Technology (July 1999)

    Google Scholar 

  22. Zdancewic, S., Myers, A.: Secure information flow via linear continuations. Higher Order and Symbolic Computation 15(2–3) (2002)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Medel, R., Compagnoni, A., Bonelli, E. (2005). A Typed Assembly Language for Non-interference. In: Coppo, M., Lodi, E., Pinna, G.M. (eds) Theoretical Computer Science. ICTCS 2005. Lecture Notes in Computer Science, vol 3701. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11560586_29

Download citation

  • DOI: https://doi.org/10.1007/11560586_29

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-29106-0

  • Online ISBN: 978-3-540-32024-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics