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: aarch64; Cortex-A53 (410fd034); 2018 Broadcom BCM2837B0; 4 x 1400MHz; pi3aplus, supercop-20240808

[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: (pkcycles,pkbytes) (smcycles,sbytes) (mcycles,pkbytes) (mcycles,sbytes) (pkbytes,sbytes)

NISTPQC graphs: (pkcycles,pkbytes) (smcycles,sbytes) (mcycles,pkbytes) (mcycles,sbytes) (pkbytes,sbytes)

Measurement failures: mqqsig160, mqqsig192, mqqsig224, mqqsig256, ntrumls401x, ntrumls439x, ntrumls593x, ntrumls743x, qtesla128, qtesla192, qtesla256

Cycles to generate a key pair
25%50%75%system
172111730717606picnicl1full
169681736017844picnic3l1
209202116921645
T:
picnic2l1fs
234982391424460picnicl1ur
244062480025364picnic3l3
246622483725288picnicl3full
254762572926237picnicl1fs
320783233432985picnic3l5
320773237833049picnicl5full
547165509755885picnicl3fs
547065536755816picnicl3ur
554315568256539
T:
picnic2l3fs
759017631784514
T:
picnic2l5fs
756587655682963picnicl5ur
754127678683399picnicl5fs
168486168676174478aimer128s
168478168903173919aimer128f
206852207811212933ed25519
351157357296360629
T:
ecdonaldp256
384665389908390736aimer192f
397800398636401985
T:
donald512
397695403041403873aimer192s
662743663828668746dilithium2
9934699962161004894aimer256s
9941849965511003749aimer256f
111377911151591127100
T:
donald1024
112162011230601136580dilithium3
131936513259471335944T!!!dilithium2aes
160275916064401619139
T:
mqdss48
176963817711821786275dilithium5
211244621219742135483
T:
ecdonaldp160
1154722?2125884?3564152?haetae2
231385823231452335049T!!!dilithium3aes
256538125740582584802
T:
ecdonaldp192
2293855?3001304?3773263?
T:
qtesla1
311444031304503157587
T:
ecdonaldk163
324284832483333255043
T:
ecdonaldp224
325255032658203275497
T:
ecdonaldb163
1411563?3492754?5804967?haetae5
2543346?3702692?8821211?haetae3
370945637167173721171
T:
mqdss64
384529038681363959732
T:
donald2048
390611739157353933577T!!!dilithium5aes
427188143226334408752
T:
ecdonaldk233
447633544873124515989
T:
ecdonaldb233
677186867820296795385
T:
sphincsf128sha256simple
5127611?7417943?12046404?
T:
qtesla3f
838703584232018497814
T:
ecdonaldk283
907720490986659114833
T:
ecdonaldb283
9859974987852610016400
T:
ecdonaldp384
9984130999672210016729
T:
sphincsf192sha256simple
9915678?12279436?17047075?
T:
qtesla3s
10597328?12396474?14674400?
T:
qtesla1p
126776541268785212708826
T:
sphincsf128shake256simple
132298431324284613263028
T:
sphincsf128sha256robust
154563151547361215487534
T:
sphincsf128harakasimple
173669661742662817644548
T:
ecdonaldk409
177632991777368717795613
T:
sphincs256
189382201894435218960810
T:
sphincsf192shake256simple
192870261933898419499390
T:
ecdonaldb409
197490461975558119771054
T:
sphincsf192sha256robust
227753202278849622807060
T:
sphincsf192harakasimple
231486162317464023222408
T:
ecdonaldp521
243213602433277924363109
T:
sphincsf128shake256robust
263705922640436026451051
T:
sphincsf256sha256simple
265960142663731526686670
T:
sphincsf128harakarobust
364921663651787936559327
T:
sphincsf192shake256robust
370051393710277837433412
T:
ecdonaldk571
394509733946318139489044
T:
sphincsf192harakarobust
27885695?40844929?59747231?
T:
ronald512
408182424089130841030364
T:
luov4849242
412985664140193041864404
T:
ecdonaldb571
42408852?43856174?55735358?
T:
falcon512tree
41058266?46370860?56350692?
T:
falcon512dyn
490034024903261349074780
T:
sphincsf256shake256simple
539357345399734954104290
T:
luov863256
603718756041487460451152
T:
sphincsf256harakasimple
617602686213417862320200
T:
rainbow1aclassic363232
41263454?63149795?88091844?
T:
rwb0fuz1024
54779882?68019214?81657508?
T:
qtesla3p
694327987001181470429833
T:
rainbow1acyclicc363232
712034597123952471275720
T:
sphincsf256sha256robust
725040027255831872860878
T:
rainbow1acompres363232
43622126?76876398?111536433?
T:
ronald768
912937229133364191389803
T:
sphincsf256shake256robust
104885032105047412105151479
T:
sphincsf256harakarobust
73572779?119276189?170299719?
T:
ronald1024
123373020132034548153055362
T:
falcon1024dyn
125138380132355754152707464
T:
falcon1024tree
135291680135460468135845446
T:
luov6468330
216409552216765230217207526
T:
luov890351
217283840217486598217585542
T:
sphincss128sha256simple
248555320248849188249254830
T:
luov8086399
295165040295426890295963386mqsignlr2567246
319320643320018657320407876
T:
sphincss192sha256simple
351109054351711680352696219mqsignrr2567246
386342904387781119390183138
T:
luov8117404
406273845406394282406618896
T:
sphincss128shake256simple
422647356422851561423159276
T:
sphincss256sha256simple
423885008424073247424268083
T:
sphincss128sha256robust
327723252?436904328?644052382?
T:
ronald1536
491277316491463084491624518
T:
sphincss128harakasimple
606753448606892568607111398
T:
sphincss192shake256simple
632181985632331152632756948
T:
sphincss192sha256robust
636565170636995385642824316
T:
rainbow3cclassic683248
725399824725642574725920928
T:
sphincss192harakasimple
728247015728637536734017662
T:
rainbow3ccyclicc683248
730640096731161384732044354
T:
rainbow3ccompres683248
778940247779341594779525571
T:
sphincss128shake256robust
784654380784963366785176413
T:
sphincss256shake256simple
850107846850370740850700276
T:
sphincss128harakarobust
896171074896579490898559782
T:
sflashv2
965256917965613522965877966
T:
sphincss256harakasimple
102107670610212723121021992280mqsignlr25611272
113984393211400536721140219796
T:
sphincss256sha256robust
582124570?1142415630?1949322519?
T:
ronald2048
116897807111691683461169362414
T:
sphincss192shake256robust
127764252612794677861283527135mqsignrr25611272
131820526213185625801319351588
T:
redgemss128v2
146129158214616097061461758725
T:
sphincss256shake256robust
167687219016797327711680340317
T:
sphincss256harakarobust
177995728217851554861786259630
T:
rainbow5cclassic963664
202199309520229138522030173666
T:
rainbow5ccyclicc963664
203093113920316647362036445086
T:
rainbow1a
204155800020484730582049796711
T:
rainbow5ccompres963664
271820917027190186922720908200mqsignlr25614896
275008165727527950562759322954
T:
redgemss128
333266699533384017843348360614mqsignrr25614896
347645046334774086913484578200
T:
bluegemss128v2
2588482080?3655462574?5258008944?
T:
ronald3072
385706695538742085483893372636
T:
bluegemss128
572601560557578914635798937097
T:
gui184
601593266860319274466039519981
T:
rainbow1b
711354031471212338477124168381
T:
redgemss192v2
864627681986499456688652690287
T:
rainbow1c
5524737156?9863295798?15676847320?
T:
ronald4096
107254981531073697149910757429909
T:
redgemss192
139778127921399601516014029517645
T:
bluegemss192
161053604461641937089816671265051
T:
pqrsa15
178666619621794641475317994615190
T:
rainbow4a
205236062822052626076720532536404
T:
redgemss256v2
272470561402728332704027308205416
T:
redgemss256
342814357273431713514834382762913
T:
bluegemss256
347169926453474321664434765312124
T:
rainbow3b
Cycles to sign 59 bytes
25%50%75%system
213808214995220885ed25519
318207323853325212
T:
sflashv2
469939471040475433
T:
ecdonaldp256
555311557669582366
T:
rainbow1acyclicc363232
556063559377598593
T:
rainbow1aclassic363232
727106733193744784
T:
donald512
836521845119866156
T:
rainbow1a
111321011287751153758
T:
ronald512
120402812162031231594
T:
falcon512tree
145464614642241479636
T:
donald1024
1145719?1706985?2675646?
T:
qtesla1
211696621389792156624
T:
falcon512dyn
223924322468202260499
T:
ecdonaldp160
225298822793302311065
T:
ronald768
231249323327442368900mqsignlr2567246
247021224893532513918
T:
falcon1024tree
270041627147612772961
T:
ecdonaldp192
270384527259102736940
T:
rainbow4a
2001718?2760417?5328905?
T:
qtesla3f
2114620?3054949?4851981?dilithium2
317922332123523231451
T:
rainbow1c
325620332685153328117
T:
ecdonaldk163
326886532964303357742
T:
rainbow1b
328738333085863335505
T:
ronald1024
338041633957213420395
T:
ecdonaldb163
341173634187193438166
T:
ecdonaldp224
358130636033413689145mqsignrr2567246
378622737958543815163
T:
rwb0fuz1024
2856645?3873117?5203552?T!!!dilithium2aes
419295842033814293914
T:
donald2048
427839642873524300266
T:
rainbow3cclassic683248
428479842969504332518
T:
rainbow3ccyclicc683248
3251794?4302552?6976839?dilithium3
437434843945524424258
T:
falcon1024dyn
442814344409654472734
T:
ecdonaldk233
463378046461194668502
T:
ecdonaldb233
3330436?4792435?7162553?dilithium5
479619948055144823917mqsignlr25611272
2686610?4924281?7860978?
T:
qtesla1p
4348198?5629481?8618002?T!!!dilithium3aes
4257127?6830476?10255998?
T:
qtesla3s
5478033?7180138?11191932?T!!!dilithium5aes
737592174249447471684
T:
rainbow3b
749775875201377555248mqsignrr25611272
837507983923758630226aimer128f
852330585578568634157
T:
ronald1536
873069787570038805058
T:
ecdonaldk283
906266690836169102972
T:
rainbow5ccyclicc963664
911641291381029169572
T:
rainbow5cclassic963664
942724794839489531579
T:
ecdonaldb283
103695161040904910535294
T:
ecdonaldp384
105354071057240510631572mqsignlr25614896
6831356?13253522?21786932?haetae2
152926071533274015404676
T:
ronald2048
161454331620904816258411mqsignrr25614896
12829140?16824462?28734665?haetae5
10451989?16876724?23578247?haetae3
180289281806343418109128
T:
ecdonaldk409
198850441992021219947263
T:
ecdonaldb409
215504152167392821923866aimer192f
16617206?23973144?41980836?
T:
qtesla3p
244629342449701524567807
T:
ecdonaldp521
324800503251540432637396
T:
luov863256
370545203709635637162928picnicl1full
381976803823966938288390
T:
ecdonaldk571
410456604112602241174376picnicl1fs
415983004170546441788843
T:
ronald3072
423748244241957042585658
T:
rainbow1acompres363232
426868304273773043504428
T:
ecdonaldb571
446836184484595645368990aimer256f
566436305671840056852196picnicl1ur
617366226180763562120740
T:
mqdss48
665075586663967066729944aimer128s
728819967294380073044540picnicl3full
63882426?74059296?106209328?
T:
redgemss128
885189278865487688912712
T:
ronald4096
100765744100833194100910244picnicl3fs
105364350105831708122442864
T:
luov4849242
115653031115747990116355834
T:
luov890351
117506638117687868117931806picnicl5full
147783144147869634148121682picnicl3ur
133509802?158084412?185022486?
T:
redgemss192
166643548167123474170242756aimer192s
173216718173390584173602293picnicl5fs
178992930179180070179379960picnic3l1
186823368187263990189430692
T:
mqdss64
202464076202760909203808786
T:
luov8117404
214420027214607804214882070
T:
sphincsf128sha256simple
187998258?226974376?283054866?
T:
redgemss256
238666516238983736239294688picnicl5ur
281577404281820191282088054
T:
sphincsf192sha256simple
337411976337603872337891667
T:
sphincs256
339027945339508232340342974aimer256s
397601688397860326398359457
T:
sphincsf128sha256robust
402398675402775061403083030
T:
sphincsf128shake256simple
402458288402811502403515228
T:
rainbow3ccompres683248
407696129408040430408347972picnic3l3
446095080448723734452494416
T:
luov6468330
517191668517674462517957989
T:
sphincsf192shake256simple
546775062547110510547632882
T:
sphincsf192sha256robust
567431644567788825568168842
T:
sphincsf128harakasimple
591726102592063238592528974
T:
pqrsa15
637272900637659304637922987
T:
sphincsf256sha256simple
655169202655760291656353104picnic3l5
662498334662883554663225732
T:
sphincsf192harakasimple
732487270732727346733429290
T:
sphincsf128shake256robust
840116364845186652851042976
T:
luov8086399
940545126941094580942021632
T:
sphincsf128harakarobust
974562484974945335975515716
T:
sphincsf192shake256robust
855277086?1026492766?1202016304?
T:
redgemss128v2
108385116810907157471092198950
T:
rainbow5ccompres963664
112317780411238309471124622684
T:
sphincsf256shake256simple
115137561611520367081152499954
T:
sphincsf192harakarobust
139570303014062976781407855694
T:
picnic2l1fs
163242709016329123381633332854
T:
sphincsf256harakasimple
166007156216608697261661559278
T:
sphincsf256sha256robust
202446710520251051242026057930
T:
sphincsf256shake256robust
278479323727856224542786360430
T:
sphincsf256harakarobust
323830630732439753613245511552
T:
sphincss128sha256simple
2920386454?3528528388?4636830968?
T:
redgemss192v2
3277565419?3931771693?4585841649?
T:
bluegemss128
390155521239366630303943356111
T:
picnic2l3fs
2374687163?3957920303?5939412045?
T:
gui184
543198905054329746885434097556
T:
sphincss256sha256simple
588909367958898302885890965221
T:
sphincss128sha256robust
607711776960783049046080584413
T:
sphincss128shake256simple
776459827977658479487768584962
T:
sphincss192sha256simple
801025581680189111938023654792
T:
picnic2l5fs
6336988251?8759040536?10036524740?
T:
redgemss256v2
7400153854?8873576406?11934608535?
T:
bluegemss192
909526132790969635159098083277
T:
sphincss128harakasimple
937331084493831729279409534224
T:
sphincss256shake256simple
108353821701083962004710841383845
T:
sphincss128shake256robust
9350155748?11211910366?13104833601?
T:
bluegemss256
128463738601284890116612850569797
T:
sphincss192shake256simple
139854984341398694694713988682885
T:
sphincss256sha256robust
143925811281440521037014411942303
T:
sphincss192sha256robust
144930809361449387697314495486355
T:
sphincss256harakasimple
148836420121488519301914886475671
T:
sphincss128harakarobust
166777591071668019292916687126430
T:
sphincss256shake256robust
15959695883?19132931608?22382888339?
T:
bluegemss128v2
202955997442031367815420314836667
T:
sphincss192harakasimple
225466898232255042623122553630734
T:
sphincss192shake256robust
245783499882458122938224586097616
T:
sphincss256harakarobust
Cycles to verify 59 bytes
25%50%75%system
201662068121263
T:
rwb0fuz1024
856478604986723
T:
ronald512
930319376294767
T:
ronald768
107125107967110451
T:
ronald1024
132674135261143889
T:
rainbow1aclassic363232
145776146571151879
T:
ronald1536
157560158628164070
T:
falcon512tree
196627197692201368
T:
falcon512dyn
198591199906205730
T:
ronald2048
320436324115326464
T:
falcon1024tree
338283343248345184
T:
qtesla1
345753351473352377
T:
ronald3072
381182385675387181
T:
sflashv2
402832405854407732
T:
falcon1024dyn
468796473769477449
T:
donald512
514923515742517106haetae2
549778550841552324
T:
ronald4096
599180601801605226ed25519
578176?622292?1031806?
T:
bluegemss128v2
644579653762704954
T:
rainbow1a
669044703222763989
T:
gui184
743482745467756242
T:
qtesla3f
745693749236758927
T:
qtesla3s
777572796692831612
T:
redgemss128v2
795312804474833058
T:
rainbow3cclassic683248
807375809651815780dilithium2
881879887013892510haetae3
928368934735953498
T:
ecdonaldp256
105497210572691075283haetae5
116100811706661181996
T:
donald1024
126145112635181277598dilithium3
136391613693781381503T!!!dilithium2aes
182649418406781861426
T:
qtesla1p
199806120046122018876dilithium5
185580620384252107262
T:
rainbow5cclassic963664
216493921814472210215
T:
ecdonaldp160
230084223099132326401T!!!dilithium3aes
214554423472222453768
T:
redgemss192v2
232362823525862386832
T:
rainbow1b
254147625610802591708
T:
ecdonaldp192
259210026180172642424
T:
rainbow1c
266385226976422742702
T:
rainbow4a
311716231443123161908
T:
ecdonaldp224
337632533860043426838mqsignrr2567246
339463834116213454824mqsignlr2567246
356008336306253689880
T:
sphincss128sha256simple
379668238307383891438
T:
donald2048
394142739533123964944T!!!dilithium5aes
415792642109484254654
T:
sphincs256
475315049303285525662
T:
redgemss256v2
563237757372385769916
T:
sphincss192sha256simple
625389162722116400890
T:
ecdonaldk163
650651765330376561649
T:
ecdonaldb163
661048467849996922673
T:
sphincss128shake256simple
722629174471847605692
T:
sphincss128sha256robust
738080075120377621044
T:
sphincss256sha256simple
777590278025427832558
T:
rainbow3b
782154278334737978962aimer128f
826398682949168328394
T:
qtesla3p
845631184911058526211mqsignlr25611272
845989184930348547844mqsignrr25611272
844230285071968627496
T:
ecdonaldp384
863363186469198662916
T:
ecdonaldk233
863394287786228977407
T:
sphincsf128sha256simple
903087290666749107507
T:
ecdonaldb233
953884396797829911088
T:
sphincss128harakasimple
100083461011161410181183
T:
sphincss192shake256simple
115811871173271111891935
T:
sphincss192sha256robust
127268561293496113096204
T:
sphincss256shake256simple
130357361336227613611195
T:
sphincss128shake256robust
142579851437197314634504
T:
sphincss192harakasimple
142388751442983114540811
T:
sphincsf192sha256simple
145497391471604814882087
T:
sphincsf256sha256simple
159450351622685816556764
T:
sphincsf128shake256simple
162260081630875216351176mqsignrr25614896
162904681634355616388940mqsignlr25614896
168195481697826217435244
T:
rainbow1acyclicc363232
167903421699661517348443
T:
sphincss128harakarobust
170930111714645017313560
T:
ecdonaldk283
169597601715735417346138
T:
rainbow1acompres363232
177094991796583518204754
T:
sphincsf128sha256robust
184533431847603518521463
T:
ecdonaldb283
188891301896112019013309
T:
ecdonaldp521
198734252004540620280480
T:
sphincss256harakasimple
196899862020355520515584
T:
sphincss192shake256robust
205778502065021820802100aimer192f
210782982132545221765939
T:
sphincss256sha256robust
220828862258504822767010
T:
sphincsf128harakasimple
243109972502321825513746
T:
sphincss256shake256robust
259375742617140926596743
T:
sphincsf256shake256simple
260420562629437826658907
T:
sphincsf192shake256simple
274605002749301627539370picnicl1full
292786582929151729321273
T:
luov863256
293204192964512929996689
T:
sphincsf192sha256robust
316107403166970831758738picnicl1fs
316723563210363832530803
T:
sphincsf128shake256robust
346226093487478835311540
T:
sphincsf192harakasimple
353690823544912035855610
T:
ecdonaldk409
356017653596550136154585
T:
sphincss256harakarobust
369264693732375037814823
T:
sphincsf256harakasimple
389295983928206939961604
T:
sphincsf128harakarobust
391634103928288939598614
T:
ecdonaldb409
416775424199024042289149
T:
sphincsf256sha256robust
419495844199248342040682aimer256f
431875224331382043380162picnicl1ur
441703384443684645036551
T:
mqdss48
494644245022687350673558
T:
sphincsf256shake256robust
519819475249014852872942
T:
sphincsf192shake256robust
548199965488184054981906picnicl3full
622981286297340463389888
T:
sphincsf192harakarobust
651470016524055465336408aimer128s
659900436654360767148068
T:
sphincsf256harakarobust
713005887182394472201410
T:
pqrsa15
733006327397103885548696
T:
luov4849242
752306737534342276134670
T:
ecdonaldk571
799134368001046880115518picnicl3fs
840883068487239685077822
T:
ecdonaldb571
887347368907535489336582picnicl5full
940046709542145096173096
T:
bluegemss128
963743789685079897485760
T:
redgemss128
102206464102390972108488772
T:
rainbow3ccyclicc683248
102172520102437592103045420
T:
rainbow3ccompres683248
106927906106992610107094160
T:
luov890351
114892136115018560115174920picnicl3ur
134738870135518118137655560
T:
mqdss64
138882312139033300139268760picnicl5fs
149140474149326128149517394picnic3l1
164264270166403924167550498aimer192s
188494237188631530189716720
T:
luov8117404
188463072188726066189015560picnicl5ur
223976040225626014227931468
T:
luov6468330
229443608230979560237689808
T:
rainbow5ccyclicc963664
230622520235380684235732350
T:
rainbow5ccompres963664
245163288245723436246667428
T:
bluegemss192
254926590255247942255674962
T:
redgemss192
334615913335016470335524127picnic3l3
334558020335077778336372505aimer256s
381247206385206700390441468
T:
luov8086399
452530720453158582453573231
T:
bluegemss256
458547218459412228460447846
T:
redgemss256
515763210516062442516735144picnic3l5
792849570796500484797305296
T:
picnic2l1fs
181628647818271512841829383072
T:
picnic2l3fs
325927701032608166373265087177
T:
picnic2l5fs