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; Bonnell (30661); 2011 Intel Atom D2500; 2 x 1866MHz; h8atom, supercop-20240808

[Page version: 20240828 00:45: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).


Implementation notes

Graphs: old (bytes,cycles)
Cycles/byte for long messages
25%50%75%hash
7.327.327.32T:blake2b
9.649.659.66T:skein512256
9.749.759.75T:k12
9.759.769.97T:skein512512
11.2511.2511.26T:skein256256
11.7311.7311.74T:blake2s
11.9312.0912.10T:blake32
12.2212.2712.28T:blake64
12.8013.5713.79blake512
14.0014.1114.23blake256
14.2114.2714.36sha512
14.1714.3114.49sha384
14.7614.7715.24T:keccakc256treed2
15.7916.0116.17T:bblake256
17.8717.8817.88T:skein10241024
18.3118.4118.47sha256
18.3918.4318.46sha224
18.8018.8118.82shake128
20.0520.0620.07T:keccakc512treed2
20.9820.9920.99T:keccakc448
21.8021.8421.87sha3224
22.4322.4322.44T:keccakc512
23.3723.4024.54sha3256
24.0624.0724.07T:keccak
24.3524.7425.50shake256
28.0928.0928.10T:jh256
28.0928.1028.10T:jh224
28.0928.1028.10T:jh512
28.0928.1028.11T:jh384
29.9329.9429.95T:keccakc768
30.2730.2830.29T:round3jh512
30.2730.2830.30T:round3jh256
31.0331.0731.10sha3384
41.9041.9141.92T:keccakc1024
43.4045.7746.46sha3512
85.0386.3388.33T:groestl256
131.22131.76132.11T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
7.377.377.37T:blake2b
9.869.869.87T:skein512256
10.0010.0010.11T:skein512512
10.3610.3610.36T:k12
11.4511.4511.46T:skein256256
11.7611.7611.76T:blake2s
12.4112.4112.41T:blake32
12.7312.7312.73T:blake64
13.7613.9414.04blake512
14.4214.4614.50blake256
16.5316.5416.61sha384
16.5816.5916.60sha512
17.2017.2517.33T:bblake256
17.4517.4617.69T:keccakc256treed2
18.6318.6318.64T:skein10241024
19.6319.6319.64shake128
20.4420.4520.46sha224
20.4720.4720.48sha256
21.5421.5421.54T:keccakc512treed2
21.9321.9421.94T:keccakc448
22.6422.6422.66sha3224
23.4323.4323.43T:keccakc512
24.1824.1924.76sha3256
24.6824.8725.25shake256
25.0125.0125.02T:keccak
28.5828.5828.58T:jh256
28.5828.5828.59T:jh224
28.5828.5928.59T:jh384
28.5928.5928.59T:jh512
30.1530.1630.16T:keccakc768
30.8130.8130.82T:round3jh256
30.8230.8230.83T:round3jh512
31.1031.1031.12sha3384
42.8742.8742.87T:keccakc1024
44.2445.4145.75sha3512
88.2488.3889.32T:groestl256
138.06138.12138.26T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
7.437.447.44T:blake2b
10.2210.2310.31T:skein512256
10.4010.4010.40T:skein512512
11.3911.3911.39T:k12
11.7911.7911.79T:skein256256
11.8011.8111.81T:blake2s
12.9412.9412.94T:blake32
13.5313.5813.58T:blake64
14.6614.6615.11blake512
14.9615.0015.04blake256
19.3619.3619.37T:bblake256
19.9019.9019.90T:skein10241024
20.2720.3220.34sha384
20.3320.3420.34T:keccakc256treed2
20.4220.5020.54sha512
21.0021.0121.03shake128
22.5122.5122.51T:keccakc448
22.9422.9423.62sha3224
23.7723.8123.85sha224
23.8923.9323.96sha256
23.9923.9924.00T:keccakc512treed2
24.5824.5824.59T:keccakc512
25.0125.0125.02sha3256
25.0425.0425.06shake256
26.5826.5826.59T:keccak
29.3829.3829.38T:jh256
29.4029.4029.41T:jh224
29.4029.4029.41T:jh384
29.4129.4129.43T:jh512
30.5030.5030.51T:keccakc768
31.1831.1831.19sha3384
31.7031.7031.71T:round3jh256
31.7331.7331.74T:round3jh512
44.4644.4644.47T:keccakc1024
45.5845.5945.64sha3512
91.6291.7292.99T:groestl256
148.55148.60148.70T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
8.398.398.39T:blake2b
11.1611.1811.31T:skein512256
11.4711.4711.47T:skein512512
11.9111.9111.93T:blake2s
12.6812.6812.69T:skein256256
13.0213.0313.03T:k12
14.3414.3414.35T:blake32
14.5214.5314.56T:blake64
15.5915.6215.64blake512
16.4116.4216.52blake256
22.5922.6022.87shake128
25.2525.2825.30T:bblake256
25.2825.2825.33T:skein10241024
27.8927.9027.91T:keccakc448
27.9427.9427.94sha3256
27.9627.9628.00T:keccakc256treed2
28.0028.0028.02shake256
28.2628.2728.28T:keccakc512
28.2828.2828.29T:keccak
28.5728.6228.70sha384
28.3928.7828.96sha3224
29.0829.1829.30sha512
31.5231.5231.52T:jh256
31.5731.5931.59T:jh224
31.5931.5931.60T:jh384
31.6131.6231.62T:jh512
32.9733.1333.29sha224
33.2333.3133.38sha256
33.4133.4133.42T:keccakc768
33.5733.8634.37sha3384
34.0634.0634.06T:round3jh256
34.1534.1534.15T:round3jh512
37.0537.0537.05T:keccakc512treed2
49.1749.1749.18T:keccakc1024
49.8049.8149.83sha3512
101.00101.48102.44T:groestl256
162.19162.41163.22T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
13.2313.2313.89T:blake2s
16.6216.6216.62T:blake2b
22.5322.6422.97T:skein512256
23.7323.7323.84T:skein256256
24.0624.1724.17T:skein512512
31.6131.7231.72T:blake64
31.9432.0532.05T:blake32
34.4534.4534.67blake512
34.7834.7834.89blake256
38.8339.0539.05T:k12
51.6251.6253.16sha3256
51.7351.7351.73sha3384
51.8451.8451.95sha3512
52.0652.0652.17shake256
51.8452.5053.59sha3224
52.3952.6153.48shake128
58.7358.7358.73T:jh256
59.1759.2859.28T:jh224
59.2859.2859.39T:jh384
59.5059.6159.72T:jh512
59.7259.7259.72T:keccakc448
60.3860.4860.59T:keccakc1024
60.8160.8160.81T:keccakc512
61.8061.9161.91T:keccakc768
63.3363.3363.44T:keccak
64.0964.2064.20T:round3jh256
64.8664.8664.86T:round3jh512
82.9182.9182.91T:skein10241024
99.97100.19100.52T:bblake256
141.97142.84143.28sha384
146.45146.67149.41sha224
146.56147.00148.09sha512
148.86149.52150.39sha256
172.05172.16172.38T:keccakc256treed2
172.81172.81172.92T:keccakc512treed2
220.72222.69223.02T:groestl256
402.17402.50402.72T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
107.62108.50112.00T:blake2s
130.38131.25131.25T:blake2b
140.88140.88142.62T:skein256256
161.00161.88163.62T:blake32
165.38166.25168.00blake256
179.38180.25183.75T:skein512256
190.75190.75191.62T:skein512512
259.88260.75260.75T:blake64
276.50278.25280.88blake512
308.00308.00308.00T:k12
411.25411.25413.88sha3256
412.12413.00423.50sha3384
409.50413.88422.62sha3224
413.88414.75417.38shake256
415.62415.62418.25sha3512
416.50417.38429.62shake128
472.50472.50473.38T:jh256
474.25475.12475.12T:keccakc448
476.88476.88476.88T:jh224
476.88477.75479.50T:jh384
478.62479.50481.25T:jh512
483.88483.88484.75T:keccakc512
496.12496.12497.00T:keccakc768
506.62507.50508.38T:keccak
497.00511.00511.88T:keccakc1024
524.12524.12525.88T:round3jh256
530.25530.25532.00T:round3jh512
662.38662.38662.38T:skein10241024
677.25678.12678.12T:bblake256
1036.001039.501053.50sha224
1043.881046.501050.00sha256
1085.881093.751104.25T:groestl256
1135.751142.751148.88sha384
1174.251178.621188.25sha512
1373.751374.621376.38T:keccakc256treed2
1379.881380.751382.50T:keccakc512treed2
3229.623232.253242.75T:groestl512