We propose a framework for establishing the correctness of untrusted Java bytecode components w.r.t. to complex functional and/or security policies. To this end, we define a bytecode specification language (BCSL) and a weakest precondition calculus for sequential Java bytecode. BCSL and the calculus are expressive enough for verifying non-trivial properties of programs, and cover most of sequential Java bytecode, including exceptions, subroutines, references, object creation and method calls. Our approach does not require that bytecode components are provided with their source code. Nevertheless, we provide a means to compile JML annotations into BCSL annotations by defining a compiler from the Java Modeling Language (JML) to BCSL. Our comp...
International audienceThis paper deals with formal specification and verification of Java bytecode u...
The Java Virtual Machine embodies a verifier which performs a set of checks on bytecode programs bef...
The Java Virtual Machine embodies a verifier which performs a set of checks on bytecode programs bef...
Bytecode verification is one of the key security functions of several architectures for mobile and e...
Bytecode verification is a crucial security component for Java applets, on the Web and on embedded d...
This document is an overview of a bytecode level specification language, called for short BCSL and a...
This paper provides a comprehensive analysis of the specification, along with concrete suggestions f...
International audienceBytecode verification is a crucial security component for Java applets, on the...
The Bytecode Modeling Language (BML) is a specification language for Java bytecode, that provides a ...
During an attempt to prove that our Java compiler in [6] generates code that is accepted by the Java...
We instantiate an Isabelle/HOL framework for proof carrying code to Jinja bytecode, a downsized vari...
Abstract. The proof-carrying code (PCC) techniques allow the exe-cutable code to be augmented with a...
AbstractMany modern program verifiers translate the program to be verified and its specification int...
This paper presents a sound type system for a large subset of the Java bytecode language including c...
textHow do we know that a bytecode-verified Java program will run safely? This dissertation address...
International audienceThis paper deals with formal specification and verification of Java bytecode u...
The Java Virtual Machine embodies a verifier which performs a set of checks on bytecode programs bef...
The Java Virtual Machine embodies a verifier which performs a set of checks on bytecode programs bef...
Bytecode verification is one of the key security functions of several architectures for mobile and e...
Bytecode verification is a crucial security component for Java applets, on the Web and on embedded d...
This document is an overview of a bytecode level specification language, called for short BCSL and a...
This paper provides a comprehensive analysis of the specification, along with concrete suggestions f...
International audienceBytecode verification is a crucial security component for Java applets, on the...
The Bytecode Modeling Language (BML) is a specification language for Java bytecode, that provides a ...
During an attempt to prove that our Java compiler in [6] generates code that is accepted by the Java...
We instantiate an Isabelle/HOL framework for proof carrying code to Jinja bytecode, a downsized vari...
Abstract. The proof-carrying code (PCC) techniques allow the exe-cutable code to be augmented with a...
AbstractMany modern program verifiers translate the program to be verified and its specification int...
This paper presents a sound type system for a large subset of the Java bytecode language including c...
textHow do we know that a bytecode-verified Java program will run safely? This dissertation address...
International audienceThis paper deals with formal specification and verification of Java bytecode u...
The Java Virtual Machine embodies a verifier which performs a set of checks on bytecode programs bef...
The Java Virtual Machine embodies a verifier which performs a set of checks on bytecode programs bef...