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; Sandy Bridge+AES (206a7); 2011 Intel Xeon E3-1225; 4 x 3100MHz; hydra7, 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: old (bytes,cycles)
Cycles/byte for long messages
25%50%75%hash
3.353.383.42T:blake2b
4.824.955.12T:k12
5.275.315.35T:keccakc256treed2
5.345.355.35T:blake2s
5.245.385.65T:bblake256
5.685.715.74T:blake32
6.176.216.24blake512
6.196.216.25T:skein512256
6.246.276.31T:skein512512
6.346.406.45T:blake64
7.047.097.13T:keccakc512treed2
7.567.567.58blake256
7.937.978.02sha512
7.948.008.06sha384
9.469.499.53shake128
9.619.659.69T:groestl256
9.699.739.81T:skein256256
10.0610.0810.12T:keccakc448
9.9810.1010.17T:skein10241024
10.7810.8110.84T:keccakc512
11.0211.0411.07sha3224
11.4111.4511.49sha256
11.4311.4611.48sha224
11.4611.4911.52T:keccak
11.7511.7911.84shake256
11.7711.8311.87sha3256
12.8812.9012.93T:groestl512
13.0113.0613.11T:jh256
13.0413.0913.14T:jh384
13.0613.1013.15T:jh512
13.0713.1213.15T:jh224
13.52?14.45?16.22?T:keccakc768
15.2915.3415.39T:round3jh256
15.3115.3515.40T:round3jh512
15.6615.7315.78sha3384
20.1020.1320.16T:keccakc1024
21.7921.8321.86sha3512
Cycles/byte for 4096 bytes
25%50%75%hash
3.423.433.44T:blake2b
5.195.225.29T:k12
5.365.365.36T:blake2s
5.835.845.85T:blake32
6.006.026.14T:bblake256
6.276.286.30T:keccakc256treed2
6.346.356.36T:skein512256
6.406.416.41T:skein512512
6.446.456.46blake512
6.636.656.67T:blake64
7.627.637.64T:keccakc512treed2
7.737.737.73blake256
8.698.708.72sha384
8.708.718.72sha512
9.859.869.88T:skein256256
9.919.929.93shake128
10.0810.0810.10T:groestl256
10.4510.4810.50T:skein10241024
10.5010.5110.52T:keccakc448
11.2311.2411.25T:keccakc512
11.4511.4611.46sha3224
11.9011.9111.92T:keccak
12.0812.0812.09sha224
12.0912.1012.11sha256
12.2012.2112.23shake256
12.2212.2312.25sha3256
13.2613.2813.30T:jh256
13.3213.3313.35T:jh384
13.3213.3413.35T:jh512
13.3313.3413.35T:jh224
13.6913.6913.70T:groestl512
14.4714.5015.37T:keccakc768
15.6015.6115.63T:round3jh256
15.6115.6215.63T:round3jh512
15.7215.7515.76sha3384
20.5320.5420.55T:keccakc1024
22.2522.2622.28sha3512
Cycles/byte for 1536 bytes
25%50%75%hash
3.493.503.52T:blake2b
5.385.385.39T:blake2s
5.625.655.72T:k12
6.056.066.09T:blake32
6.556.576.59T:skein512256
6.616.626.64T:skein512512
6.846.856.87blake512
7.047.057.16T:bblake256
7.057.087.10T:blake64
7.327.337.35T:keccakc256treed2
7.987.987.99blake256
8.518.538.53T:keccakc512treed2
9.869.889.89sha384
9.919.929.99sha512
10.0410.0610.08T:skein256256
10.5710.5810.60shake128
10.7210.7310.74T:keccakc448
10.7510.7610.78T:groestl256
11.1211.1811.25T:skein10241024
11.6111.6211.64sha3224
11.6911.7011.71T:keccakc512
12.5712.5912.60T:keccak
12.6312.6512.68sha3256
12.6512.6512.67shake256
13.1013.1113.13sha224
13.1313.1413.16sha256
13.6513.6513.68T:jh256
13.7113.7313.82T:jh384
13.7113.7313.75T:jh512
13.7113.7313.75T:jh224
14.5514.5815.45T:keccakc768
15.0015.0015.01T:groestl512
15.7715.7815.80sha3384
16.0416.0616.10T:round3jh512
16.0416.0816.09T:round3jh256
21.2121.2221.25T:keccakc1024
22.9722.9823.01sha3512
Cycles/byte for 576 bytes
25%50%75%hash
4.084.104.17T:blake2b
5.445.455.45T:blake2s
6.276.306.37T:k12
6.666.686.71T:blake32
7.107.127.14T:skein512256
7.187.227.24T:skein512512
7.307.337.36blake512
7.577.587.62T:blake64
8.678.678.68blake256
10.0110.0410.14T:bblake256
10.1110.1310.16T:keccakc256treed2
10.5210.5510.58T:skein256256
11.3511.3811.39shake128
12.2312.2412.25sha384
12.3112.3612.44sha512
12.5012.5512.63T:groestl256
13.1513.1713.19T:keccak
13.1713.2113.27T:keccakc448
13.2313.2413.28T:keccakc512
13.2513.2713.32T:keccakc512treed2
13.9814.0914.22T:skein10241024
14.0714.1014.12sha3224
14.0814.1214.15sha3256
14.1414.1514.18shake256
14.6314.6714.69T:jh256
14.7314.7614.79T:jh224
14.7614.7714.80T:jh384
14.7614.7914.80T:jh512
15.8015.8516.78T:keccakc768
15.8315.8515.88sha224
15.9115.9415.96sha256
16.8716.9016.95sha3384
17.2017.2217.28T:round3jh256
17.2317.2517.28T:round3jh512
17.2917.3117.33T:groestl512
23.3423.3623.41T:keccakc1024
25.1125.1425.17sha3512
Cycles/byte for 64 bytes
25%50%75%hash
6.166.306.36T:blake2s
8.869.339.48T:blake2b
14.0614.2014.30T:blake32
14.2514.3614.47T:skein512256
14.4414.5514.67T:skein512512
16.3616.5016.58blake512
16.9216.9817.11T:k12
17.0817.2017.41T:skein256256
17.2017.3817.50T:blake64
17.4717.5217.58blake256
26.0826.1626.34T:keccak
26.1426.1926.31sha3224
26.1426.2026.30T:keccakc1024
26.1626.2726.38sha3256
26.1726.2726.42sha3384
26.3326.3926.53shake128
26.3326.4728.20T:keccakc768
26.4826.5326.62T:keccakc448
26.4526.5526.73T:keccakc512
26.7826.8927.06sha3512
26.8626.9227.08shake256
27.3027.4427.55T:jh256
27.6427.8128.02T:jh512
27.8027.8428.02T:jh384
27.7327.8828.11T:jh224
31.8832.0332.36T:round3jh256
32.0932.3632.62T:round3jh512
35.2735.5235.81T:groestl256
45.3045.6646.69T:skein10241024
46.6746.7246.81T:bblake256
46.5246.7547.03sha384
47.5247.9548.94sha512
51.3451.4751.62sha224
51.9852.0852.22T:groestl512
52.2752.4852.72sha256
62.6462.7863.00T:keccakc256treed2
63.3164.4764.88T:keccakc512treed2
Cycles/byte for 8 bytes
25%50%75%hash
53.6253.8854.25T:blake2s
72.2574.2579.12T:blake2b
71.6275.5078.12T:blake32
82.2582.6283.38blake256
97.6298.3899.38T:skein256256
113.38114.25116.62T:skein512256
115.12115.88117.25T:skein512512
131.62132.38133.25blake512
134.88135.38136.50T:k12
137.75139.12140.62T:blake64
207.25208.38209.00T:groestl256
208.00208.75211.62sha3224
208.25208.88209.50sha3384
208.25209.12210.25sha3256
209.50210.38210.88shake128
209.75210.50211.25T:keccak
210.12211.50212.38T:keccakc1024
211.38212.62215.12T:keccakc512
212.12212.62214.75T:keccakc448
211.88213.12226.88T:keccakc768
212.75213.25214.12sha3512
212.75214.00214.75shake256
221.50222.38224.50T:jh256
222.62224.12226.25T:jh224
222.88224.25226.12T:jh512
223.25225.00227.62T:jh384
257.50258.50259.50T:round3jh256
257.75259.25260.62T:round3jh512
305.50306.12309.50T:bblake256
318.25319.38321.00sha224
325.00326.50328.00sha256
362.00363.62374.75T:skein10241024
371.50372.62376.00sha384
378.88380.12387.38sha512
397.38397.88398.75T:groestl512
500.75501.88503.50T:keccakc256treed2
505.00509.75517.38T:keccakc512treed2