VerifiCard @ Munich
Project Description
The project VerifiCard is concerned with the formalization of
aspects of JavaCard, a subset of the Java language deployed
on smartcards.
VerifiCard @ Munich is part of the EU-sponsored project VerifiCard which
involves partners from academia and industry. The focus of our group
is on formalization and machine-aided analysis of
- the JavaCard source language, in particular its
operational and axiomatic semantics (Tasks 2.1 and 2.2 of VerifiCard)
- the JavaCard bytecode language (operational
semantics) and the bytecode verifier (Tasks 3.1 and 3.3 of
VerifiCard)
- a compiler from the JavaCard source language
into the bytecode (Task 3.4 of VerifiCard)
Formalization and verification are carried out in the theorem proving
environment Isabelle/HOL.
Project Members
Deliverables
(see
list
of all Verificard deliverables)
Publications
Events
Isabelle Formalizations
There are two Isabelle formalizations of Java:
- MicroJava is a reduced model of JavaCard,
dedicated to the study of the interaction of the source
language, byte code, the byte code verifier and the compiler.
An overview is available as
- Bali is a comprehensive model of the JavaCard
source language. An overview is available as
Both formalizations are also included in the current
Isabelle distribution.
JavaCard source language
(VerifiCard deliverable for Tasks 2.1 and 2.2)
- Source language (MicroJava): Isabelle sources as gziped tar
- Source language (Bali): Isabelle sources as gziped tar
JavaCard bytecode language
(VerifiCard deliverable for Tasks 3.1 and 3.3)
- JVM (MicroJava): Isabelle sources as gziped tar
- Bytecode verifier (MicroJava): Isabelle sources as gziped tar
The Java bytecode verifier with object initialization:
A formalization of the Java bytecode verifier, including
a defensive JVM, exceptions, constructor calls, object initialization, jsr/ret instructions, and arrays:
Compiler
(VerifiCard deliverable for Task 3.4)
Teaching
Some teaching activities related to the topics of VerifiCard (in German):
Martin Strecker
URL: http://isabelle.in.tum.de/VerifiCard/index.html,
Last modified: Mon Nov 24 15:05:11 MET 2003