PACE Technical Report
PACE Technical Report
TRAVEL DOCUMENTS
TECHNICAL REPORT
Version - 1.01
Date – November 11, 2010
Published by authority of the Secretary General
File : TR-PACE-101-final2.odt
Author : ISO/IEC JTC1 SC17 WG3/TF5
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
Release Control
Release Date Description
1.00 2009-03-23 Initial public version with temporary restrictions on the usage of the
elliptic curve integrated mapping.
1.01 2010-11-11 Changed title to avoid ambiguities in the naming. Removed
restrictions on usage of the elliptic curve integrated mapping.
2 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
Table of Contents
1. INTRODUCTION..............................................................................................................................................6
1.1 BACKGROUND....................................................................................................................................................6
1.2 OPERATIONAL EXPERIENCES .................................................................................................................................7
1.3 SUPPLEMENTAL ACCESS CONTROL.......................................................................................................................7
1.4 ASSUMPTIONS....................................................................................................................................................8
1.5 TERMINOLOGY...................................................................................................................................................8
1.5.1 Technical Report Terminology..............................................................................................................8
1.5.2 Keys and Passwords..............................................................................................................................8
2. OVERVIEW.......................................................................................................................................................9
2.1 GENERAL OUTLINE..............................................................................................................................................9
2.2 INSPECTION PROCEDURE......................................................................................................................................9
2.3 PASSWORD AUTHENTICATED CONNECTION ESTABLISHMENT (PACE)......................................................................11
2.3.1 Protocol Setup.....................................................................................................................................11
2.3.2 Protocol Specification.........................................................................................................................11
2.3.3 Security Status.....................................................................................................................................12
3. TECHNICAL SPECIFICATIONS................................................................................................................13
3.1 LOGICAL DATA STRUCTURE...............................................................................................................................13
3.1.1 Information on Supported Protocols...................................................................................................13
Security Infos for PACE...........................................................................................................................................13
Security Infos for other Protocols.............................................................................................................................13
3.1.2 PACEInfo.............................................................................................................................................13
3.1.3 PACEDomainParameterInfo...............................................................................................................14
3.1.4 PACE Object Identifier.......................................................................................................................15
3.1.5 Storage on the Chip.............................................................................................................................16
3.2 APPLICATION PROTOCOL DATA UNITS.................................................................................................................16
3.2.1 MSE:Set AT.........................................................................................................................................17
3.2.2 General Authenticate..........................................................................................................................17
3.3 EXCHANGED DATA...........................................................................................................................................18
3.3.1 Encrypted Nonce.................................................................................................................................18
3.3.2 Mapping Data......................................................................................................................................18
Generic Mapping..................................................................................................................................................... 18
Integrated Mapping..................................................................................................................................................18
3.3.3 Public Keys..........................................................................................................................................18
3 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
3.3.4 Authentication Token..........................................................................................................................19
3.4 COMMAND CHAINING........................................................................................................................................19
3.4.1 Errors...................................................................................................................................................19
4. CRYPTOGRAPHIC SPECIFICATIONS.....................................................................................................20
4.1 KEY AGREEMENT ALGORITHMS.........................................................................................................................20
4.1.1 DH........................................................................................................................................................20
4.1.2 ECDH..................................................................................................................................................21
4.1.3 Standardized Domain Parameters......................................................................................................21
4.2 KEY DERIVATION FUNCTION..............................................................................................................................21
4.2.1 3DES....................................................................................................................................................23
4.2.2 AES......................................................................................................................................................23
4.3 ENCRYPTING AND MAPPING NONCES..................................................................................................................23
4.3.1 ECDH Mapping...................................................................................................................................23
Generic Mapping..................................................................................................................................................... 23
Integrated Mapping..................................................................................................................................................23
4.3.2 DH Mapping........................................................................................................................................24
Generic Mapping..................................................................................................................................................... 24
Integrated Mapping..................................................................................................................................................24
4.3.3 Pseudorandom Number Mapping.......................................................................................................24
4.4 AUTHENTICATION TOKEN....................................................................................................................................25
4.4.1 3DES....................................................................................................................................................25
4.4.2 AES......................................................................................................................................................25
4.5 PUBLIC KEY DATA OBJECTS.............................................................................................................................25
4.5.1 Diffie Hellman Public Keys.................................................................................................................26
4.5.2 Elliptic Curve Public Keys..................................................................................................................26
4.5.3 Ephemeral Public Keys.......................................................................................................................26
4.6 SECURE MESSAGING.........................................................................................................................................26
4.6.1 Errors...................................................................................................................................................27
4.6.2 3DES....................................................................................................................................................27
3DES Encryption......................................................................................................................................................27
3DES Authentication...............................................................................................................................................27
4.6.3 AES......................................................................................................................................................27
AES Encryption........................................................................................................................................................ 28
AES Authentication.................................................................................................................................................28
5 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
1. Introduction
This Technical Report specifies an access control mechanism that is supplementary to Basic Access
Control. It is based on Password Authenticated Connection Establishment (PACE) as specified in [5]
and complementary contributions [7], [10], [4], [2] and [23]. This framework based on PACE v2 allows
for various implementation options (cf. Section 2.3, e.g. mappings, algorithms, passwords, etc.), this
specification fixes choices for the implementation in Machine Readable Travel Documents. A
versioning of PACE is defining the evolutions that allow to the implementation of the initial or complete
specifications:
• PACE v1 refers to the initial specification in TR-03110 v2.0 defining the generic mapping and
• PACE v2 refers to the extended version with complementary specifications for the generic and
integrated mapping.
Throughout this document, the term PACE refers to PACE v2.
Note: Although this document focuses on MRTDs/MRtds, PACE may also be used in other
technology and/or application contexts. The free license for the variant using the elliptic
curve integrated mapping [23] may only be available for implementations in the context
of ISO 7501.
1.1 Background
Doc 9303 [8], [9] introduces Basic Access Control as an OPTIONAL access control mechanism as
follows:
Comparing a MRTD/MRtd that is equipped with a contactless chip with a traditional MRTD/MRtd
shows two differences:
• The data stored in the chip can be electronically read without opening the document (skimming).
• The communication between a chip and a reader, that is unencrypted, can be eavesdropped in a
distance of several meters.
While there are physical measures possible against skimming these don’t address eavesdropping.
Therefore, it is understood that States MAY choose to implement a Basic Access Control mechanism,
i.e. an access control mechanism that requires the consent of the bearer of the MRTD that the data
stored in the chip to be read in a secure way. This Basic Access Control Mechanism prevents
skimming as well as eavesdropping.
This access control mechanism is OPTIONAL. Descriptions and specifications in this Technical
Report on Basic Access Control and Secure Messaging only apply for MRTDs/MRtds and Inspection
Systems that support this option. If supported, this mechanism MUST ensure that the contents of the
chip can only be read after the bearer has willingly offered his MRTD/MRtd.
A chip that is protected by the Basic Access Control mechanism denies access to it’s contents unless
the inspection system can prove that it is authorized to access the chip. This proof is given in a
challenge-response protocol, where the inspection system proves knowledge of the chip-individual
Document Basic Access Keys (K ENC and KMAC) which are derived from information from the MRZ.
The inspection system MUST be provided with this information prior to reading the chip. The
information has to be retrieved optically/visually from the MRTD/MRtd (e.g. from the MRZ). It also
6 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
MUST be possible for an inspector to enter this information manually on the inspection system in
case machine-reading of the MRZ is not possible.
Additionally, after the inspection system has been authenticated successfully, it is REQUIRED that
the chip enforces encryption of the communication channel between the inspection system and the
MRTD’s/MRtd’s chip by Secure Messaging techniques.
Assuming that the Document Basic Access Keys (K ENC and KMAC) cannot be obtained from a closed
document (since they are derived from the optically read MRZ), it is accepted that the passport was
willingly handed over for inspection. Due to the encryption of the channel, eavesdropping on the
communication would require a considerable effort.
1.4 Assumptions
It is assumed that the reader is familiar with the concepts and mechanisms offered by asymmetric
cryptography.
It is assumed that the reader is familiar with the contents of [8], [9] and any other official documents
issued by ICAO regarding Machine Readable Travel Documents.
1.5 Terminology
8 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
2. Overview
This section describes an supplemental access control mechanism based on Password Authenticated
Connection Establishment (PACE) as described in [5].
1
States MAY implement additional passwords for national purposes, e.g. a secret Personal Identification
Number (PIN) and/or a PIN Unblock Key (PUK).
9 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
1. Read CardAccess
The inspection system SHALL read the file CardAccess (cf. Section 3.1.5) to determine the
parameters (i.e. symmetric ciphers, key agreement algorithms, domain parameters, and mappings)
supported by the MRTD chip. The inspection system may select any of those parameters.
If PACE is supported, the MRTD chip MUST provide the parameters to be used for PACE in the
file CardAccess.
If the file CardAccess is not available, the inspection system SHOULD try to read the ePassport
with Basic Access Control.
2. PACE (CONDITIONAL)
This step is RECOMMENDED if PACE is supported by the MRTD chip.
– The inspection system SHOULD derive the key Kπ from the MRZ. It MAY use the CAN instead
of the MRZ if the CAN is known to the inspection system.
– The MRTD chip SHALL accept the MRZ as passwords for PACE. It MAY additionally accept
the CAN.
– The inspection system and the MRTD chip mutually authenticate using K π and derive session
keys KSENC and KSMAC. The PACE protocol as described in Section 2.3 SHALL be used.
If successful, the MRTD chip performs the following:
– It SHALL start Secure Messaging.
– It SHALL grant access to less-sensitive data (e.g. DG1, DG2, DG14, DG15, etc. and the
– Security Object).
– It SHALL restrict access rights to require Secure Messaging.
3. Select ePassport Application (REQUIRED)
4. Basic Access Control (CONDITIONAL)
This step is REQUIRED if access control is enforced by the MRTD chip and PACE has not been
used.
If successful, the MRTD chip performs the following:
– It SHALL start Secure Messaging.
– It SHALL grant access to less-sensitive data (e.g. DG1, DG2, DG14, DG15, etc. and the
Security Object).
– It SHALL restrict access rights to require Secure Messaging.
After successful authentication, subsequent communication SHALL be protected by Secure Messaging
using the session keys KSENC and KSMAC.
The inspection system then continues with the inspection as described in Doc 9303 [8], [9], e.g. Passive
Authentication MUST be performed. In addition the inspection system MUST verify the authenticity of
the content of the file CardAccess (see above) using DG14.
10 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
11 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
2. The inspection system recovers the plaintext s=D K , z with the help of the shared password .
3. Both the MRTD chip and the inspection system perform the following steps:
a) They exchange additional data required for the mapping of the nonce (cf. Section 3.3.2):
• For the generic mapping the MRTD chip and the inspection system exchange ephemeral key
public keys.
• For the integrated mapping the inspection system sends an additional nonce to the MRTD
chip.
b) They compute the ephemeral domain parameters
D=Map D PICC , s , ... as described in Section
4.3.
c) They perform an anonymous Diffie-Hellman key agreement (cf. Section 4.1) based on the
ephemeral domain parameters and generate the shared secret
K =KA
SK PICC ,
PK PCD ,
D =KA S
K PCD , .
PK PICC , D
d) During Diffie-Hellman key agreement, each party SHOULD check that the two public keys
PK PICC and
PK PCD differ.
e) They derive session keys KS MAC =KDF MAC K and KS Enc =KDF Enc K as described in
Section 4.2.
f) They exchange and verify the authentication token T PCD =MAC KS MAC ,
PK PICC and
T PICC =MAC KS MAC , PK PCD as described in Section 4.4.
12 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
3. Technical specifications
This section describes the technical specification required to implement Supplemental Access Control.
The elements contained in a SecurityInfo data structure have the following meaning:
• The object identifier protocol identifies the supported protocol.
• The open type requiredData contains protocol specific mandatory data.
• The open type optionalData contains protocol specific optional data.
Security Infos for PACE
To indicate support for PACE SecurityInfos may contain the following entries:
• At least one PACEInfo using a standardized domain parameter MUST be present.
• For each supported set of proprietary domain parameters a PACEDomainParameterInfo
MUST be present.
Security Infos for other Protocols
SecurityInfos may contain additional entries indicating support for other protocols. The
inspection system may discard any unknown entry.
3.1.2 PACEInfo
This data structure provides detailed information on an implementation of PACE.
• The object identifier protocol SHALL identify the algorithms to be used (i.e. key agreement,
symmetric cipher and MAC).
13 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
• The integer version SHALL identify the version of the protocol. Only version 2 is supported by
this specification.
• The integer parameterId is used to indicate the domain parameter identifier. It MUST be used if
the MRTD chip uses standardized domain parameters (cf. Table 6) or provides multiple proprietary
domain parameters for PACE.
PACEInfo ::= SEQUENCE {
protocol OBJECT IDENTIFIER(
id-PACE-DH-GM-3DES-CBC-CBC |
id-PACE-DH-GM-AES-CBC-CMAC-128 |
id-PACE-DH-GM-AES-CBC-CMAC-192 |
id-PACE-DH-GM-AES-CBC-CMAC-256 |
id-PACE-ECDH-GM-3DES-CBC-CBC |
id-PACE-ECDH-GM-AES-CBC-CMAC-128 |
id-PACE-ECDH-GM-AES-CBC-CMAC-192 |
id-PACE-ECDH-GM-AES-CBC-CMAC-256 |
id-PACE-DH-IM-3DES-CBC-CBC |
id-PACE-DH-IM-AES-CBC-CMAC-128 |
id-PACE-DH-IM-AES-CBC-CMAC-192 |
id-PACE-DH-IM-AES-CBC-CMAC-256 |
id-PACE-ECDH-IM-3DES-CBC-CBC |
id-PACE-ECDH-IM-AES-CBC-CMAC-128 |
id-PACE-ECDH-IM-AES-CBC-CMAC-192 |
id-PACE-ECDH-IM-AES-CBC-CMAC-256),
version INTEGER, -- MUST be 2
parameterId INTEGER OPTIONAL
}
3.1.3 PACEDomainParameterInfo
This data structure is REQUIRED if the MRTD chip provides proprietary domain parameters for
PACE of the MRTD chip and MUST be omitted otherwise.
• The object identifier protocol SHALL identify the type of the domain parameters (i.e. DH or
ECDH).
• The sequence domainParameter SHALL contain the domain parameters.
• The integer parameterId MAY be used to indicate the local domain parameter identifier. It
MUST be used if the MRTD chip provides multiple proprietary domain parameters for PACE.
PACEDomainParameterInfo ::= SEQUENCE {
protocol OBJECT IDENTIFIER(
id-PACE-DH-GM |
id-PACE-ECDH-GM |
id-PACE-DH-IM |
id-PACE-ECDH-IM),
domainParameter AlgorithmIdentifier,
parameterId INTEGER OPTIONAL
}
14 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
The domain parameters for PACE MUST be provided as AlgorithmIdentifier. The data
structure AlgorithmIdentifier is defined as follows:
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL
}
• The file CardAccess SHALL contain the relevant SecurityInfos that are required for PACE:
– PACEInfo
– PACEDomainParameterInfo
• The full set of SecurityInfos SHALL additionally be stored in DG14 of the ePassport
Application.
Note: While the authenticity of SecurityInfos stored in DG14 is protected by Passive
Authentication, the file CardAccess is unprotected.
16 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
3.2.1 MSE:Set AT
The command MSE:Set AT is used to select and initialize the PACE protocol.
Command
CLA Context specific
INS 0x22 Manage Security Environment
P1/P2 0xC1A4 Set Authentication Template for mutual authentication
Data 0x80 Cryptographic mechanism reference REQUIRED
Object Identifier of the protocol to select (value only,
Tag 0x06 is omitted).
0x83 Reference of a public key / secret key REQUIRED
The password to be used is indicated as follows:
0x01: MRZ
0x02: CAN
0x84 Reference of a private key / Reference for computing a CONDITIONAL
session key
This data object is REQUIRED to indicate the identifier
of the domain parameters to be used if the domain
parameters are ambiguous, i.e. more than one set of
domain parameters is available for PACE.
i
Response
Data – Absent
Status 0x9000 Normal operation
Bytes The protocol has been selected and initialized.
0x6A80 Incorrect parameters in the command data field
Algorithm not supported or initialization failed.
0x6A88 Referenced data not found
The referenced data (i.e. password or domain parameter) is not available.
other Operating system dependent error
The initialization of the protocol failed.
17 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
Response
Data 0x7C Dynamic Authentication Data REQUIRED
Protocol specific data objects as described in Section
3.3.
Status 0x9000 Normal operation
Bytes The protocol (step) was successful.
0x6300 Authentication failed
The protocol (step) failed.
0x6A80 Incorrect parameters in data field
Provided data is invalid.
other Operating system dependent error
The protocol (step) failed.
2
This implies an empty Dynamic Authentication Data Object.
18 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
3.4.1 Errors
If the MRTD chip expects the end of the chain, but receives a command that is not marked as the last
command, the MRTD chip SHALL indicate that the last command in a chain was expected with status
bytes 0x6883.
19 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
4. Cryptographic Specifications
This section contains the cryptographic details of the specification.
Particular algorithms are selected by the issuer of the MRTD/MRtd. The inspection system MUST
support all combinations described in the following. The MRTD chip MAY support more than one
combination of algorithms.
4.1.1 DH
For PACE with DH the respective algorithms and formats from Table 2 and Table 3 MUST be used.
20 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
4.1.2 ECDH
For PACE with ECDH the respective algorithms and formats from Table 2 and Table 4 MUST be
used. Only prime curves with uncompressed points SHALL be used.
Password Encoding
MRZ SHA-1(Serial Number || Date of Birth || Date of Expiry)
CAN ISO/IEC8859 encoded character string
21 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
22 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
4.2.1 3DES
To derive 128-bit (112-bit excluding parity bits) 3DES [19] keys the hash function SHA-1 [17] SHALL
be used and the following additional steps MUST be performed:
• Use octets 1 to 8 of keydata to form keydataA and octets 9 to 16 of keydata to form keydataB;
additional octets are not used.
• Adjust the parity bits of keydataA and keydataB to form correct DES keys (OPTIONAL).
4.2.2 AES
To derive 128-bit AES [18] keys the hash function SHA-1 [17] SHALL be used and the following
additional step MUST be performed:
• Use octets 1 to 16 of keydata; additional octets are not used.
To derive 192-bit and 256-bit AES [18] keys SHA-256 [17] SHALL be used. For 192-bit AES keys the
following additional step MUST be performed:
• Use octets 1 to 24 of keydata; additional octets are not used.
chip. The pseudo-random function R p is described in Section 4.3.3. The function f G is defined in
[4] and [23].
4.3.2 DH Mapping
Let g and g be the static and an ephemeral generator.
Generic Mapping
The function Map : g ↦ g is defined as g =g s⋅h, where h∈〈 g 〉 is chosen such that log g h is
unknown. The group element h SHALL be calculated by an anonymous Diffie-Hellman Key
Agreement.
Note: The public key validation method described in RFC 2631 [21] MUST be used to
prevent small subgroup attacks.
Integrated Mapping
The function Map : g ↦ g is defined as g = f g R p s , t , where R p is a pseudo-random function
that maps octet strings to elements of GF p and f g is a function that maps elements of GF p to
〈 g 〉. The random nonce t SHALL be chosen randomly by the inspection system and sent to the MRTD
chip. The pseudo-random function R p is described in Section 4.3.3. The function f g is defined as
f g x= x a mod p, and a= p−1/q is the cofactor. Implementations MUST check that g ≠1.
24 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
based on the respective block cipher E in CBC mode according to ISO 10116 [11] with IV =0, where
k is the key size (in bits) of E. Where required, the outputs x i and k i MUST be truncated to bit size k.
The value n SHALL be selected as smallest number, such that n⋅k≥log 2 p64.
Note: The truncation is only necessary for AES-192: Use octets 1 to 24 of each xi and k i ;
additional octets are not used.
The constants c 0 and c1 are defined as follows:
• For 3DES and AES-128 (k=128):
– c 0=0x a668892a7c41e3ca739f40b057d85904
– c 1=0x a4e136ac725f738b01c1f60217c188ad
• For AES-192 ( k=192):
– c 0=0x 6db6525e849de0b546d2707146de4441ece0428618fd3f9c
– c 1=0x 2177e4552ab798a6c14678715b4b340f9fc895df5b133a33
• For AES-256 (k=256):
– c 0=0x d463d65234124ef7897054986dca0a174e28df758cbaa03f240616414d5a1676
– c 1=0x54bd7255f0aaf831bec3423fcf39d69b6cbf066677d0faae5aadd99df8e53517
4.4.1 3DES
3DES [19] SHALL be used in Retail-mode according to ISO/IEC 9797-1 [13] MAC algorithm 3 /
padding method 2 with block cipher DES and IV =0.
4.4.2 AES
AES [18] SHALL be used in CMAC-mode [20] with a MAC length of 8 bytes.
25 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
• The context specific data objects are defined by the object identifier and contain the public key value
and the domain parameters.
The format of public keys data objects used in this specification is described below.
26 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
calculation. The session keys SHALL be derived using the key derivation function described in
Appendix 4.2.
Note: Padding is always performed by the secure messaging layer, s.th. the underlying
message authentication code need not perform any internal padding.
An unsigned integer SHALL be used as Send Sequence Counter (SSC). The bitsize of the SSC SHALL
be equal to the blocksize of the block cipher used for Secure Messaging, i.e. 64 bit for 3DES and 128
bit for AES.
The SSC SHALL be increased every time before a command or response APDU is generated, i.e. if the
starting value is x, in the next command the value of the SSC is x1. The value of SSC for the first
response is x2.
If Secure Messaging is restarted, the SSC is used as follows:
• The commands used for key agreement are protected with the old session keys and old SSC. This
applies in particular for the response of the last command used for session key agreement.
• The Send Sequence Counter is set to its new start value, i.e. within this specification the SSC is set
to 0.
• The new session keys and the new SSC are used to protect subsequent commands/responses.
4.6.1 Errors
The MRTD chip MUST abort Secure Messaging if and only if a Secure Messaging error occurs:
• If expected Secure Messaging data objects are missing, the MRTD chip SHALL respond with status
bytes 0x6987
• If Secure Messaging data objects are incorrect, the MRTD chip SHALL respond with status bytes
0x6988
If Secure Messaging is aborted, the MRTD chip SHALL delete the stored session keys and reset the
terminal’s access rights.
4.6.2 3DES
3DES is specified in [19].
3DES Encryption
For message encryption two key 3DES SHALL be used in CBC-mode according to ISO 10116 [11]
with key K Enc and IV =0.
3DES Authentication
For message authentication 3DES SHALL be used in Retail-mode according to ISO/IEC 9797-1 [13]
MAC algorithm 3 with block cipher DES, key K MAC and IV =0. The datagram to be authenticated
SHALL be prepended by the Send Sequence Counter.
4.6.3 AES
AES is specified in [18].
27 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
AES Encryption
For message encryption AES SHALL be used in CBC-mode according to ISO 10116 [11] with key
K Enc and IV =E K Enc , SSC .
AES Authentication
For message authentication AES SHALL be used in CMAC-mode [20] with K MAC with a MAC length
of 8 bytes. The datagram to be authenticated SHALL be prepended by the Send Sequence Counter.
28 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
30 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
31 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
References
[1] ANSI X9.42-2000, Public Key Cryptography for the Financial Services Industry: Agreement of
Symmetric Keys Using Discrete Logarithm Cryptography, 1999
[2] Bender, Jens; Fischlin, Marc; and Kügler, Dennis, Security Analysis of the PACE Key-
Agreement Protocol, Information Security – Proceedings of ISC 09, Springer-Verlag, 2009
[3] Bradner, Scott, RFC 2119: Key words for use in RFCs to indicate requirement levels, 1997
[4] Brier, Eric; Coron, Jean-Sébastien; Icart, Thomas; Madore, David; Randriam, Hugues; and
Tibouch, Mehdi, Efficient Indifferentiable Hashing into Ordinary Elliptic Curves, Advances in
Cryptology – CRYPTO 2010, Springer-Verlag, 2010
[5] BSI TR-03110, Advanced Security Mechanisms for Machine Readable Travel Documents
Version 2.02, 2009
[6] BSI TR-03111, Elliptic Curve Cryptography (ECC) Version 1.11, 2009
[7] Coron, Jean-Sébastien; Gouget, Aline; and Paillier, Pascal, Password Authenticated Secure
Channel v5 (PASC5), 2009, available at
http://www2.afnor.org/espace_normalisation/structure.aspx?commid=49956&lang=french
[8] ICAO Doc 9303, Machine Readable Travel Documents - Part 1: Machine Readable Passport,
Volume 2: Specifications for electronically enabled passports with biometric identification
capabilities, 6th Edition, 2006
[9] ICAO Doc 9303, Machine Readable Travel Documents - Part 3: Machine Readable Official
Travel Documents, Volume 2: Specifications for electronically enabled official travel documents
with biometric identification capabilities, 3rd Edition, 2008
[10] Icart, Thomas, How to Hash onto Elliptic Curves, Advances in Cryptology – CRYPTO 2009,
Springer-Verlag, 2009
[11] ISO/IEC 10116:2006, Information technology − Security techniques − Modes of operation for an
n-bit block cipher, 2006
[12] ISO/IEC 7816-4:2005, Identification cards – Integrated circuit cards – Part 4: Organization,
security and commands for interchange, 2005
[13] ISO/IEC 9797-1:1999, Information technology − Security techniques − Message Authentication
Codes (MACs) − Part 1: Mechanisms using a block cipher, 1999
[14] Lepinski, Matt; Kent, Stephen, RFC 5114: dditional Diffie-Hellman Groups for Use with IETF
Standards, 2008
[15] Lochter, Manfred; Merkle, Johannes, RFC 5639: Elliptic Curve Cryptography (ECC) Brainpool
Standard Curves and Curve Generation, 2010
[16] NIST FIPS 186-3, Digital Signature Standard (DSS), 2009
[17] NIST FIPS PUB 180-2, Secure hash standard (and Change Notice to include SHA-224), 2002
[18] NIST FIPS PUB 197, Specification for the Advanced Encryption Standard (AES), 2001
[19] NIST FIPS PUB 46-3, Data Encryption Standard (DES), 1999
32 of 33
Technical Report
Supplemental Access Control for Machine Readable Travel Documents
Release : 1.01
Date : November 11, 2010
[20] NIST Special Publication 800-38B, Recommendation for Block Cipher Modes of Operation: The
CMAC Mode for Authentication, 2005
[21] Rescorla, Eric, RFC 2631: Diffie-Hellman key agreement method, 1999
[22] RSA Laboratories, PKCS#3: Diffie-Hellman key-agreement standard, 1993
[23] Sagem, MorphoMapping Patents FR09-54043 and FR09-54053, 2009
33 of 33