Provides stateful SHA-256 digest calculation. More...
#include <ndn-cxx/util/sha256.hpp>
| Classes | |
| class | Error | 
| Public Member Functions | |
| Sha256 () | |
| Create an empty SHA-256 digest.  More... | |
| Sha256 (std::istream &is) | |
| Calculate SHA-256 digest of the input stream is.  More... | |
| ConstBufferPtr | computeDigest () | 
| Finalize and return the digest based on all previously supplied inputs.  More... | |
| bool | empty () const | 
| Check if digest is empty.  More... | |
| bool | operator!= (Sha256 &digest) | 
| Check if the supplied digest is not equal to this digest.  More... | |
| Sha256 & | operator<< (Sha256 &src) | 
| Add existing digest to the digest calculation.  More... | |
| Sha256 & | operator<< (const std::string &str) | 
| Add a string to the digest calculation.  More... | |
| Sha256 & | operator<< (const Block &block) | 
| Add a block to the digest calculation.  More... | |
| Sha256 & | operator<< (uint64_t value) | 
| Add a uint64_t value to the digest calculation.  More... | |
| bool | operator== (Sha256 &digest) | 
| Check if the supplied digest is equal to this digest.  More... | |
| void | reset () | 
| Discard the current state and start a new digest calculation.  More... | |
| std::string | toString () | 
| Convert digest to std::string.  More... | |
| void | update (const uint8_t *buffer, size_t size) | 
| Add a raw buffer to the digest calculation.  More... | |
| Static Public Member Functions | |
| static ConstBufferPtr | computeDigest (const uint8_t *buffer, size_t size) | 
| Stateless SHA-256 digest calculation.  More... | |
| Static Public Attributes | |
| static const size_t | DIGEST_SIZE = 32 | 
| Length in bytes of a SHA-256 digest.  More... | |
Provides stateful SHA-256 digest calculation.
Example:
Definition at line 44 of file sha256.hpp.
| ndn::util::Sha256::Sha256 | ( | ) | 
Create an empty SHA-256 digest.
Definition at line 34 of file sha256.cpp.
| 
 | explicit | 
Calculate SHA-256 digest of the input stream is. 
Definition at line 39 of file sha256.cpp.
| ConstBufferPtr ndn::util::Sha256::computeDigest | ( | ) | 
Finalize and return the digest based on all previously supplied inputs.
Definition at line 63 of file sha256.cpp.
| 
 | static | 
Stateless SHA-256 digest calculation.
| buffer | the input buffer | 
| size | the size of the input buffer | 
Definition at line 136 of file sha256.cpp.
| 
 | inline | 
Check if digest is empty.
An empty digest means nothing has been taken into calculation.
Definition at line 75 of file sha256.hpp.
| 
 | inline | 
Check if the supplied digest is not equal to this digest.
Definition at line 104 of file sha256.hpp.
Add existing digest to the digest calculation.
| src | digest to combine with | 
The result of this combination is sha256(sha256(...))
src, finalizing the digest. | Error | the digest has already been finalized | 
Definition at line 89 of file sha256.cpp.
| Sha256 & ndn::util::Sha256::operator<< | ( | const std::string & | str | ) | 
Add a string to the digest calculation.
| Error | the digest has already been finalized | 
Definition at line 97 of file sha256.cpp.
Add a block to the digest calculation.
| Error | the digest has already been finalized | 
Definition at line 104 of file sha256.cpp.
| Sha256 & ndn::util::Sha256::operator<< | ( | uint64_t | value | ) | 
Add a uint64_t value to the digest calculation.
| Error | the digest has already been finalized | 
Definition at line 111 of file sha256.cpp.
| bool ndn::util::Sha256::operator== | ( | Sha256 & | digest | ) | 
Check if the supplied digest is equal to this digest.
Definition at line 75 of file sha256.cpp.
| void ndn::util::Sha256::reset | ( | ) | 
Discard the current state and start a new digest calculation.
Definition at line 50 of file sha256.cpp.
| std::string ndn::util::Sha256::toString | ( | ) | 
Convert digest to std::string.
Definition at line 129 of file sha256.cpp.
| void ndn::util::Sha256::update | ( | const uint8_t * | buffer, | 
| size_t | size | ||
| ) | 
Add a raw buffer to the digest calculation.
| buffer | the input buffer | 
| size | the size of the input buffer | 
| Error | the digest has already been finalized | 
Definition at line 118 of file sha256.cpp.
| 
 | static | 
Length in bytes of a SHA-256 digest.
Definition at line 56 of file sha256.hpp.