|
BDE 4.14.0 Production release
|
#include <bdlde_sha1.h>
Public Member Functions | |
| Sha1 () | |
| Sha1 (const void *data, bsl::size_t length) | |
| void | loadDigestAndReset (unsigned char *result) |
| void | reset () |
| void | update (const void *data, bsl::size_t length) |
| void | loadDigest (unsigned char *result) const |
| bsl::ostream & | print (bsl::ostream &stream) const |
Static Public Attributes | |
| static const bsl::size_t | k_DIGEST_SIZE = 160 / 8 |
| The size (in bytes) of the output. | |
Friends | |
| bool | operator== (const Sha1 &, const Sha1 &) |
This class represents a SHA-1 digest that can be updated as additional data is provided.
More generally, this class supports a complete set of value semantic operations, including copy construction, assignment, equality comparison, and ostream printing. (A precise operational definition of when two instances have the same value can be found in the description of operator== for the class.) This container is exception neutral with no guarantee of rollback: if an exception is thrown during the invocation of a method on a pre-existing instance, the class is left in a valid state, but its value is undefined. In no event is memory leaked. Finally, aliasing (e.g., using all or part of an object as both source and destination) is supported in all cases.
See bdlde_sha1
| bdlde::Sha1::Sha1 | ( | ) |
Construct a SHA-1 digest having the value corresponding to no data having been provided.
| bdlde::Sha1::Sha1 | ( | const void * | data, |
| bsl::size_t | length | ||
| ) |
Construct a SHA-1 digest corresponding to the specified data having the specified length (in bytes). Note that if data is null, then length must be 0.
| void bdlde::Sha1::loadDigest | ( | unsigned char * | result | ) | const |
Load the current value of this SHA-1 digest into the specified result.
| void bdlde::Sha1::loadDigestAndReset | ( | unsigned char * | result | ) |
Load the current value of this SHA-1 digest into the specified result and reset this Sha1 object to the default-constructed state.
| bsl::ostream & bdlde::Sha1::print | ( | bsl::ostream & | stream | ) | const |
Format the current value of this SHA-1 digest to the specified output stream and return a reference to the modifiable stream.
| void bdlde::Sha1::reset | ( | ) |
Reset the value of this SHA-1 digest to the value provided by the default constructor.
| void bdlde::Sha1::update | ( | const void * | data, |
| bsl::size_t | length | ||
| ) |
Update the value of this SHA-1 digest to incorporate the specified data having the specified length in bytes. If the current state is the default state, the resultant value of this SHA-1 digest is the application of the SHA-1 algorithm upon the currently given data of the given length. If this digest has been previously provided data and has not been subsequently reset, the current state is not the default state and the resultant value is equivalent to applying the SHA-1 algorithm upon the concatenation of all the provided data. The behavior is undefined unless the range [data, data + length) is a valid range. Note that if data is null, then length must be 0.
Return true if the specified lhs and rhs SHA-1 digests have the same value, and false otherwise. Two digests have the same value if, after applying any number of equivalent updates to both (possibly including no updates), the values obtained from their respective loadDigest methods are identical.
|
static |