11.23.1. JUNIPER key generation
The JUNIPER key generation mechanism, denoted CKM_JUNIPER_KEY_GEN, is a key generation mechanism for JUNIPER. The output of this mechanism is called a Message Encryption Key (MEK).
It does not have a parameter.
The mechanism contributes the CKA_CLASS, CKA_KEY_TYPE, and CKA_VALUE attributes to the new key.
11.23.2. JUNIPER-ECB128
JUNIPER-ECB128, denoted CKM_JUNIPER_ECB128, is a mechanism for single- and multiple-part encryption and decryption with JUNIPER in 128-bit electronic codebook mode.
It has a parameter, a 24-byte initialization vector. During an encryption operation, this IV is set to some value generated by the token—in other words, the application cannot specify a particular IV when encrypting. It can, of course, specify a particular IV when decrypting.
Constraints on key types and the length of data are summarized in the following table. For encryption and decryption, the input and output data (parts) may begin at the same location in memory.
Table , JUNIPER-ECB128: Data and Length
Function
|
Key type
|
Input length
|
Output length
|
Comments
|
C_Encrypt
|
JUNIPER
|
multiple of 16
|
same as input length
|
no final part
|
C_Decrypt
|
JUNIPER
|
multiple of 16
|
same as input length
|
no final part
| 11.23.3. JUNIPER-CBC128
JUNIPER-CBC128, denoted CKM_JUNIPER_CBC128, is a mechanism for single- and multiple-part encryption and decryption with JUNIPER in 128-bit cipher-block chaining mode.
It has a parameter, a 24-byte initialization vector. During an encryption operation, this IV is set to some value generated by the token—in other words, the application cannot specify a particular IV when encrypting. It can, of course, specify a particular IV when decrypting.
Constraints on key types and the length of data are summarized in the following table. For encryption and decryption, the input and output data (parts) may begin at the same location in memory.
Table , JUNIPER-CBC128: Data and Length
Function
|
Key type
|
Input length
|
Output length
|
Comments
|
C_Encrypt
|
JUNIPER
|
multiple of 16
|
same as input length
|
no final part
|
C_Decrypt
|
JUNIPER
|
multiple of 16
|
same as input length
|
no final part
| 11.23.4. JUNIPER-COUNTER
JUNIPER COUNTER, denoted CKM_JUNIPER_COUNTER, is a mechanism for single- and multiple-part encryption and decryption with JUNIPER in counter mode.
It has a parameter, a 24-byte initialization vector. During an encryption operation, this IV is set to some value generated by the token—in other words, the application cannot specify a particular IV when encrypting. It can, of course, specify a particular IV when decrypting.
Constraints on key types and the length of data are summarized in the following table. For encryption and decryption, the input and output data (parts) may begin at the same location in memory.
Table , JUNIPER-COUNTER: Data and Length
Function
|
Key type
|
Input length
|
Output length
|
Comments
|
C_Encrypt
|
JUNIPER
|
multiple of 16
|
same as input length
|
no final part
|
C_Decrypt
|
JUNIPER
|
multiple of 16
|
same as input length
|
no final part
|
JUNIPER-SHUFFLE, denoted CKM_JUNIPER_SHUFFLE, is a mechanism for single- and multiple-part encryption and decryption with JUNIPER in shuffle mode.
It has a parameter, a 24-byte initialization vector. During an encryption operation, this IV is set to some value generated by the token—in other words, the application cannot specify a particular IV when encrypting. It can, of course, specify a particular IV when decrypting.
Constraints on key types and the length of data are summarized in the following table. For encryption and decryption, the input and output data (parts) may begin at the same location in memory.
Table , JUNIPER-SHUFFLE: Data and Length
Function
|
Key type
|
Input length
|
Output length
|
Comments
|
C_Encrypt
|
JUNIPER
|
multiple of 16
|
same as input length
|
no final part
|
C_Decrypt
|
JUNIPER
|
multiple of 16
|
same as input length
|
no final part
|
The JUNIPER wrap and unwrap mechanism, denoted CKM_JUNIPER_WRAP, is a function used to wrap and unwrap an MEK. It can wrap or unwrap SKIPJACK, BATON, and JUNIPER keys.
It has no parameters.
When used to unwrap a key, this mechanism contributes the CKA_CLASS, CKA_KEY_TYPE, and CKA_VALUE attributes to it.
Share with your friends: |