Tool-Assisted Specification and Verification of the JavaCard Platform
AMAST '02 Proceedings of the 9th International Conference on Algebraic Methodology and Software Technology
Extracting a data flow analyser in constructive logic
Theoretical Computer Science - Applied semantics: Selected topics
Building an "impossible" verifier on a java card
WIESS'02 Proceedings of the 2nd conference on Industrial Experiences with Systems Software - Volume 2
Using EventB to Create a Virtual Machine Instruction Set Architecture
ABZ '08 Proceedings of the 1st international conference on Abstract State Machines, B and Z
Decomposing bytecode verification by abstract interpretation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Multiapplication smart card: Towards an open smart card?
Information Security Tech. Report
Application Management Framework in User Centric Smart Card Ownership Model
Information Security Applications
Validation of the JavaCard platform with implicit induction techniques
RTA'03 Proceedings of the 14th international conference on Rewriting techniques and applications
Extending B with control flow breaks
ZB'03 Proceedings of the 3rd international conference on Formal specification and development in Z and B
Formalisation and verification of the globalplatform card specification using the b method
CASSIS'05 Proceedings of the Second international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
Certified memory usage analysis
FM'05 Proceedings of the 2005 international conference on Formal Methods
Formal verification of security properties of smart card embedded source code
FM'05 Proceedings of the 2005 international conference on Formal Methods
Formal methods for smartcard security
Foundations of Security Analysis and Design III
Hi-index | 0.00 |
The Java security policy is implemented by security components such as the Java Virtual Machine (JVM), the API, the verifier, the loader. It is of prime importance to ensure that the implementation of these components is in accordance with their specifications. Formal methods can be used to bring the mathematical proof that the implementation of these components corresponds to their specification. In this paper, a formal development is performed on the Java Card byte code verifier using the B method. The whole Java Cardlanguage is taken into account in order to provide realistic metrics on formal development. The architecture and the tricky points of the development are presented. This formalization leads to an embeddable implementation of the byte code verifier thanks to automatic codetranslation from formal implementation into C code. We present the formal models, discuss the integration into the card and the results of such an experiment.