Fast cryptographic PRNG based on 20-round ChaCha cipher designed by Samuel Neves and Filipe Araujo (2011). Tyche passes PractRand and TestU01 BigCrush statistical test suites. Uses ChaCha quarter-round function with different initialization than standard ChaCha20.
| Property | Value |
|---|---|
| Category | Random Number Generators |
| Sub-category | Pseudorandom Number Generator |
| Variant | Tyche |
| Security status | ๐งช Experimental |
| Complexity | Advanced |
| Inventor | Samuel Neves, Filipe Araujo |
| Year | 2011 |
| Origin | Not specified |
| Source | algorithms/random/chacha.js |
| Parameter | Supported values |
|---|---|
| Seed sizes | 32 bytes (256 bits) |
| Flag | Value |
|---|---|
IsDeterministic |
Yes |
IsCryptographicallySecure |
Yes |
Status: ๐งช Experimental
No vulnerabilities are recorded for this implementation.
4 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 โ Tyche with seed 0, stream 0: First 16 bytes
| Field | Value |
|---|---|
seed |
0000000000000000 |
streamIndex |
00000000 |
outputSize |
16 |
input |
null |
expected |
dbdcae836fde31bf714be8aba4b974ff |
Vector 2 โ Tyche with seed 1, stream 0: First 16 bytes
| Field | Value |
|---|---|
seed |
0100000000000000 |
streamIndex |
00000000 |
outputSize |
16 |
input |
null |
expected |
abbf5598b056862844653ebd5aa86b9c |
Vector 3 โ Tyche with seed 12345, stream 0: First 16 bytes
| Field | Value |
|---|---|
seed |
3930000000000000 |
streamIndex |
00000000 |
outputSize |
16 |
input |
null |
expected |
d7d0722e34863050d14334a5877d014c |
Vector 4 โ Tyche with seed 0xDEADBEEF, stream 1: First 16 bytes
| Field | Value |
|---|---|
seed |
efbeadde00000000 |
streamIndex |
01000000 |
outputSize |
16 |
input |
null |
expected |
8e24dfdb18a1d74d5bdf1e9d5b5585fc |