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 public-key signature systems on one machine: amd64; K10 32nm (300f10); 2011 AMD A6-3650; 4 x 2600MHz; hydra4, supercop-20241022

[Page version: 20241109 15:41:15]

eBATS (ECRYPT Benchmarking of Asymmetric Systems) is a project to measure the performance of public-key systems. This page presents benchmark results collected in eBATS for public-key signature systems:

For signature systems that support "message recovery", the space for a signature on a long message is shorter than the space for a signature on a short message.

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 signature system and each implementation. Designers and implementors interested in submitting new signature systems and new implementations of existing signature systems should read the call for submissions.


Test results

Graphs: old (pkcycles,pkbytes) (smcycles,sbytes) (mcycles,pkbytes) (mcycles,sbytes) (pkbytes,sbytes)

NISTPQC graphs: (pkcycles,pkbytes) (smcycles,sbytes) (mcycles,pkbytes) (mcycles,sbytes) (pkbytes,sbytes)

Measurement failures: ntrumls401x, ntrumls439x, ntrumls593x, ntrumls743x, qtesla128, qtesla192, qtesla256

Cycles to generate a key pair
25%50%75%system
742974497496picnicl1full
750475467631picnic3l1
105911064010682picnic3l3
106941072510751picnicl3full
139821401214173
T:
picnic2l1fs
139741401314111picnic3l5
140031410214182picnicl5full
143861439714436picnicl1ur
144031446014535picnicl1fs
279382803828161
T:
picnic2l3fs
284782853828578picnicl3ur
285162855628637picnicl3fs
363213641136670
T:
picnic2l5fs
371873728837564picnicl5ur
372673735437559picnicl5fs
672236725967462ed25519
147463147587148778aimer128s
147479147627147826aimer128f
178779179599180479
T:
ecdonaldp256
202198202462204283
T:
donald512
262158262828264047
T:
ecdonaldp224
300526301117303909
T:
ed448goldilocks
333089333376335086aimer192f
337863348726360401
T:
hector
402236402738403064aimer192s
438576441690445348nccsign1
444079444497444976T!!!dilithium2
530435531104534207
T:
donald1024
531502534589538372
T:
pass769
561501564341567675nccsign3
643542647953652725
T:
pass863
691087698634704133nccsign1aes
801865803007804993aimer256f
803741804451806376aimer256s
808783810466811444T!!!dilithium3
894039899995910987nccsign3aes
904795908621918518nccsign5
950087956400980594
T:
edons128k08n72nu8l4mu3
967192969441975176T!!!dilithium2aes
109942111111311122532
T:
ecdonaldp160
111836611194251121023
T:
ecdonaldp521
126846312692331269872T!!!dilithium5
131043413181831322342
T:
ecdonaldp192
138391913955751411239
T:
donald2048
139109514040081414886nccsign5aes
147716614787671481289
T:
mqdss48
175395217574211764946T!!!dilithium3aes
194619619494081952833
T:
ecdonaldk163
203954020431882062323
T:
ecdonaldb163
1451127?2286715?4816165?haetae3
1119756?2311871?3987859?haetae2
1948056?2545967?3210941?
T:
qtesla1
261074726280312643783
T:
ecdonaldk233
284663028523532873479
T:
ecdonaldb233
296902029750772982741T!!!dilithium5aes
300085730081653013190
T:
edons128ref
342958634312983433794
T:
mqdss64
2033929?3543179?6559963?haetae5
477579447827284787989
T:
ecdonaldp384
552248955822625600345
T:
ecdonaldk283
3862319?5644480?7449502?
T:
qtesla3f
594145559494275971956
T:
ecdonaldb283
8998890?10204470?12550281?
T:
qtesla1p
110339241103456311035950
T:
sphincsf128shake256simple
116077061169083911794150
T:
ecdonaldk409
129302781304885413149766
T:
ecdonaldb409
133900901339641313399656
T:
sphincsf128harakasimple
9525734?14128813?18760929?
T:
qtesla3s
153876621539048715394338
T:
sphincs256
161500201615174116156440
T:
sphincsf192shake256simple
197591071976740019768867
T:
sphincsf192harakasimple
15940334?20986155?33523228?
T:
rwb0fuz1024
210018762100344921005450
T:
sphincsf128shake256robust
223517362236301722518094
T:
sphincsf128harakarobust
249088932495501725089515
T:
luov4849242
249731032514453525352770
T:
ecdonaldk571
277780722780392927843295
T:
ecdonaldb571
309621173096563130972600
T:
sphincsf192shake256robust
292475203124520935306902
T:
falcon512tree
291941693144659836277029
T:
falcon512dyn
315111783164740532009261
T:
luov863256
333422393337116833475413
T:
sphincsf192harakarobust
368621093690824236965943
T:
rainbow1aclassic363232
395816633961599739802511
T:
rainbow1acompres363232
422279564222942542231447
T:
sphincsf256shake256simple
420294174233848142541794
T:
rainbow1acyclicc363232
38451213?48912039?59206279?
T:
qtesla3p
33259358?52417049?81008233?
T:
ronald512
526332275264177552649729
T:
sphincsf256harakasimple
715353177171357471992215
T:
luov6468330
801154568011998480124472
T:
sphincsf256shake256robust
880617698824528688629113
T:
sphincsf256harakarobust
8890854192100051101542812
T:
falcon1024tree
8891849794054361109074480
T:
falcon1024dyn
55214424?109726978?172339416?
T:
ronald768
124166798124363507124917171
T:
luov890351
142883598143520779144036843
T:
luov8086399
98528413?147733179?247441267?
T:
ronald1024
215932461216221197216530396
T:
luov8117404
257414750257489060257641776mqsignlr2567246
314006618314125792314466601mqsignrr2567246
351482857351831470353568389
T:
sphincss128shake256simple
355029305355403487356899289
T:
rainbow3cclassic683248
425234271425424738427893211
T:
sphincss128harakasimple
436219292436446545437069057
T:
rainbow3ccompres683248
436604425437043793440251184
T:
rainbow3ccyclicc683248
452468757452573946452695563
T:
sflashv2
290719369?497231143?720011643?
T:
ronald1536
520937207522421079527366046
T:
sphincss192shake256simple
629097836629331537629378469
T:
sphincss192harakasimple
653857837653987356654072670
T:
redgemss128v2
673100836673764088677493724
T:
sphincss128shake256robust
678106211680665856687532368
T:
sphincss256shake256simple
430117772?711572010?1079063435?
T:
ronald2048
714543700714732260715305682
T:
sphincss128harakarobust
840462268840595092840859567
T:
sphincss256harakasimple
990997517991018366992367209
T:
sphincss192shake256robust
101122216210120840631014401036
T:
rainbow5cclassic963664
123347940512339205921236980463
T:
rainbow5ccompres963664
123409399312366820231238399188
T:
rainbow5ccyclicc963664
127742278412778055061278597167
T:
sphincss256shake256robust
140712777714112151401411430935
T:
sphincss256harakarobust
143358731914402710691447137315
T:
redgemss128
173671326217368685531737205032
T:
bluegemss128v2
178861673217889227411789914589mqsignlr25611272
193824703419388288961940069437
T:
rainbow1a
196254489719627852541962988935mqsignrr25611272
202051885020300296352060246911
T:
bluegemss128
1579079710?2919230315?4643134345?
T:
ronald3072
334532358933495001203351020343
T:
redgemss192v2
468773906146970441814718075747
T:
gui184
524423009052460164255247118156mqsignlr25614896
528576158653095651275352835920
T:
redgemss192
3201180066?5522492488?10016608531?
T:
ronald4096
567841125856802299595684055049mqsignrr25614896
571407673458440315956029383244
T:
pqrsa15
730764202673369577987365157085
T:
bluegemss192
744383753274488509827453133697
T:
rainbow1c
101798930091018278909410185008793
T:
redgemss256v2
137570611611385636704913935624231
T:
redgemss256
158302799261583149775015832478280
T:
rainbow1b
174689236801748741766217494973550
T:
rainbow4a
181034498701815216267118407599596
T:
bluegemss256
Cycles to sign 59 bytes
25%50%75%system
719307197272056ed25519
224179225137225792
T:
sflashv2
243483244225247236
T:
ecdonaldp256
310745311352313629
T:
ed448goldilocks
354340354922356365
T:
rainbow1aclassic363232
363158366529368021
T:
ecdonaldp224
356201367041372861
T:
hector
366406367395369169
T:
rainbow1acyclicc363232
380489382910384937
T:
donald512
604511612402621534
T:
ronald512
664209?668136?1323837?
T:
pass769
714045717017724821
T:
donald1024
805503806592816277
T:
rainbow1a
471468?873740?1563539?
T:
qtesla1
107962810962671103204
T:
falcon512tree
111566111248711135155
T:
ronald768
1119457?1128423?1607999?nccsign1
114994011531771158754
T:
ecdonaldp160
122080612298501235905
T:
rwb0fuz1024
136904813781661380947
T:
ecdonaldp192
138726613956201405245
T:
donald2048
1405524?1433959?2117078?nccsign1aes
148963415033491521495
T:
ronald1024
879299?1577945?3115047?T!!!dilithium2
799881?1629686?2421207?
T:
pass863
723082?1695733?2916971?
T:
qtesla3f
171219417154821720803
T:
ecdonaldp521
171935117315411742640
T:
falcon512dyn
201307220184742022041
T:
ecdonaldk163
206061820665032080340
T:
edons128k08n72nu8l4mu3
1372903?2114810?2712309?nccsign3
211225821162402120301
T:
ecdonaldb163
219107822041002214892
T:
falcon1024tree
224623922467962247496mqsignlr2567246
242593324277322428171
T:
rainbow3ccyclicc683248
242558224294782433449
T:
rainbow3cclassic683248
254787925484972549439
T:
rainbow4a
1778500?2553709?3257836?nccsign3aes
1392931?2640203?3718128?T!!!dilithium2aes
272084027345052790225
T:
ecdonaldk233
1823239?2751343?3977114?T!!!dilithium3
278251227833502787179
T:
rainbow1c
1366188?2798886?4375388?
T:
qtesla1p
288411628881632895227
T:
ecdonaldb233
2383747?3408999?4287098?nccsign5
346600134669643468113mqsignrr2567246
350906535360543557385
T:
falcon1024dyn
1973016?3618895?6334888?
T:
qtesla3s
2824266?3739536?5381898?T!!!dilithium5
397477039984354020938
T:
ronald1536
2982233?4158160?5578375?nccsign5aes
479029147975254806312
T:
edons128ref
2947374?5054113?6527185?T!!!dilithium3aes
510233951239805127007
T:
rainbow5ccyclicc963664
510884451248635127616
T:
rainbow5cclassic963664
528271353036815323160
T:
ecdonaldp384
547194254736795478133
T:
rainbow1b
567902157133615769995
T:
ecdonaldk283
3841157?5767257?8067515?T!!!dilithium5aes
609812461075966118376
T:
ecdonaldb283
658054765907476593299aimer128f
681025268319446856184
T:
ronald2048
4336378?7080307?13842680?haetae2
2558881?8787964?15071720?haetae3
945264594549009505018picnicl1full
103547301037753610392854
T:
luov863256
5814147?10650081?19927402?
T:
qtesla3p
112309961124954211250615mqsignlr25611272
118610791192246112059630
T:
ecdonaldk409
127164951273280612746144picnicl1fs
132319691325999013301207
T:
ecdonaldb409
8183646?13297570?18373386?haetae5
159159281593623915956897picnicl1ur
169104761691600516923251aimer192f
174315741743244417433838mqsignrr25611272
186885691871939218744307picnicl3full
187696641879970018841382
T:
ronald3072
231300962316505623177939
T:
rainbow1acompres363232
255122002557962825659571
T:
ecdonaldk571
256886242569175925697550mqsignlr25614896
284611522848564028530234
T:
ecdonaldb571
304777883051665030572585picnicl5full
319026813193316831943786picnicl3fs
336127013371064633765762aimer256f
377943753780542037836068
T:
luov890351
396829053972885239795296
T:
ronald4096
398455963994408439952167mqsignrr25614896
410862404109233341096561picnicl3ur
438842174400120244097805picnic3l1
518731685189221951962023aimer128s
537038425377196853885429
T:
luov4849242
542158745431517354376634picnicl5fs
47949052?58026156?69747558?
T:
redgemss128
626406026273625263074451
T:
luov8117404
672177396726302367330581picnicl5ur
870163998702661487031450
T:
mqdss48
983441369865122598735691picnic3l3
109955064?129650299?149492942?
T:
redgemss192
131315494131403845131749282aimer192s
133088779?160936271?196773593?
T:
redgemss256
163430844163519838163611481picnic3l5
168828199169488401170315727
T:
luov6468330
181876029182085065182361157
T:
pqrsa15
252027643252470332252750048
T:
rainbow3ccompres683248
257232531257442409257590418aimer256s
279385915279418832279527766
T:
mqdss64
285372744285476442285723497
T:
sphincs256
349032847349208949349343188
T:
sphincsf128shake256simple
362030145362817611363269954
T:
luov8086399
431479813431653358432514959
T:
picnic2l1fs
440739199441136061442261188
T:
sphincsf192shake256simple
493809152494164004494386056
T:
sphincsf128harakasimple
446245097?535028718?619961378?
T:
redgemss128v2
574584779575069851578628849
T:
sphincsf192harakasimple
631608424631844087632272554
T:
sphincsf128shake256robust
686178029686968161687626914
T:
rainbow5ccompres963664
804193471804910403805320969
T:
sphincsf128harakarobust
830493920831021591831449144
T:
sphincsf192shake256robust
966921952967349152969047863
T:
sphincsf256shake256simple
979756154980366602982720800
T:
sphincsf192harakarobust
129349822612946656551297833195
T:
picnic2l3fs
142944976614297287541430054024
T:
sphincsf256harakasimple
1424656228?1717133308?2275413957?
T:
redgemss192v2
177321183917744739771775867656
T:
sphincsf256shake256robust
237385269923755148832375977644
T:
sphincsf256harakarobust
273530108727358588202736707573
T:
picnic2l5fs
2371746374?2872200392?3363091344?
T:
bluegemss128
1620717715?3646545827?7697801623?
T:
gui184
3186993178?3838915874?4548706026?
T:
redgemss256v2
524326218552466025775254756188
T:
sphincss128shake256simple
4736366737?7055167490?8223946710?
T:
bluegemss192
790667438079076408447932586774
T:
sphincss128harakasimple
8080980379?8096074189?11320709073?
T:
bluegemss128v2
814860623681602762108216652506
T:
sphincss256shake256simple
936325532394500336349460590826
T:
sphincss128shake256robust
8772877325?10238979859?11706533721?
T:
bluegemss256
110259525371103925002511155968121
T:
sphincss192shake256simple
127191266111273913566612744412672
T:
sphincss256harakasimple
127715986331277351939712774242927
T:
sphincss128harakarobust
145526535481455419417614564063786
T:
sphincss256shake256robust
176871074971769232326817719050401
T:
sphincss192harakasimple
191660185271916842994019192001714
T:
sphincss192shake256robust
210567971082108901782421110941843
T:
sphincss256harakarobust
Cycles to verify 59 bytes
25%50%75%system
106121084211000
T:
rwb0fuz1024
415864172341917
T:
ronald512
442404515345601
T:
ronald768
527045389154401
T:
ronald1024
690016948870829
T:
ronald1536
859578801589349
T:
rainbow1aclassic363232
927699364494540
T:
ronald2048
128335130236130921
T:
falcon512tree
155660155973156408
T:
ronald3072
159930161801162548
T:
falcon512dyn
207369207840208379
T:
qtesla1
234521236100236925
T:
donald512
242943243563243804
T:
sflashv2
245306245878246196
T:
ronald4096
254975256540258057ed25519
261118263006264098
T:
falcon1024tree
281948289999296215
T:
redgemss128v2
288660295088302166
T:
bluegemss128v2
295282302261307423
T:
gui184
321623322070322528haetae2
331283332791333816
T:
falcon1024dyn
364218367479369425
T:
rainbow3cclassic683248
472334473063475100
T:
qtesla3f
510624511786512757
T:
ecdonaldp256
514750515160515540T!!!dilithium2
532435533033554109
T:
qtesla3s
544288546490554070
T:
donald1024
576093576790578900
T:
rainbow1a
591081591640592248haetae3
674419678249681065
T:
ecdonaldp224
681268695420698448nccsign1
720446721052722348haetae5
765106769153810900
T:
edons128k08n72nu8l4mu3
787864803456825970
T:
redgemss192v2
824566828312851978nccsign3
847988850677855774
T:
pass769
852656853797854410T!!!dilithium3
838682867084873468
T:
rainbow5cclassic963664
907735916435922569nccsign1aes
948651950121953925T!!!dilithium2aes
990517994447998369
T:
ed448goldilocks
100443710074011010337
T:
pass863
111392011202771129675
T:
ecdonaldp160
112966611486071153965nccsign3aes
117706011793801185448
T:
qtesla1p
127503812886701298081
T:
ecdonaldp192
139551813964761398931T!!!dilithium5
141089714512531458239nccsign5
145695014658281478926
T:
hector
162053516319401645202
T:
donald2048
163096716353311641801
T:
edons128ref
167099416774401684174T!!!dilithium3aes
180486918322941877723
T:
redgemss256v2
188501118917071900809nccsign5aes
242378124300062444819
T:
rainbow4a
243307224349382436451
T:
rainbow1c
296099729685752979274T!!!dilithium5aes
317841231791913183200mqsignlr2567246
317975531800943180477mqsignrr2567246
316664831838083188688
T:
ecdonaldp521
357636636186783649344
T:
sphincs256
390807039129973915893
T:
ecdonaldk163
410260741181814127438
T:
ecdonaldb163
425245842734094291228
T:
ecdonaldp384
511661051174315126998mqsignrr25611272
513192251407485164305mqsignlr25611272
519723952170455241950
T:
qtesla3p
529126753627355382221
T:
ecdonaldk233
560780356184895632349
T:
ecdonaldb233
574935658243485930885
T:
sphincss128shake256simple
584801658486505849855
T:
rainbow1b
613066461319066138712aimer128f
737797273831497439394picnicl1full
843293685879258780401
T:
sphincss128harakasimple
847180086147028751249
T:
luov863256
846612786485708792393
T:
sphincss192shake256simple
879731588992478941257
T:
rainbow1acompres363232
886786690180719405147
T:
rainbow1acyclicc363232
9884589996790310073659mqsignrr25614896
99700961001295310030598mqsignlr25614896
104412171046234810480405picnicl1fs
111921891123729711293615
T:
ecdonaldk283
110222721124418311435034
T:
sphincss256shake256simple
114150311163510912012987
T:
sphincss128shake256robust
120063991201767312045354
T:
ecdonaldb283
124985471266273712839072
T:
sphincss192harakasimple
129580681296611612973292picnicl1ur
139579631406652614285420
T:
sphincsf128shake256simple
144123891469135715138855
T:
sphincss128harakarobust
148646091490650014933109picnicl3full
157535951575623715776020aimer192f
166603801702432617294051
T:
sphincss192shake256robust
176387681779803318030753
T:
sphincss256harakasimple
194187591976906819888888
T:
sphincsf128harakasimple
215920402175236622017711
T:
sphincss256shake256robust
222079102244222722648498
T:
sphincsf192shake256simple
223193192253726422902006
T:
sphincsf256shake256simple
234625632357516023642450
T:
ecdonaldk409
245761682458468624601963picnicl5full
258750512591831226110853
T:
pqrsa15
263601742643732826517008
T:
ecdonaldb409
270673212707660827090453picnicl3fs
274272422786500428168072
T:
sphincsf128shake256robust
304622713069642930957367
T:
sphincsf192harakasimple
306367653104009331306774
T:
sphincss256harakarobust
314725583151073331514888aimer256f
328044893280655532815068
T:
luov890351
326008083296901533240524
T:
sphincsf256harakasimple
333046803374213834034341
T:
sphincsf128harakarobust
340561923407442234097205picnicl3ur
347254883474475934906736picnic3l1
354557413549144435625513
T:
luov4849242
362581093938545439754803
T:
bluegemss128
399088784092984041521912
T:
redgemss128
434906764404035144553915
T:
sphincsf256shake256robust
438968634418416244640796
T:
sphincsf192shake256robust
462222934627276146331549picnicl5fs
511537325132199651460568
T:
ecdonaldk571
513871045140272451567295aimer128s
528229815304656453400813
T:
rainbow3ccompres683248
534290955388350254294506
T:
sphincsf192harakarobust
539623835473057254868303
T:
rainbow3ccyclicc683248
546110195486759854932706
T:
luov8117404
562620015631087556372064
T:
ecdonaldb571
563781875640851756424032picnicl5ur
566195985709560457445951
T:
sphincsf256harakarobust
634797566436912364956913
T:
mqdss48
779645007805606378138479picnic3l3
918381949200743692199349
T:
luov6468330
913243479268588699370078
T:
bluegemss192
932093319359583093972892
T:
redgemss192
118905377119266600119917022
T:
rainbow5ccompres963664
120199861120944909121642396
T:
rainbow5ccyclicc963664
123531413123617035123759724picnic3l5
129714382130081776130142442aimer192s
151665002152229386182950522
T:
bluegemss256
156032780156536028157628438
T:
redgemss256
180756596180885448181157097
T:
picnic2l1fs
197767899198002068198140055
T:
luov8086399
205337188208248233209594367
T:
mqdss64
255477147255546953255803543aimer256s
422064760422379877423160316
T:
picnic2l3fs
758401895758746016759256582
T:
picnic2l5fs