skip to main content
10.1145/351240.351245acmconferencesArticle/Chapter ViewAbstractPublication PagesicfpConference Proceedingsconference-collections
Article
Free Access

Information flow inference for free

Published:01 September 2000Publication History

ABSTRACT

This paper shows how to systematically extend an arbitrary type system with dependency information, and how soundness and non-interference proofs for the new system may rely upon, rather than duplicate, the soundness proof of the original system. This allows enriching virtually any of the type systems known today with information flow analysis, while requiring only a minimal proof effort.Our approach is based on an untyped operational semantics for a labelled calculus akin to core ML. Thus, it is simple, and should be applicable to other computing paradigms, such as object or process calculi.The paper also discusses access control, and shows it may be viewed as entirely independent of information flow control. Letting the two mechanisms coexist, without interacting, yields a simple and expressive type system, which allows, in particular, "selective" declassification.

References

  1. 1.M. Abadi, A. Banerjee, N. Heintze, and J. G. Riecke. A core calculus of dependency. InConference Record of the 26th ACM Symposium on Principles of Programming Languages, pages 147-160, San Antonio, Texas, Jan. 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.M. Abadi, B. Lampson, and J.-J. L~vy. Analysis and caching of dependencies. In Proceedings of the 1996 ACM SIGPLAN International Conference on Functional Programming, pages 83-91, Philadelphia, Pennsylvania, May 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3.A. Aiken, M. F~hndrich, J. S. Foster, and Z. Su. A toolkit for constructing type- and constraint-based program analyses. Lecture Notes in Computer Science, 1473:78, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.G. R. Andrews and R. P. Reitman. Anaxiomatic approach toinformation ?ow in programs. ACM Transactions on Programming Languages and Systems, 2(1):56-76, Jan. 1980. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5.J.-P. Ban~tre, C. Bryce, and D. Le M~tayer. Compile-time detection of information ?ow in sequential programs. In D. Gollmann, editor, Proceedings of the 3rd European Symposium on Research in Computer Security, volume 875ofLecture Notes in Computer Science, pages 55-74. Springer Verlag, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6.D. E. Denning. Cryptography and Data Security. Addison-Wesley, Reading, Massachusetts, 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.D. E. Denning and P. J. Denning. Certi?cation of programs for secure information ?ow. Communications of the ACM, 20(7):504-513, July 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8.J. S. Fenton. Memoryless subsystems. The Computer Journal, 17(2):143-147, May 1974.Google ScholarGoogle ScholarCross RefCross Ref
  9. 9.C. Fournet, L. Maranget, C. Laneve, and D. R~my. Implicit typing ~ la ML for the join-calculus. In 8th International Conference on Concurrency Theory (CONCUR'97), volume 1243 of Lecture Notes in Computer Science, pages 196-212, Warsaw, Poland, 1997. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10.Y.-C. Fuh and P. Mishra. Polymorphic subtype inference: Closing the theory-practice gap. In J. D~az and F. Orejas, editors, Proceedings of the International Joint Conference onTheory and Practice of Software Development : Vol. 2, volume 352 of LNCS, pages 167-183, Berlin, Mar. 1989. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11.J. Goguen and J. Meseguer. Security policies and security models. In Proceedings of the 1982 IEEE Symposium on Security and Privacy, pages 11-20, Apr. 1982.Google ScholarGoogle ScholarCross RefCross Ref
  12. 12.N. Heintze and J. G. Riecke. The SLam calculus: Programming with secrecy and integrity. In Conference Record of the 25th ACM Symposium on Principles of Programming Languages, pages 365-377, San Diego, California, Jan. 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13.B. W. Lampson. A note on the con?nement problem. Communications of the Association for Computing Machinery, 16(10):613-615, Oct. 1973. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14.A. C. Myers. Mostly-Static Decentralized Information Flow Control. PhD thesis, Massachusetts Institute of Technology, Jan. 1999.Technical Report MIT/LCS/TR-783. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 15.A. C. Myers and B. Liskov. Complete, safe information ?ow withdecentralized labels. In Proceedings of the 1998 IEEE Symposium on Security and Privacy, pages 186-197, May 1998.Google ScholarGoogle Scholar
  16. 16.M. Odersky, M. Sulzmann, and M.Wehr. Type inference with constrained types. Theory and Practice of Object Systems, 5(1), 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17.P. ~rb~k and J. Palsberg. Trust in the A-calculus. Journal of Functional Programming, 7(6):557-591, Nov. 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. 18.J. Palsberg and P. ~rb~k. Trust in the A-calculus. Lecture Notes in Computer Science, 983:314-330, 1995.Google ScholarGoogle ScholarCross RefCross Ref
  19. 19.F. Pottier. Simplifying subtyping constraints: a theory. Submitted for journal publication, Dec. 1998.Google ScholarGoogle Scholar
  20. 20.F. Pottier. Type inference in the presence of subtyping: from theory to practice. Technical Report 3483, INRIA, Sept. 1998.Google ScholarGoogle Scholar
  21. 21.D. R~my. Projective ML. In 1992 ACM Conference on Lisp and Functional Programming, pages 66-75, New-York, 1992. ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. 22.D. R~my andJ.Vouillon. Objective ML: A simple object-oriented extension of ML. In Proceedings of the 24th ACM Symposium on Principles of Programming Languages, pages 40-53, Paris, France, Jan. 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23.J. L. Ross and M. Sagiv. Building a bridge between pointer aliases and program dependences. Nordic Journal of Computing, 5(4):361-386, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. 24.G. S. Smith. Polymorphic type inference with overloading and subtyping. In M.-C. Gaudel and J.-P. Jouannaud, editors, TAPSOFT'93, volume 668of Lecture Notes in Computer Science, pages 671-685. Springer-Verlag, Apr. 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. 25.A. Stoughton. Access ?ow: A protection model which integrates access control and information ?ow. In Proceedings of the 1981 IEEE Symposium on Security and Privacy, pages 9-18, 1981.Google ScholarGoogle Scholar
  26. 26.V. Trifonov and S. Smith. Subtyping constrained types. In Proceedings of the Third International Static Analysis Symposium, volume 1145 of LNCS, pages 349-365. SV, Sept. 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. 27.D. Volpano and G. Smith. A type-based approach to program security. Lecture Notesin Computer Science, 1214:607-621, Apr. 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. 28.A. K. Wright and M. Felleisen. A syntactic approach to type soundness. Information and Computation, 115(1):38-94, Nov. 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Information flow inference for free

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                cover image ACM Conferences
                ICFP '00: Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
                September 2000
                294 pages
                ISBN:1581132026
                DOI:10.1145/351240

                Copyright © 2000 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 1 September 2000

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • Article

                Acceptance Rates

                ICFP '00 Paper Acceptance Rate24of110submissions,22%Overall Acceptance Rate333of1,064submissions,31%

                Upcoming Conference

                ICFP '24

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader