The objective of Java Cards is to protect security-critical code and data against a hostile environment. Adversaries perform fault attacks on these cards to change the control and data flow of the Java Card Virtual Machine. These attacks confuse the Java type system, jump to forbidden code or remove run-time security checks. This work introduces a novel security layer for a defensive Java Card Virtual Machine to counteract fault attacks. The advantages of this layer from the security and design perspectives of the virtual machine are demonstrated. In a case study, we demonstrate three implementations of the abstraction layer running on a Java Card prototype. Two implementations use software checks that are optimized for either memory consumption or execution speed. The third implementation accelerates the run-time verification process by using the dedicated hardware protection units of the Java Card. © 2013 Springer-Verlag.
CITATION STYLE
Lackner, M., Berlach, R., Raschke, W., Weiss, R., & Steger, C. (2013). A defensive virtual machine layer to counteract fault attacks on Java Cards. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 7886 LNCS, pp. 82–97). https://doi.org/10.1007/978-3-642-38530-8_6
Mendeley helps you to discover research relevant for your work.