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; Silvermont (406c4); 2016 Intel Atom x5-Z8350; 4 x 1440MHz; cherry, supercop-20240625

[Page version: 20240726 23:45:48]

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.


Implementation notes

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
113461136611463picnicl1full
115091340213469picnic3l1
156721570815747picnic3l3
161221615716251picnicl3full
204272050920872picnic3l5
207662090022130picnicl5full
222752232322366picnicl1fs
223642240322461picnicl1ur
248482639126517
T:
picnic2l1fs
415504166642050picnicl3fs
417184188842138picnicl3ur
425594346543624
T:
picnic2l3fs
536365385755698
T:
picnic2l5fs
544875459855355picnicl5ur
546895491355517picnicl5fs
145174146900149370ed25519
319451320651322917
T:
ecdonaldp256
424913426253429755
T:
donald512
545847547714555431
T:
ecdonaldp224
668358669339671580T!!!dilithium2
745726750281752194
T:
pass769
762766763896768868
T:
ed448goldilocks
844930851632892314
T:
pass863
120393812068711211941T!!!dilithium3
127477012776711284353
T:
donald1024
132618013297771340379
T:
edons128k08n72nu8l4mu3
142337114324221444984T!!!dilithium2aes
190759419116691919585T!!!dilithium5
203721020473932058528
T:
ecdonaldp160
206547520725022084396
T:
ecdonaldk163
214324921493582163050
T:
ecdonaldb163
236512223696212375089
T:
mqdss48
246143924746762479538
T:
ecdonaldp192
254227825535712576840T!!!dilithium3aes
268419026859792687762
T:
sphincsf128harakasimple
275051427609002772726
T:
ecdonaldk233
275998527644462768896
T:
ecdonaldp521
1805039?2887910?3976897?haetae2
289472329021982915615
T:
ecdonaldb233
335906833617253364119
T:
sphincsf128harakarobust
337758434117333450101
T:
donald2048
392666139285193930697
T:
sphincsf192harakasimple
402757640445804150071
T:
edons128ref
3106591?4100245?6105896?
T:
qtesla1
429370843107894391271T!!!dilithium5aes
471859447339394745045
T:
ecdonaldk283
499441250070865029148
T:
ecdonaldb283
506907050703145071990
T:
sphincsf192harakarobust
548332954928525506706
T:
mqdss64
2151041?5649557?15357037?haetae3
2430031?6474265?12165868?haetae5
6734586?6760878?9920475?
T:
qtesla3f
813032882228338252311
T:
ecdonaldk409
868894187703468832015
T:
ecdonaldb409
100764111009548110123298
T:
ecdonaldp384
12519060?14547706?18181596?
T:
qtesla1p
13162501?16410143?19632191?
T:
qtesla3s
171982211722923817247693
T:
ecdonaldk571
185380701856045218574608
T:
ecdonaldb571
185526891860011418601581
T:
sphincsf128shake256simple
235563772356161323689156
T:
sphincs256
272874762728982827293411
T:
sphincsf192shake256simple
320753333210284232429092
T:
rainbow1aclassic363232
352585333528313835292716
T:
sphincsf128shake256robust
364815003651193336550702
T:
rainbow1acyclicc363232
369932853700950537031765
T:
rainbow1acompres363232
372600933727463837397428
T:
rainbowbinary256181212
417516584199159342121081
T:
luov4849242
465732924995095756833263
T:
falcon512dyn
46040572?50301800?61764130?
T:
falcon512tree
519719975197383351978775
T:
sphincsf192shake256robust
544833925483631055008828
T:
luov863256
43757717?58974522?82510876?
T:
ronald512
38463355?60915079?75872192?
T:
rwb0fuz1024
713578727136210971369946
T:
sphincsf256shake256simple
744802787450261275181134
T:
sphincsf256harakasimple
41114465?82958228?152120736?
T:
ronald768
854750758548197385490734
T:
sphincss128harakasimple
67678899?91888438?115879918?
T:
qtesla3p
107111552107117628107123060
T:
sphincss128harakarobust
125323403125330473125340361
T:
sphincss192harakasimple
130223953130402443130597355
T:
luov6468330
131475543131503486131533802
T:
sphincsf256harakarobust
133354878133640390133746529
T:
sphincsf256shake256robust
134802599142618981160492342
T:
falcon1024tree
133517183142673215156504926
T:
falcon1024dyn
149536698149995082150279965
T:
redgemss128
157690284157786403158304515
T:
bluegemss128
158067634158467409158992264
T:
gemss128
161861113161899145162119408
T:
sphincss192harakarobust
163116915163231773165473574
T:
rainbowbinary16242020
108176804?191992840?318805905?
T:
ronald1024
195775596196274183196995305
T:
redgemss128v2
197821323198286459199101653
T:
gemss128v2
197111469198626214198936066
T:
bluegemss128v2
200009826200240511200444022
T:
luov890351
204460971204667137205750410
T:
rainbow3cclassic683248
224375507224529442225416877
T:
rainbow3ccyclicc683248
224332215224702239225432575
T:
rainbow3ccompres683248
236915235237159620237385399
T:
luov8086399
241725331242036509242149807mqsignlr2567246
335790432336633865337338713mqsignrr2567246
354964751355248580355625659
T:
luov8117404
590843854590866456592158191
T:
sphincss128shake256simple
645734927645955343651966141
T:
sflashv2
755787719757929992758482226
T:
rainbow5cclassic963664
820966516822443682824043083
T:
rainbow5ccompres963664
824411302828521137829109995
T:
bluegemss192v2
848223963848942122851100634
T:
rainbow5ccyclicc963664
853732042854639798855804187
T:
redgemss192
873270377873513303878220708
T:
sphincss192shake256simple
422331238?905517413?1162232122?
T:
ronald1536
908600790909635497911197391
T:
bluegemss192
935412817938149819943396397mqsignlr25611272
946103498947427835947663748
T:
gemss192
103371351110357134181037353345
T:
redgemss192v2
107710870610773548101078956717
T:
gemss192v2
112735486811287092401131334563
T:
sphincss128shake256robust
114199402811447300351145344979
T:
sphincss256shake256simple
118929857511894184981189740767
T:
sphincss256harakasimple
129605557513000688291302074852mqsignrr25611272
1114109295?1576586544?2057055700?
T:
ronald2048
166357825016636608871663781129
T:
sphincss192shake256robust
210102865021013943932101674752
T:
sphincss256harakarobust
213855906221427117152146903503
T:
sphincss256shake256robust
232238884023336016722374393281
T:
redgemss256
242701212924298288712432435679mqsignlr25614896
242245851324434783362467499649
T:
gui184
252987143925302049842530480158
T:
rainbow1a
260229329626036782382608053446
T:
bluegemss256
267953105226828230012694847051
T:
gemss256
321809778732223093763242219014
T:
redgemss256v2
327742465632783839143293333313
T:
bluegemss256v2
327633533632794678613281804046mqsignrr25614896
328512307132887880803296652120
T:
gemss256v2
3036442212?4274843127?7353671081?
T:
ronald3072
891807135789183009428918946284
T:
gravitysphincss
909810988490983241439125932336
T:
rainbow1c
932860322193303029619386345226
T:
rainbow1b
132965734461373222104414082288190
T:
pqrsa15
9869332193?14974099558?19858758617?
T:
ronald4096
178701093751797839609518198671666
T:
gui312
225606839472256617828123052313308
T:
rainbow4a
308460639733110507242631185680480
T:
rainbow3b
Cycles to sign 59 bytes
25%50%75%system
522405383455179
T:
rainbowbinary256181212
114539116884119427
T:
rainbowbinary16242020
154236155987156820ed25519
266005266682269045
T:
sflashv2
398232402820409414
T:
rainbow1aclassic363232
438994439920441697
T:
ecdonaldp256
435932440202448517
T:
rainbow1acyclicc363232
727726734365741976
T:
donald512
758441760412763228
T:
ecdonaldp224
785899786575789918
T:
ed448goldilocks
876333?936853?1796676?
T:
pass769
110749311195861138916
T:
ronald512
133782513413031350322
T:
rainbow1a
136976413831531400828
T:
falcon512tree
763360?1431375?3152207?
T:
qtesla1
152318915315121543166mqsignlr2567246
157842815843521591235
T:
donald1024
1254065?1821525?3873442?T!!!dilithium2
1044651?2062278?2144082?
T:
pass863
211536321319132152537
T:
ronald768
216231421659052172978
T:
ecdonaldp160
219195121987282207324
T:
ecdonaldk163
222488222301032240785
T:
rainbow3cclassic683248
222517122308252238223
T:
rainbow3ccyclicc683248
1643782?2243993?3369219?
T:
qtesla3f
227635122822942291021
T:
ecdonaldb163
251292025234762532977
T:
falcon512dyn
258082525856882597279mqsignrr2567246
260499426104072628739
T:
ecdonaldp192
278510228022222817347
T:
falcon1024tree
295479229636312981439
T:
ecdonaldk233
297807129965053020534
T:
ronald1024
301995030372433060439
T:
rwb0fuz1024
304874130576453070918
T:
edons128k08n72nu8l4mu3
309639931049603120928
T:
ecdonaldb233
2042222?3245617?4581786?T!!!dilithium2aes
337421333979803425159
T:
donald2048
353494335432523563815
T:
rainbow1c
399918640084434030089
T:
rainbow4a
411615641298054136108
T:
ecdonaldp521
416776741769494188468mqsignlr25611272
3301367?4724177?6913488?T!!!dilithium3
489763949009394904986
T:
rainbow1b
3262222?4997844?7170402?
T:
qtesla1p
505095750653575074428
T:
ecdonaldk283
517568451990825211248
T:
falcon1024dyn
531277653246675330874
T:
ecdonaldb283
541424754224405429560
T:
rainbow5cclassic963664
554342855556125570538
T:
rainbow5ccyclicc963664
4148478?5743762?7459898?T!!!dilithium3aes
4059482?5903141?7913219?T!!!dilithium5
3091418?6219866?9083169?
T:
qtesla3s
649889666736316685371mqsignrr25611272
697244669887127002514
T:
edons128ref
6484320?7984783?11393778?T!!!dilithium5aes
846109684819948495362
T:
rainbow3b
874721887520588760310mqsignlr25614896
884670088954548969969
T:
ecdonaldk409
4716725?8975113?13279011?haetae2
902160790597769086003
T:
ronald1536
941954794745239501887
T:
ecdonaldb409
106245561064532610656740
T:
ecdonaldp384
7165152?13615980?20187998?haetae3
136702501369174913712261mqsignrr25614896
11844709?14189096?17266630?
T:
redgemss128
155939271562613615672569
T:
ronald2048
14145976?16317905?21427953?
T:
redgemss128v2
8837644?16781264?32766838?haetae5
186165611863346318651685
T:
ecdonaldk571
12280312?19816486?35108317?
T:
qtesla3p
200706002008856720113494
T:
ecdonaldb571
205571722058169620657938
T:
rainbow1acompres363232
260859482614703526284063picnicl1full
306248823064460930843281picnicl1fs
336325883369443933727184
T:
luov863256
427797294281139343155485picnicl1ur
446168144469088944760027
T:
ronald3072
41323604?49289745?58042040?
T:
redgemss192v2
495743504960243749998338picnicl3full
48482257?65770360?80160356?
T:
redgemss192
675113606752577067560590
T:
gravitysphincss
716040137164798972211819picnicl3fs
45089732?78886553?112715437?
T:
gui184
794564847950432180851072picnicl5full
69131358?81242755?101578599?
T:
redgemss256v2
824538168538592985873292
T:
luov4849242
958061469585736195927185
T:
sphincsf128harakasimple
970130329712964197219850
T:
ronald4096
87971696?103366717?118166283?
T:
redgemss256
105140794105196975105975542picnicl3ur
113669339113715438113766640
T:
sphincsf192harakasimple
117686821117882467118001769
T:
luov890351
121074126121196786121360354picnicl5fs
124817082124897244124998979
T:
sphincsf128harakarobust
128130315128199186128287031
T:
mqdss48
135369621135766772135937680
T:
rainbow3ccompres683248
137590184137710851138523960picnic3l1
153213713153283171153353070
T:
sphincsf192harakarobust
169527512169600912169679156picnicl5ur
207432709207686101208040376
T:
luov8117404
299287155299453079301352744picnic3l3
289189437300915564304190271
T:
luov6468330
390635426391140461391719868
T:
rainbow5ccompres963664
398677218399893135414519432
T:
mqdss64
447356828447810245449206012
T:
sphincs256
467134380469111520470597231
T:
pqrsa15
480118715481086800481793289picnic3l5
457669590?549377964?640982364?
T:
bluegemss128
468877129?562575317?840282066?
T:
bluegemss128v2
583427645583718873584520103
T:
sphincsf128shake256simple
592559552594836762599690051
T:
luov8086399
744274791744769480745318635
T:
sphincsf192shake256simple
899057391903976859904942318
T:
picnic2l1fs
105914245110598110671060556998
T:
sphincsf128shake256robust
138713421513880027021388529557
T:
sphincsf192shake256robust
163184363516322024371632661644
T:
sphincss128harakasimple
163202223416330873591634055181
T:
sphincsf256shake256simple
1422628601?1706930775?1990125735?
T:
bluegemss192v2
203703110620378633392048346826
T:
sphincsf256harakasimple
214913767521493176722149444097
T:
sphincss128harakarobust
244010822824414434182442343870
T:
picnic2l3fs
1970118897?2718074089?3107185719?
T:
bluegemss192
2308084991?2811366325?3687356475?
T:
bluegemss256v2
295095210029520505942953549426
T:
sphincsf256shake256robust
2874417593?3448897252?4024325005?
T:
gemss128
2933396286?3520215475?4106149288?
T:
gemss128v2
357243536935733988413574093266
T:
sphincsf256harakarobust
361188332136122042213612424503
T:
sphincss192harakasimple
1601034333?4005977521?6467241899?
T:
gui312
3597759892?4315766956?5733645655?
T:
bluegemss256
477270210447997701474809945851
T:
picnic2l5fs
528549590152884362745291778985
T:
sphincss192harakarobust
879703507688108090218811716270
T:
sphincss128shake256simple
136110598931361818236013646196653
T:
sphincss256shake256simple
9761878444?13662903416?15614499409?
T:
gemss192v2
156536242291565841033215667008047
T:
sphincss128shake256robust
13167188029?15799959659?18434032972?
T:
gemss192
181514841421815303549818159908445
T:
sphincss256harakasimple
184557176881846910506318510466155
T:
sphincss192shake256simple
16074147935?19295953298?28916999464?
T:
gemss256v2
243577422672439529502624423683201
T:
sphincss256shake256robust
25164593858?30197177815?35227050631?
T:
gemss256
318218856243182555277131831049845
T:
sphincss256harakarobust
321196890543212113917632122648297
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
230052400725110
T:
rwb0fuz1024
589676018561966
T:
rainbowbinary256181212
714487261075800
T:
ronald512
747087564077326
T:
ronald768
916449306794755
T:
ronald1024
936719490095865
T:
rainbow1aclassic363232
99531102549103673
T:
rainbowbinary16242020
129922131697134009
T:
ronald1536
182051183634185110
T:
ronald2048
221711224070226205
T:
falcon512tree
266578272465277850
T:
gravitysphincss
293607295249297889
T:
falcon512dyn
308645309998311995
T:
qtesla1
327304329720331709
T:
ronald3072
362014364696366896
T:
sflashv2
455207457365459398
T:
falcon1024tree
472813475004479253
T:
donald512
481486482887484767haetae2
487048492336499958
T:
rainbow3cclassic683248
528996530828533753
T:
ronald4096
540360543274546493ed25519
612817616239618687
T:
falcon1024dyn
598976621264648114
T:
gemss128
624942644110661335
T:
bluegemss128
642731659597689856
T:
gemss128v2
652513672907694203
T:
redgemss128
675572690556706147
T:
bluegemss128v2
676045695573718316
T:
redgemss128v2
709125712033715597
T:
qtesla3s
712157713916716575
T:
qtesla3f
750624752057757285
T:
rainbow1a
757445759047761717T!!!dilithium2
799632832296853298
T:
gui184
869139871510875184haetae3
104790310508841054097
T:
ecdonaldp256
108284510841261089242haetae5
113675511407641146904
T:
pass769
121813412335951259416
T:
rainbow5cclassic963664
123087812337741239225
T:
edons128k08n72nu8l4mu3
123488912379191243819T!!!dilithium3
124194612682491279708
T:
bluegemss192v2
129261512979781307065
T:
donald1024
133521013377781346044
T:
pass863
137512213780251382392T!!!dilithium2aes
143708414742681494756
T:
sphincss128harakasimple
145329914968051559070
T:
bluegemss192
150892215314941576051
T:
gemss192
149711715455051593607
T:
redgemss192
155450315584941563420
T:
ecdonaldp224
161586816442951679760
T:
gemss192v2
165845017133621857624
T:
redgemss192v2
173312917387361743507
T:
qtesla1p
198572120018172019126
T:
ecdonaldp160
204104620451942048974T!!!dilithium5
213305421566182189860
T:
sphincss192harakasimple
213744821610912207477
T:
sphincss128harakarobust
221257322158242220869
T:
edons128ref
233239023581632376105
T:
ecdonaldp192
240693824297922444722T!!!dilithium3aes
250613625100842519027mqsignrr2567246
254300525470872555907mqsignlr2567246
280979928189272829086
T:
ed448goldilocks
291139529161192924666
T:
rainbow1b
294766529509512971579
T:
rainbow1c
294861130240903122721
T:
gui312
305256830646183087158
T:
rainbow4a
303303230728903141118
T:
gemss256
307734431195303156744
T:
bluegemss256
3077770?3159257?3968107?
T:
redgemss256
312718131810503235667
T:
gemss256v2
315925832006363255021
T:
bluegemss256v2
323223732689763366035
T:
redgemss256v2
333576033871563421089
T:
sphincsf128harakasimple
339538134223363467712
T:
sphincss192harakarobust
393143039555983990786
T:
donald2048
416624441735084182157
T:
ecdonaldk163
421439542654864294496T!!!dilithium5aes
433129643459214362267
T:
ecdonaldb163
494794249990895104127
T:
sphincsf128harakarobust
524400752873895333414
T:
sphincsf192harakasimple
558438856161945637134
T:
ecdonaldk233
558939156267825669320
T:
sphincs256
584621059111825944836
T:
ecdonaldb233
627521664545766479926mqsignrr25611272
661817066252466633583mqsignlr25611272
749611075895027606895
T:
rainbow3b
805991280767108093477
T:
qtesla3p
811117881198138136575
T:
ecdonaldp521
828000182996578344513
T:
rainbow1acompres363232
823329783340698370024
T:
sphincsf192harakarobust
834123983575568396381
T:
rainbow1acyclicc363232
839350784236688482720
T:
ecdonaldp384
971628897278679753543
T:
ecdonaldk283
9595892995829510121706
T:
sphincss128shake256simple
101751511026078210292295
T:
ecdonaldb283
125463271257434512604785mqsignrr25614896
126886261269650312711706mqsignlr25614896
143539541455660514768081
T:
sphincss192shake256simple
170703381715457717205667
T:
ecdonaldk409
180603691812164418219876
T:
ecdonaldb409
185283791884742419089533
T:
sphincss256shake256simple
189573191930023519804961
T:
sphincss128shake256robust
194738041963281319673516picnicl1full
235722842370908624237772
T:
sphincsf128shake256simple
237245632385262523957506picnicl1fs
245112022471581525039126
T:
sphincss256harakasimple
279616282855070428932576
T:
sphincss192shake256robust
310931653112011031160418
T:
luov863256
333573043357500933752639picnicl1ur
358335413586590835893263
T:
ecdonaldk571
357312583624815037220172
T:
sphincss256shake256robust
375822043763039737985196picnicl3full
373604703792129438409741
T:
sphincsf192shake256simple
377397323829392838907258
T:
sphincsf256shake256simple
385894563863023438671503
T:
ecdonaldb571
450783094558249846231156
T:
sphincsf256harakasimple
459445354667971147541949
T:
sphincss256harakarobust
466764334729580047886469
T:
sphincsf128shake256robust
503930545053029050701173
T:
rainbow3ccyclicc683248
504817455057906150681824
T:
rainbow3ccompres683248
570596965712644657747648picnicl3fs
573038575825712459337818
T:
luov4849242
581219475848576458666472
T:
pqrsa15
605927626073288961945992picnicl5full
724644537367479174370803
T:
sphincsf256shake256robust
738103697442223975151463
T:
sphincsf192shake256robust
845048718466600085480282picnicl3ur
848456398566879686405608
T:
sphincsf256harakarobust
932481989439712195614163
T:
mqdss48
976517619786880098009796picnicl5fs
109354056109468559109521218
T:
luov890351
113970230114180868114415137
T:
rainbow5ccyclicc963664
114437342114839933116244835
T:
rainbow5ccompres963664
118969112119117092119922091picnic3l1
141786913142215936142384525picnicl5ur
163939944175382364178730294
T:
luov6468330
193812145193904801194018034
T:
luov8117404
254099123254446037255632873picnic3l3
294874758297199612302403873
T:
mqdss64
307547218324403157326591456
T:
luov8086399
387749506388035093389225878picnic3l5
543175820545558036546170915
T:
picnic2l1fs
123327570612346188571235243564
T:
picnic2l3fs
214508243421560835892163625625
T:
picnic2l5fs