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 45nm (1067a); 2009 Intel Core 2 Duo E7600; 2 x 3060MHz; wolfdale, supercop-20260627

[Page version: 20260805 22:02:10]

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 (or StQ1 starting with supercop-20260214), the median of many speed measurements (or StQ2 starting with supercop-20260214), the third quartile of many speed measurements (or StQ3 starting with supercop-20260214), and the name of the primitive. Measurements with large interquartile range (or stabilized interquartile range) 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.804.844.99T:blake2b
4.954.955.00T:k12
5.895.895.89T:blake2s
6.296.396.48T:skein512256
6.436.436.43T:skein512512
6.486.506.55T:blake32
6.446.596.88T:bblake256
7.047.117.15T:blake64
7.217.267.32T:keccakc256treed2
7.347.417.48blake512
8.238.258.26T:skein256256
8.408.448.48blake256
9.299.309.31T:skein10241024
9.339.399.43T:keccakc512treed2
9.589.619.64shake128
9.759.779.79sha512
9.769.789.79sha384
11.1411.1511.17T:keccakc448
11.2111.2211.23sha3224
11.8211.8811.91T:keccakc512
11.8411.9012.00shake256
11.9011.9712.01sha3256
12.6512.6712.69T:keccak
12.9613.0413.07sha256
13.0313.0413.06sha224
15.7615.7715.78T:keccakc768
15.8615.8715.89sha3384
16.9216.9516.98T:jh512
16.9316.9516.96T:jh256
16.9216.9516.98T:jh224
16.9316.9717.01T:jh384
19.9520.0120.11T:round3jh256
19.9720.0220.08T:round3jh512
21.9521.9621.97T:keccakc1024
22.1522.1822.22sha3512
22.1722.2422.31T:groestl256
31.5031.6031.82T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
4.894.894.95T:blake2b
5.235.245.26T:k12
5.925.925.92T:blake2s
6.506.556.57T:skein512256
6.576.576.57T:skein512512
6.676.676.69T:blake32
7.257.277.40T:bblake256
7.387.407.41T:blake64
7.667.697.70blake512
8.368.378.37T:skein256256
8.538.548.56T:keccakc256treed2
8.608.628.62blake256
9.689.689.69T:skein10241024
10.0310.0410.04shake128
10.1210.1310.14T:keccakc512treed2
10.1610.1610.16sha384
10.1610.1610.17sha512
11.6311.6311.64T:keccakc448
11.6311.6311.64sha3224
12.3312.3512.39shake256
12.3412.3612.36T:keccakc512
12.3512.3812.38sha3256
13.1413.1413.15T:keccak
13.3113.3313.35sha256
13.3413.3513.35sha224
15.8515.8515.85T:keccakc768
15.8915.8915.90sha3384
17.2317.2417.24T:jh256
17.2317.2417.25T:jh512
17.2417.2517.25T:jh224
17.2417.2517.27T:jh384
20.3220.3320.37T:round3jh256
20.3320.3420.37T:round3jh512
22.4322.4322.43T:keccakc1024
22.5922.6022.61sha3512
22.9022.9322.94T:groestl256
33.6333.6433.74T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
4.944.974.99T:blake2b
5.705.715.74T:k12
5.965.965.96T:blake2s
6.766.816.81T:skein512256
6.816.826.82T:skein512512
6.926.936.95T:blake32
7.887.917.94T:blake64
8.118.148.16blake512
8.368.408.50T:bblake256
8.568.578.57T:skein256256
8.908.928.92blake256
9.889.899.94T:keccakc256treed2
10.3110.3210.32T:skein10241024
10.7310.7310.74shake128
10.7910.8010.80sha384
10.8110.8110.83sha512
11.3611.3711.43T:keccakc512treed2
11.8011.8011.84sha3224
11.8911.9011.91T:keccakc448
12.7812.8112.82sha3256
12.7812.8212.84shake256
12.8712.8812.90T:keccakc512
13.8313.8413.85sha224
13.8213.8513.86sha256
13.9213.9313.94T:keccak
15.9315.9315.93sha3384
15.9815.9815.99T:keccakc768
17.7117.7117.72T:jh256
17.7217.7217.75T:jh384
17.7117.7417.75T:jh512
17.7317.7517.77T:jh224
20.8620.8820.92T:round3jh256
20.8720.8920.91T:round3jh512
23.2123.2223.23T:keccakc1024
23.2923.2923.31sha3512
24.0224.0524.08T:groestl256
37.0037.0137.09T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
5.675.685.69T:blake2b
6.076.086.08T:blake2s
6.446.476.52T:k12
7.447.457.45T:skein512256
7.457.457.45T:skein512512
7.597.597.61T:blake32
8.408.428.45T:blake64
8.588.608.62blake512
9.079.089.08T:skein256256
9.689.699.70blake256
11.4511.4811.50sha384
11.4911.5211.54sha512
11.5411.5611.58shake128
11.5511.6411.68T:bblake256
13.0913.1013.11T:skein10241024
13.4413.4613.50T:keccakc256treed2
14.3014.3014.33sha3224
14.3114.3214.33sha3256
14.3214.3514.36shake256
14.5814.6114.63T:keccak
14.6614.6714.70T:keccakc512
14.6914.7014.73T:keccakc448
15.1215.1415.17sha224
15.1015.1815.20sha256
17.0717.0817.11sha3384
17.3917.3917.41T:keccakc768
17.6717.6917.85T:keccakc512treed2
18.9519.0019.05T:jh256
18.9619.0519.05T:jh384
18.9719.0619.06T:jh512
19.0319.0719.11T:jh224
22.2722.3322.40T:round3jh256
22.3422.3822.42T:round3jh512
25.4725.4925.51sha3512
25.6325.6425.66T:keccakc1024
27.0727.1027.13T:groestl256
42.4442.4842.53T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
6.916.937.02T:blake2s
12.1512.1712.19T:blake2b
15.3015.3015.32T:skein512256
15.3415.3415.35T:skein512512
15.4115.4115.47T:skein256256
16.0516.0516.16T:blake32
17.7917.9018.06T:blake64
18.0118.0918.13T:k12
19.3819.5819.94blake256
19.4719.6219.70blake512
24.5324.6024.87sha384
24.8024.8324.93sha512
26.6226.6226.78sha3384
26.7026.7526.76sha3256
26.8326.9126.91sha3512
26.8626.9127.01sha3224
26.9627.0127.11shake256
27.0527.0827.19shake128
29.2929.3829.49T:keccakc1024
29.5229.5629.78T:keccak
29.7529.7829.86T:keccakc768
30.0030.0330.13T:keccakc512
30.0630.1430.26T:keccakc448
31.6731.8232.11sha224
32.0532.1932.53sha256
35.0735.2435.31T:jh384
35.0535.2535.48T:jh256
35.1035.2535.25T:jh512
35.2835.4335.51T:jh224
41.1341.3441.70T:round3jh256
41.3941.5642.12T:round3jh512
41.9742.0242.21T:skein10241024
51.0951.6052.37T:bblake256
65.3165.5665.81T:groestl256
82.3382.3882.52T:keccakc256treed2
84.6684.6684.73T:keccakc512treed2
127.93128.19128.55T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
56.6856.7556.91T:blake2s
77.4778.4979.44T:blake32
88.2088.3888.48T:skein256256
89.0690.2991.92blake256
98.2598.2599.12T:blake2b
121.62121.62121.75T:skein512256
122.00122.00122.12T:skein512512
142.38142.40144.89T:k12
145.51145.70146.79sha224
147.02147.56147.98T:blake64
148.34148.70150.52sha256
149.89150.51151.04blake512
196.25196.86199.03sha384
198.67199.51200.50sha512
212.00212.00212.11sha3256
212.25212.53213.40sha3224
213.00213.00213.35sha3384
213.20214.38214.50sha3512
214.34214.80215.02shake256
215.48215.50216.12shake128
235.25235.75236.67T:keccakc1024
236.68237.78239.40T:keccak
239.42239.72240.21T:keccakc768
239.77240.10241.06T:keccakc512
240.00240.55241.78T:keccakc448
281.70283.49286.45T:jh224
283.75285.74286.06T:jh256
283.20286.10286.12T:jh384
285.86286.51286.62T:jh512
331.85333.10333.43T:round3jh256
333.76334.74335.80T:round3jh512
335.27335.85337.29T:skein10241024
339.23341.28345.08T:bblake256
343.44346.01349.48T:groestl256
659.75660.16667.00T:keccakc256treed2
669.25669.29669.79T:keccakc512treed2
1022.531023.571026.57T:groestl512