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: aarch64; Skylark (503f0002); 2018 Ampere eMAG 8180; 32 x 3300MHz; unstable; gcc185, supercop-20240107

[Page version: 20240726 23:45:57]

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: (bytes,cycles)
Cycles/byte for long messages
25%50%75%hash
4.174.214.25sha224
4.174.254.25sha256
4.914.944.98T:k12
5.645.685.71T:blake2b
8.428.428.46T:skein512512
8.428.428.50T:skein512256
8.908.948.94T:blake64
9.419.419.45shake128
9.489.489.52T:skein10241024
9.529.569.56T:blake2s
9.569.639.63T:skein256256
9.819.859.85blake512
10.6910.7310.73sha384
10.6910.7310.73sha512
10.8010.8010.80T:keccakc448
10.9110.9510.95sha3224
11.5011.5411.54T:keccakc512
11.6511.6511.68shake256
11.6111.6811.68sha3256
12.3012.3012.34T:keccak
12.3012.3012.38T:blake32
15.3115.3415.38T:keccakc768
15.4515.4915.56sha3384
16.0016.0016.00blake256
16.1116.1516.15T:bblake256
21.1721.2021.24T:keccakc1024
21.5321.6121.61sha3512
28.6728.6728.71T:groestl256
32.7432.7832.78T:jh224
32.7832.7832.81T:jh256
32.8132.8132.81T:jh384
32.8132.8132.81T:jh512
38.4538.5338.53T:round3jh256
38.4938.5338.53T:round3jh512
52.8152.8152.81T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
4.344.344.36sha224
4.344.364.36sha256
5.225.245.24T:k12
5.695.695.71T:blake2b
8.618.618.62T:skein512256
8.618.618.62T:skein512512
9.279.279.27T:blake64
9.569.589.58T:blake2s
9.709.729.72T:skein256256
9.839.839.85shake128
9.879.879.87T:skein10241024
10.1810.2010.20blake512
11.1111.1311.13sha384
11.1311.1311.13sha512
11.2611.2611.26T:keccakc448
11.3311.3511.35sha3224
11.9811.9811.98T:keccakc512
12.0512.0712.07sha3256
12.0712.0712.07shake256
12.5812.5812.60T:blake32
12.7612.7612.76T:keccak
15.4015.4215.42T:keccakc768
15.4915.5115.53sha3384
16.3016.3016.30blake256
17.7417.7417.74T:bblake256
21.6421.6621.66T:keccakc1024
21.9721.9921.99sha3512
29.4429.4429.44T:groestl256
33.2933.3133.31T:jh224
33.3333.3333.33T:jh256
33.3433.3433.34T:jh384
33.3433.3433.34T:jh512
39.1139.1339.13T:round3jh256
39.1339.1539.15T:round3jh512
55.2455.2455.24T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
4.544.544.59sha224
4.544.594.59sha256
5.665.715.71T:k12
5.715.715.76T:blake2b
8.898.898.89T:skein512256
8.898.898.89T:skein512512
9.629.629.62T:blake2s
9.819.869.86T:blake64
9.919.919.91T:skein256256
10.5010.5010.50T:skein10241024
10.5010.5010.55shake128
10.7910.7910.79blake512
11.4711.5211.52T:keccakc448
11.4711.5211.52sha3224
11.8211.8211.82sha384
11.8211.8211.82sha512
12.4512.4512.50T:keccakc512
12.4512.5012.50sha3256
12.5012.5012.50shake256
12.9913.0413.09T:blake32
13.4813.5313.53T:keccak
15.4815.5315.53T:keccakc768
15.5315.5315.53sha3384
16.8016.8016.80blake256
20.4120.4120.46T:bblake256
22.3622.4122.41T:keccakc1024
22.6622.6622.66sha3512
30.6630.7130.71T:groestl256
34.1834.1834.23T:jh224
34.1834.2334.23T:jh256
34.2334.2334.23T:jh384
34.2334.2334.23T:jh512
40.1440.1940.19T:round3jh256
40.1940.1940.19T:round3jh512
59.3359.3359.33T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
5.085.085.21sha224
5.085.085.21sha256
6.386.386.38T:k12
6.386.386.51T:blake2b
9.519.649.64T:skein512256
9.649.649.64T:skein512512
9.649.649.77T:blake2s
10.2910.4210.42T:blake64
10.4210.4210.42T:skein256256
11.2011.2011.33blake512
11.2011.2011.33shake128
12.3712.3712.50sha384
12.3712.5012.50sha512
13.1513.1513.28T:skein10241024
13.9313.9313.93sha3256
13.9313.9314.06sha3224
13.9313.9314.06shake256
14.0614.0614.19T:blake32
14.0614.1914.19T:keccakc448
14.0614.1914.19T:keccakc512
14.1914.1914.19T:keccak
16.6716.8016.80sha3384
16.8016.8016.80T:keccakc768
18.1018.1018.23blake256
24.6124.7424.74T:keccakc1024
24.7424.8724.87sha3512
27.4727.6027.60T:bblake256
33.9833.9834.11T:groestl256
36.5936.5936.59T:jh256
36.5936.5936.59T:jh384
36.5936.5936.59T:jh512
36.5936.5936.72T:jh224
42.9742.9742.97T:round3jh256
42.9742.9742.97T:round3jh512
64.1964.1964.32T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
10.5510.5510.55T:blake2s
11.7212.8912.89T:blake2b
11.7212.8912.89sha224
11.7212.8912.89sha256
16.4116.4116.41T:skein256256
17.5817.5817.58T:k12
18.7518.7518.75T:skein512256
18.7518.7518.75T:skein512512
21.0921.0921.09T:blake64
22.2722.2722.27blake512
24.6125.7825.78sha384
25.7825.7825.78sha3224
25.7825.7825.78sha3256
25.7825.7825.78sha3384
25.7825.7825.78sha3512
25.7825.7825.78sha512
25.7825.7825.78shake128
25.7825.7825.78shake256
28.1228.1228.12T:blake32
28.1228.1228.12T:keccakc1024
28.1228.1228.12T:keccakc512
28.1228.1228.12T:keccakc768
28.1228.1229.30T:keccak
28.1228.1229.30T:keccakc448
33.9835.1635.16blake256
41.0242.1942.19T:skein10241024
66.8066.8066.80T:jh224
66.8066.8066.80T:jh256
66.8066.8066.80T:jh384
66.8066.8066.80T:jh512
76.1776.1776.17T:groestl256
78.5278.5278.52T:round3jh256
78.5278.5278.52T:round3jh512
118.36118.36119.53T:bblake256
153.52153.52154.69T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
65.6265.6265.62sha224
65.6265.6265.62sha256
84.3884.3884.38T:blake2s
93.7593.7593.75T:skein256256
93.75103.12103.12T:blake2b
121.88121.88131.25T:blake32
131.25140.62140.62T:k12
140.62150.00150.00T:skein512256
150.00150.00150.00blake256
150.00150.00150.00T:skein512512
168.75168.75168.75T:blake64
178.12178.12187.50blake512
196.88206.25206.25sha3224
196.88206.25206.25sha3256
196.88206.25206.25sha3384
196.88206.25206.25sha3512
206.25206.25206.25sha384
206.25206.25206.25sha512
206.25206.25206.25shake128
206.25206.25206.25shake256
225.00225.00225.00T:keccakc1024
225.00225.00225.00T:keccakc512
225.00225.00225.00T:keccakc768
225.00225.00234.38T:keccakc448
234.38234.38234.38T:keccak
328.12337.50337.50T:skein10241024
375.00375.00375.00T:groestl256
534.38534.38534.38T:jh224
534.38534.38534.38T:jh256
534.38534.38534.38T:jh384
534.38534.38534.38T:jh512
628.12628.12628.12T:round3jh256
628.12628.12628.12T:round3jh512
825.00825.00834.38T:bblake256
1228.121237.501237.50T:groestl512