The announcement and explanation blog post is here.
Note: please do not use this for cryptographic purposes. If you need security, a recommended option is ChaCha20.
Implementations:
Name | Intel Performance | ARM Performance | Quality | Seed correlation |
---|---|---|---|---|
SHISHUA | 52.93 GB/s | 8.78 GB/s | >32 TiB | >32 TiB |
xoshiro256+x8 | 40.18 GB/s | 3.69 GB/s | 1 KiB | 0 KiB |
RomuTrio | 8.62 GB/s | 4.76 GB/s | >32 TiB | 1 KiB |
xoshiro256+ | 7.88 GB/s | 4.31 GB/s | 512 MiB | 1 KiB |
wyrand | 7.00 GB/s | 2.53 GB/s | >32 TiB | 32 KiB |
Lehmer128 | 6.14 GB/s | 1.83 GB/s | >32 TiB | 1 KiB |
ChaCha8 | 6.28 GB/s | 1.72 GB/s | >32 TiB? | >32 TiB? |
RC4 | 0.35 GB/s | 0.15 GB/s | 1 TiB | 1 KiB |
>
if it did not fail.
We put a question mark if we have not proved it.On the subject of seed correlations, the ./bin/sample-seed-fingerprints.sh
program
highlights additional anomalies:
make
: build ./shishua
.make test
: run performance tests, PractRand, and BigCrush on SHISHUA.make test/benchmark-seed
: run seed correlation test.make test/benchmark-perf
: run performance comparison locally.make benchmark-intel
: run performance comparison on a GCP Intel chip.make benchmark-amd
: run performance comparison on a GCP AMD chip.make benchmark-arm
: run performance comparison on an AWS Graviton ARM chip.The SHISHUA and SHISHUA-half are under the CC0 license.