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; Zen 4 (a60f12); 2023 AMD Ryzen 7 7700; 8 x 3800MHz; hertz, supercop-20240716

[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
221522672350picnicl1full
236824312563picnic3l1
304130633119picnicl3full
318331913235picnic3l3
400240264096picnicl1ur
401340324085picnicl5full
398840404103
T:
picnic2l1fs
402140524117picnicl1fs
411642034295picnic3l5
526953395426
T:
picnic2l3fs
582758865937picnicl3ur
584958965964picnicl3fs
732973887522picnicl5fs
731374077639picnicl5ur
733874537615
T:
picnic2l5fs
330943354133924dilithium2aes
391403924439405aimer128f
394003955039664aimer128s
427274277842886ed25519
518345214352454dilithium3aes
615196168661890dilithium2
770347746081706dilithium5aes
774007801778755
T:
ecdonaldp256
108815108919110406aimer192s
108948109165109959aimer192f
112799113162113536dilithium3
121236121682127315
T:
ecdonaldp224
159121159280159969
T:
ed448goldilocks
173350174395177242dilithium5
230151231420237524
T:
pass769
281602282103282923aimer256f
286027286581287738aimer256s
294190295272297023
T:
pass863
416847418862426790
T:
donald1024
427365427745445804
T:
sphincsf128harakasimple
497278498453499666
T:
sphincsf128harakarobust
578680580248586126
T:
ecdonaldk163
583760586123594014
T:
ecdonaldp160
597693598979603348
T:
ecdonaldb163
606552608533612127
T:
ecdonaldp521
616505618704622087
T:
mqdss48
694278696312701818
T:
sphincsf192harakasimple
701409703864706940
T:
ecdonaldp192
820037822336827222
T:
ecdonaldb233
826698830730892764
T:
sphincsf192harakarobust
441397?894852?1745016?haetae2
958399960939966634
T:
ecdonaldk233
599212?1127144?2184382?haetae3
956302?1258426?1853722?
T:
qtesla1
138399013877401391237
T:
donald2048
141926414213861425288
T:
ecdonaldb283
143653914403271441941
T:
mqdss64
153197415452011560698
T:
ecdonaldk283
168681417110311726255
T:
sphincsf256harakasimple
205243820547402059116
T:
sphincsf128shake256simple
219447722035852207372
T:
sphincsf256harakarobust
221877622303762231006
T:
sphincs256
246415424694882475558
T:
ecdonaldb409
1325179?2555333?4106234?haetae5
258593125940172602264
T:
ecdonaldk409
269762627033202708355
T:
ecdonaldp384
2058696?3021235?4014510?
T:
qtesla3f
327379032775653280458
T:
sphincsf192shake256simple
361478836187233704090
T:
luov863256
373070537364543744962
T:
sphincsf128shake256robust
3078569?4065625?5074195?
T:
qtesla3s
517208151835235196322
T:
mqsignlr2567246
4084050?5343303?6612368?
T:
qtesla1p
538273954041535419048
T:
ecdonaldb571
541215654249025443388
T:
ecdonaldk571
577071357814915804423
T:
sphincsf192shake256robust
684573568494926859230
T:
luov863256pc
717647572093067272834
T:
rainbowbinary256181212
797880779940578000784
T:
sphincsf256shake256simple
803796680621678073473
T:
mqsignrr2567246
117219791175133711792446
T:
rainbow1aclassic363232
133662991341007713440835
T:
rainbow1acompres363232
134277381346552714308879
T:
rainbow1acyclicc363232
140777941409279214108399
T:
sphincsf256shake256robust
10780632?14354789?23311253?
T:
rwb0fuz1024
148730311491518914951700
T:
sphincss128harakasimple
145066971533965016428953
T:
falcon512tree
145653791587883016793475
T:
falcon512dyn
9608161?16247712?22373301?
T:
ronald512
164383401660987416941932
T:
luov4849242
164519201668385216705369
T:
sphincss128harakarobust
172343101724010717292429
T:
luov890351
207305262095635721461615
T:
mqsignlr25611272
221053172216687122211431
T:
sphincss192harakasimple
21858235?25590152?31175058?
T:
qtesla3p
258055002639729528197571
T:
sphincss192harakarobust
264457082645376826467890
T:
luov890351pc
264847802686414228266756
T:
sphincss256harakasimple
292755742930679429315919
T:
luov8117404
303654413049231930582084
T:
rainbowbinary16242020
311694123126900031551612
T:
mqsignrr25611272
352210243526189035303527
T:
sphincss256harakarobust
27245504?38899856?61954688?
T:
ronald768
418274374185433342011726
T:
redgemss128v2
458175574583693945918249
T:
luov8117404pc
477654464777958247939713
T:
gemss128
466703384781831452840167
T:
falcon1024dyn
461766434826774053369165
T:
falcon1024tree
485033254851550048658526
T:
bluegemss128
489382644895068048968582
T:
redgemss128
490579564912137649167067
T:
gemss128v2
495140824995547450331564
T:
mqsignlr25614896
502448305027006150287712
T:
bluegemss128v2
35219455?51258482?83450686?
T:
ronald1024
568888195699441557687880
T:
luov6468330
677500076789059967952622
T:
sphincss128shake256simple
741441377420089474281273
T:
mqsignrr25614896
771824897740773377538789
T:
rainbow3ccyclicc683248
773216057757026779875928
T:
rainbow3ccompres683248
787464907900552079349124
T:
rainbow3cclassic683248
983062569846112498696422
T:
sphincss192shake256simple
101064727101232818101303120mqsignlr2567246
109663143109782816109979185
T:
luov8086399
122575684122654789122740980
T:
sphincss128shake256robust
127884289127960724128023222
T:
sphincss256shake256simple
145791163146568373149199119mqsignrr2567246
183726504183979688184211799
T:
sphincss192shake256robust
144903459?195656485?336566547?
T:
ronald1536
215748394216067395216252551
T:
sphincss256shake256robust
220641265220698006220895584
T:
redgemss192
225314071225607712225745705
T:
bluegemss192
229544634229769905238197773
T:
gemss192
242373036244156853245493341
T:
rainbow5cclassic963664
243935422244281085244520726
T:
redgemss192v2
245605384246102776246321013
T:
gemss192v2
245882530246179619246603976
T:
bluegemss192v2
252693228254666697258476858
T:
rainbow5ccyclicc963664
258814891259436651263329920
T:
rainbow5ccompres963664
331369523331842501332494364mqsignlr25611272
346662610?430180636?602162593?
T:
ronald2048
503238344503327342503602975
T:
redgemss256
504940280507838992513249669mqsignrr25611272
513468114513687410514147002
T:
bluegemss256v2
633280162633878715634642658
T:
bluegemss256
640353816640515917640780219
T:
gemss256
685254233686061407686484798
T:
gravitysphincss
691584296691932371692274162
T:
redgemss256v2
697800074698066802699121121
T:
gemss256v2
724769450725653133726783912mqsignlr25614896
112975165511308558021131990250mqsignrr25614896
983372764?1575619534?2112642269?
T:
ronald3072
321478114333153617723381224176
T:
pqrsa15
3354833759?4928370259?7096513302?
T:
ronald4096
109469602371095915924910966660791
T:
gravitysphincsl
219442965202195210461021958667159
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
107911092511055
T:
rainbowbinary256181212
209982129522080
T:
rainbowbinary16242020
468984698747074ed25519
535725385554146
T:
rainbow1acyclicc363232
537065389656330
T:
rainbow1aclassic363232
643906471865233
T:
mqsignlr2567246
76090?86116?134869?dilithium2aes
955649589696366
T:
mqsignrr2567246
108994109402109732
T:
ecdonaldp256
99703?141058?292788?dilithium3aes
109895?152257?262726?dilithium5aes
116980?153229?183815?dilithium2
161280163341164902
T:
mqsignlr25611272
164851165097165361
T:
ed448goldilocks
172432173172173757
T:
ecdonaldp224
218085219071227337
T:
luov863256pc
244319246063249309
T:
mqsignrr25611272
251974252605253598
T:
rainbow3cclassic683248
137402?264729?421901?dilithium3
209818?266802?373473?dilithium5
286369291059295398
T:
rainbow3ccyclicc683248
290174293637296317
T:
ronald512
320176321799323461
T:
donald1024
191763?326258?398446?
T:
qtesla1
327576331600336180
T:
falcon512tree
333421?343475?993149?
T:
pass863
395216413910440909
T:
mqsignlr25614896
187272?421601?718873?
T:
qtesla3f
258422?501712?524117?
T:
pass769
545594547299549318mqsignlr2567246
538784547668561037
T:
mqsignrr25614896
546621548670554286
T:
ronald768
602165607763610478
T:
falcon512dyn
602270610186614786
T:
luov890351pc
614551616453619858
T:
ecdonaldp160
651404655999662166
T:
falcon1024tree
664924671077676478
T:
ronald1024
612190722517726234
T:
ecdonaldk163
511331?726368?1162813?
T:
qtesla3s
506560?731356?1104313?
T:
qtesla1p
728598738864746021
T:
rwb0fuz1024
737951739905741931
T:
ecdonaldp192
742450744228746711
T:
ecdonaldb163
772092782379790381
T:
rainbow5cclassic963664
790319805712814938
T:
rainbow5ccyclicc963664
872059873457876897
T:
donald2048
879682886651889483
T:
luov8117404pc
881403889374893435aimer128f
499244?914568?1536576?haetae2
914792916766918041mqsignlr25611272
936737938079940693
T:
ecdonaldp521
937116938520940045mqsignrr2567246
100824010103911012783
T:
ecdonaldk233
103493710368701039765
T:
ecdonaldb233
121732912239141229001
T:
falcon1024dyn
683313?1238090?2066329?haetae3
151150015159991519659mqsignrr25611272
161416616218651707559
T:
ecdonaldk283
150503516825321689362
T:
ecdonaldb283
1113748?1767016?2416198?haetae5
184255718529591864112
T:
ronald2048
195858119660541975238
T:
ronald1536
208438420872962091303mqsignlr25614896
243028224327112434687aimer192f
248115924845322495528picnicl1full
275107127531472756326mqsignrr25614896
275951327678332777792
T:
ecdonaldk409
282407828302702838225
T:
ecdonaldp384
2222230?2846243?3887610?
T:
qtesla3p
288441228901892900483
T:
ecdonaldb409
307594430781943082654
T:
luov863256
343350234350943437446picnicl1fs
356241235766383608354
T:
mqdss48
3407667?3912219?4765318?
T:
redgemss128
3389835?4079728?5229150?
T:
redgemss128v2
436810643860654417156
T:
ronald3072
439392343955984397129picnicl1ur
473513147379964752130aimer256f
481674748211644823630picnicl3full
486458548666544869663
T:
gravitysphincss
574838857575005769853
T:
ecdonaldk571
585455961291996163527
T:
ecdonaldb571
654564665484156552572picnicl3fs
677078767773456802924aimer128s
802346680256398030209picnicl5full
833132083488028369379
T:
ronald4096
858393987544738773772
T:
mqdss64
884960488533388860221picnicl3ur
927074592764549283596
T:
gravitysphincsm
9952168995625910260895
T:
luov890351
9192787?10164225?11549165?
T:
redgemss192v2
105214371055113810596414
T:
rainbow1acompres363232
112394911124680911256405
T:
gravitysphincsl
10199600?11276107?14091527?
T:
redgemss192
117000751170593611755138picnicl5fs
120748061209557912103953picnic3l1
152563761534149415544377picnicl5ur
157821971586735716144493
T:
sphincsf128harakasimple
168311031684106516853964
T:
luov8117404
177876061779292817800282aimer192s
15473931?18414087?20738208?
T:
redgemss256v2
185362741908870119164089
T:
sphincsf128harakarobust
202985112032570620357426
T:
sphincsf192harakasimple
17154677?20465696?24103964?
T:
redgemss256
244322692444894124491682picnic3l3
246126942541530326218921
T:
sphincsf192harakarobust
339280333402698234177511aimer256s
360970193615735636746833
T:
luov4849242
375093953756668737833608
T:
sphincs256
403219274035679840393655picnic3l5
433092224371913944045509
T:
sphincsf256harakasimple
569483695706430357196589
T:
sphincsf256harakarobust
644157596465257366536131
T:
rainbow3ccompres683248
692099426937488369490655
T:
sphincsf128shake256simple
910137369128926491593382
T:
picnic2l1fs
953185779545640995574571
T:
sphincsf192shake256simple
110895071110965340111021157
T:
luov6468330
116351646116399046116530945
T:
pqrsa15
120773087121055506121412010
T:
sphincsf128shake256robust
116661899?140144050?163813732?
T:
bluegemss128v2
117913569?158418175?165441409?
T:
bluegemss128
162629047163137424164775628
T:
rainbow5ccompres963664
166233737166442384166744232
T:
sphincsf192shake256robust
186922565187264485190525399
T:
sphincsf256shake256simple
223179124223374997224614855
T:
luov8086399
249268598249347628249517224
T:
picnic2l3fs
283866741284434515285043786
T:
sphincss128harakasimple
265174449?317714724?370521950?
T:
bluegemss192v2
315571158318482284320333477
T:
sphincss128harakarobust
324092288324698920325783705
T:
sphincsf256shake256robust
372241406373349246374942624
T:
sphincss256harakasimple
366339951?439585588?513262852?
T:
bluegemss192
493394656494281173495149579
T:
sphincss256harakarobust
527541645527790652528116546
T:
picnic2l5fs
504460618?604483581?804778952?
T:
bluegemss256v2
614719885615504578616181433
T:
sphincss192harakasimple
647882809?777400071?906612720?
T:
bluegemss256
726088553?790678755?948874165?
T:
gemss128
789843349801259268825642192
T:
sphincss192harakarobust
720883454?865660322?1010108222?
T:
gemss128v2
109053678210918491481092784048
T:
sphincss128shake256simple
152023925415220904991523123989
T:
sphincss256shake256simple
182256883118230933081824090060
T:
sphincss128shake256robust
1803537274?2162904822?2535568332?
T:
gemss192v2
223398440022546881262267444272
T:
sphincss192shake256simple
249001304524908398122491610244
T:
sphincss256shake256robust
2453024632?3432352750?3926330399?
T:
gemss192
3070007520?3682752903?4301148612?
T:
gemss256v2
380393388138205160133827963663
T:
sphincss192shake256robust
4449509651?5339967762?6230297304?
T:
gemss256
Cycles to verify 59 bytes
25%50%75%system
557157375850
T:
rwb0fuz1024
806681718271
T:
rainbowbinary256181212
146101477615060
T:
rainbowbinary16242020
173901777518074
T:
ronald512
198212016320683
T:
ronald768
227642321123868
T:
rainbow1aclassic363232
232562368224053
T:
ronald1024
320203262933058
T:
ronald1536
346733496535154
T:
mqsignlr2567246
350033525035569
T:
mqsignrr2567246
427704298743140dilithium2aes
433764368644304
T:
ronald2048
492015072652473
T:
gravitysphincss
608716110761535dilithium3aes
616046222763498
T:
falcon512tree
692506939769505dilithium2
700147107772158
T:
qtesla1
745367526175796
T:
falcon512dyn
762977668877299
T:
ronald3072
814398214082568
T:
luov863256pc
874068754187721dilithium5aes
984829880499174haetae2
97109102471104384
T:
rainbow3cclassic683248
113573113686113899dilithium3
112977114021115628
T:
mqsignlr25611272
118727121009124212
T:
mqsignrr25611272
120740121123121753
T:
ronald4096
122858123651124700
T:
falcon1024tree
142413143796146203
T:
qtesla3f
146563147130147823
T:
qtesla3s
149476150620151870
T:
falcon1024dyn
147936150808154650
T:
redgemss128v2
154330155301158349haetae3
158819159389160331ed25519
179152181181184235dilithium5
184643185267186926haetae5
180646186666205806
T:
bluegemss128
185439189826193680
T:
redgemss128
202921211205227139
T:
bluegemss128v2
211665219279231384
T:
mqsignlr25614896
223873226336230470
T:
gravitysphincsm
221160230272236918
T:
mqsignrr25614896
225782231129236944
T:
gemss128
205617235023241966
T:
gemss128v2
254058254336254975
T:
ecdonaldp256
256702258726261444
T:
donald1024
288569298953307466
T:
luov890351pc
299761301866308480
T:
gravitysphincsl
335995337255338901
T:
qtesla1p
341515348236354478
T:
sphincss128harakasimple
358893359534360091
T:
ecdonaldp224
354159365715367758
T:
pass769
398094405380409170
T:
rainbow5cclassic963664
404961411013434596
T:
luov8117404pc
410589418274429364
T:
redgemss192
437960440521442630
T:
pass863
433782442952450905
T:
redgemss192v2
498181517021527616
T:
bluegemss192
495913522941535145
T:
gemss192
517547526150530966
T:
sphincss192harakasimple
517980536295553964
T:
bluegemss192v2
537451553561563329
T:
sphincss128harakarobust
534457560340573124
T:
gemss192v2
578695582671584173
T:
ed448goldilocks
600193603380609301
T:
ecdonaldp160
702199705198711873
T:
ecdonaldp192
720428732453744342
T:
sphincss256harakasimple
776160782623790393
T:
donald2048
788164800863817588
T:
sphincsf128harakasimple
825334838136857432
T:
sphincss192harakarobust
896102897572898627aimer128f
973009974797979623mqsignrr25611272
9538529761601000773
T:
redgemss256
9601279762831005412
T:
bluegemss256
981878983049983769mqsignlr25611272
9497419880821007262
T:
redgemss256v2
96657310114821048401
T:
bluegemss256v2
100147810364951071832
T:
gemss256
106902410943661116805
T:
gemss256v2
109388711042761116271
T:
sphincs256
117168511897211208282
T:
sphincss256harakarobust
126010712771091289160
T:
sphincsf128harakarobust
127037112817681289181
T:
sphincsf192harakasimple
122062514008531404592
T:
ecdonaldk163
138604614044631419672
T:
sphincsf256harakasimple
143611014383151443501
T:
ecdonaldb163
169173916927041694119mqsignrr25614896
168864116963311703182
T:
qtesla3p
171272217145601715452mqsignlr25614896
176214417631241763540mqsignrr2567246
179069917914691793093mqsignlr2567246
180897518106781814081
T:
ecdonaldp521
196467019702511974399
T:
ecdonaldk233
201386820161622018109
T:
ecdonaldb233
203176220499212055346picnicl1full
206530620797102113279
T:
sphincsf192harakarobust
222727122464662264156
T:
mqdss48
225377022781762304533
T:
sphincsf256harakarobust
229598823065092314242
T:
ecdonaldp384
243812624443122448575aimer192f
251108325131732514512
T:
luov863256
255417726172792688819
T:
sphincss128shake256simple
275798227609302780791picnicl1fs
314153331540423326980
T:
ecdonaldk283
293289032819033294678
T:
ecdonaldb283
356468035676813601148picnicl1ur
371191837926723846864
T:
sphincss192shake256simple
400896940126764018251picnicl3full
473680047437924747596aimer256f
480120149231935002373
T:
sphincss256shake256simple
511409252854965400788
T:
sphincss128shake256robust
536402553710035373765picnicl3fs
536718053778855391942
T:
ecdonaldk409
562020556272185643570
T:
ecdonaldb409
569730857363535781437
T:
mqdss64
617177963132346367087
T:
sphincsf128shake256simple
655368765817996585275picnicl5full
673756267651636768959aimer128s
734133173524167442104picnicl3ur
737008175235667643376
T:
sphincss192shake256robust
822251082468418529831
T:
rainbow1acyclicc363232
825590482838858372285
T:
rainbow1acompres363232
886388988659098867834
T:
luov890351
967759896891799783825picnicl5fs
968390597030329731157picnic3l1
9822009992460610036372
T:
sphincsf192shake256simple
9820454997039110134592
T:
sphincsf256shake256simple
99189531008012710203114
T:
sphincss256shake256robust
112280301124897511285994
T:
ecdonaldk571
112942241196305111998477
T:
ecdonaldb571
124193901259315712843976
T:
sphincsf128shake256robust
129227391293425912968756picnicl5ur
151974761521488315223028
T:
luov8117404
157110471572647215743817
T:
pqrsa15
176850741771030417721560aimer192s
192780141949822219666379
T:
sphincsf256shake256robust
195210521966669019870435
T:
sphincsf192shake256robust
202561512028735720306640picnic3l3
254043732544888925489635
T:
luov4849242
312287883125210231290683picnic3l5
335133013365284433722757aimer256s
438548434393831544194727
T:
picnic2l1fs
501597965060145752258267
T:
rainbow3ccyclicc683248
512429955153956853270069
T:
rainbow3ccompres683248
672947586733308567395832
T:
luov6468330
923936829252674592616365
T:
picnic2l3fs
114982197115447104116398104
T:
rainbow5ccyclicc963664
115282170115660446117766976
T:
rainbow5ccompres963664
133303660133342083133960331
T:
luov8086399
159322147159378192159460530
T:
picnic2l5fs