272 #define MD5_HMAC_MAX_KEY_LEN INT_MAX /* MD5-HMAC max key length in bytes */
273
274 #define SHA1_DIGEST_LEN 20 /* SHA1 digest size */
275 #define SHA1_HMAC_BLOCK_SIZE 64 /* SHA1-HMAC block size */
276 #define SHA1_HMAC_MIN_KEY_LEN 1 /* SHA1-HMAC min key length in bytes */
277 #define SHA1_HMAC_MAX_KEY_LEN INT_MAX /* SHA1-HMAC max key length in bytes */
278
279 #define DES_KEY_LEN 8 /* DES key length in bytes */
280 #define DES3_KEY_LEN 24 /* DES3 key length in bytes */
281
282 #define BLOWFISH_MIN_KEY_LEN 32 /* Blowfish min key length in bits */
283 #define BLOWFISH_MAX_KEY_LEN 448 /* Blowfish max key length in bits */
284
285 #define AES_MIN_KEY_LEN 16 /* AES min key length in bytes */
286 #define AES_MAX_KEY_LEN 32 /* AES max key length in bytes */
287
288 #define ARCFOUR_MIN_KEY_BITS 40 /* RC4 min supported key size */
289 #define ARCFOUR_MAX_KEY_BITS 2048 /* RC4 max supported key size */
290
291 #define RSA_MIN_KEY_LEN 256 /* RSA min key length in bits */
292 #define RSA_MAX_KEY_LEN 4096 /* RSA max key length in bits */
293
294 #define DH_MIN_KEY_LEN 64 /* DH min key length in bits */
295 #define DH_MAX_KEY_LEN 4096 /* DH max key length in bits */
296
297 #define DPROV_CKM_MD5_KEY_DERIVATION "CKM_MD5_KEY_DERIVATION"
298 #define DPROV_CKM_SHA1_KEY_DERIVATION "CKM_SHA1_KEY_DERIVATION"
299 #define DPROV_CKM_SHA256_KEY_DERIVATION "CKM_SHA256_KEY_DERIVATION"
300 #define DPROV_CKM_SHA384_KEY_DERIVATION "CKM_SHA384_KEY_DERIVATION"
301 #define DPROV_CKM_SHA512_KEY_DERIVATION "CKM_SHA512_KEY_DERIVATION"
302 #define DPROV_CKM_DES_KEY_GEN "CKM_DES_KEY_GEN"
303 #define DPROV_CKM_DES3_KEY_GEN "CKM_DES3_KEY_GEN"
304 #define DPROV_CKM_AES_KEY_GEN "CKM_AES_KEY_GEN"
305 #define DPROV_CKM_BLOWFISH_KEY_GEN "CKM_BLOWFISH_KEY_GEN"
306 #define DPROV_CKM_RC4_KEY_GEN "CKM_RC4_KEY_GEN"
307 #define DPROV_CKM_RSA_PKCS_KEY_PAIR_GEN "CKM_RSA_PKCS_KEY_PAIR_GEN"
308 #define DPROV_CKM_EC_KEY_PAIR_GEN "CKM_EC_KEY_PAIR_GEN"
309 #define DPROV_CKM_ECDSA "CKM_ECDSA"
310 #define DPROV_CKM_ECDSA_SHA1 "CKM_ECDSA_SHA1"
311 #define DPROV_CKM_ECDH1_DERIVE "CKM_ECDH1_DERIVE"
312 #define DPROV_CKM_DH_PKCS_KEY_PAIR_GEN "CKM_DH_PKCS_KEY_PAIR_GEN"
313 #define DPROV_CKM_DH_PKCS_DERIVE "CKM_DH_PKCS_DERIVE"
314
315 static crypto_mech_info_t dprov_mech_info_tab[] = {
|
272 #define MD5_HMAC_MAX_KEY_LEN INT_MAX /* MD5-HMAC max key length in bytes */
273
274 #define SHA1_DIGEST_LEN 20 /* SHA1 digest size */
275 #define SHA1_HMAC_BLOCK_SIZE 64 /* SHA1-HMAC block size */
276 #define SHA1_HMAC_MIN_KEY_LEN 1 /* SHA1-HMAC min key length in bytes */
277 #define SHA1_HMAC_MAX_KEY_LEN INT_MAX /* SHA1-HMAC max key length in bytes */
278
279 #define DES_KEY_LEN 8 /* DES key length in bytes */
280 #define DES3_KEY_LEN 24 /* DES3 key length in bytes */
281
282 #define BLOWFISH_MIN_KEY_LEN 32 /* Blowfish min key length in bits */
283 #define BLOWFISH_MAX_KEY_LEN 448 /* Blowfish max key length in bits */
284
285 #define AES_MIN_KEY_LEN 16 /* AES min key length in bytes */
286 #define AES_MAX_KEY_LEN 32 /* AES max key length in bytes */
287
288 #define ARCFOUR_MIN_KEY_BITS 40 /* RC4 min supported key size */
289 #define ARCFOUR_MAX_KEY_BITS 2048 /* RC4 max supported key size */
290
291 #define RSA_MIN_KEY_LEN 256 /* RSA min key length in bits */
292 #define RSA_MAX_KEY_LEN 16384 /* RSA max key length in bits */
293
294 #define DH_MIN_KEY_LEN 64 /* DH min key length in bits */
295 #define DH_MAX_KEY_LEN 16384 /* DH max key length in bits */
296
297 #define DPROV_CKM_MD5_KEY_DERIVATION "CKM_MD5_KEY_DERIVATION"
298 #define DPROV_CKM_SHA1_KEY_DERIVATION "CKM_SHA1_KEY_DERIVATION"
299 #define DPROV_CKM_SHA256_KEY_DERIVATION "CKM_SHA256_KEY_DERIVATION"
300 #define DPROV_CKM_SHA384_KEY_DERIVATION "CKM_SHA384_KEY_DERIVATION"
301 #define DPROV_CKM_SHA512_KEY_DERIVATION "CKM_SHA512_KEY_DERIVATION"
302 #define DPROV_CKM_DES_KEY_GEN "CKM_DES_KEY_GEN"
303 #define DPROV_CKM_DES3_KEY_GEN "CKM_DES3_KEY_GEN"
304 #define DPROV_CKM_AES_KEY_GEN "CKM_AES_KEY_GEN"
305 #define DPROV_CKM_BLOWFISH_KEY_GEN "CKM_BLOWFISH_KEY_GEN"
306 #define DPROV_CKM_RC4_KEY_GEN "CKM_RC4_KEY_GEN"
307 #define DPROV_CKM_RSA_PKCS_KEY_PAIR_GEN "CKM_RSA_PKCS_KEY_PAIR_GEN"
308 #define DPROV_CKM_EC_KEY_PAIR_GEN "CKM_EC_KEY_PAIR_GEN"
309 #define DPROV_CKM_ECDSA "CKM_ECDSA"
310 #define DPROV_CKM_ECDSA_SHA1 "CKM_ECDSA_SHA1"
311 #define DPROV_CKM_ECDH1_DERIVE "CKM_ECDH1_DERIVE"
312 #define DPROV_CKM_DH_PKCS_KEY_PAIR_GEN "CKM_DH_PKCS_KEY_PAIR_GEN"
313 #define DPROV_CKM_DH_PKCS_DERIVE "CKM_DH_PKCS_DERIVE"
314
315 static crypto_mech_info_t dprov_mech_info_tab[] = {
|