|
| Tiger () |
| Default constructor. More...
|
|
void | reset () override |
| Resets the Tiger hash to initial state of computation. More...
|
|
uint8_t * | getValue (uint8_t *buffer) const override |
| Returns the Tiger hash value in the first 24 bytes of the given address. More...
|
|
size_t | getSize () const override |
| Returns the minimal size to allocate in memory to store the hash with the getValue(buffer) method. More...
|
|
void | update (const uint8_t *buf, size_t len) override |
| Updates the Tiger hash with specified array of bytes. More...
|
|
std::string | getName () const override |
| Returns the name of the checksum or the hash algorithm. More...
|
|
ChecksumAlgoId | getID () const override |
| Returns an unique identifier for the checksum or the hash algorithm. More...
|
|
std::string | toString (const bool hexInUpperCase=false) const override |
| Returns the hash value has a string. More...
|
|
virtual | ~Checksum () |
| Destructor. More...
|
|
virtual ArrayString | getAltNames () const |
| Returns the alternative name(s) of the checksum or the hash algorithm. More...
|
|
|
void | finish () |
| Process the remaining bytes in the internal buffer and the usual prolog according to the standard. More...
|
|
void | transform (uint8_t *data) |
| Transform the message X which consists of 8 64-bit-words. More...
|
|
void | round (uint64_t &a, uint64_t &b, uint64_t &c, uint64_t x, int mul) |
| Helper function for Tiger's computing. More...
|
|
void | pass (uint64_t &a, uint64_t &b, uint64_t &c, uint64_t *x, int mul) |
| Helper function for Tiger's computing. More...
|
|
void | key_schedule (uint64_t *x) |
| Helper function for Tiger's computing. More...
|
|
|
static uint32_t | rol (uint32_t x, int n) |
| Rotate the 32 bit unsigned integer x by n bits left. More...
|
|
static uint32_t | ror (uint32_t x, int n) |
| Rotate the 32 bit unsigned integer x by n bits right. More...
|
|
static uint32_t | swapOnLE (const uint32_t value) |
| Swaps bytes on little endian architectures. More...
|
|
static uint32_t | swapOnBE (const uint32_t value) |
| Swaps bytes on big endian architectures. More...
|
|
static uint64_t | swapOnLE (const uint64_t value) |
| Swaps bytes on little endian architectures. More...
|
|
static uint64_t | swapOnBE (const uint64_t value) |
| Swaps bytes on big endian architectures. More...
|
|
Computes the Tiger hash from a byte stream.
This class is a rewrite in C++ of the Tiger hash computing algorithm present in the Libgcrypt. Please see the GNU Privacy Guard project website for more informations.
Using this class in very simple:
Use the update method to provide to the class the bytes for computing the hash.
The Tiger hash value can be gotten by two ways:
-
The getValue method which puts the Tiger hash value in an array of 24 bytes.
-
The toString method which returns the Tiger hash value in a string.
The Tiger hash computing can be reseted by the reset method.
Definition at line 56 of file tiger.hpp.