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; Tremont (906c0); 2021 Intel Pentium Silver N6000; 4 x 1100MHz; jasper, supercop-20241022

[Page version: 20241120 00:41:20]

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
2.092.102.10sha224
2.102.102.11sha256
5.275.295.32T:k12
5.355.465.51T:blake2b
5.465.495.52T:blake2s
6.216.306.48T:blake32
7.067.117.15T:bblake256
7.527.557.58T:skein512512
7.547.587.60T:skein512256
7.777.817.83T:blake64
8.268.278.28T:keccakc256treed2
8.338.378.41blake256
8.528.588.62blake512
9.189.209.22T:skein10241024
9.939.959.96T:skein256256
9.7610.0010.28shake128
10.3210.4410.54sha384
10.3410.4810.57sha512
11.0111.0211.03T:keccakc512treed2
11.5411.6011.62T:keccakc448
12.0012.0212.04sha3224
12.3212.3512.39shake256
12.3112.3612.40sha3256
12.3912.4112.43T:keccakc512
13.1913.2213.26T:keccak
13.3613.4813.52T:groestl256
16.4616.4916.54T:keccakc768
16.4316.5916.63sha3384
19.0319.0619.13T:groestl512
20.3420.3820.44T:jh512
20.3820.3920.40T:jh256
20.3920.4020.42T:jh224
20.3520.4020.45T:jh384
22.8222.8622.88sha3512
23.0923.1623.25T:keccakc1024
23.9023.9123.98T:round3jh256
23.9723.9823.99T:round3jh512
Cycles/byte for 4096 bytes
25%50%75%hash
2.172.172.17sha224
2.172.172.18sha256
5.455.495.51T:blake2b
5.495.505.51T:blake2s
5.545.555.56T:k12
6.426.456.53T:blake32
7.727.737.74T:skein512256
7.737.747.75T:bblake256
7.757.767.77T:skein512512
8.068.078.08T:blake64
8.548.558.56blake256
8.878.898.90blake512
9.549.559.56T:skein10241024
9.769.779.77T:keccakc256treed2
10.0610.0710.07T:skein256256
10.5310.5710.66shake128
10.8010.8510.88sha384
10.8510.8810.90sha512
11.8211.8211.82T:keccakc512treed2
12.0812.0912.10T:keccakc448
12.4612.4612.47sha3224
12.9112.9112.92T:keccakc512
12.9512.9512.97shake256
12.9412.9612.97sha3256
13.7213.7213.74T:keccak
14.0314.0814.09T:groestl256
16.5916.6016.61T:keccakc768
16.6116.6116.61sha3384
20.2520.2620.29T:groestl512
20.7520.7620.76T:jh256
20.7420.7620.78T:jh512
20.7420.7620.78T:jh384
20.7620.7620.76T:jh224
23.4423.4523.46sha3512
23.6723.6923.73T:keccakc1024
24.3324.3424.37T:round3jh256
24.3724.3724.37T:round3jh512
Cycles/byte for 1536 bytes
25%50%75%hash
2.292.292.30sha224
2.292.292.30sha256
5.525.525.53T:blake2s
5.505.545.56T:blake2b
5.975.985.99T:k12
6.666.686.74T:blake32
7.967.987.99T:skein512256
8.078.098.10T:skein512512
8.498.518.53T:blake64
8.788.818.84T:bblake256
8.808.818.83blake256
9.389.399.42blake512
10.1410.1510.16T:skein10241024
10.2610.2710.28T:skein256256
11.3311.3411.34T:keccakc256treed2
11.4711.5111.54sha384
11.5011.5411.70shake128
11.5111.5411.57sha512
12.3912.3912.39T:keccakc448
12.6312.6312.65sha3224
13.1413.1513.15T:keccakc512treed2
13.4913.4913.50T:keccakc512
13.6513.6713.69shake256
13.6813.7013.72sha3256
14.5514.5614.57T:keccak
15.0415.0515.07T:groestl256
16.7616.7716.77T:keccakc768
16.9116.9216.96sha3384
21.2821.2921.32T:jh224
21.2921.3021.31T:jh256
21.2921.3121.32T:jh384
21.3021.3321.33T:jh512
22.2622.2722.29T:groestl512
24.4424.4524.47sha3512
24.5424.5424.57T:keccakc1024
25.0025.0025.01T:round3jh256
24.9725.0125.01T:round3jh512
Cycles/byte for 576 bytes
25%50%75%hash
2.632.632.63sha256
2.622.632.64sha224
5.555.565.58T:blake2s
6.236.236.27T:blake2b
6.556.566.57T:k12
7.277.297.32T:blake32
8.598.608.61T:skein512256
8.878.898.94T:blake64
8.878.908.92T:skein512512
9.459.479.50blake256
9.709.749.78blake512
10.8410.8910.91T:skein256256
11.7011.7411.79T:bblake256
12.1612.2112.24sha384
12.2012.2712.29sha512
12.8112.8212.84T:skein10241024
13.0513.1213.28shake128
15.3015.3115.33sha3224
15.3615.3815.39T:keccakc448
15.4315.4315.46T:keccak
15.4615.4615.47T:keccakc512
15.5115.5215.53T:keccakc256treed2
15.9515.9916.04shake256
15.9816.0116.06sha3256
17.6717.6717.69T:groestl256
18.3618.3718.38T:keccakc768
18.7118.8618.90sha3384
20.3420.3420.36T:keccakc512treed2
22.7422.7722.79T:jh224
22.7722.7822.82T:jh256
22.7722.7922.80T:jh384
22.7722.7922.83T:jh512
25.4625.4825.51T:groestl512
26.6926.6926.72T:round3jh512
26.6926.6926.73T:round3jh256
27.1527.1727.19T:keccakc1024
27.4627.5027.54sha3512
Cycles/byte for 64 bytes
25%50%75%hash
6.036.066.12T:blake2s
6.726.756.83sha224
6.806.917.11sha256
12.4212.5012.50T:blake2b
15.4715.5515.88T:blake32
16.5316.6716.91T:skein512256
16.9817.0517.38T:k12
17.5917.7518.03T:blake64
18.0818.0918.12T:skein256256
17.9118.1918.45blake256
18.7818.8419.06blake512
19.0819.1119.31T:skein512512
25.6225.7726.00sha384
25.9426.1226.25sha512
27.9527.9728.02sha3224
33.0333.0633.11T:keccak
33.1233.1733.19T:keccakc1024
33.2733.3033.30T:keccakc448
33.2833.3133.31T:keccakc768
33.3833.3833.38T:keccakc512
37.8037.9538.44shake128
37.9138.2038.47shake256
37.9438.2238.58sha3384
38.0638.2338.91sha3256
38.3138.5938.92sha3512
41.3041.5341.56T:skein10241024
41.6641.7241.84T:jh224
41.6941.7341.83T:jh384
41.7241.7341.97T:jh512
41.7541.8141.89T:jh256
48.3948.3948.52T:round3jh256
48.4548.5348.73T:round3jh512
49.1649.3949.78T:bblake256
51.2051.3651.84T:groestl256
77.0877.2777.39T:groestl512
94.6994.7794.80T:keccakc512treed2
95.0895.0895.14T:keccakc256treed2
Cycles/byte for 8 bytes
25%50%75%hash
35.8836.0036.38sha224
38.12?40.00?42.88?sha256
49.0049.5050.00T:blake2s
75.2575.8877.75T:blake32
81.7585.2586.38blake256
99.5099.88100.38T:blake2b
113.62114.00115.25T:skein256256
131.62132.00134.12T:skein512256
137.00138.88141.88T:k12
141.50142.12143.38T:blake64
151.00152.12154.50blake512
151.88152.25153.88T:skein512512
202.12203.00205.12sha384
204.62206.62208.12sha512
223.62223.62224.25sha3224
264.88265.38265.50T:keccakc1024
265.00265.62266.25T:keccakc768
265.62266.12266.38T:keccak
266.00266.25267.12T:keccakc512
267.75267.75267.75T:keccakc448
304.12306.50308.50sha3384
306.00306.50308.38shake128
305.75306.88307.50T:groestl256
304.75307.88313.50sha3256
305.75307.88310.38shake256
307.00308.50313.75sha3512
330.88332.62335.00T:bblake256
332.12333.75335.62T:skein10241024
336.62337.38338.00T:jh384
335.38338.12338.50T:jh256
338.25338.38339.25T:jh512
338.38338.62338.88T:jh224
388.62389.25389.38T:round3jh256
389.50389.62390.50T:round3jh512
620.62621.75623.25T:groestl512
757.50757.62758.75T:keccakc512treed2
759.38759.75760.88T:keccakc256treed2