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; Bonnell (30661); 2011 Intel Atom D2500; 2 x 1866MHz; h8atom, supercop-20250415

[Page version: 20250516 15:10:49]

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, picnic3l1, picnic3l3, picnic3l5, picnicl1fs, picnicl1full, picnicl1ur, picnicl3fs, picnicl3full, picnicl3ur, picnicl5fs, picnicl5full, picnicl5ur, qtesla128, qtesla192, qtesla256

Cycles to generate a key pair
25%50%75%system
355603562335756
T:
picnic2l1fs
630916368664008
T:
picnic2l3fs
882778837589243
T:
picnic2l5fs
155407155554156730crossrsdpg128small
155526155680157010crossrsdpg128balanced
155582155757157199crossrsdpg128fast
230965231147231616crossrsdp128balanced
230965231217231826crossrsdp128fast
231028231238232015crossrsdp128small
296821297017298445aimer128s
296912297374298788aimer128f
311745312032314083crossrsdpg192small
311864312039313761crossrsdpg192fast
311913312095314405crossrsdpg192balanced
345954346136346367ed25519
501123501424503209crossrsdpg256balanced
501081501515502642crossrsdpg256small
502096502285503461crossrsdpg256fast
521087521332521689crossrsdp192fast
521339521640522704crossrsdp192balanced
521542521724522480crossrsdp192small
522130526281532077
T:
ecdonaldp256
662417662774667520aimer192f
711809712299714812aimer192s
775677776048779303
T:
ecdonaldp224
763455787591823767
T:
hector
942760943096944020crossrsdp256balanced
942837943110943747crossrsdp256fast
942949943383944650crossrsdp256small
119577512017671230236T!!!dilithium2
125602412623171317414nccsign1
130931513110441328971
T:
ed448goldilocks
161189016138781639505aimer256s
161434016177631667869aimer256f
160831316184631652210nccsign3
172699117384921756895nccsign1aes
197858519804962001902T!!!dilithium3
210706321206082136666
T:
pass769
214654321565392186800T!!!dilithium2aes
222292022391882258109nccsign3aes
259261126023972630551nccsign5
258790026046232624629
T:
pass863
286682228750892892365
T:
edons128k08n72nu8l4mu3
299257030131363030503
T:
ecdonaldp160
304461530531343090822
T:
mqdss48
315755331617883188850T!!!dilithium5
350235235176963554390nccsign5aes
358672336063163613484
T:
ecdonaldp192
374879437648313785229T!!!dilithium3aes
3662638?3783962?5830650?
T:
qtesla1
376728837887223818423
T:
ecdonaldk163
396921739883833995908
T:
ecdonaldb163
418901041963534223506
T:
donald1024
475105447681554770808
T:
ecdonaldp521
1939427?4790933?9617503?haetae2
509442551136475130020
T:
ecdonaldk233
536643853912185417412
T:
ecdonaldb233
632959663383956357323T!!!dilithium5aes
4516841?6603982?15994727?haetae5
704470970481817072415
T:
mqdss64
795198680426648107085
T:
donald2048
863412986452598668443
T:
edons128ref
102329221024987610286724
T:
ecdonaldk283
7216328?10340953?13517574?
T:
qtesla3f
110731181108627111110771
T:
ecdonaldb283
9047465?16037973?21708988?haetae3
166989621670718716736734
T:
ecdonaldp384
10728543?17228302?23776067?
T:
qtesla3s
195010061951133819532401
T:
sphincsf128shake256simple
209189752095000620990494
T:
ecdonaldk409
18931738?21289170?26012777?
T:
qtesla1p
218479242185957921879004
T:
sphincsf128harakasimple
218348342201736622135099
T:
sphincs256
231835802324647523296028
T:
ecdonaldb409
286242952864010128685020
T:
sphincsf192shake256simple
308430433090215130957794
T:
luov4849242
323590403237516132404463
T:
sphincsf192harakasimple
362516913627158536362312
T:
sphincsf128shake256robust
417180964174811241790714
T:
sphincsf128harakarobust
421532584232064242518686
T:
3icp
454768584556595445705394
T:
luov863256
455817114573910646161717
T:
ecdonaldk571
510257585110926151253993
T:
ecdonaldb571
511694685135144051556687
T:
rainbowbinary256181212
536482735365490253774329
T:
sphincsf192shake256robust
601368256017617260216387
T:
sphincsf192harakarobust
756629727569480875785605
T:
sphincsf256shake256simple
792200718347358691686595
T:
falcon512tree
786163708370311690673177
T:
falcon512dyn
857589888578734585935192
T:
sphincsf256harakasimple
78237306?91873271?112850143?
T:
qtesla3p
107400041107931824108033513
T:
tts6440
81444916?110079438?169834777?
T:
ronald512
114061528114348493115130183
T:
rainbow1aclassic363232
83757653?114434040?194595681?
T:
rwb0fuz1024
119918190120182734120497937
T:
luov6468330
133603288133823508134073037
T:
rainbow1acompres363232
135687041135940315136114293
T:
rainbow1acyclicc363232
140943908141930684142178407
T:
sphincsf256shake256robust
163709700163908017164049564
T:
sphincsf256harakarobust
181235047181521431181954878
T:
luov890351
214970805215392562215733000
T:
luov8086399
237011516238495859238812651
T:
rainbowbinary16242020
239076915248015992263381405
T:
falcon1024tree
249772180255336326267222270
T:
falcon1024dyn
281269772281858745282789745
T:
rainbow5640
217254205?307636889?403367041?
T:
ronald768
323248247323451464323627521mqsignlr2567246
327172090327773355328394087
T:
luov8117404
425080999425502728426032383mqsignrr2567246
492350481492851898493110268
T:
redgemss128v2
370336568?536763710?786944011?
T:
ronald1024
610059142615499129617436421
T:
rainbow6440
624618820624865808625616208
T:
sphincss128shake256simple
664151950664503203668767778
T:
bluegemss128v2
694432263694864464695515065
T:
sphincss128harakasimple
731183747732039483734731900
T:
rainbow3cclassic683248
764582035766715936771085413
T:
rainbow3ccompres683248
770084259770632954774904347
T:
gemss128v2
818368586819648627821051000
T:
rainbow3ccyclicc683248
916478864916692721917064043
T:
sphincss192shake256simple
102609752010266146101028064716
T:
sphincss192harakasimple
116108433011614418201164387644
T:
sphincss128shake256robust
121109608212114662561213666972
T:
sphincss256shake256simple
122363966212247086391231865145mqsignlr25611272
126089167412615054831267680127
T:
sflashv2
133523166713356442541336561730
T:
sphincss128harakarobust
136789199413688451491370414759
T:
sphincss256harakasimple
161683260216178330561625280209mqsignrr25611272
172076891717212654131722650958
T:
sphincss192shake256robust
200048000620022996982022803930
T:
rainbow5cclassic963664
1487556448?2123931726?3300563798?
T:
ronald1536
212410269421273376602155571334
T:
rainbow5ccompres963664
213399251821380813862147864369
T:
rainbow5ccyclicc963664
225324108122556117922272899209
T:
sphincss256shake256robust
246004323624806498362511162654
T:
redgemss192v2
261898683226199976952629443859
T:
sphincss256harakarobust
308806721330908507283115671069mqsignlr25614896
319040906831973853103203842796
T:
redgemss128
337814521833799085813426808490
T:
bluegemss192v2
398071263139865885154000201639mqsignrr25614896
3327843141?4190501994?6124057821?
T:
ronald2048
490031111549123467824948083910
T:
bluegemss128
700201261270155187767076579594
T:
redgemss256v2
135745321251360198917713647392941
T:
redgemss192
10783689441?15219550661?23038333976?
T:
ronald3072
192826049921932173107219396604927
T:
bluegemss192
274069577742836619940728931654318
T:
pqrsa15
356935430603578776886335967172122
T:
redgemss256
27954186078?38241249879?51950190278?
T:
ronald4096
487228498824881850203348916313481
T:
bluegemss256
Cycles to sign 59 bytes
25%50%75%system
790098042381284
T:
rainbowbinary256181212
113442115220116515
T:
tts6440
159768161896193018
T:
rainbowbinary16242020
281876284095336686
T:
rainbow5640
371238371420371588ed25519
422436423661425964
T:
sflashv2
456582465458522081
T:
rainbow6440
682234682983684453
T:
rainbow1aclassic363232
777357780843801346
T:
ecdonaldp256
829899849814874776
T:
hector
880509882189903749
T:
rainbow1acyclicc363232
112817611284771134028
T:
ecdonaldp224
133882013400311352099
T:
ed448goldilocks
1028475?1588223?3632146?
T:
3icp
169353117071741738366
T:
ronald512
192132519408061962905
T:
falcon512tree
197537219800762026206mqsignlr2567246
2736657?2803689?8098727?
T:
pass769
281845928335932846900
T:
donald1024
319967232160243225726
T:
ecdonaldp160
318943132266853275839
T:
rainbow3cclassic683248
342604534399263479896mqsignrr2567246
346060434835923510199
T:
ronald768
1784293?3585715?7531454?
T:
qtesla1
366324037222643756270
T:
rainbow3ccyclicc683248
371413037318683744685
T:
falcon512dyn
381834638381143844974
T:
ecdonaldp192
3930563?3950968?6082230?nccsign1
393954439776874004280
T:
falcon1024tree
398858640095304019603
T:
ecdonaldk163
419624142189984232879
T:
ecdonaldb163
469175747057014731972
T:
edons128k08n72nu8l4mu3
3705051?5044956?7486416?T!!!dilithium2
531895053719545375895mqsignlr25611272
535861953995275428780
T:
ronald1024
543284054386645454176
T:
ecdonaldk233
570392957080875718867
T:
ecdonaldb233
4495946?6331416?8164940?nccsign1aes
3708691?6342931?10259627?T!!!dilithium2aes
3358908?6657672?6875162?
T:
pass863
695305869876317019278
T:
rwb0fuz1024
719002271942997208880
T:
ecdonaldp521
729419672975217309869
T:
rainbow5ccyclicc963664
730493473080637312543
T:
rainbow5cclassic963664
732988973333897338828crossrsdpg128fast
735849873623417369775crossrsdp128fast
4482562?7387912?11639551?
T:
qtesla3f
4865707?7594608?9737756?nccsign3
778934878083047829528
T:
falcon1024dyn
5624129?7932491?10879414?nccsign3aes
801629580711198130038
T:
donald2048
848852284904548494976mqsignrr25611272
5425000?8810900?14077196?T!!!dilithium3
7332388?9050832?17106782?T!!!dilithium3aes
6792954?10164868?15861251?
T:
qtesla1p
106411061066260310864763
T:
edons128ref
107835421078995410809890
T:
ecdonaldk283
8081689?10809785?16243682?T!!!dilithium5
110178041106254811104527mqsignlr25614896
116388301164933711675412
T:
ecdonaldb283
6004803?11732819?20442016?
T:
qtesla3s
8357594?12848990?16448292?nccsign5
132611431329834113374634aimer128f
136867011369994513723339crossrsdp128balanced
7395745?14443898?27341475?haetae2
145344851454179314552496crossrsdpg128balanced
161456681620101716246797
T:
ronald1536
11502750?16366427?21289877?T!!!dilithium5aes
167974311681451116859255mqsignrr25614896
170121211702550517039190crossrsdpg192fast
9443469?17236100?22072610?nccsign5aes
176131621762363417649163
T:
ecdonaldp384
179718141799354218032987crossrsdp192fast
221343222215237522191575
T:
luov863256
221811872219772122259930
T:
ecdonaldk409
222540922228447222293992crossrsdpg192balanced
243473092439154224436237
T:
ecdonaldb409
14042910?26609604?57710107?haetae5
11424959?26634377?41786514?haetae3
275277452754360727573063crossrsdp128small
285213322860391128673729
T:
ronald2048
289247772894058328954072crossrsdpg128small
304972993051805430547657crossrsdpg256fast
311887383121602431299660crossrsdp192balanced
344310333450809634561611aimer192f
360649663609944836127707crossrsdp256fast
18308892?37275315?57232301?
T:
qtesla3p
387222853874546238823680crossrsdpg256balanced
421786614230112642377090crossrsdpg192small
468171834684148746948230crossrsdp192small
480340634805873848153448
T:
ecdonaldk571
536819365378832954111596
T:
ecdonaldb571
604706416061591261023907crossrsdp256balanced
693604106940960669564572crossrsdpg256small
753714087539645475459006
T:
luov890351
773505957738899077464366aimer256f
837588648386031583998019
T:
ronald3072
962237089636050296538540
T:
rainbow1acompres363232
975329049763961997743016crossrsdp256small
103805849104193824104612487
T:
luov4849242
104944329105066290105252742aimer128s
132203540132277117132716416
T:
luov8117404
130531478?152664967?194782245?
T:
redgemss128
181035309181859482181990991
T:
mqdss48
184570827184752239184910677
T:
ronald4096
144369295?188677111?230608140?
T:
redgemss128v2
266666106267272110267928605aimer192s
280017892?343027783?407349271?
T:
redgemss192
411676895412173370415536352
T:
sphincs256
398452964?452180995?632831017?
T:
redgemss256
480268824491089389492737371
T:
luov6468330
442466248?528106628?621133989?
T:
redgemss192v2
558695256562381715562748277
T:
mqdss64
596849323599471096603574552aimer256s
601275563602610190603428910
T:
rainbow3ccompres683248
616875252617408715617873466
T:
sphincsf128shake256simple
781813144782220187782828298
T:
sphincsf192shake256simple
815796478817103056819237153
T:
sphincsf128harakasimple
888950027889409969890895467
T:
picnic2l1fs
917287448922395649927070375
T:
luov8086399
948192070948779825949514125
T:
sphincsf192harakasimple
104169418510430052851044334389
T:
pqrsa15
109398642510946494511095404226
T:
sphincsf128shake256robust
1029545797?1244292616?1443835806?
T:
redgemss256v2
143470352914364600391437881333
T:
sphincsf192shake256robust
144218011014435852411446500510
T:
sphincsf128harakarobust
148613521714877499631491152278
T:
rainbow5ccompres963664
173585869817364878231745425822
T:
sphincsf256shake256simple
177034300817715315311779475712
T:
sphincsf192harakarobust
234193850123429814662350248943
T:
sphincsf256harakasimple
250765877625096711082517590278
T:
picnic2l3fs
313024773631495007183158014048
T:
sphincsf256shake256robust
425621550242608327374276648117
T:
sphincsf256harakarobust
542307656154356665445489310043
T:
picnic2l5fs
6066927398?7309491210?8524563103?
T:
bluegemss128
6364954582?7636149955?10170885949?
T:
bluegemss128v2
932326114393286538879340232867
T:
sphincss128shake256simple
131884670961320081701413258104062
T:
sphincss128harakasimple
145021719641454455147614562684983
T:
sphincss256shake256simple
162721723921628277163816329577621
T:
sphincss128shake256robust
15401750504?18462569706?21570855838?
T:
bluegemss192
195391215601958513391819610031119
T:
sphincss192shake256simple
209502469962096313735621004353657
T:
sphincss256harakasimple
227323495562273658441622788408041
T:
sphincss128harakarobust
19650783243?23609921685?27582267503?
T:
bluegemss256
20240085117?24306963345?28471540825?
T:
bluegemss192v2
258808734102593882449226002498564
T:
sphincss256shake256robust
295611294232964062249429662542154
T:
sphincss192harakasimple
334921878133351163647333565078757
T:
sphincss192shake256robust
373834080203744612217537525126912
T:
sphincss256harakarobust
40720492841?48936138265?57243666312?
T:
gemss128v2
Cycles to verify 59 bytes
25%50%75%system
336843426534811
T:
rwb0fuz1024
775817790378372
T:
rainbowbinary256181212
99869100226100548
T:
3icp
104979105448106015
T:
ronald512
105896106351107135
T:
ronald768
109823111223112203
T:
rainbow5640
123284125370128800
T:
rainbowbinary16242020
134176135009135814
T:
ronald1024
136955137872138747
T:
tts6440
137067138425141239
T:
rainbow6440
177443178584181013
T:
rainbow1aclassic363232
204414205233205709
T:
ronald1536
302687303142303583
T:
ronald2048
347081350112351155
T:
falcon512tree
400393400960401394
T:
sflashv2
455063458192459543
T:
falcon512dyn
573349574084577332
T:
ronald3072
697354698173700420
T:
qtesla1
699958718753750008
T:
gemss128v2
733516734734737954
T:
falcon1024tree
721903739452750687
T:
bluegemss128v2
741510760620783643
T:
redgemss128v2
891898901243924476
T:
rainbow3cclassic683248
900907901579904715haetae2
952749953554958692
T:
ronald4096
994588997122998053
T:
falcon1024dyn
127302012798941288847ed25519
142890314298201441104T!!!dilithium2
157553915764701593809haetae3
161931016206961636838
T:
qtesla3f
164402016459661662122
T:
qtesla3s
170087417051861718472
T:
edons128k08n72nu8l4mu3
190116519019281917755haetae5
199577720067322031666
T:
ecdonaldp256
207074021039132159521
T:
bluegemss192v2
214000521847492239391
T:
redgemss192v2
203491422054902242611
T:
rainbow5cclassic963664
220917922116432227127T!!!dilithium3
222573422355132241932T!!!dilithium2aes
226090922655152277429nccsign1
229709222988982322117
T:
ecdonaldp224
238646124021062421678
T:
donald1024
267194926821062695014nccsign1aes
278192627920622799832nccsign3
278735827938052818557
T:
edons128ref
286458928927152915759
T:
ecdonaldp160
297026129728723043453mqsignrr2567246
296790229729283040359mqsignlr2567246
327442532845543310657
T:
pass769
332640033461193360308nccsign3aes
336266733856973403820
T:
ecdonaldp192
347060034987193523156
T:
hector
352779035407613551996T!!!dilithium5
374849337581813770697T!!!dilithium3aes
395738739768754002838
T:
pass863
399493540703814176963
T:
redgemss256v2
409140241019024110078
T:
qtesla1p
430534343219894327358crossrsdp128fast
457694345913634598839crossrsdpg128fast
475734047667834774511nccsign5
482726348373714848788
T:
ed448goldilocks
515860152727855333433
T:
sphincs256
556740855821575598040nccsign5aes
640289364118116427225T!!!dilithium5aes
764067576460237656901
T:
ecdonaldk163
805728780685298085714
T:
ecdonaldb163
848943284931498502788crossrsdp128balanced
876267787688378787597crossrsdpg128balanced
880929788110618835624mqsignrr25611272
880827588115238833818mqsignlr25611272
931613993751499470097
T:
donald2048
102120761022735010235960crossrsdp192fast
103331971034147810355387crossrsdpg192fast
101634401037278910550904
T:
sphincss128shake256simple
104027981041623810439289
T:
ecdonaldk233
109513671098213210995642
T:
ecdonaldb233
123361351234992512385198aimer128f
130282461303977513075748crossrsdpg192balanced
136410751369467413740202
T:
ecdonaldp384
135455601373024814063084
T:
sphincss128harakasimple
143173171432402314336196
T:
ecdonaldp521
149097691528708315411151
T:
sphincss192shake256simple
161644141616770416197979mqsignrr25614896
161633291616864916193177mqsignlr25614896
169720811699224817019604
T:
qtesla3p
173286681734232517356780crossrsdpg128small
174128571743037117463649crossrsdp128small
181783491820294018223695crossrsdp192balanced
183635551838295218400606
T:
luov863256
187302431874145018760931crossrsdpg256fast
197676501998721920284355
T:
sphincss256shake256simple
193206022004056620542928
T:
sphincss128shake256robust
197855212006375020423914
T:
sphincss192harakasimple
200482592007619620114255crossrsdp256fast
209178342094099020960849
T:
ecdonaldk283
222553312227493122329104crossrsdpg256balanced
226572782267298622711038
T:
ecdonaldb283
241213422414130624202255crossrsdpg192small
246234662506238725646250
T:
sphincsf128shake256simple
255657362610025626682495
T:
sphincss128harakarobust
274061762742294827445705crossrsdp192small
280635952835331128809186
T:
sphincss256harakasimple
290000482953615030384788
T:
sphincss192shake256robust
309893643132192031622115
T:
sphincsf128harakasimple
320815393213272332171202aimer192f
321038763219417632358886crossrsdp256balanced
382248303824895238275090crossrsdpg256small
380574463877028439456529
T:
sphincss256shake256robust
394294813992920440319426
T:
sphincsf192shake256simple
401182954052227940865545
T:
sphincsf256shake256simple
430502944310558043176462
T:
ecdonaldk409
475240644756542747599083
T:
ecdonaldb409
473399084805926348724214
T:
sphincsf128shake256robust
487846944908087149394639
T:
sphincsf192harakasimple
511841965122205251342305crossrsdp256small
518794575244960053111835
T:
sphincsf256harakasimple
535130195452203455154596
T:
sphincss256harakarobust
598827536055655261300918
T:
sphincsf128harakarobust
653149496537328765420292
T:
luov890351
659144926605398166182144
T:
luov4849242
724712527272701172883748aimer256f
734674227356833473700914
T:
rainbow1acyclicc363232
735681947363607373746505
T:
rainbow1acompres363232
754591817671502377809669
T:
sphincsf192shake256robust
771979887781526978965537
T:
sphincsf256shake256robust
936622969370887493787729
T:
ecdonaldk571
936897089379674593917376
T:
pqrsa15
941878429433255394438127
T:
bluegemss128
945742849476341795210948
T:
redgemss128
967424579765592998377594
T:
sphincsf192harakarobust
100621591101655218102926019
T:
sphincsf256harakarobust
103987422104044696104146238aimer128s
104745935104971993105757988
T:
ecdonaldb571
115121958115196718115331909
T:
luov8117404
132972378134752961136164756
T:
mqdss48
222746503226884014229730333
T:
luov6468330
253191491253700972254481024
T:
bluegemss192
261828455262473274266286776
T:
redgemss192
265650350265887279266165473aimer192s
411632564416550456422451022
T:
mqdss64
411190115418530434419135472
T:
luov8086399
426229062426562682427091000
T:
picnic2l1fs
437034115437920749440595617
T:
bluegemss256
446866014447660136448518826
T:
rainbow3ccyclicc683248
449915907450342550450699403
T:
rainbow3ccompres683248
451181234452612727456204917
T:
redgemss256
592420150595961359597534301aimer256s
946956010947932454948973284
T:
picnic2l3fs
100785240510122856521013717096
T:
rainbow5ccyclicc963664
101360889710144163821015250698
T:
rainbow5ccompres963664
167235160416735708501678705441
T:
picnic2l5fs