diff options
-rw-r--r-- | include/sha256.h | 2 | ||||
-rw-r--r-- | src/sha256.cc | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/include/sha256.h b/include/sha256.h index 18fba6a..c02eb40 100644 --- a/include/sha256.h +++ b/include/sha256.h @@ -18,6 +18,8 @@ public: SHA256(const std::string&); + ~SHA256(); + // get digest as array of bytes uint8_t* digest(); diff --git a/src/sha256.cc b/src/sha256.cc index 7790f8a..7ef467e 100644 --- a/src/sha256.cc +++ b/src/sha256.cc @@ -8,6 +8,7 @@ hmacsha256::SHA256::SHA256(const uint8_t* data, uint32_t length) { } void hmacsha256::SHA256::init(const uint8_t* data, uint32_t length) { + digest_ = new uint8_t[32]; message_l_ = bit_len_ = 0; vars_[0] = 0x6a09e667; vars_[1] = 0xbb67ae85; @@ -29,6 +30,10 @@ void hmacsha256::SHA256::init(const uint8_t* data, uint32_t length) { } } +hmacsha256::SHA256::~SHA256() { + delete digest_; +} + hmacsha256::SHA256::SHA256(const std::string& data) { init(reinterpret_cast<const uint8_t*> (data.c_str()), data.size()); } |