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-20240909

[Page version: 20241013 18:38:15]

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).


Test results

Graphs: (bytes,cycles)
Cycles/byte for long messages
25%50%75%hash
6.036.056.11T:blake2b
6.32?6.36?7.84?T:k12
6.396.396.40T:skein512512
6.386.396.41T:skein512256
6.756.756.77T:skein256256
9.849.859.89T:blake2s
5.56?10.66?14.80?sha384
10.6410.6610.69T:skein10241024
10.8510.8710.91T:blake64
11.3411.3611.44blake512
5.36?11.60?13.08?sha512
10.41?12.28?14.14?T:keccakc448
7.24?12.37?14.15?shake128
8.30?12.98?16.33?shake256
10.95?13.09?15.19?T:keccakc512
11.63?13.97?16.14?T:keccak
6.70?14.13?18.39?sha3224
14.5114.5514.66T:blake32
2.20?14.92?16.54?sha3256
9.14?15.28?18.77?sha224
6.46?15.65?18.89?sha256
15.72?17.55?20.06?T:keccakc768
18.8618.9218.97blake256
14.08?19.39?20.71?sha3384
19.3819.4419.50T:bblake256
21.51?24.16?27.38?T:keccakc1024
21.79?25.76?30.17?sha3512
38.38?39.82?43.67?T:groestl256
37.68?40.17?44.36?T:jh224
37.58?40.17?44.16?T:jh256
37.39?40.18?44.66?T:jh384
38.71?40.23?44.12?T:jh512
43.71?48.54?52.78?T:round3jh256
43.17?49.22?52.80?T:round3jh512
70.01?77.73?84.97?T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
6.076.076.10T:blake2b
6.546.556.55T:skein512256
6.556.556.55T:skein512512
6.756.767.49T:k12
6.876.876.88T:skein256256
9.869.879.89T:blake2s
11.1011.1111.12T:skein10241024
11.3111.3211.34T:blake64
10.86?11.51?12.17?sha512
11.7911.7911.84blake512
11.39?12.15?13.01?shake128
11.84?12.70?14.29?sha384
12.7912.8313.74T:keccakc448
13.6013.6414.67T:keccakc512
12.99?13.83?15.91?sha3224
14.4514.5015.56T:keccak
13.83?14.64?15.40?sha3256
13.8214.6615.30shake256
14.8614.8614.91T:blake32
16.1416.8517.66sha256
17.4917.5918.83T:keccakc768
17.0817.9518.88sha224
17.8818.6819.31sha3384
19.2919.3019.32blake256
21.4721.4821.50T:bblake256
24.6424.7126.27T:keccakc1024
25.2526.5827.92sha3512
40.7740.8042.89T:jh224
40.7740.8142.79T:jh256
40.7740.8243.04T:jh384
40.8040.8342.74T:groestl256
40.7740.8442.77T:jh512
47.6749.6750.61T:round3jh512
47.7049.6950.62T:round3jh256
78.1381.1581.95T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
6.116.116.11T:blake2b
6.816.816.81T:skein512512
6.806.816.82T:skein512256
7.067.067.07T:skein256256
7.437.447.46T:k12
9.909.909.90T:blake2s
11.53?11.54?13.59?sha512
11.8511.8511.86T:skein10241024
12.0712.0712.08T:blake64
12.15?12.21?15.77?shake128
12.5212.5212.52blake512
13.1113.1313.36T:keccakc448
13.16?13.21?19.36?sha3224
14.2114.2315.56T:keccakc512
14.29?14.32?18.82?shake256
14.28?14.32?19.10?sha3256
15.3315.3515.68T:keccak
15.3815.3915.40T:blake32
16.65?16.68?18.80?sha256
15.39?17.20?24.66?sha384
17.67?17.73?22.18?T:keccakc768
17.93?18.23?24.85?sha3384
19.9119.9219.94blake256
20.36?22.36?32.05?sha224
24.8624.8724.92T:bblake256
25.5225.5728.15T:keccakc1024
25.97?28.03?30.31?sha3512
41.8641.8643.66T:jh384
41.8541.8743.99T:jh256
41.8541.8744.30T:jh224
41.8541.8843.78T:jh512
42.4842.5044.34T:groestl256
48.9450.7552.42T:round3jh512
49.0250.7852.74T:round3jh256
81.5788.0189.05T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
6.866.866.86T:blake2b
7.487.497.49T:skein512256
7.507.507.51T:skein512512
7.597.597.61T:skein256256
8.648.698.78T:k12
9.979.979.98T:blake2s
12.1612.1812.19sha512
12.8812.8812.90T:blake64
13.0313.0413.15shake128
13.1713.1913.21blake512
15.0115.0315.04T:skein10241024
15.8815.9216.08sha3224
15.9015.9416.62sha3256
15.93?15.96?19.61?shake256
16.2016.2016.52T:keccakc512
16.2016.2116.53T:keccakc448
16.2216.2216.45T:keccak
16.7616.7916.83T:blake32
17.9117.9819.26sha256
19.13?19.18?21.39?sha3384
19.2719.3420.05T:keccakc768
21.5621.5821.63blake256
23.24?23.85?31.90?sha384
28.2028.2529.44T:keccakc1024
28.32?28.37?36.47?sha3512
28.27?29.51?41.68?sha224
33.8533.8733.91T:bblake256
44.7244.7444.92T:jh224
44.7344.7445.97T:jh512
44.72?44.75?50.55?T:jh256
44.7444.7545.90T:jh384
46.9746.9848.59T:groestl256
52.29?52.53?65.78?T:round3jh256
52.28?52.93?85.64?T:round3jh512
88.91?97.43?100.14?T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
10.7510.7810.78T:blake2s
13.2813.2813.28T:blake2b
14.1714.1714.17T:skein256256
15.4515.4815.48T:skein512256
15.5815.6115.61T:skein512512
24.4524.4524.45sha512
26.8127.2027.98T:k12
27.4827.5227.52T:blake64
27.8127.8427.84blake512
29.0929.0929.38sha3256
29.1229.1231.55sha3384
29.1229.1730.30sha3224
29.2329.2330.84sha3512
29.4529.4529.94shake256
29.5829.5829.95shake128
33.4233.4737.06T:keccakc1024
33.9533.9735.45T:keccakc768
34.1634.1935.94T:keccakc512
34.1634.2734.45T:keccak
34.3034.3135.27T:keccakc448
34.3034.3334.58sha256
34.3334.3334.33T:blake32
42.6642.6942.86blake256
48.9148.9148.91T:skein10241024
81.3981.4181.64T:jh224
81.4281.4281.84T:jh384
81.4481.4581.70T:jh512
81.3481.4781.84T:jh256
95.0395.0395.55T:round3jh512
94.9195.1795.33T:round3jh256
103.77103.81104.14T:groestl256
129.08?130.72?147.67?sha384
131.25133.08143.36sha224
148.94149.05149.31T:bblake256
222.86?243.27?259.09?T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
85.0085.2585.38T:blake2s
85.5085.5085.50T:skein256256
105.12105.12105.12T:blake2b
122.62123.12123.12T:skein512256
123.50124.00124.00T:skein512512
150.25150.25152.00sha256
153.50153.50153.50T:blake32
190.88190.88191.25blake256
197.00197.00198.75sha512
209.62211.00213.38T:k12
221.12221.38221.38T:blake64
224.25224.50225.00blake512
228.12228.12231.88sha3384
228.25228.25237.50sha3256
228.88229.00229.12sha3224
229.00229.00229.62sha3512
231.12231.25236.62shake256
231.75231.75237.25shake128
269.75269.75276.62T:keccakc1024
272.88273.00281.88T:keccakc768
273.00273.38277.50T:keccakc512
274.12274.25274.38T:keccakc448
274.25275.00279.62T:keccak
390.88390.88391.00T:skein10241024
508.62509.50534.12T:groestl256
652.25652.25652.50T:jh256
652.88652.88655.50T:jh384
653.12653.12656.12T:jh512
652.75653.25659.62T:jh224
760.75760.75771.00T:round3jh256
761.75761.75771.50T:round3jh512
935.88?944.00?1071.00?sha224
1038.381039.621041.75T:bblake256
1033.381045.001112.38sha384
1801.38?2028.12?2130.00?T:groestl512