Sciweavers

ESOP
2007
Springer

A Certified Lightweight Non-interference Java Bytecode Verifier

13 years 9 months ago
A Certified Lightweight Non-interference Java Bytecode Verifier
Non-interference is a semantical condition on programs that guarantees the absence of illicit information flow throughout their execution, and that can be enforced by appropriate information flow type systems. Much of previous work on type systems for non-interference has focused on calculi or high-level programming languages, and existing type systems for low-level languages typically omit objects, exceptions, and method calls, and/or do not prove formally the soundness of the type system. We define an information flow type system for a sequential JVM-like language that includes classes, objects, arrays, exceptions and method calls, and prove that it guarantees non-interference. For increased confidence, we have formalized the proof in the proof assistant Coq; an additional benefit of the formalization is that we have extracted from our proof a certified lightweight bytecode verifier for information flow. Our work provides, to our best knowledge, the first sound and implemented inform...
Gilles Barthe, David Pichardie, Tamara Rezk
Added 16 Aug 2010
Updated 16 Aug 2010
Type Conference
Year 2007
Where ESOP
Authors Gilles Barthe, David Pichardie, Tamara Rezk
Comments (0)