From 48289845df311ef28ac2bb9eba659c2966dee605 Mon Sep 17 00:00:00 2001 From: orignal Date: Wed, 8 Apr 2015 16:28:52 -0400 Subject: [PATCH] EdDSA signature type added --- Identity.cpp | 12 ++++++------ Identity.h | 2 +- Signature.cpp | 2 +- Signature.h | 14 +++++++------- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/Identity.cpp b/Identity.cpp index 43decec1..3b64b563 100644 --- a/Identity.cpp +++ b/Identity.cpp @@ -95,11 +95,11 @@ namespace data memcpy (excessBuf, signingKey + 128, excessLen); break; } - case SIGNING_KEY_TYPE_EDDSA_SHA512: + case SIGNING_KEY_TYPE_EDDSA_SHA512_ED25519: { - size_t padding = 128 - i2p::crypto::EDDSA_PUBLIC_KEY_LENGTH; // 96 = 128 - 32 + size_t padding = 128 - i2p::crypto::EDDSA25519_PUBLIC_KEY_LENGTH; // 96 = 128 - 32 i2p::context.GetRandomNumberGenerator ().GenerateBlock (m_StandardIdentity.signingKey, padding); - memcpy (m_StandardIdentity.signingKey + padding, signingKey, i2p::crypto::EDDSA_PUBLIC_KEY_LENGTH); + memcpy (m_StandardIdentity.signingKey + padding, signingKey, i2p::crypto::EDDSA25519_PUBLIC_KEY_LENGTH); break; } default: @@ -352,10 +352,10 @@ namespace data m_Verifier = new i2p::crypto:: RSASHA5124096Verifier (signingKey); break; } - case SIGNING_KEY_TYPE_EDDSA_SHA512: + case SIGNING_KEY_TYPE_EDDSA_SHA512_ED25519: { - size_t padding = 128 - i2p::crypto::EDDSA_PUBLIC_KEY_LENGTH; // 96 = 128 - 32 - m_Verifier = new i2p::crypto::EDDSAVerifier (m_StandardIdentity.signingKey + padding); + size_t padding = 128 - i2p::crypto::EDDSA25519_PUBLIC_KEY_LENGTH; // 96 = 128 - 32 + m_Verifier = new i2p::crypto::EDDSA25519Verifier (m_StandardIdentity.signingKey + padding); break; } default: diff --git a/Identity.h b/Identity.h index beaf910e..5859f988 100644 --- a/Identity.h +++ b/Identity.h @@ -117,7 +117,7 @@ namespace data const uint16_t SIGNING_KEY_TYPE_RSA_SHA256_2048 = 4; const uint16_t SIGNING_KEY_TYPE_RSA_SHA384_3072 = 5; const uint16_t SIGNING_KEY_TYPE_RSA_SHA512_4096 = 6; - const uint16_t SIGNING_KEY_TYPE_EDDSA_SHA512 = 7; + const uint16_t SIGNING_KEY_TYPE_EDDSA_SHA512_ED25519 = 7; typedef uint16_t SigningKeyType; typedef uint16_t CryptoKeyType; diff --git a/Signature.cpp b/Signature.cpp index f29a18be..20f0c289 100644 --- a/Signature.cpp +++ b/Signature.cpp @@ -79,7 +79,7 @@ namespace crypto CryptoPP::Integer q, l, d, I; }; - bool EDDSAVerifier::Verify (const uint8_t * buf, size_t len, const uint8_t * signature) const + bool EDDSA25519Verifier::Verify (const uint8_t * buf, size_t len, const uint8_t * signature) const { return true; // TODO: } diff --git a/Signature.h b/Signature.h index 24032708..3aa739e4 100644 --- a/Signature.h +++ b/Signature.h @@ -412,21 +412,21 @@ namespace crypto }; // EdDSA - const size_t EDDSA_PUBLIC_KEY_LENGTH = 32; - const size_t EDDSA_SIGNATURE_LENGTH = 64; - const size_t EDDSA_PRIVATE_KEY_LENGTH = 32; - class EDDSAVerifier: public Verifier + const size_t EDDSA25519_PUBLIC_KEY_LENGTH = 32; + const size_t EDDSA25519_SIGNATURE_LENGTH = 64; + const size_t EDDSA25519_PRIVATE_KEY_LENGTH = 32; + class EDDSA25519Verifier: public Verifier { public: - EDDSAVerifier (const uint8_t * signingKey) + EDDSA25519Verifier (const uint8_t * signingKey) { } bool Verify (const uint8_t * buf, size_t len, const uint8_t * signature) const; - size_t GetPublicKeyLen () const { return EDDSA_PUBLIC_KEY_LENGTH; }; - size_t GetSignatureLen () const { return EDDSA_SIGNATURE_LENGTH; }; + size_t GetPublicKeyLen () const { return EDDSA25519_PUBLIC_KEY_LENGTH; }; + size_t GetSignatureLen () const { return EDDSA25519_SIGNATURE_LENGTH; }; }; } }