Eclipse Keyple® is an open source framework to facilitate the implementation of terminal processing operating smart card readers, and to defined advanced secure ticketing transaction.
The Keyple Core API provides a universal interface to manage smart card readers:
- The solution is able to handle any smart card reader solutions: standard (contacts/contactless PC/SC, NFC, OMAPI) or proprietary in a generic way.
- It’s also compatible with any terminal architecture: local or remote, for any kind of terminals: mobile, embedded or server. Remote smart card readers could be managed as local readers in a transparent way.
The Core API can be extended with command sets of specific smart card solutions in order to define advanced secure transactions. The project hosts a first extension to support the Calypso ticketing solution.
The Keyple Calypso API provides a high-level interface to implement fast and secure contactless ticketing transactions based on the Calypso standard.
- The settings of the Calypso cards & SAM APDU commands are automatically generated according to the functional operations defined by the developers.
- Cards & SAM commands are transmitted in an optimized grouping to limit network exchanges in case of distributed architecture.
Two implementations are currentely proposed for Java (dependency Java SE 6 and later, Android 4.4 or later) and for C++ (dependency C++ 11). Both implementations are based on the same oriented-object API.
- The components of Keyple Java are:
- 'Keyple Core': the generic interface to manage smart card reader solutions and select secure element.
- 'Calypso Extension': the library to define transaction with Calypso card.
- 'stub plugin': a tool to emulate readers and cards to operate Keyple without hardware elemnts.
- 'PC/SC plugin': the library to interface PC/SC readers to the Keyple Core.
- 'Android NFC plugin': the library to interface the native NFC contactless readers on Android device.
- 'OMAPI plugin': the library to interface the OMAPI contacts readers on Android device.
- 'Distributed module': a specific plugin solution to operate remote readers as localy.
- The components of Keyple C++ are:
- The Keyple Cpp is currently limited to support of the 'Calypso Core', the 'Calypso Extension', the 'stub plugin', and the ‘PC/SC plugin' (based on the same API as for Java components). The 'Distributed module' client will be added in the version 2.0.0.
More information on https://keyple.org/
From May 25th, 2020 to July 20th, 2022
Name | Date | Review |
---|---|---|
2.0.0 (C++ 22/07 Keyple) | 2022-07-20 | |
2.1.0 (Java 22/06 Stup plugin Lib) | 2022-06-03 | |
2.2.0 (Java 22/05 Card Calypso Lib) | 2022-05-30 | |
2.1.0 (Java 22/05 Utility Lib) | 2022-05-30 | |
2.1.0 (Java 22/02 Card Calypso Lib) | 2022-02-01 | |
2.0.0 (Java 21/10) | 2021-10-06 | |
0.9.0 (Cpp 21/01) | 2021-01-26 | |
1.0.0 (Java 20/12) | 2020-12-16 | |
0.9.0 (Java 20/09) | 2020-09-11 | |
0.8.1 (Cpp 20/05) | 2020-05-25 |