aboutsummaryrefslogtreecommitdiff
path: root/src/Signature.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2018-03-09 10:26:55 +0100
committerdec05eba <dec05eba@protonmail.com>2020-08-18 23:25:46 +0200
commit0e62cb8e5ed06d906ad84321cdda22acfcc952c9 (patch)
tree9ba0cc8e20febb4bf07d4d065e3d653ed651bdda /src/Signature.cpp
parenteda9a7bbefc5587bf1ff895a9214f450e64575fa (diff)
Partially implement 'add' operation
Diffstat (limited to 'src/Signature.cpp')
-rw-r--r--src/Signature.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/Signature.cpp b/src/Signature.cpp
index 34f6190..d328b58 100644
--- a/src/Signature.cpp
+++ b/src/Signature.cpp
@@ -1,4 +1,5 @@
#include "../include/Signature.hpp"
+#include "../include/Hash.hpp"
#include <sodium/crypto_sign_ed25519.h>
#include <sodium/utils.h>
#include <cstring>
@@ -48,10 +49,20 @@ namespace odhtdb
return result;
}
+ size_t PublicKey::operator()() const
+ {
+ return fnvHash((const unsigned char*)data, PUBLIC_KEY_NUM_BYTES);
+ }
+
+ bool PublicKey::operator==(const PublicKey &other) const
+ {
+ return memcmp(data, other.data, PUBLIC_KEY_NUM_BYTES) == 0;
+ }
+
string PublicKey::toString() const
{
string result;
- result.resize(PUBLIC_KEY_NUM_BYTES * 2);
+ result.resize(PUBLIC_KEY_NUM_BYTES * 2 + 1);
sodium_bin2hex(&result[0], PUBLIC_KEY_NUM_BYTES * 2 + 1, (const unsigned char*)data, PUBLIC_KEY_NUM_BYTES);
return result;
}