PACESecurityProtocol
internal enum PACESecurityProtocol : UInt8, SecurityProtocol
The PACESecurityProtocol enum represents various security protocols used in PACE for
electronic Machine Readable Travel Documents (eMRTD).
These protocols are identified by a unique ObjectIdentifier (OID) and
specific EncryptionAlgorithm, KeyAgreementAlgorithm and PACEMapping function.
-
PACE security protocol using DH key agreement with Generic Mapping, 3DES encryption and CBC chaining mode.
Declaration
Swift
case ID_PACE_DH_GM_3DES_CBC_CBC = 0x01 -
PACE security protocol using DH key agreement with Generic Mapping, AES-128 encryption and CMAC.
Declaration
Swift
case ID_PACE_DH_GM_AES_CBC_CMAC_128 = 0x02 -
PACE security protocol using DH key agreement with Generic Mapping, AES-192 encryption and CMAC.
Declaration
Swift
case ID_PACE_DH_GM_AES_CBC_CMAC_192 = 0x03 -
PACE security protocol using DH key agreement with Generic Mapping, AES-256 encryption and CMAC.
Declaration
Swift
case ID_PACE_DH_GM_AES_CBC_CMAC_256 = 0x04
-
PACE security protocol using ECDH key agreement with Generic Mapping, 3DES encryption and CBC chaining mode.
Declaration
Swift
case ID_PACE_ECDH_GM_3DES_CBC_CBC = 0x05 -
PACE security protocol using ECDH key agreement with Generic Mapping, AES-128 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_GM_AES_CBC_CMAC_128 = 0x06 -
PACE security protocol using ECDH key agreement with Generic Mapping, AES-191 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_GM_AES_CBC_CMAC_192 = 0x07 -
PACE security protocol using ECDH key agreement with Generic Mapping, AES-256 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_GM_AES_CBC_CMAC_256 = 0x08
-
PACE security protocol using DH key agreement with Integrated Mapping, 3DES encryption and CBC chaining mode.
Declaration
Swift
case ID_PACE_DH_IM_3DES_CBC_CBC = 0x09 -
PACE security protocol using DH key agreement with Integrated Mapping, AES-128 encryption and CMAC.
Declaration
Swift
case ID_PACE_DH_IM_AES_CBC_CMAC_128 = 0x0A -
PACE security protocol using DH key agreement with Integrated Mapping, AES-192 encryption and CMAC.
Declaration
Swift
case ID_PACE_DH_IM_AES_CBC_CMAC_192 = 0x0B -
PACE security protocol using DH key agreement with Integrated Mapping, AES-256 encryption and CMAC.
Declaration
Swift
case ID_PACE_DH_IM_AES_CBC_CMAC_256 = 0x0C
-
PACE security protocol using ECDH key agreement with Integrated Mapping, 3DES encryption and CBC chaining mode.
Declaration
Swift
case ID_PACE_ECDH_IM_3DES_CBC_CBC = 0x0D -
PACE security protocol using ECDH key agreement with Integrated Mapping, AES-128 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_IM_AES_CBC_CMAC_128 = 0x0E -
PACE security protocol using ECDH key agreement with Integrated Mapping, AES-192 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_IM_AES_CBC_CMAC_192 = 0x0F -
PACE security protocol using ECDH key agreement with Integrated Mapping, AES-256 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_IM_AES_CBC_CMAC_256 = 0x10
-
PACE security protocol using ECDH key agreement with Chip Authentication Mapping, AES-128 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_CAM_AES_CBC_CMAC_128 = 0x11 -
PACE security protocol using ECDH key agreement with Chip Authentication Mapping, AES-192 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_CAM_AES_CBC_CMAC_192 = 0x12 -
PACE security protocol using ECDH key agreement with Chip Authentication Mapping, AES-256 encryption and CMAC.
Declaration
Swift
case ID_PACE_ECDH_CAM_AES_CBC_CMAC_256 = 0x13 -
The
ObjectIdentifier(OID) representing the PACE security protocol.Declaration
Swift
internal var oid: ObjectIdentifier { get } -
The
EncryptionAlgorithmassociated with the PACE security protocol.Declaration
Swift
internal var usedEncryptionAlgorithm: EncryptionAlgorithm { get } -
The
KeyAgreementAlgorithmassociated with the PACE security protocol.Declaration
Swift
internal var usedKeyAgreementAlgorithm: KeyAgreementAlgorithm { get } -
The
PACEMappingassociated with the PACE security protocol.Declaration
Swift
internal var usedMappingFunction: PACEMapping { get }
View on GitHub
PACESecurityProtocol Enumeration Reference