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-A72 (410fd083); 2019 Broadcom BCM2711; 4 x 1500MHz; pi4b, supercop-20250922

[Page version: 20251028 08:35:44]

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
142181421814218picnicl1fs
142181421814218picnicl1full
142181421814218picnicl3full
14218?14218?28436?picnic3l1
14218?14218?28436?picnic3l5
14218?14218?28436?picnicl1ur
14218?14218?42654?picnic3l3
157581580415882
T:
picnic2l1fs
14218?20447?28436?picnicl5full
28436?28436?42654?picnicl3fs
28436?28436?42654?picnicl3ur
371493722437518
T:
picnic2l3fs
42654?42654?56872?crossrsdpg128balanced
42654?42654?56872?crossrsdpg128fast
42654?42654?56872?crossrsdpg128small
42654?42654?56872?picnicl5fs
42654?45339?56872?picnicl5ur
510005109653800
T:
picnic2l5fs
9952699526113744crossrsdp128balanced
9952699526113744crossrsdp128fast
9952699526113744crossrsdp128small
9952699526113744crossrsdpg192fast
995269952699526crossrsdpg192balanced
995269952699526crossrsdpg192small
106585106802108107aimer128f
106396106847114431aimer128s
124798125153132282ed25519
170616184834184834crossrsdpg256balanced
170616184834184834crossrsdpg256small
176022184834184834crossrsdpg256fast
205095209735217875
T:
ecdonaldp256
241706255924255924crossrsdp192balanced
241706255924255924crossrsdp192fast
241706255924255924crossrsdp192small
258104264676266763aimer192f
278256279925286215aimer192s
339316346596348378T!!!dilithium2
398104398104412322crossrsdp256fast
398104398104412322crossrsdp256small
398104412322412322crossrsdp256balanced
636786637761638864T!!!dilithium3
640033641062642750aimer256s
640337641677646324aimer256f
798268801080807104T!!!dilithium2aes
962561968375970391T!!!dilithium5
111313711160071118407
T:
mqdss48
711599?1344433?2183828?haetae2
135283913598481376573
T:
ecdonaldp160
155450215577001562727T!!!dilithium3aes
158977215928101616539
T:
donald1024
161712916215721625737
T:
ecdonaldp192
193023319396501955790
T:
ecdonaldk163
200589820134622022569
T:
ecdonaldb163
221047922147242220734
T:
ecdonaldp224
1488913?2405279?2955540?
T:
qtesla1
241075324180372427560T!!!dilithium5aes
1172373?2463861?4272766?haetae5
256556325683172572116
T:
mqdss64
1558706?2607474?4683821?haetae3
277584628049332839995
T:
donald2048
283886428544212863975
T:
ecdonaldk233
297190529757462994368
T:
ecdonaldb233
4289685?4316599?6330499?
T:
qtesla3f
489099249188374941062
T:
sphincsf128sha256simple
586736858827525900355
T:
ecdonaldk283
636715663765956395543
T:
ecdonaldp384
636737063863316424000
T:
ecdonaldb283
708056471090007123218
T:
sphincsf192sha256simple
6010432?7804109?9125132?
T:
qtesla1p
859990486129238625752
T:
sphincsf128shake256simple
922959892633809270136
T:
sphincsf128sha256robust
6426810?10550168?12635903?
T:
qtesla3s
115333801154879311568836
T:
sphincsf128harakasimple
122827161229420312321544
T:
ecdonaldk409
127147191273865712758306
T:
sphincsf192shake256simple
136492801365237313692378
T:
sphincsf192sha256robust
136180531365639713703768
T:
ecdonaldb409
144164501448177314703699
T:
sphincs256
161150301613541816161703
T:
ecdonaldp521
164352561646634716498791
T:
sphincsf128shake256robust
169669841697888816987604
T:
sphincsf192harakasimple
189339221898015018995248
T:
sphincsf256sha256simple
202006422022071920249118
T:
sphincsf128harakarobust
238513732386703723898370
T:
sphincsf192shake256robust
252086002526597525330267
T:
luov4849242
255535642558760825625718
T:
ecdonaldk571
25588738?28278255?34066740?
T:
falcon512dyn
285556592857702928602375
T:
ecdonaldb571
298478112987551329934362
T:
sphincsf192harakarobust
27430184?31188308?36118128?
T:
falcon512tree
328942403292177432997586
T:
sphincsf256shake256simple
340168883417880534479220
T:
luov863256
26343722?35768935?49786648?
T:
rwb0fuz1024
29035379?41341580?56724200?
T:
ronald512
451213814519073445230277
T:
sphincsf256harakasimple
36881535?45977120?58595687?
T:
qtesla3p
489367834897945549970690
T:
sphincsf256sha256robust
624781066254156362693437
T:
sphincsf256shake256robust
739212847415595874496522
T:
rainbow1aclassic363232
760660147654368877580064
T:
rainbow1acompres363232
768024547708382277403598
T:
luov6468330
739711387779578485252242
T:
falcon1024dyn
795296847963177079711416
T:
sphincsf256harakarobust
863601328644544086587620
T:
pflash1
809564368682824692088190
T:
falcon1024tree
102524500102721756104429093
T:
rainbow1acyclicc363232
82909450?114511601?175424505?
T:
ronald768
117410796117838402118173124
T:
luov890351
139055616139339632139815168
T:
luov8086399
156514673156781886156838758
T:
sphincss128sha256simple
180557358181137288181248752mqsignlr2567246
153733934?211820020?344899835?
T:
ronald1024
212950456213132702213936214
T:
luov8117404
216665685216894852217114559
T:
redgemss128v2
226378996226919280227047242
T:
sphincss192sha256simple
234501974235028390235541556mqsignrr2567246
275303724275496359275920814
T:
sphincss128shake256simple
293573264293644354293753159
T:
sphincss128sha256robust
298961886299672786299772312
T:
sphincss256sha256simple
302972204303457816303875128
T:
bluegemss128v2
329319826330326224361383372
T:
sflashv2
366657757367084307367405642
T:
sphincss128harakasimple
406545257406676608406997038
T:
sphincss192shake256simple
433940458433989353434070252
T:
sphincss192sha256robust
521478338521798988522471810
T:
sphincss128shake256robust
526021934526142832527511376
T:
sphincss256shake256simple
540565049540674599541532266
T:
sphincss192harakasimple
643982881644320948645913756
T:
sphincss128harakarobust
695421516696230599697383938
T:
rainbow3cclassic683248
720674724721099180721846381
T:
sphincss256harakasimple
747862324750097458751757948
T:
rainbow3ccyclicc683248
617639704?752888578?1182901502?
T:
ronald1536
753944980754806986756123202
T:
rainbow3ccompres683248
763447962763922093765864085
T:
sphincss192shake256robust
778301962778597201779330214mqsignlr25611272
782644028782814644783639288
T:
sphincss256sha256robust
984280724984474518988542198mqsignrr25611272
100021849810004613321001315293
T:
sphincss256shake256robust
110838696611087227671109082374
T:
redgemss192v2
143713902014433006511448891785
T:
redgemss128
159197855815953303741607944213
T:
bluegemss192v2
1252844497?1629024974?2523324437?
T:
ronald2048
186052630818637533761869020886
T:
rainbow5cclassic963664
207530635420784199622080287812mqsignlr25614896
208752021220912454102095990764
T:
bluegemss128
211973209321209275802129997574
T:
rainbow5ccyclicc963664
212543832021400801722141736126
T:
rainbow5ccompres963664
256162205425622957422570538148mqsignrr25614896
306366348030736118443096548068
T:
redgemss256v2
3276655951?6127723209?8222212260?
T:
ronald3072
634211937663580039216371776114
T:
redgemss192
803562821982509748958409986394
T:
pqrsa15
837245113483929001588408877892
T:
bluegemss192
133182481701340050136513548927910
T:
redgemss256
15032530492?20459013543?30047533171?
T:
ronald4096
Cycles to sign 59 bytes
25%50%75%system
130372130474137804ed25519
160562169499173908
T:
sflashv2
292962304242309814
T:
ecdonaldp256
552118554362573671
T:
rainbow1aclassic363232
735669748105762447
T:
ronald512
9831959875171019870
T:
rainbow1acyclicc363232
9835499917351011206
T:
falcon512tree
669655?1031985?2065152?
T:
qtesla1
112710111334531140517
T:
donald1024
120709512086661226169mqsignlr2567246
650947?1300975?2328143?
T:
qtesla3f
905792?1423872?1798297?T!!!dilithium2
144854814580211462923
T:
ecdonaldp160
147379614825851498310
T:
falcon512dyn
148341415048421522820
T:
ronald768
171867617242201736325
T:
ecdonaldp192
1477028?1932692?2733781?T!!!dilithium2aes
196743919699601975754mqsignrr2567246
199118120030912023433
T:
falcon1024tree
203586320424882049508
T:
ecdonaldk163
210894621155182123299
T:
ecdonaldb163
1543240?2171822?3339415?T!!!dilithium5
222593122403762254174
T:
rwb0fuz1024
1551410?2290248?3885600?
T:
qtesla1p
236056723634412375889
T:
ecdonaldp224
240193224258812465880
T:
ronald1024
247393224739322488150crossrsdpg128fast
881516?2545022?3966822?
T:
pflash1
2033829?2566325?3694414?T!!!dilithium3
279928828192322851581
T:
donald2048
1327411?2849207?4202615?
T:
qtesla3s
299244529951812999268
T:
ecdonaldk233
302256630423363054531
T:
falcon1024dyn
312223831304743142709
T:
ecdonaldb233
324170432559223298576crossrsdp128fast
364707436499583659324mqsignlr25611272
2362733?3799598?5800049?T!!!dilithium3aes
388035138857913893187
T:
rainbow3cclassic683248
388129038875253898133
T:
rainbow3ccyclicc683248
2563308?3929860?8767386?haetae2
3070717?4310520?5755174?T!!!dilithium5aes
510426251042625146916crossrsdpg128balanced
552380055358795553069aimer128f
561611056161105658764crossrsdpg192fast
581761458224475833343mqsignrr25611272
4102370?5962500?13401452?haetae3
607108660853046113740crossrsdp128balanced
611987461315876156701
T:
ecdonaldk283
642899964567336477139
T:
ronald1536
662031466313986646904
T:
ecdonaldb283
674046867496786811190
T:
ecdonaldp384
759241276066307620848crossrsdpg192balanced
793591879470637954663mqsignlr25614896
797629879905168018952crossrsdp192fast
818649882001528209808
T:
rainbow5cclassic963664
5170272?8697722?15293709?
T:
qtesla3p
949805795089479531953
T:
rainbow5ccyclicc963664
101089981013743410151652crossrsdpg128small
103222681036129510393358crossrsdpg256fast
4911006?10511229?16067369?haetae5
104584841054489210604825
T:
luov863256
105924101062084610635064picnicl1full
118317261187984311926141
T:
ronald2048
122274801224169812255916crossrsdp128small
124382041244981812469740mqsignrr25614896
128556201286675512932805
T:
ecdonaldk409
133791381339335613407574crossrsdpg256balanced
134644461349288213521318picnicl1fs
138341141384833213848332crossrsdp192balanced
140473841407582014104256crossrsdp256fast
141889221420386614227334
T:
ecdonaldb409
143175261434596214417052crossrsdpg192small
142567701442850714444311aimer192f
167345861676302216777240picnicl1ur
171875761720050317249118
T:
ecdonaldp521
207724982084358820957332crossrsdp192small
210852942111373021170602picnicl3full
238151502384358623914676crossrsdp256balanced
239857662399998424056856crossrsdpg256small
266528222668584026730263
T:
ecdonaldk571
292181082925110929310561aimer256f
296241852965126429711480
T:
ecdonaldb571
329364113298326733022047
T:
ronald3072
344603073449764534543873picnicl5full
355876543561609035687180picnicl3fs
355902653565218035697428
T:
luov890351
386018703868717838772486crossrsdp256small
390880833929571839335420
T:
mqdss48
434664664355238643636131aimer128s
442321984430328844345942picnicl3ur
446871744477248244843572picnic3l1
510045085112794751707874
T:
rainbow1acompres363232
43279511?52936518?64615944?
T:
redgemss128
548248745495269055078482
T:
luov4849242
614075426145019661492850picnicl5fs
621808706221988062346589
T:
luov8117404
713152957141065171485794
T:
ronald4096
738038917385634273919382picnicl5ur
83728743?97660552?113133130?
T:
redgemss128v2
993411669945491099526000picnic3l3
111184590111946662113321510aimer192s
113798218113895074114110738
T:
mqdss64
98829790?122189096?151971944?
T:
redgemss192
143111194152424982176168062
T:
redgemss256
155021153155136723155260560
T:
sphincsf128sha256simple
165014108165142070165241596picnic3l5
175608786176094478176659360
T:
luov6468330
199606502199791336199862426
T:
sphincsf192sha256simple
221305600223226960224606470aimer256s
271729378271951560272393767
T:
sphincsf128shake256simple
223122564?271970434?321182700?
T:
redgemss192v2
274148238274325882274647742
T:
sphincs256
277592232277748630278040084
T:
sphincsf128sha256robust
342122160342292438342477214
T:
pqrsa15
346321871346557202346831077
T:
sphincsf192shake256simple
356848702357483108358714522
T:
luov8086399
378032137378391293378966572
T:
sphincsf192sha256robust
424591903424950011425525935
T:
sphincsf128harakasimple
449798502450169200450904497
T:
picnic2l1fs
451929553453566664454630502
T:
rainbow3ccompres683248
456113440456271249456412600
T:
sphincsf256sha256simple
353570384?486987294?564252852?
T:
redgemss256v2
494359162494654719494907187
T:
sphincsf192harakasimple
496217264496682050497505642
T:
sphincsf128shake256robust
636300510636527284637097869
T:
sphincsf192shake256robust
711670295712204272713169617
T:
sphincsf128harakarobust
753117485753435356754914538
T:
sphincsf256shake256simple
871137748871809818872262582
T:
sphincsf192harakarobust
114269659711429508511143526923
T:
sphincsf256sha256robust
116599872011674827361168215722
T:
rainbow5ccompres963664
122264508912235834321224655940
T:
sphincsf256harakasimple
136259009213638302761364441698
T:
picnic2l3fs
138346171613846390631385843006
T:
sphincsf256shake256robust
210510254821084791822109426358
T:
sphincsf256harakarobust
233280712023334439422334000158
T:
sphincss128sha256simple
2017564444?2420334972?3218290991?
T:
bluegemss128
286972042628714702382875116670
T:
picnic2l5fs
3149894560?3787442316?5047173746?
T:
bluegemss128v2
384467516238450732663845457152
T:
sphincss256sha256simple
409145698840950399244096672909
T:
sphincss128sha256robust
409870873341000357774104054042
T:
sphincss128shake256simple
549474515254953280905495740412
T:
sphincss192sha256simple
5178496151?6207094797?7218987722?
T:
bluegemss192
628053832462813973556296666164
T:
sphincss256shake256simple
681290202568149534986826094846
T:
sphincss128harakasimple
726921538472723376767284687367
T:
sphincss128shake256robust
855089483685580150768559331628
T:
sphincss192shake256simple
961907415696200694169620766098
T:
sphincss256sha256robust
992145958399221378909923203801
T:
sphincss192sha256robust
108540292401086565801310876788092
T:
sphincss256harakasimple
112374708841125695853611260115586
T:
sphincss128harakarobust
113925636531141287269011419236234
T:
sphincss256shake256robust
10400425013?12469481795?14526801933?
T:
bluegemss192v2
147180292641472193757714744830382
T:
sphincss192shake256robust
151916923341521818855915220195004
T:
sphincss192harakasimple
Cycles to verify 59 bytes
25%50%75%system
120751229912606
T:
rwb0fuz1024
451754563147028
T:
ronald512
499585037151278
T:
ronald768
612376189164441
T:
ronald1024
883938937592102
T:
ronald1536
103664106333108208
T:
rainbow1aclassic363232
110355111528114682
T:
falcon512tree
126261128290140437
T:
ronald2048
126965128464131264
T:
falcon512dyn
129722?135768?173894?
T:
sflashv2
169861170365176350
T:
qtesla1
206619210271219501
T:
ronald3072
225634228837236356
T:
falcon1024tree
262970267374272389
T:
falcon1024dyn
262594267832273695haetae2
291461301524317782
T:
bluegemss128v2
322956333225337997
T:
ronald4096
387780394150398576T!!!dilithium2
383886398104412322
T:
pflash1
400716406698410497ed25519
411807418836421864
T:
qtesla3f
414610421925424829
T:
qtesla3s
414780423103441423
T:
redgemss128v2
470263471906475053haetae3
579148580155582323haetae5
630365632175639258T!!!dilithium3
639663641007645452
T:
ecdonaldp256
651155666588680636
T:
rainbow3cclassic683248
737694747888767486
T:
redgemss192v2
781897786339791379T!!!dilithium2aes
920673928236936958
T:
donald1024
957562961938968261
T:
qtesla1p
99248010180561044908
T:
bluegemss192v2
103245710344121036062T!!!dilithium5
93663210451891056959
T:
rainbow5cclassic963664
136263513685741386287
T:
ecdonaldp160
142158614262631434253T!!!dilithium3aes
149289014928901507108crossrsdpg128fast
156896115738341590339
T:
ecdonaldp192
181890018494721889290
T:
redgemss256v2
194786619620841976302crossrsdp128fast
209903121081672129015
T:
ecdonaldp224
226244022635412264540mqsignlr2567246
226451722660372269616mqsignrr2567246
235734923655902379991T!!!dilithium5aes
257009926358852720340
T:
sphincss128sha256simple
312796031279603156396crossrsdpg128balanced
325823533067173340554
T:
donald2048
345497434691923483410crossrsdpg192fast
346336735082793569962
T:
sphincs256
378545237965403818566
T:
qtesla3p
388151438815143895732crossrsdp128balanced
389500539041023914312
T:
ecdonaldk163
392416840094764123220
T:
sphincss192sha256simple
405180640574144070976
T:
ecdonaldb163
450734045701864704307
T:
sphincss128shake256simple
467772246919404720376crossrsdpg192balanced
473459447488124777248crossrsdp192fast
497630050900445274878
T:
sphincss128sha256robust
522436252294925240502mqsignlr25611272
517672052364245244396aimer128f
526604652686925273070mqsignrr25611272
520378853175325417058
T:
sphincss256sha256simple
539512254223065447047
T:
ecdonaldp384
576177457718535787370
T:
ecdonaldk233
602488860342126046179
T:
ecdonaldb233
624170262559206284356crossrsdpg128small
631279263376816351016crossrsdpg256fast
627013863430156440754
T:
sphincsf128sha256simple
663906267653226883953
T:
sphincss192shake256simple
715678172917777424898
T:
sphincss128harakasimple
786255478909907919426crossrsdpg256balanced
804738880616068075824crossrsdp128small
803567181254608220583
T:
sphincss192sha256robust
828102682980218325888
T:
luov863256
840283884312748445492crossrsdp192balanced
844549284881468502364crossrsdp256fast
861610886303268644544picnicl1full
853101087363128895632
T:
sphincss256shake256simple
874837690102189191051
T:
sphincss128shake256robust
899999490284309056866crossrsdpg192small
101374341025117810313289
T:
sphincsf192sha256simple
104066341050710210641330
T:
sphincsf256sha256simple
106514461076580910869436
T:
sphincss192harakasimple
109852661113174811274587
T:
sphincsf128shake256simple
114597081150236211530798picnicl1fs
116009701160848011628132mqsignlr25614896
116057841161252211627282mqsignrr25614896
119341231195307711988154
T:
ecdonaldk283
123108721251184012723368
T:
sphincsf128sha256robust
126824561269667412710892crossrsdp192small
129224231293943412961143
T:
ecdonaldb283
128265481308620113303718
T:
sphincss192shake256robust
131075831314054013193197
T:
ecdonaldp521
129110771314491713405070
T:
sphincss128harakarobust
133785611352510413568673aimer192f
138767681389098613905204crossrsdpg256small
140473841407582014104256picnicl1ur
144312701444548814473924crossrsdp256balanced
144597061477250215028426
T:
sphincss256sha256robust
148747911505405715232194
T:
sphincss256harakasimple
166332211677771916969015
T:
sphincsf128harakasimple
167315031702914117278016
T:
sphincss256shake256robust
174454861747392217516576picnicl3full
173934351760693917835354
T:
sphincsf256shake256simple
175788131783365117992731
T:
sphincsf192shake256simple
203527662058766420786716
T:
sphincsf192sha256robust
214235562174670922195044
T:
sphincsf128shake256robust
232037762323221223274866crossrsdp256small
251174072516620825282327
T:
ecdonaldk409
256877172602676326353155
T:
sphincsf192harakasimple
272639992729453627896592aimer256f
277877412780797127846303
T:
ecdonaldb409
275428532789564228272680
T:
sphincsf256harakasimple
283327022878451229069582
T:
mqdss48
287630142881988628876758picnicl5full
286208342903740729269436
T:
sphincsf256sha256robust
294491012986301630348286
T:
sphincsf128harakarobust
302506913030854830380018
T:
luov890351
311374203115163831208510picnicl3fs
329000733306668433183842
T:
rainbow1acompres363232
335997473418261034695269
T:
sphincsf256shake256robust
338291813418331734537628
T:
sphincsf192shake256robust
338809613434169035024466
T:
rainbow1acyclicc363232
344644323449286834549740picnic3l1
373694523740302637450944
T:
luov4849242
378483163787675237962060picnicl3ur
380965503815601638237650
T:
pqrsa15
408245384105317241174206
T:
bluegemss128
426688344304455843416650
T:
redgemss128
431328214344008744086170aimer128s
474390334766108148057746
T:
sphincsf192harakarobust
497271255025922650794326
T:
sphincsf256harakarobust
521398645223812652337656
T:
ecdonaldk571
541968325426755454293600
T:
luov8117404
542985425432697854412286picnicl5fs
581357245821714858287042
T:
ecdonaldb571
637392946386725663958216picnicl5ur
766918927672032876819854picnic3l3
836696828446341285270856
T:
mqdss64
100693924100840338100991180
T:
luov6468330
111843686112013194114055586aimer192s
117658418118125932118329644
T:
redgemss192
118980692119623102124872714
T:
bluegemss192
120597076120682384120796128picnic3l5
189525030189660245189773177
T:
picnic2l1fs
190066234190395642190626786
T:
luov8086399
197615103199037310199722493
T:
rainbow3ccyclicc683248
202693812202988198204146634
T:
rainbow3ccompres683248
212479950213304977218164670
T:
redgemss256
218668332219861366221224516aimer256s
437528178438548834439182902
T:
picnic2l3fs
449796855452302046453879613
T:
rainbow5ccompres963664
448539352452649432453231004
T:
rainbow5ccyclicc963664
771742686772161901772890650
T:
picnic2l5fs