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; Haswell+AES (306c3); 2013 Intel Core i7-4765T; 4 x 2000MHz; prodesk, supercop-20240909

[Page version: 20240912 11:46:05]

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: (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
445644804516picnicl1full
448845324820picnic3l1
512451525212
T:
picnic2l1fs
630063446460picnic3l3
650865326592picnicl1ur
649665886772picnicl1fs
676468887232picnicl3full
776478288360picnicl5full
832087689264picnic3l5
905290929152
T:
picnic2l3fs
109561129611680picnicl3ur
113761192412204picnicl3fs
122321237612572
T:
picnic2l5fs
143721472015128picnicl5fs
143921560416272picnicl5ur
573085738857512ed25519
574125745657592aimer128s
578245790458004aimer128f
644486466865348T!!!dilithium2aes
974129860099012T!!!dilithium2
102416103136104248dilithium3aes
129552129632129764aimer192f
129724129924130220aimer192s
147910148946149968nccsign1aes
158388158676159188dilithium5aes
174136175492176548T!!!dilithium3
175308176636177220
T:
ed448goldilocks
187358188758192442nccsign1
192502193354195132nccsign3aes
241686243136244734nccsign3
244624249084256776
T:
pass769
268756269304269952T!!!dilithium5
293492294580296460
T:
pass863
299224299724300160aimer256f
299684299832300392aimer256s
298676300226303874nccsign5aes
371590373204377954nccsign5
647168650816660488
T:
donald1024
368820?678640?1142440?haetae2
820356823496830032
T:
edons128k08n72nu8l4mu3
825900826652829060
T:
mqdss48
508084?857296?1900880?haetae5
904796905716910388
T:
sphincsf128harakasimple
110078011010201101444
T:
sphincsf128harakarobust
573664?1195320?2104628?haetae3
128952412905481299828
T:
sphincsf192harakasimple
1305492?1322080?2184404?
T:
qtesla1
162106416237001628768
T:
sphincsf192harakarobust
190001219063041911872
T:
mqdss64
214082821506242163936
T:
donald2048
249411225004962509652
T:
edons128ref
278834027918722797824
T:
sphincs256
350299635071523516328
T:
sphincsf256harakasimple
2818832?4149688?5517680?
T:
qtesla3f
428276842969644310788
T:
sphincsf256harakarobust
461606846220284631740
T:
sphincsf128shake256simple
514628451676565559540
T:
luov863256
658591266512066750070mqsignlr2567246
5240748?6659816?8238072?
T:
qtesla1p
672732467468246795184
T:
sphincsf192shake256simple
670914467994206859378
T:
mqsignlr2567246
4254524?6960772?9714116?
T:
qtesla3s
844015084750348586090mqsignrr2567246
838378884859708690722
T:
mqsignrr2567246
865487686724568691296
T:
sphincsf128shake256robust
943238894549049485536
T:
luov863256pc
117022481173275211772372
T:
rainbowbinary256181212
124022641240717612428088
T:
sphincsf192shake256robust
176903561769779217714472
T:
sphincsf256shake256simple
190583881907304819096052
T:
rainbow1aclassic363232
191520321923007219310180
T:
luov4849242
187603041933332822000280
T:
falcon512tree
181805041997582821844484
T:
falcon512dyn
212091562123078021639524
T:
rainbow1acompres363232
212415722128416421331116
T:
rainbow1acyclicc363232
222425842230875622580620
T:
luov890351
283205362845306828662460
T:
sphincss128harakasimple
295957462969322830114952mqsignlr25611272
296410802978560230129380
T:
mqsignlr25611272
328266323293086433751360
T:
sphincsf256shake256robust
348961443490445235107816
T:
sphincss128harakarobust
30086676?35274988?45423704?
T:
qtesla3p
354639103561045435928878
T:
mqsignrr25611272
358350143605223036300744mqsignrr25611272
366516443667195238559536
T:
luov8117404
393553243972954039973196
T:
luov890351pc
425211524284660043024204
T:
sphincss192harakasimple
505124965055408450594256
T:
sphincss192harakarobust
540373085404287654227516
T:
sphincss256harakasimple
564111405666824857308560
T:
rainbowbinary16242020
567509405936452864460416
T:
falcon1024dyn
570626845996982463538912
T:
falcon1024tree
638665166395327264050856
T:
luov6468330
667954566685698466945124
T:
sphincss256harakarobust
687099226960693470195058
T:
mqsignlr25614896
696780447059289471420004mqsignlr25614896
53839108?70857236?99544432?
T:
ronald1024
716967407182043672852144
T:
luov8117404pc
727437727275978872778412
T:
redgemss128
745986407461538074638568
T:
gemss128
754200127544319675495852
T:
redgemss128v2
760319407604052076063844
T:
bluegemss128
932334409435243895237198
T:
mqsignrr25614896
958870049592871695971196
T:
gemss128v2
951108049606824696741816mqsignrr25614896
980780009809829298129444
T:
bluegemss128v2
120827312120914276120993784
T:
rainbow3cclassic683248
122069920124818208125042332
T:
luov8086399
129982300130030044130597860
T:
rainbow3ccompres683248
130388136130681700131140300
T:
rainbow3ccyclicc683248
147223212147247868150230732
T:
sphincss128shake256simple
215406288215427448215566696
T:
sphincss192shake256simple
217024628217446624218118792
T:
sflashv2
264506656264940004265564328
T:
redgemss192
265380500265581072265844208
T:
bluegemss192
270445336270588724270798144
T:
sphincss128shake256robust
271549744271626108271683128
T:
gemss192
283356920283961992288838568
T:
sphincss256shake256simple
194859384?326580908?462757944?
T:
ronald1536
355005216356792372360058984
T:
rainbow5cclassic963664
366843928367090640368047076
T:
rainbow5ccompres963664
367978032368429772373055036
T:
rainbow5ccyclicc963664
396559760396770472414381024
T:
sphincss192shake256robust
479355876479438028480155748
T:
gemss192v2
483770932483889000483981448
T:
bluegemss192v2
485934556486524652487009864
T:
redgemss192v2
526502636526542400529197336
T:
sphincss256shake256robust
747366592749272992754838052
T:
redgemss256v2
102893663610359716081037862640
T:
redgemss256
103534192010383772041044638596
T:
bluegemss256
104053962410416454521042913864
T:
gemss256
135863869213613123841362987964
T:
gemss256v2
136921858813732345481378243980
T:
bluegemss256v2
179711744017972834281798183004
T:
gravitysphincss
459451307246985914204800257232
T:
pqrsa15
287573372002877018965628842559860
T:
gravitysphincsl
575437442365757043859257700027428
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
188481907219480
T:
rainbowbinary256181212
383003861639832
T:
rainbowbinary16242020
600846017260288ed25519
821008532893780
T:
mqsignlr2567246
927129367694718mqsignlr2567246
936689461698376
T:
rainbow1aclassic363232
99152100516112392
T:
rainbow1acyclicc363232
101602107988110742
T:
mqsignrr2567246
112568113124113736
T:
sflashv2
131006138916154630mqsignrr2567246
182568182936183484
T:
ed448goldilocks
181764?239844?360400?T!!!dilithium2aes
227042243962266686
T:
mqsignlr25611272
201220?255160?372236?dilithium3aes
191500?267540?411320?T!!!dilithium2
250848268474308400mqsignlr25611272
284948287416291966
T:
mqsignrr25611272
287732?364592?568940?dilithium5aes
272324?384644?498030?nccsign1aes
385618391444408040
T:
mqsignlr25614896
378310411640434890mqsignrr25611272
409848416056422120
T:
falcon512tree
316104?416228?572764?T!!!dilithium3
420952427076437328
T:
luov863256pc
429688432232436884
T:
rainbow3cclassic683248
334794?468108?496928?nccsign1
475488481714494858mqsignlr25614896
501840506412510768
T:
donald1024
349690?533040?910740?nccsign3aes
532336537204543166
T:
mqsignrr25614896
420500?537568?701908?T!!!dilithium5
284996?538372?596048?
T:
pass769
222372?564000?1165092?
T:
qtesla1
572524577864583420
T:
rainbow3ccyclicc683248
415926?582728?792684?nccsign3
420880?611428?1060656?
T:
qtesla3f
351124?688156?1045044?
T:
pass863
671358695802738400mqsignrr25614896
786352791648794552
T:
falcon512dyn
572206?809922?1245316?nccsign5aes
839380869724892156
T:
falcon1024tree
682410?941350?1359352?nccsign5
9920129999601014708
T:
rainbow5cclassic963664
99567610078601022788
T:
rainbow5ccyclicc963664
107328410825201094976
T:
ronald1024
839816?1167476?2441376?
T:
qtesla1p
622336?1301200?2860660?
T:
qtesla3s
133257213383441372688
T:
luov890351pc
134763613523321362616
T:
donald2048
134795613543081357864
T:
edons128k08n72nu8l4mu3
144097614476161640748aimer128f
160683616116481619400
T:
falcon1024dyn
759252?1732192?3063948?haetae2
182154018382881857284
T:
luov8117404pc
1132244?2077960?3508696?haetae3
1220068?2724428?4793508?haetae5
286859228823522897540
T:
ronald1536
325549232844883313412
T:
edons128ref
346153634811763626872aimer192f
370452037101483714748
T:
luov863256
422497642331604236196picnicl1full
2538312?4356960?5778532?
T:
qtesla3p
3896904?4550752?5332296?
T:
redgemss128v2
4076660?4872404?6522660?
T:
redgemss128
527833652883765298424
T:
mqdss48
531929653262925330368picnicl1fs
661258466149646631180picnicl1ur
697352469749006976348aimer256f
843158084331728442680picnicl3full
109060521091558410942292aimer128s
121041041211094812118628
T:
luov890351
10510376?12285808?16864256?
T:
redgemss192v2
123539601236046812368524picnicl3fs
123576841247023612702568
T:
mqdss64
10685348?12770452?14995496?
T:
redgemss192
141998801421255214217172picnicl5full
148126481486035214864064
T:
gravitysphincss
158211001583022015834440picnicl3ur
170699881707836417091484
T:
rainbow1acompres363232
180716321808801218094916picnic3l1
16731636?20606180?25006932?
T:
redgemss256v2
212240522123041221236624
T:
luov8117404
18113904?21647268?25151776?
T:
redgemss256
211581202229473622410192picnicl5fs
258480002593412425991768aimer192s
261393042614921226173364
T:
gravitysphincsm
262461242631770027481984picnicl5ur
312702643135217231377564
T:
gravitysphincsl
319432843199501632035820
T:
sphincsf128harakasimple
376775603769427637738456
T:
sphincsf192harakasimple
392315963932720839408552picnic3l3
402599044029754040345768
T:
sphincsf128harakarobust
428194124285612042889092
T:
luov4849242
492779484934814849399392
T:
sphincsf192harakarobust
495571164982736049879188
T:
sphincs256
500860285010173250286892aimer256s
676478246797730068217008picnic3l5
896621448970393689745576
T:
sphincsf256harakasimple
104905952104970812105010008
T:
rainbow3ccompres683248
114562316114616664114688572
T:
sphincsf256harakarobust
133864728133905144133940224
T:
luov6468330
146173724146243164146661712
T:
pqrsa15
152144688152303536152527560
T:
sphincsf128shake256simple
164972440165035344165079948
T:
picnic2l1fs
139503508?167822764?194992008?
T:
bluegemss128v2
150206720?178530148?210251916?
T:
bluegemss128
192429272192522768192657220
T:
sphincsf192shake256simple
250385468250644028254430976
T:
rainbow5ccompres963664
263476908263525504263582180
T:
luov8086399
270904424271173808271954716
T:
sphincsf128shake256robust
348056736348955940350307300
T:
sphincsf192shake256robust
344310600?412677920?481440284?
T:
bluegemss192v2
416353032416738352416997576
T:
sphincsf256shake256simple
492252884492395288493791664
T:
picnic2l3fs
429363300?515008932?686611828?
T:
bluegemss192
531817868532288912532749736
T:
sphincss128harakasimple
676989000677207172677411416
T:
sphincss128harakarobust
579240488?697500296?923147916?
T:
bluegemss256v2
750996216752907156768762456
T:
sphincsf256shake256robust
764847308765108412765698704
T:
sphincss256harakasimple
694614656?833606280?973045740?
T:
bluegemss256
994926936995469892995580944
T:
sphincss256harakarobust
103578591210373201281038494340
T:
picnic2l5fs
866981152?1061226316?1386916552?
T:
gemss128v2
930712584?1130116280?1488925632?
T:
gemss128
118471573211852254161185702840
T:
sphincss192harakasimple
159525094415953150681595500428
T:
sphincss192harakarobust
2337250692?2338333288?3271422260?
T:
gemss192v2
236109943623614643762391333060
T:
sphincss128shake256simple
345612292034584004203461323272
T:
sphincss256shake256simple
347243601234842902244064473580
T:
gemss192
405058226840510618004056505376
T:
sphincss128shake256robust
490473232049076356804912707764
T:
sphincss192shake256simple
4124150148?4947024240?6596566592?
T:
gemss256v2
5084637704?6100481204?7114185648?
T:
gemss256
614546570461462943006190285500
T:
sphincss256shake256robust
826207827682625185008407685232
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
175481770017816
T:
rainbowbinary256181212
298363052430864
T:
rainbowbinary16242020
325643367235512
T:
rainbow1aclassic363232
362683652037112
T:
ronald1024
488284922849828
T:
ronald1536
566245752259304mqsignlr2567246
614486776070552
T:
mqsignrr2567246
665527089078042
T:
mqsignlr2567246
786087882879124T!!!dilithium2aes
73992?79146?97204?mqsignrr2567246
853848651287712
T:
falcon512tree
102652103648104608
T:
falcon512dyn
103776104152104640
T:
qtesla1
108008108160108344T!!!dilithium2
106672108932112252
T:
gravitysphincss
116192116824117268dilithium3aes
122892123136124612
T:
sflashv2
130376130908131904haetae2
137540140352150552
T:
luov863256pc
173928174292174792dilithium5aes
173200174296175076
T:
falcon1024tree
177064177384179156T!!!dilithium3
186276187416188248ed25519
187796188974190088nccsign1aes
198788200392201488
T:
rainbow3cclassic683248
206932207280207964
T:
qtesla3f
207728208528209164
T:
falcon1024dyn
212008212876213840
T:
qtesla3s
213588215316215880haetae3
227392229030230942nccsign1
227294235684246866mqsignlr25611272
230264237728242124
T:
redgemss128v2
239374240390241486nccsign3aes
233988241880248392
T:
redgemss128
246616247052247504haetae5
226888249076264624
T:
mqsignrr25611272
251408256644266644
T:
gemss128
258204267924276048
T:
bluegemss128
253356?282552?324160?mqsignrr25611272
278536282992285048T!!!dilithium5
282910283730285448nccsign3
284456291872299928
T:
gemss128v2
289716300672313300
T:
bluegemss128v2
269844?323766?352080?
T:
mqsignlr25611272
356008363240365628
T:
pass769
375384380812385160
T:
luov890351pc
381426383800389860nccsign5aes
397508401476405968
T:
donald1024
404616407352409652
T:
edons128k08n72nu8l4mu3
415574419358424034
T:
mqsignrr25614896
425392427220429536
T:
pass863
429320437064441164
T:
rainbow5cclassic963664
450550454080459126nccsign5
444100462150495690
T:
mqsignlr25614896
460004472268479304
T:
gravitysphincsm
452826483232521516mqsignlr25614896
479296495742525276mqsignrr25614896
516360518508520580
T:
qtesla1p
522408529700539104
T:
luov8117404pc
593552594824597064
T:
ed448goldilocks
590852608152619196
T:
gemss192
613112624048637288
T:
sphincss128harakasimple
622108631280637572
T:
gravitysphincsl
620336632840667864
T:
bluegemss192
635320649744661468
T:
gemss192v2
634808653496663456
T:
redgemss192
654748665368682128
T:
bluegemss192v2
680644694240713480
T:
redgemss192v2
881252884868889656
T:
edons128ref
897540921764941764
T:
sphincss128harakarobust
925536935976950216
T:
sphincss192harakasimple
119974012103121226080
T:
donald2048
121645212571321286016
T:
gemss256
124766012848721304680
T:
bluegemss256
131070413253401340208
T:
sphincss256harakasimple
130607613313641373308
T:
gemss256v2
129768413345961373512
T:
redgemss256v2
129641613347641351108
T:
redgemss256
130600413427281373712
T:
bluegemss256v2
141073614118041528328aimer128f
144712814740241505240
T:
sphincsf128harakasimple
145119214790081505080
T:
sphincss192harakarobust
163914016485801661268
T:
sphincs256
198787620054482023496
T:
sphincss256harakarobust
211480821609922185240
T:
sphincsf128harakarobust
232176423398962363312
T:
sphincsf192harakasimple
243431224393322446736
T:
qtesla3p
249622425162802535544
T:
sphincsf256harakasimple
295451629561722963060
T:
luov863256
337770033967683417076
T:
mqdss48
340028034051883409420aimer192f
349696435054203519860picnicl1full
360353236460843690208
T:
sphincsf192harakarobust
376936838151363856480
T:
sphincsf256harakarobust
412570041849404335864
T:
sphincss128shake256simple
431121243225244333764picnicl1fs
543538054510245472196picnicl1ur
612226862780886344340
T:
sphincss192shake256simple
683926068411966864668aimer256f
710734471124927116348picnicl3full
804237281589088278724
T:
sphincss256shake256simple
800787682083848363204
T:
sphincss128shake256robust
840352884538328476884
T:
mqdss64
99765881008872010210716
T:
sphincsf128shake256simple
104415881044908010458392picnicl3fs
104981921050545610530948
T:
luov890351
108361001085400810916608aimer128s
118581361187324011890744picnicl5full
120180241222720812398972
T:
sphincss192shake256robust
133412281335873213397380picnicl3ur
138544921385826813861396
T:
rainbow1acompres363232
138563841386369213876028
T:
rainbow1acyclicc363232
142776881429594414325080picnic3l1
156559281591914416115792
T:
sphincss256shake256robust
161847961631746816443136
T:
sphincsf192shake256simple
162944961640935216637716
T:
sphincsf256shake256simple
179906201799868018009704picnicl5fs
180610761806737618131296
T:
luov8117404
186766481887008819217728
T:
sphincsf128shake256robust
206900242077262820903276
T:
pqrsa15
223698202242136422447168picnicl5ur
259014442600258828404704aimer192s
296017922961193229620904
T:
luov4849242
311925283123160031270068picnic3l3
315455403170333231988980
T:
sphincsf192shake256robust
317115523210657632652780
T:
sphincsf256shake256robust
494033524946644049544760picnic3l5
502293365024082050359220aimer256s
677787486795321668225392
T:
picnic2l1fs
779266847798429678548760
T:
luov6468330
841302048414341684154160
T:
rainbow3ccyclicc683248
842773728429276084322900
T:
rainbow3ccompres683248
149900628149983704150073776
T:
luov8086399
156844480157244340158671340
T:
picnic2l3fs
187820128187922916188575412
T:
rainbow5ccyclicc963664
188723920188745584188759836
T:
rainbow5ccompres963664
275724460276046776276288708
T:
picnic2l5fs