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: amd64; Bulldozer (600f20); 2012 AMD FX-8350; 4 x 4000MHz; saber214, supercop-20250307

[Page version: 20250327 13:11:14]

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
4.584.594.59T:keccakc256treed2
5.005.015.01T:blake2b
5.695.755.77T:bblake512
5.956.036.07T:k12
6.106.116.12T:keccakc512treed2
6.716.726.74blake512
7.017.017.02T:bblake256
6.957.027.05sha384
6.987.067.10sha512
8.028.028.02T:blake2s
8.238.308.48T:blake64
8.328.348.36T:skein512256
8.458.488.52T:skein512512
8.828.909.00T:skein256256
9.249.289.30T:blake32
10.1210.1410.20T:keccakc448
10.8010.8110.85T:keccakc512
11.1111.2911.43sha256
11.2711.3211.33shake128
11.3411.3611.39blake256
11.3711.4511.52sha224
11.6211.6411.68T:keccak
11.6411.6811.69T:skein10241024
11.9711.9912.01T:groestl256
13.1913.2113.25sha3224
13.4613.5713.67shake256
14.0814.1114.11sha3256
14.4714.4814.48T:keccakc768
16.3516.3616.36T:jh224
16.3516.3616.36T:jh384
16.3316.3716.38T:jh512
16.3616.3716.38T:jh256
17.4017.4417.45T:groestl512
18.7418.7818.82sha3384
18.9918.9918.99T:round3jh256
18.9818.9919.00T:round3jh512
20.0120.0120.02T:keccakc1024
26.1826.2126.23sha3512
Cycles/byte for 4096 bytes
25%50%75%hash
5.035.035.03T:blake2b
5.485.485.48T:keccakc256treed2
6.396.406.40T:k12
6.616.616.61T:keccakc512treed2
6.886.906.91T:bblake512
7.007.017.01blake512
7.927.927.93T:bblake256
8.038.038.03T:blake2s
8.038.048.05sha384
8.078.088.09sha512
8.558.568.56T:skein512256
8.688.688.69T:skein512512
8.688.698.77T:blake64
9.049.049.09T:skein256256
9.499.509.51T:blake32
10.5910.5910.62T:keccakc448
11.2711.2711.28T:keccakc512
11.5811.5811.60blake256
11.8211.8311.84shake128
12.1012.1012.11T:keccak
12.1512.1612.16T:skein10241024
12.3412.3912.42sha256
12.4012.4312.45sha224
12.4612.4712.47T:groestl256
13.7113.7213.73sha3224
14.0914.1014.15shake256
14.5714.5714.57T:keccakc768
14.6114.6214.62sha3256
16.6516.6516.65T:jh384
16.6516.6516.65T:jh224
16.6716.6716.67T:jh256
16.6716.6716.67T:jh512
18.4118.4318.43T:groestl512
18.7918.8118.83sha3384
19.3419.3419.34T:round3jh256
19.3419.3419.34T:round3jh512
20.4620.4620.47T:keccakc1024
26.7226.7226.72sha3512
Cycles/byte for 1536 bytes
25%50%75%hash
5.055.075.07T:blake2b
6.476.476.47T:keccakc256treed2
6.997.007.06T:k12
7.437.437.44T:keccakc512treed2
7.487.497.49blake512
8.068.068.06T:blake2s
8.828.848.85T:bblake512
8.918.928.93T:skein512256
9.029.049.06T:skein512512
9.279.299.37T:blake64
9.289.299.39T:skein256256
9.439.449.48T:bblake256
9.689.749.76sha384
9.709.769.87sha512
9.879.879.88T:blake32
10.8510.8510.88T:keccakc448
11.7711.7811.80T:keccakc512
11.9511.9611.97blake256
12.6712.6912.71shake128
12.8412.8512.86T:keccak
12.9412.9512.97T:skein10241024
13.2613.2713.29T:groestl256
13.9313.9313.96sha3224
13.9313.9414.01sha224
14.0014.0714.09sha256
14.6814.6914.82shake256
14.7014.7214.73T:keccakc768
15.1415.1615.16sha3256
17.1517.1517.15T:jh224
17.1517.1517.16T:jh384
17.1617.1617.18T:jh512
17.1717.1817.21T:jh256
18.8618.8718.89sha3384
19.9219.9219.93T:round3jh256
19.9219.9219.94T:round3jh512
20.0620.0720.11T:groestl512
21.2121.2221.22T:keccakc1024
27.5727.5927.60sha3512
Cycles/byte for 576 bytes
25%50%75%hash
5.805.815.84T:blake2b
7.977.998.16T:k12
8.018.058.06blake512
8.098.108.13T:blake2s
9.039.049.08T:keccakc256treed2
9.819.859.85T:skein512256
9.839.879.87T:skein512512
9.829.9110.10T:skein256256
9.959.9510.07T:blake64
10.8310.8510.87T:blake32
11.6511.6511.66T:keccakc512treed2
12.9513.0013.00blake256
13.0613.1413.24sha384
13.3513.3613.38T:bblake512
13.2513.3913.49sha512
13.4713.4713.47T:keccakc512
13.4713.4913.55T:keccakc448
13.5813.5913.65T:keccak
13.7313.7413.75shake128
14.0214.0214.03T:bblake256
15.3415.3515.38T:groestl256
16.0716.0816.08T:keccakc768
16.4316.4816.53T:skein10241024
16.7016.7216.96shake256
17.0017.0217.07sha3256
17.0317.0417.07sha3224
17.9117.9618.03sha224
17.9418.1118.22sha256
18.4618.4718.47T:jh384
18.4718.5018.51T:jh224
18.4918.5118.52T:jh512
18.4818.5218.54T:jh256
20.2720.3020.31sha3384
21.4721.4721.47T:round3jh256
21.4821.4921.49T:round3jh512
22.9222.9222.97T:groestl512
23.4723.4723.50T:keccakc1024
30.2030.2630.27sha3512
Cycles/byte for 64 bytes
25%50%75%hash
8.648.668.72T:blake2s
12.1112.1112.17T:blake2b
17.0917.0917.77T:skein256256
18.4818.8818.91blake512
20.4420.4520.80T:skein512512
21.4721.6922.06T:skein512256
23.1223.2223.83T:blake64
23.3323.5224.81T:blake32
24.1624.3424.77T:k12
25.7026.1426.84blake256
28.2528.2528.27T:keccakc1024
28.8828.8929.00T:keccakc512
29.0929.1429.17T:keccakc448
28.8329.3629.59T:keccakc768
29.0929.4829.67T:keccak
31.6731.8131.97sha3384
32.0332.0632.66sha3512
32.2032.2332.67sha3224
32.3932.3932.41sha3256
32.8632.8932.91shake128
33.3433.3633.48shake256
35.0935.1135.12T:jh384
35.1235.1735.97T:jh512
35.1135.2335.89T:jh224
35.1135.2536.02T:jh256
41.0341.0541.05T:round3jh256
41.0841.0941.17T:round3jh512
42.3342.4142.58T:groestl256
52.9153.0553.23T:skein10241024
55.9255.9556.33T:keccakc512treed2
56.5956.9857.06T:keccakc256treed2
60.4760.7761.89sha384
62.0362.6164.12sha512
65.5365.5365.91T:groestl512
68.2268.7569.41sha224
68.6969.3470.72sha256
70.4171.5871.69T:bblake256
74.0374.2075.08T:bblake512
Cycles/byte for 8 bytes
25%50%75%hash
76.5076.7578.50T:blake2s
98.1298.2598.50T:skein256256
100.12100.12100.12T:blake2b
119.88123.00126.25T:blake32
122.62123.25126.50blake256
146.88150.00150.38blake512
159.00162.88163.00T:skein512512
170.25172.62172.88T:skein512256
186.38187.00190.25T:blake64
187.62191.88193.50T:k12
227.12227.12227.25T:keccakc1024
230.38230.50230.62T:keccakc768
230.62230.75234.12T:keccakc512
229.75231.75235.38T:keccak
231.88232.00235.75T:keccakc448
246.25246.62247.75T:groestl256
252.25252.38253.00sha3384
254.62255.38257.25sha3224
257.62257.75257.75sha3512
260.75260.75260.75sha3256
262.38262.62262.75shake128
264.75264.75265.50shake256
281.25281.38282.62T:jh224
281.62282.00282.75T:jh384
282.12282.50286.25T:jh512
282.38282.88286.12T:jh256
336.75337.25340.38T:round3jh256
337.12337.50337.88T:round3jh512
425.00425.25429.62T:skein10241024
447.25447.38447.75T:keccakc512treed2
455.38455.50456.00T:keccakc256treed2
454.88456.38461.88sha224
464.00468.50470.88sha256
469.75473.00473.62T:bblake256
485.62494.00495.00sha384
499.12499.62503.12T:groestl512
497.50502.38514.25sha512
592.25594.12597.12T:bblake512