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-A7 (410fc075); 2016 Broadcom BCM2836; 4 x 900MHz; berry2, supercop-20250415

[Page version: 20250615 19:27:07]

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
20.0620.6820.77T:blake2s
27.5728.1628.52T!!!sha224
27.6028.2128.25T!!!sha256
27.8328.3228.57T:blake32
31.0031.5431.61T!!!sha384
30.8531.5431.60T!!!sha512
33.5034.3834.42blake256
34.9535.0935.14T:bblake256
39.9240.5941.05T:blake2b
42.8142.8742.92T:k12
47.7548.2248.37T:skein256256
63.9064.1665.07shake128
64.6165.0265.36T:skein512256
64.4165.0365.55T:skein512512
72.8673.5174.19sha3224
74.4274.9375.16T:blake64
77.5378.2379.04shake256
77.4678.2378.90sha3256
81.9982.5482.95T:keccakc448
81.6585.4487.73blake512
87.5288.0088.47T:keccakc512
93.0293.9194.14T:keccak
101.08101.68102.49sha3384
102.67102.82103.37T:skein10241024
115.19115.52116.03T:keccakc768
129.15129.57130.31T:groestl256
138.08138.94139.39sha3512
158.43159.09159.58T:keccakc1024
175.21177.20179.17T:groestl512
224.09224.79225.39T:jh512
223.94224.84225.33T:jh224
224.00224.89225.42T:jh256
224.03224.89225.42T:jh384
315.10316.50317.59T:round3jh256
315.15316.88317.61T:round3jh512
Cycles/byte for 4096 bytes
25%50%75%hash
20.8320.8420.86T:blake2s
28.9428.9428.96T!!!sha256
28.9428.9529.10T!!!sha224
29.0529.0629.17T:blake32
32.8032.8032.83T!!!sha384
32.8032.8132.84T!!!sha512
35.1735.1735.18blake256
38.8738.8838.90T:bblake256
40.9641.0241.18T:blake2b
44.9244.9344.94T:k12
48.8748.8748.93T:skein256256
66.2466.2666.50T:skein512512
66.2566.2766.41T:skein512256
68.1568.1868.62shake128
77.2177.2677.56sha3224
77.5977.6077.71T:blake64
81.9481.9882.28sha3256
82.0982.1682.51shake256
86.0286.0686.25T:keccakc448
87.8188.6289.72blake512
91.5091.5391.74T:keccakc512
96.9997.1897.26T:keccak
102.82102.86103.22sha3384
106.41106.45106.70T:skein10241024
116.00116.04116.27T:keccakc768
132.83132.90133.25T:groestl256
142.18142.39142.60sha3512
162.14162.26162.48T:keccakc1024
185.56185.97186.80T:groestl512
228.22228.35228.59T:jh224
228.25228.38228.64T:jh256
228.24228.41228.64T:jh384
228.27228.42228.64T:jh512
321.31321.52321.94T:round3jh256
321.34321.72321.95T:round3jh512
Cycles/byte for 1536 bytes
25%50%75%hash
21.17?21.61?23.69?T:blake2s
30.1630.2031.00T!!!sha256
30.1530.2630.90T!!!sha224
30.2330.2930.97T:blake32
34.8834.9235.59T!!!sha384
34.9334.9535.65T!!!sha512
36.4436.4837.22blake256
41.6141.7843.62T:blake2b
45.1945.1945.75T:bblake256
48.3348.3449.19T:k12
49.9049.9050.69T:skein256256
68.2868.3169.09T:skein512512
68.2768.3569.50T:skein512256
74.8674.9275.73shake128
80.0280.0781.27sha3224
82.0482.1082.67T:blake64
86.4386.5286.82sha3256
86.8287.0087.87shake256
88.0088.0688.83T:keccakc448
93.0194.1494.57blake512
95.4095.4095.55T:keccakc512
102.67102.74103.26T:keccak
104.66104.73105.65sha3384
112.46112.51113.03T:skein10241024
116.88116.90117.12T:keccakc768
138.47138.53140.17T:groestl256
148.25148.31149.05sha3512
167.58167.62167.83T:keccakc1024
200.45200.84202.30T:groestl512
234.27234.29234.63T:jh224
234.29234.30234.63T:jh384
234.29234.40235.25T:jh256
234.32234.49235.05T:jh512
329.64329.74330.86T:round3jh256
329.66329.81330.51T:round3jh512
Cycles/byte for 576 bytes
25%50%75%hash
21.5321.5422.20T:blake2s
33.5233.7035.48T!!!sha224
33.4233.7036.02T!!!sha256
33.3933.7736.69T:blake32
37.2537.5739.79T!!!sha384
37.3737.6739.83T!!!sha512
39.97?40.90?45.38?blake256
47.89?48.91?63.15?T:blake2b
53.58?53.90?60.63?T:k12
52.88?54.25?59.61?T:skein256256
62.10?62.44?69.88?T:bblake256
73.72?74.36?84.22?T:skein512256
73.74?74.69?84.69?T:skein512512
85.7286.0190.54T:blake64
85.7786.3190.22shake128
100.70101.06105.11sha3256
101.00101.24104.82sha3224
99.17?101.55?119.72?blake512
101.84102.23105.03shake256
107.85108.45110.13T:keccak
108.29108.63112.03T:keccakc512
108.66108.79111.55T:keccakc448
116.43116.55120.51sha3384
126.87127.10129.99T:keccakc768
139.99140.12142.07T:skein10241024
153.46153.50157.00T:groestl256
166.41166.61169.89sha3512
184.33184.42187.46T:keccakc1024
220.89221.60228.14T:groestl512
250.45250.46252.39T:jh224
250.51250.52252.40T:jh384
250.49250.54256.73T:jh256
250.54250.68253.22T:jh512
352.27352.29354.51T:round3jh256
352.30352.33354.95T:round3jh512
Cycles/byte for 64 bytes
25%50%75%hash
27.8327.8829.77T:blake2s
72.5872.6776.89T:blake32
74.7575.0576.50T!!!sha256
75.9876.9277.92T!!!sha224
80.9881.0283.22T!!!sha384
82.6982.8188.88blake256
82.7882.9788.02T!!!sha512
87.69?87.88?100.17?T:skein256256
101.42?103.53?126.22?T:blake2b
136.92137.31144.70T:k12
141.61143.05149.31T:skein512256
142.27144.44152.80T:skein512512
169.09169.78176.89T:blake64
206.09?207.19?230.45?T:keccakc1024
214.09215.44237.41T:keccakc768
221.06221.59230.05T:keccakc512
222.89?226.73?251.67?T:keccakc448
230.95?232.97?268.34?sha3384
220.08?233.61?248.28?T:keccak
231.09?235.28?257.72?sha3512
233.67235.39247.44sha3256
235.00238.17251.80sha3224
246.47?251.92?286.45?shake256
255.38?258.14?291.53?shake128
222.44?272.34?372.55?blake512
277.50?279.59?314.34?T:bblake256
347.27352.31377.41T:groestl256
437.38?453.50?486.27?T:skein10241024
458.94?463.66?510.64?T:jh384
458.52465.73502.83T:jh224
459.83467.14496.77T:jh512
460.00470.19493.84T:jh256
566.88?572.77?631.31?T:groestl512
642.22?653.45?721.42?T:round3jh512
641.58?656.36?760.94?T:round3jh256
Cycles/byte for 8 bytes
25%50%75%hash
217.75217.75218.38T:blake2s
352.50352.75359.88T:blake32
380.38381.88400.12T!!!sha256
379.75383.62389.62T!!!sha224
400.25401.00403.50blake256
499.75504.50505.00T:skein256256
650.62651.12668.62T!!!sha384
659.50660.50682.50T!!!sha512
818.62?850.00?971.62?T:blake2b
1040.25?1050.88?1291.50?T:k12
1146.121152.251236.62T:skein512256
1151.881155.121173.12T:skein512512
1344.251350.251427.50T:blake64
1649.501653.881698.38T:keccakc1024
1706.001714.751794.88T:keccakc768
1743.621759.381875.38T:keccak
1764.881767.001806.75T:keccakc512
1778.001789.121819.00T:keccakc448
1734.00?1799.38?2076.62?T:groestl256
1849.001891.382024.88sha3384
1867.751894.881973.50sha3256
1849.88?1897.00?2115.75?sha3512
1876.50?1903.62?2087.00?sha3224
1949.121954.752013.88T:bblake256
2017.25?2037.38?2345.88?shake128
1976.75?2076.50?2352.00?shake256
1864.50?2297.75?2975.88?blake512
3506.75?3638.00?3900.25?T:skein10241024
3678.503713.754002.25T:jh384
3698.383827.754027.50T:jh256
3672.883840.003965.75T:jh224
3736.753896.124062.75T:jh512
4574.12?4792.88?5451.12?T:groestl512
5154.005217.385720.25T:round3jh512
5144.255222.755583.12T:round3jh256