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

[Page version: 20251001 12:36:38]

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
411884136041692crossrsdpg128small
412764140441636crossrsdpg128balanced
415964165641820crossrsdpg128fast
494124951649612aimer128f
548525526055608aimer128s
572965742457560ed25519
636046388064252dilithium2aes
859448618086456crossrsdpg192small
861648628086520crossrsdpg192balanced
869408706087184crossrsdpg192fast
877008826889228
T:
ecdonaldp256
900729031290692crossrsdp128small
902889057290740crossrsdp128fast
909009116091408crossrsdp128balanced
953009577696316dilithium2
101812102724103304dilithium3aes
113536113608113772aimer192f
113476113684113988aimer192s
148544148764149312crossrsdpg256small
148528148904149124crossrsdpg256fast
148672148964149368crossrsdpg256balanced
157244158308160144dilithium5aes
170500170752172836
T:
ecdonaldp224
171744172040172380dilithium3
174156174324174548
T:
ed448goldilocks
208580208808209080crossrsdp192fast
208624208924209136crossrsdp192small
209400209776210036crossrsdp192balanced
245696247892256252
T:
pass769
266800267184267876T!!!dilithium5
264796274792290772
T:
hector
297624300424303000nccsign1
300444300752301700aimer256f
300508300936301676aimer256s
291728302000305704
T:
pass863
362800363212364056crossrsdp256small
362556363276365096crossrsdp256balanced
364912365456366220crossrsdp256fast
386688388388389900nccsign3
471792474908481436nccsign1aes
619624625064631408nccsign3aes
624984628104631832nccsign5
641936644592649064
T:
donald1024
448368?755764?1697732?haetae2
783672785304786764
T:
mqdss48
794384797076801964
T:
edons128k08n72nu8l4mu3
817008818444822592
T:
sphincsf128harakasimple
840680842952852568
T:
ecdonaldp160
873800877504895248
T:
ecdonaldk163
889388891760904156
T:
ecdonaldp521
897380899196911060
T:
ecdonaldb163
929028930796939500
T:
ecdonaldp384
463328?946736?1550952?haetae3
957964967432977308nccsign5aes
100526810066121010028
T:
sphincsf128harakarobust
101374810173361027912
T:
ecdonaldp192
537396?1100222?2093248?haetae5
864188?1173888?1925952?
T:
qtesla1
118159611854321193740
T:
ecdonaldk233
120737612124441224632
T:
ecdonaldb233
120905212210361223356
T:
sphincsf192harakasimple
150735215144081519520
T:
sphincsf128sha256simple
151064015300481546472
T:
sphincsf192harakarobust
181191618129401821808
T:
mqdss64
195788419720481985696
T:
ecdonaldk283
204241220463282067824
T:
ecdonaldb283
215048421554082161224
T:
sphincsf192sha256simple
214825221634802183668
T:
donald2048
241029224233122442580
T:
edons128ref
275482827572362764412
T:
sphincs256
275469227584802769144
T:
sphincsf128sha256robust
2713724?2929272?4015548?
T:
qtesla3f
316804031840683228188
T:
sphincsf128shake256simple
326852032764283296312
T:
ecdonaldk409
326873232863283393516
T:
sphincsf256harakasimple
343462434453883459668
T:
ecdonaldb409
410128041137124132552
T:
sphincsf256harakarobust
436422843711764382680
T:
sphincsf192sha256robust
464479246508524665252
T:
sphincsf192shake256simple
554441255619965719164
T:
sphincsf128shake256robust
559742456105005629292
T:
sphincsf256sha256simple
4952172?6447800?7475240?
T:
qtesla1p
5259364?6557784?9127380?
T:
qtesla3s
702484870348487054036
T:
ecdonaldk571
752795675355007540600
T:
ecdonaldb571
833252883382368346132
T:
sphincsf192shake256robust
828928483484688519860
T:
3icp
104012361044058410462276
T:
mqsignlr2567246
104219201047054410657216mqsignlr2567246
116161121163637211958652
T:
mqsignrr2567246
116116441177685211948212mqsignrr2567246
117186081179492011903812
T:
rainbowbinary256181212
124772401248616012517584
T:
sphincsf256shake256simple
163806401640039616421176
T:
rainbow1aclassic363232
172822561731009617344916
T:
rainbow1acompres363232
172877481736905617408568
T:
rainbow1acyclicc363232
11901656?18257276?28091688?
T:
rwb0fuz1024
188543641945618622439100
T:
falcon512dyn
186831202001460021769472
T:
falcon512tree
214238842144403621566440
T:
sphincsf256shake256robust
223247402233354822347596
T:
sphincsf256sha256robust
12469096?22849736?33327660?
T:
ronald512
261521242638167626538656
T:
sphincss128harakasimple
288645042898960829093268
T:
tts6440
329357563295912833516820
T:
sphincss128harakarobust
31363176?36331252?43740440?
T:
qtesla3p
386180003893505239383764
T:
sphincss192harakasimple
455343084559544445643468mqsignlr25611272
455969684563334445748180
T:
mqsignlr25611272
33326204?45682948?64847908?
T:
ronald768
488781364900296849052372
T:
sphincss192harakarobust
489915084902018450228840
T:
sphincss128sha256simple
499924805011386050469300
T:
mqsignrr25611272
501377445035905650488100mqsignrr25611272
521680845247061653166240
T:
sphincss256harakasimple
562010405676546857751640
T:
rainbowbinary16242020
573054765853908863343756
T:
falcon1024dyn
597501166020831660939544
T:
rainbow5640
576351646094900065965060
T:
falcon1024tree
639155886438315264499116
T:
pflash1
651948446556507667447068
T:
sphincss256harakarobust
48314464?69103116?96183924?
T:
ronald1024
691239326922297669337896
T:
sphincss192sha256simple
886532208873472488763124
T:
sphincss128sha256robust
901347569018249690287280
T:
sphincss256sha256simple
992183969973828499931948
T:
rainbow3cclassic683248
100809464100851260100986828
T:
sphincss128shake256simple
103346096103635764105693924
T:
rainbow3ccyclicc683248
106409424109011564109362832
T:
rainbow3ccompres683248
109168568109450964110190980
T:
mqsignlr25614896
109370204109840892111215052mqsignlr25614896
119141752120948720121591060
T:
rainbow6440
138903112138961968139033876
T:
sphincss192sha256robust
139430236139617676140641180
T:
mqsignrr25614896
139403648139673420140531036mqsignrr25614896
148154700148214116148276100
T:
sphincss192shake256simple
153469780153532124153774096
T:
sflashv2
177019672177087392177313568
T:
sphincss128shake256robust
195288128195515468195842892
T:
sphincss256shake256simple
266294224266340072267034456
T:
sphincss192shake256robust
300172232301211900302828480
T:
rainbow5cclassic963664
222452848?312689172?445482884?
T:
ronald1536
330037076330889804340721312
T:
rainbow5ccyclicc963664
330646768332032472337420432
T:
rainbow5ccompres963664
347588028347642104347698480
T:
sphincss256shake256robust
357222552357337708357505432
T:
sphincss256sha256robust
321822116?423810500?558410328?
T:
ronald2048
180082292818009079761801048680
T:
gravitysphincss
1835111908?2449262468?3511702492?
T:
ronald3072
4862101348?7330481652?10809613156?
T:
ronald4096
287948868802880294401228806074836
T:
gravitysphincsl
576275250125763123360857642501132
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
181721834419520
T:
rainbowbinary256181212
310923142431760
T:
tts6440
372883792443484
T:
rainbowbinary16242020
605366068061020ed25519
646966560077304
T:
rainbow5640
818928236483624
T:
rainbow1aclassic363232
846248568488336
T:
rainbow6440
862488691688416
T:
rainbow1acyclicc363232
862249025694224
T:
sflashv2
898289250493964
T:
mqsignlr2567246
111428113360115156mqsignlr2567246
131984133088141984
T:
mqsignrr2567246
138472138832140080
T:
ecdonaldp256
152008154780163820mqsignrr2567246
107260?179008?254108?dilithium2aes
182104182216182648
T:
ed448goldilocks
257280258300262316
T:
ecdonaldp224
197204?261408?465188?dilithium3aes
263292268800273788
T:
mqsignlr25611272
188244?282704?433300?dilithium2
227216?290264?554368?dilithium3
289392293400302756
T:
hector
285512?301020?573264?
T:
pass769
326904328388330380mqsignlr25611272
355912?373652?732144?
T:
pass863
229696?376504?806200?
T:
3icp
285600?390028?541612?dilithium5aes
391032394796400740
T:
mqsignrr25611272
399764404388420424
T:
falcon512tree
404232407496410616
T:
rainbow3cclassic683248
409592411964415148
T:
rainbow3ccyclicc683248
199688?448684?699044?
T:
lattisigns512
449260452716459400mqsignrr25611272
462296475264479580
T:
ronald512
197060?485456?918084?
T:
qtesla1
503248506108509600
T:
donald1024
520820526136535288
T:
mqsignlr25614896
425400?544176?862360?T!!!dilithium5
619344626884638852mqsignlr25614896
509724?708496?1796984?
T:
pflash1
412480?743472?1164488?
T:
qtesla3f
745388752068765084
T:
mqsignrr25614896
753240759244764256
T:
falcon512dyn
800120807612816340
T:
ronald768
537072?839228?1278288?
T:
qtesla1p
835892848188882856
T:
falcon1024tree
843296850272869904mqsignrr25614896
886620?894372?1300224?nccsign1aes
898824906744921104
T:
ecdonaldp160
930948937188950356
T:
ecdonaldk163
939552944172954452
T:
rainbow5cclassic963664
953712954356960548
T:
ecdonaldb163
685532?972316?1069656?nccsign1
968468976540983964
T:
rwb0fuz1024
100944010169081030428
T:
rainbow5ccyclicc963664
107100810723601078236
T:
ecdonaldp192
108020410920521107544
T:
ronald1024
109497610984401119420
T:
ecdonaldp384
762976?1113556?2076624?haetae2
112383611252961126912crossrsdpg128fast
602272?1213092?2291376?
T:
qtesla3s
126808012736521284340
T:
ecdonaldk233
129734813044721319208
T:
ecdonaldb233
132366413281961344476
T:
edons128k08n72nu8l4mu3
133683613380361344904
T:
ecdonaldp521
891244?1359880?2159188?nccsign3
135947613684681377696
T:
donald2048
143740014416441448372aimer128f
1433552?1448548?2640260?nccsign5
154374815507761559252
T:
falcon1024dyn
1168932?1721672?2663348?nccsign3aes
1842288?1867624?2700300?nccsign5aes
1112136?2049624?3922624?haetae3
207938020829602087476crossrsdp128fast
207499620834322092452
T:
ecdonaldk283
209928421082722114408crossrsdpg128balanced
215714821612562168160
T:
ecdonaldb283
260212026049922612208crossrsdpg192fast
1705848?2720060?5757336?haetae5
288287628993322917188
T:
ronald1536
304678030680923152016
T:
edons128ref
325726032597843275816crossrsdpg192balanced
338924833922243402000aimer192f
350616835169923537736
T:
ecdonaldk409
355400035592443567576crossrsdp128balanced
368441236962683705332
T:
ecdonaldb409
372776037456763761416
T:
ronald2048
2427844?4087392?6042652?
T:
qtesla3p
414897641541044164748crossrsdpg128small
435880443631004376500crossrsdpg256fast
469735647163284729276crossrsdp192fast
486179248712284891340
T:
mqdss48
528837253001685308112crossrsdpg256balanced
608242460926206106012crossrsdpg192small
689593669092966914344aimer256f
700443270169167023788crossrsdp128small
752633275798607615032
T:
ecdonaldk571
768764077006327706464crossrsdp192balanced
798821279974328012676
T:
ecdonaldb571
844634084603968465472crossrsdp256fast
928929293040129309232crossrsdpg256small
109549041095942010978124aimer128s
113465521135609611369908crossrsdp192small
117268201198167212733800
T:
mqdss64
128937361295067613008348
T:
ronald3072
133042481331069613314848crossrsdp256balanced
136712801381576814644316
T:
rainbow1acompres363232
147777201478195214789544
T:
gravitysphincss
212160242122744021234992crossrsdp256small
258264962585030426031432aimer192s
263054202632468026336404
T:
gravitysphincsm
271614642720128427258468
T:
ronald4096
295321202954750429579140
T:
sphincsf128harakasimple
313798363139800831411892
T:
gravitysphincsl
353227443537458035452600
T:
sphincsf192harakasimple
379616803798456438056108
T:
sphincsf128harakarobust
462577204640906046527144
T:
sphincsf192harakarobust
493458964949399649538680
T:
sphincs256
496431884965782449726232aimer256s
506250525071544450833056
T:
sphincsf128sha256simple
679505686808245268259948
T:
sphincsf192sha256simple
843478728440800084478532
T:
sphincsf256harakasimple
855767488569678086667504
T:
rainbow3ccompres683248
921422209238099692874520
T:
sphincsf128sha256robust
104835212105086580105497004
T:
sphincsf128shake256simple
110477896110542196110702472
T:
sphincsf256harakarobust
133093148133335316133614248
T:
sphincsf192sha256robust
134488492134699980135769504
T:
sphincsf192shake256simple
139551308139673604139965412
T:
sphincsf256sha256simple
176934332177151904181239892
T:
sphincsf128shake256robust
201864152207505264213868036
T:
rainbow5ccompres963664
236066896236283760236423788
T:
sphincsf192shake256robust
292215400292743100292989632
T:
sphincsf256shake256simple
491021720491574708492449744
T:
sphincsf256shake256robust
498215816499659464501591512
T:
sphincss128harakasimple
504692296505293968505829632
T:
sphincsf256sha256robust
650170848652040152652514572
T:
sphincss128harakarobust
737097504737424896738170968
T:
sphincss256harakasimple
849211588849445596859256128
T:
sphincss128sha256simple
974276520978679232980557236
T:
sphincss256harakarobust
107989666810810291801082278796
T:
sphincss192harakasimple
113434545611367333161137156040
T:
sphincss256sha256simple
151517147215190894121521767948
T:
sphincss128sha256robust
153552732415362761761547563352
T:
sphincss192harakarobust
160892761616093633761611263348
T:
sphincss128shake256simple
164119649616417360721642237172
T:
sphincss192sha256simple
237897412823822757682385011676
T:
sphincss256shake256simple
263410829226349342602651260212
T:
sphincss128shake256robust
298897718429891407722990023972
T:
sphincss192sha256robust
336171385233810976323382147016
T:
sphincss192shake256simple
401687099240174555644018330132
T:
sphincss256shake256robust
406231110840716182524075652860
T:
sphincss256sha256robust
548602654454868113165495740228
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
802481328368
T:
rwb0fuz1024
164601657616740
T:
rainbowbinary256181212
301123126031900
T:
rainbowbinary16242020
30120?31684?43816?
T:
rainbow1aclassic363232
315483183232120
T:
ronald512
326683300433332
T:
ronald768
333563348033932
T:
3icp
360763662837584
T:
rainbow5640
385683881239004
T:
ronald1024
405524075241136
T:
lattisigns512
466324696847332
T:
rainbow6440
512085155651868
T:
ronald1536
515565189252384
T:
tts6440
663406772468784mqsignlr2567246
679406841268692
T:
ronald2048
677046968870680
T:
mqsignlr2567246
69720?71812?87156?mqsignrr2567246
713127495282672
T:
mqsignrr2567246
774727764077808dilithium2aes
769287797678408
T:
falcon512tree
832808334083544
T:
sflashv2
923489375694264
T:
falcon512dyn
101348101740102380
T:
qtesla1
106712106928108356dilithium2
108132110060114392
T:
gravitysphincss
114684115116115996dilithium3aes
115488116092116512
T:
ronald3072
133824134080134660haetae2
155360155988156656
T:
falcon1024tree
171792172300172676dilithium5aes
174824174972175164dilithium3
178804179208179792
T:
ronald4096
186640187584188184ed25519
186872187872188972
T:
falcon1024dyn
198532203712212520
T:
pflash1
203272205096206940haetae3
205028205428206428
T:
qtesla3f
207108207588208568
T:
qtesla3s
212640216384219940
T:
rainbow3cclassic683248
246620247356252720haetae5
276224276472276708T!!!dilithium5
286420290344297616
T:
mqsignlr25611272
289488292060296044mqsignlr25611272
290496296900303632
T:
mqsignrr25611272
293852297008304464mqsignrr25611272
341736342312343044
T:
ecdonaldp256
349960352916360632
T:
pass769
397704400988406896
T:
donald1024
413468416560418020
T:
edons128k08n72nu8l4mu3
428728431080433792nccsign1
424096433636441260
T:
pass863
453312459004471096
T:
rainbow5cclassic963664
464868476688485064
T:
gravitysphincsm
481376481724482332
T:
ecdonaldp224
495204496276498116
T:
qtesla1p
543596545180547828nccsign3
574244581224602268mqsignrr25614896
580080582924589832nccsign1aes
574268582960597072
T:
mqsignlr25614896
577600584208595476
T:
mqsignrr25614896
575164587836602816mqsignlr25614896
590740592344601176
T:
ed448goldilocks
598036612972628388
T:
sphincss128harakasimple
623312632520639652
T:
gravitysphincsl
733472735172735504crossrsdpg128fast
738320741056744004
T:
edons128ref
749164755260760376nccsign3aes
887760892952905948
T:
ecdonaldp160
894832897700900356nccsign5
907476917900934540
T:
sphincss192harakasimple
900532919576934776
T:
sphincss128harakarobust
103715610457121050812
T:
ecdonaldp192
108282810923201105436
T:
hector
118602411931041202540nccsign5aes
120883612170521225948
T:
donald2048
125751212718161284884
T:
sphincss256harakasimple
128793612893601292792crossrsdp128fast
141442414182401420088aimer128f
140428414211761440284
T:
sphincss192harakarobust
140380414217361441532
T:
sphincsf128harakasimple
146398014735801481480
T:
sphincs256
150457215067961511696crossrsdpg128balanced
171551617179881719800crossrsdpg192fast
177041617834201796640
T:
ecdonaldk163
182030818289241849816
T:
ecdonaldb163
196150819954722013956
T:
sphincss256harakarobust
208781221193402161492
T:
sphincsf128harakarobust
227180022779442285428crossrsdpg192balanced
227413222858962308768
T:
sphincsf192harakasimple
230968423202122328892
T:
qtesla3p
240996824196562431884
T:
ecdonaldp384
242568824281642437728
T:
ecdonaldk233
238965224408482456312
T:
sphincsf256harakasimple
247665624845722499240
T:
ecdonaldb233
253932025424522556724
T:
ecdonaldp521
258064025841082595404crossrsdp128balanced
258310426470242696388
T:
sphincss128sha256simple
290440829069042915976crossrsdpg256fast
297807229881682999756crossrsdp192fast
303324030390563047780crossrsdpg128small
312022031396963168956
T:
mqdss48
322426433074483393464
T:
sphincss128shake256simple
333661633428563348224aimer192f
341412434494523483760
T:
sphincsf192harakarobust
367542836842243690092crossrsdpg256balanced
371379637486803780244
T:
sphincsf256harakarobust
400742840178484041528
T:
ecdonaldk283
406562041150204165316
T:
sphincss192sha256simple
418398041972164211512
T:
ecdonaldb283
455689645712324701372crossrsdpg192small
472444048243644983664
T:
sphincss192shake256simple
509830852239205321728
T:
sphincss128sha256robust
531684453263725337136crossrsdp256fast
532068053331325344616crossrsdp128small
534184054526245517076
T:
sphincss256sha256simple
555854055677725576744crossrsdp192balanced
623810463180326401716
T:
sphincsf128sha256simple
624588063405006440984
T:
sphincss256shake256simple
631824464500446586412
T:
sphincss128shake256robust
678051267929126811036
T:
ecdonaldk409
678888468026966822320aimer256f
689314469162207073096crossrsdpg256small
711342071252287141844
T:
ecdonaldb409
780647278550008586540
T:
mqdss64
799988081273168286124
T:
sphincsf128shake256simple
826050083575768499620
T:
sphincss192sha256robust
853218085414688547636crossrsdp192small
920613293394009455052
T:
sphincss192shake256robust
957840495899329605580crossrsdp256balanced
102939721043681210506136
T:
sphincsf192sha256simple
104312721046404810581116
T:
rainbow1acompres363232
104250041052198010537652
T:
rainbow1acyclicc363232
104962441061352810702344
T:
sphincsf256sha256simple
108529801087138810885592aimer128s
124441081256980812698860
T:
sphincsf192shake256simple
122758521258965212892112
T:
sphincss256shake256robust
123218081259994812838072
T:
sphincsf128sha256robust
127134721288418013076220
T:
sphincsf256shake256simple
145288881454958014573160
T:
ecdonaldk571
148696161506118815425528
T:
sphincsf128shake256robust
151701001539263215523816
T:
sphincss256sha256robust
155323481554833215598108
T:
ecdonaldb571
159036241590938815917864crossrsdp256small
208697922114966021295840
T:
sphincsf192sha256robust
241169162432169224507824
T:
sphincsf192shake256robust
250356242530894025588904
T:
sphincsf256shake256robust
259557282606059226282084aimer192s
301703763050585630997392
T:
sphincsf256sha256robust
494443524961188849642896aimer256s
625911806271150063281484
T:
rainbow3ccyclicc683248
629683206611289272868932
T:
rainbow3ccompres683248
142090412145934792152638372
T:
rainbow5ccyclicc963664
144585384152879212153031976
T:
rainbow5ccompres963664