Academia.eduAcademia.edu

Outline

An open middleware for smart cards

2005, Computer Systems: Science & Engineering

Abstract

This paper presents an open and modular middleware for smart cards, providing a simple abstraction of the device to application developers. The software is interoperable across multiple card devices, and portable across various open platforms. The architectural design is centred around the definition of a new API that allows protected access to the storage and cryptographic facilities of a smart card. In the envisioned architecture, a smart card driver architecture is partitioned into a lower card-dependent component, that formats and exchanges APDUs with the external device, and a higher cardindependent component, that implements more sophisticated services and interfaces, such as the well known PKCS-11 standard. Each layer can focus on a smaller set of functionality, thus reducing the effort required for the development as well as the testing and maintenance of each component. The proposed architecture, along with a set of pilot applications such as secure remote shell, secure web services, local login and digital signature, has been developed and tested on various platforms, including Open BSD, Linux, Solaris and Mac OS X, proving effectiveness of the new approach.

References (21)

  1. PKCS-11 version 2.1.1 Final Draft: Cryptographic Token Inter- face Standard, RSA Laboratories, June 2001.
  2. Application Indipendent Card Terminal Application Program- ming Interface for ICC Applications (CT-API 1.1), TeleTrustT Deutschland e.V., Juergen Atrott, TUEV Informationstechnik GmbH, October 1998.
  3. Global System for Mobile Communications (GSM 11.11) - Digital cellular telecommunications systems -Specification of the Subscriber Ientity Module, ETSI, December 1995.
  4. ISO/IEC 7816-4/7/8/9: Information technology -Identification cards -Integrated circuit(s) cards with contacts, -Parts 4, 7, 8, 9, International Standard Organization, 1995.
  5. Government Smart Card Interoperability Specification: Con- tract Modification, GSA, August 2000.
  6. ISO/IEC 7816-3: Information technology -Identification cards -Integrated circuit(s) cards with contacts -Part 3, Internation- al Standard Organization, 1989.
  7. Olaf Kirch, OpenSC -Smart Cards on Linux, Proc. of the 10th International Linux System Technology Conference, October 2003.
  8. PKCS-15: A Cryptographic Token Information Format Stan- dard, RSA Laboratories, April 1999.
  9. Sectok library and applications, Center for Information Tech- nology Integration (CITI), University of Michigan, 2001.
  10. OpenCard Framework General Information Web Document, OpenCard Consortium, October 1998.
  11. GPKCS11 -GNU PKCS-11 implementation, TrustCenter, Octo- ber 2000.
  12. Common Security: CDSA and CSSM, Version 2.3, The Open Group, May 2000.
  13. Intel Common Data Security Architecture Reference Implemen- tation, 2001.
  14. Tommaso Cucinotta, Marco Di Natale and David Corcoran, A protocol for programmable smart cards, Trust and Privacy for Digital Business (TRUSTBUS) Workshop, Proc. of DEXA 2003, Prague, Czech Republic, September 2003, IEEE Comput- er Society.
  15. V. Samar and R. Schemers, Request For Comments 86.0: Uni- fied login with pluggable authentication modules (PAM), Open Software Foundation, October 1995.
  16. David Corcoran and Tommaso Cucinotta, MUSCLE Card API, version 1.3.0, August 2001.
  17. Tommaso Cucinotta, Marco Di Natale and Riccardo Brigo, Hybrid fingerprint matching on programmable smart cards, Proc. of the 1st International Conference on Trust and Privacy for Digital Business (TRUSTBUS 2004), Zaragoza, Spain, September 2004, Springer LNCS 3184.
  18. Java Card™ 2.1.1 Runtime Environment (JCRE) Specification, Sun Microsystems, Inc., May 2000.
  19. Ross Anderson and Markus Kuhn, Low Cost Attacks on Tamper Resistant Devices, Security Protocols, 5th International Workshop, pages 125-136, Sprinter, April 1997.
  20. Pieter H. Hartel, Formalising Java safety -An overview, Proc. of the Fourth Smart Card Research and Advanced Application Conference (CARDIS 2000), pages 115-134, 2000.
  21. Audun Josang, The difficulty of standardising Smart Card Security Evaluation, September 1994.