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

[Page version: 20250506 12:42:51]

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.645.675.74T:bblake512
5.956.036.07T:k12
6.106.116.12T:keccakc512treed2
6.686.726.77blake512
6.957.027.05sha384
7.007.027.07T:bblake256
6.987.067.10sha512
8.028.028.02T:blake2s
8.238.308.48T:blake64
8.328.348.35T:skein512256
8.448.488.50T:skein512512
8.828.909.00T:skein256256
8.898.928.96shake128
9.249.289.30T:blake32
10.1210.1410.20T:keccakc448
10.3810.3910.40sha3224
10.8010.8110.85T:keccakc512
11.0811.1011.11shake256
11.0811.1111.15sha3256
11.1111.2911.43sha256
11.3511.3611.36blake256
11.3711.4511.52sha224
11.6211.6411.68T:keccak
11.6411.6811.69T:skein10241024
11.9711.9912.01T:groestl256
14.4714.4814.48T:keccakc768
14.7214.7314.77sha3384
16.3516.3616.36T:jh224
16.3516.3616.36T:jh384
16.3316.3716.38T:jh512
16.3616.3716.38T:jh256
17.4217.4617.51T:groestl512
18.9918.9918.99T:round3jh256
18.9818.9919.00T:round3jh512
20.0120.0120.02T:keccakc1024
20.4420.5820.65sha3512
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.846.856.88T:bblake512
7.007.017.03blake512
7.937.937.95T:bblake256
8.038.038.03T:blake2s
8.038.048.05sha384
8.078.088.09sha512
8.558.558.56T:skein512256
8.678.688.69T:skein512512
8.688.698.77T:blake64
9.049.049.09T:skein256256
9.339.339.35shake128
9.499.509.51T:blake32
10.5910.5910.62T:keccakc448
10.8010.8010.80sha3224
11.2711.2711.28T:keccakc512
11.5011.5111.51shake256
11.5111.5111.53sha3256
11.5811.5811.58blake256
12.1012.1012.11T:keccak
12.1512.1612.16T:skein10241024
12.3412.3912.42sha256
12.4012.4312.45sha224
12.4612.4712.47T:groestl256
14.5714.5714.57T:keccakc768
14.7914.7914.80sha3384
16.6516.6516.65T:jh384
16.6516.6516.65T:jh224
16.6716.6716.67T:jh256
16.6716.6716.67T:jh512
18.4318.4518.46T:groestl512
19.3419.3419.34T:round3jh256
19.3419.3419.34T:round3jh512
20.4620.4620.47T:keccakc1024
20.9421.0021.00sha3512
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.52blake512
8.068.068.06T:blake2s
8.808.828.84T:bblake512
8.918.928.94T:skein512256
9.019.049.05T:skein512512
9.279.299.37T:blake64
9.289.299.39T:skein256256
9.439.449.45T:bblake256
9.689.749.76sha384
9.709.769.87sha512
9.879.879.88T:blake32
10.0110.0210.04shake128
10.8510.8510.88T:keccakc448
10.9810.9911.01sha3224
11.7711.7811.80T:keccakc512
11.9511.9511.96sha3256
11.9511.9511.96blake256
11.9511.9511.96shake256
12.8412.8512.86T:keccak
12.9412.9512.97T:skein10241024
13.2613.2713.29T:groestl256
13.9313.9414.01sha224
14.0014.0714.09sha256
14.7014.7214.73T:keccakc768
14.8814.8814.88sha3384
17.1517.1517.15T:jh224
17.1517.1517.16T:jh384
17.1617.1617.18T:jh512
17.1717.1817.21T:jh256
19.9219.9219.93T:round3jh256
19.9219.9219.94T:round3jh512
20.0720.0820.09T:groestl512
21.2121.2221.22T:keccakc1024
21.6021.6621.71sha3512
Cycles/byte for 576 bytes
25%50%75%hash
5.805.815.84T:blake2b
7.977.998.16T:k12
8.048.088.16blake512
8.098.108.13T:blake2s
9.039.049.08T:keccakc256treed2
9.849.859.85T:skein512256
9.879.899.92T:skein512512
9.829.9110.10T:skein256256
9.959.9510.07T:blake64
10.8310.8510.87T:blake32
10.9010.9110.96shake128
11.6511.6511.66T:keccakc512treed2
12.9512.9613.00blake256
13.0613.1413.24sha384
13.2513.3913.49sha512
13.4113.4113.45sha3256
13.4313.4313.45shake256
13.4413.4413.46T:bblake512
13.4713.4713.47T:keccakc512
13.4513.4813.58sha3224
13.4713.4913.55T:keccakc448
13.5813.5913.65T:keccak
14.0214.0414.23T:bblake256
15.3415.3515.38T:groestl256
16.0216.0316.03sha3384
16.0716.0816.08T:keccakc768
16.4316.4816.53T:skein10241024
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
21.4721.4721.47T:round3jh256
21.4821.4921.49T:round3jh512
22.9122.9422.98T:groestl512
23.4723.4723.50T:keccakc1024
23.7923.8623.89sha3512
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.7218.8619.98blake512
20.4420.4420.80T:skein512512
21.6721.6922.06T:skein512256
23.1223.2223.83T:blake64
23.3323.5224.81T:blake32
24.1624.3424.77T:k12
25.6425.8026.97blake256
26.1426.1726.20sha3224
26.1726.1926.20sha3384
26.2026.2726.58sha3256
26.3826.4727.31shake256
26.4526.5026.62shake128
26.7026.8627.30sha3512
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
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.6465.8965.98T:groestl512
68.2268.7569.41sha224
68.6969.3470.72sha256
70.7871.7271.83T:bblake256
75.5275.5875.66T: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
123.50124.25127.25blake256
148.50150.00150.25blake512
158.88159.12162.88T:skein512512
172.38172.62174.62T:skein512256
186.38187.00190.25T:blake64
187.62191.88193.50T:k12
207.25207.75209.75sha3224
208.12208.25211.12sha3256
208.50208.75211.12sha3384
209.38210.12213.50shake128
209.50210.38214.25shake256
209.75212.25212.62sha3512
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
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
478.25478.75480.12T:bblake256
485.62494.00495.00sha384
499.88501.25501.62T:groestl512
497.50502.38514.25sha512
604.12604.25613.12T:bblake512