Abstract
JavaCard [22] is a dialect of Java that enables Java technology to run on new generation smart cards and other devices with limited memory. As JavaCard is becomingincr easingly popular, there has been a strong interest, both from academics and industrials, to reason formally about the JavaCard platform.
partially supported by the Portuguese research grant sfrh/bd/790/2000.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
S. Agerholm and J. Frost. Towards an integrated CASE and theorem proving tool for VDM-SL. In J. Fitzgerald, C. B. Jones, and P. Lucas, editors, Proceedings of FME’97, volume 1313 of Lecture Notes in Computer Science, pages 278–297. Springer-Verlag, 1997.
B. Barras, S. Boutin, C. Comes, J. Courant, Y. Coscoy, D. Delahaye, D. de Rauglaudre, J.-C. Filliâtre, E. Giménez, H. Herbelin, G. Huet, H. Laulhére, P. Loiseleur, C. Muñoz, C. Murthy, C. Parent-Vigouroux, C. Paulin-Mohring, A. Saïbi, and B. Werner. The Coq Proof Assistant User’s Guide. Version 6.3.1, December 1999.
G. Barthe, G. Dufay, L. Jakubiec, B. Serpette, and S. Melo de Sousa. A Formal Executable Semantics of the JavaCard Platform. In D. Sands, editor, Proceedings of ESOP’01, volume 2028 of Lecture Notes in Computer Science, pages 302–319. Springer-Verlag, 2001.
S. Bensalem, V. Ganesh, Y. Lakhnech, C. Muñoz, S. Owre, H. Rueß, J. Rushby, V. Rusu, H. Saïdi, N. Shankar, E. Singerman, and A. Tiwari. An overview of SAL. In Proceedings of NASA’s Workshop on Formal Methods, 2000.
J. Bergstra and J. W. Klop. Conditional rewrite rules: confluence and termination. Journal of Computer and System Sciences, 32:323–362, 1986.
P. Bertelsen. Semantics of Java Byte Code. Master’s thesis, Department of Computer Science, Royal Veterinary and Agricultural University of Copenhagen, 1997.
Y. Bertot. Formalizing in Coq a type system for object initialization in the Java bytecode language. In G. Berry, H. Comon, and A. Finkel, editors, Proceedings of CAV’01, volume 2xxx of Lecture Notes in Computer Science. Springer-Verlag, 2001.
P. Bieber, J. Cazin, V. Wiels, G. Zanon, P. Girard, and J.-L. Lanet. Electronic purse applet certification: extended abstract. In S. Schneider and P. Ryan, editors, Proceedings of the workshop on secure architectures and information flow, volume 32 of Electronic Notes in Theoretical Computer Science. Elsevier Publishing, 2000.
E. Börger and W. Schulte. A Programmer Friendly Modular Definition of the Semantics of Java. In J. Alves-Foss, editor, Formal Syntax and Semantics of Java, volume 1523 of Lecture Notes in Computer Science, pages 353–404. Springer-Verlag, 1999.
P. Borras, D. Clément, Th. Despeyroux, J. Incerpi, G. Kahn, B. Lang, and V. Pascual. Centaur: the system. In Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, pages 14–24. ACM Press, 1988.
J. P. Bowen and M. J. C. Gordon. A shallow embedding of Z in HOL. Information and Software Technology, 37(5–6):269–276, 1995.
P. Cousot. Program analysis: The abstract interpretation perspective. ACM Computing Surveys, 28A(4es):165-es, December 1996.
P. Cousot. Types as abstract interpretations, invited paper. In Proceedings of POPL’97, pages 316–331. ACM Press, 1997.
P. Cousot and R. Cousot. Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Proceedings of POPL’77, pages 238–252. ACM Press, 1977.
A. van Deursen, J. Heering, and P. Klint, editors. Language Prototyping: an algebraic specification approach. AMAST Series in Computing. World Scientific, 1996.
S. Drossopoulou and S. Eisenbach. Describing the semantics of Java and Proving Type Soundness. In J. Alves-Foss, editor, Formal Syntax and Semantics of Java, volume 1523 of Lecture Notes in Computer Science, pages 41–82. Springer-Verlag, 1999.
M. Dwyer, J. Hatcliff, R. Joehanes, S. Laubach, C. Pasareanu, Robby, W. Visser, and H. Zheng. Tool-supported program abstraction for finite-state verification. In Proceedings of ICSE’01, 2001.
P. Hartel. LETOS-a lightweight execution tool for operational semantics. Software-practice and experience, 29:1379–1416, September 1999.
P. Hartel and L. Moreau. Formalizing the Safety of Java, the Java Virtual Machine and Java Card. ACM Computing Surveys, 2001. To appear.
P. H. Hartel, M. J. Butler, and M. Levy. The Operational Semantics of a Java Secure Processor. In J. Alves-Foss, editor, Formal Syntax and Semantics of Java, volume 1523 of Lecture Notes in Computer Science, pages 313–352. Springer-Verlag, 1999.
B. Jacobs, J. van den Berg, M. Huisman, M. van Berkum, U. Hensel, and H. Tews. Reasoning about Java classes. A CM SIGPLAN Notices, 33(10):329–340, October 1998.
JavaCard Technology. http://java.sun.com/products/javacard
J. W. Klop. Term-rewriting systems. In S. Abramsky, D. Gabbay, and T. Maibaum, editors, Handbook of Logic in Computer Science, pages 1–116. Oxford Science Publications, 1992. Volume 2.
X. Leroy, D. Doligez, J. Garrigue, D. Rémy, and J. Vouillon. The Objective Caml system, release 3.00, 2000.
P. Müller and A. Poetzsch-Heffter. A type system for checking applet isolation in Java Card. In S. Drossopoulou, editor, Formal Techniques for Java Programs, 2001. To appear.
C. Muñoz. PBS: Support for the B-method in PVS. Technical Report SRI-CSL-99-01, SRI International, February 1999.
T. Nipkow. Verified Bytecode Verifiers. In F. Honsell and M. Miculan, editors, Proceedings of FOSSACS’01, volume 2030 of Lecture Notes in Computer Science, pages 347–363. Springer-Verlag, 2001.
T. Nipkow and D. von Oheimb. Java,/light is type-safe—definitely. In Proceedings of POPL’98, pages 161–170. ACM Press, 1998.
L. Paulson. Isabelle: a generic theorem prover, volume 828 of Lecture Notes in Computer Science. Springer-Verlag, 1994.
M. Petersson. Compiling Natural Semantics. PhD thesis, Linköping University, 1995.
C. Pusch. Proving the soundness of a Java bytecode verifier specification in Isabelle/HOL. In W. R. Cleaveland, editor, Proceedings of TACAS’99, volume 1579 of Lecture Notes in Computer Science, pages 89–103. Springer-Verlag, 1999.
N. Shankar, S. Owre, and J. M. Rushby. The PVS Proof Checker: A Reference Manual. Computer Science Laboratory, SRI International, February 1993. Supplemented with the PVS2 Quick Reference Manual, 1997. 3
R. Stata and M. Abadi. A type system for Java bytecode subroutines. ACM Transactions on Programming Languages and Systems, 21(1):90–137, January 1999.
D. Terrasse. Vers un environnement d’aide au developpement de preuves en Semantique Naturelle. PhD thesis, Ecole Nationale des Ponts et Chaussees, 1995.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Barthe, G., Dufay, G., Huisman, M., de Sousa, S.M. (2001). Jakarta: A Toolset for Reasoning about JavaCard. In: Attali, I., Jensen, T. (eds) Smart Card Programming and Security. E-smart 2001. Lecture Notes in Computer Science, vol 2140. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45418-7_2
Download citation
DOI: https://doi.org/10.1007/3-540-45418-7_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42610-3
Online ISBN: 978-3-540-45418-2
eBook Packages: Springer Book Archive