Automatic source code transformations for strengthening practical security of smart card applications
Václav Lorenc, Tobiáš Smolka, Petr Švenda
Abstract
Václav Lorenc, Tobiáš Smolka, Petr Švenda
Abstract
Smart card platforms like Java Card or .NET allow to implement portable applications that can be run on different smart card hardware. The resulting overall security of the applet is strongly dependent on the implementation of the smart card operating system, related libraries, as well as physical resistance and information leakage of the underlying hardware. Defenses implementable on the source code level for later case might exist, but such a situation is unfavorable for applet developer as multiple versions of applet must be maintained to support a wider range of smart cards (although all providing Java Card platform). In this paper we describe several practical attacks on modern smart cards, discuss possible defenses and propose a general framework for automatic replacement of vulnerable operations by safe equivalents. A code strengthening constructions can be also automatically inserted. Practical implementation and examples of usage are presented and discussed.
OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Smart card platforms like Java Card or .NET allow to implement portable applications that can be run on different smart card hardware. The resulting overall security of the applet is strongly dependent on the implementation of the smart card operating system, related libraries, as well as physical resistance and information leakage of the underlying hardware. Defenses implementable on the source code level for later case might exist, but such a situation is unfavorable for applet developer as multiple versions of applet must be maintained to support a wider range of smart cards (although all providing Java Card platform). In this paper we describe several practical attacks on modern smart cards, discuss possible defenses and propose a general framework for automatic replacement of vulnerable operations by safe equivalents. A code strengthening constructions can be also automatically inserted. Practical implementation and examples of usage are presented and discussed.
Key concepts: Smart card, Open Smart Card Development Platform, Java Card, Java applet, Smart card application protocol data unit, Computer science, OpenPGP card, Contactless smart card