| Cryptographic Token Interface Standard |
PKCS#11
|
SHA-1 key derivation
SHA-1 key derivation, denoted CKM_SHA1_KEY_DERIVATION, is a mechanism which provides the capability of deriving a secret key by digesting the value of another secret key with SHA-1.
The value of the base key is digested once, and the result is used to make the value of derived secret key.
- If no length or key type is provided in the template, then the key produced by this mechanism will be a generic secret key. Its length will be 20 bytes (the output size of SHA-1).
- If no key type is provided in the template, but a length is, then the key produced by this mechanism will be a generic secret key of the specified length.
- If no length was provided in the template, but a key type is, then that key type must have a well-defined length. If it does, then the key produced by this mechanism will be of the type specified in the template. If it doesn't, an error will be returned.
- If both a key type and a length are provided in the template, the length must be compatible with that key type. The key produced by this mechanism will be of the specified type and length. If a DES, DES2, or CDMF key is derived with this mechanism, the parity bits of the key will be set properly.
If the requested type of key requires more than 20 bytes, such as DES3, an error is generated.
This mechanism has the following rules about key sensitivity and extractability:
RSA Security Inc. Public-Key Cryptography Standards -
PKCS#11 - v230