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; Zen 4 (a60f12); 2023 AMD Ryzen 7 7700; 8 x 3800MHz; hertz, supercop-20240909

[Page version: 20241006 02:11:58]

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.012.012.02sha256
2.022.032.03sha224
2.322.342.35T:keccakc256treed2
2.862.892.90T:k12
3.103.123.16T:keccakc512treed2
3.473.473.47T:blake2b
4.074.144.31sha384
4.124.194.25sha512
4.524.564.58T:skein512256
4.544.564.56T:skein512512
4.714.774.83T:blake64
4.964.965.01blake512
5.425.445.48T:bblake256
5.615.635.65T:blake2s
5.615.645.69T:groestl256
5.665.665.67T:skein256256
5.966.016.08T:skein10241024
6.016.106.14T:blake32
6.266.296.32sha3224
6.296.326.35T:keccakc448
6.636.646.65T:keccakc512
6.436.716.74sha3256
6.616.766.86shake256
6.716.766.86shake128
7.137.157.29T:keccak
7.157.177.20T:groestl512
7.757.777.79blake256
8.918.938.95sha3384
8.948.958.99T:keccakc768
9.209.339.46T:jh256
9.279.379.54T:jh224
9.259.409.56T:jh384
9.379.429.54T:jh512
10.8010.9611.19T:round3jh256
10.7711.0111.14T:round3jh512
12.3212.4012.63T:keccakc1024
12.4312.4612.48sha3512
Cycles/byte for 4096 bytes
25%50%75%hash
2.052.052.05sha256
2.272.282.28sha224
2.752.762.76T:keccakc256treed2
3.043.053.06T:k12
3.353.353.36T:keccakc512treed2
3.483.483.48T:blake2b
4.544.574.62sha384
4.554.584.59sha512
4.654.654.65T:skein512512
4.654.654.67T:skein512256
4.934.954.98T:blake64
5.235.235.25blake512
5.625.625.63T:blake2s
5.735.735.73T:skein256256
5.865.875.89T:groestl256
6.086.086.10T:bblake256
6.206.236.25T:blake32
6.266.286.29T:skein10241024
6.526.526.54sha3224
6.576.586.59T:keccakc448
6.906.906.90T:keccakc512
6.966.976.97sha3256
6.976.987.02shake256
7.037.067.08shake128
7.417.427.48T:keccak
7.787.797.79T:groestl512
7.897.897.90blake256
8.938.948.95sha3384
8.988.989.00T:keccakc768
9.499.529.57T:jh256
9.539.559.60T:jh224
9.579.589.61T:jh512
9.539.589.64T:jh384
11.1011.1311.20T:round3jh256
11.0911.1611.20T:round3jh512
12.6812.6912.79T:keccakc1024
12.7012.7112.71sha3512
Cycles/byte for 1536 bytes
25%50%75%hash
2.102.102.11sha256
2.682.682.69sha224
3.203.213.22T:keccakc256treed2
3.303.303.30T:k12
3.503.503.50T:blake2b
3.723.733.75T:keccakc512treed2
4.814.814.81T:skein512512
4.814.814.81T:skein512256
5.185.205.26sha512
5.235.245.27sha384
5.255.285.32T:blake64
5.605.615.62T:blake2s
5.445.675.67blake512
5.855.855.85T:skein256256
6.246.256.25T:groestl256
6.416.446.45T:blake32
6.616.626.64sha3224
6.656.696.72T:skein10241024
6.696.716.72T:keccakc448
7.157.157.16T:bblake256
7.187.197.20T:keccakc512
7.197.207.23sha3256
7.187.207.20shake256
7.517.517.51shake128
7.847.857.86T:keccak
8.098.108.11blake256
8.778.798.81T:groestl512
8.978.978.99sha3384
9.039.059.05T:keccakc768
9.749.809.88T:jh224
9.749.829.88T:jh256
9.779.839.99T:jh384
9.769.849.89T:jh512
11.2711.3511.50T:round3jh512
11.3311.3811.48T:round3jh256
13.1013.1113.14sha3512
13.1113.1213.13T:keccakc1024
Cycles/byte for 576 bytes
25%50%75%hash
2.252.262.26sha256
3.663.663.67T:k12
3.783.783.78sha224
3.983.983.98T:blake2b
4.414.424.44T:keccakc256treed2
5.255.255.26T:skein512256
5.255.255.28T:skein512512
5.585.595.60T:blake2s
5.575.605.71T:blake64
5.665.675.68blake512
5.755.775.81T:keccakc512treed2
6.166.166.17T:skein256256
6.496.546.64sha512
6.536.546.64sha384
6.976.997.02T:blake32
7.277.327.32T:groestl256
8.048.048.12sha3224
8.028.048.11shake256
8.058.068.06shake128
8.048.068.06sha3256
8.128.148.16T:keccakc512
8.208.228.32T:keccak
8.258.278.38T:keccakc448
8.308.328.48T:skein10241024
8.638.648.66blake256
9.599.599.61sha3384
9.829.869.90T:keccakc768
10.3710.4010.43T:bblake256
10.4010.4810.63T:jh224
10.4110.5010.55T:jh256
10.6310.6510.77T:jh384
10.6510.7410.76T:jh512
11.2911.3311.35T:groestl512
12.0312.1612.32T:round3jh512
12.0412.1912.30T:round3jh256
14.3214.3214.32sha3512
14.3814.4314.49T:keccakc1024
Cycles/byte for 64 bytes
25%50%75%hash
4.124.174.19sha256
5.205.275.33T:blake2s
7.757.757.75T:blake2b
9.819.849.89T:k12
10.1410.1610.22T:skein256256
10.5510.5610.56T:skein512256
10.5310.6210.70T:skein512512
11.2311.3111.38blake512
12.0812.8112.94T:blake64
14.0814.1914.45T:blake32
15.0615.0815.59sha3512
15.0915.1115.70sha3384
15.1115.1115.72shake256
15.1115.1215.81sha3224
15.2215.2315.66sha3256
15.5515.5915.64blake256
15.8315.8915.98T:keccakc512
15.9516.0016.12T:keccakc1024
16.1616.2817.03T:keccakc448
16.0516.3116.59T:keccak
16.7016.9217.05T:keccakc768
17.8317.8317.86sha224
19.1119.4519.77T:jh256
19.1719.4519.62T:jh224
17.61?19.64?19.75?shake128
20.0520.3120.31T:jh512
20.3320.5520.75T:jh384
20.6920.6920.69T:groestl256
21.8622.1422.55T:round3jh512
21.7222.2822.67T:round3jh256
24.7224.7724.88sha384
25.0525.0925.22sha512
26.0226.1626.62T:skein10241024
27.0027.0927.30T:keccakc256treed2
26.9427.2527.53T:keccakc512treed2
44.2044.3044.47T:groestl512
50.0850.2550.91T:bblake256
Cycles/byte for 8 bytes
25%50%75%hash
24.8825.2525.62sha256
48.8849.2549.62T:blake2s
59.8860.2560.38T:blake32
60.7560.7561.75T:skein256256
60.8860.8860.88T:blake2b
70.5070.7571.12blake256
78.1278.8879.00T:k12
84.0084.0084.12T:skein512256
83.8884.3885.00T:skein512512
90.6290.7591.25blake512
97.25103.38103.75T:blake64
119.75119.75123.38sha3224
119.62119.88123.38sha3384
119.88120.00124.12shake256
119.88120.00124.50sha3256
120.38120.38125.50sha3512
118.25121.12121.38T:groestl256
126.75127.12133.00T:keccakc512
126.62127.38128.00T:keccakc1024
127.88128.38129.25sha224
127.25128.62132.88T:keccak
129.25130.00130.62T:keccakc448
128.38132.88135.38T:keccakc768
140.38?156.25?156.62?shake128
156.00158.12161.12T:jh384
159.00160.38160.38T:jh256
159.38160.75161.75T:jh512
155.88162.25165.75T:jh224
180.62181.38183.38T:round3jh256
180.62183.25187.12T:round3jh512
199.00199.88200.88sha512
199.62200.12200.62sha384
207.88209.00210.88T:skein10241024
214.62215.38216.12T:keccakc256treed2
214.62216.00217.12T:keccakc512treed2
308.62309.25311.12T:groestl512
329.75330.50330.62T:bblake256