In order to guarantee interoperability between smart cards and terminals, the ‘Calypso Networks Association’ (CNA) encourages ticketing operators to follow various specifications and certification processes.
For compliance with the contactless reader communication protocol, CNA supports the certification programme standardised by the ‘Smart Ticketing Alliance’ (STA) for ‘Public Transport Readers’ (PT Readers).
Several test laboratories are approved for ‘Proximity Coupling Device’ (PCD) certification under the supervision of the ‘Certification Body’ Paycert.
Separation and functional logic of the various software layers
To guarantee the functional capability of the ticketing terminals, CNA has proposed a software architecture with a distribution of responsibilities per layer, and has defined dedicated functional requirements for each software layer.
Reader software layer
For terminals integrating contactless and/or contact readers, the Keyple’s ‘Core’ libraries have been designed to meet the terminal requirements for the reader layer.
2 conditions must be met to guarantee « complete » compliance with the requirements of the reader layer:
Pending the future certification programme for reader layer libraries, CNA plans to publish the self-declarations of conformity of the Keyple Core libraries for reader solutions interfaced with PC/SC and Android NFC plugins.
Calypso software layer
The Keyple’s ‘Calypso’ libraries have also been implemented to meet the terminal requirements for the Calypso layer, regardless of the reader solutions used.
2 conditions must be met to guarantee « complete » compliance with the requirements of the Calypso layer:
Pending the future certification programme for Calypso layer libraries, CNA has published the self-declarations of conformity of the Keyple Calypso libraries (independently of interfaced reader solutions, but on the basis of a compliant reader software layer).
Terminal requirements support declarations
For the various Keyple Calypso library sets, all applicabilities and terminal requirements are supported, with the exception of those listed in the table below.
Calypso layer libraries | Unsupported applicability | Unsupported Requirement |
---|
Calypso card | Feature |
---|
Keyple Java Calypso Prime PKI set | | - | |
---|
Keyple Java Calypso Prime Extended set | | - | - CL-SEL-SNHEADER.2
- CL-RAT-PKIMODE.2
- CL-SV-PKIMODE.1
- CL-PKI-ALGO.1
- CL-PKI-VERIF.2
- CL-PKI-PUBKEY.1
- CL-PKI-RQMODE.1
|
---|
Keyple Legacy Java Calypso Prime Extended set | | - | - CL-SEL-SNHEADER.2
- CL-RAT-PKIMODE.2
- CL-SV-PKIMODE.1
- CL-PKI-ALGO.1
- CL-PKI-VERIF.2
- CL-PKI-PUBKEY.1
- CL-PKI-RQMODE.1
|
---|
Keyple Legacy Java Calypso Prime Regular set | - Prime PKI
- Prime Extended
- HCE
| - | - CL-SEL-SNHEADER.2
- CL-RAT-PKIMODE.2
- CL-SV-PKIMODE.1
- CL-PKI-ALGO.1
- CL-PKI-VERIF.2
- CL-PKI-PUBKEY.1
- CL-PKI-RQMODE.1
|
---|
Keyple Legacy C++ Calypso Prime Regular set | - Prime PKI
- Prime Extended
- HCE
| - | - CL-SEL-SNHEADER.2
- CL-RAT-PKIMODE.2
- CL-SV-PKIMODE.1
- CL-PKI-ALGO.1
- CL-PKI-VERIF.2
- CL-PKI-PUBKEY.1
- CL-PKI-RQMODE.1
|
---|
‘Keyple Java Calypso Prime PKI set’ definition
Product Identification |
---|
Set Name | Keyple Java Calypso Prime PKI set |
---|
Set Version | 2024/04/17 or after |
---|
Library Versions | - keypop-calypso-card-java-api (external API): 2.1+
- keypop-calypso-crypto-legacysam-java-api (external API) : 0.5 to 0.6+
- keypop-calypso-crypto-symmetric-java-api (internal API): 0.1+
- keypop-calypso-crypto-asymmetric-java-api (internal API): 0.2+
- keyple-card-calypso-java-lib: 3.1.1 to 3.1.2+
- keyple-card-calypso-crypto-legacysam-java-lib: 0.6.0 to 0.7.1+
- keyple-card-calypso-crypto-pki-java-lib: 0.2.0+
|
---|
Product Compatibility |
---|
Reader Layer | Keyple Core Java set:- keypop-reader-java-api (external API): 2.0+
- keypop-card-java-api (internal API): 2.0+
- keyple-plugin-java-api (internal API): 2.2 to 2.3+
- keyple-common-java-api (internal API): 2.0+
- keyple-service-java-lib: 3.0.0 to 3.2.3+
- keyple-util-java-lib: 2.3.0 to 2.4.0+
Integrated with reader plugin implementing the Keyple Plugin API. |
---|
Ticketing Layer | Any ticketing application based on:- keypop-reader-java-api (external API): 2.0+
- keypop-calypso-card-java-api (external API): 2.1+
- keypop-calypso-crypto-legacysam-java-api (external API) : 0.5 to 0.6+
|
---|
‘Keyple Java Calypso Prime Extended set’ definition
Product Identification |
---|
Set Name | Keyple Java Calypso Prime Extended set |
---|
Set Version | 2023/11/28 or after |
---|
Library Versions | - keypop-calypso-card-java-api (external API): 2.0 to 2.1+
- keypop-calypso-crypto-legacysam-java-api (external API) : 0.3 to 0.6+
- keypop-calypso-crypto-symmetric-java-api (internal API): 0.1+
- keyple-card-calypso-java-lib: 3.0.0 to 3.1.2+
- keyple-card-calypso-crypto-legacysam-java-lib: 0.4.0 to 0.7.1+
|
---|
Product Compatibility |
---|
Reader Layer | Keyple Core Java set:- keypop-reader-java-api (external API): 2.0+
- keypop-card-java-api (internal API): 2.0+
- keyple-plugin-java-api (internal API): 2.2 to 2.3+
- keyple-common-java-api (internal API): 2.0+
- keyple-service-java-lib: 3.0.0 to 3.2.3+
- keyple-util-java-lib: 2.3.0 to 2.4.0+
Integrated with reader plugin implementing the Keyple Plugin API. |
---|
Ticketing Layer | Any ticketing application based on:- keypop-reader-java-api (external API): 2.0+
- keypop-calypso-card-java-api (external API): 2.0 to 2.1+
- keypop-calypso-crypto-legacysam-java-api (external API) : 0.3 to 0.6+
|
---|
‘Keyple Legacy Java Calypso Prime Extended set’ definition
Product Identification |
---|
Set Name | Keyple Lecacy Java Calypso Prime Extended set |
---|
Set Version | 2022/12/22 to 2023/11/27 |
---|
Library Versions | - calypsonet-terminal-calypso-java-api (external API): 1.5 to 1.8
- calypsonet-terminal-calypso-crypto-legacysam-java-api (external API): 0.1 to 0.2
- keyple-card-calypso-java-lib: 2.3.1 to 2.3.12+ (<3.0.0)
- keyple-card-calypso-crypto-legacysam-java-lib: 0.1.0 to 0.3.0
|
---|
Product Compatibility |
---|
Reader Layer | Keyple Core Java set:- calypsonet-terminal-reader-java-api (external API): 1.0 to 1.3
- calypsonet-terminal-card-java-api (internal API): 1.0
- keyple-plugin-java-api (internal API): 2.0 to 2.3
- keyple-common-java-api (internal API): 2.0
- keyple-service-java-lib: 2.1.1 to 2.3.5+ (<3.0.0)
- keyple-util-java-lib: 2.3.0 to 2.3.1
Integrated with reader plugin implementing the Keyple Plugin API. |
---|
Ticketing Layer | Any ticketing application based on:- calypsonet-terminal-reader-java-api (external API): 1.0 to 1.3
- calypsonet-terminal-calypso-java-api (external API): 1.5 to 1.8
- calypsonet-terminal-calypso-crypto-legacysam-java-api (external API) : 0.1 to 0.2
|
---|
‘Keyple Legacy Java Calypso Prime Regular set’ definition
Product Identification |
---|
Set Name | Keyple Lecacy Java Calypso Prime Regular set |
---|
Set Version | 2022/02/01 to 2022/12/22 |
---|
Library Versions | - calypsonet-terminal-calypso-java-api (external API): 1.1 to 1.4
- calypsonet-terminal-calypso-crypto-legacysam-java-api (external API): 0.1
- keyple-card-calypso-java-lib: 2.1.0 to 2.3.0
- keyple-card-calypso-crypto-legacysam-java-lib: 0.0.0 to 0.2.0
|
---|
Product Compatibility |
---|
Reader Layer | Keyple Core Java set:- calypsonet-terminal-reader-java-api (external API): 1.0 to 1.3
- calypsonet-terminal-card-java-api (internal API): 1.0
- keyple-plugin-java-api (internal API): 2.0 to 2.3
- keyple-common-java-api (internal API): 2.0
- keyple-service-java-lib: 2.1.1 to 2.3.5+ (<3.0.0)
- keyple-util-java-lib: 2.3.0 to 2.3.1
Integrated with reader plugin implementing the Keyple Plugin API. |
---|
Ticketing Layer | Any ticketing application based on:- calypsonet-terminal-reader-java-api (external API): 1.0 to 1.1
- calypsonet-terminal-calypso-java-api (external API): 1.1 to 1.4
- calypsonet-terminal-calypso-crypto-legacysam-java-api (external API) : 0.1
|
---|
‘Keyple Legacy C++ Calypso Prime PKI set’ definition
Product Identification |
---|
Set Name | Keyple Lecacy C++ Calypso Prime Regular set |
---|
Set Version | 2022/02/01 to 2023/06/20 |
---|
Library Versions | - calypsonet-terminal-calypso-cpp-api (external API): 1.0 to 1.4
- keyple-card-calypso-cpp-lib: 2.1.0 to 2.2.5.3
|
---|
Product Compatibility |
---|
Reader Layer | Keyple Core Java set:- calypsonet-terminal-reader-cpp-api (external API): 1.0 to 1.1
- calypsonet-terminal-card-cpp-api (internal API): 1.0
- keyple-plugin-cpp-api (internal API): 2.0
- keyple-common-cpp-api (internal API): 2.0
- keyple-service-cpp-lib: 2.0.1 to 2.1.1.1
- keyple-util-cpp-lib: 2.0.0 to 2.3.0.4
Integrated with reader plugin implementing the Keyple Plugin API. |
---|
Ticketing Layer | Any ticketing application based on:- calypsonet-terminal-reader-cpp-api (external API): 1.0 to 1.1
- calypsonet-terminal-calypso-cpp-api (external API): 1.0 to 1.4
|
---|
Ticketing software layer
For a ticketing terminal solution built on the Keyple framework, the responsibility for complying with the requirements for the ticketing software layer lies exclusively with the developers of the terminal application using the ‘public’ Reader & Calypso terminal APIs.