(black-box testing). To support this vision, we devel-
oped a suite of open tools for the collection of meta-
data, functionality, and performance parameters, and
specific properties of generated cryptographic keys by
the tested cards.
We also continuously maintained the largest open
database with the respective results using a combi-
nation of cards from our laboratory and provided by
community effort, totaling more than 100 cards. Such
a database not only provides insight into the ecosys-
tem of cryptographic smartcards spanning over al-
most two decades but also makes the results for com-
mon smartcards accessible – providing data for end-
user verification may be included in the certification
process.
ACKNOWLEDGEMENT
P. Svenda and A. Dufka were supported by Ai-
SecTools (VJ02010010) project. Earlier support for
JCAlgTest project was provided by the European cy-
bersecurity pilot CyberSec4Europe.
REFERENCES
Barbu, G., Thiebeauld, H., and Guerin, V. (2010). At-
tacks on java card 3.0 combining fault and logical at-
tacks. Smart Card Research and Advanced Applica-
tion, pages 148–163.
Bernab
´
e, G. and Clarke, N. (2013). Study of RSA per-
formance in Java Cards. Advances in Communica-
tions, Computing, Networks and Security Volume 10,
page 45.
Besson, F., Jensen, T., and Vittet, P. (2014). Sawjacard:
a static analysis tool for certifying Java Card appli-
cations. In International Static Analysis Symposium,
pages 51–67. Springer.
Bouzefrane, S., Cordry, J., and Paradinas, P. (2008).
A methodology for testing Java Card performance.
In CFSE’08 Conf
´
erence Franc¸aise en Syst
`
emes
d’Exploitation, Suisse.
Farhadi, M. and Lanet, J.-L. (2017). Chronicle of a Java
Card death. Journal of Computer Virology and Hack-
ing Techniques, 13(2):109–123.
Hajny, J., Malina, L., Martinasek, Z., and Tethal, O.
(2014). Performance evaluation of primitives for
privacy-enhancing cryptography on current smart-
cards and smart-phones. In Data Privacy Manage-
ment and Autonomous Spontaneous Security, pages
17–33. Springer.
ISO (2013). ISO/IEC 7816-4:2013 - identification cards –
integrated circuit cards – part 4: Organization, secu-
rity and commands for interchange. International Or-
ganization for Standardization.
Jancar, J., Sedlacek, V., Svenda, P., and Sys, M. (2020).
Minerva: The curse of ECDSA nonces. IACR Trans-
actions on Cryptographic Hardware and Embedded
Systems, 2020(4):281–308.
Kasmi, M. A., Azizi, M., and Lanet, J.-L. (2015). Side
channel analysis techniques towards a methodology
for reverse engineering of Java Card byte-code. In
Information Assurance and Security (IAS), 2015 11th
International Conference on, pages 104–110. IEEE.
Kocher, P., Jaffe, J., and Jun, B. (1999). Differential power
analysis. In Advances in Cryptology—CRYPTO’99,
pages 388–397. Springer.
Lancia, J. and Bouffard, G. (2016). Fuzzing and over-
flows in Java Card smart cards. In SSTIC Conference,
Rennes, France.
Laugier, B. and Razafindralambo, T. (2015). Misuse of
frame creation to exploit stack underflow attacks on
java card. In International Conference on Smart Card
Research and Advanced Applications, pages 89–104.
Springer.
Common Criteria (2017). Common Criteria for
information technology security evaluation,
version 3.1, revision 5, ccmb-2017-04-001.
https://www.commoncriteriaportal.org/files/ccfiles/
CCPART1V3.1R5.pdf.
Common Criteria (2020). Certified products list -
statistics (retrieved 2022-04-11). https://www.
commoncriteriaportal.org/products/stats/.
Ludovic Rousseau (2009). Smart card ATR parsing (re-
trieved 2022-04-11). https://smartcard-atr.apdu.fr/.
Martin Paljak (2020). GlobalPlatformPro v20.01.23. https:
//github.com/martinpaljak/GlobalPlatformPro.
Oracle (2015). Java Card 3.0.5 platform specification. https:
//docs.oracle.com/javacard/3.0.5/index.html.
Nemec, M., Sys, M., Svenda, P., Klinec, D., and Matyas, V.
(2017). The return of Coppersmith’s attack: Practical
factorization of widely used RSA moduli. In ACM
CCS 2017, CCS ’17, pages 1631–1648, New York,
NY, USA. ACM.
Svenda, P., Nemec, M., Sekan, P., Kvasnovsky, R., For-
manek, D., Komarek, D., and Matyas, V. (2016).
The million-key question – investigating the origins of
RSA public keys. In The 25th USENIX Security Sym-
posium (UsenixSec’2016), pages 893–910. USENIX.
NIST (2014). Validated FIPS 140-1 and FIPS 140-2 cryp-
tographic modules. http://csrc.nist.gov/groups/STM/
cmvp/documents/140-1/140val-all.htm.
Vermoen, D., Witteman, M., and Gaydadjiev, G. (2007).
Reverse engineering java card applets using power
analysis. Information Security Theory and Practices.
Smart Cards, Mobile and Ubiquitous Computing Sys-
tems, pages 138–149.
Volokitin, S. and Poll, E. (2016). Logical attacks on secured
containers of the java card platform. In International
Conference on Smart Card Research and Advanced
Applications, pages 122–136. Springer.
SECRYPT 2022 - 19th International Conference on Security and Cryptography
604