Xoshiro256++ is an all-purpose, rock-solid, small-state pseudo-random number generator with excellent speed and statistical properties. It features a 256-bit state (four 64-bit values), passes all statistical tests, and uses addition and rotation for the output function. Default PRNG for Julia programming language.
| Property | Value |
|---|---|
| Category | Random Number Generators |
| Sub-category | Non-Cryptographic PRNG |
| Security status | 🎓 Educational Only |
| Complexity | Intermediate |
| Inventor | David Blackman, Sebastiano Vigna |
| Year | 2019 |
| Origin | 🇮🇹 Italy |
| Source | algorithms/random/xoroshiro256plusplus.js |
| Parameter | Supported values |
|---|---|
| Seed sizes | 8 bytes (64 bits) |
| Flag | Value |
|---|---|
IsDeterministic |
Yes |
IsCryptographicallySecure |
No |
Status: 🎓 Educational Only
No vulnerabilities are recorded for this implementation.
5 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 — Seed=0: First four 64-bit outputs from xoshiro256++
| Field | Value |
|---|---|
seed |
0000000000000000 |
outputSize |
32 |
input |
null |
expected |
df230b49615d175307d580c33d6fda61fc7b9aec91df0f5c1a5ebe3b8cbfee02 |
Vector 2 — Seed=1: First four 64-bit outputs from xoshiro256++
| Field | Value |
|---|---|
seed |
0100000000000000 |
outputSize |
32 |
input |
null |
expected |
9bc2036f7fd0c5cf8de03f96324142bf20f5aa57577da319d656cd059f1108bf |
Vector 3 — Seed=12345: First four 64-bit outputs
| Field | Value |
|---|---|
seed |
3930000000000000 |
outputSize |
32 |
input |
null |
expected |
68a5f8de828a948da002677953f97734698ddbe6fca2ca15d06d0cc25388ef2c |
Vector 4 — Seed=0xDEADBEEFCAFEBABE: First four 64-bit outputs
| Field | Value |
|---|---|
seed |
bebafecaefbeadde |
outputSize |
32 |
input |
null |
expected |
e04d0b19e99f4cbcc3de715260d4eba244b245d6bcec25a8180f7ac01c1eb3a9 |
Vector 5 — Seed=0xFFFFFFFFFFFFFFFF: First four 64-bit outputs
| Field | Value |
|---|---|
seed |
ffffffffffffffff |
outputSize |
32 |
input |
null |
expected |
b2278e94cef8cc56905b5a2e438885e68bca1981a4b5e9e373ae325549190f46 |