Loading...
Searching...
No Matches
Whirlpool Class Reference

Whirlpool hash class. More...

Public Member Functions

 Whirlpool () noexcept
 Creates an empty Whirlpool object.
 
 ~Whirlpool () noexcept
 Destructor.
 
 Whirlpool (const Whirlpool &other) noexcept
 Creates a copy of another Whirlpool.
 
Whirlpooloperator= (const Whirlpool &other) noexcept
 Copies another Whirlpool.
 
 Whirlpool (const MemoryBlock &)
 Creates a hash from a block of raw data.
 
 Whirlpool (const void *data, size_t numBytes)
 Creates a hash from a block of raw data.
 
 Whirlpool (InputStream &input, int64 maxBytesToRead=-1)
 Creates a hash from the contents of a stream.
 
 Whirlpool (const File &file)
 Reads a file and generates the hash of its contents.
 
 Whirlpool (CharPointer_UTF8 utf8Text) noexcept
 Creates a checksum from a UTF-8 buffer.
 
MemoryBlock getRawData () const
 Returns the hash as a 64-byte block of data.
 
String toHexString () const
 Returns the checksum as a 128-digit hex string.
 
bool operator== (const Whirlpool &) const noexcept
 
bool operator!= (const Whirlpool &) const noexcept
 

Detailed Description

Whirlpool hash class.

The Whirlpool algorithm was developed by Paulo S. L. M. Barreto and Vincent Rijmen.

See P.S.L.M. Barreto, V. Rijmen, "The Whirlpool hashing function" NESSIE submission, 2000 (tweaked version, 2001), https://www.cosic.esat.kuleuven.ac.be/nessie/workshop/submissions/whirlpool.zip

See also
SHA256, MD5

Constructor & Destructor Documentation

◆ Whirlpool() [1/7]

Whirlpool::Whirlpool ( )
noexcept

Creates an empty Whirlpool object.

The default constructor just creates a hash filled with zeros. (This is not equal to the hash of an empty block of data).

Referenced by operator!=(), operator=(), operator==(), Whirlpool(), Whirlpool(), Whirlpool(), Whirlpool(), Whirlpool(), Whirlpool(), and ~Whirlpool().

◆ ~Whirlpool()

Whirlpool::~Whirlpool ( )
noexcept

Destructor.

References Whirlpool().

◆ Whirlpool() [2/7]

Whirlpool::Whirlpool ( const Whirlpool & other)
noexcept

Creates a copy of another Whirlpool.

References Whirlpool().

◆ Whirlpool() [3/7]

Whirlpool::Whirlpool ( const MemoryBlock & )
explicit

Creates a hash from a block of raw data.

References Whirlpool().

◆ Whirlpool() [4/7]

Whirlpool::Whirlpool ( const void * data,
size_t numBytes )

Creates a hash from a block of raw data.

References Whirlpool().

◆ Whirlpool() [5/7]

Whirlpool::Whirlpool ( InputStream & input,
int64 maxBytesToRead = -1 )

Creates a hash from the contents of a stream.

This will read from the stream until the stream is exhausted, or until maxBytesToRead bytes have been read. If maxBytesToRead is negative, the entire stream will be read.

References Whirlpool().

◆ Whirlpool() [6/7]

Whirlpool::Whirlpool ( const File & file)
explicit

Reads a file and generates the hash of its contents.

If the file can't be opened, the hash will be left uninitialised (i.e. full of zeros).

References Whirlpool().

◆ Whirlpool() [7/7]

Whirlpool::Whirlpool ( CharPointer_UTF8 utf8Text)
explicitnoexcept

Creates a checksum from a UTF-8 buffer.

E.g.

Whirlpool checksum (myString.toUTF8());
Whirlpool() noexcept
Creates an empty Whirlpool object.

References Whirlpool().

Member Function Documentation

◆ operator=()

Whirlpool & Whirlpool::operator= ( const Whirlpool & other)
noexcept

Copies another Whirlpool.

References Whirlpool().

◆ getRawData()

MemoryBlock Whirlpool::getRawData ( ) const

Returns the hash as a 64-byte block of data.

References getRawData().

Referenced by getRawData().

◆ toHexString()

String Whirlpool::toHexString ( ) const

Returns the checksum as a 128-digit hex string.

References toHexString().

Referenced by toHexString().

◆ operator==()

bool Whirlpool::operator== ( const Whirlpool & ) const
noexcept

References Whirlpool().

◆ operator!=()

bool Whirlpool::operator!= ( const Whirlpool & ) const
noexcept

References JUCE_LEAK_DETECTOR, and Whirlpool().

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram