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: armeabi; Cortex-A8 (413fc082); 2012 TI Sitara XAM3359AZCZ100; 1 x 1000MHz; bblack, supercop-20240425

[Page version: 20240724 17:32:27]

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).


Implementation notes

Graphs: old (bytes,cycles)
Cycles/byte for long messages
25%50%75%hash
13.6613.6913.71sha224
13.6913.6913.70sha256
16.5516.7016.76T:blake2s
22.3122.3422.34T:blake32
22.5822.5922.62sha512
22.5822.6022.64sha384
24.5924.9425.37T:blake2b
27.6827.6927.73T:skein256256
28.5828.6228.64blake256
28.6628.7328.76T:k12
28.7528.7728.83T:bblake256
39.2539.5539.84blake512
39.7139.7839.84T:skein512512
39.6839.7939.92T:skein512256
46.7146.7946.91shake128
54.2654.3254.37sha3224
57.5057.5357.58T:blake64
57.7457.8057.88sha3256
57.9058.0658.19shake256
59.3459.3659.43T:keccakc448
59.8959.9160.00T:skein10241024
62.4162.4462.50T:keccakc512
66.0766.1366.18T:keccak
76.2576.3876.47sha3384
80.8781.1581.30T:keccakc768
100.83101.03101.95sha3512
110.75110.84111.43T:keccakc1024
110.97111.48112.48T:groestl256
128.49128.80129.12T:round3jh256
128.77129.29129.41T:round3jh512
146.30146.36146.68T:jh224
146.13146.37146.88T:jh512
146.29146.38146.68T:jh384
145.34146.62148.37T:jh256
153.54154.41155.11T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
14.4214.4214.43sha256
14.4214.4214.43sha224
17.0117.0417.06T:blake2s
23.1323.1323.13T:blake32
23.8223.8323.84sha384
23.8323.8323.84sha512
25.8225.8626.00T:blake2b
28.3728.3728.39T:skein256256
29.5229.5329.54blake256
30.4530.4630.46T:k12
32.0332.0332.06T:bblake256
40.8740.8740.89T:skein512512
40.8640.8840.93T:skein512256
41.8041.8541.97blake512
49.1949.2049.25shake128
56.6156.6256.64sha3224
59.8059.8159.83T:blake64
60.1260.1260.15sha3256
60.3060.3560.41shake256
62.2162.2262.24T:keccakc448
62.4262.4362.46T:skein10241024
64.9764.9865.00T:keccakc512
68.7368.7568.78T:keccak
76.8376.8476.88sha3384
81.6681.6981.73T:keccakc768
104.20104.22104.66sha3512
113.25113.29113.56T:keccakc1024
115.08115.11115.59T:groestl256
131.10131.24131.33T:round3jh256
131.38131.54131.60T:round3jh512
149.06149.07149.22T:jh224
149.07149.08149.24T:jh384
149.07149.08149.34T:jh512
149.08149.23150.09T:jh256
162.81162.92163.25T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
15.6215.6515.65sha256
15.6215.6515.66sha224
17.6017.6417.71T:blake2s
24.4624.4724.47T:blake32
25.8525.8825.91sha384
25.9025.9125.93sha512
27.1827.2627.50T:blake2b
29.5129.5229.52T:skein256256
31.0331.0431.06blake256
33.3433.3633.40T:k12
37.4637.4637.49T:bblake256
42.6742.7042.76T:skein512256
42.6942.7042.78T:skein512512
45.5945.6845.87blake512
53.1453.2053.25shake128
57.9657.9958.02sha3224
62.7162.7162.74sha3256
62.9662.9862.99shake256
63.6163.6463.64T:blake64
64.1564.1864.18T:keccakc448
66.5966.6066.65T:skein10241024
67.8167.8267.84T:keccakc512
73.1273.1373.16T:keccak
77.6077.6177.64sha3384
82.4982.5782.73T:keccakc768
109.29109.54109.58sha3512
117.34117.38117.43T:keccakc1024
121.11121.15121.80T:groestl256
135.14135.30135.33T:round3jh256
135.39135.41135.44T:round3jh512
153.58153.61153.64T:jh384
153.58153.61153.67T:jh224
153.59153.61153.62T:jh512
153.61153.64154.65T:jh256
177.13177.18177.76T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
18.8818.8918.96sha224
18.8818.8918.96sha256
19.3119.3919.60T:blake2s
28.0028.0028.07T:blake32
28.7928.8628.88sha384
28.9328.9429.00sha512
32.4932.5432.56T:skein256256
33.4933.6433.99T:blake2b
35.0135.0735.08blake256
38.0638.1138.19T:k12
47.4447.4647.58T:skein512256
47.4647.5147.53T:skein512512
51.2251.5051.88blake512
51.9452.0152.01T:bblake256
58.7558.8158.88shake128
67.3567.4267.43T:blake64
71.2471.2571.32sha3256
71.4771.5471.62sha3224
71.6971.7571.76shake256
77.2577.2677.32T:keccakc512
77.5477.6277.76T:keccak
80.4380.4480.58T:keccakc448
84.3584.4284.47T:skein10241024
84.6284.6484.71sha3384
90.0090.0690.28T:keccakc768
124.19124.35124.64sha3512
130.06130.14130.21T:keccakc1024
137.07137.15137.29T:groestl256
146.04146.04146.11T:round3jh256
146.19146.40146.42T:round3jh512
165.64165.65165.72T:jh224
165.64165.71165.72T:jh384
165.65165.72165.74T:jh512
165.72165.79166.96T:jh256
197.99198.12198.90T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
40.3840.5042.88T:blake2s
59.8860.5060.62sha224
60.5060.5060.62sha256
70.8871.0071.62T:skein256256
73.0073.5073.62T:blake32
77.5077.6278.12sha384
78.1278.1280.75T:blake2b
78.1278.7578.88sha512
85.8886.0086.50blake256
107.38107.50108.12T:skein512256
107.38107.50108.12T:skein512512
112.00112.62113.25T:k12
126.88128.12132.88blake512
146.38146.62147.12T:blake64
148.50149.00149.12sha3256
149.12149.62149.75sha3224
149.75149.88150.38sha3384
151.75152.25152.38shake256
153.62154.25154.38shake128
158.25158.88159.50T:keccakc1024
160.75160.88162.75T:keccakc768
162.75162.75162.75T:keccakc512
168.50168.62169.25T:keccak
179.62179.75179.75T:keccakc448
190.62195.12196.50sha3512
237.00237.12237.62T:bblake256
276.62276.75277.38T:skein10241024
282.50282.50282.62T:round3jh256
283.12283.75283.88T:round3jh512
319.62319.62320.25T:jh224
319.62319.62320.38T:jh384
320.25320.25320.38T:jh512
320.25321.00324.12T:jh256
341.75342.50343.12T:groestl256
547.50548.12550.00T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
317.00318.00334.00T:blake2s
364.00365.00370.00sha224
365.00370.00370.00sha256
401.00402.00406.00T:blake32
453.00458.00459.00T:skein256256
458.00458.00463.00blake256
615.00615.00620.00sha384
619.00621.00641.00T:blake2b
625.00625.00625.00sha512
854.00854.00855.00T:skein512256
854.00854.00860.00T:skein512512
880.00885.00891.00T:k12
1006.001021.001052.00blake512
1171.001172.001177.00sha3256
1176.001177.001182.00T:blake64
1176.001177.001182.00sha3224
1182.001187.001188.00sha3384
1198.001198.001202.00shake256
1213.001214.001219.00shake128
1265.001270.001276.00T:keccakc1024
1281.001286.001297.00T:keccakc768
1296.001297.001302.00T:keccakc512
1344.001348.001354.00T:keccak
1438.001442.001443.00T:keccakc448
1531.001563.001589.00sha3512
1672.001672.001676.00T:bblake256
1843.001848.001854.00T:groestl256
2210.002213.002214.00T:skein10241024
2271.002271.002276.00T:round3jh256
2271.002276.002276.00T:round3jh512
2562.002563.002568.00T:jh224
2562.002563.002568.00T:jh384
2563.002567.002568.00T:jh512
2568.002578.002599.00T:jh256
4384.004386.004396.00T:groestl512