IC Authentication
-
CAPublicKeySecurityProtocolrepresents different security protocols for Chip Authentication Public Keys in electronic Machine Readable Travel Documents (eMRTD).See moreSee also
ChipAuthenticationPublicKeyInfo,ChipAuthenticationInfoChipAuthenticationSecurityProtocolandChipAuthenticationHandlerDeclaration
Swift
internal enum CAPublicKeySecurityProtocol : UInt8, SecurityProtocol -
ChipAuthenticationHandleris responsible for performing chip authentication to verify the authenticity of the chip.Chip Authentication prevents copying the
SODand proves that it has been read from the authentic contactless IC and that it has not been substituted.The protocol provides implicit authentication of both the eMRTD chip itself and the stored data by performing Secure Messaging using the new session keys.
See moreSee also
DataGroup14,SecurityInfo,ChipAuthenticationInfo,ChipAuthenticationSecurityProtocol,ChipAuthenticationPublicKeyInfo,CAPublicKeySecurityProtocolandNFCSecureSessionDeclaration
Swift
internal final class ChipAuthenticationHandler -
ChipAuthenticationInforepresents security information related to Chip Authentication in electronic Machine Readable Travel Documents (eMRTD).The ASN.1 data structure
ChipAuthenticationInfois defined as follows:ChipAuthenticationInfo ::= SEQUENCE { protocol OBJECT IDENTIFIER( id-CA-DH-3DES-CBC-CBC | id-CA-DH-AES-CBC-CMAC-128 | id-CA-DH-AES-CBC-CMAC-192 | id-CA-DH-AES-CBC-CMAC-256 | id-CA-ECDH-3DES-CBC-CBC | id-CA-ECDH-AES-CBC-CMAC-128 | id-CA-ECDH-AES-CBC-CMAC-192 | id-CA-ECDH-AES-CBC-CMAC-256), version INTEGER, -- MUST be 1, keyId INTEGER OPTIONAL }This data structure provides detailed information on an implementation of Chip Authentication and its components represent:
protocol: An object identifier that identifies the algorithms to be used, i.e.key agreement, symmetric cipher and MAC).version: An integer that identifies the version of the protocol. Currently, only version 1 is supported by this specification.keyId: An integer that may indicate the local key identifier (optional).
Important
KeyIdmust be used if the eMRTD chip provides multiple public keys for Chip Authentication.Note
It inherits from the
SecurityInfoclass.See moreSee also
ChipAuthenticationSecurityProtocol,ChipAuthenticationPublicKeyInfoCAPublicKeySecurityProtocolandChipAuthenticationHandlerDeclaration
Swift
internal final class ChipAuthenticationInfo : SecurityInfo -
A class representing the public key information used in Chip Authentication or PACE with Chip Authentication Mapping.
The ASN.1 data structure
ChipAuthenticationPublicKeyInfois defined as follows:ChipAuthenticationPublicKeyInfo ::= SEQUENCE { protocol OBJECT IDENTIFIER(id-PK-DH | id-PK-ECDH), chipAuthenticationPublicKey SubjectPublicKeyInfo, keyId INTEGER OPTIONAL }This data structure provides a public key for Chip Authentication or PACE with Chip Authentication Mapping of the eMRTD chip and its components represent.
protocol: An object identifier that identifies the type of the public key (i.e. DH or ECDH).chipAuthenticationPublicKey: ASubjectPublicKeyInfodata structure that contains the public key in encoded form.
An integer that identifies the version of the protocol. Currently, only version 1 is supported by this specification..
keyId: An integer that may indicate the local key identifier (optional).
Important
KeyIdmust be used if the eMRTD chip provides multiple public keys for Chip Authentication or if this key is used for PACE with Chip Authentication Mapping.Note
It inherits from the
SecurityInfoclass.See moreSee also
CAPublicKeySecurityProtocol,ChipAuthenticationInfoChipAuthenticationSecurityProtocol,ChipAuthenticationHandlerandSubjectPublicKeyInfoDeclaration
Swift
internal final class ChipAuthenticationPublicKeyInfo : SecurityInfo -
The
ChipAuthenticationASecurityProtocolenum represents various security protocols used in Chip Authentication for electronic Machine Readable Travel Documents (eMRTD).These protocols are identified by a unique
ObjectIdentifier(OID) and specificEncryptionAlgorithmandKeyAgreementAlgorithm.See moreSee also
ChipAuthenticationInfo,ChipAuthenticationPublicKeyInfo,CAPublicKeySecurityProtocol,ChipAuthenticationHandler,EncryptionAlgorithmandKeyAgreementAlgorithmDeclaration
Swift
internal enum ChipAuthenticationSecurityProtocol : UInt8, SecurityProtocol
View on GitHub
IC Authentication Reference