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; Goldmont (506c9); 2016 Intel Celeron J3455; 4 x 1500MHz; wooden, supercop-20240425

[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, rainbowbinary16242020

Cycles to generate a key pair
25%50%75%system
847885108536picnicl1full
850285548628picnic3l1
117101173211750picnic3l3
119581197411996picnicl3full
155401557015628picnic3l5
155621559815646picnicl1ur
156021562215680picnicl1fs
160701615816350picnicl5full
193661943419500
T:
picnic2l1fs
307723081230962picnicl3ur
308223085231170picnicl3fs
387423891439034
T:
picnic2l3fs
389123898239074picnicl5ur
389523901439570picnicl5fs
460524611446654
T:
picnic2l5fs
910009111893406ed25519
208754210290211502
T:
ecdonaldp256
244312245458253056
T:
donald512
354694354974355408
T:
ed448goldilocks
375932376366381780
T:
ecdonaldp224
476274477852479698dilithium2
545116547476551404
T:
pass769
648928652976667932
T:
donald1024
669088671360683654
T:
pass863
869736871742888712dilithium3
959712965376984572dilithium2aes
99951610053161039550
T:
edons128k08n72nu8l4mu3
108768210898361118400
T:
sphincsf128harakasimple
122092612313001258318
T:
ecdonaldp160
128277612868201322988
T:
ecdonaldp521
135271813568981426092dilithium5
135634813579001393186
T:
sphincsf128harakarobust
140364814179061475914
T:
ecdonaldk163
143410614477341469578
T:
ecdonaldb163
145215214610541490534
T:
ecdonaldp192
159109815958681622916
T:
sphincsf192harakasimple
158808615963181638378
T:
mqdss48
166209416717361701486dilithium3aes
182922418525901895188
T:
ecdonaldk233
188147218915241926414
T:
ecdonaldb233
211638621252362156036
T:
sphincsf192harakarobust
218724022109842265860
T:
donald2048
278693428011622839638dilithium5aes
2189008?2854932?3603030?
T:
qtesla1
301903230396043088246
T:
edons128ref
329666033228663359660
T:
ecdonaldk283
345790235068283559990
T:
ecdonaldb283
375614837686143806216
T:
mqdss64
4407092?4528374?8537094?
T:
qtesla3f
549345855336605596000
T:
ecdonaldk409
558760256164025651828
T:
ecdonaldp384
589221659163525954546
T:
ecdonaldb409
936002095936389799886
T:
3icp
7418502?10051042?14653882?
T:
qtesla3s
10611472?10724682?13513192?
T:
qtesla1p
121719761221084212251278
T:
ecdonaldk571
126629501269436612754136
T:
sphincsf128shake256simple
130712941314462813214006
T:
ecdonaldb571
132792381332651213425250
T:
sphincs256
167604381684221016902782
T:
rainbow1aclassic363232
176621521774699217800260
T:
rainbow1acompres363232
178119121786661217995252
T:
rainbow1acyclicc363232
186757581871282818765638
T:
sphincsf192shake256simple
196565101972927619771074
T:
rainbowbinary256181212
243400082438522224417126
T:
sphincsf128shake256robust
18310684?25766176?41286206?
T:
ronald512
19662902?27350644?38625190?
T:
rwb0fuz1024
29199634?32313940?36653712?
T:
falcon512dyn
300371983294182036855096
T:
falcon512tree
346425583470766234832450
T:
sphincss128harakasimple
359848743605164236090068
T:
sphincsf192shake256robust
402136804039459040602764
T:
luov4849242
433129104338512643493420
T:
sphincss128harakarobust
448514284506861445330362
T:
tts6440
488926504892586449003374
T:
sphincsf256harakasimple
488669084893448049026704
T:
sphincsf256shake256simple
509762345104797051121752
T:
sphincss192harakasimple
552911485544885255544534
T:
luov863256
27809248?57036534?78794038?
T:
ronald768
53926456?63082538?89956274?
T:
qtesla3p
678101046795931468031388
T:
sphincss192harakarobust
927651449284168692969936
T:
sphincsf256shake256robust
932138969326827293382022
T:
sphincsf256harakarobust
8876468693386376104008128
T:
falcon1024tree
8893723095612426102520380
T:
falcon1024dyn
65077390?102902678?159024128?
T:
ronald1024
102914680103246152104924096
T:
rainbow5640
104673076104888530105454540
T:
rainbow3cclassic683248
107803008108076458108427662
T:
rainbow3ccompres683248
111513766111748502112102954
T:
gemss128
111645808112114678112375268
T:
redgemss128
112283260112541366113183998
T:
redgemss128v2
113280614113451006113930260
T:
bluegemss128v2
113398140113734254114397308
T:
bluegemss128
115083008115537124115791920
T:
rainbow3ccyclicc683248
123900892124040588124208296
T:
luov6468330
156887238157180084157500982
T:
gemss128v2
200026872200185322200351124
T:
luov890351
226643372226707774227079888
T:
luov8086399
229994898230607262230965062
T:
rainbow6440
176050176?290190392?566994730?
T:
ronald1536
332339724332468038332779526
T:
sflashv2
334103662334782426335422212
T:
rainbow5cclassic963664
348464044348791384349463710
T:
rainbow5ccompres963664
350583036351457824351988922
T:
rainbow5ccyclicc963664
354873728355067842355567404
T:
luov8117404
406203222406400296406651626
T:
sphincss128shake256simple
601392024601885548602314992
T:
sphincss192shake256simple
624225902625445974627527820
T:
redgemss192v2
630988636632428932634560482
T:
gemss192v2
633910254634563358636492996
T:
redgemss192
633728498635155198637562128
T:
bluegemss192v2
652632424653283898654866280
T:
bluegemss192
658399992659163838660061980
T:
gemss192
497862122?718738704?1057570552?
T:
ronald2048
780601168781543620782026774
T:
sphincss256harakasimple
782538658782952666783285830
T:
sphincss128shake256robust
784196800784747252785210724
T:
sphincss256shake256simple
875048344878116212888298476
T:
gui184
115483886811553853061156376910
T:
sphincss192shake256robust
148683512814881167321488805410
T:
sphincss256shake256robust
148964046014901910861490825642
T:
sphincss256harakarobust
183794590018394905121841431332
T:
redgemss256v2
185564698418604548021863348270
T:
redgemss256
190994582219111052641914314298
T:
bluegemss256
192532487419291210661933764696
T:
gemss256
197427514219785559321980138716
T:
rainbow1a
1017394062?2253607742?3432207360?
T:
ronald3072
257659756025770896782577699700
T:
gravitysphincss
266957524426719586322676189614
T:
bluegemss256v2
277722794627793428702781060118
T:
gemss256v2
627183374662752232586278478384
T:
rainbow1c
670518342267115444586714714790
T:
rainbow1b
677982373669664990267114604454
T:
pqrsa15
4183428864?7336603146?11496434750?
T:
ronald4096
863548167086783318128719961540
T:
gui312
164965024701653782898416557704228
T:
rainbow4a
174859661261750527437817584202188
T:
rainbow3b
390031427183901332503239017775146
T:
gravitysphincsl
661919232706622072692666333013592
T:
rainbow3c
715064592567153644831871613931808
T:
rainbow6a
780049715607801893516478033716142
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
269462762428164
T:
rainbowbinary256181212
435804568646560
T:
tts6440
966589737899336ed25519
97814100422109202
T:
rainbow5640
170898171858175850
T:
rainbow6440
171808172720185704
T:
rainbow1aclassic363232
185934187680210168
T:
rainbow1acyclicc363232
186578188126189362
T:
sflashv2
281180282448284776
T:
ecdonaldp256
366154366952368986
T:
ed448goldilocks
252890?400222?714280?
T:
3icp
434864438446442498
T:
donald512
493444494672499138
T:
ecdonaldp224
656662668070686616
T:
ronald512
679646?719492?1387072?
T:
pass769
839912845260861100
T:
donald1024
873898880660924170
T:
rainbow3cclassic683248
884996898956927474
T:
falcon512tree
617874?899166?2049326?
T:
qtesla1
916554920532936218
T:
rainbow1a
934162938590949596
T:
rainbow3ccyclicc683248
119348612048781225080
T:
ronald768
128518013020261317386
T:
ecdonaldp160
146989814761161507804
T:
ecdonaldk163
150913015130441542598
T:
ecdonaldb163
152994015327201567710
T:
ecdonaldp192
153333215478601565956
T:
rwb0fuz1024
156867215810321595684
T:
falcon512dyn
837810?1639886?1694608?
T:
pass863
166741616777501709312
T:
ronald1024
1017558?1691280?2693680?dilithium2
180235418215721880760
T:
falcon1024tree
191332019183922020256
T:
rainbow5cclassic963664
191131419335302015146
T:
rainbow5ccyclicc963664
849342?1934962?3101824?
T:
qtesla3f
193200019474261970612
T:
ecdonaldk233
196596019780722000184
T:
ecdonaldp521
198539619994822022504
T:
ecdonaldb233
203852020623542133392
T:
edons128k08n72nu8l4mu3
1814924?2319442?3507298?dilithium2aes
235399423688382393322
T:
rainbow1c
238061023994742422960
T:
donald2048
1942908?2415914?3929662?dilithium3
280346428592682944572
T:
rainbow4a
297141229956203035470
T:
rainbow1b
323137232529863273020
T:
falcon1024dyn
348586035024723528470
T:
ecdonaldk283
345661035202863542028
T:
rainbow3b
2310966?3536966?5544070?
T:
qtesla1p
1303690?3558280?5889484?
T:
qtesla3s
362356636506343691628
T:
ecdonaldb283
2821068?3831922?6083790?dilithium5
463963446633284727338
T:
edons128ref
3008396?4665922?6561088?dilithium3aes
468887847241164748726
T:
ronald1536
3799550?5713112?7366078?dilithium5aes
584483258528845900168
T:
ecdonaldp384
586906059125505951482
T:
ecdonaldk409
603062260481966128312
T:
rainbow6a
623766062567246280260
T:
ecdonaldb409
6532390?7851576?9630690?
T:
redgemss128
803485080672148104396
T:
ronald2048
862841686601088719236
T:
rainbow3c
8337702?9716414?11756726?
T:
redgemss128v2
6904618?10511460?17888070?
T:
qtesla3p
106601321070392210733538
T:
rainbow1acompres363232
128831941291697012937174
T:
ecdonaldk571
138689041389847213947798
T:
ecdonaldb571
143903301444215214502626picnicl1full
178479021790866617980866picnicl1fs
212937702137004821457636
T:
gravitysphincss
224074362248111822573022
T:
ronald3072
20962230?25123312?28799392?
T:
redgemss192
22001886?25535278?31732098?
T:
redgemss192v2
257055602578687825852442picnicl1ur
287683562884310428900622picnicl3full
311106363116357031255678
T:
luov863256
378372503791733838005814
T:
gravitysphincsm
392751583932682639449464
T:
sphincsf128harakasimple
439046404396681244041834picnicl3fs
36982212?44389768?51257244?
T:
redgemss256
22425670?44441520?80096314?
T:
gui184
447123564480279444923818
T:
gravitysphincsl
40615718?45128048?55056768?
T:
redgemss256v2
460582424637681646472454
T:
mqdss48
473205564737470247459654
T:
sphincsf192harakasimple
475790004764440047739260picnicl5full
480814124818380248268802
T:
ronald4096
506863565078397250861932
T:
sphincsf128harakarobust
649161546502218265218708
T:
sphincsf192harakarobust
651972626531031065417456picnicl3ur
670424326727756667577912picnic3l1
674335566755711467669130
T:
rainbow3ccompres683248
742823087436379074485422picnicl5fs
804195588065657080791318
T:
luov4849242
106596128106760262106893116picnicl5ur
107816874107894358108012238
T:
luov890351
143394734144377534144837594
T:
mqdss64
146640048147137758148116886picnic3l3
184194286184466050184664090
T:
rainbow5ccompres963664
187278344187464344187710148
T:
luov8117404
241871964242076728242299184
T:
pqrsa15
249020404?250564520?348438766?
T:
bluegemss128v2
251196592251651784252507408picnic3l5
253225864253491288261725346
T:
sphincs256
259129200260252870261389088
T:
luov6468330
250934332?300443726?351861622?
T:
bluegemss128
401989900402356228402701624
T:
sphincsf128shake256simple
473859242474266276475315742
T:
picnic2l1fs
486356016488218058490160490
T:
luov8086399
511537376511902486512451366
T:
sphincsf192shake256simple
652039660652488336653675106
T:
sphincss128harakasimple
732869528733521454734174786
T:
sphincsf128shake256robust
847543994848183980848835868
T:
sphincss128harakarobust
711879780?852574410?994206242?
T:
bluegemss192v2
962378636963084650963751424
T:
sphincsf192shake256robust
891605100?1070173264?1252554868?
T:
bluegemss192
112258521611228839661123629554
T:
sphincsf256shake256simple
711015652?1242766772?2303532590?
T:
gui312
130803413213115690081314039198
T:
picnic2l3fs
134045626413408538181341157430
T:
sphincsf256harakasimple
1190117792?1425455318?1662711962?
T:
bluegemss256v2
145458551614551014581455849210
T:
sphincss192harakasimple
1565397394?1569769558?2193145022?
T:
gemss128v2
1539343768?1846663202?2155754070?
T:
bluegemss256
1583955828?1898798356?2214728664?
T:
gemss128
205554369420563992722057443764
T:
sphincsf256shake256robust
210020610221012668022102210846
T:
sphincss192harakarobust
243419882624353083662436199898
T:
sphincsf256harakarobust
263748681426392479662640678690
T:
picnic2l5fs
4664036840?5598481248?7462704558?
T:
gemss192v2
4731653548?5907059182?8257582606?
T:
gemss192
606589298860679235446069282786
T:
sphincss128shake256simple
937436719693783492869384731242
T:
sphincss256shake256simple
8314745350?9970110242?11635065138?
T:
gemss256v2
108770230561088001506410882103660
T:
sphincss128shake256robust
119424371181195412318411957325136
T:
sphincss256harakasimple
127638399901276735723612770229976
T:
sphincss192shake256simple
10778863080?12925439566?15075478122?
T:
gemss256
169501120661695463012616960917440
T:
sphincss256shake256robust
213428320162137816815621384740818
T:
sphincss256harakarobust
222797812382228561487422294118330
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
136681381614184
T:
rwb0fuz1024
232502389224466
T:
rainbowbinary256181212
356383611236492
T:
3icp
431764513246740
T:
ronald512
483824924849974
T:
ronald768
531665381654928
T:
rainbow5640
572565820260156
T:
ronald1024
652906633268408
T:
tts6440
671846811868994
T:
rainbow1aclassic363232
663166850469678
T:
rainbow6440
769887775679026
T:
ronald1536
104930105796107466
T:
ronald2048
132190133688135164
T:
falcon512tree
150002151066152822
T:
sflashv2
163796166004168872
T:
falcon512dyn
163148166616169978
T:
gravitysphincss
181450182692185000
T:
ronald3072
224746226046229280
T:
qtesla1
267082268150269444
T:
falcon1024tree
271084273750277998
T:
donald512
284206285608286888
T:
ronald4096
332396334846336342
T:
falcon1024dyn
342302344902347008ed25519
350908352758355318
T:
rainbow3cclassic683248
357664367718384032
T:
gemss128
367588381750393132
T:
bluegemss128
376772386466397576
T:
bluegemss128v2
388146396600412324
T:
gui184
384158399718408796
T:
redgemss128
395448407128420122
T:
redgemss128v2
499562501172504794
T:
qtesla3f
506004514670523774
T:
gemss128v2
542766543468546908dilithium2
544262547142550806
T:
rainbow1a
561122563708567070
T:
qtesla3s
557668571090581242
T:
gravitysphincsm
631038634830648528
T:
ecdonaldp256
653200659858670012
T:
donald1024
735778744962757288
T:
gravitysphincsl
844252847116850148
T:
pass769
847610851080866004
T:
edons128k08n72nu8l4mu3
874362875426890096dilithium3
909376927728943134
T:
sphincss128harakasimple
948862957364974006dilithium2aes
9436629621941045466
T:
rainbow5cclassic963664
100018410047141037450
T:
ecdonaldp224
101038410151181026802
T:
pass863
99851210338881090638
T:
gemss192v2
102967810366141060596
T:
qtesla1p
101992410610161115196
T:
redgemss192v2
102893410644721110788
T:
bluegemss192v2
111038811368421213046
T:
gemss192
114234211767081201560
T:
bluegemss192
116110412072601240136
T:
redgemss192
122739612336401243418
T:
ed448goldilocks
122375212340941246632
T:
ecdonaldp160
135104813713861391770
T:
sphincss192harakasimple
139000013952681414062
T:
edons128ref
137359014032541433370
T:
sphincss128harakarobust
140820014165161452830
T:
rainbow1b
142029614321901448858
T:
ecdonaldp192
144238414453501471508dilithium5
159053816006541628358dilithium3aes
156077416039381651930
T:
gui312
203814620574182106468
T:
rainbow1c
207526420782742167902
T:
rainbow4a
210299021422902185648
T:
sphincsf128harakasimple
212353821458562169990
T:
donald2048
222935022702502295834
T:
sphincss192harakarobust
242711825127742584676
T:
gemss256
247335825647322622828
T:
bluegemss256
250404025944582650326
T:
redgemss256
257737826572442706842
T:
redgemss256v2
261682027421562775592
T:
bluegemss256v2
275231427659442795814dilithium5aes
271947628076842859948
T:
gemss256v2
279635828310902852072
T:
ecdonaldk163
289349629123762952978
T:
ecdonaldb163
300057030730003110518
T:
rainbow3b
323654032624043304666
T:
sphincs256
327654433198303370320
T:
sphincsf128harakarobust
334363833817103411190
T:
sphincsf192harakasimple
371774637409723757082
T:
ecdonaldk233
374262237538623789888
T:
ecdonaldp521
383808638543863884872
T:
ecdonaldb233
470152447265364770768
T:
ecdonaldp384
482702249362844962740
T:
rainbow6a
509908651099445131638
T:
rainbow1acompres363232
510486651308445157646
T:
rainbow1acyclicc363232
511238451361305164864
T:
qtesla3p
545989455132105555710
T:
sphincsf192harakarobust
667648467239746761810
T:
ecdonaldk283
663404667777726944208
T:
sphincss128shake256simple
705924871116487170552
T:
ecdonaldb283
750162675115047567588
T:
rainbow3c
98479221001384610167246
T:
sphincss192shake256simple
109001021102203211114942picnicl1full
113983421143687411458788
T:
ecdonaldk409
120600901215160412235828
T:
ecdonaldb409
128312221299799213172984
T:
sphincss256shake256simple
131143521348559213852210
T:
sphincss128shake256robust
143238941439893414540884picnicl1fs
160615481629905616724872
T:
sphincsf128shake256simple
161489301629939216522774
T:
sphincss256harakasimple
194874101969437019967638
T:
sphincss192shake256robust
211761562127610821464632picnicl1ur
224918262260634022719174picnicl3full
250865102513808825221020
T:
ecdonaldk571
249133002538057425853282
T:
sphincss256shake256robust
257775822614722026437370
T:
sphincsf192shake256simple
258831282627011226615630
T:
sphincsf256shake256simple
269195762696801827052972
T:
ecdonaldb571
290952482915979629213810
T:
luov863256
298005223006686630397640
T:
sphincsf256harakasimple
307688003088769830960498
T:
rainbow3ccyclicc683248
307619943119552431505494
T:
sphincss256harakarobust
312231103126580031371144
T:
rainbow3ccompres683248
320013023254910032901770
T:
sphincsf128shake256robust
328681583328498033941578
T:
mqdss48
364876043670759236819192picnicl3fs
373616103755564037739734picnicl5full
417894244192546842026806
T:
pqrsa15
510500245146467651855434
T:
sphincsf256shake256robust
510009365146975251979428
T:
sphincsf192shake256robust
525952865272307852816778
T:
luov4849242
552022845535077655471478picnicl3ur
566567925694789857133684picnic3l1
577060285827591859135746
T:
sphincsf256harakarobust
618358126202300062291932picnicl5fs
697043706981161469999996
T:
rainbow5ccyclicc963664
705879867073505470844024
T:
rainbow5ccompres963664
904958729088288890984270picnicl5ur
102383452102424908102504704
T:
luov890351
103547868104638372105414774
T:
mqdss64
123625254124138998125448206picnic3l3
148445036148819560149420074
T:
luov6468330
178944498179065786179184610
T:
luov8117404
198641848198954084200057556picnic3l5
267186190267618186268128950
T:
picnic2l1fs
288921144290014180290661544
T:
luov8086399
603009018605871038606478670
T:
picnic2l3fs
104059901210410805841042191630
T:
picnic2l5fs