Electroneum
delegated_pow.cpp
Go to the documentation of this file.
1 // Copyrights(c) 2017-2018, The Electroneum Project
2 
3 #include "gtest/gtest.h"
4 
5 #include "crypto/crypto.h"
6 
7 std::vector<std::string> keypair = crypto::create_ed25519_keypair();
8 std::string privateKey = boost::algorithm::unhex(keypair[0]);
9 std::string publicKey = boost::algorithm::unhex(keypair[1]);
10 std::string message("Message requiring signing");
11 std::string unusedMessage("Unused message");
15 
16 TEST(ed25519_signature, CreateKeyPair)
17 {
18  ASSERT_EQ(keypair.size(), 2);
19  ASSERT_EQ(keypair[0].size(), 64);
20  ASSERT_EQ(keypair[1].size(), 64);
21  ASSERT_EQ(privateKey.size(), 32);
22  ASSERT_EQ(publicKey.size(), 32);
23 }
24 
25 TEST(DelegatedPOW, SignMessage)
26 {
27  ASSERT_EQ(validSignature.size(), 64);
28  ASSERT_EQ(invalidSignature.size(), 0);
30 }
31 
32 TEST(DelegatedPOW, VerifySignature)
33 {
40 }
std::string unusedMessage("Unused message")
std::vector< std::string > keypair
#define EXPECT_TRUE(condition)
Definition: gtest.h:1859
std::string publicKey
::std::string string
Definition: gtest-port.h:1097
std::string privateKey
#define ASSERT_EQ(val1, val2)
Definition: gtest.h:1956
bool verify_signature(const std::string &message, const std::string &publicKey, const std::string &signature)
Definition: crypto.h:380
TEST(ed25519_signature, CreateKeyPair)
std::string message("Message requiring signing")
std::string invalidSignature
std::string blankInvalidSignature
#define EXPECT_FALSE(condition)
Definition: gtest.h:1862
std::vector< std::string > create_ed25519_keypair()
Definition: crypto.h:388
std::string sign_message(const std::string &message, const std::string &privateKey)
Definition: crypto.h:376
std::string validSignature
unsigned char ed25519_signature[64]
Definition: ed25519.h:10