A Certified Lightweight Non-Interference Java Bytecode Verifier - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Autre Publication Scientifique Année : 2007

A Certified Lightweight Non-Interference Java Bytecode Verifier

Résumé

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 information flow type system for such an expressive fragment of the JVM.
Fichier principal
Vignette du fichier
main.pdf (822.11 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

inria-00106182 , version 1 (13-10-2006)
inria-00106182 , version 2 (31-01-2008)

Identifiants

  • HAL Id : inria-00106182 , version 2

Citer

Gilles Barthe, David Pichardie, Tamara Rezk. A Certified Lightweight Non-Interference Java Bytecode Verifier. 2007. ⟨inria-00106182v2⟩
190 Consultations
279 Téléchargements

Partager

Gmail Facebook X LinkedIn More