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 stream ciphers on one machine: amd64; Bonnell (106ca); 2010 Intel Atom N455; 1 x 1000MHz; h2atom, supercop-20260330

[Page version: 20260925 12:53:05]

eBASC (ECRYPT Benchmarking of Stream Ciphers) is a project to measure the performance of stream ciphers. This page presents benchmark results collected in eBASC:

Graphs show timings for all message lengths between 0 and 4096 bytes. The stair-step shape of a typical curve on the graphs reflects the fact that these stream ciphers handle messages in blocks, such as 64-byte blocks.

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 stream cipher and each implementation. Designers and implementors interested in submitting new stream ciphers and new implementations should read the call for submissions.


Test results

Graphs: old (bytes,cycles)
Cycles/byte for long messages
25%50%75%stream
3.213.213.25chacha8
3.593.593.62salsa208
3.643.653.85tango642
4.214.214.22chacha12
4.834.834.83salsa2012
5.125.135.14T:tpy
5.245.255.27T:tpy6
6.206.216.23chacha20
6.396.396.40T:cryptmtv3
6.396.416.67T:hc128
7.017.027.02xsalsa20
7.017.027.02salsa20
7.207.287.42T:panama
7.927.988.26T:tpypy
7.83?8.23?8.75?T:hc256
8.27?8.37?12.24?T:snow20
9.709.7010.19T:sosemanuk
11.6611.6711.76T:nlsv2
11.9211.9511.98T:speck6496ctr
12.5612.5712.62T:speck64128ctr
12.8912.9413.07T:rabbit
17.2317.2517.42T:lexv2
17.56?17.91?19.76?T:speck128192ctr
17.36?19.26?26.70?T:speck128128ctr
19.3119.3219.71T:simon6496ctr
19.2419.5019.63T:trivium
20.3220.4820.66T:speck128256ctr
21.8421.9222.54T:simon64128ctr
28.2428.2928.44T:aes128estream
29.6029.6530.64T:simon128128ctr
34.3334.4235.89T:simon128256ctr
41.0441.1341.44T:aes256estream
59.6960.2560.59T:ocelot1
61.1061.5461.93T:ocelot2
65.2466.7067.47T:aes128ctr
75.2976.8577.46T:aes192ctr
86.4787.9188.39T:aes256ctr
121.10125.85126.81T:amastrid
Cycles/byte for 4096 bytes
25%50%75%stream
3.263.263.29chacha8
3.663.663.68salsa208
4.264.264.27chacha12
4.344.344.49tango642
4.874.874.87salsa2012
6.266.266.27chacha20
6.736.746.75T:tpy6
7.067.067.06salsa20
7.197.197.20T:cryptmtv3
7.317.317.31xsalsa20
8.56?8.64?11.53?T:snow20
8.648.648.65T:tpy
9.919.9210.01T:panama
10.1110.1110.48T:sosemanuk
11.1911.2111.41T:tpypy
12.0612.0612.08T:speck6496ctr
12.1712.1712.24T:nlsv2
12.6912.6912.72T:speck64128ctr
13.3513.3813.47T:rabbit
15.8315.8516.03T:hc128
17.6417.6617.78T:lexv2
19.19?19.38?24.90?T:speck128128ctr
20.1720.1720.26T:speck128192ctr
20.1720.1820.47T:simon6496ctr
20.2320.2320.33T:trivium
20.6020.6020.73T:speck128256ctr
22.8822.8823.34T:simon64128ctr
28.3728.3928.51T:aes128estream
31.0131.0231.76T:simon128128ctr
31.3031.3231.70T:hc256
37.4337.4938.59T:simon128256ctr
41.3141.3441.55T:aes256estream
64.0564.2264.47T:ocelot1
65.0065.2765.54T:ocelot2
67.4968.2268.77T:aes128ctr
77.7178.3578.80T:aes192ctr
89.1889.6589.91T:aes256ctr
127.31130.61130.98T:amastrid
Cycles/byte for 1536 bytes
25%50%75%stream
3.343.343.35chacha8
3.773.773.78salsa208
4.344.344.34chacha12
4.944.944.94salsa2012
5.505.505.82tango642
6.346.346.36chacha20
7.137.137.13salsa20
7.797.797.80xsalsa20
9.029.039.05T:snow20
9.079.089.08T:cryptmtv3
9.209.219.23T:tpy6
11.0111.0111.02T:sosemanuk
12.2512.2512.27T:speck6496ctr
12.8812.8812.95T:speck64128ctr
13.3613.3713.44T:nlsv2
14.0814.1114.12T:rabbit
14.2814.3314.84T:panama
14.5014.5014.55T:tpy
16.5416.5516.57T:tpypy
18.3318.3418.35T:lexv2
19.37?19.51?24.76?T:speck128128ctr
20.44?20.60?25.96?T:speck128192ctr
20.7820.7922.29T:speck128256ctr
21.4421.4421.48T:trivium
21.5921.5921.61T:simon6496ctr
24.4724.4825.56T:simon64128ctr
28.5528.5629.13T:aes128estream
31.5531.5531.71T:hc128
33.3033.3033.87T:simon128128ctr
41.6141.6741.88T:aes256estream
42.5842.5843.31T:simon128256ctr
69.7769.7870.23T:hc256
70.2370.3172.19T:aes128ctr
70.7470.7971.43T:ocelot1
71.1971.3371.72T:ocelot2
80.5480.6182.27T:aes192ctr
91.8592.2494.62T:aes256ctr
129.43137.95139.04T:amastrid
Cycles/byte for 576 bytes
25%50%75%stream
3.563.563.58chacha8
4.124.124.13salsa208
4.584.584.59chacha12
5.125.125.13salsa2012
6.626.626.66chacha20
7.317.317.32salsa20
8.538.548.56tango642
9.099.099.11xsalsa20
10.2810.3110.31T:snow20
10.7010.7110.71T:cryptmtv3
12.5812.5812.61T:speck6496ctr
13.2013.2013.21T:speck64128ctr
13.4313.4313.43T:sosemanuk
15.8015.8315.87T:tpy6
16.0216.0216.02T:nlsv2
16.0116.0516.07T:rabbit
19.9119.9119.96T:speck128128ctr
20.2020.2120.22T:lexv2
20.96?21.05?28.37?T:speck128192ctr
21.3521.3521.37T:speck128256ctr
24.6824.6824.71T:trivium
25.8825.9926.15T:panama
28.3028.3128.51T:simon6496ctr
29.0629.0629.09T:aes128estream
30.1130.1230.14T:tpy
30.9430.9731.02T:tpypy
35.0635.1935.42T:simon64128ctr
42.5242.5442.62T:aes256estream
68.0568.0668.26T:simon128128ctr
73.5073.5073.63T:hc128
75.7475.7575.77T:simon128256ctr
78.1878.3280.92T:aes128ctr
88.3288.3489.70T:ocelot2
88.3588.4690.10T:aes192ctr
88.5988.6389.24T:ocelot1
100.07100.30101.34T:aes256ctr
153.49157.23158.53T:amastrid
172.41172.43174.26T:hc256
Cycles/byte for 64 bytes
25%50%75%stream
5.675.675.87chacha8
6.866.867.14chacha12
6.916.917.18salsa208
7.237.237.39salsa2012
9.239.239.39chacha20
9.429.449.55salsa20
16.7216.7216.97T:speck6496ctr
17.2317.2317.62T:speck64128ctr
25.3025.3025.58xsalsa20
25.8825.8826.24T:speck128128ctr
26.3826.3826.88T:snow20
27.56?28.07?39.33?T:speck128192ctr
27.66?28.22?34.76?T:speck128256ctr
30.5330.6430.64T:cryptmtv3
32.7532.7532.92T:simon6496ctr
33.5733.6033.93T:simon64128ctr
35.2735.2735.70T:aes128estream
37.8037.8037.87T:sosemanuk
40.6240.7040.85T:rabbit
43.3343.3643.51T:lexv2
47.3947.3947.64tango642
51.98?52.38?78.85?T:simon128128ctr
54.0554.1154.25T:aes256estream
58.48?58.55?76.46?T:nlsv2
65.5665.5666.05T:simon128256ctr
65.9465.9465.94T:trivium
99.89100.05100.25T:tpy6
174.21175.44176.57T:panama
181.19182.79184.27T:aes128ctr
190.52191.39192.98T:aes192ctr
207.72208.63210.56T:aes256ctr
215.23215.37216.18T:tpypy
229.62229.77229.88T:tpy
305.12305.64308.07T:ocelot2
315.70316.66318.26T:ocelot1
409.69410.53411.26T:amastrid
610.06610.12616.62T:hc128
1485.811485.961496.42T:hc256
Cycles/byte for 8 bytes
25%50%75%stream
42.7542.7543.62T:speck6496ctr
43.7543.7544.48T:speck64128ctr
44.2544.2544.25T:speck128256ctr
47.7547.7547.90T:speck128128ctr
50.25?52.12?76.66?T:speck128192ctr
55.8855.8857.16chacha8
65.3865.3866.66chacha12
67.7567.7567.75salsa2012
84.3884.3885.66chacha20
85.2585.2586.12salsa20
93.3893.3896.51T:simon6496ctr
111.25111.25113.83T:simon64128ctr
115.62115.62116.93T:aes128estream
126.75126.75126.75salsa208
144.00144.00145.27T:simon128128ctr
180.12180.12181.47T:simon128256ctr
190.12190.12191.11T:aes256estream
199.82200.62202.86T:cryptmtv3
209.50209.50210.14T:snow20
213.38213.38213.38xsalsa20
233.50233.50234.81T:lexv2
249.92250.17251.00T:rabbit
272.38272.38273.46T:nlsv2
295.38295.38295.97T:sosemanuk
352.88352.88354.91tango642
391.25391.25395.21T:trivium
760.92763.04765.59T:tpy6
1086.99?1099.03?1464.76?T:aes128ctr
1092.531100.451110.38T:aes192ctr
1153.071159.511170.55T:aes256ctr
1403.811411.901424.78T:panama
1659.241660.061661.10T:tpypy
1797.431798.501798.67T:tpy
2019.302021.202025.46T:ocelot2
2107.992112.002113.88T:ocelot1
2656.012665.652675.64T:amastrid
4876.504876.504878.69T:hc128
11884.3811884.9611991.42T:hc256