Started implementing BLISS signature generation

This commit is contained in:
Andreas Steffen
2014-11-29 14:51:16 +01:00
parent 56009f2001
commit f673966b9f
8 changed files with 34 additions and 24 deletions
@@ -51,15 +51,11 @@ METHOD(plugin_t, get_features, int,
PLUGIN_REGISTER(PUBKEY, bliss_public_key_load, TRUE),
PLUGIN_PROVIDE(PUBKEY, KEY_BLISS),
/* signature schemes, private */
PLUGIN_PROVIDE(PRIVKEY_SIGN, SIGN_BLISS_I_SHA256),
PLUGIN_DEPENDS(HASHER, HASH_SHA256),
PLUGIN_PROVIDE(PRIVKEY_SIGN, SIGN_BLISS_IV_SHA384),
PLUGIN_DEPENDS(HASHER, HASH_SHA384),
PLUGIN_PROVIDE(PRIVKEY_SIGN, SIGN_BLISS_WITH_SHA512),
PLUGIN_DEPENDS(HASHER, HASH_SHA512),
/* signature verification schemes */
PLUGIN_PROVIDE(PUBKEY_VERIFY, SIGN_BLISS_I_SHA256),
PLUGIN_DEPENDS(HASHER, HASH_SHA256),
PLUGIN_PROVIDE(PUBKEY_VERIFY, SIGN_BLISS_IV_SHA384),
PLUGIN_DEPENDS(HASHER, HASH_SHA384),
PLUGIN_PROVIDE(PUBKEY_VERIFY, SIGN_BLISS_WITH_SHA512),
PLUGIN_DEPENDS(HASHER, HASH_SHA512),
};
*features = f;
@@ -88,10 +88,10 @@ METHOD(private_key_t, sign, bool,
{
switch (scheme)
{
case SIGN_BLISS_I_SHA256:
return FALSE;
case SIGN_BLISS_IV_SHA384:
return FALSE;
case SIGN_BLISS_WITH_SHA512:
DBG2(DBG_LIB, "empty signature");
*signature = chunk_empty;
return TRUE;
default:
DBG1(DBG_LIB, "signature scheme %N not supported with BLISS",
signature_scheme_names, scheme);
@@ -59,9 +59,7 @@ METHOD(public_key_t, verify, bool,
{
switch (scheme)
{
case SIGN_BLISS_I_SHA256:
return FALSE;
case SIGN_BLISS_IV_SHA384:
case SIGN_BLISS_WITH_SHA512:
return FALSE;
default:
DBG1(DBG_LIB, "signature scheme %N not supported by BLISS",