skip to main content
10.1145/1375696.1375709acmconferencesArticle/Chapter ViewAbstractPublication PagespldiConference Proceedingsconference-collections
research-article

Dominator-tree analysis for distributed authorization

Published:07 June 2008Publication History

ABSTRACT

Practical analysis tools for distributed authorization need to answer quickly and accurately the question: who can access this resource? DAP (Delegation with Acyclic Paths) is a distributed authorization framework (introduced in [17]) that tries to inter-operate better with standard PKI mechanisms while retaining some of the benefits of new trust management schemes. DAP has an acyclicity requirement which makes it more difficult to answer the question quickly. In this paper we use a technique borrowed from compiler optimization, dominator-tree problem decomposition, to overcome this limitation of DAP with a fast heuristic. We show through simulation the heuristic's performance in a realistic federated resource management scenario.

We also show how this heuristic can be complemented by clone-analysis techniques that exploit similarities between principals to further improve performance. We are currently using the heuristic and clone-analysis in practice in a design/analysis security tool.

References

  1. The Debian Project: debian--keyring--2005.05.28, May 2005. http://keyring.debian.org/.Google ScholarGoogle Scholar
  2. Martín Abadi. On SDSI?s Linked Local Name Spaces. In Proceedings 10th IEEE Computer Security Foundations Workshop, June 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Martín Abadi, Michael Burrows, Butler Lampson, and Gordon Plotkin. A Calculus for Access Control in Distributed Systems. ACM Transactions on Programming Languages and Systems, 15(4):706--734, September 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman. Compilers: Princiles, Techniques, and Tools. Addison-Wesley, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Wolfram Amme, Niall Dalton, Jeffery von Ronne, and Michael Franz. SafeTSA: a type safe and referentially secure mobile-code representation based on static single assignment form. In PLDI?01: Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation, pages 137--147, New York, NY, USA, 2001. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Andrew W. Appel. Modern Compiler Implementation in Java: Basic Techniques. Cambridge University Press, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. M. Blaze, J. Feigenbaum, J. Ioannidis, and A. Keromytis. The Keynote trust-management system, version 2. IETF RFC 2704, September 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Roland N. Bol, Krzysztof R. Apt, and Jan Willem Klop. On the Power of Subsumption and Context Checks. In DISCO?90: Proceedings of the International Symposium on Design and Implementation of Symbolic Computation Systems, pages 131--140, London, UK, 1990. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Adam L. Buchsbaum, Haim Kaplan, Anne Rogers, and Jeffery R. Westbrook. A new, simpler linear-time dominators algorithm. ACM Transactions on Programming Languages and Systems, 20(6):1265--1296, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Alan Bundy, Andrew Stevens, Frank van Harmelen, Andrew Ireland, and Alan Smaill. Rippling: A Heuristic for Guiding Inductive Proofs. Artificial Intelligence, 62(2):185--253, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. CCITT (Consultative Committee on International Telegraphy and Telephony). Recommendation X.509: The Directory?Authentication Framework, 1988.Google ScholarGoogle Scholar
  12. Dorothy E. Denning and Peter J. Denning. Certification of programs for secure information flow. Commun. ACM, 20(7):504--513, 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Carl M. Ellison, Bill Frantz, Butler Lampson, Ron Rivest, Brian M. Thomas, and Tatu Ylonen. Simple public key certificate. Internet Engineering Task Force Draft IETF, July 1997.Google ScholarGoogle Scholar
  14. Loukas Georgiadis, Renato Fonseca F. Werneck, Robert Endre Tarjan, Spyridon Triantafyllis, and David I. August. Finding dominators in practice. In Susanne Albers and Tomasz Radzik, editors, ESA, volume 3221 of Lecture Notes in Computer Science, pages 677--688. Springer, 2004.Google ScholarGoogle Scholar
  15. Boudewijn R. Haverkort. Performance of Computer-Communication Systems. John Wiley and Sons, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Sotiris Ioannidis, Angelos D. Keromytis, Steve M. Bellovin, and Jonathan M. Smith. Implementing a distributed firewall. In Sushil Jajodia and Pierangela Samarati, editors, Proceedings of the 7th ACM Conference on Computer and Communications Security (CCS-00), pages 190--199, N.Y., November 1--4 2000. ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Antonio Lain and Miranda Mowbray. Distributed authorization using delegation with acyclic paths. In Proc. 19th IEEE Computer Security and Foundations Workshop, Venice, Italy, pages 257--269. IEEE Computer Society Press, July 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. B. W. Lampson. Protection. In 5th Princeton Symposium on Information Sciences and Systems,. Princeton University, March 1971. Reprinted in Operating Systems Review 8,1 January 74.Google ScholarGoogle Scholar
  19. Thomas Lengauer and Robert Endre Tarjan. A fast algorithm for finding dominators in a flowgraph. ACM Transactions on Programming Languages and Systems, 1(1):121--141, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Ninghui Li and John C. Mitchell. Understanding SPKI/SDSI using first-order logic. In Proc. 16th IEEE Computer Security and Foundations Workshop, Pacific Grove, CA, USA, pages 89--108. IEEE Computer Society Press, June 2003.Google ScholarGoogle Scholar
  21. Alberto O. Mendelzon and Peter T. Wood. Finding regular simple paths in graph databases. SIAMJournal on Computing, 24(6):1235--1258, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Ronald L. Rivest and Butler Lampson. SDSI ? A simple distributed security infrastructure. Presented at CRYPTO?96 Rumpsession, April 1996. SDSI Version 1.0.Google ScholarGoogle Scholar
  23. Vugranam C. Sreedhar, Guang R. Gao, and Yong-Fong Lee. Identifying Loops Using DJ Graphs. ACM Transactions on Programming Languages and Systems, 18(6):649--658, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Vugranam C. Sreedhar, Guang R. Gao, and Yong-Fong Lee. Incremental computation of dominator trees. ACM Transactions on Programming Languages and Systems, 19(2):239--252, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Robert Tarjan. Testing flow graph reducibility. In STOC?73: Proceedings of the fifth annual ACM symposium on Theory of computing, pages 96--107, New York, NY, USA, 1973. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Robert Endre Tarjan. Fast algorithms for solving path problems. J. ACM, 28(3):594--614, 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Mark Weiser. Program slicing. In ICSE ?81: Proceedings of the 5th international conference on Software engineering, pages 439--449, Piscataway, NJ, USA, 1981. IEEE Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Mihalis Yannakakis. Graph-theoretic methods in database theory. In PODS, pages 230--242. ACM Press, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Dominator-tree analysis for distributed authorization

      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
        PLAS '08: Proceedings of the third ACM SIGPLAN workshop on Programming languages and analysis for security
        June 2008
        154 pages
        ISBN:9781595939364
        DOI:10.1145/1375696

        Copyright © 2008 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: 7 June 2008

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate43of77submissions,56%

        Upcoming Conference

        PLDI '24
      • Article Metrics

        • Downloads (Last 12 months)1
        • Downloads (Last 6 weeks)0

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader