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-20241022

[Page version: 20241120 00:41:20]

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.022.02sha256
2.022.022.03sha224
2.302.322.35T:keccakc256treed2
2.852.882.95T:k12
3.053.073.10T:keccakc512treed2
3.443.463.47T:blake2b
4.124.164.21sha384
4.154.184.28sha512
4.564.564.56T:skein512512
4.584.604.63T:skein512256
4.584.724.80T:blake64
5.135.165.22blake512
5.425.435.44shake128
5.395.435.47T:bblake256
5.625.645.65T:blake2s
5.605.665.71T:groestl256
5.665.665.67T:skein256256
5.966.006.06T:skein10241024
6.146.176.19T:groestl512
6.306.326.32sha3224
6.276.326.36T:keccakc448
6.446.466.50T:blake32
6.646.656.67T:keccakc512
6.746.756.80sha3256
6.726.756.77shake256
7.127.137.17T:keccak
7.787.847.88blake256
8.828.868.88T:keccakc768
8.859.039.20sha3384
8.65?9.38?10.94?T:jh512
9.269.389.54T:jh256
9.299.409.56T:jh384
9.279.439.53T:jh224
10.5710.8111.05T:round3jh512
10.6810.9111.13T:round3jh256
12.3412.4012.42T:keccakc1024
12.1812.8212.86sha3512
Cycles/byte for 4096 bytes
25%50%75%hash
2.052.052.05sha256
2.222.222.22sha224
2.752.752.76T:keccakc256treed2
3.023.033.06T:k12
3.313.323.32T:keccakc512treed2
3.483.493.49T:blake2b
4.504.514.52sha384
4.544.554.58sha512
4.674.674.67T:skein512512
4.684.684.69T:skein512256
4.854.874.90T:blake64
5.325.335.36blake512
5.625.635.63T:blake2s
5.745.745.74T:skein256256
5.815.815.82shake128
5.875.895.90T:groestl256
6.086.096.10T:bblake256
6.256.266.28T:skein10241024
6.566.586.59T:keccakc448
6.606.606.62T:blake32
6.686.696.69sha3224
6.726.726.73T:groestl512
6.906.906.91T:keccakc512
7.137.137.15sha3256
7.137.147.14shake256
7.407.407.42T:keccak
7.947.967.97blake256
8.888.898.90T:keccakc768
9.049.049.13sha3384
9.519.559.58T:jh256
9.519.579.59T:jh224
9.529.5810.33T:jh512
9.559.599.63T:jh384
10.9811.0511.11T:round3jh512
11.0311.1011.15T:round3jh256
12.6612.6812.68T:keccakc1024
12.7812.9112.92sha3512
Cycles/byte for 1536 bytes
25%50%75%hash
2.102.112.11sha256
2.542.542.55sha224
3.203.203.22T:keccakc256treed2
3.273.273.29T:k12
3.523.533.54T:blake2b
3.703.723.74T:keccakc512treed2
4.864.864.86T:skein512512
4.854.874.87T:skein512256
5.035.075.09sha384
5.115.125.17sha512
5.115.155.25T:blake64
5.615.615.62T:blake2s
5.615.615.61blake512
5.865.865.87T:skein256256
6.266.266.27T:groestl256
6.436.446.44shake128
6.646.676.70T:skein10241024
6.696.706.71T:keccakc448
6.826.836.83T:blake32
6.936.957.03sha3224
7.177.187.20T:bblake256
7.187.197.20T:keccakc512
7.617.617.61sha3256
7.607.617.62shake256
7.647.667.67T:groestl512
7.847.857.85T:keccak
8.148.168.18blake256
8.958.958.96T:keccakc768
9.069.079.08sha3384
9.739.799.86T:jh256
9.759.849.88T:jh224
9.809.859.91T:jh384
9.829.8910.53T:jh512
11.2211.3711.43T:round3jh512
11.2011.3711.45T:round3jh256
13.0713.1013.12T:keccakc1024
13.3513.5213.53sha3512
Cycles/byte for 576 bytes
25%50%75%hash
2.252.262.26sha256
3.393.403.41sha224
3.643.653.65T:k12
4.004.004.01T:blake2b
4.404.424.44T:keccakc256treed2
5.315.315.36T:skein512256
5.365.365.36T:skein512512
5.385.485.60T:blake64
5.575.595.60T:blake2s
5.755.765.79T:keccakc512treed2
5.815.845.91blake512
6.026.066.09sha384
6.186.206.20T:skein256256
6.246.306.32sha512
7.217.247.24T:groestl256
7.387.407.42T:blake32
7.477.527.52shake128
8.138.148.15T:keccakc512
8.178.228.25T:keccak
8.228.288.34T:keccakc448
8.278.358.44T:skein10241024
8.688.718.73blake256
9.049.059.08sha3256
9.059.059.06sha3224
9.099.109.10shake256
9.689.699.70sha3384
9.669.719.73T:keccakc768
10.1010.1310.15T:groestl512
10.4210.4510.50T:bblake256
10.4310.5210.58T:jh256
10.4310.5610.64T:jh224
10.4510.5811.28T:jh512
10.4910.6110.69T:jh384
11.9512.1112.22T:round3jh512
11.9412.1412.30T:round3jh256
14.3814.4014.40sha3512
14.3714.4414.47T:keccakc1024
Cycles/byte for 64 bytes
25%50%75%hash
4.174.174.22sha256
5.225.285.30T:blake2s
7.897.897.89T:blake2b
9.919.919.94T:k12
10.3610.5310.55T:skein256256
10.6910.7710.77T:skein512256
11.00?11.20?13.31?T:blake64
11.2311.2712.17blake512
11.2511.3411.34T:skein512512
14.5014.5314.59sha224
14.5814.6614.73T:blake32
15.1415.1615.88sha3512
15.27?15.31?18.06?sha3384
15.6615.7515.81blake256
15.9716.0216.25T:keccakc1024
15.9816.0316.09T:keccakc768
15.9716.0816.62T:keccakc512
16.0516.1916.78T:keccak
16.2716.3416.92T:keccakc448
16.34?18.36?20.78?sha3256
16.33?18.38?20.73?sha3224
16.66?18.66?21.08?shake256
16.89?18.72?21.08?shake128
19.0919.2519.64T:jh224
19.2019.4119.66T:jh256
19.2519.4219.62T:jh384
19.5519.6419.83T:groestl256
19.2019.6920.50T:jh512
20.9821.0621.23sha384
21.7522.1622.67T:round3jh256
21.7722.1922.42T:round3jh512
23.0623.1623.22sha512
26.2026.6927.67T:skein10241024
26.8827.0827.38T:keccakc512treed2
27.0927.3027.52T:keccakc256treed2
41.5641.7241.89T:groestl512
50.3850.6251.48T:bblake256
Cycles/byte for 8 bytes
25%50%75%hash
25.2525.5025.75sha256
48.7549.1249.62T:blake2s
60.0060.0060.25T:skein256256
63.0063.0063.00T:blake2b
67.6268.1268.50T:blake32
70.5071.2571.25blake256
78.0078.5078.88T:k12
85.2585.2585.25T:skein512256
87.25?88.50?106.12?T:blake64
89.7589.8895.12blake512
93.3893.3893.38T:skein512512
99.75100.12100.75sha224
111.88113.50115.62T:groestl256
120.25120.38124.88sha3512
121.00?121.12?142.75?sha3384
126.50126.50127.62T:keccakc1024
126.00126.62127.00T:keccakc768
127.00127.12128.50T:keccakc512
127.38128.25133.62T:keccak
129.00130.50132.50T:keccakc448
127.62?146.00?164.88?sha3256
130.88?146.38?165.38?sha3224
132.38?148.12?167.50?shake128
130.38?148.25?167.50?shake256
156.62159.88165.38T:jh256
157.38160.25164.50T:jh384
156.12161.88165.38T:jh224
165.62166.25170.62T:jh512
167.50168.12169.12sha384
179.75181.62186.00T:round3jh512
179.38181.88184.12T:round3jh256
183.38184.38185.12sha512
208.00211.75215.50T:skein10241024
214.12214.88218.00T:keccakc512treed2
215.00216.50219.12T:keccakc256treed2
287.00288.00289.12T:groestl512
331.50332.50336.88T:bblake256