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; Core 2 45nm (1067a); 2009 Intel Core 2 Duo E7600; 2 x 3060MHz; wolfdale, 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
712172247329picnic3l1
723673597512picnicl1full
102011023610298picnic3l3
102241025510299picnicl3full
132731334713464picnicl5full
133551338813496picnic3l5
152701537915540
T:
picnic2l1fs
159981605216150picnicl1fs
160241608716232picnicl1ur
310283114831326
T:
picnic2l3fs
320323217532259picnicl3fs
321343224232386picnicl3ur
426344272643336
T:
picnic2l5fs
441034434144651picnicl5fs
442594440644717picnicl5ur
981359845698944ed25519
135453135626135908aimer128f
146586146758146981aimer128s
218749219313220189
T:
ecdonaldp256
264971265328266276
T:
donald512
281186282061282904
T:
ecdonaldp224
330665331876333162
T:
ed448goldilocks
333449333862334096aimer192s
334062334134334748aimer192f
419372420084422205T!!!dilithium2
455884458431462098nccsign1
554885556963559947
T:
pass769
613144615677618484nccsign3
666296669595676938nccsign1aes
680896682324684581
T:
pass863
742756743004747699
T:
donald1024
761486763096766380T!!!dilithium3
819209819384821084aimer256s
819393819623821662aimer256f
879516883237886644T!!!dilithium2aes
924749928748934696nccsign5
943886951043958391nccsign3aes
103141010339961038427
T:
edons128k08n72nu8l4mu3
117779211793991181821T!!!dilithium5
132413813297131338178nccsign5aes
138713613899001391900
T:
mqdss48
140137114031811407662
T:
ecdonaldp521
145495514656941477386
T:
ecdonaldp160
158716615910701596958T!!!dilithium3aes
175275217605711776074
T:
ecdonaldp192
178638618050751821990
T:
donald2048
997196?2110683?2787957?haetae2
213468521421232161105
T:
ecdonaldk163
224703822592712270203
T:
ecdonaldb163
1698428?2429916?3922008?haetae3
266828626755112679028T!!!dilithium5aes
1323790?2724639?4109008?haetae5
284382528569772870016
T:
ecdonaldk233
294941229622532995257
T:
ecdonaldb233
2349468?3084369?4573434?
T:
qtesla1
321924832214523222450
T:
mqdss64
325080232557013267206
T:
edons128ref
571278857461745771963
T:
ecdonaldk283
3998478?5860164?7758841?
T:
qtesla3f
609879861599246258207
T:
ecdonaldb283
713535671613307178693
T:
ecdonaldp384
7033987?9302646?13765191?
T:
qtesla3s
8087216?9365585?11754359?
T:
qtesla1p
108435091084584210848655
T:
sphincsf128shake256simple
116563031165747311678298
T:
sphincsf128harakasimple
118544991193222312050593
T:
ecdonaldk409
123802691238203012386749
T:
sphincs256
130287111317647913313624
T:
ecdonaldb409
161070421610757916109098
T:
sphincsf192shake256simple
171316041713326017135528
T:
sphincsf192harakasimple
197622211983600419869985
T:
rainbowbinary256181212
207397812074257820785458
T:
sphincsf128shake256robust
216554972167150821694243
T:
sphincsf128harakarobust
218041572189873421917408
T:
rainbow1aclassic363232
228185692292601922962895
T:
rainbow1acyclicc363232
231829532320703523255887
T:
rainbow1acompres363232
237601652380768823850933
T:
luov4849242
253029202533346225379683
T:
ecdonaldk571
280482522809901428174098
T:
ecdonaldb571
304841383048516230486102
T:
sphincsf192shake256robust
314427513145448131482792
T:
sphincsf192harakarobust
322234213227742532342103
T:
luov863256
22938694?34307562?47402383?
T:
rwb0fuz1024
336808463651087940287997
T:
falcon512dyn
33355917?37064638?42976039?
T:
falcon512tree
28282847?37162520?47026589?
T:
ronald512
422100854221151542215766
T:
sphincsf256shake256simple
456924304573323845736934
T:
sphincsf256harakasimple
39948799?50715313?61514949?
T:
qtesla3p
49730751?71648569?107701428?
T:
ronald768
771023087716711477278674
T:
luov6468330
795590567961501179640584
T:
sphincsf256shake256robust
849196378504216485302286
T:
sphincsf256harakarobust
100147018101029757101100071
T:
rainbowbinary16242020
99941413105309017116545024
T:
falcon1024tree
108949095110977403122532965
T:
falcon1024dyn
59599982?117948352?176566383?
T:
ronald1024
121955402122112772122288173
T:
luov890351
134512989134866575135001866
T:
rainbow3cclassic683248
145873825146102126146215397
T:
luov8086399
149404343151850876153909111
T:
rainbow3ccyclicc683248
148878726152387861154111545
T:
rainbow3ccompres683248
219480632219779268219973808
T:
luov8117404
272705002272733945272764117
T:
redgemss128v2
274648115274701365274803950mqsignlr2567246
315844930315881719315903094
T:
sflashv2
329623243329759264329945017mqsignrr2567246
335811411335926048336614521
T:
bluegemss128v2
229550494?344940203?574337657?
T:
ronald1536
347258054347277381349629170
T:
sphincss128shake256simple
370122752370128907370263412
T:
sphincss128harakasimple
375483489375559408375753691
T:
gemss128v2
415719488416350647417053187
T:
rainbow5cclassic963664
446986263447746095448884333
T:
rainbow5ccyclicc963664
449194280449963252450601922
T:
rainbow5ccompres963664
515510782515578489517773106
T:
sphincss192shake256simple
545272582545705732545737924
T:
sphincss192harakasimple
663589890663609295663636853
T:
sphincss128shake256robust
675408931675439727675449475
T:
sphincss256shake256simple
688839647688873949688913666
T:
sphincss128harakarobust
730279188730358777731554315
T:
sphincss256harakasimple
975734230978687179989427347
T:
sphincss192shake256robust
447679212?1007277260?1599657813?
T:
ronald2048
101753615710175607611019877420
T:
sphincss192harakarobust
127304483012731041431273289408
T:
sphincss256shake256robust
128780052112981210431304205391
T:
redgemss128
136186244413636598131364894267
T:
sphincss256harakarobust
138724767413915465691392517243
T:
redgemss192v2
166748703016679869081668377367mqsignlr25611272
173214338017331894631738921067
T:
bluegemss192v2
179131899917913798071792151854
T:
rainbow1a
184988111618502315981852576816mqsignrr25611272
184546838818663436911886785110
T:
bluegemss128
258553751725943771232599276151
T:
gemss128
1552599515?2721863541?3886901692?
T:
ronald3072
442919406845463944324666592113
T:
redgemss256v2
452488261845470864674567536066
T:
gui184
496029956849614505284962752890mqsignlr25614896
520892437852472895465255736607
T:
redgemss192
528890906752910718755295520917
T:
bluegemss256v2
541065523554127393575416689739mqsignrr25614896
645790376564605393066468848464
T:
rainbow1c
5277655249?7230526898?11158843002?
T:
ronald4096
736769837773681934367372441619
T:
rainbow1b
749745081275071350617524349324
T:
bluegemss192
758708513278117847148029320782
T:
pqrsa15
143894418451451213041814531903557
T:
redgemss256
156860752001572282826415755061793
T:
rainbow3b
165317296531653618156116540547644
T:
rainbow4a
193532955781938918982919448524014
T:
bluegemss256
687221425656876268451869357643307
T:
rainbow3c
710090275237222307542372428064686
T:
rainbow6a
Cycles to sign 59 bytes
25%50%75%system
269702740328134
T:
rainbowbinary256181212
677146906774181
T:
rainbowbinary16242020
103423103584103862ed25519
164939165504165907
T:
rainbow1aclassic363232
165514166191179559
T:
rainbow1acyclicc363232
189973190338190816
T:
sflashv2
300338300817301427
T:
ecdonaldp256
342294343157344852
T:
ed448goldilocks
420020420788421717
T:
ecdonaldp224
476762482060486923
T:
donald512
758207760900772248
T:
rainbow3ccyclicc683248
783327786092790149
T:
rainbow1a
788767799949809118
T:
ronald512
814835818681821177
T:
rainbow3cclassic683248
957949962888967826
T:
donald1024
954955967150976629
T:
falcon512tree
721417?1181746?2840078?
T:
qtesla1
640632?1272688?1901253?
T:
pass769
1408188?1426929?3223431?nccsign1aes
1102658?1471677?2454855?T!!!dilithium2
146393314773901486323
T:
ronald768
153675815409711553140
T:
ecdonaldp160
782703?1550664?1589879?
T:
pass863
1138696?1630667?2124051?nccsign1
164218616525021662210
T:
falcon512dyn
168680416955131707635
T:
rainbow5ccyclicc963664
168182517013001714519
T:
rwb0fuz1024
178904618003101814656
T:
donald2048
184614018537321874314
T:
ecdonaldp192
192473919279111936315
T:
rainbow5cclassic963664
1133788?1948349?3134414?
T:
qtesla3f
194376219504411956135
T:
edons128k08n72nu8l4mu3
196027719723011989598
T:
falcon1024tree
198601119965912018610
T:
ronald1024
221301122211232230195
T:
ecdonaldk163
224325522496362255851
T:
ecdonaldp521
1453239?2252427?3062000?nccsign3
1310623?2259407?5999853?
T:
qtesla3s
229155522976882321229
T:
ecdonaldb163
237105623725892388897mqsignlr2567246
248567224894362545980
T:
rainbow1c
1691921?2492694?3519972?T!!!dilithium2aes
252250825236192525836
T:
rainbow4a
1864787?2564082?3873930?T!!!dilithium5
295352529718112996011
T:
ecdonaldk233
1984996?3038219?4630718?
T:
qtesla1p
307746730861343095590
T:
ecdonaldb233
310702531086983110867
T:
rainbow1b
2602254?3367670?4426409?nccsign3aes
339426334193433483292
T:
rainbow3b
342444534342753449502
T:
falcon1024dyn
364754936517593660295mqsignrr2567246
2618747?3795923?5273675?T!!!dilithium3aes
1701937?3820390?5843457?T!!!dilithium3
3341952?4044219?5563182?T!!!dilithium5aes
4081720?4364179?5518828?nccsign5aes
2360593?4633626?5665178?nccsign5
447386946748014683872
T:
edons128ref
558672456128755745015
T:
rainbow6a
575901257777215799132
T:
ronald1536
589762959600486016112
T:
ecdonaldk283
627633363051956330758
T:
ecdonaldb283
648604464902986493006aimer128f
747277474881217505464
T:
ecdonaldp384
4476662?8460160?12496773?haetae3
918901491917799278850
T:
rainbow3c
4258930?9559553?14909381?haetae2
954609695736649629086
T:
ronald2048
5476959?10380047?20212494?haetae5
106007601060604510621075mqsignlr25611272
110682971107171711080035
T:
luov863256
122539861228553512450268
T:
ecdonaldk409
133372861354404113670478
T:
ecdonaldb409
9257400?15092132?20058991?
T:
qtesla3p
150018181510814715138599
T:
rainbow1acompres363232
162395181624470416260799mqsignrr25611272
164142031642451716434743aimer192f
184715441848565118534377picnicl1full
224611832247734722493968picnicl1fs
243629572439007324400940mqsignlr25614896
261932142623703926287586
T:
ecdonaldk571
267217942678327126856501
T:
ronald3072
290568152935677229830258
T:
ecdonaldb571
304278423044970130455064picnicl1ur
346685263467836434690193aimer256f
354393543545241535463147picnicl3full
377713353778083737795456mqsignrr25614896
381199093816386638189407
T:
luov890351
512546345178421752109553aimer128s
521272965213257752141425
T:
mqdss48
536772405369761153714809picnicl3fs
545105055456071354594722
T:
luov4849242
555916015560889255620422picnicl5full
576848245780211757911453
T:
ronald4096
50011551?59480313?67236319?
T:
redgemss128
661852946619602666399479
T:
luov8117404
56400025?67430036?92104007?
T:
redgemss128v2
766954457674507176778053picnicl3ur
924749639250231492529326picnicl5fs
927342949370845093866860picnic3l1
952805869553122797007952
T:
rainbow3ccompres683248
123249229123571207123667169picnicl5ur
105828187?126571941?151605331?
T:
redgemss192
128053746128177326128214018aimer192s
158385659158518837159174912
T:
luov6468330
159952473159965530159993488
T:
mqdss64
138659825?170542368?221587295?
T:
redgemss256
163530877?200235601?224102537?
T:
redgemss192v2
212727600212840850213139333picnic3l3
232063763232158326232209829
T:
sphincs256
251582636252330605252829806
T:
rainbow5ccompres963664
262298695262513379265484962
T:
pqrsa15
264759986265079329268866060aimer256s
340679079340913727341115244picnic3l5
343827208344025937344316570
T:
sphincsf128shake256simple
312540708?368962371?481630846?
T:
redgemss256v2
376934496377865274378028473
T:
luov8086399
423598133423737287424005614
T:
picnic2l1fs
432894774433438794433811569
T:
sphincsf128harakasimple
439531820439765179439936465
T:
sphincsf192shake256simple
500770502501066584501240115
T:
sphincsf192harakasimple
625121199625578883625975154
T:
sphincsf128shake256robust
753033088753801042754509461
T:
sphincsf128harakarobust
814808489815265211815770461
T:
sphincsf192shake256robust
922021524922725903923725717
T:
sphincsf192harakarobust
965500316965659250965932687
T:
sphincsf256shake256simple
122869748112291105531230461281
T:
picnic2l3fs
124470937012454445131245814526
T:
sphincsf256harakasimple
176203845417626405521763774889
T:
sphincsf256shake256robust
1441015044?2212386276?4323188017?
T:
gui184
222480334422259356112227161923
T:
sphincsf256harakarobust
263666294526455508212646949252
T:
picnic2l5fs
2406824896?2893047044?3378794642?
T:
bluegemss128
2545612625?3036546482?3560618604?
T:
bluegemss128v2
519694866351970991175215914125
T:
sphincss128shake256simple
695392805669542194206954925870
T:
sphincss128harakasimple
6168851613?7399183273?8637206260?
T:
bluegemss192
805010492580508063958051269389
T:
sphincss256shake256simple
925402312192546019969255755413
T:
sphincss128shake256robust
7881701320?9451691717?11046954360?
T:
bluegemss256
7979110114?9577773311?12763948404?
T:
bluegemss192v2
109050813661090935461610969334231
T:
sphincss192shake256simple
110808883031109003946911099699267
T:
sphincss256harakasimple
118255697011182887793211838417216
T:
sphincss128harakarobust
145154776141451613818114516778010
T:
sphincss256shake256robust
155373697921555287711015555194808
T:
sphincss192harakasimple
13551377800?16254311407?18993713408?
T:
bluegemss256v2
189256701541897766471219183200828
T:
sphincss192shake256robust
16222672286?19467569766?22716240143?
T:
gemss128v2
195382391251956962161819616101796
T:
sphincss256harakarobust
14864607840?22187156310?25971183609?
T:
gemss128
279653807882797020804828005387423
T:
sphincss192harakarobust
Cycles to verify 59 bytes
25%50%75%system
119921219112428
T:
rwb0fuz1024
247682500925184
T:
rainbowbinary256181212
468414738448146
T:
ronald512
530315343053728
T:
ronald768
574715884059996
T:
rainbowbinary16242020
633756397164807
T:
ronald1024
742647588377284
T:
rainbow1aclassic363232
942029500595817
T:
ronald1536
133738135729136190
T:
falcon512tree
135556136288137203
T:
ronald2048
158278160266160842
T:
falcon512dyn
205384205486206069
T:
sflashv2
236471236749238034
T:
qtesla1
249947251058251905
T:
ronald3072
271619273550274421
T:
falcon1024tree
309715312343316855
T:
donald512
312753313067313678haetae2
365575366973369750ed25519
403726407452411773
T:
rainbow3cclassic683248
409997411204412334
T:
ronald4096
412364413855414681
T:
falcon1024dyn
419206433232446092
T:
gui184
447894457728467059
T:
gemss128v2
478964479506480186T!!!dilithium2
482949483739484463
T:
qtesla3f
491728502625515404
T:
bluegemss128v2
511561526824540748
T:
redgemss128v2
526050532110533996
T:
rainbow1a
556382556863557863
T:
qtesla3s
557804558319559213haetae3
697089697951698399haetae5
702578703375706019
T:
ecdonaldp256
708410711804714743nccsign1
709849712042714038
T:
edons128k08n72nu8l4mu3
766302767283770913
T:
ecdonaldp224
769973770507772330T!!!dilithium3
772481777335782099
T:
donald1024
831346833336836210
T:
pass769
866835870370875178T!!!dilithium2aes
886110888375891682nccsign3
898151903456909130nccsign1aes
100475710074301009815
T:
pass863
101217710293401074432
T:
rainbow5cclassic963664
112572711289731132316
T:
ed448goldilocks
117488811806441186354nccsign3aes
119126611931891198505
T:
qtesla1p
126301112642551264941T!!!dilithium5
131571913460411382064
T:
redgemss192v2
135401113582661364527
T:
edons128ref
143467214359901438629
T:
rainbow1b
144868314513431455273nccsign5
144398314557871468416
T:
ecdonaldp160
148826814918291495369T!!!dilithium3aes
151216215342301588020
T:
bluegemss192v2
169152617039641727386
T:
ecdonaldp192
184824218533131860733nccsign5aes
187676018783801881167
T:
rainbow4a
207714220955532109117
T:
donald2048
210735521091672112147
T:
rainbow1c
259951526049082611418T!!!dilithium5aes
273653127403382742317
T:
rainbow3b
275536328189082925672
T:
redgemss256v2
276155728287062894509
T:
bluegemss256v2
291036929463652988677
T:
sphincs256
362363336246733625977mqsignlr2567246
362645136275453629569mqsignrr2567246
417585141803664185568
T:
ecdonaldp521
429207243105524321639
T:
ecdonaldk163
443626344575134484946
T:
ecdonaldb163
475456448356655024842
T:
rainbow6a
519762752019325208355mqsignlr25611272
521050052223565228475mqsignrr25611272
569996457136075722958
T:
qtesla3p
573302557517185805713
T:
ecdonaldk233
572397458009785912590
T:
sphincss128shake256simple
593150359586885974486
T:
ecdonaldp384
596606759753965994933
T:
ecdonaldb233
604051960445086052294aimer128f
717258273556247543856
T:
sphincss128harakasimple
770207777142767718454
T:
rainbow3c
824718482946928379355
T:
rainbow1acyclicc363232
832515583696908445699
T:
rainbow1acompres363232
851726786487658827402
T:
sphincss192shake256simple
933870093592789365769
T:
luov863256
943133194399109567988mqsignrr25614896
946572194718879547974mqsignlr25614896
106619601077221810824076
T:
sphincss192harakasimple
108818471103005711182100
T:
sphincss256shake256simple
111972781140924411694636
T:
sphincss128shake256robust
115049581157280311640838
T:
ecdonaldk283
124288031253910412644934
T:
ecdonaldb283
133815001338930713434550picnicl1full
134498961378249014073338
T:
sphincss128harakarobust
137633171405014614231511
T:
sphincsf128shake256simple
149998871519498415394036
T:
sphincss256harakasimple
153221611532921415341070aimer192f
164978831673438416990606
T:
sphincsf128harakasimple
166249591688087917204001
T:
sphincss192shake256robust
171219771714252217215401picnicl1fs
204520702085932521125836
T:
sphincss192harakarobust
211508762149024821838602
T:
sphincss256shake256robust
220676002227400722500159
T:
sphincsf192shake256simple
222923062251243522708276
T:
sphincsf256shake256simple
228564492294190422960130picnicl1ur
239894672410060824231446
T:
ecdonaldk409
258460272587947325890060picnicl3full
257582242600935626258150
T:
sphincsf192harakasimple
265560072669925726873945
T:
ecdonaldb409
270449902752764127895011
T:
sphincsf128shake256robust
278877802808463828301793
T:
sphincsf256harakasimple
281668612845198628727499
T:
sphincss256harakarobust
308804903138165332006752
T:
sphincsf128harakarobust
316863163183904932542448
T:
gemss128
299165293234102232683815
T:
bluegemss128
324027273241210732429565aimer256f
334765193351758333571174
T:
pqrsa15
340749753409962334125574
T:
luov890351
357479873576631635788697
T:
luov4849242
360585423618783337352728
T:
redgemss128
370171433761106738109012
T:
mqdss48
409862024102436241120212picnicl5full
421184324215504542199430picnicl3fs
432831634357040444073537
T:
sphincsf192shake256robust
434789514383915844221045
T:
sphincsf256shake256robust
499227215006606150279967
T:
rainbow3ccompres683248
502467635074002451087414
T:
sphincsf192harakarobust
506534675127798251456005
T:
rainbow3ccyclicc683248
516271215180823952009350
T:
ecdonaldk571
513195385205664152684075aimer128s
526255935298806753790197
T:
sphincsf256harakarobust
573641715758227058196519
T:
ecdonaldb571
581365185826391858488374
T:
luov8117404
586689145870711258754916picnicl3ur
737065957374439973872396picnicl5fs
785165707931231479516411picnic3l1
9384234993997055102244912
T:
bluegemss192
939456849402465394109556
T:
luov6468330
988069619897594599079203picnicl5ur
105755631106744580108907501
T:
redgemss192
113540386113995581114416072
T:
rainbow5ccompres963664
114353522115341033116002027
T:
rainbow5ccyclicc963664
116142574116892509118365398
T:
mqdss64
127351634127444040128773443aimer192s
177412891177501359178343997picnic3l3
174149089188058758188643121
T:
bluegemss256
193990024194283733194491455
T:
redgemss256
209632585209770328209888173
T:
picnic2l1fs
215151651215225561215447349
T:
luov8086399
263287723263442106264430513aimer256s
269036596269178196269393470picnic3l5
478233434478713992479693441
T:
picnic2l3fs
852948309855974194856501745
T:
picnic2l5fs