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; Haswell+AES (306c3); 2013 Intel Core i7-4770; 4 x 3400MHz; speed2supercop, supercop-20241022

[Page version: 20241120 00:41:17]

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: (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
421642404260picnicl1full
441244324484picnic3l1
469247164772
T:
picnic2l1fs
616061846220picnicl1fs
615662086408picnicl1ur
623262646684picnic3l3
620062806564picnicl3full
785279448752picnicl5full
819290049660picnic3l5
875692089744
T:
picnic2l3fs
106041064810684picnicl3fs
107841083610876picnicl3ur
117841183611976
T:
picnic2l5fs
149441532417920picnicl5ur
145161538416444picnicl5fs
247642482424916
T:
lattisigns512
490124905249128aimer128f
543245443654608aimer128s
572085739657528ed25519
625486294463352T!!!dilithium2aes
948569586498360T!!!dilithium2
992849965299940dilithium3aes
113280113364113580aimer192s
113476113576113724aimer192f
126240126752129480
T:
ecdonaldp256
158320159264161456dilithium5aes
169864170168173540
T:
ecdonaldp224
170444170752171296T!!!dilithium3
174972175236175436
T:
ed448goldilocks
195392196180198040nccsign1aes
240204241392243552nccsign1
245828247020248212
T:
pass769
259280261336262744nccsign3aes
267236267612267944T!!!dilithium5
261392270520281172
T:
hector
299148299452301472aimer256f
299104299836300196aimer256s
297008299952304748
T:
pass863
319000322348323776nccsign3
397808400332402984nccsign5aes
490532491980496660nccsign5
648940656536662960
T:
donald1024
787532789088790864
T:
mqdss48
836200839312853884
T:
ecdonaldp160
873092875516886020
T:
ecdonaldk163
889648890512900196
T:
ecdonaldp521
894828896460907528
T:
ecdonaldb163
899268900116901552
T:
sphincsf128harakasimple
937596940032945612
T:
ecdonaldp384
630008?956004?2049408?haetae5
467724?959888?1582792?haetae3
536420?1009508?1404368?haetae2
101583210199121031804
T:
ecdonaldp192
118358011838721189876
T:
sphincsf128harakarobust
118239611883521197884
T:
ecdonaldk233
120675612094521219556
T:
ecdonaldb233
145507214567921457072
T:
sphincsf192harakasimple
1216392?1612824?2352896?
T:
qtesla1
174916417505081751036
T:
sphincsf192harakarobust
180483218064001809436
T:
mqdss64
195294819587321977392
T:
ecdonaldk283
205049220571642074852
T:
ecdonaldb283
215059621584082179340
T:
donald2048
273594027530522936424
T:
sphincs256
313848831502443164080
T:
sphincsf128shake256simple
324173632550483270664
T:
ecdonaldk409
341631234237243448092
T:
ecdonaldb409
348850034905523503172
T:
sphincsf256harakasimple
2726108?4011616?6599732?
T:
qtesla3f
458891246013164618520
T:
sphincsf256harakarobust
471788047231084736176
T:
sphincsf192shake256simple
508996451070125124848
T:
luov863256
4065256?5433088?8006636?
T:
qtesla3s
563001656361765643372
T:
sphincsf128shake256robust
5684964?6457540?7274520?
T:
qtesla1p
699224870139247039064
T:
ecdonaldk571
747761274915887529032
T:
ecdonaldb571
846192084713008485992
T:
sphincsf192shake256robust
826385284843728583844
T:
3icp
101410721027338410350092
T:
luov863256pc
104870481056266410603108mqsignlr2567246
104797681058728810636808
T:
mqsignlr2567246
115871801163384411709492mqsignrr2567246
115834401165888411684620
T:
mqsignrr2567246
123630441236899212388244
T:
sphincsf256shake256simple
124215401246419212499464
T:
rainbowbinary256181212
11732916?17130628?22052580?
T:
rwb0fuz1024
174454401753741217613232
T:
rainbow1aclassic363232
177172801774455617761256
T:
rainbow1acyclicc363232
177543681776684017817056
T:
rainbow1acompres363232
181850601868717621399760
T:
falcon512tree
191864201923917619294564
T:
luov4849242
182614602005078421918136
T:
falcon512dyn
211323922118132021230832
T:
luov890351
221085602211809222221392
T:
sphincsf256shake256robust
17720736?25100840?32344548?
T:
ronald512
286103402870407228722268
T:
tts6440
291425042957097629872684
T:
sphincss128harakasimple
378683243790324038112228
T:
sphincss128harakarobust
29109840?41415968?51344640?
T:
qtesla3p
420097804250145242651804
T:
luov890351pc
447553724476991644781796
T:
sphincss192harakasimple
456157724571492846647404mqsignlr25611272
456717764574357245951684
T:
mqsignlr25611272
462872724733927647715144
T:
luov8117404
38094816?49733676?67388468?
T:
ronald768
496074524979342050654228mqsignrr25611272
504390085079073250891660
T:
mqsignrr25611272
555260005559059655765804
T:
sphincss192harakarobust
558006965588249657636916
T:
sphincss256harakasimple
569525165742130457981788
T:
rainbowbinary16242020
565127205827810462392500
T:
falcon1024dyn
567218925967782864695652
T:
falcon1024tree
603789806048618460579996
T:
rainbow5640
637429726384178864171708
T:
luov6468330
650709046509731266649700
T:
redgemss128
691154486912917269315304
T:
sphincss256harakarobust
707506327123525672192580
T:
luov8117404pc
711606447125302071429860
T:
redgemss128v2
42818856?73333444?97780504?
T:
ronald1024
756625007591698076256136
T:
gemss128v2
764519967651223676611356
T:
bluegemss128v2
769500967698906877048156
T:
gemss128
785064047865946482768424
T:
bluegemss128
101733432102526080104403324
T:
rainbow3cclassic683248
103421896103848164104104548
T:
rainbow3ccyclicc683248
104051700104068912104599404
T:
sphincss128shake256simple
106427260106610908106746568
T:
rainbow3ccompres683248
109261464109618200109935760
T:
mqsignlr25614896
109648520110654008113208608mqsignlr25614896
118196132119359288119815288
T:
rainbow6440
119824396120342792120972864
T:
luov8086399
139417128139610476143606064mqsignrr25614896
139378160139926012140691700
T:
mqsignrr25614896
154842876154950616155106064
T:
sphincss192shake256simple
161410852161520452169767348
T:
sflashv2
181745192181759876181791460
T:
sphincss128shake256robust
203735992203851716203900528
T:
sphincss256shake256simple
270396912270446976270579976
T:
sphincss192shake256robust
304006780304859636305662256
T:
bluegemss192
307188608307761700308378600
T:
rainbow5cclassic963664
209550688?328140676?470264764?
T:
ronald1536
335420664335827316336345464
T:
rainbow5ccyclicc963664
337222948337605052338927748
T:
rainbow5ccompres963664
343902244344094408344703532
T:
redgemss192v2
343922528344598264345800888
T:
gemss192
344823220345188448345739556
T:
redgemss192
358106428359458312360403456
T:
sphincss256shake256robust
380449828381191776399781468
T:
gemss192v2
383795960384372264385886380
T:
bluegemss192v2
308540856?420258168?596822044?
T:
ronald2048
952332156953356568953865200
T:
redgemss256
973580008975295504978315380
T:
bluegemss256
104804572410569933841058040292
T:
gemss256
113272440811333531601133791828
T:
redgemss256v2
113043618411387632201152688324
T:
gemss256v2
116029474811660532721166388600
T:
bluegemss256v2
188767070418880715041891034448
T:
gravitysphincss
1609145856?2763629840?3450814592?
T:
ronald3072
444944213246586135244786470068
T:
pqrsa15
5584463388?7355412736?10107713112?
T:
ronald4096
287900714802879229702428801136900
T:
gravitysphincsl
576176517765768248454057819689004
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
189401909619636
T:
rainbowbinary256181212
309963120031412
T:
tts6440
379763819639468
T:
rainbowbinary16242020
604646056460652ed25519
641686451269848
T:
rainbow5640
843528540486876
T:
rainbow6440
856088680888056
T:
rainbow1aclassic363232
922369622899924
T:
mqsignlr2567246
95920101520111232
T:
sflashv2
114052118372122496mqsignlr2567246
127368129064138152
T:
rainbow1acyclicc363232
129296132180134012
T:
mqsignrr2567246
153588154816156988mqsignrr2567246
177988178388178940
T:
ecdonaldp256
182880183008183128
T:
ed448goldilocks
109060?193916?298504?T!!!dilithium2aes
188548?249216?384080?T!!!dilithium2
258156259212260220
T:
ecdonaldp224
265440269772274364
T:
mqsignlr25611272
286868289716304480
T:
hector
201808?300716?522984?dilithium3aes
227320?306804?427692?dilithium5aes
137568?323676?511620?
T:
lattisigns512
322788328988348248mqsignlr25611272
156228?341132?696764?
T:
3icp
357636?367104?1010800?
T:
pass863
361660368680435792
T:
luov863256pc
386476391016403580
T:
mqsignrr25611272
392332397884403372
T:
falcon512tree
403040407400410152
T:
rainbow3ccyclicc683248
406724411156447816
T:
rainbow3cclassic683248
443100449224457532mqsignrr25611272
280816?454540?761340?
T:
qtesla1
464504473108482012
T:
ronald512
346580?499476?636384?T!!!dilithium5
508328511720515236
T:
donald1024
365020?514312?553560?nccsign1aes
350468?522400?707212?T!!!dilithium3
524408528512533208
T:
mqsignlr25614896
291024?565216?592628?
T:
pass769
270104?596996?880996?
T:
qtesla3f
434052?609292?818336?nccsign1
617488621548629432mqsignlr25614896
484788?709404?1129564?nccsign3aes
745772753184773572
T:
mqsignrr25614896
769988775968796356
T:
falcon512dyn
787008795444806260
T:
ronald768
791644809608867604
T:
falcon1024tree
845460851424866636mqsignrr25614896
570948?859128?1376020?nccsign3
892536?900996?1778884?nccsign5
899332908360924248
T:
ecdonaldp160
938156941908952328
T:
rainbow5cclassic963664
933356945088974776
T:
ecdonaldk163
953208954492958732
T:
ecdonaldb163
963164974680981316
T:
rwb0fuz1024
605060?993304?1862260?
T:
qtesla3s
103790410436761053524
T:
rainbow5ccyclicc963664
757244?1065340?1461468?nccsign5aes
107384810761881083040
T:
ecdonaldp192
107794010844121100696
T:
ronald1024
109782810996121105596
T:
ecdonaldp384
785696?1165708?2167380?
T:
qtesla1p
123678812624441279812
T:
luov890351pc
127062412784641287048
T:
ecdonaldk233
129407213046361321336
T:
ecdonaldb233
133872813396401345484
T:
ecdonaldp521
135938413662121380796
T:
donald2048
143569614398801447180aimer128f
156010015683881575896
T:
falcon1024dyn
1108536?1603008?2964820?haetae3
762852?1713816?3347744?haetae2
179652818242802195900
T:
luov8117404pc
207114820787802096692
T:
ecdonaldk283
217260421863722196448
T:
ecdonaldb283
1211900?2198152?2742016?haetae5
287018828888722922308
T:
ronald1536
2397324?3299292?5914576?
T:
qtesla3p
340706034079883417864aimer192f
346479234716643485516
T:
ecdonaldk409
366349636789523689024
T:
ecdonaldb409
366972836925963708516
T:
ronald2048
368822037038803717852
T:
luov863256
421460842201804232544picnicl1full
3818460?4477908?5130428?
T:
redgemss128v2
3956756?4583240?5721820?
T:
redgemss128
517275651823245193852picnicl1fs
496761252913125307440
T:
mqdss48
647767664884926494868picnicl1ur
694912869530806972140aimer256f
743935274524647468284
T:
ecdonaldk571
792330479357807954196
T:
ecdonaldb571
843578884424288449228picnicl3full
109154681092322410950440aimer128s
9827792?11508376?13371184?
T:
redgemss192v2
119275761193496411938968
T:
luov890351
121061521211346412303012picnicl3fs
10620364?12493112?14872756?
T:
redgemss192
127568521282537212912832
T:
ronald3072
127724361289499212954856
T:
mqdss64
139234961393044413936932picnicl5full
141743121418683214244316
T:
rainbow1acompres363232
147467361476148814874232
T:
gravitysphincss
156102881564105615649420picnicl3ur
181297761813696418154672picnic3l1
206387162066972820683696
T:
luov8117404
17234072?20706392?23504012?
T:
redgemss256
208091922084382020874520picnicl5fs
17569344?22011468?25084400?
T:
redgemss256v2
256231002564736425734808aimer192s
259755762608646826096272picnicl5ur
263196922634415226366252
T:
gravitysphincsm
269600922702672427076292
T:
ronald4096
313751283138296431399600
T:
gravitysphincsl
319936403204616832210552
T:
sphincsf128harakasimple
390556523907687639104372picnic3l3
420419084206362442078040
T:
sphincsf192harakasimple
430165884307185243159776
T:
luov4849242
433038844337926843478172
T:
sphincsf128harakarobust
495549924960426449801368
T:
sphincs256
498408244992834450089980aimer256s
527841485283464452859388
T:
sphincsf192harakarobust
667929406683034066888724picnic3l5
842181008431437686716936
T:
rainbow3ccompres683248
900730569014625290238288
T:
sphincsf256harakasimple
104788980104951300105086108
T:
sphincsf128shake256simple
121960608122069936122203584
T:
sphincsf256harakarobust
131868916132389160132470456
T:
luov6468330
134550072?136060284?188096704?
T:
bluegemss128v2
136539076136674764136946716
T:
sphincsf192shake256simple
146066496146129060146169912
T:
pqrsa15
156864696157047980157183628
T:
picnic2l1fs
146252184?175323816?211713008?
T:
bluegemss128
180002524180244180180487176
T:
sphincsf128shake256robust
207949780209160228210513012
T:
rainbow5ccompres963664
240463268240734528249915648
T:
sphincsf192shake256robust
265407312265448144265544048
T:
luov8086399
292838372292986488293131676
T:
sphincsf256shake256simple
335509772?400480568?469175960?
T:
bluegemss192v2
474109016474985152479059332
T:
picnic2l3fs
409323268?491549988?574335416?
T:
bluegemss192
508599828509459156510017368
T:
sphincsf256shake256robust
543142304545823096547350308
T:
sphincss128harakasimple
534887356?641844424?748192876?
T:
bluegemss256v2
731299220732474068735300304
T:
sphincss128harakarobust
786256564786817976797329984
T:
sphincss256harakasimple
787789780?920131776?1051076040?
T:
bluegemss256
997652788997990092998881316
T:
picnic2l5fs
102376290410242541881026423940
T:
sphincss256harakarobust
840816628?1031284704?1345983880?
T:
gemss128v2
918734552?1102702316?1470096720?
T:
gemss128
125242221612527255441255320812
T:
sphincss192harakasimple
167142364016723625561674982756
T:
sphincss128shake256simple
171341081617163400881717271396
T:
sphincss192harakarobust
248937513624956134962503422920
T:
sphincss256shake256simple
273177787627325626202754173336
T:
sphincss128shake256robust
2340100536?2807133692?3290198296?
T:
gemss192v2
2797881868?3356308872?3920842464?
T:
gemss192
353363471635346579563550812860
T:
sphincss192shake256simple
418730704041920700564227411932
T:
sphincss256shake256robust
3574289860?4299980868?5019624684?
T:
gemss256v2
563408217256346525165640995088
T:
sphincss192shake256robust
5935519116?6926878440?8905309132?
T:
gemss256
Cycles to verify 59 bytes
25%50%75%system
790480168160
T:
rwb0fuz1024
155921564415700
T:
rainbowbinary256181212
294323030031372
T:
rainbowbinary16242020
317243204432556
T:
ronald512
322043296033872
T:
rainbow1aclassic363232
327843301633368
T:
ronald768
332123327233400
T:
3icp
358363591636000
T:
rainbow5640
380323834838480
T:
ronald1024
404284072441056
T:
lattisigns512
461604645646948
T:
rainbow6440
511965139251756
T:
ronald1536
513685146452712
T:
tts6440
679046828068816
T:
ronald2048
721607320475040mqsignrr2567246
716767393676340
T:
mqsignrr2567246
775047772078012T!!!dilithium2aes
770607816478916
T:
falcon512tree
692087972083484mqsignlr2567246
707168241686576
T:
mqsignlr2567246
934729476095168
T:
falcon512dyn
99732100340100728
T:
qtesla1
107000107108107340T!!!dilithium2
107312107516107800
T:
sflashv2
109888112044116256
T:
gravitysphincss
113968114308114632dilithium3aes
115976116392117052
T:
ronald3072
124156130468139268
T:
luov863256pc
130404131196132568haetae2
155024156496157860
T:
falcon1024tree
175004175212175532T!!!dilithium3
174808175404175764dilithium5aes
178280178952179544
T:
ronald4096
186384187404188500ed25519
189400190560191268
T:
falcon1024dyn
201608202220202916haetae3
203148204188205236
T:
qtesla3f
205952206900208124
T:
qtesla3s
215540222624227116
T:
rainbow3cclassic683248
228716237888246084
T:
redgemss128v2
245576246160246736haetae5
251536253032254080nccsign1aes
254376264340269632
T:
bluegemss128
261748267528273872
T:
gemss128
271464276680281920
T:
redgemss128
279184289096289500T!!!dilithium5
289808291268293356nccsign1
290472291996295464
T:
mqsignlr25611272
288672293860302664
T:
bluegemss128v2
291564297072340136mqsignlr25611272
291692299324306184
T:
mqsignrr25611272
288948299396309476mqsignrr25611272
299352307768313476
T:
gemss128v2
328456330124331728nccsign3aes
351952354268358832
T:
pass769
349876355920360656
T:
luov890351pc
379856381384383984nccsign3
381580382128382636
T:
ecdonaldp256
402492407612412328
T:
donald1024
422312428520436220
T:
pass863
467344467952468276
T:
ecdonaldp224
455960468072477128
T:
rainbow5cclassic963664
464260475040484684
T:
gravitysphincsm
496008496980500716
T:
qtesla1p
494768506988549772
T:
luov8117404pc
513504515288517552nccsign5aes
573144577496591764mqsignlr25614896
577880581296593364mqsignrr25614896
578060582904608732
T:
mqsignrr25614896
576080590272602304
T:
mqsignlr25614896
592332593992595316
T:
ed448goldilocks
591092594104596656nccsign5
606952621876637572
T:
redgemss192
610008623428636032
T:
sphincss128harakasimple
623304631172642324
T:
gravitysphincsl
620820631920642708
T:
redgemss192v2
599412632096663960
T:
gemss192
639520659272673716
T:
bluegemss192
656720676372697712
T:
gemss192v2
713016734048747648
T:
bluegemss192v2
891304896004902228
T:
ecdonaldp160
926516943280960776
T:
sphincss128harakarobust
935648952208961880
T:
sphincss192harakasimple
104253610482721056968
T:
ecdonaldp192
109470011024561134424
T:
hector
114904011718201208876
T:
gemss256v2
118018812028801236612
T:
redgemss256v2
121274412250481232160
T:
donald2048
130802013278361344140
T:
sphincss256harakasimple
129371213336481360700
T:
redgemss256
130158013378681371972
T:
gemss256
135326413780721423880
T:
bluegemss256
137871613881281399792
T:
sphincs256
138776014040681437080
T:
bluegemss256v2
141288014151641417624aimer128f
141739214414721458276
T:
sphincsf128harakasimple
147020014896441520668
T:
sphincss192harakarobust
175994817703681829156
T:
ecdonaldk163
181156018152321823076
T:
ecdonaldb163
194939220041962020624
T:
sphincss256harakarobust
214463621712242201044
T:
sphincsf128harakarobust
226975222756242285820
T:
qtesla3p
234093623553202373420
T:
sphincsf192harakasimple
240934024133482428840
T:
ecdonaldk233
241022824138322426900
T:
ecdonaldp384
245974824622402473100
T:
ecdonaldb233
248213624851322499416
T:
ecdonaldp521
250604025339282567272
T:
sphincsf256harakasimple
295140029537642960976
T:
luov863256
329990033597643483064
T:
sphincss128shake256simple
335864833696923378168aimer192f
329413634877483531052
T:
mqdss48
347964834903883505500picnicl1full
364239636758203719092
T:
sphincsf192harakarobust
371046437507883811344
T:
sphincsf256harakarobust
400222840095044023712
T:
ecdonaldk283
419332842028324221196
T:
ecdonaldb283
424767242648564272544picnicl1fs
534189653689365380956picnicl1ur
558308856762285744736
T:
sphincss192shake256simple
626632865137286645092
T:
sphincss128shake256robust
643788465372446640216
T:
sphincss256shake256simple
668757667034686711512
T:
ecdonaldk409
681864468354406866320aimer256f
704110470574047074260
T:
ecdonaldb409
710744071243567136716picnicl3full
803166481140368210088
T:
sphincsf128shake256simple
876678088277528890380
T:
mqdss64
933110094572769659816
T:
sphincss192shake256robust
102059041021722010318228picnicl3fs
105075881051498010520468
T:
luov890351
107970801080322810818548
T:
rainbow1acyclicc363232
107920441082100010834752aimer128s
108896241098500410991488
T:
rainbow1acompres363232
117470881177314011782764picnicl5full
123210001247571212661788
T:
sphincss256shake256robust
127847601290004013038712
T:
sphincsf192shake256simple
128171001293838013045268
T:
sphincsf256shake256simple
131260641314212813157088picnicl3ur
143485121437614014394416picnic3l1
143783441440123214443784
T:
ecdonaldk571
154316761546880415501660
T:
ecdonaldb571
153534321556530815887244
T:
sphincsf128shake256robust
176570801768920817778392picnicl5fs
180260401805163218069428
T:
luov8117404
216818602204679622096680
T:
pqrsa15
221201642224388822281924picnicl5ur
245937562478163624983872
T:
sphincsf192shake256robust
247218682504262025427316
T:
sphincsf256shake256robust
259128162600908426193964aimer192s
299772642999714030023332
T:
luov4849242
322010683274733233952352picnic3l3
497898165007876850210864aimer256s
505637285060144450631672picnic3l5
654693046554255267907092
T:
rainbow3ccompres683248
655001606626551267279880
T:
rainbow3ccyclicc683248
669289166703836467074320
T:
picnic2l1fs
775385567763096077675804
T:
luov6468330
148142148148401728148809376
T:
rainbow5ccyclicc963664
148766568148872228149385320
T:
luov8086399
149067100149420692154389772
T:
rainbow5ccompres963664
154883444155074116155292064
T:
picnic2l3fs
271283608271569376271966308
T:
picnic2l5fs