ACM Home Page
Please provide us with feedback. Feedback
Proof linking: an architecture for modular verification of dynamically-linked mobile code
Full text PdfPdf (890 KB)
Source Foundations of Software Engineering archive
Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering table of contents
Lake Buena Vista, Florida, United States
Pages: 222 - 230  
Year of Publication: 1998
ISBN:1-58113-108-9
Also published in ...
Authors
Philip W. L. Fong  School of Computing Science, Simon Fraser University, B.C., Canada
Robert D. Cameron  School of Computing Science, Simon Fraser University, B.C., Canada
Sponsors
SIGSOFT: ACM Special Interest Group on Software Engineering
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 16,   Citation Count: 4
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/288195.288317
What is a DOI?

ABSTRACT

Security flaws are routinely discovered in commercial implementations of mobile code systems such as the Java Virtual Machine (JVM). Typical architectures for such systems exhibit complex interdependencies between the loader, the verifier, and the linker, making them difficult to craft, validate, and maintain. This reveals a software engineering challenge that is common to all mobile code systems in which a static verification phase is introduced before dynamic linking. In such systems, one has to articulate how loading, verification, and linking interact with each other, and how the three processes should be organized to address various security issues.We propose a standard architecture for crafting mobile code verifiers, based on the concept of proof linking. This architecture modularizes the verification process and isolates the dependencies among the loader, verifier, and linker. We also formalize the process of proof linking and establish properties to which correct implementations must conform. As an example, we instantiate our architecture for the problem of Java bytecode verification and assess the correctness of this instantiation. Finally, we briefly discuss alternative mobile code verification architectures enabled by our modularization.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
2
 
3
D. Clark and D. Wilson. A comparison of commercial and military computer security policies. In Proceedings of the IEEE Symposium on Security and Privacy, pages 184-194, 1987.
4
5
 
6
 
7
 
8
The Secure Internet Programming Group. History of the group, 1997. Availablat at http://nvu.cs.princeton.edu/sip/History.html.
 
9
Stanley Letovsky and Elliot Soloway. Delocalized Plans and Program Comprehension. IEEE Software, pages 41-49, May 1986.
 
10
 
11
Daryl McCullough. Specification for Multi-Level Security and a Hook-Up Property. In Proceedings for the IEEE Symposium on Security and Privacy, pages 161- 166, 1987.
 
12
Daryl McCullough. Noninterference and the Composability of Security Properties. In Proceedings of the IEEE Symposium on Security and Privacy, pages 1' 77- 186, 1988.
 
13
14
 
15
Spencer Rugaber, Kurt Stirewalt, and Linda W. WilIs. The Interleaving Problem in Program Understanding. In 2nd Working Conference on Reverse Engineering, pages 166-175, Toronto, Ontario, Canada, July 1995.
 
16
SRI International Computer Science Laboratory. The PVS verification system. Available athttp://wuu.csl.sri.com/pvs.html.
 
17
The Kiiera Team. Security Flaws in Java Implementations, 1997. Available athttp://kimera.cs.washington.edu/flaus/.
 
18
 
19
B. W. Weide and J. E. HoIIingsworth. Scalability of Reuse Technology to Large Systems Requires Local Certifiability. In Proceedings of the 5th Annual Workshop on Software Reuse, 1992.


Collaborative Colleagues:
Philip W. L. Fong: colleagues
Robert D. Cameron: colleagues