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; Silvermont (406c4); 2016 Intel Atom x5-Z8350; 4 x 1440MHz; cherry, 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
8.508.548.58T:blake2b
9.429.449.47T:k12
10.1610.1610.16T:blake2s
11.5911.6111.65T:skein512512
11.6011.6311.65T:skein512256
11.6911.6911.69T:blake32
11.7211.7211.72T:skein256256
12.4812.4912.51T:blake64
12.7612.8212.90T:keccakc256treed2
13.5513.5613.59blake512
13.6013.6113.62blake256
15.2215.3015.31T:bblake256
17.2217.2317.23T:keccakc512treed2
17.1717.2317.25sha384
17.2217.2317.23sha512
17.8617.8717.87T:skein10241024
18.4418.5818.64shake128
20.4520.4520.46sha256
20.4520.4520.46sha224
21.1621.2721.33T:keccakc448
21.5021.5321.55sha3224
22.4322.8622.93T:keccakc512
22.7423.0523.07sha3256
23.0423.0623.07shake256
24.3025.0925.38T:keccak
25.7125.7225.72T:jh384
25.7125.7225.74T:jh256
25.7225.7225.72T:jh224
25.7025.7325.73T:jh512
29.5229.5329.55T:round3jh512
29.5329.5329.55T:round3jh256
30.1630.2530.36T:keccakc768
30.6630.6830.72sha3384
32.7132.7432.81T:groestl256
42.2742.3642.49T:keccakc1024
42.7942.8344.29sha3512
49.3149.3349.38T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
8.608.608.62T:blake2b
9.949.959.96T:k12
10.1610.1610.16T:blake2s
11.8611.8611.88T:skein512512
11.8611.8611.87T:skein512256
11.8811.8811.88T:skein256256
11.9511.9511.95T:blake32
12.9712.9712.98T:blake64
13.9213.9213.92blake256
14.1514.1514.16blake512
15.1015.1115.15T:keccakc256treed2
16.4516.4816.49T:bblake256
17.8617.8917.89sha384
17.9017.9017.90sha512
18.4718.4718.47T:keccakc512treed2
18.5518.5518.55T:skein10241024
19.3119.3519.38shake128
20.8820.8820.88sha224
20.8920.8920.89sha256
22.1322.1622.18T:keccakc448
22.3222.3222.33sha3224
23.6623.7023.73T:keccakc512
23.8423.8523.85shake256
23.8523.8523.85sha3256
25.1825.5525.69T:keccak
26.1426.1426.14T:jh384
26.1426.1426.15T:jh256
26.1426.1426.14T:jh224
26.1426.1526.15T:jh512
30.0230.0230.02T:round3jh256
30.0230.0230.03T:round3jh512
30.3930.4330.44T:keccakc768
30.7030.7030.72sha3384
33.6533.6633.70T:groestl256
43.2043.2343.27T:keccakc1024
43.5843.6044.33sha3512
52.1452.1552.17T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
8.658.658.66T:blake2b
10.1710.1710.17T:blake2s
10.7910.8110.84T:k12
12.1512.1512.15T:skein256256
12.2612.2612.28T:skein512256
12.2612.2812.29T:skein512512
12.3912.3912.39T:blake32
13.7713.7813.79T:blake64
14.4114.4214.43blake256
15.0515.0615.06blake512
17.5217.5217.58T:keccakc256treed2
18.4718.4718.49T:bblake256
18.9618.9918.99sha384
19.0119.0119.02sha512
19.6819.6819.68T:skein10241024
20.5320.5520.59T:keccakc512treed2
20.6620.7320.90shake128
21.6021.6021.60sha224
21.6021.6121.61sha256
22.6322.7222.86T:keccakc448
23.0223.0223.06sha3224
24.6024.6224.64T:keccakc512
24.6724.6724.69sha3256
24.6824.7025.12shake256
26.5426.6126.72T:keccak
26.8526.8526.85T:jh384
26.8426.8526.85T:jh256
26.8526.8526.85T:jh224
26.8526.8526.87T:jh512
30.5830.6330.66T:keccakc768
30.7530.7630.80sha3384
30.8230.8230.83T:round3jh256
30.8330.8330.83T:round3jh512
35.2135.2235.24T:groestl256
44.6744.7945.07T:keccakc1024
44.9044.9044.90sha3512
56.9056.9256.93T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
9.749.749.78T:blake2b
10.1810.1810.18T:blake2s
12.0712.1212.20T:k12
12.8812.8812.88T:skein256256
13.3113.3213.34T:skein512256
13.3213.3513.36T:skein512512
13.5413.5413.54T:blake32
14.6514.6514.69T:blake64
15.7715.7815.78blake256
16.0116.0316.06blake512
20.0920.0920.09sha384
20.1420.1520.16sha512
22.2122.3322.56shake128
23.5123.5223.52sha224
23.5223.5323.53sha256
23.9623.9624.03T:keccakc256treed2
23.9323.9924.00T:bblake256
24.7724.7724.77T:skein10241024
27.4327.4427.51sha3224
27.5627.5627.63sha3256
27.5927.6628.08shake256
27.7527.8728.16T:keccakc448
27.8627.8927.94T:keccak
27.8127.9227.98T:keccakc512
28.7228.7228.75T:jh384
28.7228.7328.73T:jh256
28.7328.7328.78T:jh512
28.7328.7328.73T:jh224
31.6931.6931.76T:keccakc512treed2
32.9832.9832.98T:round3jh256
32.9832.9832.99T:round3jh512
32.9133.0433.38sha3384
33.1233.6533.92T:keccakc768
39.3939.4039.45T:groestl256
49.0449.0449.22sha3512
49.1749.2749.48T:keccakc1024
63.6463.7963.88T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
10.2510.2510.64T:blake2s
18.8418.8418.84T:blake2b
21.9121.9121.91T:skein256256
26.4826.5026.56T:skein512256
26.6126.7026.77T:skein512512
28.1628.1628.16T:blake32
30.5030.5230.64T:blake64
32.0532.0932.52T:k12
32.7232.9233.05blake256
35.1235.1435.17blake512
42.1642.1642.27sha384
42.4842.5042.69sha512
47.6747.7547.75sha224
47.8147.8947.89sha256
50.1650.1751.92sha3384
50.1750.1950.80sha3512
51.09?51.84?57.91?shake256
51.5351.9253.23sha3256
50.0852.0353.91sha3224
51.3952.2853.28shake128
52.4252.4252.42T:jh384
52.3852.4452.47T:jh256
52.4552.4552.48T:jh224
52.4452.5252.97T:jh512
55.4255.4756.41T:keccakc768
56.1156.6458.64T:keccakc448
56.6756.6957.67T:keccakc512
55.8956.8158.38T:keccak
56.8957.6260.44T:keccakc1024
60.2360.2360.34T:round3jh256
60.3060.3060.33T:round3jh512
78.9178.9178.91T:skein10241024
91.9892.0292.05T:groestl256
93.6293.6293.66T:bblake256
146.64146.72147.12T:keccakc256treed2
147.22147.69147.69T:keccakc512treed2
175.89176.89178.19T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
83.6283.6283.62T:blake2s
127.38127.38127.38T:skein256256
138.12138.12138.88T:blake32
149.25149.25150.50T:blake2b
157.00157.38157.38blake256
210.12210.25211.50T:skein512256
211.12211.62212.62T:skein512512
213.00213.75213.75sha224
214.38214.88214.88sha256
245.75247.50248.50T:blake64
256.62259.25260.00T:k12
277.75278.38279.50blake512
335.12335.12336.00sha384
340.75341.25343.25sha512
399.25399.25399.50sha3224
399.38399.38408.00sha3512
400.00404.62409.88sha3384
405.50405.62410.88sha3256
406.75406.75407.62shake256
409.88414.12418.00shake128
420.88420.88420.88T:jh384
421.38421.38421.38T:jh256
421.12421.50422.12T:jh224
421.38422.00424.88T:jh512
440.88441.62449.38T:keccak
444.62445.38449.38T:keccakc768
444.12446.62458.25T:keccakc1024
447.00447.62450.12T:keccakc512
450.38454.75460.00T:keccakc448
470.62473.12475.12T:groestl256
485.00485.00485.00T:round3jh256
485.38485.38485.38T:round3jh512
630.75630.75630.75T:skein10241024
635.62635.62635.88T:bblake256
1171.751171.751174.88T:keccakc256treed2
1176.621176.621176.62T:keccakc512treed2
1440.881442.751446.00T:groestl512