support of SHA224-based certificate signatures
This commit is contained in:
@@ -116,6 +116,9 @@ gcrypt_hasher_t *gcrypt_hasher_create(hash_algorithm_t algo)
|
||||
case HASH_SHA1:
|
||||
gcrypt_alg = GCRY_MD_SHA1;
|
||||
break;
|
||||
case HASH_SHA224:
|
||||
gcrypt_alg = GCRY_MD_SHA224;
|
||||
break;
|
||||
case HASH_SHA256:
|
||||
gcrypt_alg = GCRY_MD_SHA256;
|
||||
break;
|
||||
|
||||
@@ -148,6 +148,8 @@ plugin_t *plugin_create()
|
||||
(hasher_constructor_t)gcrypt_hasher_create);
|
||||
lib->crypto->add_hasher(lib->crypto, HASH_MD5,
|
||||
(hasher_constructor_t)gcrypt_hasher_create);
|
||||
lib->crypto->add_hasher(lib->crypto, HASH_SHA224,
|
||||
(hasher_constructor_t)gcrypt_hasher_create);
|
||||
lib->crypto->add_hasher(lib->crypto, HASH_SHA256,
|
||||
(hasher_constructor_t)gcrypt_hasher_create);
|
||||
lib->crypto->add_hasher(lib->crypto, HASH_SHA384,
|
||||
|
||||
@@ -226,6 +226,8 @@ static bool sign(private_gcrypt_rsa_private_key_t *this, signature_scheme_t sche
|
||||
return sign_raw(this, data, sig);
|
||||
case SIGN_RSA_EMSA_PKCS1_SHA1:
|
||||
return sign_pkcs1(this, HASH_SHA1, "sha1", data, sig);
|
||||
case SIGN_RSA_EMSA_PKCS1_SHA224:
|
||||
return sign_pkcs1(this, HASH_SHA224, "sha224", data, sig);
|
||||
case SIGN_RSA_EMSA_PKCS1_SHA256:
|
||||
return sign_pkcs1(this, HASH_SHA256, "sha256", data, sig);
|
||||
case SIGN_RSA_EMSA_PKCS1_SHA384:
|
||||
|
||||
@@ -188,6 +188,8 @@ static bool verify(private_gcrypt_rsa_public_key_t *this,
|
||||
return verify_pkcs1(this, HASH_MD5, "md5", data, signature);
|
||||
case SIGN_RSA_EMSA_PKCS1_SHA1:
|
||||
return verify_pkcs1(this, HASH_SHA1, "sha1", data, signature);
|
||||
case SIGN_RSA_EMSA_PKCS1_SHA224:
|
||||
return verify_pkcs1(this, HASH_SHA224, "sha224", data, signature);
|
||||
case SIGN_RSA_EMSA_PKCS1_SHA256:
|
||||
return verify_pkcs1(this, HASH_SHA256, "sha256", data, signature);
|
||||
case SIGN_RSA_EMSA_PKCS1_SHA384:
|
||||
|
||||
Reference in New Issue
Block a user