Random123-1.09: Threefry Classes and Typedefs

- Random123-1.09 Documentation

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

r123::Threefry2x32

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.

r123::Threefry2x64

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.

r123::Threefry4x32

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.

r123::Threefry4x64

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

enum r123_enum_threefry2x32

Enumerator:

  threefry2x32_rounds |

enum r123_enum_threefry2x64

Enumerator:

  threefry2x64_rounds |

enum r123_enum_threefry4x32

Enumerator:

  threefry4x32_rounds |

enum r123_enum_threefry4x64

Enumerator:

  threefry4x64_rounds |

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines