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; Broadwell+AES (406f1); 2016 Intel Xeon E5-2609 v4; 8 x 1700MHz; bolero, 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

Cycles to generate a key pair
25%50%75%system
440044324456picnicl1full
442044484488picnic3l1
478448204852
T:
picnic2l1fs
591659365980picnicl3full
592459526012picnic3l3
614861766212picnicl1ur
6164?6444?8728?picnicl1fs
772477527800picnic3l5
774078047916picnicl5full
885290569976
T:
picnic2l3fs
104761067611784picnicl3ur
10508?11636?14756?picnicl3fs
119441218413388
T:
picnic2l5fs
144681455214636picnicl5ur
13928?16856?21823?picnicl5fs
23888?24228?30668?
T:
lattisigns512
455364602046940ed25519
488284903655688aimer128f
48932?57072?69229?aimer128s
616926205668004T!!!dilithium2aes
9157295072105964T!!!dilithium2
976449794498448dilithium3aes
117896118096125660aimer192f
132492132668133196aimer192s
152304153040153728dilithium5aes
157424158072158880
T:
ed448goldilocks
165156167204183248T!!!dilithium3
192632194040196516nccsign1aes
242416?244452?344114?
T:
pass769
243748245024246840nccsign1
250728252200254420nccsign3aes
257264259196266724T!!!dilithium5
295168295424296396aimer256f
288412?312656?410754?
T:
pass863
319636325348336516nccsign3
301940?336632?448965?
T:
hector
336236?336884?476894?aimer256s
394360398576412760nccsign5aes
272380?412956?1158072?haetae2
496440498596512344nccsign5
824280825932828532
T:
mqdss48
558708?901336?1469424?haetae3
908568911960912944
T:
sphincsf128harakasimple
906144914704935416
T:
donald2048
110027611012401108892
T:
sphincsf128harakarobust
488356?1167672?2054408?haetae5
123293612381241244540
T:
sphincsf192harakasimple
161112816135481619640
T:
sphincsf192harakarobust
1234312?1628332?2398884?
T:
qtesla1
189911219017961915088
T:
mqdss64
281189228790652903812
T:
sphincs256
351237635207563530304
T:
sphincsf256harakasimple
2874860?4177968?5570212?
T:
qtesla3f
430696443193044336332
T:
sphincsf256harakarobust
449548045060844625136
T:
sphincsf128shake256simple
602004061620366759696
T:
luov863256
657665265851846616488
T:
sphincsf192shake256simple
5240732?6613088?7661688?
T:
qtesla1p
825830882671568406080
T:
sphincsf128shake256robust
5577296?8304912?12359072?
T:
qtesla3s
922742095862889643136
T:
mqsignlr2567246
9421752971534810009212mqsignlr2567246
113874321141140411457568
T:
luov863256pc
116970601176109211853540
T:
rainbowbinary256181212
119048041201468412232648mqsignrr2567246
118754601208536812330468
T:
mqsignrr2567246
121396121215094412160316
T:
sphincsf192shake256robust
173698841737806417402464
T:
sphincsf256shake256simple
172511161806640820637056
T:
falcon512tree
173816641898289620986084
T:
falcon512dyn
191405961919904419647796
T:
luov4849242
201973562022287620253788
T:
rainbow1aclassic363232
203300282035702821009264
T:
rainbow1acompres363232
203237122045094820467616
T:
rainbow1acyclicc363232
217389722176997622458428
T:
luov890351
284415482850039228621816
T:
sphincss128harakasimple
322645483230337632548944
T:
sphincsf256shake256robust
348353083484679234884724
T:
sphincss128harakarobust
29880308?34970600?40356924?
T:
qtesla3p
361135523619563640226432
T:
luov8117404
387094643987758841360016mqsignlr25611272
396461044041656441581228
T:
mqsignlr25611272
419033124207598442195272
T:
luov890351pc
423032004244396842493144
T:
sphincss192harakasimple
487081124874194048758980
T:
sphincss192harakarobust
495036644992396850789164
T:
mqsignrr25611272
504399925074364851239380mqsignrr25611272
520698285209697652124188
T:
sphincss256harakasimple
523772845493461657525580
T:
falcon1024dyn
533229085562570064333504
T:
falcon1024tree
567030925724612857761536
T:
rainbowbinary16242020
636711966367814063737948
T:
gemss128
642944446439148864446424
T:
sphincss256harakarobust
651533726520912465269964
T:
bluegemss128
655266926566898468134228
T:
luov6468330
656903206571334465740740
T:
redgemss128
702863567074119271001540
T:
luov8117404pc
709711887103777271153404
T:
redgemss128v2
897323968975637689807648
T:
gemss128v2
924300089245770492545196
T:
bluegemss128v2
9288052094507276103060232mqsignlr25614896
9069933694842704104456188
T:
mqsignlr25614896
117004772117506004117952652
T:
rainbow3cclassic683248
120232084120388380120631628
T:
luov8086399
119370100121222144128889540
T:
rainbow3ccyclicc683248
122879908122982228123198396
T:
rainbow3ccompres683248
128027900128693624131573568mqsignrr25614896
130134708131345820138212304
T:
mqsignrr25614896
143584876143629092143757680
T:
sphincss128shake256simple
210283248210310028210341424
T:
sphincss192shake256simple
254108956254283552254555516
T:
redgemss192
261767820261970172262261004
T:
sphincss128shake256robust
277838640277932104278316456
T:
sphincss256shake256simple
296732300296943612311971072
T:
gemss192
298457916298554888298691372
T:
bluegemss192
343158580343704072347115944
T:
rainbow5cclassic963664
362416040367000680380932108
T:
rainbow5ccompres963664
370438100371313984386551188
T:
rainbow5ccyclicc963664
387870868395965432396495076
T:
sphincss192shake256robust
423816008423862488424006656
T:
gemss192v2
428878500428988752438269984
T:
bluegemss192v2
431495800431694348431814204
T:
redgemss192v2
515746592517962700518608308
T:
sphincss256shake256robust
726673272727147648727867392
T:
bluegemss256
762575584763015464763289920
T:
redgemss256
772298280772671012773165456
T:
redgemss256v2
873154964873445336884270596
T:
gemss256
115773616011580111401175190488
T:
gemss256v2
116928924011696428441183103792
T:
bluegemss256v2
179688717218003985481804784820
T:
gravitysphincss
403062608041495772164247431456
T:
pqrsa15
287346442042874046429628782072628
T:
gravitysphincsl
574923528965754605528457563428660
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
187281896819500
T:
rainbowbinary256181212
376523818844140
T:
rainbowbinary16242020
480684813648472ed25519
8897289228100284
T:
rainbow1aclassic363232
856649382896432
T:
mqsignlr2567246
9411296424105092
T:
rainbow1acyclicc363232
107280108384113000mqsignlr2567246
117032129552136780
T:
mqsignrr2567246
156412162072165464mqsignrr2567246
164688164880165168
T:
ed448goldilocks
127932?190288?310652?T!!!dilithium2aes
139652?218040?312980?T!!!dilithium2
173392?225572?394776?dilithium3aes
266728268896271812
T:
mqsignlr25611272
317824320592327576mqsignlr25611272
186988?328852?546608?
T:
lattisigns512
302716330396349304
T:
hector
345516?351256?520292?nccsign1aes
360440361884364344
T:
luov863256pc
266628?364344?705260?T!!!dilithium3
291768?365852?914800?
T:
pass769
268192?377512?540080?dilithium5aes
377976382468388548
T:
falcon512tree
382388385620389132
T:
rainbow3cclassic683248
384308387556406300
T:
mqsignrr25611272
402580?408804?533006?
T:
rainbow3ccyclicc683248
414000?424804?614448?nccsign1
440768445028453132mqsignrr25611272
386176?487248?711500?T!!!dilithium5
363880?489522?962659?
T:
pass863
508800515868529544
T:
mqsignlr25614896
286348?598628?812212?
T:
qtesla1
608208611196615832mqsignlr25614896
443584?650524?1081004?
T:
qtesla3f
457332?665696?887468?nccsign3aes
733764738296742160
T:
falcon512dyn
710432?751792?908033?
T:
mqsignrr25614896
551228?785184?1256028?nccsign3
775032785276799532
T:
falcon1024tree
825900852324880456mqsignrr25614896
909008914576917920
T:
rainbow5cclassic963664
908644920452932168
T:
donald2048
102116010447481059192
T:
rainbow5ccyclicc963664
567576?1084204?1675960?
T:
qtesla1p
109934411096761126884
T:
luov890351pc
761280?1194432?1521576?nccsign5aes
890956?1229684?1662504?nccsign5
753772?1359884?2297676?haetae2
142109614275561451712aimer128f
149214815020361508164
T:
falcon1024dyn
162854016377881668532
T:
luov8117404pc
921072?1718716?2288796?
T:
qtesla3s
1209680?1723888?5237548?haetae5
1141868?2492840?4320168?haetae3
2501656?3306964?5442492?
T:
qtesla3p
341225634220523433900aimer192f
375172037649363890460
T:
luov863256
3578124?4046136?4761124?
T:
redgemss128v2
431293243239484333160picnicl1full
3712792?4514928?5472012?
T:
redgemss128
519529252218525266840
T:
mqdss48
526437652684365273396picnicl1fs
656718465715566575232picnicl1ur
670744067388726760280aimer256f
841903684240048430368picnicl3full
8620652?9934404?12418948?
T:
redgemss192v2
8609312?10426516?13324848?
T:
redgemss192
108065281088524010927448aimer128s
123091881234439612715636
T:
mqdss64
123521321235745212362624
T:
luov890351
123523761238087212387820picnicl3fs
140410721407345614085484picnicl5full
146607321467086814685196
T:
gravitysphincss
12786280?15069704?19054448?
T:
redgemss256
158688001587864415891132picnicl3ur
163618721638298416857496
T:
rainbow1acompres363232
183389601836873618397472picnic3l1
17252720?18739292?22451548?
T:
redgemss256v2
208648322088526420894432
T:
luov8117404
209935602103311221059320picnicl5fs
254534282546202825497124aimer192s
259758642598508425991344
T:
gravitysphincsm
265020442653995627361500picnicl5ur
311180803113037231199688
T:
gravitysphincsl
320566523211654432154184
T:
sphincsf128harakasimple
362573563630081636329600
T:
sphincsf192harakasimple
394363883945389640983548picnic3l3
402243404025594040309344
T:
sphincsf128harakarobust
421622244218212042210936
T:
luov4849242
490724284911660049227692
T:
sphincsf192harakarobust
493229924986180851147484aimer256s
498321364992692451116144
T:
sphincs256
671046886798067268838324picnic3l5
897910328991377289968572
T:
sphincsf256harakasimple
99863972100783028102473076
T:
rainbow3ccompres683248
115103240115174368115278580
T:
sphincsf256harakarobust
127207480127291092127380276
T:
pqrsa15
134210136134246372134318656
T:
luov6468330
114528164?135068180?160118500?
T:
bluegemss128v2
147899056148093032149501324
T:
sphincsf128shake256simple
134183548?160801848?238832840?
T:
bluegemss128
165303704165468048165539724
T:
picnic2l1fs
187831232188172336190788280
T:
sphincsf192shake256simple
239031580239495672246596396
T:
rainbow5ccompres963664
259466328259713872259939200
T:
sphincsf128shake256robust
266004392267586256273400696
T:
luov8086399
280061132?335005892?412034056?
T:
bluegemss192v2
339981188340467080340768548
T:
sphincsf192shake256robust
321892568?386198196?450570372?
T:
bluegemss192
407776496407884268408260136
T:
sphincsf256shake256simple
489950560490076860490222164
T:
picnic2l3fs
376445412?531539448?620031292?
T:
bluegemss256v2
536203312536464232537734744
T:
sphincss128harakasimple
479332552?575381924?673015148?
T:
bluegemss256
676624228676803856677681492
T:
sphincss128harakarobust
735460492735934068736360060
T:
sphincsf256shake256robust
738036036738364488741439812
T:
sphincss256harakasimple
725796356?858634692?1123735356?
T:
gemss128v2
963583040963872380964834424
T:
sphincss256harakarobust
700706276?1005094228?1190012152?
T:
gemss128
103310579210381670361049487340
T:
picnic2l5fs
117722472411786867481188416216
T:
sphincss192harakasimple
154958350815510565561556109588
T:
sphincss192harakarobust
1811788286?2253433328?3111853156?
T:
gemss192
231136646423157996652326062311
T:
sphincss128shake256simple
1954672904?2376258016?3125215804?
T:
gemss192v2
338841315633891511403417502412
T:
sphincss256shake256simple
3238919164?3886537900?4550784640?
T:
gemss256v2
392871312039315801163937190756
T:
sphincss128shake256robust
3684841956?4449410296?5929748536?
T:
gemss256
478100692847818380604800803524
T:
sphincss192shake256simple
602378578860259937886043350472
T:
sphincss256shake256robust
809688338081509400568215386900
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
163041634816448
T:
rainbowbinary256181212
290002942429752
T:
rainbowbinary16242020
317643256433216
T:
rainbow1aclassic363232
377843851644832
T:
lattisigns512
639846465266384mqsignlr2567246
660567272479220
T:
mqsignrr2567246
649407362475264
T:
mqsignlr2567246
741047450074704T!!!dilithium2aes
766047820479500mqsignrr2567246
825968401284924
T:
falcon512tree
9835299448100424
T:
falcon512dyn
102408102824103840
T:
qtesla1
101984103024105764T!!!dilithium2
108892109216109540dilithium3aes
106976109604112416
T:
gravitysphincss
115888116628118532
T:
luov863256pc
125376125648125968haetae2
167116167768171672T!!!dilithium3
165780167832171448dilithium5aes
165512168868185616ed25519
167444168936169508
T:
falcon1024tree
183516186792190872
T:
rainbow3cclassic683248
199940200312201060
T:
falcon1024dyn
205500205952211336haetae3
207732208408209208
T:
qtesla3f
210808211524212240
T:
qtesla3s
214308225304234100
T:
redgemss128v2
239724240708242664nccsign1aes
236084241012259164haetae5
245352254172261580
T:
redgemss128
246752255316263064
T:
bluegemss128
251484257240263656
T:
gemss128
264352264656264960T!!!dilithium5
273860277880281380mqsignlr25611272
275388282060290876
T:
mqsignrr25611272
278872282396289480
T:
mqsignlr25611272
277040283652298924mqsignrr25611272
276124284924294648
T:
bluegemss128v2
284784287224289460nccsign1
284748293632300360
T:
gemss128v2
306520308720313576nccsign3aes
332560336624346344
T:
luov890351pc
363168365936370132nccsign3
362044384300410564
T:
pass769
420492?449964?615393?
T:
pass863
455940459560465460
T:
rainbow5cclassic963664
457228?465844?593934?
T:
luov8117404pc
463756471224479988
T:
gravitysphincsm
498448500384519516nccsign5aes
507608509692511260
T:
qtesla1p
515148517520519096
T:
ed448goldilocks
523184529948539520mqsignlr25614896
525740545488573308
T:
mqsignlr25614896
529732547868611616mqsignrr25614896
521084558584635630
T:
mqsignrr25614896
547956559460574204
T:
redgemss192
564404580788598328
T:
bluegemss192
571336581656601960
T:
gemss192
585892588532598100nccsign5
615880627848636884
T:
gravitysphincsl
613432628680639812
T:
gemss192v2
619532635048657900
T:
bluegemss192v2
626492640388652136
T:
redgemss192v2
628540648560755522
T:
sphincss128harakasimple
908448921272941268
T:
sphincss128harakarobust
931000939624949232
T:
sphincss192harakasimple
106384010764401084412
T:
donald2048
112067211425121167944
T:
bluegemss256
112456411562041180128
T:
redgemss256
118435612067041222264
T:
redgemss256v2
119654812181361250460
T:
gemss256
120315612189201261488
T:
hector
122078812492641275756
T:
bluegemss256v2
123406812576081281960
T:
gemss256v2
130573613273521348368
T:
sphincss256harakasimple
1384536?1393668?2005529?aimer128f
142244414369841452024
T:
sphincs256
146330414896321521380
T:
sphincsf128harakasimple
147250414924961510016
T:
sphincss192harakarobust
197675220059482035764
T:
sphincss256harakarobust
212960021536362180164
T:
sphincsf128harakarobust
232321623392602360152
T:
sphincsf192harakasimple
240640024149802426068
T:
qtesla3p
249043225246962541888
T:
sphincsf256harakasimple
297360429791842989340
T:
luov863256
335776433736203396844
T:
mqdss48
340902034225603445468aimer192f
355493635637443575104picnicl1full
364266036705043719084
T:
sphincsf192harakarobust
373762037834443824304
T:
sphincsf256harakarobust
396676840610204160840
T:
sphincss128shake256simple
428295242913444297020picnicl1fs
540481254097445443344picnicl1ur
594175260133446089916
T:
sphincss192shake256simple
655122065632486576044aimer256f
701701270268887030948picnicl3full
764968877236887894260
T:
sphincss256shake256simple
763806477599887890064
T:
sphincss128shake256robust
836920084634168851608
T:
mqdss64
974368098327169983860
T:
sphincsf128shake256simple
105630241056893610586124
T:
luov890351
104567041072989610833948picnicl3fs
107822441079402810819252aimer128s
115729201175766411862444
T:
sphincss192shake256robust
117576241178447211795492picnicl5full
130682281316208413181712
T:
rainbow1acompres363232
134394081345240413460732picnicl3ur
131435841357739214047648
T:
rainbow1acyclicc363232
146546521468518014723704picnic3l1
149822921526664815574556
T:
sphincss256shake256robust
153336761564954815847748
T:
sphincsf256shake256simple
154531961566004415825836
T:
sphincsf192shake256simple
179205401795624017966172picnicl5fs
181071241811949618131912
T:
luov8117404
188200201906207619275788
T:
sphincsf128shake256robust
196062481985636819913136
T:
pqrsa15
225905602271750423352600picnicl5ur
255904122576447226335704aimer192s
289531002897251229336112
T:
luov4849242
300610163035130030654128
T:
sphincsf192shake256robust
305109243075934431122520
T:
sphincsf256shake256robust
308663363089313231858716picnic3l3
473186284895864049575668aimer256s
496265805087431250989120picnic3l5
690732286924821269364696
T:
picnic2l1fs
787068887873328478868468
T:
luov6468330
798911008001234081839956
T:
rainbow3ccyclicc683248
811337848255838082785044
T:
rainbow3ccompres683248
147324252147443324149566804
T:
luov8086399
157367816157583692157985508
T:
picnic2l3fs
178531636178802408180915808
T:
rainbow5ccompres963664
177999728179563232189635720
T:
rainbow5ccyclicc963664
277902996278134668281964520
T:
picnic2l5fs