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 (106ca); 2010 Intel Atom N455; 1 x 1000MHz; h2atom, supercop-20240625

[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
7.207.217.21T:blake2b
9.649.649.66T:skein512256
9.649.649.65T:skein512512
9.719.759.83T:k12
10.5910.6010.60T:skein256256
11.6211.6211.62T:blake64
11.7311.7411.74T:blake2s
11.9411.9411.94T:blake32
12.7212.7212.73blake512
14.0414.0914.10blake256
14.4214.4214.43T:keccakc256treed2
6.59?15.85?15.87?T:bblake256
17.3417.3517.37T:skein10241024
18.0018.0218.03shake128
19.0019.0119.02T:keccakc512treed2
20.5020.5020.51T:keccakc448
20.5220.5220.52sha512
20.9720.9720.98sha3224
22.0322.0322.04T:keccakc512
0.46?22.42?22.44?shake256
22.4222.4522.46sha3256
23.6323.6423.64T:keccak
27.3127.3827.38T:jh224
27.3727.3827.38T:jh256
27.3827.3827.38T:jh384
27.3827.3827.38T:jh512
29.2529.2629.27T:keccakc768
29.8129.8229.83sha3384
30.2130.2330.26sha256
31.0131.0331.04T:round3jh512
31.0231.0331.05T:round3jh256
41.2441.2441.25T:keccakc1024
41.5741.5841.60sha3512
86.0486.1886.51T:groestl256
131.44131.75132.37T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
7.267.267.26T:blake2b
9.879.879.87T:skein512256
10.0310.0310.03T:skein512512
10.3610.3710.40T:k12
10.8610.8610.86T:skein256256
11.7711.7711.78T:blake2s
12.1112.1112.11T:blake64
12.2512.2512.25T:blake32
13.2413.2413.24blake512
14.4314.4314.43blake256
17.0617.0617.06T:keccakc256treed2
17.1817.1817.19T:bblake256
18.1018.1018.11T:skein10241024
18.8218.8218.83shake128
20.4620.4620.46T:keccakc512treed2
21.2521.2521.25sha512
21.5821.5821.58T:keccakc448
21.7521.7521.76sha3224
23.0923.0923.10T:keccakc512
23.2223.2223.22sha3256
23.2323.2323.23shake256
24.6924.6924.69T:keccak
27.8627.8627.87T:jh224
27.8627.8627.87T:jh256
27.8627.8627.86T:jh384
27.8727.8727.87T:jh512
29.5829.5829.59T:keccakc768
29.8729.8729.87sha3384
30.7930.7930.79sha256
31.5931.5931.60T:round3jh256
31.5931.5931.60T:round3jh512
42.2742.2742.28T:keccakc1024
42.3842.3942.40sha3512
88.3488.4188.54T:groestl256
138.09138.17138.42T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
7.357.357.41T:blake2b
10.2410.2410.25T:skein512256
10.6610.6610.68T:skein512512
11.2911.2911.31T:skein256256
11.3911.4111.42T:k12
11.8411.8411.84T:blake2s
12.7712.7712.77T:blake32
12.9312.9312.93T:blake64
14.1014.1014.10blake512
14.9814.9814.98blake256
19.3519.3519.36T:skein10241024
19.3819.3819.39T:bblake256
19.8919.9019.90T:keccakc256treed2
20.16?20.17?36.97?shake128
22.0622.0622.07sha3224
22.4122.4122.41T:keccakc448
22.4622.4622.46sha512
22.8722.8822.88T:keccakc512treed2
24.02?24.05?43.52?sha3256
24.0724.0724.08shake256
24.3824.3824.38T:keccakc512
26.4426.4426.45T:keccak
28.6828.6828.68T:jh224
28.6828.6828.69T:jh256
28.6828.6828.68T:jh384
28.6928.6928.69T:jh512
29.9629.9629.96sha3384
30.1230.1230.13T:keccakc768
31.6831.6831.75sha256
32.5232.5233.78T:round3jh256
32.5332.5332.54T:round3jh512
43.7043.7043.72sha3512
43.9843.9943.99T:keccakc1024
91.9392.0792.18T:groestl256
148.65148.75148.91T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
8.328.328.32T:blake2b
11.2211.2211.24T:skein512256
11.9911.9912.02T:blake2s
12.3412.3412.36T:skein512512
12.4612.4612.46T:skein256256
13.0113.0913.11T:k12
13.9313.9313.95T:blake64
14.1714.1714.17T:blake32
15.0015.0015.00blake512
16.4516.4516.46blake256
21.7521.7521.78shake128
23.4323.4323.43sha512
24.7024.7324.73T:skein10241024
25.2925.2925.31T:bblake256
26.7726.7726.79sha3224
26.8226.8226.82sha3256
27.0127.0127.51shake256
27.4227.4227.43T:keccakc256treed2
28.3228.3228.32T:keccakc448
28.47?28.47?53.36?T:keccakc512
28.6628.6628.68T:keccak
30.8530.8530.85T:jh224
30.8530.8530.85T:jh256
30.8630.8630.86T:jh384
30.8830.8830.88T:jh512
32.1532.1532.15sha3384
33.4933.4933.49T:keccakc768
34.0334.0334.03sha256
35.0135.0135.01T:round3jh256
35.0335.0335.03T:round3jh512
35.5135.5135.52T:keccakc512treed2
47.8147.8147.81sha3512
49.0949.0949.09T:keccakc1024
101.05101.15101.59T:groestl256
162.69163.04163.29T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
13.9113.9114.14T:blake2s
17.0317.0317.03T:blake2b
23.19?23.19?40.25?T:skein512256
27.0327.0327.03T:skein256256
30.4130.4430.44T:blake64
31.7831.7831.78T:blake32
33.2233.2233.22blake512
33.3433.3433.34T:skein512512
35.2335.2335.28blake256
38.8639.3439.45T:k12
46.5046.5046.50sha512
49.3849.3849.38sha3256
49.33?49.44?91.66?sha3224
50.3650.3650.36sha3384
50.4250.4251.62sha3512
51.3051.3051.30shake256
51.4251.4251.42shake128
58.3858.3858.38T:jh256
58.3958.3958.39T:jh224
58.4158.4158.41T:jh384
58.6658.6658.66T:jh512
63.5663.5663.56T:keccakc1024
64.7264.7264.72T:keccakc768
65.2065.2065.27sha256
65.8865.8865.88T:keccakc512
66.1266.1266.12T:keccak
66.4266.4266.42T:keccakc448
66.7566.7566.75T:round3jh256
67.0067.0067.00T:round3jh512
81.0981.0981.09T:skein10241024
100.53100.53100.64T:bblake256
167.38167.38167.48T:keccakc512treed2
169.11169.11169.11T:keccakc256treed2
221.41221.50222.05T:groestl256
405.22406.06408.83T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
113.12113.12115.88T:blake2s
134.12134.12135.75T:blake2b
163.00163.00165.25T:blake32
168.88169.12170.00blake256
169.38169.38171.12T:skein256256
183.25?185.25?310.25?T:skein512256
247.50247.50250.62T:blake64
264.50264.50267.00T:skein512512
265.75265.75267.75blake512
277.88278.38279.88sha256
311.75315.88317.75T:k12
373.12373.12375.38sha512
392.75392.75395.12sha3256
392.38?396.62?819.75?sha3224
401.00401.00403.25sha3384
403.00403.00405.25sha3512
408.88408.88411.12shake256
409.88409.88412.12shake128
469.62469.62471.88T:jh224
470.00470.00472.25T:jh256
470.25470.25472.50T:jh384
472.00472.00472.00T:jh512
505.00505.00507.00T:keccakc1024
514.25514.25516.25T:keccakc768
523.50523.50523.50T:keccakc512
525.50525.50527.50T:keccak
527.88527.88527.88T:keccakc448
544.50?544.50?949.00?T:round3jh256
546.50546.50546.50T:round3jh512
649.38649.38651.25T:skein10241024
680.75681.62683.25T:bblake256
1096.001099.121112.12T:groestl256
1336.881337.751339.12T:keccakc512treed2
1350.621350.621352.88T:keccakc256treed2
3257.253263.503265.00T:groestl512