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-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: 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, rainbowbinary16242020

Cycles to generate a key pair
25%50%75%system
219172193122064picnicl1full
224142247022568picnic3l1
290572908529218picnic3l3
298202984129974picnicl3full
358263589636008
T:
picnic2l1fs
366383665936799picnicl1ur
366943672236897picnicl1fs
379543800338171picnicl5full
381853826238423picnic3l5
631056355364043
T:
picnic2l3fs
691256940569454picnicl3ur
694616950369797picnicl3fs
871928759887752
T:
picnic2l5fs
936889425594388picnicl5ur
942349431194675picnicl5fs
266889266945267281aimer128f
296849296975298165aimer128s
345996346220346451ed25519
710514712299716324aimer192s
712173713069717010aimer192f
771547795900830109
T:
hector
119592911983231239651T!!!dilithium2
125729812623731294916nccsign1
131043513116461329608
T:
ed448goldilocks
161316416151801670291aimer256f
161274416173151650397aimer256s
161518016210181654002nccsign3
172435217401931789704nccsign1aes
197927819804682070138T!!!dilithium3
208351520936022112467
T:
pass769
222760322417012267090nccsign3aes
256855225786602619169T!!!dilithium2aes
259436125994712618245nccsign5
258720726030692621325
T:
pass863
304354430518393087315
T:
mqdss48
315911431643573180982T!!!dilithium5
350097335204963545738nccsign5aes
384144638598353907722T!!!dilithium3aes
3770011?4775400?5831483?
T:
qtesla1
640875264232776454609T!!!dilithium5aes
704393970529067098511
T:
mqdss64
7191835?7235165?10366615?
T:
qtesla3f
3635926?7849842?11409622?haetae2
4758061?7883309?18970063?haetae3
795130780329908119888
T:
donald2048
4534523?8672916?13854785?haetae5
12101502?16906421?23351741?
T:
qtesla3s
194947481950568919559848
T:
sphincsf128shake256simple
17123323?21279342?23429000?
T:
qtesla1p
217746062178528121828121
T:
sphincs256
218505632188157321910637
T:
sphincsf128harakasimple
286171062862932128679700
T:
sphincsf192shake256simple
323737333241669932449151
T:
sphincsf192harakasimple
362558003630693536372392
T:
sphincsf128shake256robust
417781004186662941941760
T:
sphincsf128harakarobust
461648604620569146302144
T:
luov4849242
511773155155678551641604
T:
rainbowbinary256181212
536653185368200653745762
T:
sphincsf192shake256robust
601358456019671060253802
T:
sphincsf192harakarobust
622125846226777262343939
T:
luov863256
756690277570288675762554
T:
sphincsf256shake256simple
800787618403580594199056
T:
falcon512dyn
796165728454828991504987
T:
falcon512tree
858140298587639285976688
T:
sphincsf256harakasimple
78515423?96674431?115371977?
T:
qtesla3p
114142259114400902114749887
T:
rainbow1aclassic363232
118837117118954157119115276
T:
rainbow1acompres363232
120970815121051840121228975
T:
rainbow1acyclicc363232
140988498142056754142202536
T:
sphincsf256shake256robust
152180462152343415152532751
T:
luov6468330
163729279163813286163905518
T:
sphincsf256harakarobust
239095339239504174239816493
T:
luov890351
235195667243910583265432916
T:
falcon1024dyn
240852990249112017262927532
T:
falcon1024tree
279765724280173355280515410
T:
luov8086399
323460865323730134324229290mqsignlr2567246
425819653426059893426558776mqsignrr2567246
427671097428009687428501920
T:
luov8117404
493177811493398955495426141
T:
redgemss128v2
624726718624878121625219945
T:
sphincss128shake256simple
665037800666260560672150717
T:
bluegemss128v2
694714846695014544695451568
T:
sphincss128harakasimple
731244325733904990735060116
T:
rainbow3cclassic683248
770963375772533881779295251
T:
gemss128v2
802912390804325935808848229
T:
rainbow3ccompres683248
916346872916565755916834121
T:
sphincss192shake256simple
102299988710237127461026907938
T:
rainbow3ccyclicc683248
102557627210260961971026790233
T:
sphincss192harakasimple
116122055711615324421161960646
T:
sphincss128shake256robust
121107906512115054491212482439
T:
sphincss256shake256simple
122562546412277189681232076391mqsignlr25611272
133475997213352533741336574183
T:
sphincss128harakarobust
136858346113701920051372623035
T:
sphincss256harakasimple
161782008516183723221622357597mqsignrr25611272
171919478517210905531723708952
T:
sphincss192shake256robust
200008941320058025192022815746
T:
rainbow5cclassic963664
212417196621329833492146004623
T:
rainbow5ccompres963664
221167841322143000532263224145
T:
rainbow5ccyclicc963664
225494523122643048262291569609
T:
sphincss256shake256robust
248906282124981818192509227623
T:
redgemss192v2
261935627126212595292626138347
T:
sphincss256harakarobust
308721711930957422303143190449mqsignlr25614896
318650295631943634733240583563
T:
redgemss128
338530980233944047203421558665
T:
bluegemss192v2
398475209339909240144012429806mqsignrr25614896
489476054249043382364957447922
T:
bluegemss128
700726201070409375757074207287
T:
redgemss256v2
135593969491360977630613667638369
T:
redgemss192
193759431321942511340719469612799
T:
bluegemss192
317347696963247340391433232719310
T:
pqrsa15
357264735033583427519035962386845
T:
redgemss256
487848913234888280852748992233612
T:
bluegemss256
Cycles to sign 59 bytes
25%50%75%system
796608102581816
T:
rainbowbinary256181212
370860371140371539ed25519
682052682857698663
T:
rainbow1aclassic363232
691971692846711522
T:
rainbow1acyclicc363232
839475857038887194
T:
hector
133791713385821342271
T:
ed448goldilocks
192423719419751973370
T:
falcon512tree
197744419836322032730mqsignlr2567246
2700327?2730448?5475127?
T:
pass769
318507732028503265360
T:
rainbow3cclassic683248
3360448?3391059?6723521?
T:
pass863
342910434413823484152mqsignrr2567246
1554427?3583202?5843138?
T:
qtesla1
372045137474363789877
T:
falcon512dyn
392434739626934004938
T:
falcon1024tree
486111549232894932543
T:
rainbow3ccyclicc683248
2659825?5042471?10612840?T!!!dilithium2
531885953728575378919mqsignlr25611272
3932579?5622393?7348551?nccsign1
3810464?5949608?10931690?
T:
qtesla3f
4504059?6775272?8641465?nccsign1aes
5491276?7152453?10118479?T!!!dilithium2aes
730422773121237326494
T:
rainbow5cclassic963664
732192373290287350714
T:
rainbow5ccyclicc963664
4874569?7602938?12456031?nccsign3
774795777781627805042
T:
falcon1024dyn
795536780392628077811
T:
donald2048
849690885012558549695mqsignrr25611272
7924693?8559257?16105047?nccsign3aes
5431902?9253923?16795261?T!!!dilithium3
6741469?9412620?15380967?
T:
qtesla1p
6086752?9606107?20797371?
T:
qtesla3s
6892760?10295600?14100086?T!!!dilithium5
7391993?10726954?20752060?haetae2
110370891107083611093159mqsignlr25614896
9463734?13309961?17246775?nccsign5aes
133225821334119513353949aimer128f
8362074?16458729?17491551?nccsign5
10987613?16518201?26848668?T!!!dilithium3aes
168144621683665216882908mqsignrr25614896
13342371?17350438?27651260?T!!!dilithium5aes
11411365?21507157?36734978?haetae3
18322899?28829094?72197300?
T:
qtesla3p
14044009?32856369?63996835?haetae5
343284483439282034445985aimer192f
388663803889887438965346
T:
luov863256
424346094245025442540449picnicl1full
494123284945974649542675picnicl1fs
682771186836767068417356picnicl1ur
774047477816017378341914aimer256f
824777108256038782731656picnicl3full
953345969547600395772418
T:
rainbow1acompres363232
105020468105100520105275856aimer128s
115030797115218250115339504picnicl3fs
122059742122609431123109812
T:
luov4849242
130853541130947208131042163picnicl5full
133789271133874979133947688
T:
luov890351
126577864?156659293?205376703?
T:
redgemss128
169082599169253903169476062picnicl3ur
143068814?171797017?226458197?
T:
redgemss128v2
180861758181107213181962067
T:
mqdss48
198261861198414517198593850picnicl5fs
208730809208892817209003837picnic3l1
232451212232718031232853971
T:
luov8117404
268065063268542407269060736aimer192s
274380274274506925274776467picnicl5ur
272209273?304948490?380622522?
T:
redgemss192
412314931412574057413002233
T:
sphincs256
358223614?423142790?548723063?
T:
redgemss256
467643218467909029468393611picnic3l3
506479554507790052524908076
T:
luov6468330
445803302?550237492?641664359?
T:
redgemss192v2
558247858558494846558836894
T:
mqdss64
595857661597182488600058767aimer256s
612200337613204998614541046
T:
rainbow3ccompres683248
616919464617307411618286382
T:
sphincsf128shake256simple
750143114750687770751287901picnic3l5
781808258782322394783376531
T:
sphincsf192shake256simple
815655484816547879817301303
T:
sphincsf128harakasimple
948469459949205299951215958
T:
sphincsf192harakasimple
9900110439926860371001892339
T:
luov8086399
103707130110380337311040801230
T:
pqrsa15
109440430410953152281096537176
T:
sphincsf128shake256robust
1011110590?1221036509?1470312858?
T:
redgemss256v2
142168359914227021481426950497
T:
picnic2l1fs
143529680014363933641437878428
T:
sphincsf192shake256robust
144335510214445839451447608085
T:
sphincsf128harakarobust
148573947914872447101490198766
T:
rainbow5ccompres963664
173562127917363532761744783530
T:
sphincsf256shake256simple
177005957117724463401778456834
T:
sphincsf192harakarobust
234384469923458117762349502561
T:
sphincsf256harakasimple
313556868131510096873158521436
T:
sphincsf256shake256robust
379947355938087159183853416308
T:
picnic2l3fs
425666670842612351954266354806
T:
sphincsf256harakarobust
6049120371?7323707937?9697893184?
T:
bluegemss128
742833680474810725997496358254
T:
picnic2l5fs
6360379221?7634632152?8912824802?
T:
bluegemss128v2
932859709693375503559381032010
T:
sphincss128shake256simple
131918196061320741977813251031108
T:
sphincss128harakasimple
144974736761454876035214557653614
T:
sphincss256shake256simple
162791952611632134896016342271890
T:
sphincss128shake256robust
15351436121?18572719263?21654913000?
T:
bluegemss192
195495810231959422150019605675656
T:
sphincss192shake256simple
16336008017?20324956176?28433567050?
T:
bluegemss192v2
209083715402091403253120977282333
T:
sphincss256harakasimple
227374756562274399915222795341562
T:
sphincss128harakarobust
19612942909?23586264128?27629952336?
T:
bluegemss256
259345881552595780207326077390003
T:
sphincss256shake256robust
295455994332959350056629644956418
T:
sphincss192harakasimple
334261145963348786665033526654833
T:
sphincss192shake256robust
374299452173746558734137563156365
T:
sphincss256harakarobust
40838282828?49074283132?57291390723?
T:
gemss128v2
Cycles to verify 59 bytes
25%50%75%system
784357920579996
T:
rainbowbinary256181212
177205179445180705
T:
rainbow1aclassic363232
346605350469351162
T:
falcon512tree
456071458794460047
T:
falcon512dyn
697725698173707021
T:
qtesla1
730618733901734951
T:
falcon1024tree
724122743561762370
T:
gemss128v2
743407758940781557
T:
bluegemss128v2
777714801129814002
T:
redgemss128v2
892080897477914270
T:
rainbow3cclassic683248
900928901306902629haetae2
967022969780971663
T:
falcon1024dyn
127138212807411295315ed25519
142888214299671440642T!!!dilithium2
157557415766591594922haetae3
161943616203461636201
T:
qtesla3f
165368016546321667183
T:
qtesla3s
190146619024531925560haetae5
212247721760902246776
T:
bluegemss192v2
206087721953122226679
T:
rainbow5cclassic963664
221003322109082225636T!!!dilithium3
215715522302702296315
T:
redgemss192v2
225922222674192277800nccsign1
266969526823932692130nccsign1aes
268062226910522725100T!!!dilithium2aes
278858327946312815834nccsign3
296876329720603049550mqsignlr2567246
297123429753573044790mqsignrr2567246
326186032749573287914
T:
pass769
332950833425633362541nccsign3aes
352769235319973546312T!!!dilithium5
352303735478173578554
T:
hector
396533239760214000850
T:
pass863
404360640555414072551T!!!dilithium3aes
404545440695974086537
T:
qtesla1p
401581641289224237051
T:
redgemss256v2
475995847700664778942nccsign5
481523748341934859673
T:
ed448goldilocks
516443952249965275907
T:
sphincs256
557221055917895607651nccsign5aes
674720267579826773739T!!!dilithium5aes
880857688149678839194mqsignlr25611272
881685088186638850191mqsignrr25611272
934616993912219440599
T:
donald2048
102498271039250810604594
T:
sphincss128shake256simple
124096281242075112469198aimer128f
134752941369377113922209
T:
sphincss128harakasimple
149680791532757115631266
T:
sphincss192shake256simple
161787221618933416243871mqsignrr25614896
161826911619762216240119mqsignlr25614896
169820491701338817040359
T:
qtesla3p
195475422004867920424285
T:
sphincss128shake256robust
198548772006839120332977
T:
sphincss192harakasimple
197830292007176520353102
T:
sphincss256shake256simple
247494872518605625599497
T:
sphincsf128shake256simple
255695862624092126691749
T:
sphincss128harakarobust
279746042831497928938665
T:
sphincss256harakasimple
290652322960365130117521
T:
sphincss192shake256robust
308024923114569531539452
T:
sphincsf128harakasimple
315424203159161631648302picnicl1full
319397123200656932081028aimer192f
350344193504550735102886
T:
luov863256
382525783829070738376198picnicl1fs
377218873849719339099585
T:
sphincss256shake256robust
393716823989990940195946
T:
sphincsf192shake256simple
396743064046185541000449
T:
sphincsf256shake256simple
473001974809770048710221
T:
sphincsf128shake256robust
484381804910516849341915
T:
sphincsf192harakasimple
518616635245230952998106
T:
sphincsf256harakasimple
526697785275295252832206picnicl1ur
536819855438373554868044
T:
sphincss256harakarobust
596547846051203961254410
T:
sphincsf128harakarobust
618975146195768662013315picnicl3full
724293227250206672582034aimer256f
739474127407587674130434
T:
rainbow1acyclicc363232
742051877432138774439862
T:
rainbow1acompres363232
763068607685930777406455
T:
sphincsf192shake256robust
775253087843101778868398
T:
sphincsf256shake256robust
848400918507767885451814
T:
luov4849242
909286079103935491136997picnicl3fs
934710919364742193872821
T:
bluegemss128
968469749695407497115088
T:
redgemss128
966597739730431298350147
T:
sphincsf192harakarobust
989767389907960399194669
T:
pqrsa15
990783089914264599364223picnicl5full
100055830101120047102300240
T:
sphincsf256harakarobust
103978875104049715104101291aimer128s
123468877123531198123610543
T:
luov890351
132581939132702829132848401picnicl3ur
132216308133557438134996302
T:
mqdss48
158670673158903913159244379picnicl5fs
177376059177549750177821280picnic3l1
214837070214953767215162752
T:
luov8117404
224625688224741538224904253picnicl5ur
254733549255202318255714277
T:
bluegemss192
257798177258341944259396011
T:
redgemss192
265488993265875428266038388aimer192s
265129375265967422279034483
T:
luov6468330
392999362393284059393593340picnic3l3
411797834414800148417437244
T:
mqdss64
440847715441949109444921141
T:
bluegemss256
443912245445267592446497436
T:
redgemss256
445941538446295962447431082
T:
rainbow3ccyclicc683248
456525083457018905457845283
T:
rainbow3ccompres683248
490325402492598722498216880
T:
luov8086399
591899735595158466598092859aimer256s
598787560599428074600071969picnic3l5
902126463902370217903077280
T:
picnic2l1fs
101315102010142971441015576303
T:
rainbow5ccompres963664
101293373310148478551020325656
T:
rainbow5ccyclicc963664
204366150820455277572054873233
T:
picnic2l3fs
361492646936240104883633929355
T:
picnic2l5fs