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

[Page version: 20250424 15:53:59]

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
246962475224844
T:
lattisigns512
412164142841564crossrsdpg128small
416924176442068crossrsdpg128balanced
417604186442408crossrsdpg128fast
494124951649612aimer128f
548525526055608aimer128s
572965742457560ed25519
636046388064252dilithium2aes
869208707687280crossrsdpg192small
868608710487372crossrsdpg192balanced
870728725687424crossrsdpg192fast
874008837689924
T:
ecdonaldp256
900609026090604crossrsdp128small
901769040890688crossrsdp128fast
910769123291508crossrsdp128balanced
953009577696316dilithium2
101812102724103304dilithium3aes
113536113608113772aimer192f
113476113684113988aimer192s
145940146120146428crossrsdpg256balanced
145984146252146680crossrsdpg256small
148376148764149220crossrsdpg256fast
157244158308160144dilithium5aes
171744172040172380dilithium3
171148173696174920
T:
ecdonaldp224
174156174324174548
T:
ed448goldilocks
208608208916209180crossrsdp192fast
208844209112209452crossrsdp192small
209508209760210032crossrsdp192balanced
245696247892256252
T:
pass769
266800267184267876T!!!dilithium5
265872271784284400
T:
hector
297624300424303000nccsign1
300444300752301700aimer256f
300508300936301676aimer256s
291728302000305704
T:
pass863
361068361668362192crossrsdp256small
362492362760363420crossrsdp256balanced
364748365664366224crossrsdp256fast
386688388388389900nccsign3
471792474908481436nccsign1aes
619624625064631408nccsign3aes
624984628104631832nccsign5
645036648172661180
T:
donald1024
448368?755764?1697732?haetae2
783672785304786764
T:
mqdss48
817008818444822592
T:
sphincsf128harakasimple
831264836692849672
T:
ecdonaldp160
889172889784902392
T:
ecdonaldp521
892100899512913944
T:
ecdonaldk163
904628906856915344
T:
ecdonaldb163
930724931472939176
T:
ecdonaldp384
463328?946736?1550952?haetae3
957964967432977308nccsign5aes
100526810066121010028
T:
sphincsf128harakarobust
102006410256241038172
T:
ecdonaldp192
537396?1100222?2093248?haetae5
864188?1173888?1925952?
T:
qtesla1
119365211964041206472
T:
ecdonaldk233
120905212210361223356
T:
sphincsf192harakasimple
123454812400241255244
T:
ecdonaldb233
151064015300481546472
T:
sphincsf192harakarobust
181191618129401821808
T:
mqdss64
197036019756481990104
T:
ecdonaldk283
206840020730602094708
T:
ecdonaldb283
214660821556602174448
T:
donald2048
270533627061202716200
T:
sphincs256
2713724?2929272?4015548?
T:
qtesla3f
316804031840683228188
T:
sphincsf128shake256simple
326044832656443280216
T:
ecdonaldk409
326873232863283393516
T:
sphincsf256harakasimple
346500434770483498388
T:
ecdonaldb409
410128041137124132552
T:
sphincsf256harakarobust
464479246508524665252
T:
sphincsf192shake256simple
554441255619965719164
T:
sphincsf128shake256robust
4952172?6447800?7475240?
T:
qtesla1p
5259364?6557784?9127380?
T:
qtesla3s
703174870400287076004
T:
ecdonaldk571
755459275620047576084
T:
ecdonaldb571
833252883382368346132
T:
sphincsf192shake256robust
833716484686248485916
T:
3icp
103065001033576810433476mqsignlr2567246
103200041037831210640696
T:
mqsignlr2567246
115005041152418411594524mqsignrr2567246
115852241163529211650856
T:
mqsignrr2567246
116703401172929211809368
T:
rainbowbinary256181212
124772401248616012517584
T:
sphincsf256shake256simple
166802761670296416791036
T:
rainbow1aclassic363232
174877121754227617722960
T:
rainbow1acompres363232
175524841764856417763848
T:
rainbow1acyclicc363232
12703568?18711272?22832448?
T:
rwb0fuz1024
188543641945618622439100
T:
falcon512dyn
186831202001460021769472
T:
falcon512tree
214238842144403621566440
T:
sphincsf256shake256robust
261521242638167626538656
T:
sphincss128harakasimple
16949084?26583732?36761948?
T:
ronald512
286850882880508028832360
T:
tts6440
329357563295912833516820
T:
sphincss128harakarobust
31363176?36331252?43740440?
T:
qtesla3p
386180003893505239383764
T:
sphincss192harakasimple
455696444562516846080636mqsignlr25611272
455536084574328046184180
T:
mqsignlr25611272
488781364900296849052372
T:
sphincss192harakarobust
498687245050313250583584
T:
mqsignrr25611272
504145525058407651017908mqsignrr25611272
36639208?51277596?68820892?
T:
ronald768
521680845247061653166240
T:
sphincss256harakasimple
559929485672623257292536
T:
rainbowbinary16242020
573054765853908863343756
T:
falcon1024dyn
594937126042752062147736
T:
rainbow5640
576351646094900065965060
T:
falcon1024tree
651948446556507667447068
T:
sphincss256harakarobust
57860904?87645440?129761784?
T:
ronald1024
9859270899355496100005548
T:
rainbow3cclassic683248
100566240100719388100905480
T:
rainbow3ccyclicc683248
100809464100851260100986828
T:
sphincss128shake256simple
103745760103799256104000528
T:
rainbow3ccompres683248
109127988109397404109783032
T:
mqsignlr25614896
109146880109675868111291112mqsignlr25614896
119322564119497320119681540
T:
rainbow6440
139321864139560676139834236
T:
mqsignrr25614896
139515004139842760140210808mqsignrr25614896
148154700148214116148276100
T:
sphincss192shake256simple
153469780153532124153774096
T:
sflashv2
177019672177087392177313568
T:
sphincss128shake256robust
195288128195515468195842892
T:
sphincss256shake256simple
266294224266340072267034456
T:
sphincss192shake256robust
302157792303187652303931416
T:
rainbow5cclassic963664
244676468?307768064?386813812?
T:
ronald1536
311471820311798148312450276
T:
rainbow5ccyclicc963664
333850164334471432335667604
T:
rainbow5ccompres963664
347588028347642104347698480
T:
sphincss256shake256robust
294232972?408968684?580959100?
T:
ronald2048
180156812818019403321803662700
T:
gravitysphincss
1617180076?2414405248?5004930996?
T:
ronald3072
3884064872?4970308444?7584271556?
T:
ronald4096
288306769842886269088829549413504
T:
gravitysphincsl
576146481645762446610857682917552
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
186161873619256
T:
rainbowbinary256181212
309603111231348
T:
tts6440
370403745638208
T:
rainbowbinary16242020
605366068061020ed25519
635926426879236
T:
rainbow5640
842208470486096
T:
rainbow1acyclicc363232
844288478088032
T:
rainbow6440
829048838489252
T:
rainbow1aclassic363232
862249025694224
T:
sflashv2
886689118094732
T:
mqsignlr2567246
111608113716115376mqsignlr2567246
129576130880132392
T:
mqsignrr2567246
138144138628139032
T:
ecdonaldp256
152144153860156120mqsignrr2567246
107260?179008?254108?dilithium2aes
182104182216182648
T:
ed448goldilocks
259304260340263384
T:
ecdonaldp224
197204?261408?465188?dilithium3aes
269092272448279484
T:
mqsignlr25611272
188244?282704?433300?dilithium2
227216?290264?554368?dilithium3
288856295736306264
T:
hector
285512?301020?573264?
T:
pass769
327220328840335360mqsignlr25611272
150060?361896?696556?
T:
3icp
355912?373652?732144?
T:
pass863
285600?390028?541612?dilithium5aes
391476395648402976
T:
mqsignrr25611272
399764404388420424
T:
falcon512tree
406308408660411744
T:
rainbow3cclassic683248
404952408696412080
T:
rainbow3ccyclicc683248
199688?448684?699044?
T:
lattisigns512
446432451764456580mqsignrr25611272
470312476972492136
T:
ronald512
197060?485456?918084?
T:
qtesla1
505976508524512240
T:
donald1024
517280520696531948
T:
mqsignlr25614896
425400?544176?862360?T!!!dilithium5
622204629696640256mqsignlr25614896
412480?743472?1164488?
T:
qtesla3f
744016749728760872
T:
mqsignrr25614896
753240759244764256
T:
falcon512dyn
790164800348809392
T:
ronald768
537072?839228?1278288?
T:
qtesla1p
835892848188882856
T:
falcon1024tree
849928855796867564mqsignrr25614896
886620?894372?1300224?nccsign1aes
893216902540921260
T:
ecdonaldp160
939532944352953640
T:
rainbow5cclassic963664
954604959976967484
T:
ecdonaldk163
961420963388969120
T:
ecdonaldb163
965248972040979472
T:
rwb0fuz1024
685532?972316?1069656?nccsign1
9564969982481097904
T:
rainbow5ccyclicc963664
107727210788521085428
T:
ecdonaldp192
106563610810721093712
T:
ronald1024
109603611016921103868
T:
ecdonaldp384
762976?1113556?2076624?haetae2
602272?1213092?2291376?
T:
qtesla3s
128506412881801291360crossrsdpg128fast
128400412915281312176
T:
ecdonaldk233
132065213289441336832
T:
ecdonaldb233
133828013389361345976
T:
ecdonaldp521
891244?1359880?2159188?nccsign3
136046413653361378136
T:
donald2048
143740014416441448372aimer128f
1433552?1448548?2640260?nccsign5
154374815507761559252
T:
falcon1024dyn
1168932?1721672?2663348?nccsign3aes
1842288?1867624?2700300?nccsign5aes
1112136?2049624?3922624?haetae3
209025220935362104124
T:
ecdonaldk283
209838021006402105072crossrsdp128fast
218772421999522210804
T:
ecdonaldb283
1705848?2720060?5757336?haetae5
284086428438122853452crossrsdpg128balanced
286248828769442892428
T:
ronald1536
301637230217483028780crossrsdpg192fast
338924833922243402000aimer192f
350513235229083564464
T:
ecdonaldk409
370206437131603731388
T:
ecdonaldb409
369870837138363730944
T:
ronald2048
402842040308964040656crossrsdp128balanced
2427844?4087392?6042652?
T:
qtesla3p
427523242786124291156crossrsdpg192balanced
477013247781644783252crossrsdp192fast
486179248712284891340
T:
mqdss48
500768050136685026704crossrsdpg256fast
555616055688245577260crossrsdpg128small
684510868542206860000crossrsdpg256balanced
689593669092966914344aimer256f
749658875172087560620
T:
ecdonaldk571
795468479622567971116crossrsdp128small
801300880291448175400
T:
ecdonaldb571
808999281034208111100crossrsdpg192small
849880885070888512536crossrsdp192balanced
854504885558848562384crossrsdp256fast
109549041095942010978124aimer128s
117268201198167212733800
T:
mqdss64
121601601217553612185228crossrsdpg256small
125516561255866812570464crossrsdp192small
127640201279781612905140
T:
ronald3072
137443241376438414160244
T:
rainbow1acompres363232
144511681445679614465276crossrsdp256balanced
147976401480415614831760
T:
gravitysphincss
230831522309163223102688crossrsdp256small
258264962585030426031432aimer192s
263039202634300026363668
T:
gravitysphincsm
269881042704866027296104
T:
ronald4096
295321202954750429579140
T:
sphincsf128harakasimple
313702043140384031417200
T:
gravitysphincsl
353227443537458035452600
T:
sphincsf192harakasimple
379616803798456438056108
T:
sphincsf128harakarobust
462577204640906046527144
T:
sphincsf192harakarobust
488561284924014049291264
T:
sphincs256
496431884965782449726232aimer256s
812240928150179686697936
T:
rainbow3ccompres683248
843478728440800084478532
T:
sphincsf256harakasimple
104835212105086580105497004
T:
sphincsf128shake256simple
110477896110542196110702472
T:
sphincsf256harakarobust
134488492134699980135769504
T:
sphincsf192shake256simple
176934332177151904181239892
T:
sphincsf128shake256robust
199714684202594680204730140
T:
rainbow5ccompres963664
236066896236283760236423788
T:
sphincsf192shake256robust
292215400292743100292989632
T:
sphincsf256shake256simple
491021720491574708492449744
T:
sphincsf256shake256robust
498215816499659464501591512
T:
sphincss128harakasimple
650170848652040152652514572
T:
sphincss128harakarobust
737097504737424896738170968
T:
sphincss256harakasimple
974276520978679232980557236
T:
sphincss256harakarobust
107989666810810291801082278796
T:
sphincss192harakasimple
153552732415362761761547563352
T:
sphincss192harakarobust
160892761616093633761611263348
T:
sphincss128shake256simple
237897412823822757682385011676
T:
sphincss256shake256simple
263410829226349342602651260212
T:
sphincss128shake256robust
336171385233810976323382147016
T:
sphincss192shake256simple
401687099240174555644018330132
T:
sphincss256shake256robust
548602654454868113165495740228
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
800080888232
T:
rwb0fuz1024
166241680416924
T:
rainbowbinary256181212
300403071231356
T:
rainbowbinary16242020
314323160031992
T:
ronald512
321443261633264
T:
ronald768
333283342433552
T:
3icp
330803381636056
T:
rainbow1aclassic363232
357643589636060
T:
rainbow5640
380243822038744
T:
ronald1024
405524075241136
T:
lattisigns512
461684630446564
T:
rainbow6440
509685130051660
T:
ronald1536
512645166452148
T:
tts6440
664406750468612mqsignlr2567246
677486811268708
T:
ronald2048
674326883681000
T:
mqsignlr2567246
687687101673220mqsignrr2567246
702887124072544
T:
mqsignrr2567246
774727764077808dilithium2aes
769287797678408
T:
falcon512tree
832808334083544
T:
sflashv2
923489375694264
T:
falcon512dyn
101348101740102380
T:
qtesla1
106712106928108356dilithium2
107868110836113620
T:
gravitysphincss
114344115048115856
T:
ronald3072
114684115116115996dilithium3aes
133824134080134660haetae2
155360155988156656
T:
falcon1024tree
171792172300172676dilithium5aes
174824174972175164dilithium3
178404179164179832
T:
ronald4096
186640187584188184ed25519
186872187872188972
T:
falcon1024dyn
203272205096206940haetae3
205028205428206428
T:
qtesla3f
207108207588208568
T:
qtesla3s
219980223604226296
T:
rainbow3cclassic683248
246620247356252720haetae5
276224276472276708T!!!dilithium5
288436292340295968mqsignlr25611272
293644298188300492
T:
mqsignrr25611272
290964298832311584
T:
mqsignlr25611272
292364299048307644mqsignrr25611272
341952342384342924
T:
ecdonaldp256
349960352916360632
T:
pass769
404328406288413100
T:
donald1024
428728431080433792nccsign1
424096433636441260
T:
pass863
460712471292478608
T:
rainbow5cclassic963664
465864474256479400
T:
gravitysphincsm
481900482412483692
T:
ecdonaldp224
495204496276498116
T:
qtesla1p
543596545180547828nccsign3
571168576856590260
T:
mqsignrr25614896
570948577228594556
T:
mqsignlr25614896
580080582924589832nccsign1aes
578928588240606448mqsignrr25614896
572212591156606320mqsignlr25614896
590740592344601176
T:
ed448goldilocks
598036612972628388
T:
sphincss128harakasimple
615468626428634316
T:
gravitysphincsl
749164755260760376nccsign3aes
802252803740806568crossrsdpg128fast
894832897700900356nccsign5
907476917900934540
T:
sphincss192harakasimple
900532919576934776
T:
sphincss128harakarobust
911148921748929144
T:
ecdonaldp160
105724410619721073824
T:
ecdonaldp192
108791211007681122152
T:
hector
118602411931041202540nccsign5aes
121803212338761248404
T:
donald2048
125751212718161284884
T:
sphincss256harakasimple
128714412891121294664crossrsdp128fast
136156413715441380284
T:
sphincs256
141442414182401420088aimer128f
140428414211761440284
T:
sphincss192harakarobust
140380414217361441532
T:
sphincsf128harakasimple
180601218107121820804
T:
ecdonaldk163
183499618382961850184
T:
ecdonaldb163
187531618797201886928crossrsdpg128balanced
190748019107081916700crossrsdpg192fast
196150819954722013956
T:
sphincss256harakarobust
208781221193402161492
T:
sphincsf128harakarobust
227413222858962308768
T:
sphincsf192harakasimple
230968423202122328892
T:
qtesla3p
241021224271842433288
T:
ecdonaldp384
238965224408482456312
T:
sphincsf256harakasimple
245284024577722464588
T:
ecdonaldk233
252842025307522539596
T:
ecdonaldb233
253884425414282558228
T:
ecdonaldp521
280766028104602820904crossrsdpg192balanced
281045228175082825040crossrsdp128balanced
297939229819202988520crossrsdp192fast
312022031396963168956
T:
mqdss48
319920032038203212764crossrsdpg256fast
322426433074483393464
T:
sphincss128shake256simple
333661633428563348224aimer192f
341412434494523483760
T:
sphincsf192harakarobust
371379637486803780244
T:
sphincsf256harakarobust
374796437523323765420crossrsdpg128small
405718440739444090488
T:
ecdonaldk283
423862842589644290924
T:
ecdonaldb283
444580844511044459808crossrsdpg256balanced
472444048243644983664
T:
sphincss192shake256simple
531701653241485335184crossrsdp256fast
561321256190245633128crossrsdpg192small
576280057766845792648crossrsdp128small
596280859697125976568crossrsdp192balanced
624588063405006440984
T:
sphincss256shake256simple
631824464500446586412
T:
sphincss128shake256robust
675379267854247262572
T:
ecdonaldk409
678888468026966822320aimer256f
716302471751207189812
T:
ecdonaldb409
780647278550008586540
T:
mqdss64
799988081273168286124
T:
sphincsf128shake256simple
822241682323368239820crossrsdpg256small
911454491239529130052crossrsdp192small
920613293394009455052
T:
sphincss192shake256robust
101746441018008810192344crossrsdp256balanced
104526441047832410613376
T:
rainbow1acyclicc363232
105049881051731210603516
T:
rainbow1acompres363232
108529801087138810885592aimer128s
124441081256980812698860
T:
sphincsf192shake256simple
122758521258965212892112
T:
sphincss256shake256robust
127134721288418013076220
T:
sphincsf256shake256simple
145276401455643614592236
T:
ecdonaldk571
148696161506118815425528
T:
sphincsf128shake256robust
155708121558512415614228
T:
ecdonaldb571
168290481684349216853732crossrsdp256small
241169162432169224507824
T:
sphincsf192shake256robust
250356242530894025588904
T:
sphincsf256shake256robust
259557282606059226282084aimer192s
494443524961188849642896aimer256s
625520806258924062703596
T:
rainbow3ccompres683248
626112246289326070953760
T:
rainbow3ccyclicc683248
141242088142257748148127060
T:
rainbow5ccyclicc963664
141552776142408496142713432
T:
rainbow5ccompres963664