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; Tiger Lake (806c1); 2020 Intel Core i7-1165G7; 4 x 2800MHz; panther, supercop-20241011

[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: (bytes,cycles)
Cycles/byte for long messages
25%50%75%hash
2.192.212.21sha256
2.302.372.42T:k12
2.402.412.42sha224
2.432.462.50T:keccakc256treed2
2.952.962.97T:blake2b
3.213.263.30T:keccakc512treed2
4.294.334.36blake512
4.514.544.57T:blake2s
4.694.724.74shake128
4.884.965.09T:blake64
5.035.105.17T:bblake256
5.015.115.19T:skein512512
5.055.125.15T:skein512256
5.215.255.29T:blake32
5.415.445.48sha384
5.465.535.61sha512
5.735.836.00T:skein10241024
5.935.986.01sha3224
6.106.126.16blake256
6.376.406.42shake256
6.386.406.43sha3256
6.566.616.66T:groestl256
6.876.937.00T:skein256256
6.826.977.10T:keccakc448
7.267.377.47T:keccakc512
7.868.098.50T:keccak
8.498.548.57sha3384
8.508.558.62T:jh384
8.508.588.62T:jh256
8.508.588.65T:jh512
8.558.598.65T:jh224
9.149.199.24T:groestl512
9.729.809.85T:round3jh512
9.739.859.97T:round3jh256
9.869.9810.09T:keccakc768
11.8411.8811.92sha3512
13.5913.8614.06T:keccakc1024
Cycles/byte for 4096 bytes
25%50%75%hash
2.252.262.26sha256
2.472.482.48sha224
2.522.522.54T:k12
2.902.912.91T:keccakc256treed2
2.962.962.96T:blake2b
3.483.493.51T:keccakc512treed2
4.474.484.49blake512
4.534.544.55T:blake2s
4.995.005.00shake128
5.185.205.22T:blake64
5.235.255.26T:skein512256
5.255.275.29T:skein512512
5.345.355.36T:blake32
5.575.575.60T:bblake256
5.685.695.70sha384
5.745.755.77sha512
6.066.096.16T:skein10241024
6.196.206.21sha3224
6.236.246.25blake256
6.616.626.63shake256
6.626.636.64sha3256
6.946.956.96T:groestl256
7.017.037.05T:skein256256
7.287.317.35T:keccakc448
7.717.737.76T:keccakc512
8.348.368.55T:keccak
8.528.538.54sha3384
8.698.708.72T:jh384
8.698.718.73T:jh256
8.718.738.75T:jh512
8.738.748.76T:jh224
9.779.799.80T:groestl512
9.969.9910.00T:round3jh512
9.9610.0010.04T:round3jh256
10.0110.0310.06T:keccakc768
12.0912.1012.11sha3512
13.9814.0914.17T:keccakc1024
Cycles/byte for 1536 bytes
25%50%75%hash
2.342.342.35sha256
2.592.592.60sha224
2.762.772.81T:k12
2.952.962.97T:blake2b
3.353.363.38T:keccakc256treed2
3.863.873.89T:keccakc512treed2
4.534.544.55T:blake2s
4.714.734.75blake512
5.415.435.44shake128
5.475.495.54T:skein512256
5.475.515.58T:skein512512
5.515.535.57T:blake32
5.505.575.66T:blake64
6.096.116.12sha384
6.116.166.20sha512
6.276.296.30sha3224
6.356.396.45T:bblake256
6.416.426.43blake256
6.466.496.53T:skein10241024
6.846.856.87shake256
6.856.866.87sha3256
7.167.217.23T:skein256256
7.497.517.54T:groestl256
7.477.527.61T:keccakc448
8.078.118.13T:keccakc512
8.558.568.58sha3384
8.788.839.00T:keccak
8.938.959.00T:jh256
8.938.968.98T:jh384
8.948.989.02T:jh512
8.978.999.03T:jh224
10.0410.1710.53T:keccakc768
10.2310.2510.29T:round3jh256
10.2310.2610.31T:round3jh512
10.7510.7810.80T:groestl512
12.4512.4812.50sha3512
14.5414.6115.13T:keccakc1024
Cycles/byte for 576 bytes
25%50%75%hash
2.56?2.59?3.03?sha256
2.902.922.93sha224
3.193.253.36T:k12
3.283.293.33T:blake2b
4.514.524.54T:blake2s
4.554.574.73T:keccakc256treed2
4.864.904.91blake512
5.905.935.94shake128
5.765.966.20T:blake64
5.845.986.06T:skein512512
5.845.996.10T:skein512256
5.975.996.08T:keccakc512treed2
5.976.016.06T:blake32
6.416.506.63sha512
6.556.596.61sha384
6.866.886.90blake256
7.497.527.58T:skein256256
7.627.647.66sha3224
7.637.657.67sha3256
7.647.667.68shake256
7.978.048.24T:skein10241024
8.668.708.94T:bblake256
8.969.019.10T:groestl256
9.129.159.17sha3384
9.139.189.30T:keccak
9.169.259.49T:keccakc512
9.219.359.55T:keccakc448
9.599.629.66T:jh384
9.599.639.67T:jh256
9.619.649.70T:jh512
9.649.699.75T:jh224
10.7710.9411.13T:keccakc768
10.9110.9711.01T:round3jh256
10.9310.9711.02T:round3jh512
13.0513.1513.26T:groestl512
13.6113.6413.67sha3512
16.0716.1716.28T:keccakc1024
Cycles/byte for 64 bytes
25%50%75%hash
4.344.394.44T:blake2s
5.535.735.89sha256
5.896.006.27T:blake2b
6.846.947.12sha224
8.849.039.33T:k12
9.529.6710.08blake512
11.0311.1911.52T:skein512512
11.0011.2311.50T:skein512256
11.9712.1112.27T:blake32
12.0312.1712.56T:skein256256
12.1712.5513.33T:blake64
13.1113.2013.28blake256
13.1713.4513.81sha512
14.0814.1714.28sha3224
14.1714.2514.39sha3384
14.1114.2814.36sha3256
14.2514.3014.38shake128
14.2214.3114.36sha3512
14.3014.3614.48shake256
15.2315.3815.67sha384
16.73?17.64?18.59?T:keccakc768
17.5017.8117.98T:keccak
17.7717.9418.19T:jh384
17.8617.9518.20T:jh224
17.8317.9718.38T:jh512
17.8918.0518.34T:jh256
18.00?19.38?20.64?T:keccakc448
18.19?19.50?20.42?T:keccakc1024
19.16?20.22?21.34?T:keccakc512
20.0920.2720.53T:round3jh512
20.0820.3620.67T:round3jh256
25.0525.3426.92T:skein10241024
27.2327.4228.00T:groestl256
27.7228.0628.52T:keccakc512treed2
27.9128.0628.88T:keccakc256treed2
37.2737.5039.75T:bblake256
44.1144.5644.97T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
26.3826.8827.62sha256
35.6236.1237.25sha224
41.1241.7542.25T:blake2s
47.3848.5050.50T:blake2b
56.7557.7558.75T:blake32
57.8858.7559.75blake256
69.7571.0074.00T:k12
70.3871.1273.00T:skein256256
78.6281.7583.25blake512
87.7589.0090.25T:skein512256
87.8889.0090.75T:skein512512
97.00?100.62?108.12?T:blake64
104.12108.50112.62sha512
110.25111.50112.12sha3224
111.38111.75112.75sha3256
110.50111.88112.50sha3512
111.00111.88112.75sha3384
111.88112.75113.62shake256
115.88116.88117.62shake128
127.00129.00131.50sha384
133.38135.00147.75T:keccakc768
140.00142.25146.75T:keccak
146.00147.25149.62T:jh384
146.25147.88149.62T:jh256
146.38148.25151.38T:jh512
147.00148.38152.88T:jh224
145.38151.88159.00T:keccakc1024
141.75?152.00?160.38?T:keccakc448
155.62162.00168.75T:keccakc512
165.62167.12171.50T:round3jh512
166.50167.50169.50T:round3jh256
167.75169.25174.88T:groestl256
202.25205.75214.62T:skein10241024
223.38225.00232.38T:keccakc512treed2
223.62225.25231.38T:keccakc256treed2
247.38248.75264.62T:bblake256
311.88314.50317.25T:groestl512