mgf1: Add support for SHA-224/384 based MGF1

This commit is contained in:
Tobias Brunner
2017-11-08 16:48:10 +01:00
parent 720a76c229
commit 90a3bc5075
2 changed files with 11 additions and 1 deletions
@@ -44,8 +44,12 @@ METHOD(plugin_t, get_features, int,
PLUGIN_REGISTER(XOF, mgf1_xof_create), PLUGIN_REGISTER(XOF, mgf1_xof_create),
PLUGIN_PROVIDE(XOF, XOF_MGF1_SHA1), PLUGIN_PROVIDE(XOF, XOF_MGF1_SHA1),
PLUGIN_DEPENDS(HASHER, HASH_SHA1), PLUGIN_DEPENDS(HASHER, HASH_SHA1),
PLUGIN_PROVIDE(XOF, XOF_MGF1_SHA224),
PLUGIN_DEPENDS(HASHER, HASH_SHA224),
PLUGIN_PROVIDE(XOF, XOF_MGF1_SHA256), PLUGIN_PROVIDE(XOF, XOF_MGF1_SHA256),
PLUGIN_DEPENDS(HASHER, HASH_SHA256), PLUGIN_DEPENDS(HASHER, HASH_SHA256),
PLUGIN_PROVIDE(XOF, XOF_MGF1_SHA384),
PLUGIN_DEPENDS(HASHER, HASH_SHA384),
PLUGIN_PROVIDE(XOF, XOF_MGF1_SHA512), PLUGIN_PROVIDE(XOF, XOF_MGF1_SHA512),
PLUGIN_DEPENDS(HASHER, HASH_SHA512), PLUGIN_DEPENDS(HASHER, HASH_SHA512),
}; };
+7 -1
View File
@@ -244,9 +244,15 @@ mgf1_xof_t *mgf1_xof_create(ext_out_function_t algorithm)
case XOF_MGF1_SHA1: case XOF_MGF1_SHA1:
hash_alg = HASH_SHA1; hash_alg = HASH_SHA1;
break; break;
case XOF_MGF1_SHA224:
hash_alg = HASH_SHA224;
break;
case XOF_MGF1_SHA256: case XOF_MGF1_SHA256:
hash_alg = HASH_SHA256; hash_alg = HASH_SHA256;
break; break;
case XOF_MGF1_SHA384:
hash_alg = HASH_SHA384;
break;
case XOF_MGF1_SHA512: case XOF_MGF1_SHA512:
hash_alg = HASH_SHA512; hash_alg = HASH_SHA512;
break; break;
@@ -261,7 +267,7 @@ mgf1_xof_t *mgf1_xof_create(ext_out_function_t algorithm)
hash_algorithm_names, hash_alg); hash_algorithm_names, hash_alg);
return NULL; return NULL;
} }
INIT(this, INIT(this,
.public = { .public = {
.mgf1_interface = { .mgf1_interface = {