Title :
A sound framework for untrusted verification-condition generators
Author :
Necula, George C. ; Schneck, Robert R.
Author_Institution :
California Univ., Berkeley, CA, USA
Abstract :
We propose a framework called configurable proof-carrying code, which allows the untrusted producer of mobile code to provide the bulk of the code verifier used by a code receiver to check the safety of the received code. The resulting system is both more flexible and also more trustworthy than a standard proof-carrying code system, because only a small part of the verifier needs to be trusted, while the remaining part can be configured freely to suit the safety policy on one hand, and the structure of the mobile code on the other hand. In this paper we describe formally the protocol that the untrusted verifier must follow in the interaction with the trusted infrastructure. We present a proof of the soundness of the system, and we give preliminary evidence that the architecture is expressive enough to delegate to the untrusted verifier even the handling of loop invariants, indirect jumps and calling conventions.
Keywords :
distributed programming; program verification; security of data; calling convention; indirect jump convention; loop invariant; proof-carrying code; sound framework; untrusted generator; untrusted verifier; verification-condition generator; Code standards; Computer architecture; Engineering profession; Government; Java; Optimizing compilers; Protocols; Safety; Scalability; Software systems;
Conference_Titel :
Logic in Computer Science, 2003. Proceedings. 18th Annual IEEE Symposium on
Print_ISBN :
0-7695-1884-2
DOI :
10.1109/LICS.2003.1210065