Classes | Typedefs | Enumerations

Threefry Classes and Typedefs

Classes

class  r123::Threefry2x32_R< R >
class  r123::Threefry2x64_R< R >
class  r123::Threefry4x32_R< R >
class  r123::Threefry4x64_R< R >

Typedefs

typedef Threefry2x32_R
< threefry2x32_rounds > 
r123::Threefry2x32
typedef Threefry2x64_R
< threefry2x64_rounds > 
r123::Threefry2x64
typedef Threefry4x32_R
< threefry4x32_rounds > 
r123::Threefry4x32
typedef Threefry4x64_R
< threefry4x64_rounds > 
r123::Threefry4x64

Enumerations

enum  r123_enum_threefry2x64 { threefry2x64_rounds = 20 }
enum  r123_enum_threefry2x32 { threefry2x32_rounds = 20 }
enum  r123_enum_threefry4x64 { threefry4x64_rounds = 20 }
enum  r123_enum_threefry4x32 { threefry4x32_rounds = 20 }

Detailed Description

The ThreefryNxW classes export the member functions, typedefs and operator overloads required by a CBRNG class.

As described in Parallel Random Numbers: As Easy as 1, 2, 3 , the Threefry family is closely related to the Threefish block cipher from Skein Hash Function. Threefry is not suitable for cryptographic use.

Threefry uses integer addition, bitwise rotation, xor and permutation of words to randomize its output.


Typedef Documentation

Threefry2x32 is equivalent to Threefry2x32_R<20>. With 20 rounds, Threefry2x32 has a considerable safety margin over the minimum number of rounds with no known statistical flaws, but still has excellent performance.

Threefry2x64 is equivalent to Threefry2x64_R<20>. With 20 rounds, Threefry2x64 has a considerable safety margin over the minimum number of rounds with no known statistical flaws, but still has excellent performance.

Threefry4x32 is equivalent to Threefry4x32_R<20>. With 20 rounds, Threefry4x32 has a considerable safety margin over the minimum number of rounds with no known statistical flaws, but still has excellent performance.

Threefry4x64 is equivalent to Threefry4x64_R<20>. With 20 rounds, Threefry4x64 has a considerable safety margin over the minimum number of rounds with no known statistical flaws, but still has excellent performance.


Enumeration Type Documentation

Enumerator:
threefry2x32_rounds 
Enumerator:
threefry2x64_rounds 
Enumerator:
threefry4x32_rounds 
Enumerator:
threefry4x64_rounds 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines