TY - GEN
T1 - (Ab)using foreign VMs
T2 - 11th International Conference on Advances in Mobile Computing and Multimedia, MoMM 2013
AU - Roland, Michael
AU - Langer, Josef
AU - Mayrhofer, Rene
N1 - Copyright:
Copyright 2014 Elsevier B.V., All rights reserved.
PY - 2013
Y1 - 2013
N2 - Creating Java Card applications for Near Field Communication's card emulation mode requires access to a secure smartcard chip (the secure element). Today, even for development purposes, it is difficult to get access to the secure element in most current smart phones. Therefore, it would be useful to have an environment that emulates a secure element for rapid prototyping and debugging. Our approach to such an environment is emulation of Java Card applets on top of non-Java Card virtual machines (e.g. Android's Dalvik VM). However, providing a Java Card run-time environment on top of another Java virtual machine faces one big problem: The Java Card virtual machine's operation principle is based on persistent memory technology. As a result, the VM and the applications that run on top of it have a significantly different life-cycle compared to other Java VMs. Based on specific scenarios for secure element emulators for the Android platform, we evaluate these differences and their impact on Java VM-based Java Card emulation. Further, we propose possible solutions to the problems that arise from these differences in the life-cycles.
AB - Creating Java Card applications for Near Field Communication's card emulation mode requires access to a secure smartcard chip (the secure element). Today, even for development purposes, it is difficult to get access to the secure element in most current smart phones. Therefore, it would be useful to have an environment that emulates a secure element for rapid prototyping and debugging. Our approach to such an environment is emulation of Java Card applets on top of non-Java Card virtual machines (e.g. Android's Dalvik VM). However, providing a Java Card run-time environment on top of another Java virtual machine faces one big problem: The Java Card virtual machine's operation principle is based on persistent memory technology. As a result, the VM and the applications that run on top of it have a significantly different life-cycle compared to other Java VMs. Based on specific scenarios for secure element emulators for the Android platform, we evaluate these differences and their impact on Java VM-based Java Card emulation. Further, we propose possible solutions to the problems that arise from these differences in the life-cycles.
KW - Android
KW - Card emulation
KW - Emulator
KW - Java Card
KW - Near Field Communication
KW - Secure Element
UR - http://www.scopus.com/inward/record.url?scp=84897627741&partnerID=8YFLogxK
U2 - 10.1145/2536853.2536870
DO - 10.1145/2536853.2536870
M3 - Conference contribution
SN - 9781450321068
T3 - ACM International Conference Proceeding Series
SP - 286
EP - 292
BT - Proceedings - 11th International Conference on Advances in Mobile Computing and Multimedia, MoMM 2013
PB - ACM Press
Y2 - 2 December 2013 through 4 December 2013
ER -