VAMPIRE

eBACS: ECRYPT Benchmarking of Cryptographic Systems


ECRYPT II
General information:IntroductioneBASHeBASCeBAEADeBATSSUPERCOPXBXComputersArch
How to submit new software:Tipshashstreamaeaddhkemencryptsign
List of primitives measured:lwcsha3hashstreamlwccaesaraeaddhkemencryptsign
Measurements:lwcsha3hashstreamlwccaesaraeaddhkemencryptsign
List of subroutines:verifydecodeencodesortcorehashblocksxofscalarmult

Measurements of SHA-3 finalists on one machine: aarch64; Cortex-A53 (410fd034); 2018 Broadcom BCM2837B0; 4 x 1400MHz; pi3bplus, supercop-20231107

[Page version: 20240724 17:32:27]

eBASH (ECRYPT Benchmarking of All Submitted Hashes) is a project to measure the performance of hash functions. This page presents an excerpt of the full eBASH benchmark results. The excerpt contains SHA-2 and the SHA-3 finalists, including post-SHA-3 updates such as BLAKE2 and KangarooTwelve.

Each table row lists the first quartile of many speed measurements, the median of many speed measurements, the third quartile of many speed measurements, and the name of the primitive. Measurements with large variance are indicated in red with question marks. The symbol T: (starting with supercop-20200816) means that the SUPERCOP database at the time of benchmarking did not list constant time as a goal for this implementation. The symbol T!!! means that constant time was listed as a goal for this implementation, but that the implementation failed TIMECOP. (TIMECOP failures are not necessarily security issues; they can sometimes be resolved by, e.g., declaring that a rejection-sampling condition is safe to declassify.)

There is a separate page with more information about each hash function (and each implementation).


Implementation notes

Graphs: (bytes,cycles)
Cycles/byte for long messages
25%50%75%hash
6.04?6.10?7.63?T:blake2b
5.80?6.35?7.84?T:k12
6.41?6.41?7.75?T:skein512256
6.41?6.41?7.78?T:skein512512
6.65?6.77?8.73?T:skein256256
8.85?11.08?12.33?sha384
8.42?11.35?11.84?T:blake2s
9.09?11.84?11.90?sha512
9.28?11.96?12.33?T:skein10241024
9.28?12.39?12.63?T:blake64
10.19?12.82?13.12?blake512
10.01?12.94?13.31?shake128
11.32?13.98?14.50?T:keccakc448
12.97?14.71?14.92?sha3224
13.52?14.74?16.17?shake256
12.63?14.89?15.50?T:keccakc512
14.89?15.26?17.55?sha224
13.79?15.44?15.72?sha3256
13.79?15.62?16.69?T:keccak
14.53?16.05?16.97?T:blake32
15.72?16.30?18.01?sha256
17.15?17.52?20.29?T:keccakc768
18.55?18.80?21.82?sha3384
18.62?19.01?21.61?blake256
18.8619.5620.94T:bblake256
23.19?25.15?28.02?T:keccakc1024
26.5227.5928.44sha3512
40.4441.8744.01T:jh256
40.1042.2142.66T:groestl256
40.1642.4843.52T:jh224
40.1042.5444.22T:jh384
40.4742.5443.06T:jh512
48.2249.3251.39T:round3jh512
48.4649.7751.57T:round3jh256
72.6975.2378.22T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
6.07?6.10?6.87?T:blake2b
6.566.567.23T:skein512256
6.566.567.25T:skein512512
6.71?6.74?7.46?T:k12
6.87?6.90?7.86?T:skein256256
9.8910.6210.86T:blake2s
10.8611.5711.60sha512
11.1111.7811.93T:skein10241024
11.3212.0812.21T:blake64
11.9912.5412.66blake512
12.1512.5413.03sha384
12.2112.6012.76shake128
13.2613.7013.93T:keccakc448
14.3314.3714.45sha3224
14.4514.5914.86T:keccakc512
15.1515.1715.50shake256
15.2015.2315.30sha3256
15.3515.3815.87T:keccak
15.6215.6616.11T:blake32
16.7416.7817.15sha256
17.7617.8218.20sha224
18.4018.4618.97T:keccakc768
19.5019.5620.25sha3384
20.0220.0720.63blake256
22.1922.2622.92T:bblake256
25.5426.0626.61T:keccakc1024
27.6628.0828.44sha3512
42.1942.5443.43T:jh256
42.2142.6943.18T:jh224
42.2742.6942.88T:groestl256
42.1842.7243.53T:jh384
42.1842.7642.98T:jh512
49.7149.7750.57T:round3jh512
49.8450.1450.69T:round3jh256
78.8079.2580.22T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
6.106.186.18T:blake2b
6.846.846.84T:skein512256
6.846.846.84T:skein512512
7.087.087.08T:skein256256
7.327.417.49T:k12
9.939.9310.66T:blake2s
11.56?11.56?13.35?sha512
11.80?11.88?13.59?T:skein10241024
12.04?12.13?14.16?T:blake64
12.53?12.53?14.57?blake512
12.53?12.53?14.65?shake128
13.10?13.18?15.54?T:keccakc448
13.67?13.75?15.87?sha3224
14.24?14.32?16.76?T:keccakc512
14.81?14.89?16.93?shake256
14.89?14.89?17.09?sha3256
14.97?15.18?17.33?sha384
15.38?15.38?17.82?T:keccak
15.46?15.54?17.58?T:blake32
16.52?16.52?18.39?sha256
17.66?17.82?20.18?T:keccakc768
18.64?18.72?21.00?sha3384
19.8620.0221.97blake256
20.10?20.47?22.71?sha224
24.8226.7727.02T:bblake256
25.5527.8327.99T:keccakc1024
27.1829.3829.95sha3512
43.7843.7844.76T:jh224
43.7843.7844.76T:jh256
43.7843.7845.08T:jh512
43.7843.8645.08T:jh384
44.1944.1945.17T:groestl256
50.7850.7852.08T:round3jh512
50.7850.7852.16T:round3jh256
85.0485.6187.08T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
6.946.946.94T:blake2b
7.387.607.60T:skein512256
7.387.607.60T:skein512512
7.607.607.60T:skein256256
8.468.688.68T:k12
9.989.9810.20T:blake2s
12.1512.1512.37sha512
12.8013.0213.02T:blake64
13.2413.2413.24blake512
13.4513.4513.67shake128
14.9714.9715.19T:skein10241024
16.2816.2816.49T:keccak
16.2816.2816.71T:keccakc448
16.2816.2816.71T:keccakc512
16.4916.4916.71shake256
16.4916.7116.71sha3224
16.4916.7117.14sha3256
16.9316.9317.14T:blake32
17.8017.8017.80sha256
19.3119.3119.75T:keccakc768
19.9719.9720.18sha3384
21.4821.4821.92blake256
22.14?22.57?25.82?sha384
27.78?28.21?31.68?sha224
28.2128.2131.03T:keccakc1024
29.51?29.73?35.37?sha3512
33.85?33.85?39.28?T:bblake256
44.70?44.70?49.91?T:jh256
44.70?44.70?49.91?T:jh512
44.70?44.70?50.13?T:jh224
44.70?44.70?50.13?T:jh384
46.66?46.88?51.87?T:groestl256
52.3052.3057.29T:round3jh256
52.3054.0457.51T:round3jh512
88.9894.4095.49T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
9.77?11.72?11.72?T:blake2s
13.6713.6713.67T:blake2b
13.67?13.67?15.62?T:skein256256
15.6215.6215.62T:skein512256
15.6215.6215.62T:skein512512
23.4425.3925.39sha512
25.3925.3927.34T:k12
27.3427.3427.34T:blake64
27.3429.3029.30blake512
29.3031.2531.25sha3512
31.2531.2531.25sha3224
31.2531.2531.25sha3256
31.2531.2531.25sha3384
31.2531.2531.25shake128
31.2531.2531.25shake256
33.2033.2035.16T:keccakc1024
33.2033.2035.16sha256
33.2035.1635.16T:keccak
33.2035.1635.16T:keccakc448
33.2035.1635.16T:keccakc512
33.2035.1635.16T:keccakc768
35.1635.1637.11T:blake32
42.9742.9742.97blake256
48.8348.8348.83T:skein10241024
82.0382.0382.03T:jh224
82.0382.0382.03T:jh256
82.0382.0382.03T:jh384
82.0382.0382.03T:jh512
95.7095.7095.70T:round3jh256
95.7095.7095.70T:round3jh512
103.52103.52103.52T:groestl256
121.09123.05128.91sha384
128.91130.86134.77sha224
148.44148.44148.44T:bblake256
218.75?220.70?271.48?T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
78.12?93.75?93.75?T:blake2s
78.12?93.75?93.75?T:skein256256
109.38109.38109.38T:blake2b
125.00125.00125.00T:skein512256
125.00125.00125.00T:skein512512
140.62?156.25?156.25?sha256
156.25171.88171.88T:blake32
187.50187.50203.12blake256
187.50203.12203.12T:k12
203.12203.12203.12sha512
218.75218.75234.38T:blake64
218.75234.38234.38blake512
234.38234.38250.00sha3256
234.38250.00250.00sha3224
234.38250.00250.00sha3384
234.38250.00250.00sha3512
234.38250.00250.00shake128
234.38250.00250.00shake256
265.62265.62281.25T:keccakc1024
265.62281.25281.25T:keccakc448
265.62281.25281.25T:keccakc768
281.25281.25281.25T:keccak
281.25281.25296.88T:keccakc512
390.62390.62390.62T:skein10241024
500.00515.62515.62T:groestl256
656.25656.25656.25T:jh224
656.25656.25656.25T:jh256
656.25656.25656.25T:jh384
656.25656.25656.25T:jh512
765.62765.62765.62T:round3jh256
765.62765.62765.62T:round3jh512
906.25921.88968.75sha224
968.75?968.75?1078.12?sha384
1031.251046.881046.88T:bblake256
1750.001750.001843.75T:groestl512