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; Airmont (406c3); 2015 Intel Pentium N3700; 4 x 1600MHz; nucnuc, supercop-20240909

[Page version: 20241006 02:11:55]

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
118571190411956picnicl1full
141271517015243picnic3l1
167581680416858picnicl3full
170461706217105picnic3l3
220982211922194picnicl5full
223882242422490picnic3l5
236442368123738picnicl1fs
236812371823790picnicl1ur
268372702527302
T:
picnic2l1fs
440404409044659
T:
picnic2l3fs
442994434344403picnicl3ur
443594441744457picnicl3fs
537005374156245
T:
picnic2l5fs
585475858958678picnicl5fs
586035866758762picnicl5ur
148196148318149632ed25519
226521226728227096aimer128f
226455226757227352aimer128s
319344320224323619
T:
ecdonaldp256
426255426915428686
T:
donald512
532038532180533574aimer192s
531994532480532763aimer192f
547309548672555370
T:
ecdonaldp224
628684631650635927nccsign1
670088671595674046T!!!dilithium2
703917707419710102
T:
pass769
763896764852768882
T:
ed448goldilocks
825771828894835073nccsign3
840643845218847169
T:
pass863
100048410119011024650nccsign1aes
120678212085041212198T!!!dilithium3
127113912737011278542
T:
donald1024
128310612854911289641nccsign5
131509013161251321564aimer256s
131559213168931323581aimer256f
133140013366001340325
T:
edons128k08n72nu8l4mu3
135518913679671376509nccsign3aes
141638514257271436428T!!!dilithium2aes
191010019125951917268T!!!dilithium5
200869220205812032136nccsign5aes
203844820491092060453
T:
ecdonaldp160
205804320662952083519
T:
ecdonaldk163
214644121522642160082
T:
ecdonaldb163
236515623689402372291
T:
mqdss48
246616624705502485215
T:
ecdonaldp192
255197325674342627468T!!!dilithium3aes
268423626855612688484
T:
sphincsf128harakasimple
274685127542572762816
T:
ecdonaldk233
275505627609292767544
T:
ecdonaldp521
290098029089252925159
T:
ecdonaldb233
2131161?3103627?4174244?
T:
qtesla1
2077538?3220488?6641356?haetae3
1903129?3290814?6057086?haetae2
2069459?3362441?5948807?haetae5
335985633627903364410
T:
sphincsf128harakarobust
337661334016983444142
T:
donald2048
391935739209663924582
T:
sphincsf192harakasimple
409986741042964115972
T:
edons128ref
429498643140444355214T!!!dilithium5aes
470118047068244719573
T:
ecdonaldk283
497844649812524987439
T:
ecdonaldb283
506752350695415073729
T:
sphincsf192harakarobust
548405754880455496458
T:
mqdss64
809137581794428206622
T:
ecdonaldk409
871546687600378791541
T:
ecdonaldb409
6733211?9887232?13116606?
T:
qtesla3f
100366541005544210072404
T:
ecdonaldp384
9924639?13227782?22681917?
T:
qtesla3s
12513809?16306752?18256473?
T:
qtesla1p
171754371718075717196921
T:
ecdonaldk571
184852841849344518504038
T:
ecdonaldb571
185099361851192818608185
T:
sphincsf128shake256simple
235572662355986023562406
T:
sphincs256
272889292729138727294910
T:
sphincsf192shake256simple
321089113213175132176261
T:
rainbow1aclassic363232
352171783525816335261189
T:
sphincsf128shake256robust
365123933654212736584913
T:
rainbow1acompres363232
371145713715899337186021
T:
rainbow1acyclicc363232
372660933728199037300640
T:
rainbowbinary256181212
408833894093330840995390
T:
luov4849242
35421714?50704085?66967368?
T:
rwb0fuz1024
473866835195598058845497
T:
falcon512dyn
519724535197523251976924
T:
sphincsf192shake256robust
545015785456148954676235
T:
luov863256
48890520?54726569?62934486?
T:
falcon512tree
33394617?58403295?94696625?
T:
ronald512
713781957156940871754440
T:
sphincsf256shake256simple
752010467520889775221841
T:
sphincsf256harakasimple
854817728548641985490595
T:
sphincss128harakasimple
73490431?86246112?117163507?
T:
qtesla3p
67469437?100235715?153233563?
T:
ronald768
107128339107129583107135928
T:
sphincss128harakarobust
125888412125956721125963512
T:
sphincss192harakasimple
128952127129084850129297108
T:
luov6468330
130997997131365785131466836
T:
sphincsf256harakarobust
133642669134002831134009439
T:
sphincsf256shake256robust
132186162142262986161792525
T:
falcon1024dyn
138064756146243621159011915
T:
falcon1024tree
151211486151484266151709932
T:
redgemss128
152581556154600710158221488
T:
redgemss128v2
155952331156122482158400457
T:
gemss128v2
156069307156522460159843425
T:
bluegemss128v2
158848353159030254160364141
T:
gemss128
157826598159507873159752879
T:
bluegemss128
161834247161886497161896693
T:
sphincss192harakarobust
161441806163198033163309075
T:
rainbowbinary16242020
151621766?200430154?308320263?
T:
ronald1024
200636014200791671200959780
T:
luov890351
205974075206222384206410593
T:
rainbow3cclassic683248
225821706225952208226257145
T:
rainbow3ccompres683248
225885635226084126226396652
T:
rainbow3ccyclicc683248
239431308239660686239905286
T:
luov8086399
356119394356334474356568988
T:
luov8117404
380769738380889724381109888mqsignlr2567246
460153317466345179467798019mqsignrr2567246
402232978?588297120?1048463602?
T:
ronald1536
592150038592811750593679170
T:
sphincss128shake256simple
645637795645719189645846673
T:
sflashv2
741237701741776685742132485
T:
rainbow5ccyclicc963664
753757601754079971754485509
T:
rainbow5cclassic963664
795382886795810181797029317
T:
redgemss192v2
820904755821086759821687714
T:
rainbow5ccompres963664
832554080833856391837126860
T:
bluegemss192v2
846924386850391660850729885
T:
gemss192v2
854969068855576777855796524
T:
redgemss192
873381212873412981873431417
T:
sphincss192shake256simple
912290248912754365915929582
T:
bluegemss192
945446771945851962951136155
T:
gemss192
112727650111289641691130426547
T:
sphincss128shake256robust
114189319511446175841144643083
T:
sphincss256shake256simple
118955672311896002601189690907
T:
sphincss256harakasimple
786456953?1273860556?1808069405?
T:
ronald2048
166541926716656039711665763383
T:
sphincss192shake256robust
210084368221010847872101278035
T:
sphincss256harakarobust
213698147821412843422142887392
T:
sphincss256shake256robust
229685556322984554732305706489
T:
redgemss256
240944119724331342672454875315
T:
gui184
257453803825748280472575568414
T:
rainbow1a
258296685225843477192600770223
T:
bluegemss256
258849496025903641262591465110mqsignlr25611272
268219663426898620622690216615
T:
gemss256
290055295029017741242904601490mqsignrr25611272
319191947931980670353199202731
T:
redgemss256v2
326062589932654750923270559448
T:
bluegemss256v2
329073009732924607863299045746
T:
gemss256v2
3616588023?5082719949?8267805817?
T:
ronald3072
772768100877282073507729582773mqsignlr25614896
853151128285328169098533976299mqsignrr25614896
891822428689183533698918501493
T:
gravitysphincss
909903877290993988379099801328
T:
rainbow1c
936147396393618399069364767590
T:
rainbow1b
134185041381390899167214099064107
T:
pqrsa15
8995841889?16778112714?20568682188?
T:
ronald4096
178826075561801214199618145176858
T:
gui312
225944385042259857266622637343282
T:
rainbow4a
296423304482966920806729955217450
T:
rainbow3b
Cycles to sign 59 bytes
25%50%75%system
519585309254865
T:
rainbowbinary256181212
113363115451117668
T:
rainbowbinary16242020
154282154392154447ed25519
266055266472269217
T:
sflashv2
409773411619421143
T:
rainbow1aclassic363232
436874437658440203
T:
ecdonaldp256
439666443478446910
T:
rainbow1acyclicc363232
725361730248736773
T:
donald512
755685758280761097
T:
ecdonaldp224
784217785054787068
T:
ed448goldilocks
109886211152071128387
T:
ronald512
133021113361601343682
T:
rainbow1a
140312414112001425096
T:
falcon512tree
158038815834791591312
T:
donald1024
1602803?1607522?2446859?nccsign1
875274?1733335?1811331?
T:
pass769
921049?1841832?2911893?
T:
qtesla1
1042616?2068216?2153612?
T:
pass863
210858821220722141001
T:
ronald768
215372521604132169913
T:
ecdonaldp160
1803095?2182547?4227907?T!!!dilithium2
218303721878572191916
T:
ecdonaldk163
225454922611332271731
T:
rainbow3ccyclicc683248
225292222637272272185
T:
rainbow3cclassic683248
227388622810482288595
T:
ecdonaldb163
250134225151262523768
T:
falcon512dyn
260358126108012619087
T:
ecdonaldp192
1059888?2827577?4220228?
T:
qtesla3f
283274628455022867353
T:
falcon1024tree
294137829456662948254
T:
ecdonaldk233
297175729856853013484
T:
ronald1024
2061655?3001146?3849124?nccsign1aes
300069630176603031444
T:
rwb0fuz1024
303449130380223048409
T:
edons128k08n72nu8l4mu3
2020851?3101958?5052148?nccsign3
309119731031173112616
T:
ecdonaldb233
2540486?3141326?4926779?T!!!dilithium2aes
1961753?3252689?5605918?
T:
qtesla1p
327641932810683284787mqsignlr2567246
336171533933983415408
T:
donald2048
359870036033113608074
T:
rainbow1c
2612559?3855600?5097307?nccsign3aes
407393040797424086754
T:
rainbow4a
410358641071864110194
T:
ecdonaldp521
2526313?4408524?6258338?T!!!dilithium3
2237198?4523105?8082472?
T:
qtesla3s
2952808?4767319?7910284?T!!!dilithium5
492861549333944938732
T:
rainbow1b
502097450273805038424
T:
ecdonaldk283
3348221?5112808?6868954?nccsign5
512528451327085138081mqsignrr2567246
516384851782675196111
T:
falcon1024dyn
529974953024795311837
T:
ecdonaldb283
544961954599485497385
T:
rainbow5cclassic963664
4036266?5841373?7605078?T!!!dilithium3aes
4242622?5902376?7583185?nccsign5aes
599443160024206009667
T:
rainbow5ccyclicc963664
697953969862316997192
T:
edons128ref
6508520?7842063?10093559?T!!!dilithium5aes
856658986049088657132
T:
rainbow3b
879261788649658910034
T:
ecdonaldk409
901282190510409091969
T:
ronald1536
933370893677889472636
T:
ecdonaldb409
2706481?9476092?16269760?haetae2
105557121056625110588072
T:
ecdonaldp384
109252761092912610937054aimer128f
12273622?14297671?17246785?
T:
redgemss128
7562877?14400622?28057017?haetae3
155595461560761915648273
T:
ronald2048
13438677?16274616?20259457?
T:
redgemss128v2
164525781645644316462099mqsignlr25611272
8672885?16725575?31497845?
T:
qtesla3p
185362231854303818551851
T:
ecdonaldk571
199636931997279019984959
T:
ecdonaldb571
206786482074989620804659
T:
rainbow1acompres363232
254627762546813925475301mqsignrr25611272
17633396?26089966?42801824?haetae5
265347702655597826576611picnicl1full
270825052709197827105497aimer192f
312887403131353931331463picnicl1fs
336647943369852333750363
T:
luov863256
377644263777014937776472mqsignlr25614896
434659494349191243540261picnicl1ur
446072904466122744755584
T:
ronald3072
39854947?46707115?54416124?
T:
redgemss192v2
511597435118933151247743picnicl3full
46556489?55062333?64181444?
T:
redgemss192
552648145528994455345027aimer256f
590815795909478159104490mqsignrr25614896
683074486832252168353954
T:
gravitysphincss
732554807330258073344812picnicl3fs
69185576?78389794?90381221?
T:
redgemss256v2
813070548141046481760010
T:
luov4849242
819464078199778282063974picnicl5full
873987858744498587507798aimer128s
957979949584312495884331
T:
sphincsf128harakasimple
970188329710091197166264
T:
ronald4096
45132469?101258365?146353784?
T:
gui184
84067437?102053863?138344031?
T:
redgemss256
107132916107206052107258476picnicl3ur
113730172113784702113853389
T:
sphincsf192harakasimple
118049094118095740118181945
T:
luov890351
123958259123997668124046818picnicl5fs
124847917124932326125017078
T:
sphincsf128harakarobust
126819162128138474128153261
T:
mqdss48
135935725136092392136260023
T:
rainbow3ccompres683248
139341614139635301140166601picnic3l1
153246596153339181153409570
T:
sphincsf192harakarobust
173253209173335277173401340picnicl5ur
208039532208236251208685800
T:
luov8117404
213433670213697815213790548aimer192s
289043922294253436297654860
T:
luov6468330
304217956304603748305212050picnic3l3
391630057391919100392239438
T:
rainbow5ccompres963664
403424341408567305408624313
T:
mqdss64
424167981424363844424585221aimer256s
447592553447708359447942116
T:
sphincs256
465720279466716049467660614
T:
pqrsa15
499717703500363519500983900picnic3l5
446996285?536051878?625806787?
T:
bluegemss128v2
457040690?548638749?731324159?
T:
bluegemss128
584656129585228457587531667
T:
sphincsf128shake256simple
583610290585657959587097341
T:
luov8086399
744265950744644425745104600
T:
sphincsf192shake256simple
899483693899821325900168878
T:
picnic2l1fs
105809589810585525131059507250
T:
sphincsf128shake256robust
138746379613886915331389210906
T:
sphincsf192shake256robust
163224894416324156831632555136
T:
sphincss128harakasimple
163038576916328482521633496415
T:
sphincsf256shake256simple
1712637944?1996521313?2289063684?
T:
bluegemss192v2
205016582820505693472051170500
T:
sphincsf256harakasimple
214967675021498489972149990554
T:
sphincss128harakarobust
1951149218?2339912067?2732157012?
T:
bluegemss192
245118254124529446662455685031
T:
picnic2l3fs
2319155605?2778261293?3700098286?
T:
bluegemss256v2
296617886929671288162967825701
T:
sphincsf256shake256robust
2799641710?3359414363?3919031804?
T:
gemss128v2
2874283877?3449313462?4598525174?
T:
gemss128
356608693335677476793570634142
T:
sphincsf256harakarobust
361799586936183359623620888397
T:
sphincss192harakasimple
1621572272?3621287037?4854167247?
T:
gui312
3599898162?4328462906?5760291217?
T:
bluegemss256
475810731447618380944769851482
T:
picnic2l5fs
528309120152841019005284665559
T:
sphincss192harakarobust
881339969288270100868828141076
T:
sphincss128shake256simple
9540666122?11446548912?15261936029?
T:
gemss192v2
136456200601364656774713648342285
T:
sphincss256shake256simple
156538959821565427754715654550574
T:
sphincss128shake256robust
13166807858?15801951369?18433606910?
T:
gemss192
181506071351815099455518151631034
T:
sphincss256harakasimple
184579877361845828714118458730525
T:
sphincss192shake256simple
12867701342?19281654818?22496330939?
T:
gemss256v2
243226836292432397133624324766438
T:
sphincss256shake256robust
25163984837?30195939859?35229393832?
T:
gemss256
318068434273181367641831817848250
T:
sphincss256harakarobust
321290356133213023757332131132515
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
226762321923800
T:
rwb0fuz1024
579736085962848
T:
rainbowbinary256181212
712157195573678
T:
ronald512
740877493977354
T:
ronald768
913539239494437
T:
ronald1024
947209545596430
T:
rainbow1aclassic363232
101688103233105314
T:
rainbowbinary16242020
129751131845133536
T:
ronald1536
182053183109184303
T:
ronald2048
223094227597229838
T:
falcon512tree
265936270489281472
T:
gravitysphincss
290343291945293293
T:
falcon512dyn
307763310046311352
T:
qtesla1
326623328964331017
T:
ronald3072
364145366677369351
T:
sflashv2
460019464565467049
T:
falcon1024tree
470651474761478576
T:
donald512
475016475844479139haetae2
485624490007495140
T:
rainbow3cclassic683248
510499525004538733
T:
gemss128v2
514254527613536557
T:
bluegemss128v2
530379532337535343
T:
ronald4096
538426541150544590ed25519
546185554862568283
T:
redgemss128v2
612572613611617085
T:
falcon1024dyn
646827660338680034
T:
gemss128
649148663012681619
T:
bluegemss128
685540707869726836
T:
redgemss128
710847713765715373
T:
qtesla3s
712638714409716705
T:
qtesla3f
755689757952760178T!!!dilithium2
771805774648776308
T:
rainbow1a
826060850778885238
T:
gui184
855485857735859821haetae3
992177994817997143nccsign1
104298810465221050148
T:
ecdonaldp256
106537810667801071387haetae5
112715611321531134843
T:
pass769
120597912113801218660
T:
rainbow5cclassic963664
122738812317591235889
T:
edons128k08n72nu8l4mu3
123367612368931241296T!!!dilithium3
123479412576011292130
T:
gemss192v2
126692812719381276860nccsign3
127106712842431288548
T:
donald1024
126541812906761311846
T:
redgemss192v2
132013613287301336552nccsign1aes
132716613327621336000
T:
pass863
137742513883831395082T!!!dilithium2aes
142869814723821509384
T:
sphincss128harakasimple
155070115548661558978
T:
ecdonaldp224
154900615743601603784
T:
bluegemss192
156246615975001632306
T:
gemss192
156618116079851637904
T:
redgemss192
169815417067231715200nccsign3aes
168620517130941739029
T:
bluegemss192v2
173699417418071746758
T:
qtesla1p
196919819889921998317
T:
ecdonaldp160
204285920452352048595T!!!dilithium5
204357920477672054332nccsign5
210935021491662192736
T:
sphincss128harakarobust
217840021815312185071
T:
edons128ref
219150622285322268593
T:
sphincss192harakasimple
233446123476892366336
T:
ecdonaldp192
239196523992882423687T!!!dilithium3aes
269627227107082737867nccsign5aes
280876928180592824075
T:
ed448goldilocks
292703329343262946280
T:
rainbow1b
294897429539142962540
T:
rainbow1c
299960030541613114900
T:
gemss256
301636030900413127701
T:
redgemss256
307851431162803197402
T:
bluegemss256
303196531217203184937
T:
gui312
308477531294863188155
T:
gemss256v2
309694931717813200795
T:
bluegemss256v2
320846932157803222681
T:
rainbow4a
320104432460533338220
T:
redgemss256v2
334272533776123434864
T:
sphincsf128harakasimple
341354534522683506823
T:
sphincss192harakarobust
393095639509153978881
T:
donald2048
415380941577554169369
T:
ecdonaldk163
420176242649054288423T!!!dilithium5aes
433926943464674351315
T:
ecdonaldb163
493332249864955048677
T:
sphincsf128harakarobust
518717451890545192085mqsignlr2567246
518883351929275196972mqsignrr2567246
525241953083995377227
T:
sphincsf192harakasimple
557019556077675615386
T:
ecdonaldk233
560443856393425690611
T:
sphincs256
580847758934145912732
T:
ecdonaldb233
781103878169397829022
T:
rainbow3b
797434979793807985761mqsignrr25611272
797768679827817988823mqsignlr25611272
806126180663418071334
T:
ecdonaldp521
808089181052748135257
T:
qtesla3p
825380282790758292473
T:
rainbow1acyclicc363232
821989083012788396505
T:
sphincsf192harakarobust
831673783283398376533
T:
rainbow1acompres363232
834802083756238409762
T:
ecdonaldp384
965370496648149673789
T:
ecdonaldk283
9629129986914710123994
T:
sphincss128shake256simple
101020801020366510217018
T:
ecdonaldb283
102024781020939610217520aimer128f
141528801458367614767179
T:
sphincss192shake256simple
147513671475947014765652mqsignlr25614896
147685471477620714782939mqsignrr25614896
168373421694503217041800
T:
ecdonaldk409
179406301799308418210751
T:
ecdonaldb409
185000971877039419139118
T:
sphincss256shake256simple
189103431916296819632594
T:
sphincss128shake256robust
198144251987103319996645picnicl1full
236340442394505024231548
T:
sphincsf128shake256simple
243536592442510624534890picnicl1fs
245577542481818525049853
T:
sphincss256harakasimple
253200072534369125359327aimer192f
282031802857353129085042
T:
sphincss192shake256robust
312217573126813731330850
T:
luov863256
340505813411216834288170picnicl1ur
357281793574386035755731
T:
ecdonaldk571
356076253617383236945929
T:
sphincss256shake256robust
376073483806949138434068
T:
sphincsf192shake256simple
377795153826158538551085
T:
sphincsf256shake256simple
384533043847155738504411
T:
ecdonaldb571
386899483885215038924682picnicl3full
454710914582512146217853
T:
sphincsf256harakasimple
461668124662687447093336
T:
sphincss256harakarobust
459827194692034747414164
T:
sphincsf128shake256robust
502706405040526850719300
T:
rainbow3ccompres683248
503761645073141050967260
T:
rainbow3ccyclicc683248
514679385149456251517953aimer256f
570185895706795357128646
T:
luov4849242
579127595797401858050003
T:
pqrsa15
587583725887409058946502picnicl3fs
627195406289081663023555picnicl5full
728717947360609174439509
T:
sphincsf256shake256robust
731071887368225374921066
T:
sphincsf192shake256robust
847801988554062586215858
T:
sphincsf256harakarobust
860907788611342986166618aimer128s
863310308658069386669920picnicl3ur
919685009346775494557710
T:
mqdss48
100254320100484303100573424picnicl5fs
109723172109800234109906636
T:
luov890351
113083061113520530113845252
T:
rainbow5ccyclicc963664
113812637114108397114449984
T:
rainbow5ccompres963664
119699957119825626119988510picnic3l1
146445854146719361146793023picnicl5ur
163430053163670852163898313
T:
luov6468330
194774338195020680195147555
T:
luov8117404
209516702209645688209694047aimer192s
259046543259153217259332411picnic3l3
299540462302405880304819883
T:
mqdss64
306175001306564576306996759
T:
luov8086399
393449218393766547394169031picnic3l5
417732946417784628417847016aimer256s
542696216542906269543150158
T:
picnic2l1fs
123822661412390043541239477121
T:
picnic2l3fs
214917773521504825562152035826
T:
picnic2l5fs