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; Golden Cove (906a4-40); 2022 Intel Core i3-1215U, P cores; 2 x 1600MHz; alder2,1f626960,5600000, supercop-20240625

[Page version: 20240726 23:45:48]

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.


Implementation notes

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
275027632790picnicl1full
273328092891picnic3l1
381438423926picnicl1ur
383738493909picnicl3full
382038633937picnicl1fs
385338853983picnic3l3
418542844374
T:
picnic2l1fs
519452235282picnic3l5
520452485294picnicl5full
769377717869picnicl3ur
890390339198
T:
picnic2l3fs
891691439279picnicl3fs
117641183411921
T:
picnic2l5fs
119171194912034picnicl5fs
119151213712344picnicl5ur
334863376334138T!!!dilithium2aes
389343937240145ed25519
519585223652603dilithium3aes
650226520465726T!!!dilithium2
769947740677757dilithium5aes
854858588286969
T:
donald512
864188677787905
T:
ecdonaldp256
115001115451119160
T:
ecdonaldp224
119875120148120990T!!!dilithium3
131383132080133560
T:
ed448goldilocks
184038184571185157T!!!dilithium5
204294207069208449
T:
pass769
223093224281226451
T:
donald1024
253685255202256501
T:
pass863
407909410605414247
T:
sphincsf128harakasimple
486955489387493811
T:
ecdonaldp160
516462520160524408
T:
ecdonaldp521
532345536622543007
T:
ecdonaldk163
550290557759563948
T:
ecdonaldb163
555114557965560792
T:
mqdss48
587439591700597370
T:
ecdonaldp192
622138623684625743
T:
sphincsf128harakarobust
400123?640434?1124024?haetae2
661663663011667976
T:
sphincsf192harakasimple
698209703729712603
T:
donald2048
708930711783721435
T:
ecdonaldk233
726767738564750807
T:
ecdonaldb233
948795952722957065
T:
sphincsf192harakarobust
117917911913721196115
T:
ecdonaldk283
1189406?1231805?1773577?
T:
qtesla1
124293512503361265916
T:
ecdonaldb283
128399612869061289698
T:
mqdss64
626576?1543784?2326887?haetae3
729219?1553717?2598923?haetae5
166324116671601672248
T:
sphincsf256harakasimple
192661419379501955890
T:
ecdonaldk409
202417920379582049450
T:
ecdonaldb409
205990720676612076020
T:
ecdonaldp384
217436821864672202218
T:
sphincsf256harakarobust
232339223249452327106
T:
sphincs256
2093761?3080922?5022981?
T:
qtesla3f
319171931955833209988
T:
sphincsf128shake256simple
3124008?4130208?6154542?
T:
qtesla3s
424225342643404278210
T:
ecdonaldk571
451548745251434588312
T:
luov863256
453961245568154569993
T:
ecdonaldb571
4239289?4811094?5407945?
T:
qtesla1p
510528651632815168034
T:
sphincsf192shake256simple
615768661664406175260
T:
sphincsf128shake256robust
637317363920016419506
T:
mqsignlr2567246
640642064621536553832
T:
rainbow1aclassic363232
709439071724027453232
T:
rainbowbinary256181212
727164172792517353503
T:
luov863256pc
735822174116997468070
T:
rainbow1acyclicc363232
754868475870237634484
T:
rainbow1acompres363232
891918589281388944640
T:
sphincsf192shake256robust
9918834998066210036677
T:
mqsignrr2567246
8678815?12668318?20774916?
T:
ronald512
127838781290677213055786
T:
sphincss128harakasimple
129622061311778814416355
T:
sphincsf256shake256simple
146432811497580616260389
T:
falcon512dyn
148831291524425516465163
T:
falcon512tree
173481111739409517431708
T:
sphincss128harakarobust
189253271898656219077262
T:
luov4849242
200506292007071620154043
T:
luov890351
14021138?21642755?37390923?
T:
ronald768
223210682236787122422220
T:
sphincss192harakasimple
242240702423786024246930
T:
sphincsf256shake256robust
21898415?25660750?33300466?
T:
qtesla3p
289427552897016328987057
T:
mqsignlr25611272
323814533244995432551296
T:
luov890351pc
330149043306425933087339
T:
sphincss256harakasimple
342963523432188134357408
T:
sphincss192harakarobust
343779163444967734543294
T:
luov8117404
354778883560827435800168
T:
rainbowbinary16242020
369790843714179237245143
T:
sphincss256harakarobust
375885503774521937849749
T:
rainbow3cclassic683248
397808114013645040535996
T:
gemss128
401525284023891540527587
T:
rainbow3ccompres683248
413592434175699442503441
T:
redgemss128
420865564229671242720254
T:
bluegemss128
421661244247574542690148
T:
mqsignrr25611272
424185124314890143869265
T:
rainbow3ccyclicc683248
23525743?43741475?63244063?
T:
ronald1024
477357694994601754300540
T:
falcon1024dyn
489138755106717355564819
T:
falcon1024tree
552408205534718255508374
T:
redgemss128v2
574221065861838859831948
T:
luov8117404pc
605171296070592160920418
T:
luov6468330
728484027291427875282045
T:
mqsignlr25614896
758336317593057876251636mqsignlr2567246
920950159221520892321164
T:
gemss128v2
959717139609092996242869
T:
bluegemss128v2
964524629651419096560970
T:
rainbow1b
100803428103035045103561576
T:
mqsignrr25614896
105089790105146891105204536
T:
sphincss128shake256simple
105592315105749200105999706mqsignrr2567246
112528792112689315112904374
T:
luov8086399
114608826115720072116406457
T:
sflashv2
86637635?129156656?183795988?
T:
ronald1536
134422005134692330135134551
T:
rainbow1c
135519932135724590136016418
T:
rainbow5cclassic963664
138089350138404859138878410
T:
rainbow5ccompres963664
148408033148610555148965735
T:
rainbow5ccyclicc963664
157290962158305610159609497
T:
sphincss192shake256simple
186755447186837137187003515
T:
sphincss128shake256robust
208460615208958710209621344
T:
sphincss256shake256simple
208611548209079321209530723
T:
gemss192
208791326209449363210073001
T:
bluegemss192
211464082212035507212977394
T:
redgemss192
162773999?254939352?378055588?
T:
ronald2048
272949663273067776273261782mqsignlr25611272
297022454297077908297416293
T:
sphincss192shake256robust
368860960368921462369038584
T:
gemss192v2
374296860375142336375213581
T:
bluegemss192v2
378264844378336585387878312
T:
redgemss192v2
378248908381812697382163577
T:
sphincss256shake256robust
387091937387334956387849740mqsignrr25611272
531600312538030053552556250
T:
gui184
600372148601620111603581180
T:
gemss256
614462836615499199621434422
T:
rainbow3b
636282925636398377636615829mqsignlr25614896
599749090654729212656149536
T:
redgemss256
604290119656112145656524321
T:
bluegemss256
707109841709372371750746154
T:
bluegemss256v2
689934888736266185737004255
T:
redgemss256v2
737041284737594917738659893
T:
gemss256v2
903276009904025202905327246mqsignrr25614896
904709836904970531905077819
T:
gravitysphincss
952154189954469124954836949
T:
rainbow1a
519180570?965148581?1420862891?
T:
ronald3072
119172865411923719691198414880
T:
rainbow3c
1552505212?2578237580?3713326104?
T:
ronald4096
286184376931527563243178457019
T:
rainbow6b
360703920441059150674109995416
T:
rainbow5c
411483165342072171614269256205
T:
gui312
494939991349524449245518123800
T:
rainbow6a
688683224270271701727030552112
T:
rainbow4a
137342206681373480119813736693075
T:
gravitysphincsl
197374156061983890332920156638936
T:
gui448
275382264892754057988227542559613
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
104961075711515
T:
rainbowbinary256181212
246792560326543
T:
rainbowbinary16242020
412434176642179ed25519
450334539745697
T:
rainbow1a
47077?47381?64208?
T:
rainbow1aclassic363232
747207526076017
T:
sflashv2
749487581876057
T:
mqsignlr2567246
771297749378497
T:
rainbow1acyclicc363232
846478497285276
T:
rainbow1c
977979855598904
T:
mqsignrr2567246
87182?115496?160760?T!!!dilithium2aes
117312117715118122
T:
ecdonaldp256
135771136706139181
T:
ed448goldilocks
156455157320158477
T:
rainbow1b
157875158426159430
T:
ecdonaldp224
161676163223164193
T:
donald512
96978?166376?253003?T!!!dilithium2
119955?197814?276483?dilithium3aes
160404?201280?254113?dilithium5aes
217002219940222644
T:
mqsignlr25611272
214104?224764?445649?
T:
pass769
192678?243419?414761?T!!!dilithium3
264143266169267103
T:
rainbow3cclassic683248
264986268487271783
T:
ronald512
142575?273346?448145?
T:
qtesla1
274447276128277081
T:
rainbow3c
294875295773298718
T:
luov863256pc
299149300557302928
T:
donald1024
303198307304324034
T:
mqsignrr25611272
322408324147327881
T:
falcon512tree
341796345271349099
T:
rainbow3ccyclicc683248
283356?354408?551552?T!!!dilithium5
404479406466407827mqsignlr2567246
412167418833441490
T:
rainbow6a
419673423928426267
T:
mqsignlr25614896
465244470434477436
T:
ronald768
475393477172478252
T:
rainbow3b
257193?510186?522470?
T:
pass863
510491512388514991
T:
ecdonaldp160
524102541904544575
T:
rainbow5c
557000559690567318
T:
ecdonaldk163
563546572644576630
T:
mqsignrr25614896
576155581345589612
T:
ecdonaldb163
577743582576588166
T:
falcon512dyn
375338?596410?864272?
T:
qtesla3f
618312621956624850
T:
ecdonaldp192
635747641137644646
T:
rainbow5ccyclicc963664
637936644657652151
T:
ronald1024
650165655000664382
T:
falcon1024tree
652515655090661044
T:
rainbow5cclassic963664
653448657555685301
T:
rainbow4a
701546704565714346
T:
donald2048
393876?736332?1136042?
T:
qtesla1p
734331736705740172mqsignrr2567246
746455749625756318
T:
ecdonaldk233
764633768964775289
T:
ecdonaldb233
768865770690774309
T:
ecdonaldp521
438061?862354?1771649?
T:
qtesla3s
862175864920867684
T:
luov890351pc
518582?955579?1596647?haetae2
966928968823970856mqsignlr25611272
114302211573441162340
T:
rainbow6b
116732711764971182913
T:
falcon1024dyn
124688412530631271713
T:
ecdonaldk283
125405112574401260379
T:
luov8117404pc
131851713270801336683
T:
ecdonaldb283
833808?1498556?2514846?haetae5
695543?1543815?2665231?haetae3
159113015944681599438mqsignrr25611272
169326017066361715830
T:
ronald1536
198951419996672002229mqsignlr25614896
206304420751742090099
T:
ecdonaldk409
216075921636642168075
T:
ecdonaldp384
216002821705982183770
T:
ecdonaldb409
2184342?2369140?3081848?
T:
redgemss128
2384322?2748033?3449474?
T:
redgemss128v2
278029827897282798002
T:
ronald2048
298454529986573007391mqsignrr25614896
327200532749803277968picnicl1full
336235233676303372017
T:
luov863256
353418335597353581103
T:
mqdss48
2665071?3577438?4760349?
T:
qtesla3p
379433338087483996787picnicl1fs
447004044853764501726
T:
rainbow1acompres363232
449848245152184529857
T:
ecdonaldk571
479381748134404839397
T:
ecdonaldb571
499699350025405011227picnicl1ur
5263038?6343369?7276312?
T:
redgemss192
638965663941306397371
T:
gravitysphincss
5586332?6430399?7259829?
T:
redgemss192v2
648020564868266493886picnicl3full
755595475701217585158
T:
ronald3072
900372990149099027067
T:
mqdss64
99828861002123410046651picnicl3fs
8552553?10527946?13728983?
T:
redgemss256
107564641076737210777985picnicl5full
113682781137796511419309
T:
luov890351
9688299?11382972?12735305?
T:
redgemss256v2
115765321160678011634105
T:
gravitysphincsm
130934681310375813117331picnicl3ur
139598411399077914007592
T:
gravitysphincsl
145127831453133514547330picnic3l1
9698129?15505966?29059223?
T:
gui184
155190491557115215619513
T:
sphincsf128harakasimple
161911521621193116241526
T:
ronald4096
169256561693696016996193picnicl5fs
195961371961970219687444
T:
luov8117404
196259691969239019762406
T:
sphincsf192harakasimple
217764882180678621828123picnicl5ur
226959412275008622783194
T:
sphincsf128harakarobust
266287712672260726924309
T:
rainbow3ccompres683248
287096312875900328861639
T:
sphincsf192harakarobust
324771573251634532543787picnic3l3
382779883831134738341907
T:
luov4849242
418815494193595441985619
T:
sphincs256
439105364395777744012743
T:
sphincsf256harakasimple
537260755380439353831868picnic3l5
576840625778835757938911
T:
sphincsf256harakarobust
688041086920092770344768
T:
rainbow5ccompres963664
64917192?77791147?90797565?
T:
bluegemss128v2
68185206?81724354?95381692?
T:
bluegemss128
104796376104964563105251102
T:
sphincsf128shake256simple
110196817110654984110918290
T:
luov6468330
124654057124718800124809809
T:
picnic2l1fs
141391219141492086142374367
T:
sphincsf192shake256simple
190147184190310451190772202
T:
sphincsf128shake256robust
170640242?204663921?238779993?
T:
bluegemss192v2
217600230217716880218491827
T:
luov8086399
184499370?221177030?257998223?
T:
bluegemss192
245563489245914101248690479
T:
sphincsf192shake256robust
257969783258370060258964177
T:
sphincss128harakasimple
304406250307979655337202271
T:
sphincsf256shake256simple
335864346336170399336528679
T:
sphincss128harakarobust
297218266?356137701?415725321?
T:
bluegemss256
376662153377067668377174213
T:
picnic2l3fs
275182919?383157265?384042447?
T:
bluegemss256v2
451326698452492455452853905
T:
sphincss256harakasimple
395255274?477890343?631865554?
T:
gemss128v2
268598597?484606370?1020269103?
T:
gui312
414200625?500497512?583975072?
T:
gemss128
528606625529345118529859544
T:
sphincss256harakarobust
543587768543938485602510411
T:
sphincsf256shake256robust
623386987627132957628302804
T:
sphincss192harakasimple
795449925795565248795656785
T:
picnic2l5fs
975839340978760005984765226
T:
sphincss192harakarobust
1227867670?1258679243?1719895954?
T:
gemss192
1103732500?1325172996?1766037395?
T:
gemss192v2
168884928016928468241693715782
T:
sphincss128shake256simple
1887814080?2264875439?2621950079?
T:
gemss256v2
2138760913?2573896844?3002791113?
T:
gemss256
258595052925903649572591747654
T:
sphincss256shake256simple
278951538727949612072797882211
T:
sphincss128shake256robust
359994663436063455793626850569
T:
sphincss192shake256simple
442840692144551076504460343218
T:
sphincss256shake256robust
612851679461329600336138020815
T:
sphincss192shake256robust
2496347146?6239032862?10613747908?
T:
gui448
Cycles to verify 59 bytes
25%50%75%system
779280398180
T:
rainbowbinary256181212
188301896319219
T:
rainbowbinary16242020
198692016820482
T:
ronald512
217422225222544
T:
ronald768
245042525726147
T:
rainbow1aclassic363232
248732535825746
T:
ronald1024
307013246932876
T:
rainbow1a
325963296033390
T:
ronald1536
438564397644162T!!!dilithium2aes
436424412144819
T:
ronald2048
492895014650595
T:
rainbow1c
532625358053912
T:
mqsignlr2567246
534665396254401
T:
mqsignrr2567246
543095582857663
T:
gravitysphincss
563685745858017
T:
falcon512tree
619016229062543dilithium3aes
628976357264109
T:
qtesla1
680816850369402
T:
falcon512dyn
725467281673064T!!!dilithium2
729627340074298
T:
ronald3072
764927779585736
T:
sflashv2
776547968086848
T:
luov863256pc
892558959589873dilithium5aes
101128101767102301haetae2
112589113671113981
T:
falcon1024tree
113773114561115484
T:
donald512
113426114640116139
T:
ronald4096
120324120507120816T!!!dilithium3
124966127471130946
T:
gui184
121712128952129746
T:
rainbow3cclassic683248
129210130171130726ed25519
130742131534132853
T:
qtesla3f
133419134024134780
T:
qtesla3s
134597134826134996
T:
rainbow1b
137535138475139465
T:
falcon1024dyn
157097157444157904haetae3
188560189415190088haetae5
189748190714191386T!!!dilithium5
198426201445208051
T:
mqsignlr25611272
200082207916234895
T:
mqsignrr25611272
205743?225457?265834?
T:
redgemss128v2
224141227337228857
T:
rainbow3c
223315229973235918
T:
gemss128
226648232096242149
T:
redgemss128
230642235498242099
T:
bluegemss128
233181236430250791
T:
rainbow4a
234077238421243513
T:
gravitysphincsm
241443243863245951
T:
donald1024
242083245514256731
T:
luov890351pc
239974248037255006
T:
bluegemss128v2
252729257877267764
T:
gemss128v2
273549274342275534
T:
ecdonaldp256
290631292439296514
T:
rainbow5cclassic963664
290215296365301121
T:
pass769
298969299881301386
T:
qtesla1p
299294300164300985
T:
ecdonaldp224
315525318402322736
T:
gravitysphincsl
344060348940356299
T:
luov8117404pc
347631351571359634
T:
pass863
366225374144379546
T:
sphincss128harakasimple
407465415044418278
T:
mqsignrr25614896
407593415291417517
T:
mqsignlr25614896
450507453212455997
T:
ed448goldilocks
463159467356469663
T:
rainbow3b
508214523775531059
T:
redgemss192
527973536717553068
T:
bluegemss192
528334536824557259
T:
bluegemss192v2
526299541918551838
T:
gemss192
536325543825562921
T:
rainbow6a
534270545190559177
T:
gemss192v2
542705549201553817
T:
sphincss192harakasimple
551564554145556146
T:
ecdonaldp160
550652565940587554
T:
redgemss192v2
607855624006636406
T:
sphincss128harakarobust
645249649971654624
T:
ecdonaldp192
696131699309702558
T:
rainbow5c
702190709049721557
T:
gui312
743696744375745257mqsignrr2567246
753697754334756335mqsignlr2567246
796430805643813297
T:
sphincss256harakasimple
832964837744845877
T:
donald2048
844752859369872150
T:
sphincsf128harakasimple
969604985778994241
T:
sphincss192harakarobust
9749749893241015787
T:
bluegemss256v2
99908310202251038995
T:
redgemss256v2
100651310309241054331
T:
gemss256
103897910636391084207
T:
bluegemss256
104490210701191094666
T:
redgemss256
106968310773411084904
T:
ecdonaldk163
106753610932011119837
T:
gemss256v2
111135111197901133494
T:
ecdonaldb163
118776912242411227959
T:
rainbow6b
132311313359111370212
T:
sphincss256harakarobust
134887813564671370467
T:
sphincsf192harakasimple
144314314515081463202
T:
ecdonaldk233
143629814597961475127
T:
sphincsf128harakarobust
147700014883651495681
T:
ecdonaldb233
149947415160531527550
T:
ecdonaldp521
151041615240591540024
T:
sphincsf256harakasimple
152487515328441540060
T:
qtesla3p
156701415700171572752mqsignrr25611272
158610015869871588447mqsignlr25611272
171345317251391740410
T:
sphincs256
188321418911851897858
T:
ecdonaldp384
198966920087102034623
T:
gui448
225548822651102276039
T:
mqdss48
230522023097642324901
T:
rainbow1acyclicc363232
232141323301862349991
T:
rainbow1acompres363232
228069723429352449230
T:
sphincss128shake256simple
236143823877392413240
T:
sphincsf192harakarobust
241659924288302435826
T:
ecdonaldk283
254772625596232574883
T:
ecdonaldb283
255063325837502615615
T:
sphincsf256harakarobust
260724226095752611322mqsignrr25614896
260947126153372634001picnicl1full
262583626272782629631mqsignlr25614896
275334727552822758130
T:
luov863256
306266330719563207317picnicl1fs
336045534187593488098
T:
sphincss192shake256simple
399726340144204027139
T:
ecdonaldk409
408402640896034116860picnicl1ur
420463542226984236435
T:
ecdonaldb409
429724843737704430964
T:
sphincss256shake256simple
437574044356924537005
T:
sphincss128shake256robust
526895752762795283288picnicl3full
546974855589045685458
T:
sphincsf128shake256simple
602246160711616104307
T:
mqdss64
652114666053856717490
T:
sphincss192shake256robust
833134183445028353065picnicl3fs
862193586386758653115picnicl5full
862109387802268902282
T:
sphincsf192shake256simple
876316388103878836019
T:
ecdonaldk571
862246688388319014548
T:
sphincss256shake256robust
878623288787269002781
T:
sphincsf256shake256simple
932268393625509388503
T:
ecdonaldb571
988579298974429935565
T:
luov890351
105190091067494010825439
T:
sphincsf128shake256robust
112323571126531711279456picnicl3ur
117059121172143411730489picnic3l1
137754571381117613948249
T:
rainbow3ccompres683248
139195421401053414121807
T:
rainbow3ccyclicc683248
142398501426513714280417picnicl5fs
169849541700533317077492
T:
luov8117404
171227901738001717483984
T:
sphincsf192shake256robust
172103521746891317683813
T:
sphincsf256shake256robust
182694021830936118339077picnicl5ur
256474962566168425688346picnic3l3
285774812859555428640719
T:
luov4849242
315118913163334431821963
T:
rainbow5ccompres963664
315510063172319031823411
T:
rainbow5ccyclicc963664
410284464106111941112920picnic3l5
578686885793704557993718
T:
picnic2l1fs
722208667224074972294600
T:
luov6468330
131400723131492816131558310
T:
picnic2l3fs
135912179135960550135986125
T:
luov8086399
232273044232448128232545855
T:
picnic2l5fs