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

[Page version: 20260422 02:30:56]

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 (or StQ1 starting with supercop-20260214), the median of many speed measurements (or StQ2 starting with supercop-20260214), the third quartile of many speed measurements (or StQ3 starting with supercop-20260214), and the name of the primitive. Measurements with large interquartile range (or stabilized interquartile range) 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.708.748.76T:blake2b
9.399.439.46T:k12
11.0511.0611.08T:blake2s
11.5711.5811.58T:blake32
11.8711.8811.88T:skein512256
11.9111.9211.93T:skein512512
12.3812.4012.43T:blake64
12.5012.5112.52T:skein256256
12.8312.8412.84T:keccakc256treed2
13.8213.8413.87blake512
14.0814.3014.74blake256
14.7414.7914.84T:bblake256
17.1717.1817.19T:keccakc512treed2
16.9717.2417.82sha512
17.0217.3318.28sha384
18.4518.4618.47shake128
18.9819.0119.04T:skein10241024
20.1020.4220.68sha224
20.2520.5221.03sha256
21.5221.5321.54sha3224
21.2421.8222.04T:keccakc448
22.4622.7623.14T:keccakc512
23.0423.0523.06sha3256
23.0123.0723.11shake256
24.0124.2524.80T:keccak
26.2026.2226.23T:jh224
26.2126.2226.23T:jh512
26.2126.2226.24T:jh256
26.2126.2326.24T:jh384
30.2030.2930.41T:keccakc768
30.5430.5630.58T:round3jh512
30.4830.5730.72T:round3jh256
30.6130.6130.62sha3384
32.1332.2132.49T:groestl256
41.7742.2044.11T:keccakc1024
42.7242.7642.79sha3512
48.4048.4848.56T:groestl512
Cycles/byte for 4096 bytes
25%50%75%hash
8.778.778.78T:blake2b
9.949.959.96T:k12
11.0811.0811.08T:blake2s
11.8811.8811.88T:blake32
12.1412.1412.14T:skein512256
12.1812.1812.18T:skein512512
12.6912.7012.70T:skein256256
12.8812.8812.89T:blake64
14.3514.3514.37blake512
14.6114.6214.83blake256
15.0815.0915.09T:keccakc256treed2
15.9916.0016.02T:bblake256
18.3818.3818.39T:keccakc512treed2
18.8918.9219.19sha512
18.9118.9619.40sha384
19.2619.2619.27shake128
19.6919.7119.72T:skein10241024
21.8821.9021.99sha224
21.8521.9122.11sha256
22.3222.3322.33sha3224
22.1722.4422.53T:keccakc448
23.6423.6723.84T:keccakc512
23.8323.8323.83sha3256
23.8523.8523.86shake256
25.0925.1225.39T:keccak
26.6526.6526.66T:jh256
26.6526.6526.66T:jh384
26.6526.6526.66T:jh512
26.6526.6526.66T:jh224
30.4030.4230.47T:keccakc768
30.6530.6530.65sha3384
31.0531.0631.06T:round3jh512
31.0631.0731.14T:round3jh256
33.5433.5733.69T:groestl256
43.1743.2344.09T:keccakc1024
43.5543.5643.57sha3512
51.2451.2551.27T:groestl512
Cycles/byte for 1536 bytes
25%50%75%hash
8.828.838.85T:blake2b
10.7810.8010.82T:k12
11.0811.1011.11T:blake2s
12.3812.3812.38T:blake32
12.5812.5812.58T:skein512512
12.5812.5812.58T:skein512256
12.9813.0113.01T:skein256256
13.6713.6813.70T:blake64
15.1415.1615.38blake256
15.1915.2015.22blake512
17.4417.4417.45T:keccakc256treed2
18.0118.0318.06T:bblake256
20.3920.3920.41T:keccakc512treed2
20.5920.6120.72shake128
20.8820.8920.92T:skein10241024
21.7121.8122.06sha512
21.7221.8222.11sha384
22.5722.6022.65T:keccakc448
22.6422.6422.66sha3224
24.1124.2224.56sha256
24.2524.3524.84sha224
24.6224.6224.62sha3256
24.6524.6624.73shake256
24.6524.6824.84T:keccakc512
26.5126.5526.73T:keccak
27.3627.3627.37T:jh384
27.3627.3627.37T:jh256
27.3727.3727.38T:jh512
27.3727.3827.39T:jh224
30.6830.7230.83T:keccakc768
30.7230.7230.73sha3384
31.8831.8931.89T:round3jh512
31.8931.9031.97T:round3jh256
35.8035.8736.06T:groestl256
44.8844.8844.92sha3512
44.6845.0145.58T:keccakc1024
55.8255.8555.90T:groestl512
Cycles/byte for 576 bytes
25%50%75%hash
9.909.9510.03T:blake2b
11.0911.1011.14T:blake2s
12.0412.0812.15T:k12
13.6213.6213.62T:skein512512
13.7213.7213.73T:skein256256
13.7313.7313.75T:blake32
13.7413.7413.74T:skein512256
14.5114.5214.52T:blake64
15.9015.9215.95blake512
16.4916.5316.69blake256
22.1622.2122.52shake128
23.3023.3623.46T:bblake256
23.6723.6823.72T:keccakc256treed2
26.2426.2826.38T:skein10241024
27.4827.4927.53sha3224
27.2527.5428.07sha384
27.2627.5628.28sha512
27.5827.6427.80shake256
27.5127.7127.93sha3256
27.7427.7927.95T:keccak
27.8328.0728.35T:keccakc448
27.9828.1928.74T:keccakc512
29.2629.2729.29T:jh384
29.2729.2729.29T:jh256
29.2929.2929.31T:jh224
29.2929.3029.31T:jh512
30.2230.4231.07sha256
30.3630.5731.15sha224
31.3731.4131.43T:keccakc512treed2
32.9332.9332.93sha3384
33.2333.3333.52T:keccakc768
34.1034.1034.11T:round3jh512
34.1034.1434.19T:round3jh256
41.9142.0142.14T:groestl256
49.0549.0949.18sha3512
49.3950.1850.38T:keccakc1024
62.5962.7562.84T:groestl512
Cycles/byte for 64 bytes
25%50%75%hash
11.3811.4611.85T:blake2s
19.0019.0019.04T:blake2b
23.1923.1923.21T:skein256256
26.6626.6626.66T:skein512512
27.9727.9728.02T:skein512256
29.8029.8330.18T:blake64
30.3630.3630.71T:blake32
31.8132.0232.45T:k12
32.2832.4132.68blake512
33.4833.6733.93blake256
49.7549.7549.79sha3256
50.5350.5350.75sha3224
50.8350.8350.95sha3384
50.9250.9251.14sha3512
51.0251.0251.22shake256
51.0851.0851.39shake128
53.3853.4253.85T:jh384
53.4553.5254.20T:jh256
53.6653.6653.89T:jh512
53.6253.6853.97T:jh224
55.3655.8357.69T:keccakc1024
55.2255.9558.94T:keccak
55.5056.0558.54T:keccakc768
56.5456.7858.08T:keccakc448
57.06?57.90?66.48?T:keccakc512
62.2362.2662.40T:round3jh512
62.2062.2862.55T:round3jh256
83.5283.5283.99T:skein10241024
91.6191.6191.91T:bblake256
103.66105.50112.10sha384
107.08?109.97?121.70?sha512
108.84110.66119.24sha256
110.28112.59119.63sha224
117.40119.19121.74T:groestl256
144.12144.14144.19T:keccakc256treed2
144.87144.91145.01T:keccakc512treed2
173.58173.76174.17T:groestl512
Cycles/byte for 8 bytes
25%50%75%hash
96.5096.5198.25T:blake2s
133.38133.38133.69T:skein256256
151.38151.38152.14T:blake2b
156.00156.00156.64T:blake32
160.20160.58161.56blake256
212.62212.62214.58T:skein512512
226.12226.12226.89T:skein512256
243.34244.12245.16T:blake64
256.00257.99262.27T:k12
266.43266.55270.22blake512
397.00397.00399.21sha3256
402.88402.88404.48sha3224
405.62405.62407.21sha3384
405.38406.31408.74sha3512
406.75406.75407.89shake256
407.25407.25408.99shake128
430.00430.96432.30T:jh384
430.39431.33433.39T:jh224
430.99431.62432.27T:jh256
431.23432.20433.41T:jh512
443.62445.42450.53T:keccakc1024
443.81450.47458.51T:keccak
447.96451.04458.36T:keccakc448
447.25451.79456.39T:keccakc512
448.07454.80461.92T:keccakc768
499.12499.29500.64T:round3jh512
498.75499.34501.82T:round3jh256
616.00616.09616.67T:bblake256
666.75666.75667.19T:skein10241024
673.93677.35685.85T:groestl256
692.90706.70749.27sha256
700.82713.98751.56sha224
840.14855.60895.48sha384
846.92869.11915.61sha512
1152.761153.341154.71T:keccakc256treed2
1158.071158.441159.74T:keccakc512treed2
1392.721402.151405.92T:groestl512