KMS Library
Our terminals possess a secure processor and a secure memory implemented onboard. All kinds of key operations such as encryption, decryption, signing and more run on this secure processor. Fundamentally, KMS is a service that provides functions to developers for carrying out crypto operations on this secure hardware.
Key Index
Key Index should be between 0 and 39
Key Types
TOKENKMS_KEYTYPE_TMK
-> Terminal Master Key
TOKENKMS_KEYTYPE_KPK
-> Key Protection Key (Key Encryption Key(KEK))
TOKENKMS_KEYTYPE_PIN
-> PIN Key
TOKENKMS_KEYTYPE_MAC
-> MAC Key
TOKENKMS_KEYTYPE_TDK
TOKENKMS_KEYTYPE_KBPK
-> Key Block Protection Key
Key Algorithms
Protection Modes
Encryption/Decryption
int keyIndex Index of key that is going to be used in encryption and decryption byte[] dataArray Data to be encrypted or decrypted
byte[] IV Initialization Vector must be null for ECB
• Data Encryption ECB
• Data Decryption ECB
• Data Encryption CBC
• Data Decryption CBC
Key Injection
int keyIndex
Index of Key that is going to be injected
int keyIndex_KEK
Index of KEK(Key Encryption Key) that is going to be used for injection
byte[] encKeydata
Encrypted key data
byte[] KCV
Key Check Value
• Get Key Check Value
int keyIndex
Index of Key to get Key check Value
int len
Length of Key Check Value
Size of returning byte array is equal to len parameter
Last updated