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; Tremont (906c0); 2021 Intel Celeron N4500; 2 x 1100MHz; jasper2, 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
465646864746picnicl1full
481648945032picnic3l1
647465056544picnicl3full
667367116815picnic3l3
838884568574picnic3l5
850485538678picnicl5full
129141295213078picnicl1ur
129451299113034picnicl1fs
144281455014687
T:
picnic2l1fs
242942447124783
T:
picnic2l3fs
246402468524801picnicl3fs
246632473925030picnicl3ur
293012936329623picnicl5ur
293542940629552picnicl5fs
323193235733039
T:
picnic2l5fs
771077729277751ed25519
142146143323147061
T:
ecdonaldp256
166652167487169312
T:
donald512
284932287307290444
T:
ecdonaldp224
303944304349304888
T:
ed448goldilocks
353317354552355973
T:
pass769
356184356549357073T!!!dilithium2
428436429570432243
T:
pass863
466668468023471551
T:
donald1024
665739666846668624T!!!dilithium3
686870687647688735
T:
sphincsf128harakasimple
705048708298711790
T:
edons128k08n72nu8l4mu3
769845771917774863T!!!dilithium2aes
803927805707806840
T:
sphincsf128harakarobust
811043819161824558
T:
ecdonaldp160
919288924092931908
T:
ecdonaldk163
956886962715968274
T:
ecdonaldb163
965088968131972420
T:
ecdonaldp521
974791979508985406
T:
ecdonaldp192
99855510135891016311
T:
sphincsf192harakasimple
109327210944121095802T!!!dilithium5
122445812268851228321
T:
mqdss48
126579512675411268258
T:
sphincsf192harakarobust
126840012788981287790
T:
ecdonaldk233
689354?1286538?2180993?haetae2
129424912990661309681
T:
ecdonaldb233
140993714165171423344T!!!dilithium3aes
160373316075301626209
T:
donald2048
211065321167292124932
T:
ecdonaldk283
214811821517872193368
T:
edons128ref
220201622102832215636
T:
ecdonaldb283
235949023697262380464T!!!dilithium5aes
1171557?2621008?5999690?haetae3
283290728365622841731
T:
mqdss64
2194621?2893538?3634188?
T:
qtesla1
346619534726483483136
T:
ecdonaldk409
2203997?3542178?8009704?haetae5
364808436572203668775
T:
ecdonaldb409
373949937563893775209
T:
ecdonaldp384
4169341?6148395?8111397?
T:
qtesla3f
774109277507067784138
T:
ecdonaldk571
825538482735498286990
T:
ecdonaldb571
6707258?8879951?17451987?
T:
qtesla3s
980536298103999815209
T:
sphincsf128shake256simple
8502429?10756056?13024563?
T:
qtesla1p
119907281199643611999804
T:
sphincs256
120312871204930312103997
T:
rainbow1aclassic363232
129749331298957613085517
T:
rainbow1acyclicc363232
129842391302371813105060
T:
rainbow1acompres363232
132542191327772514051175
T:
rainbowbinary256181212
145361001454001714543981
T:
sphincsf192shake256simple
188157711882231118839645
T:
sphincsf128shake256robust
215686262157368221681247
T:
sphincss128harakasimple
16578997?24065890?32319847?
T:
rwb0fuz1024
255319122553663725550714
T:
sphincss128harakarobust
255097212710744831112858
T:
falcon512dyn
16274031?27387357?35126304?
T:
ronald512
278980572793447327958640
T:
sphincsf192shake256robust
263997882871660932763095
T:
falcon512tree
319247763194968431977164
T:
sphincss192harakasimple
347616223481800734855739
T:
luov4849242
382734073828140038297717
T:
sphincsf256shake256simple
401861654023877340273596
T:
sphincss192harakarobust
27930007?40523015?70931031?
T:
ronald768
436922154371112143912574
T:
sphincsf256harakasimple
474518354753510747590831
T:
luov863256
44787226?55943535?63569808?
T:
qtesla3p
647993306511821876270165
T:
rainbowbinary16242020
686254106872428469733712
T:
rainbow3cclassic683248
717507767175863171771482
T:
sphincsf256shake256robust
762406927638680776505218
T:
gemss128
767431357682688176903554
T:
rainbow3ccyclicc683248
766604157687161076930716
T:
rainbow3ccompres683248
778279657832259978634896
T:
bluegemss128
806793808069156080727090
T:
redgemss128
809561508096636980989611
T:
sphincsf256harakarobust
794837018463064392617427
T:
falcon1024dyn
805852178665642793709247
T:
falcon1024tree
104328461104450362104562279
T:
luov6468330
62681718?105946151?171848328?
T:
ronald1024
118664640118726521118885109
T:
gemss128v2
122230208122291435122543765
T:
bluegemss128v2
126973374127023690127072907
T:
redgemss128v2
146845373146889338147026650mqsignlr2567246
165308833165976776170371980
T:
luov890351
192117960192531230192809352
T:
luov8086399
200075599200203195200313895mqsignrr2567246
208454928208550608208669440
T:
sflashv2
159973617?221547246?385678145?
T:
ronald1536
233800468233928335234378973
T:
rainbow5cclassic963664
256398015256867298261974899
T:
rainbow5ccyclicc963664
258643145258901479259848688
T:
rainbow5ccompres963664
294251929294684793304862570
T:
luov8117404
313747138313818314313899760
T:
sphincss128shake256simple
368377616368709832369055432
T:
redgemss192v2
381434620382090236382191208
T:
gemss192
385496491385917742388351277
T:
bluegemss192
387720498387954695388341156
T:
redgemss192
463601375463682456463808331
T:
sphincss192shake256simple
302337291?532056720?964317311?
T:
ronald2048
576905066577253724590963154mqsignlr25611272
602127946602217835602412052
T:
sphincss128shake256robust
608826300608915138609672659
T:
sphincss256shake256simple
615102128615458582615686572
T:
gemss192v2
623669112623832074626624323
T:
bluegemss192v2
684185668691541810710888010
T:
gui184
697413538702346764702527640
T:
sphincss256harakasimple
777294936777499092777713618mqsignrr25611272
890210169890587925890754059
T:
sphincss192shake256robust
114835169611486117231148804143
T:
sphincss256shake256robust
115628183511624722271178560468
T:
bluegemss256
116112765011652001391172216257
T:
gemss256
118124298911816917381182026895
T:
redgemss256
120571422212060187451207059374
T:
gravitysphincss
129436050512945043211296936124
T:
sphincss256harakarobust
149515008014965511661496895898mqsignlr25614896
157425313715743607591574472071
T:
rainbow1a
196292187419652707531965633106mqsignrr25614896
1012407434?2078650142?3523834406?
T:
ronald3072
215542010721595629692161430475
T:
gemss256v2
217082355521968776922210196383
T:
bluegemss256v2
234469436123470771412348637399
T:
redgemss256v2
481676031748284950534860180686
T:
gui312
2890500512?4937875832?8128638439?
T:
ronald4096
546838628954688453665469493039
T:
rainbow1b
570934446357094714255709773884
T:
rainbow1c
560218813757586816775932839452
T:
pqrsa15
139528809031395382054513954526647
T:
rainbow4a
154570781311548989443815494222122
T:
rainbow3b
188596167291886565323718868102069
T:
gravitysphincsl
229937913542304953911723161230809
T:
gui448
377104477053771149222437737072634
T:
gravitysphincsm
576291878305764117377257683898793
T:
rainbow6a
593471982695935358241159357799204
T:
rainbow3c
Cycles to sign 59 bytes
25%50%75%system
186351882720000
T:
rainbowbinary256181212
463894725953379
T:
rainbowbinary16242020
820488209482154ed25519
101673102191102655
T:
sflashv2
125043125237125876
T:
rainbow1aclassic363232
137189138789140830
T:
rainbow1acyclicc363232
195906196228197102
T:
ecdonaldp256
284093288306290433
T:
donald512
314114315082315252
T:
ed448goldilocks
360567361233362325
T:
ecdonaldp224
421669?423713?879793?
T:
pass769
444024449964455740
T:
ronald512
586622589816595454
T:
donald1024
661390661985665354
T:
rainbow3cclassic683248
690073692673694487
T:
rainbow3ccyclicc683248
740136747870754136
T:
falcon512tree
781596783378786645
T:
rainbow1a
825822833823848216
T:
ronald768
862774868131875323
T:
ecdonaldp160
918986921071922827mqsignlr2567246
958419962229968133
T:
ecdonaldk163
9949349979051002528
T:
ecdonaldb163
513704?1022477?1571121?
T:
pass863
102497610288501039336
T:
ecdonaldp192
888723?1182669?1672357?T!!!dilithium2
121129012184441228950
T:
ronald1024
123761012453801251267
T:
falcon512dyn
128271912904531305563
T:
rwb0fuz1024
132899113345921339168
T:
ecdonaldk233
135924813622701367205
T:
ecdonaldb233
521551?1425173?2137642?
T:
qtesla1
142908014303991433223
T:
ecdonaldp521
147700514808081538025
T:
edons128k08n72nu8l4mu3
980859?1489962?2483987?
T:
qtesla3f
147675114914411504071
T:
falcon1024tree
155255615537031557781mqsignrr2567246
156263715654831567355
T:
rainbow5cclassic963664
156712215686321571168
T:
rainbow5ccyclicc963664
172446217301831732635
T:
donald2048
1202905?1904597?3080770?
T:
qtesla1p
1346159?1948270?2908140?T!!!dilithium2aes
210508421058022107621
T:
rainbow1c
222270022277682244960
T:
ecdonaldk283
231696723228912331097
T:
ecdonaldb283
1639518?2374184?2857146?T!!!dilithium3
237700523937702418121
T:
rainbow4a
249781025001312502620
T:
rainbow1b
252584125388442549889
T:
falcon1024dyn
257488925813372587300mqsignlr25611272
292744929313742936803
T:
rainbow3b
2179644?2951828?4150729?T!!!dilithium5
2139229?3099431?4084903?T!!!dilithium3aes
334667933608343384775
T:
ronald1536
2017986?3409626?7643753?
T:
qtesla3s
369151836968873710399
T:
edons128ref
371250537197593725931
T:
ecdonaldk409
387139238794993885699
T:
ecdonaldb409
391803239319363943979
T:
ecdonaldp384
401136340171144023470mqsignrr25611272
2898224?4178025?5455705?T!!!dilithium5aes
4271899?5137152?6434124?
T:
redgemss128
515834951746695183166
T:
rainbow6a
546702554772135487486mqsignlr25614896
2420769?5718337?10121125?haetae2
595128859689075991413
T:
ronald2048
5467496?6135236?6938349?
T:
redgemss128v2
3730932?7039271?10396339?haetae3
766273276691657686087
T:
rainbow1acompres363232
783769178463057855856
T:
rainbow3c
821254282337268292752
T:
ecdonaldk571
834509383613328377693mqsignrr25614896
4593220?8712666?18939051?haetae5
875541388148228985413
T:
ecdonaldb571
7139267?9971427?16346559?
T:
qtesla3p
104020171041318710431940
T:
gravitysphincss
106433661065070510653304picnicl1full
10430786?12518619?14904534?
T:
redgemss192
142423151424426414251630picnicl1fs
13530073?15643506?17744229?
T:
redgemss192v2
8208883?16425910?32857403?
T:
gui184
164623691648517716551936
T:
ronald3072
183706681847377818683689
T:
gravitysphincsm
16956427?20283582?26366333?
T:
redgemss256
205468622055302820558201picnicl1ur
215953092160424121629753picnicl3full
216068612161743321662479
T:
gravitysphincsl
243307042434362824365898
T:
sphincsf128harakasimple
261995432620802326220608
T:
luov863256
24978770?28304197?33283663?
T:
redgemss256v2
291542092920970529443319
T:
sphincsf192harakasimple
297856852983321429907023
T:
sphincsf128harakarobust
346145913462629834644237
T:
mqdss48
352622833531408235381345
T:
ronald4096
354836483548846835496748picnicl5full
364480293654551636554777picnicl3fs
383323633839606738453369
T:
sphincsf192harakarobust
470203124806144350129703
T:
rainbow3ccompres683248
524166645242677652437979picnicl3ur
52692796?54001648?76537711?picnic3l1
594892286005933461211066
T:
luov4849242
834922928350668683521324picnicl5fs
847379858474908584761730picnicl5ur
909211189095622991622084
T:
luov890351
103153659103181663103426784
T:
mqdss64
114735893115531325116436289picnic3l3
132793118138360726146122982
T:
rainbow5ccompres963664
115638403?142279369?172579083?
T:
bluegemss128v2
157558570157750208157780809
T:
luov8117404
141558807?169744804?198176345?
T:
bluegemss128
182291252183872647185807233
T:
luov6468330
186433992186479458186638856picnic3l5
224927495225034086225138790
T:
sphincs256
233242239233427682233575008
T:
pqrsa15
310003346310151296310443143
T:
sphincsf128shake256simple
342905182343846964345122032
T:
luov8086399
399075984399566536399722463
T:
sphincsf192shake256simple
403988629404095423406084155
T:
sphincss128harakasimple
458253792?459518748?611034818?
T:
bluegemss192
356279336?475226976?475394759?
T:
picnic2l1fs
407364833?488522399?571028153?
T:
bluegemss192v2
496762400496856791497026498
T:
sphincss128harakarobust
569832623572953628573322380
T:
sphincsf128shake256robust
744995051745507609746005193
T:
sphincsf192shake256robust
624649059?749645852?876794882?
T:
bluegemss256
511514098?770535941?1112762742?
T:
gui312
646174104?777685813?1027812118?
T:
bluegemss256v2
875656574875945369876224135
T:
sphincsf256shake256simple
903767093904767937905622967
T:
sphincss192harakasimple
934965663935877788936818770
T:
picnic2l3fs
875307439?1048448150?1225224887?
T:
gemss128v2
881490739?1074145597?1253488269?
T:
gemss128
119425821211950060591198147762
T:
sphincsf256harakasimple
123502440212363503601237193314
T:
sphincss192harakarobust
158820864915890202391589367731
T:
sphincsf256shake256robust
186791096218682756741868912173
T:
picnic2l5fs
213084988421312730222131899208
T:
sphincsf256harakarobust
2585707208?3107014975?4133822364?
T:
gemss192
2614390762?3263840057?3808531319?
T:
gemss192v2
467797228346789169114679745789
T:
sphincss128shake256simple
4612028032?5529839333?6462851211?
T:
gemss256v2
4591653862?6424621514?7342827896?
T:
gemss256
732731354073489472337401066728
T:
sphincss256shake256simple
838015580283806096788381665443
T:
sphincss128shake256robust
980406121398053062359811494000
T:
sphincss192shake256simple
5644372602?10161830582?14675404484?
T:
gui448
106301938701069235083910696097875
T:
sphincss256harakasimple
130827752581308674239713089009467
T:
sphincss256shake256robust
171895806581719316721017237698301
T:
sphincss192shake256robust
187301149341873902704618759910136
T:
sphincss256harakarobust
Cycles to verify 59 bytes
25%50%75%system
108621115811446
T:
rwb0fuz1024
158431614216750
T:
rainbowbinary256181212
280732850629115
T:
ronald512
323533275432989
T:
ronald768
382683864739543
T:
ronald1024
386303927241071
T:
rainbowbinary16242020
522505305254208
T:
rainbow1aclassic363232
544395482655523
T:
ronald1536
754097577176477
T:
ronald2048
740797630678708
T:
gravitysphincss
108791109930110585
T:
falcon512tree
133837135499136583
T:
falcon512dyn
134867135744136898
T:
ronald3072
137278138382140822
T:
sflashv2
188551190210191544
T:
donald512
214615215401217283
T:
ronald4096
219958220345221126
T:
qtesla1
220229221742222428
T:
falcon1024tree
231387243392253927
T:
gui184
252441253703258412
T:
rainbow3cclassic683248
261240261610262320haetae2
275002276554277695
T:
falcon1024dyn
283617284652286104ed25519
315126323952331620
T:
gemss128
322833328787333923
T:
gravitysphincsm
327785335564347665
T:
bluegemss128
341144350079357035
T:
gemss128v2
347880355604361973
T:
bluegemss128v2
374163381510386565
T:
redgemss128
402778403126403554T!!!dilithium2
402033409017417435
T:
redgemss128v2
427880428503429326
T:
qtesla3f
436949445316450924
T:
gravitysphincsl
471414472040472347haetae3
460186472217478525
T:
sphincss128harakasimple
474217476732480976
T:
donald1024
488989492297496246
T:
edons128k08n72nu8l4mu3
493655494800495923
T:
ecdonaldp256
509603510474518384
T:
rainbow1a
520498522185523597
T:
qtesla3s
542418544232546055
T:
pass769
592378593327594620haetae5
646095647652649480
T:
pass863
654783655397656194T!!!dilithium3
663725667447671998
T:
rainbow5cclassic963664
689510702718711706
T:
sphincss192harakasimple
696628725016743840
T:
gemss192
726406742835759981
T:
sphincss128harakarobust
722769743050761582
T:
bluegemss192
746986749986752598T!!!dilithium2aes
745382763658775423
T:
redgemss192
748656771191790995
T:
redgemss192v2
769647771688773730
T:
qtesla1p
824261825346826054
T:
ecdonaldp224
817157837282859582
T:
gemss192v2
815280837519853647
T:
bluegemss192v2
832441848666857553
T:
ecdonaldp160
930502932797935868
T:
edons128ref
970585978261986369
T:
ecdonaldp192
97164010084721031681
T:
gui312
106277310659741069639
T:
ed448goldilocks
108488910999211110641
T:
sphincsf128harakasimple
115535511557311157277T!!!dilithium5
118195411848381186162
T:
rainbow1b
118466111992441215286
T:
sphincss192harakarobust
130880213157871320933T!!!dilithium3aes
145962314661161473105mqsignrr2567246
152298315292711534547mqsignlr2567246
152372415566521590072
T:
gemss256
154800815613831580303
T:
donald2048
158264815978441629460
T:
bluegemss256
158967516242321650696
T:
redgemss256
159166216255891662199
T:
gemss256v2
160687716357221664682
T:
bluegemss256v2
164322416941081732442
T:
redgemss256v2
172073917336461749333
T:
sphincsf192harakasimple
176587117731671827516
T:
rainbow4a
174973717745441796925
T:
sphincsf128harakarobust
184590318531701869301
T:
ecdonaldk163
187118818724891875396
T:
rainbow1c
191266119184041924247
T:
ecdonaldb163
229903123108522319198T!!!dilithium5aes
255180925654782574890
T:
ecdonaldk233
262357426288092633592
T:
ecdonaldb233
263949226595172701630
T:
rainbow3b
273028527831202859377
T:
gui448
278435527954692807173
T:
ecdonaldp521
279218528255122861352
T:
sphincs256
291311129398532968784
T:
sphincsf192harakarobust
319817632126573223759
T:
ecdonaldp384
371734437239793731137
T:
rainbow1acompres363232
372530838018474243277
T:
rainbow1acyclicc363232
383357838442133856320
T:
qtesla3p
388783638919963901523mqsignrr25611272
388824338939263900473mqsignlr25611272
431339943182954325685
T:
ecdonaldk283
450500445143334523823
T:
ecdonaldb283
455439245702074582761
T:
rainbow6a
509197853108015436528
T:
sphincss128shake256simple
686446668815346909770
T:
rainbow3c
721056572232737242830
T:
ecdonaldk409
752767175415297563967
T:
ecdonaldb409
756151776782987837326
T:
sphincss192shake256simple
780305478131407827012mqsignrr25614896
781053678151637822108mqsignlr25614896
795030279561438183971picnicl1full
98839361009164110213703
T:
sphincss256shake256simple
100267881023445810413017
T:
sphincss128shake256robust
111687441118849911398940picnicl1fs
124310101259136312781983
T:
sphincsf128shake256simple
144549791464101514818036
T:
sphincss256harakasimple
150956171546115015621437
T:
sphincss192shake256robust
159690671600322616043538
T:
ecdonaldk571
165916521659901516623321picnicl3full
166660821668209617019633picnicl1ur
170536281712219617409739
T:
ecdonaldb571
192425621962228019808740
T:
sphincss256shake256robust
200965262039126120667578
T:
sphincsf256shake256simple
202117462043822120603802
T:
sphincsf192shake256simple
224604252314028425444971
T:
rainbow3ccompres683248
246602102466266724664216
T:
luov863256
244962952469738924880822
T:
mqdss48
248844042510264725422914
T:
sphincsf128shake256robust
270155782703504627339849picnicl5full
267917942713083127364318
T:
sphincsf256harakasimple
269816622733023827663142
T:
sphincss256harakarobust
224954332801218728090291
T:
rainbow3ccyclicc683248
300739973016491730187844picnicl3fs
388447213953298739974004
T:
sphincsf256shake256robust
395505984013945040454526
T:
sphincsf192shake256robust
439137984411613044268409picnicl3ur
449785364509179745219118
T:
luov4849242
44317029?45614754?65354133?picnic3l1
505138225095690851529298
T:
sphincsf256harakarobust
522584685233283652503330
T:
pqrsa15
532107085876740859317832
T:
rainbow5ccompres963664
558626336012889164993689
T:
rainbow5ccyclicc963664
648811016499669165125672picnicl5fs
735102087394358274125376picnicl5ur
741816697514005675918944
T:
mqdss64
865311508653464887343448
T:
luov890351
975099199800577899072725picnic3l3
122671593122703710122752966
T:
luov6468330
150743221150765319150846458
T:
luov8117404
150894253151088392152113315picnic3l5
227000870227092569227592337
T:
luov8086399
213733152?314768770?314980869?
T:
picnic2l1fs
455238842456176167457004474
T:
picnic2l3fs
792737814793082538793722801
T:
picnic2l5fs