Download:
|
by Martijn Oostdijk, Martijn Warnier
http://www.cs.kun.nl/~warnier/Papers/NIII-R0321.ps.gz
Add To MetaCart
Abstract:
Abstract This paper explores the possibilities for using the Java Modeling Language (JML) to specify Java Card applets that use Remote Method Invocation (JCRMI). The JCRMI framework makes it possible to call methods directly on a Java Card smart card without the (explicit) use of low level byte sequences, called APDUs. We introduce a new way of designing JCRMI applets, using the Java Modeling Language (JML) to formally specify (part of) its code. It turns out that some advanced JML speci cation features, such as model variables, are necessary to specify JCRMI applets. Two JML tools, the JML runtime assertion checker and the LOOP tool, are subsequently used to verify that the implementation satis es the JML specications. We conclude that the JML specications are simpler and easier to write, understand and verify when using JCRMI. Ideally this should lead to more trustworthy and error free code.
Citations
|
276
|
Extended Static Checking for Java
– Flanagan, Leino, et al.
- 2002
|
|
133
|
JML: A notation for detailed design
– Leavens, Baker, et al.
- 1999
|
|
74
|
The LOOP compiler for Java and JML
– Berg, Jacobs
- 2001
|
|
72
|
JAVA CARD Technology for Smart Cards: Architecture and Programmer’s Guide. JAVA Series
– Chen
- 2000
|
|
72
|
A Runtime Assertion Checker for the Java Modeling Language
– Cheon
- 2003
|
|
33
|
Formal veri for fault-tolerant architectures: Prolegomena to the design of PVS
– Owre, Rushby, et al.
- 1995
|
|
22
|
Weakest precondition reasoning for Java programs with JML annotations
– Jacobs
|
|
12
|
Java Card Technology for Smart Cards. The Java Series
– Chen
- 2000
|
|
4
|
Secure method invocation in JASON
– Brinkman, Hoepman
- 2002
|
|
4
|
The Krakatoa tool for JML/Java program certi Journ. of Logic and Algebraic Programming, to appear. Available via the Krakatoa home page at www.lri.fr/~marche/krakatoa
– Contejean, Duprat, et al.
- 2002
|
|
3
|
Open platform card speci version 2.1
– Platform
- 2001
|
|
2
|
Martijn Oostdijk, and Martijn Warnier. Source Code Veri of a Secure Payment Applet
– Jacobs
|
|
2
|
Java Program Veri at Nijmegen: Developments and Perspective
– Jacobs, Poll
- 2003
|
|
1
|
ISO 7816. available at: http://www.iso.org/iso/en/isoonline.frontpage
– Standard
|
|
1
|
Verifying JML speci with model
– Breunesse, Poll
|
|
1
|
Java Card 2.2 Development Kit. available at: http://java.sun.com/products/javacard
– Microsytems
|
|
1
|
Java Card 2.2 Runtime Environment (JCRE) Speci
– Microsytems
- 2002
|