Testcase | Syntax Check | |
---|---|---|
Test ID | S-1 | |
Description | This test case ensures that the uploaded CardInfo-File is syntactically correct. The syntax of the uploaded CardInfo-File is checked by means of an XML-schema validation against the specified CardInfo.xsd. | |
References | [CardInfo.xsd] | |
[eCard-4] | Annex A |
The test cases in this section ensure that the semantics of the CardInfo-file is correct and that the various definitions are consistent with each other.
Consistency of CardType -element
|
---|
The following test cases aim at checking consistency aspects related to the |
Testcase | Existence of BasisSpecification | |
---|---|---|
Test ID | C-CT-1 | |
Description | This test case ensures that the If the | |
References | [eCard-4] | Annex A.3 |
Testcase | Uniqueness of localized CardTypeName | |
---|---|---|
Test ID | C-CT-2 | |
Description | This test case ensures that there is at most one localized If there are two or more | |
References | [eCard-4] | Annex A.3 |
Testcase | CardInfoRepository reachable
| |
---|---|---|
Test ID | C-CT-3 | |
Description | This test case checks whether the specified If the specified URI is not a URL or the location is not reachable, there will be a warning. | |
References | [eCard-4] | Annex A.3 |
Consistency of CardIdentification -element
|
---|
The following test case aims at checking consistency aspects related to the |
Testcase | Card identification with APDUs only | |
---|---|---|
Test ID | C-CI-1 | |
Description | The If a | |
References | [eCard-4] | Annex A.4 |
Testcase | Card identification with admissible and recommended APDUs | |
---|---|---|
Test ID | C-CI-2 | |
Description | This test case checks whether the APDUs used for the card type identification procedure use admissible and recommended commands. The list of recommended INS-bytes and commands comprises:
The list of forbidden (non-admissible) INS-bytes and commands comprises:
A forbidden INS-byte in a If the APDUs in a | |
References | [eCard-4] | Annex A.4 |
[eCard-4] | Annex A.7 |
Consistency of CardCapabilities -element
|
---|
The following test case aims at checking consistency aspects related to the |
Testcase | Interface -URI
| |
---|---|---|
Test ID | C-CC-1 | |
Description | This test checks whether the The list of currently supported
If there is an Please contact Ecard.api(at)bsi.bund.de if there is an important URI missing. | |
References | [eCard-4] | Annex A.5 |
Consistency of ApplicationCapabilities -element
|
---|
The following test cases aim at checking consistency aspects related to the |
Testcase | Existence of ImplicitlySelectedApplication | |
---|---|---|
Test ID | C-AC-1 | |
Description | This test case ensures that the implicitly selected card application, if it is specified in an
If the | |
References | [eCard-4] | Annex A.6 |
Testcase | Correspondence of InterfaceProtocol and Interface | |
---|---|---|
Test ID | C-AC-2 | |
Description | This test checks whether the If there is an | |
References | [eCard-4] | Annex A.5 |
[eCard-4] | Annex A.6 |
Testcase | Uniqueness of ApplicationIdentifier -elements
| |
---|---|---|
Test ID | C-AC-3 | |
Description | This test case ensures that the If there are two or more card applications with the same | |
References | [eCard-4] | Annex A.6 |
Testcase | Uniqueness of localized LocalApplicationName | |
---|---|---|
Test ID | C-AC-4 | |
Description | This test case ensures that there is at most one localized If there are two or more | |
References | [eCard-4] | Annex A.6 |
Testcase | Uniqueness of CardApplicationServiceName -elements
| |
---|---|---|
Test ID | C-AC-5 | |
Description | This test case ensures that an explicitly specified The set of standardized card application services and corresponding actions is given as follows:
If the specified | |
References | [eCard-4] | Annex A.6 |
Testcase | ServiceDescriptionURL reachable
| |
---|---|---|
Test ID | C-AC-6 | |
Description | This test case checks whether the If the specified URL is not reachable, there will be a warning. | |
References | [eCard-4] | Annex A.6 |
Testcase | Uniqueness of AccessRule s
| |
---|---|---|
Test ID | C-AC-7 | |
Description | This test checks whether the set of specified If there is a standardized action (see above) for which there is no If there is a standardized or loaded action for which there are two or more equal access rules there will be a warning. If there is a standardized or loaded action for which there are two or more different access rules there will be an error. | |
References | [eCard-4] | Annex A.6 |
C-AC-5 |
Testcase | CardApplicationServciesName in AccessRule | |
---|---|---|
Test ID | C-AC-8 | |
Description | This test checks whether the If there is a | |
References | [eCard-4] | Annex A.6 |
C-AC-5 |
Testcase | LoadedAction in AccessRule | |
---|---|---|
Test ID | C-AC-9 | |
Description | This test checks whether the If a If a | |
References | [eCard-4] | Annex A.6 |
C-AC-5 |
Testcase | Existence of DIDName -elements in CardApplicationACL | |
---|---|---|
Test ID | C-AC-10 | |
Description | This test case ensures that all If there is a | |
References | [eCard-4] | Annex A.6 |
C-AC-16 | ||
C-AC-23 | ||
C-AC-26 |
Testcase | Uniqueness of DIDName -elements
| |
---|---|---|
Test ID | C-AC-11 | |
Description | This test case ensures that the If there are two or more global Differential Identities (i.e. If there are two or more local Differential Identities (i.e. | |
References | [eCard-4] | Annex A.6 |
Testcase | DIDProtocol -URI
| |
---|---|---|
Test ID | C-AC-12 | |
Description | This test checks whether the The list of supported protocols and
If there is a In a similar manner there will be an error, if there is a mismatch between the Please contact Ecard.api(at)bsi.bund.de if there is an important URI missing. | |
References | [eCard-4] | Annex A.6 |
[eCard-7] | ||
[EAC-2] |
Testcase | Existing PinValue -element in PinCompareMarker | |
---|---|---|
Test ID | C-AC-13 | |
Description | While the | |
References | [eCard-4] | Annex A.6 |
[eCard-7] | Section 3.1 |
Testcase | Consistency of PIN-length-attributes in Pin Compare protocol | |
---|---|---|
Test ID | C-AC-14 | |
Description | This test checks whether the different length-related attributes in the If the | |
References | [eCard-4] | Annex A.6 |
[eCard-6] | Section 3.3.1 | |
[eCard-7] | Section 3.1 |
Testcase | Existing lastPasswordChange -element in PinCompareMarker | |
---|---|---|
Test ID | C-AC-15 | |
Description | While the | |
References | [eCard-4] | Annex A.6 |
[eCard-7] | Section 3.1 |
Testcase | Existence of DIDName -elements in StateTransition of Pin Compare protocol
| |
---|---|---|
Test ID | C-AC-16 | |
Description | This test case ensures that all If there is a | |
References | [eCard-4] | Annex A.6 |
C-AC-10 |
Testcase | Algorithm -URI in Generic Cryptography protocol
| |
---|---|---|
Test ID | C-AC-17 | |
Description | This test checks whether the The list of supported algorithms comprises:
If there is an In a similar manner there will be a warning, if the string-based Please contact Ecard.api(at)bsi.bund.de if there is an important URI missing. | |
References | [eCard-4] | Annex A.6 |
[RFC3447] | ||
[RFC5754] | ||
[RFC5480] | ||
[TTT-OID-Hash] | ||
[TTT-OID-Sig] |
Testcase | Key-material for the Generic Cryptography protocol | |
---|---|---|
Test ID | C-AC-18 | |
Description | This test checks whether the CardInfo-file contains key material for the Generic Cryptography protocol. If the | |
References | [eCard-4] | Annex A.6 |
[eCard-7] | Section 3.5 |
Testcase | Consistency of supported operations in Generic Cryptography protocol | |
---|---|---|
Test ID | C-AC-19 | |
Description | This test checks whether the
| |
References | [eCard-4] | Annex A.6 |
[eCard-7] | Section 3.5 | |
C-AC-17 |
Testcase | SignatureGenerationInfo -element only for signature algorithms
| |
---|---|---|
Test ID | C-AC-20 | |
Description | This test makes sure that a If there is a | |
References | [eCard-4] | Annex A.6 |
[eCard-7] | Section 3.5 | |
C-AC-17 |
Testcase | HashGenerationInfo -element only for hash algorithms
| |
---|---|---|
Test ID | C-AC-21 | |
Description | This test makes sure that a If there is a | |
References | [eCard-4] | Annex A.6 |
[eCard-7] | Section 3.5 | |
C-AC-23 |
Testcase | Unnecessary elements for hash algorithms | |
---|---|---|
Test ID | C-AC-22 | |
Description | This test makes sure that there are no unnecessary elements for hash algorithms. If there is a | |
References | [eCard-4] | Annex A.6 |
[eCard-7] | Section 3.5 | |
C-AC-17 |
Testcase | Existence of DIDName -elements in DIDACL | |
---|---|---|
Test ID | C-AC-23 | |
Description | This test case ensures that all If there is a | |
References | [eCard-4] | Annex A.6 |
C-AC-10 | ||
C-AC-26 |
Testcase | Uniqueness of DataSetName -elements
| |
---|---|---|
Test ID | C-AC-24 | |
Description | This test case ensures that the If there are two or more data sets in a card application with the same | |
References | [eCard-4] | Section 3.4 |
[eCard-4] | Annex A.6 |
Testcase | Uniqueness of LocalDataSetName | |
---|---|---|
Test ID | C-AC-25 | |
Description | This test case ensures that there is at most one If there are two or more | |
References | [eCard-4] | Annex A.6 |
Testcase | Existence of DIDName -elements in DataSetACL | |
---|---|---|
Test ID | C-AC-26 | |
Description | This test case ensures that all If there is a | |
References | [eCard-4] | Annex A.6 |
C-AC-10 | ||
C-AC-23 |
Testcase | Uniqueness of DSIName -elements
| |
---|---|---|
Test ID | C-AC-27 | |
Description | This test case ensures that the If there are two or more data structures for interoperability (DSI) within a data set with the same | |
References | [eCard-4] | Section 3.4 |
[eCard-4] | Annex A.6 |
Testcase | Correctness of StateInfo -elements
| |
---|---|---|
Test ID | C-AC-28 | |
Description | This test case verifies the structural correctness of the
| |
References | [eCard-7] | Section 3.1.1 |
Testcase | Consistency of PIN-length-attributes in PACE protocol | |
---|---|---|
Test ID | C-AC-29 | |
Description | This test checks whether the different length-related attributes of the
If both the | |
References | [eCard-7] | Section 3.3.14 |
C-AC-14 |
Testcase | Correctness of DIDStateQualifier -elements for EAC-protocol
| |
---|---|---|
Test ID | C-AC-30 | |
Description | This test checks whether the usage and content of the In order to check the correct usage of the In order to check the correctness of the form, it is verified that
| |
References | [eCard-7] | Section 3.3.1 |
[eCard-7] | Section 3.5.1 | |
[eCard-7] | Section 3.6.3 |
Testcase | Correctness of DIDStateQualifier -elements for RSA Authentication-protocol
| |
---|---|---|
Test ID | C-AC-31 | |
Description | This test checks whether the content of the This check is applicable for For those
| |
References | [eGK-2] | Annex B |
[eCard-7] | Section 3.3.1 | |
[eCard-7] | Section 3.5.1 | |
[eCard-7] | Section 3.6.3 |
Testcase | Protection of sensitive key objects by Signature -element
| |
---|---|---|
Test ID | C-S-1 | |
Description | This test case ensures that all elements of If there is a key object, which contains a | |
References | [eCard-4] | Annex A.7 |
Testcase | KeyInfo with child-elements different from X509Data | |
---|---|---|
Test ID | C-S-2 | |
Description | This test case ensures that each If there is a | |
References | [eCard-4] | Annex A.7 |
The test cases in this section ensure that the provided CardInfo-file is in fact conform to the provided card.
Conformity of the CardType -element
|
---|
The following test cases aim at verifying that the specified |
Testcase | Conformity of ATR -element
| |
---|---|---|
Test ID | CC-CI-1 | |
Description | This test case checks whether the ATR-element returned by the card corresponds to
one of the specified If the ATR returned by the card does not match any of the specified | |
References | [eCard-4] | Annex A.4 |
Testcase | Conformity of ATS -element
| |
---|---|---|
Test ID | CC-CI-2 | |
Description | This test case checks whether the ATS-element returned by the card corresponds to
the specified If the ATS returned by the card does match the specified | |
References | [eCard-4] | Annex A.4 |
Testcase | Conformity of CharacteristicFeature -elements
| |
---|---|---|
Test ID | CC-CI-3 | |
Description | This test case checks whether the execution of all If there is a | |
References | [eCard-4] | Annex A.4 |
Conformity of the CardCapabilities -element
|
---|
The following test cases aim at verifying that the specified |
Testcase | Path to EF.DIR | |
---|---|---|
Test ID | CC-CC-1 | |
Description | This test case checks whether the path to EF.DIR, if specified, is correct. If the | |
References | [eCard-4] | Annex A.5 |
Testcase | Path to EF.ATRorINFO | |
---|---|---|
Test ID | CC-CC-2 | |
Description | This test case checks whether the path to EF.ATRorINFO, if specified, is correct. If the | |
References | [eCard-4] | Annex A.5 |
Conformity of the ApplicationCapabilities -element
|
---|
The following test cases aim at verifying that the specified |
Testcase | ApplicationIdentifier correct
| |
---|---|---|
Test ID | CC-AC-1 | |
Description | This test case checks whether it is possible to select the card application specified by the
For this purpose it is first checked, whether the application can be selected without an additional
authentication step (i.e. the If it is possible to select the card application without additional authentication steps the following APDU is sent to the card:
If the response APDU is different from '9000', an error is returned. | |
References | [eCard-4] | Annex A.6 |
[ISO7816-4] | Section 7.1.1 |
Testcase | PinCompareMarker/PinRef/KeyRef correct
| |
---|---|---|
Test ID | CC-AC-2 | |
Description | This test case checks whether the key reference of a PIN is correct by sending a VERIFY-command without data field. If it is possible to enter the PIN without additional authentication steps (i.e. the
The response APDU '6A88' indicates that the reference data has not been found and hence an error is returned. If the response APDU is different from '9000', '63Cx' and '6A88' there will be a warning, which indicates that there is a PIN, which is not operational and that the result of the following status check should be carefully considered. If the relevant access rule indicates that any authentication steps are necessary before the PIN can be entered, there will be a warning which indicates that this functionality is currently not supported. | |
References | [eCard-4] | Annex A.6 |
[ISO7816-4] | Section 7.5.6 |
Testcase | Recognition of PIN-state possible | |
---|---|---|
Test ID | CC-AC-3 | |
Description | This test case checks whether it is possible to recognize the state of the PIN using the specified For this purpose the sequence of specified If the response produced by the card matches an expected response, the state seems to be recognized and a corresponding message will be returned, which indicates that the card is in the specified state. In this case, the possible transitions are returned for informational purposes. If a second state seems to be recognized there will be an error, which indicates that the specified state recognition procedures are ambiguous. If there is a | |
References | [eCard-4] | Annex A.6 |
[ISO7816-4] | Section 7.5.6 |
Testcase | PIN-entry possible as specified | |
---|---|---|
Test ID | CC-AC-4 | |
Description | This test case checks whether the PIN can be successfully entered as specified. For this purpose it is first checked, whether the PIN is in an operational state (the VERIFY-APDU in CC-AC-2 returned '9000'
or '63Cx') and the specified padding mechanism is equal to Next it is checked that the PIN can be entered without additional authentication steps, which would require other authentication protocols. If other authentication protocols are required, the test case is aborted with a corresponding warning. Otherwise all required PINs are captured and sent to the card using the following APDU:
The response APDU '9000' indicates that the PIN has been entered correctly. All other responses indicate some error. | |
References | [eCard-4] | Annex A.6 |
[ISO7816-4] | Section 7.5.6 | |
C-AC-2 |
Testcase | Signature generation possible as specified in SignatureGenerationInfo | |
---|---|---|
Test ID | CC-AC-5 | |
Description | This test case is performed for all private signature keys and checks whether the signature generation
is possible as specified in the corresponding This means that the For this purpose it is first checked, whether the signing operation is possible without authentication protocols different from the PinCompare-protocol. If there are other authentication protocols required, the test case will abort with a corresponding warning, which indicates that currently only the PinCompare-protocol is supported. If only PIN-based authentication steps are required, the necessary PINs are captured and sent to the card as described in test case CC-AC-4. Now the sequence of APDUs specified by the The different tokens within the
| |
References | [eCard-4] | Annex A.6 |
[ISO7816-4] | 7.5.11 | |
[ISO7816-4] | 7.5.2 | |
[ISO7816-8] | 11.7 | |
[ISO7816-8] | 11.8 | |
C-AC-17 | ||
C-AC-19 | ||
C-AC-4 |
Testcase | Decryption possible | |
---|---|---|
Test ID | CC-AC-6 | |
Description | This test case is performed for all private encryption keys and checks whether the decryption is possible using the specified key reference and algorithm identifier. This means that the For this purpose it is first checked, whether the decryption operation is possible without authentication protocols different from the PinCompare-protocol. If there are other authentication protocols required, the test case will abort with a corresponding warning, which indicates that currently only the PinCompare-protocol is supported. If only PIN-based authentication steps are required, the necessary PINs are captured and sent to the card as described in test case CC-AC-4. Now the required sequence of APDUs as explained below is sent to the card and it is verified if the decryption is possible without error. If the response APDUs are different from '9000' an error is returned.
| |
References | [eCard-4] | Annex A.6 |
[ISO7816-4] | 7.5.11 | |
[ISO7816-8] | 11.13 | |
C-AC-17 | ||
C-AC-19 | ||
C-AC-4 |
Testcase | Hashing on card as specified in HashGenerationInfo possible
| |
---|---|---|
Test ID | CC-AC-7 | |
Description | This test case is performed for each DID, which is meant to be used for hashing on the card. This means that If these prerequisites are fulfilled, the following APDUs are used if the hashing is to be performed
If these prerequisites mentioned above are fulfilled and the hashing is to be performed with
| |
References | [eCard-4] | Annex A.6 |
[ISO7816-4] | 7.5.11 | |
[ISO7816-8] | 11.8 | |
C-AC-17 | ||
C-AC-19 | ||
C-AC-4 |
Testcase | Accessing Data Sets possible | |
---|---|---|
Test ID | CC-AC-8 | |
Description |
This test case is performed for each Data Set and checks that the corresponding files can be
selected with the file identifier specified in the
For this purpose the If only PIN-based authentication steps are required, the necessary PINs are captured and sent to the card as described in test case CC-AC-4. | |
References | [eCard-4] | Annex A.6 |
[ISO7816-4] | 7.1.1 | |
[ISO7816-4] | 7.2.3 | |
[ISO7816-4] | 7.3.3 | |
[ISO7816-4] | 7.4.2 | |
CC-AC-4 |
Testcase | Unique card type recognition with respect to repository | |
---|---|---|
Test ID | CR-1 | |
Description | This test case checks whether it is possible to uniquely recognize the card type given the existing CardInfo-files in the repository and the additional CardInfo-file, which is currently tested. If the card type recognition procedure will not be unique anymore, there will be an error which contains an explanation why the unique card type recognition would not be possible and what should be changed in the CardInfo-file to fix this problem. | |
References | [eCard-4] | Annex A.3 |
Testcase | Citizen client is able to recognize card type | |
---|---|---|
Test ID | CR-2 | |
Description | If there have not been any other errors reported for the currently tested CardInfo-file, this test case finally checks whether the citizen client is able to recognize the type of the currently tested card. For this purpose the test application will determine all available card application paths using the The currently tested card should appear in the set of returned card application paths. If this is not the case, an error will be returned. In any case the CardInfo-file will removed from the citizen client using the | |
References | [eCard-4] | Annex A.3 |
Label | Description |
---|---|
[CardInfo.xsd] | BSI: eCard-API-Framework - Schema Documents - CardInfo.xsd, in https://www.bsi.bund.de/cae/servlet/contentblob/477252/publicationFile/63224/wsdl_xsd_2010-04-30.zip |
[EAC-2.05] | BSI: Advanced Security Mechanisms for Machine Readable Travel Documents - Extended Access Control (EAC), Password Authenticated Connection Establishment (PACE), and Restricted Identification (RI), Technical Guideline of the BSI no. 03110, Version 2.05, via https://www.bsi.bund.de/cae/servlet/contentblob/532066/publicationFile/62746/TR-03110_v205_pdf.pdf |
[eCard-4] | BSI: eCard-API-Framework - Part 4 - ISO24727-3-Interface, Technical Guideline of the BSI no. 03112-4, via https://www.bsi.bund.de/cae/servlet/contentblob/477242/publicationFile/61080/api1_teil4_pdf.pdf |
[eCard-6] | BSI: eCard-API-Framework - Part 6 - IFD-Interface, Technical Guideline of the BSI no. 03112-6, via https://www.bsi.bund.de/cae/servlet/contentblob/477248/publicationFile/61082/api1_teil6_pdf.pdf |
[eCard-7] | BSI: eCard-API-Framework - Part 7 - Protocols, Technical Guideline of the BSI no. 03112-7, via https://www.bsi.bund.de/cae/servlet/contentblob/477244/publicationFile/61083/api1_teil7_pdf.pdf |
[eGK-2] | gematik: Spezifikation der elektronischen Gesundheitskarte, Teil 2: Grundlegende Applikationen, Version: 2.2.0, Stand: 25.03.2008 via http://www.gematik.de/cms/media/dokumente/release_0_5_3/release_0_5_3_egk/gematik_eGK_Spezifikation_Teil2_V2_2_0.pdf |
[ISO7816-4] | ISO/IEC 7816-4: Identification cards - Integrated circuit cards - Part 4: Organization, security and commands for interchange, International Standard, 2005 |
[ISO7816-8] | ISO/IEC 7816-8: Identification cards - Integrated circuit cards - Part 8: Security related interindustry commands, International Standard, 2004 |
[ISO9564-1] | ISO/IEC 9564-1: Banking – Personal Identification Number management and security – Part 1: PIN protection principles and techniques, International Standard, 1996 |
[TTT-OID-Hash] | TeleTrusT: OID-Liste {1 3 36 3 2} (hash algorithm), via http://www.teletrust.de/fileadmin/docs/projekte/oid/OID-Liste_1_3_36_3_2.pdf |
[TTT-OID-Sig] | TeleTrusT: OID-Liste {1 3 36 3 3} (signature algorithm), via http://www.teletrust.de/fileadmin/docs/projekte/oid/OID-Liste_1_3_36_3_3.pdf |
[RFC3279] | W. Polk, R. Housley, L. Bassham: Algorithms and Identifiers for the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile, RFC 3279, via http://www.ietf.org/rfc/rfc3279.txt |
[RFC3447] | J. Jonsson, B. Kaliski: Public-Key Cryptography Standards (PKCS) #1: RSA Cryptography Specifications Version 2.1, RFC 3447, via http://www.ietf.org/rfc/rfc3447.txt |
[RFC5480] | S. Turner, D. Brown, K. Yiu, R. Housley, T. Polk: Elliptic Curve Cryptography Subject Public Key Information, RFC 5480, via http://www.ietf.org/rfc/rfc5480.txt |
[RFC5754] | S. Turner: Using SHA2 Algorithms with Cryptographic Message Syntax, RFC 5754, via http://www.ietf.org/rfc/rfc5754.txt |