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; Core 2 65nm (6fb); 2007 Intel Core 2 Duo T7300; 2 x 2000MHz; trident, supercop-20240909

[Page version: 20241017 10:58:48]

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: old (bytes,cycles)
Cycles/byte for long messages
25%50%75%hash
4.804.834.86T:blake2b
4.984.994.99T:k12
6.326.366.44T:skein512512
6.326.376.42T:skein512256
6.987.117.32T:blake64
7.347.387.46blake512
7.397.407.41T:keccakc256treed2
7.998.018.06T:blake2s
8.248.248.26T:skein256256
9.309.389.43T:skein10241024
9.589.699.80shake128
9.709.719.71T:keccakc512treed2
9.749.769.80sha512
9.699.829.91sha384
9.829.9510.00T:blake32
10.4710.5410.63T:bblake256
11.1211.1311.16T:keccakc448
11.2411.2911.33sha3224
11.8411.8711.89T:keccakc512
12.0112.0712.17sha3256
12.0712.1012.12shake256
12.5412.5812.62blake256
12.6512.6612.67T:keccak
13.7313.7513.77sha224
13.5813.7613.90sha256
15.7015.7115.74T:keccakc768
15.9716.0116.02sha3384
17.7817.8117.85T:jh224
17.8117.8517.86T:jh256
17.8317.8517.86T:jh512
17.7017.8518.12T:jh384
20.7420.7720.80T:round3jh512
20.7520.7820.81T:round3jh256
21.9321.9321.95T:keccakc1024
22.2322.2922.32T:groestl256
22.3022.3422.37sha3512
33.2433.2833.34T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
4.884.884.89T:blake2b
5.265.275.27T:k12
6.516.526.55T:skein512512
6.516.546.55T:skein512256
7.367.397.47T:blake64
7.667.677.70blake512
8.038.048.06T:blake2s
8.368.368.36T:skein256256
8.738.738.73T:keccakc256treed2
9.779.789.81T:skein10241024
10.1210.1210.17shake128
10.1110.1610.17T:blake32
10.1710.1710.18sha512
10.1710.2110.24sha384
10.4710.4710.47T:keccakc512treed2
11.4611.4811.50T:bblake256
11.6111.6111.62T:keccakc448
11.6911.7011.71sha3224
12.3612.3612.37T:keccakc512
12.5112.5212.55sha3256
12.5212.5212.53shake256
12.7912.8112.82blake256
13.1413.1413.14T:keccak
14.0714.0814.08sha224
14.0714.0914.15sha256
15.7815.7915.80T:keccakc768
16.0316.0316.04sha3384
18.1118.1318.14T:jh224
18.1218.1318.14T:jh256
18.1418.1518.16T:jh512
18.1618.1718.29T:jh384
21.1021.1221.12T:round3jh512
21.1221.1321.14T:round3jh256
22.4022.4022.40T:keccakc1024
22.7522.7622.77sha3512
22.9322.9522.96T:groestl256
35.1035.1135.12T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
4.944.955.00T:blake2b
5.735.735.73T:k12
6.776.786.79T:skein512512
6.786.806.80T:skein512256
7.887.938.01T:blake64
8.088.108.13T:blake2s
8.148.158.16blake512
8.558.558.55T:skein256256
10.1310.1410.14T:keccakc256treed2
10.4510.4510.45T:skein10241024
10.5010.5110.55T:blake32
10.8310.8510.86sha512
10.8410.8610.97shake128
10.8410.8710.94sha384
11.7611.7711.77T:keccakc512treed2
11.8611.8611.87sha3224
11.8811.8811.90T:keccakc448
12.9212.9212.92T:keccakc512
12.9312.9313.04sha3256
12.9412.9512.95shake256
13.0013.0213.08T:bblake256
13.1713.1813.19blake256
13.9313.9413.94T:keccak
14.6214.6214.83sha256
14.6214.6214.64sha224
15.9115.9215.92T:keccakc768
16.0716.0816.11sha3384
18.6118.6118.62T:jh256
18.6118.6318.63T:jh224
18.6518.6618.66T:jh512
18.6718.6818.83T:jh384
21.6821.7021.72T:round3jh512
21.7021.7121.73T:round3jh256
23.1923.1923.20T:keccakc1024
23.4423.4723.49sha3512
24.0324.0524.07T:groestl256
38.0938.1238.15T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
5.695.695.69T:blake2b
6.436.456.47T:k12
7.487.517.52T:skein512256
7.477.527.52T:skein512512
8.228.228.23T:blake2s
8.518.558.58T:blake64
8.618.648.67blake512
9.099.099.09T:skein256256
11.5011.5211.55T:blake32
11.5911.6111.62sha512
11.5811.6611.68sha384
11.6811.6911.82shake128
13.2813.2913.29T:skein10241024
13.7913.8613.88T:keccakc256treed2
14.2014.2114.21blake256
14.4114.4114.43sha3224
14.4414.4514.73sha3256
14.4714.4814.49shake256
14.6114.6414.65T:keccak
14.7114.7214.73T:keccakc448
14.7514.7614.76T:keccakc512
16.0416.0616.12sha224
16.0516.0916.58sha256
17.2417.2617.27sha3384
17.3017.3017.31T:keccakc768
17.5017.5517.60T:bblake256
18.2818.2818.28T:keccakc512treed2
19.9119.9119.91T:jh256
19.9219.9219.92T:jh224
19.9819.9819.98T:jh512
20.0320.0520.18T:jh384
23.2423.2723.31T:round3jh256
23.2623.2823.31T:round3jh512
25.6025.6025.61T:keccakc1024
25.6425.6425.64sha3512
26.9827.0127.05T:groestl256
42.5742.5942.61T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
9.429.429.50T:blake2s
12.4812.5012.50T:blake2b
15.7215.7215.80T:skein256256
15.7515.8015.89T:skein512256
15.8615.8616.00T:skein512512
18.1618.1618.16T:k12
18.5218.9118.97T:blake64
20.0220.0820.14blake512
24.1624.3924.48T:blake32
25.2825.2825.50sha384
25.5325.5325.66sha512
26.8926.8926.92sha3256
27.0227.0227.03sha3512
27.0227.0227.06sha3224
27.0527.0527.06sha3384
27.2027.2227.31shake256
27.3427.3927.41shake128
27.7327.7327.73blake256
29.2829.3429.38T:keccakc1024
29.5929.6229.70T:keccakc768
29.6729.7729.80T:keccak
30.2330.2330.25T:keccakc448
30.3030.3630.38T:keccakc512
34.0834.1134.25sha224
33.91?34.12?38.95?sha256
37.1737.1737.17T:jh224
37.2037.2037.20T:jh256
37.3437.3437.56T:jh384
37.7337.7337.73T:jh512
42.3942.4842.48T:skein10241024
42.9142.9243.31T:round3jh256
43.0643.1243.41T:round3jh512
64.8364.8664.95T:groestl256
72.9773.2073.80T:bblake256
84.7584.7584.75T:keccakc256treed2
87.3687.3687.36T:keccakc512treed2
116.28116.34116.56T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
76.3876.3877.12T:blake2s
90.1290.1290.12T:skein256256
101.00101.00101.00T:blake2b
110.38111.50112.25T:blake32
122.50123.25124.62blake256
124.88125.50126.12T:skein512256
125.50125.50126.25T:skein512512
145.12145.12148.12T:k12
153.75153.75154.25blake512
153.62154.50155.12T:blake64
155.62156.25156.88sha256
157.75158.88161.00sha224
202.25202.25203.00sha384
204.25204.25205.25sha512
214.25214.25215.62sha3512
214.88215.00216.75sha3384
215.62216.25217.00sha3256
216.25216.25217.12sha3224
217.12217.25218.62shake128
218.38218.50219.50shake256
233.62235.75236.12T:keccakc1024
237.62237.75239.38T:keccakc768
238.25239.12239.50T:keccak
240.88241.00243.00T:keccakc448
243.12243.88244.12T:keccakc512
295.38295.38295.38T:jh256
299.00299.50299.50T:jh224
299.50300.00304.62T:jh384
301.88301.88302.88T:jh512
336.50337.38339.12T:groestl256
338.12338.25338.50T:skein10241024
345.25349.00350.00T:round3jh512
348.12349.50350.25T:round3jh256
478.88481.50485.75T:bblake256
677.88678.00678.00T:keccakc256treed2
691.88691.88692.00T:keccakc512treed2
923.12925.12928.12T:groestl512