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

[Page version: 20241107 11:35:05]

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.594.604.62T:keccakc256treed2
5.005.015.01T:blake2b
5.635.765.84T:bblake512
5.975.985.98T:k12
6.106.116.11T:keccakc512treed2
6.706.716.73blake512
6.957.017.07T:bblake256
6.26?7.02?8.34?sha512
6.997.067.10sha384
8.028.028.02T:blake2s
8.238.308.31T:blake64
8.318.328.34T:skein512256
8.468.478.47T:skein512512
8.819.289.52T:blake32
8.829.289.32T:skein256256
11.0311.0511.05shake256
11.3111.3411.35shake128
11.3511.3611.36blake256
11.3211.4911.65sha256
11.4011.5411.62sha224
11.6411.6711.68T:skein10241024
11.8911.9612.07T:groestl256
12.9112.9412.95T:keccakc448
13.1813.2013.22sha3224
13.9113.9513.96T:keccakc512
14.0614.1014.12sha3256
14.7714.8114.85T:keccak
16.3516.3616.37T:jh384
16.3416.3616.38T:jh512
16.3616.3716.56T:jh224
16.3716.3716.37T:jh256
17.4117.4417.48T:groestl512
18.7718.7918.79sha3384
18.7518.7918.83T:keccakc768
18.9718.9819.01T:round3jh512
18.9918.9919.00T:round3jh256
25.7925.8125.85T:keccakc1024
26.1826.2026.21sha3512
Cycles/byte for 4096 bytes
25%50%75%hash
5.035.035.03T:blake2b
5.495.495.49T:keccakc256treed2
6.356.356.35T:k12
6.606.616.61T:keccakc512treed2
6.866.906.93T:bblake512
7.007.017.01blake512
7.927.937.95T:bblake256
8.038.038.04T:blake2s
8.048.078.71sha512
8.058.088.09sha384
8.558.568.56T:skein512256
8.678.678.67T:skein512512
8.688.698.69T:blake64
9.059.249.25T:skein256256
9.279.509.50T:blake32
11.4511.4511.45shake256
11.5811.5811.58blake256
11.8511.8511.86shake128
12.1412.1512.15T:skein10241024
12.4112.4412.46sha224
12.4112.4512.50sha256
12.4412.4612.51T:groestl256
13.4613.4713.47T:keccakc448
13.7113.7113.72sha3224
14.5214.5314.53T:keccakc512
14.6014.6114.62sha3256
15.3315.3315.35T:keccak
16.6516.6516.66T:jh512
16.6616.6616.67T:jh384
16.6716.6716.76T:jh224
16.6716.6716.67T:jh256
18.4318.4418.46T:groestl512
18.8218.8218.82sha3384
18.8418.8518.86T:keccakc768
19.3419.3419.34T:round3jh256
19.3419.3419.35T:round3jh512
26.4126.4226.43T:keccakc1024
26.7026.7126.71sha3512
Cycles/byte for 1536 bytes
25%50%75%hash
5.055.075.07T:blake2b
6.466.476.47T:keccakc256treed2
6.976.976.98T:k12
7.437.437.45T:keccakc512treed2
7.487.497.49blake512
8.068.068.06T:blake2s
8.808.858.88T:bblake512
8.928.948.96T:skein512256
9.039.049.06T:skein512512
9.269.299.39T:skein256256
9.329.339.38T:blake64
9.449.449.54T:bblake256
9.689.719.75sha384
9.699.7910.55sha512
9.659.879.87T:blake32
11.9211.9211.94shake256
11.9511.9511.95blake256
12.6712.6812.70shake128
12.9412.9512.98T:skein10241024
13.2713.2713.33T:groestl256
13.7213.7213.78T:keccakc448
13.9513.9513.96sha3224
13.8813.9914.03sha224
13.9314.0814.17sha256
15.1215.1415.14sha3256
15.1415.1815.25T:keccakc512
16.1916.2216.24T:keccak
17.1517.1617.18T:jh512
17.1617.1617.18T:jh224
17.1617.1717.17T:jh256
17.1717.1717.18T:jh384
18.8718.8718.89sha3384
18.9618.9718.98T:keccakc768
19.9219.9219.92T:round3jh256
19.9219.9319.96T:round3jh512
20.0620.0920.10T:groestl512
27.4127.4227.42T:keccakc1024
27.5727.5827.59sha3512
Cycles/byte for 576 bytes
25%50%75%hash
5.805.815.87T:blake2b
7.957.967.98T:k12
8.028.068.07blake512
8.098.108.14T:blake2s
9.079.079.14T:keccakc256treed2
9.829.879.87T:skein512512
9.859.889.92T:skein512256
9.9810.0410.09T:blake64
9.9310.1910.28T:skein256256
10.6210.8410.84T:blake32
11.6511.6511.65T:keccakc512treed2
12.9413.0013.00blake256
13.1713.2113.22sha384
13.3213.3313.38T:bblake512
13.2413.4014.40sha512
13.3813.4213.43shake256
13.6213.6313.66shake128
14.0214.0314.07T:bblake256
15.3515.3915.42T:groestl256
16.4316.4516.47T:skein10241024
16.9116.9416.97T:keccakc448
16.9416.9716.97T:keccak
16.9516.9917.06sha3256
17.0017.0217.04sha3224
17.2017.2517.31T:keccakc512
17.7017.9417.97sha224
18.1218.1818.25sha256
18.4718.4718.48T:jh224
18.4818.4818.49T:jh256
18.4618.5118.53T:jh512
18.5718.5718.61T:jh384
20.3020.3020.31sha3384
20.3920.4020.48T:keccakc768
21.4721.4721.47T:round3jh256
21.4821.4821.48T:round3jh512
22.8822.9323.01T:groestl512
30.1730.2030.25sha3512
30.4330.4430.45T:keccakc1024
Cycles/byte for 64 bytes
25%50%75%hash
8.648.668.70T:blake2s
12.0912.1112.80T:blake2b
18.0918.0918.16T:skein256256
18.2718.8818.91blake512
20.4420.4520.80T:skein512512
21.6921.7822.11T:skein512256
23.1223.2024.20T:blake64
23.9523.9724.27T:k12
23.9524.1124.62T:blake32
25.6425.6725.73blake256
26.3126.6926.95shake256
31.7331.8131.94sha3384
31.7831.9232.59sha3256
32.0032.0232.31shake128
32.0032.0532.05sha3512
32.2032.3033.09sha3224
33.2233.3933.53T:keccakc768
33.3933.4233.45T:keccakc448
33.6933.6933.69T:keccak
35.1135.1135.48T:jh224
35.1235.1735.94T:jh512
35.1735.1935.30T:jh384
35.2035.2735.53T:jh256
35.6635.8036.69T:keccakc512
37.3637.3937.45T:keccakc1024
41.0341.0541.50T:round3jh256
41.0841.1141.12T:round3jh512
42.3842.5042.52T:groestl256
53.1953.2253.58T:skein10241024
55.9155.9256.34T:keccakc512treed2
57.0257.0257.64T:keccakc256treed2
60.2560.4861.39sha384
62.3162.8466.72sha512
65.6466.2066.50T:groestl512
67.8968.4570.28sha224
71.5671.6171.73T:bblake256
70.1771.9572.31sha256
74.2074.2374.98T:bblake512
Cycles/byte for 8 bytes
25%50%75%hash
76.5076.8877.25T:blake2s
98.1298.2598.88T:skein256256
100.12100.12100.12T:blake2b
112.00113.38115.25T:blake32
122.50122.62123.38blake256
148.12150.12151.00blake512
159.00159.12163.00T:skein512512
172.62173.25174.25T:skein512256
186.00187.62192.50T:blake64
188.88189.12189.62T:k12
209.50211.00214.88shake256
248.62250.00250.75T:groestl256
252.25252.50252.88sha3384
253.00254.62255.88sha3256
255.12255.50257.12sha3224
255.00256.62257.50shake128
256.75257.62257.75sha3512
263.75264.00268.50T:keccakc448
267.00268.12269.75T:keccakc768
269.62269.62269.62T:keccak
281.88282.00282.75T:jh224
281.25282.12285.25T:jh512
282.62283.38285.75T:jh256
283.00283.88285.62T:jh384
283.88288.38289.75T:keccakc512
300.88301.25303.12T:keccakc1024
336.75336.75339.50T:round3jh256
337.00337.12340.25T:round3jh512
423.12423.25428.75T:skein10241024
447.12447.25447.25T:keccakc512treed2
454.12454.12457.38T:keccakc256treed2
449.12460.75463.38sha224
460.75469.88472.62sha256
475.12477.75479.00T:bblake256
487.62490.75491.38sha384
496.75498.12546.75sha512
501.62503.12506.12T:groestl512
593.75594.88597.88T:bblake512