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; Zen (820f01); 2020 AMD Athlon Silver 3050e; 2 x 1400MHz; dali, 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, rainbowbinary16242020

Cycles to generate a key pair
25%50%75%system
354936083739picnicl1full
362136483882picnic3l1
498050225131picnic3l3
510851305224picnicl3full
652165896801picnicl5full
676168106916picnic3l5
876488149009picnicl1ur
932994709609picnicl1fs
105201057910723
T:
picnic2l1fs
174651751417646picnicl3fs
175461765317767picnicl3ur
200792017220402
T:
picnic2l3fs
211402141721601picnicl5ur
218452199422460picnicl5fs
251622524125449
T:
picnic2l5fs
483704845648872ed25519
607266106961536T!!!dilithium2aes
961729648797153dilithium3aes
133956134437136414
T:
donald512
132832135103139179
T:
ecdonaldp256
144624144856145896dilithium5aes
147774148148148729T!!!dilithium2
198437200220202793
T:
ecdonaldp224
202033202388203099
T:
ed448goldilocks
280954281671282512T!!!dilithium3
304554305648307397
T:
pass769
340051340922345764
T:
donald1024
367835368348370291
T:
pass863
438106438711439788T!!!dilithium5
610939612255616001
T:
sphincsf128harakasimple
707515711984718342
T:
edons128k08n72nu8l4mu3
759083759166759875
T:
sphincsf128harakarobust
806231808935818828
T:
ecdonaldp521
806931810078813598
T:
mqdss48
813679818215826136
T:
ecdonaldp160
869071874302881782
T:
ecdonaldk163
896848899824903745
T:
ecdonaldb163
901220903795905416
T:
sphincsf192harakasimple
977501983513991640
T:
ecdonaldp192
101575910249491041992
T:
donald2048
665259?1052147?1632489?haetae2
115593011618241172737
T:
ecdonaldk233
118331211881651191734
T:
ecdonaldb233
129064512938031295687
T:
sphincsf192harakarobust
1216457?1611152?2007852?
T:
qtesla1
1057294?1673022?3806708?haetae3
180239718063401813213
T:
mqdss64
195799419642811972438
T:
ecdonaldk283
204303220509372058809
T:
ecdonaldb283
224102822594682277752
T:
edons128ref
227828122834972291612
T:
sphincsf256harakasimple
1225008?2620053?3931063?haetae5
288264928855022892514
T:
sphincsf256harakarobust
326500832707483281703
T:
ecdonaldk409
343429434378443446677
T:
ecdonaldb409
349836335049843522247
T:
ecdonaldp384
2714943?3976445?6495810?
T:
qtesla3f
423210942360474239722
T:
sphincs256
4054558?5418798?10540811?
T:
qtesla3s
4839469?5607519?7118674?
T:
qtesla1p
640936364152166421991
T:
sphincsf128shake256simple
649652565176296554531
T:
ecdonaldk571
685785268660576876765
T:
ecdonaldb571
778546778011177821481
T:
mqsignlr2567246
800735280364018067001
T:
luov863256
944026594535609468359
T:
sphincsf192shake256simple
955703895922619631074
T:
rainbowbinary256181212
106473531067056110703723
T:
rainbow1acyclicc363232
106564751068213310769444
T:
rainbow1acompres363232
107649521078187810809713
T:
mqsignrr2567246
107030621084165210896183
T:
rainbow1aclassic363232
120381781204494912066465
T:
sphincsf128shake256robust
123546031235876812363991
T:
luov863256pc
10018048?15610094?21088397?
T:
rwb0fuz1024
177081521771707817730779
T:
sphincsf192shake256robust
192391681925125319263971
T:
sphincss128harakasimple
184324711937836720927999
T:
falcon512dyn
195718572142289923596189
T:
falcon512tree
15901931?23716342?34788879?
T:
ronald512
237194922372871423743259
T:
sphincss128harakarobust
246167482466180524674430
T:
sphincsf256shake256simple
251758032529350325771481
T:
luov4849242
286337592867094928739882
T:
sphincss192harakasimple
334172843346838933511222
T:
mqsignlr25611272
370179643711657137216949
T:
luov890351
380177053802815838043822
T:
sphincss256harakasimple
33602540?38560473?43452246?
T:
qtesla3p
25798111?40306991?60390391?
T:
ronald768
411184104120937241305493
T:
sphincss192harakarobust
454741864550978345571197
T:
sphincss256harakarobust
467223444674012146767072
T:
sphincsf256shake256robust
466960534676052046811708
T:
mqsignrr25611272
557969865589418656150656
T:
gemss128
563007615635284757132074
T:
bluegemss128
569558335761800658093558
T:
redgemss128
580465365809181958140400
T:
luov890351pc
573047025890550666665646
T:
falcon1024tree
578292615974803266604247
T:
falcon1024dyn
596827706090643361121839
T:
rainbow3cclassic683248
635162406381192764040810
T:
rainbow3ccompres683248
641069416419505964351411
T:
luov8117404
650188666583930066043422
T:
redgemss128v2
677604996811642768341419
T:
rainbow3ccyclicc683248
747026577490456476074875
T:
luov6468330
774525217751722577805037
T:
gemss128v2
790030117923892379437018
T:
bluegemss128v2
889768028908265589784050
T:
mqsignlr25614896
37651074?98071907?152669780?
T:
ronald1024
987307519876686798833495
T:
luov8117404pc
114337584114417057114483529mqsignlr2567246
121000731121106154121297438
T:
mqsignrr25614896
142154117142477248142643557
T:
luov8086399
154155327154328062154573263
T:
rainbow1b
156194904156307720156388367mqsignrr2567246
199150124199669683202656182
T:
rainbow5cclassic963664
209348972209918147210243600
T:
sphincss128shake256simple
233315830233522468233709003
T:
sflashv2
236414464237169908237708073
T:
rainbow5ccompres963664
137176105?241196438?409216503?
T:
ronald1536
247483595247573275247781602
T:
rainbow1c
258545896258885054259113994
T:
redgemss192
266647603266766732266869969
T:
redgemss192v2
266984928267159220267564183
T:
bluegemss192
266393900267875916268223196
T:
rainbow5ccyclicc963664
269415365269688944270330086
T:
gemss192
273338538273458910273828518
T:
gemss192v2
301265924301403891301995890
T:
sphincss192shake256simple
342557016342902430343229096
T:
bluegemss192v2
250889529?380663518?569853985?
T:
ronald2048
393572892393661692393813537
T:
sphincss256shake256simple
396732518397176677398337098
T:
sphincss128shake256robust
428367951428539637428749674mqsignlr25611272
583541279585033979586414363
T:
sphincss192shake256robust
590488298591032451591548745mqsignrr25611272
747519917747713065748014824
T:
sphincss256shake256robust
817455775818043101824595061
T:
redgemss256
878882959884087510885849921
T:
gemss256
885252767886610719887140827
T:
bluegemss256
941666654950926125961764743
T:
gui184
952029596959497033960340755
T:
gemss256v2
964976635970142446970776722
T:
rainbow3b
973936624975845933977881983
T:
gravitysphincss
102455880010277492191031336172
T:
redgemss256v2
104046798710448028301049497198
T:
bluegemss256v2
109606336510968383811097695780mqsignlr25614896
117029163411706171241170975971
T:
rainbow1a
718566564?1413821458?1990938501?
T:
ronald3072
152270503515232983051523937430mqsignrr25614896
217075813621717506022173812556
T:
rainbow3c
320521519032979375493414006871
T:
gui312
2410060065?3421377579?5627178964?
T:
ronald4096
377223066738852909153973024423
T:
pqrsa15
411342634641148475614116296080
T:
rainbow6b
632379002663268012256328821092
T:
rainbow5c
831996425683267904838331211077
T:
rainbow4a
103189027551032771263210330630029
T:
rainbow6a
146249647741463584900414649324317
T:
gravitysphincsl
216589434702192076942622335992883
T:
gui448
296058543662962445225329642626440
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
136571384014272
T:
rainbowbinary256181212
513225138751459ed25519
659176655667759
T:
rainbow1a
775857795090150
T:
rainbow1aclassic363232
101056101499102420
T:
rainbow1acyclicc363232
112050112550113615
T:
mqsignlr2567246
113523113880114364
T:
rainbow1c
124088124336124715
T:
sflashv2
145393146107147055
T:
mqsignrr2567246
179917180358182554
T:
ecdonaldp256
209177209707210307
T:
ed448goldilocks
239692241685243304
T:
rainbow1b
170686?251309?392757?T!!!dilithium2aes
259051261003265791
T:
donald512
270947271308272475
T:
ecdonaldp224
218101?308965?527274?dilithium3aes
319869320985322177
T:
mqsignlr25611272
223459?342427?549363?T!!!dilithium2
362531363125364339
T:
rainbow3c
371129372140373037
T:
rainbow3cclassic683248
436184437304438608
T:
mqsignrr25611272
443502445200446552
T:
rainbow3ccyclicc683248
439185445635453817
T:
ronald512
325715?455165?601996?dilithium5aes
458684464791475260
T:
falcon512tree
467817470176474206
T:
donald1024
501729502809505502
T:
luov863256pc
598825600950603978
T:
rainbow6a
614102615904616608
T:
mqsignlr25614896
349268?640740?1020673?
T:
qtesla1
329141?654317?1004375?
T:
pass769
664436665761666781mqsignlr2567246
676055679294686761
T:
rainbow5c
467679?704970?909122?T!!!dilithium3
733842735456737234
T:
rainbow3b
760797768078780509
T:
ronald768
394455?783463?1197469?
T:
pass863
799063799764803365
T:
rainbow4a
671096?809515?1448881?T!!!dilithium5
832935834866836675
T:
mqsignrr25614896
834979845012851220
T:
rwb0fuz1024
852446855301863280
T:
ecdonaldp160
881727887621893736
T:
falcon512dyn
916357919234921646
T:
ecdonaldk163
918305927472931448
T:
falcon1024tree
398362?932305?1574238?
T:
qtesla3f
931394933498935144
T:
rainbow5cclassic963664
944015945748947077
T:
ecdonaldb163
100741110170491028099
T:
ronald1024
101654010211051030888
T:
donald2048
102633210307431036233
T:
ecdonaldp192
111260911170261124457
T:
rainbow5ccyclicc963664
706972?1123755?1911061?
T:
qtesla1p
112856611326671134827mqsignrr2567246
121924512233551230049
T:
ecdonaldk233
123395312375441242039
T:
ecdonaldp521
124827012501251252043
T:
ecdonaldb233
126576612750091293992
T:
edons128k08n72nu8l4mu3
144321814573091460237
T:
luov890351pc
720931?1589316?3523022?
T:
qtesla3s
173039217337611738014
T:
rainbow6b
176760217726781845688mqsignlr25611272
179244217978641804479
T:
falcon1024dyn
206414420729202198800
T:
ecdonaldk283
212013321301612141214
T:
luov8117404pc
215383721573922163468
T:
ecdonaldb283
1160276?2187211?4231385?haetae2
1838533?2696552?5767346?haetae5
269319926965692702461mqsignrr25611272
1463801?2702212?5172308?haetae3
269400127047032720529
T:
ronald1536
283771428427852853516
T:
edons128ref
348484335086773531436
T:
ecdonaldk409
363473736405073649946
T:
ecdonaldb409
364776736634223673544
T:
ecdonaldp384
3286699?3943346?5260739?
T:
redgemss128
395964739646033974691mqsignlr25614896
430085043334434342005
T:
ronald2048
3881552?5004575?5529996?
T:
redgemss128v2
544779554502025458525picnicl1full
4100150?5606128?10010224?
T:
qtesla3p
577571757826895788515mqsignrr25614896
660230566085726618003
T:
mqdss48
664379266502766660030
T:
luov863256
691926169360156957143
T:
ecdonaldk571
726061672828927298688
T:
rainbow1acompres363232
732575473389457358017
T:
ecdonaldb571
785041278574557869832
T:
gravitysphincss
789438279342698005367picnicl1fs
103286941033241110335070picnicl1ur
107774151078114510787612picnicl3full
115445161156064811583632
T:
ronald3072
9917618?12103603?15118136?
T:
redgemss192v2
10048536?13185178?15534701?
T:
redgemss192
144281241446431014484791
T:
gravitysphincsm
165465171660142616657366
T:
gravitysphincsl
173278071734506817356480
T:
mqdss64
177068441771401917725656picnicl5full
16328030?19022241?23307660?
T:
redgemss256v2
200319902008504020139745picnicl3fs
16865142?20160987?26439207?
T:
redgemss256
219777462200780322045386
T:
sphincsf128harakasimple
223420272238800522428150
T:
luov890351
243401242436909924406059
T:
ronald4096
256742822569091525721301picnic3l1
265442942656333826588912
T:
sphincsf192harakasimple
264880042658963926699484picnicl3ur
275869902761631627635333
T:
sphincsf128harakarobust
11606588?27841577?39455901?
T:
gui184
338704893405288334146883picnicl5fs
382664213832774238405102
T:
sphincsf192harakarobust
389334103897689239028980
T:
luov8117404
427757134291237942988673picnicl5ur
437096084395551044079847
T:
rainbow3ccompres683248
455379744556639245592004
T:
luov4849242
569417305697036057007147picnic3l3
584553545855250758608631
T:
sphincsf256harakasimple
755045747555848275689393
T:
sphincsf256harakarobust
775421737757778877618189
T:
sphincs256
957842999591163696281351picnic3l5
112794519?113397860?158230843?
T:
bluegemss128
119509103119917749120336665
T:
rainbow5ccompres963664
129241709129304980129376616
T:
pqrsa15
114379145?137309758?160979504?
T:
bluegemss128v2
137432204137493581137522389
T:
luov6468330
204850026205338343205579617
T:
sphincsf128shake256simple
216162019216262384216694190
T:
picnic2l1fs
261504331261811159262025684
T:
sphincsf192shake256simple
271192515272457702274613355
T:
luov8086399
366480831366719873367445549
T:
sphincsf128shake256robust
369917596370289776370575011
T:
sphincss128harakasimple
318530532?381406168?507509738?
T:
bluegemss192v2
370437015?444584478?592587473?
T:
bluegemss192
455841790456285908456719568
T:
sphincss128harakarobust
480448989481028970481404792
T:
sphincsf192shake256robust
221759874?517076834?812706742?
T:
gui312
525527665525717406526035750
T:
sphincss256harakasimple
459791516?550363173?641694985?
T:
bluegemss256v2
572410681572850879573181646
T:
sphincsf256shake256simple
614501581614590396614733038
T:
picnic2l3fs
655166933655643462655905461
T:
sphincss256harakarobust
632090126?758422483?884446352?
T:
bluegemss256
836611676837564896838316436
T:
sphincss192harakasimple
715441402?858077329?1001146613?
T:
gemss128
724632262?861993577?1014428603?
T:
gemss128v2
105013764010504255811050730510
T:
sphincsf256shake256robust
121067471912113233051212257056
T:
sphincss192harakarobust
127841461412801258581282071762
T:
picnic2l5fs
2106057701?2526854114?2949994437?
T:
gemss192v2
2490275288?2987563494?3484699282?
T:
gemss192
316882680331714193633174082234
T:
sphincss128shake256simple
3893799410?4670268552?5450770429?
T:
gemss256v2
482204928648236044874824955342
T:
sphincss256shake256simple
4365239031?5238642597?6112852504?
T:
gemss256
558796093855910927325595583546
T:
sphincss128shake256robust
3829431863?5746701295?12449817878?
T:
gui448
686191480168694171616876394215
T:
sphincss192shake256simple
872911751187345818518735682694
T:
sphincss256shake256robust
114473289131145847522811465634374
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
729474637642
T:
rwb0fuz1024
103461046210520
T:
rainbowbinary256181212
337343405334458
T:
ronald512
341253507436300
T:
rainbow1aclassic363232
368293729837712
T:
ronald768
414294176442149
T:
ronald1024
466094775148298
T:
rainbow1a
524185291253788
T:
ronald1536
606576107561613
T:
rainbow1c
624026456166886
T:
gravitysphincss
685466901369691
T:
ronald2048
779237886679485
T:
falcon512tree
805808080381056T!!!dilithium2aes
884498895989651
T:
mqsignrr2567246
888328956090355
T:
mqsignlr2567246
954959637397209
T:
falcon512dyn
102466102787103103
T:
qtesla1
111751112547113569
T:
ronald3072
116441116685117009dilithium3aes
123164123762124531
T:
luov863256pc
132540132739132953
T:
sflashv2
147813149010150390
T:
rainbow3cclassic683248
158665159448160129
T:
falcon1024tree
158737159633160107haetae2
160029160212160367T!!!dilithium2
169977170975171816
T:
ronald4096
171033171232171638dilithium5aes
178095179292180654
T:
donald512
180745181983183132ed25519
195557196641197387
T:
falcon1024dyn
210101212245213417
T:
rainbow1b
214581215238216222
T:
qtesla3f
216917217375218045
T:
qtesla3s
231361232689234707
T:
rainbow3c
254611255168255908haetae3
262245266987274085
T:
gemss128v2
270790273967277410
T:
gravitysphincsm
265021274096280393
T:
bluegemss128v2
276057276371276816T!!!dilithium3
291792293553294678
T:
luov890351pc
296373297664299734
T:
mqsignrr25611272
298232299873301962
T:
mqsignlr25611272
300528301067301839haetae5
309438318464331620
T:
gui184
320075325469332811
T:
gemss128
322088328399336881
T:
bluegemss128
336410342009351195
T:
redgemss128
346702347700349586
T:
rainbow4a
342257349419355956
T:
redgemss128v2
362283363791366572
T:
ecdonaldp256
363317367197374135
T:
gravitysphincsl
375397377745381183
T:
donald1024
402471404227407574
T:
luov8117404pc
426555436584444858
T:
sphincss128harakasimple
448148448660449111T!!!dilithium5
447724449351451000
T:
pass769
452838455321456945
T:
rainbow5cclassic963664
511877512702513923
T:
ecdonaldp224
517014520983527218
T:
rainbow5c
522868524065526666
T:
qtesla1p
524569528004529034
T:
pass863
547321550289552546
T:
mqsignrr25614896
533550550868554735
T:
mqsignlr25614896
534411553204567815
T:
gemss192
542143564453579595
T:
bluegemss192
566630570026583276
T:
edons128k08n72nu8l4mu3
550518571028580604
T:
redgemss192
563319572285594691
T:
bluegemss192v2
586272596986608359
T:
gemss192v2
598756610509634256
T:
redgemss192v2
601304611364634322
T:
gui312
624600635838645448
T:
sphincss192harakasimple
646271648408650590
T:
ed448goldilocks
655401659028668942
T:
rainbow6a
687670701447713696
T:
sphincss128harakarobust
703358705974708199
T:
rainbow3b
849893861807878759
T:
sphincss256harakasimple
865272868124871454
T:
edons128ref
880932885485895421
T:
ecdonaldp160
907665908890911208mqsignlr2567246
933667934600936318mqsignrr2567246
99182710032731017636
T:
sphincsf128harakasimple
103819010444441055131
T:
ecdonaldp192
107988310886271100459
T:
sphincss192harakarobust
108577511160791146657
T:
bluegemss256v2
109908811239151148434
T:
redgemss256v2
112130311379711151479
T:
redgemss256
119378412046181214762
T:
donald2048
119754212285591248396
T:
gemss256
121861012464831261683
T:
bluegemss256
126021212802681311930
T:
gemss256v2
147334914917091509713
T:
sphincss256harakarobust
155194815676321582596
T:
sphincsf192harakasimple
160132516260521641965
T:
sphincsf128harakarobust
161230016322151663488
T:
sphincsf256harakasimple
174656217502331759738
T:
ecdonaldk163
179983318026521805215
T:
ecdonaldb163
180477418076721811290
T:
rainbow6b
198721219932782004733
T:
sphincs256
211651121413522161549
T:
gui448
231964123224042328240
T:
ecdonaldp521
233747223430952347324
T:
ecdonaldk233
239291023958092400156
T:
ecdonaldb233
247115924774132486861
T:
qtesla3p
255404625550492556463mqsignrr25611272
259475825970422599834mqsignlr25611272
260468526211192648396
T:
sphincsf192harakarobust
279964628299182854682
T:
sphincsf256harakarobust
310865431243383136001
T:
ecdonaldp384
348455235679423635842
T:
sphincss128shake256simple
398157839926264002040
T:
ecdonaldk283
416446541710094180206
T:
ecdonaldb283
416076042047164222832
T:
rainbow1acyclicc363232
416433242052434209359picnicl1full
433895843906824438011
T:
rainbow1acompres363232
437819244138814442922
T:
mqdss48
488344348974514914545mqsignrr25614896
492660449352144944528mqsignlr25614896
549088356233455703759
T:
sphincss192shake256simple
567415556775785681233
T:
luov863256
650762065268976552935picnicl1fs
672783467387526774965
T:
ecdonaldk409
672690869014697026392
T:
sphincss128shake256robust
705077570549287069078
T:
ecdonaldb409
718893872901337457393
T:
sphincss256shake256simple
836393584284168452803picnicl1ur
846576784691078475629picnicl3full
853634286297828802117
T:
sphincsf128shake256simple
9797649995804310101423
T:
sphincss192shake256robust
119447281201021512078112
T:
mqdss64
134006641342301813449698
T:
ecdonaldk571
138938911392062213941327picnicl5full
138912541408806114315926
T:
sphincss256shake256robust
141880081421376914239244
T:
ecdonaldb571
145761431475896914861385
T:
sphincsf192shake256simple
147344771493676415203030
T:
sphincsf256shake256simple
158594971602608916352057
T:
sphincsf128shake256robust
169615171706724217125704picnicl3fs
190635721908045219111520
T:
pqrsa15
199327541997131920013944
T:
luov890351
213351422135075121365505picnic3l1
219938652205239822067969picnicl3ur
254358482560672925967643
T:
rainbow3ccyclicc683248
266076432674021026827426
T:
rainbow3ccompres683248
279664052826125028784993
T:
sphincsf192shake256robust
284719672856937828661124picnicl5fs
283995112864120428832894
T:
sphincsf256shake256robust
330587993311441133154211
T:
luov4849242
345063703452395034570454
T:
luov8117404
357589673592408336005754picnicl5ur
469000084694496046988003picnic3l3
597502455994924560228180
T:
rainbow5ccompres963664
591382276023477560774806
T:
rainbow5ccyclicc963664
741154747421659274403782picnic3l5
865379248661705286655470
T:
luov6468330
107158513107220597107259099
T:
picnic2l1fs
162046101162807321163375894
T:
luov8086399
247089969247190480247288281
T:
picnic2l3fs
437699010438236569441812099
T:
picnic2l5fs