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-A53 (410fd034); 2018 Broadcom BCM2837B0; 4 x 1400MHz; pi3bplus, supercop-20241022

[Page version: 20241120 00:41:17]

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
176271777920863picnic3l1
17486?18288?24560?picnicl1full
23890?27984?43560?picnicl1fs
24078?28014?49474?picnicl1ur
293962957029791
T:
picnic2l1fs
25519?29571?48244?picnicl3full
25209?30135?58329?picnic3l3
33144?38066?69065?picnicl5full
33743?40264?65653?picnic3l5
618806212065483
T:
picnic2l3fs
66028?91412?147633?picnicl3ur
68978?109715?226660?picnicl3fs
112141?157698?339070?picnicl5ur
118196?158912?263106?picnicl5fs
170354171570173328aimer128s
169168171586174786aimer128f
214892216827220063ed25519
436251438625440844aimer192f
437085438655440258aimer192s
671106672477686868dilithium2
108242010884391099667aimer256f
108231210895991102703aimer256s
113706711411121155046T!!!dilithium3
170763317203751731332T!!!dilithium2aes
179753818021841807497dilithium5
185097118598681892302
T:
mqdss48
195307519662582010107
T:
donald1024
1780637?2769897?6215688?haetae5
2263136?2938866?4102760?
T:
qtesla1
304031630544633064905T!!!dilithium3aes
428872542933194300730
T:
mqdss64
1914576?4769538?6536157?haetae2
2659567?5028087?7413485?haetae3
515843951800845204220T!!!dilithium5aes
4530295?6518547?8572567?
T:
qtesla3f
680487768260696884248
T:
donald2048
4601337?8355142?12321360?
T:
qtesla3s
9216239?10607780?14403868?
T:
qtesla1p
135131561351653213537399
T:
sphincsf128shake256simple
151383091514711415157170
T:
sphincsf128harakasimple
170843631709407417106717
T:
sphincs256
198349181984160919858148
T:
sphincsf192shake256simple
233485732336910923398115
T:
sphincsf192harakasimple
242363562424981024260431
T:
sphincsf128shake256robust
281299722815121628180732
T:
sphincsf128harakarobust
356961803572517035749922
T:
sphincsf192shake256robust
396506103966165439689801
T:
sphincsf192harakarobust
414787204152811841582484
T:
luov4849242
36197784?44402454?76016206?
T:
ronald512
40849126?44725885?56490804?
T:
falcon512tree
43605694?46434198?54680944?
T:
falcon512dyn
521566665217744952212593
T:
sphincsf256shake256simple
44572964?52318624?67762601?
T:
qtesla3p
536944785403069054305636
T:
luov863256
619448556197010561992332
T:
sphincsf256harakasimple
49677806?72379447?103672748?
T:
rwb0fuz1024
947844609480354294812900
T:
sphincsf256shake256robust
100106044100255744100347750
T:
rainbow1aclassic363232
105532240105573085105594433
T:
sphincsf256harakarobust
116427378116470216116681262
T:
rainbow1acompres363232
116616890116693454116740304
T:
rainbow1acyclicc363232
118311647124686824135174047
T:
falcon1024dyn
119312694126232283141973913
T:
falcon1024tree
141645591141888574142087041
T:
luov6468330
124072917?179513472?255705824?
T:
ronald768
213592935214859139216313987
T:
luov890351
253026879255130541256066142
T:
luov8086399
176146678?256321589?363361167?
T:
ronald1024
298312844298428342298538902mqsignlr2567246
367946388368053200368130646mqsignrr2567246
379239975380700324382697648
T:
luov8117404
413755129413842252414358672
T:
sphincss128shake256simple
481197693481413465481458576
T:
sphincss128harakasimple
634537282635125516635226755
T:
sphincss192shake256simple
631588142?771460726?1251320387?
T:
ronald1536
798379473798502832798698828
T:
sphincss256shake256simple
811642156811864402811942856
T:
sphincss128shake256robust
855093720855189023855256357
T:
sphincss128harakarobust
873813447874254798875420310
T:
rainbow3cclassic683248
883676702917873734925003846
T:
sflashv2
946299355946377804946407725
T:
sphincss256harakasimple
112868395211293404531130117800
T:
rainbow3ccyclicc683248
113269160211338096581134105030
T:
rainbow3ccompres683248
130424302613631880631374477768
T:
redgemss128v2
141981944014220265581423588825mqsignlr25611272
168562276116859658961686924505mqsignrr25611272
1368257553?1906022669?3124422476?
T:
ronald2048
231469379223159224192318035644
T:
rainbow5cclassic963664
245989423024635405562469231403
T:
redgemss128
305554772730582143553061219879
T:
rainbow5ccyclicc963664
306340408930651178323070514055
T:
rainbow5ccompres963664
349947851535087720443718393471
T:
bluegemss128
409601780540967440684098542477mqsignlr25614896
471895941147204924874721551050mqsignrr25614896
683628919368372367446839053090
T:
redgemss192v2
5665923129?8946852539?14862152829?
T:
ronald3072
964552732996566126979665850400
T:
redgemss192
129344368081355808434613577659681
T:
bluegemss192
156425610821613196385216561555030
T:
pqrsa15
11450953630?16255399883?28140370432?
T:
ronald4096
249353531922635323552526403594580
T:
redgemss256
Cycles to sign 59 bytes
25%50%75%system
223519?228746?346726?ed25519
271588?278314?468358?
T:
sflashv2
628580633202663764
T:
rainbow1aclassic363232
629763635886666443
T:
rainbow1acyclicc363232
117484112080121227763
T:
ronald512
120216512291251257323
T:
falcon512tree
145676814722921493030
T:
donald1024
199346420033802024309
T:
falcon512dyn
1050344?2305241?3572727?
T:
qtesla1
239268723998742409459mqsignlr2567246
231697624000302444581
T:
ronald768
249259225143472543803
T:
falcon1024tree
2177968?3110599?5900962?dilithium2
335879635103523628092
T:
ronald1024
373669237497963766977mqsignrr2567246
377397539357613957041
T:
rwb0fuz1024
410450241217564138060
T:
falcon1024dyn
420103442177084252027
T:
donald2048
442136644312024446036
T:
rainbow3ccyclicc683248
442286444389074455324
T:
rainbow3cclassic683248
2746247?4573587?7605843?
T:
qtesla3f
3356914?5086479?7424698?T!!!dilithium3
4159877?5271285?6769007?T!!!dilithium2aes
3135961?5294589?11527616?
T:
qtesla3s
4614187?5948444?10113299?dilithium5
2690511?6308614?9787802?
T:
qtesla1p
5496735?6820068?11644796?T!!!dilithium3aes
799766780115588039647mqsignlr25611272
862962487063949123007
T:
ronald1536
908718990981799109917aimer128f
4870106?9171129?20042742?haetae2
934542493583769390228
T:
rainbow5ccyclicc963664
934943493605549391114
T:
rainbow5cclassic963664
8332708?10171502?13758508?T!!!dilithium5aes
7352126?12183264?23749192?haetae3
123562641237260412397060mqsignrr25611272
151530401524126915843262
T:
ronald2048
183700581840106618419520mqsignlr25614896
11418578?20708770?35530723?
T:
qtesla3p
9006401?21189097?33320272?haetae5
218713002190377222211922aimer192f
284220042844816028493378mqsignrr25614896
340959103421506234406032
T:
luov863256
401935114021567940251162picnicl1full
409781974107129841312372
T:
ronald3072
431990244323654043281460picnicl1fs
477857404815104848224750aimer256f
612991066136821261444322picnicl1ur
652765136553205765603877
T:
mqdss48
64591397?68541142?86768106?
T:
redgemss128
722019347228933872357598aimer128s
788749687893299078978400picnicl3full
871649558750188291480892
T:
ronald4096
882659548835525488433144
T:
rainbow1acompres363232
102956678103324143103983445
T:
luov4849242
109232974109290306109330364picnicl3fs
122927106123634115124406100
T:
luov890351
126360058126430630126488442picnicl5full
129133297?156752706?185829887?
T:
redgemss192
160958542161027960161103166picnicl3ur
170236366171415918172719716aimer192s
184902084184981358185048364picnicl5fs
173878485?190308366?245362650?
T:
redgemss256
193419506193620052193714600picnic3l1
198821293199834994201349479
T:
mqdss64
215977622216946026218078275
T:
luov8117404
258524548258603470258693386picnicl5ur
323549656323621989323676188
T:
sphincs256
361112954361853923362388530aimer256s
426730132426968199427336018
T:
sphincsf128shake256simple
438774344438859704438933559picnic3l3
438570975445536717492778128
T:
luov6468330
541467402541893561542300112
T:
sphincsf192shake256simple
557522411557788347558038965
T:
sphincsf128harakasimple
583018669583778915584382813
T:
pqrsa15
680062828680414123681088923
T:
sphincsf192harakasimple
706722638706941650707210720picnic3l5
730817645731583375732389838
T:
sphincsf128shake256robust
797886272798306266798849872
T:
rainbow3ccompres683248
809934608867056908890949269
T:
luov8086399
842538146?901703966?1179588797?
T:
redgemss128v2
954681456955204992956075058
T:
sphincsf192shake256robust
986828872987431865988076701
T:
sphincsf128harakarobust
115315284611536418941154554210
T:
sphincsf192harakarobust
119444974411952052751196143294
T:
sphincsf256shake256simple
144690070614476094201448243801
T:
picnic2l1fs
167727102716782808571678949502
T:
sphincsf256harakasimple
209402123820966170752098656334
T:
rainbow5ccompres963664
210376579521046970852105213037
T:
sphincsf256shake256robust
278134244127823218552783249370
T:
sphincsf256harakarobust
2868764646?2975689623?4030066062?
T:
redgemss192v2
3012209072?3266509532?4228032345?
T:
bluegemss128
401214459540161428474228805460
T:
picnic2l3fs
615215699661530555586153356293
T:
sphincss128shake256simple
893930465689447923638945292432
T:
sphincss128harakasimple
7669846846?9077545271?10532667955?
T:
bluegemss192
952807374895325621059533137716
T:
sphincss256shake256simple
113209143121132320524611324239386
T:
sphincss128shake256robust
134372472551343993013413444116382
T:
sphincss192shake256simple
142445926401425763761614258704315
T:
sphincss256harakasimple
148311934351483207104814832779805
T:
sphincss128harakarobust
Cycles to verify 59 bytes
25%50%75%system
21163?21952?29428?
T:
rwb0fuz1024
102405?122096?180067?
T:
ronald768
112380?122311?236529?
T:
ronald1024
92743?124499?192536?
T:
ronald512
156849?158152?216561?
T:
falcon512tree
152501?163317?296706?
T:
ronald1536
191392193679238601
T:
falcon512dyn
170789?201707?256410?
T:
rainbow1aclassic363232
205019?216886?332855?
T:
ronald2048
314592317549368533
T:
falcon1024tree
346935360756419865
T:
ronald3072
388222389713437325
T:
falcon1024dyn
385579390099428042
T:
qtesla1
452539461893495136
T:
sflashv2
528261529952555518haetae2
544429573799605568
T:
ronald4096
552624?587752?860611?
T:
redgemss128v2
624964631134642873ed25519
825814829196846065dilithium2
822556846834887892
T:
rainbow3cclassic683248
906926913822924674haetae3
887267917556936339
T:
qtesla3s
921896931266954112
T:
qtesla3f
107942110957931100499haetae5
118022511922391221074
T:
donald1024
128846913005461307292T!!!dilithium3
161341816788121804736
T:
redgemss192v2
173115917423861747819T!!!dilithium2aes
204362720468682052617dilithium5
171584220524692085033
T:
rainbow5cclassic963664
216631422705952289271
T:
qtesla1p
298466629968273004517T!!!dilithium3aes
365364536638193674399mqsignlr2567246
369546937012853717921mqsignrr2567246
382717338680183902748
T:
donald2048
399514040394214100054
T:
sphincs256
516485451898075207900T!!!dilithium5aes
675242668985617116026
T:
sphincss128shake256simple
848610984972498550883aimer128f
943052596680069812507
T:
sphincss128harakasimple
931005297978289936993
T:
qtesla3p
104233881058295110730439
T:
sphincss192shake256simple
115142301152245811542338mqsignlr25611272
115229221153737211567095mqsignrr25611272
128389831309852113363479
T:
sphincss256shake256simple
135329521387941914314574
T:
sphincss128shake256robust
168421641719736617433937
T:
sphincss128harakarobust
171509081746898417676933
T:
sphincsf128shake256simple
195155251975104519874991
T:
sphincss256harakasimple
205661282059435720643501aimer192f
217038682190873522198400
T:
sphincsf128harakasimple
273171732757830527913346
T:
sphincsf192shake256simple
274755252775622428130404
T:
sphincsf256shake256simple
278557402787488127932224mqsignlr25614896
278999962791921427960046mqsignrr25614896
295329702956565029595658picnicl1full
307913783090250031021084
T:
luov863256
316073763191042732569922
T:
sphincsf128shake256robust
328179213283975932876423picnicl1fs
353507253575833636244476
T:
sphincsf192harakasimple
376099613810813638620947
T:
sphincsf256harakasimple
407839544121866441790021
T:
sphincsf128harakarobust
446154184487127945021196aimer256f
464382044647329446510106picnicl1ur
473184994784070548156070
T:
mqdss48
504886335109525451501074
T:
sphincsf192shake256robust
515452065227730052754522
T:
sphincsf256shake256robust
527179325276480652811013
T:
rainbow1acompres363232
529223695295576952992229
T:
rainbow1acyclicc363232
587868205882156658864864picnicl3full
624597356291029863607882
T:
sphincsf192harakarobust
657251646625510567017979
T:
sphincsf256harakarobust
677685886824279568353060
T:
pqrsa15
709981157119541371243708aimer128s
736874967388707674060236
T:
luov4849242
826742838286959791403231
T:
bluegemss128
841713608470154585814689
T:
redgemss128
868777888696657087038626picnicl3fs
949660469503541695108776picnicl5full
112057829112431250113084446
T:
luov890351
125296482125361724125431712picnicl3ur
145357941146554415148859947
T:
mqdss64
148090964148142364148192404picnicl5fs
163385810163465860163577460picnic3l1
168603211170873971171182824aimer192s
197551857198171280198487408
T:
luov8117404
203679260203734740203796831picnicl5ur
220065721220190282220418882
T:
redgemss192
214617395232637355236280039
T:
bluegemss192
232169995237624706260601066
T:
luov6468330
320427200320503426321606105
T:
rainbow3ccompres683248
319650434320680126320898972
T:
rainbow3ccyclicc683248
355732914355955176358549282aimer256s
365868630366011665366120428picnic3l3
389748173409846456410254565
T:
redgemss256
405175904458884785474145278
T:
luov8086399
563788862564103478564384658picnic3l5
714435606715675518719454608
T:
rainbow5ccyclicc963664
716980672719427854721745262
T:
rainbow5ccompres963664
834173595834701222835051345
T:
picnic2l1fs
190733918819083134212007013004
T:
picnic2l3fs