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; Haswell+AES (306c3); 2013 Intel Core i7-4765T; 4 x 2000MHz; prodesk, supercop-20240909

[Page version: 20241006 02:11:55]

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
447645045180picnicl1full
449645324660picnic3l1
517654045616
T:
picnic2l1fs
630063326360picnicl3full
630063487144picnic3l3
642464727000picnicl1ur
646064846520picnicl1fs
816482568844picnic3l5
832084088752picnicl5full
908491809260
T:
picnic2l3fs
107961082411236picnicl3fs
108281117211876picnicl3ur
121841231213272
T:
picnic2l5fs
143081441215476picnicl5ur
143641514015476picnicl5fs
554365555655704aimer128f
572645730857444ed25519
575685808458144aimer128s
647726519266280T!!!dilithium2aes
961489635696528T!!!dilithium2
102524102836104164dilithium3aes
128636128732128904aimer192f
128768128824128880aimer192s
158956159864160432dilithium5aes
172900173144173536T!!!dilithium3
174784175092175452
T:
ed448goldilocks
195248197148199364nccsign1aes
247204248404250612nccsign1
243660250292258044
T:
pass769
260824263256265048nccsign3aes
270036273192278832T!!!dilithium5
293016293984295400
T:
pass863
300004300860309260aimer256f
328272329896332584nccsign3
342496343032347104aimer256s
402480405856408132nccsign5aes
503096506204508748nccsign5
639144643360654728
T:
donald1024
453940?689764?1391248?haetae3
350076?807248?1330116?haetae2
818468824088831892
T:
edons128k08n72nu8l4mu3
825556828408830100
T:
mqdss48
507044?863660?1530432?haetae5
890732908296911120
T:
sphincsf128harakasimple
110074411009601101368
T:
sphincsf128harakarobust
128984812909201298796
T:
sphincsf192harakasimple
161948016221681700232
T:
sphincsf192harakarobust
1312692?1778656?2175716?
T:
qtesla1
189944819014201906368
T:
mqdss64
214538021542322177184
T:
donald2048
249036825007242540172
T:
edons128ref
281479628303922839816
T:
sphincs256
350456435123643546496
T:
sphincsf256harakasimple
2854972?4184908?4599996?
T:
qtesla3f
428388442887724305932
T:
sphincsf256harakarobust
461571646227084638928
T:
sphincsf128shake256simple
513358851482565520012
T:
luov863256
5856608?6677196?7810480?
T:
qtesla1p
673417267434926761640
T:
sphincsf192shake256simple
4255168?6893924?9592284?
T:
qtesla3s
865331686664408684464
T:
sphincsf128shake256robust
899905290589489068816
T:
mqsignlr2567246
944380094615569496768
T:
luov863256pc
953677296328329653616mqsignlr2567246
112866281138132411499740mqsignrr2567246
113431921144668011510468
T:
mqsignrr2567246
117189081172924411782092
T:
rainbowbinary256181212
123992561240382812420240
T:
sphincsf192shake256robust
176775241769639217732760
T:
sphincsf256shake256simple
181493361865995220954424
T:
falcon512dyn
188351081893308019034908
T:
rainbow1aclassic363232
191597481921917219297320
T:
luov4849242
184902161975801221822032
T:
falcon512tree
206127002072844020758676
T:
rainbow1acyclicc363232
210990922112647621202252
T:
rainbow1acompres363232
220998162248423223881932
T:
luov890351
287251042896356829236920
T:
sphincss128harakasimple
328195443283110432839216
T:
sphincsf256shake256robust
348544523486313234894472
T:
sphincss128harakarobust
30074908?35198324?40713988?
T:
qtesla3p
380855483809862440019844
T:
luov8117404
393347643953676840116800
T:
luov890351pc
393329643973794439847156mqsignlr25611272
393781083979269639913392
T:
mqsignlr25611272
426161164280638042912368
T:
sphincss192harakasimple
484029604864264449028276mqsignrr25611272
482346884939025649751136
T:
mqsignrr25611272
505535005057324450610456
T:
sphincss192harakarobust
540406605405371254065396
T:
sphincss256harakasimple
564717285689326057882504
T:
rainbowbinary16242020
560577525853283265381980
T:
falcon1024dyn
569346165917380062702800
T:
falcon1024tree
638428286393137264130712
T:
luov6468330
667270646677219266808876
T:
sphincss256harakarobust
692103366924480869281756
T:
gemss128
716342207172873271887104
T:
luov8117404pc
727236847274822072768156
T:
redgemss128
742184047435360074708076
T:
gemss128v2
754392447550530875614956
T:
redgemss128v2
760160207603270076048992
T:
bluegemss128
919893289254639293446688mqsignlr25614896
905085489393758894994904
T:
mqsignlr25614896
980526969809476098135012
T:
bluegemss128v2
119648756119813552120082852
T:
rainbow3cclassic683248
119744888119836096120032744
T:
luov8086399
121904892122468384122793700
T:
rainbow3ccompres683248
123125112123244628123401744
T:
rainbow3ccyclicc683248
127238204128835152129158212
T:
mqsignrr25614896
127244548128904868129120480mqsignrr25614896
147190560147267996147303500
T:
sphincss128shake256simple
215477384215536880215616840
T:
sphincss192shake256simple
206163020217333048218114872
T:
sflashv2
263712176264235236265250700
T:
redgemss192v2
263866940264573020264999400
T:
redgemss192
265510712265653064265912604
T:
bluegemss192
270816436270861776271209576
T:
sphincss128shake256robust
271259880271319924271656632
T:
gemss192
282942996283555416283918412
T:
sphincss256shake256simple
353150352354069828371629936
T:
rainbow5cclassic963664
364875896366048992369859236
T:
rainbow5ccyclicc963664
373032544373375176374449620
T:
rainbow5ccompres963664
397376788398605212405226712
T:
sphincss192shake256robust
480160932480425352480556700
T:
gemss192v2
483677524483767092484293704
T:
bluegemss192v2
526572460526757048531181432
T:
sphincss256shake256robust
746263152748684600753676368
T:
redgemss256v2
102464864810350000241036948116
T:
redgemss256
103518829610368450361040249232
T:
bluegemss256
103638897210385435521040638404
T:
gemss256
135737822013594670521362463272
T:
gemss256v2
136669480013682580961369303492
T:
bluegemss256v2
188546982818857949721887988308
T:
gravitysphincss
456482215646878051484799061712
T:
pqrsa15
287643245242876709096428820864452
T:
gravitysphincsl
575259086965757175367257586189412
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
187921897619696
T:
rainbowbinary256181212
381443846039264
T:
rainbowbinary16242020
601446025660344ed25519
919409226492772
T:
rainbow1aclassic363232
928929498496440
T:
mqsignlr2567246
950489761699156
T:
rainbow1acyclicc363232
112964113576114240
T:
sflashv2
123876125320126988mqsignlr2567246
133972135596137928
T:
mqsignrr2567246
161520164172165740mqsignrr2567246
182664182836183040
T:
ed448goldilocks
189124?230908?328268?T!!!dilithium2
149260?243464?334696?T!!!dilithium2aes
264148265268266404
T:
mqsignlr25611272
285672?305668?587128?
T:
pass769
329684330444331740mqsignlr25611272
208408?334644?526432?dilithium3aes
237640?348376?579388?dilithium5aes
337824?349132?995176?
T:
pass863
407884409416411372
T:
mqsignrr25611272
291680?422276?548976?T!!!dilithium3
416792422820428408
T:
luov863256pc
415740423388452128
T:
falcon512tree
430328434224437508
T:
rainbow3cclassic683248
223236?434476?690872?
T:
qtesla1
426668?440552?784396?nccsign1
445744448172453636
T:
rainbow3ccyclicc683248
476544477624480396mqsignrr25611272
499432501900506408
T:
donald1024
369008?520564?711024?nccsign1aes
546224549352554940
T:
mqsignlr25614896
281600?587756?814668?
T:
qtesla3f
420008?610788?839104?T!!!dilithium5
659268661128666740mqsignlr25614896
473548?728280?1112804?nccsign3aes
770932777984784216
T:
mqsignrr25614896
788456795288804592
T:
falcon512dyn
569592?840516?1298352?nccsign3
835968847300865248
T:
falcon1024tree
884848889592900156mqsignrr25614896
98277210011361007632
T:
rainbow5cclassic963664
774972?1090868?1489548?nccsign5aes
725852?1153796?1798888?
T:
qtesla3s
871780?1161400?2032632?
T:
qtesla1p
125894412670161277616
T:
rainbow5ccyclicc963664
913104?1279212?1819880?nccsign5
133006013353401358948
T:
luov890351pc
134906813544921366736
T:
donald2048
135127213606201371216
T:
edons128k08n72nu8l4mu3
1085216?1418440?2428964?haetae2
144133614447481446368aimer128f
162044816291561660148
T:
falcon1024dyn
744584?1804576?2886212?haetae5
181732018374761857316
T:
luov8117404pc
1126260?2064392?4029392?haetae3
324950032613723292864
T:
edons128ref
2568812?3573716?5485896?
T:
qtesla3p
351871236497643748952aimer192f
370542437133843717028
T:
luov863256
422659242333684384036picnicl1full
4027340?4639868?5546300?
T:
redgemss128v2
4056936?5008420?6609068?
T:
redgemss128
527238052865805299980
T:
mqdss48
532336453298725332424picnicl1fs
655798865626446572300picnicl1ur
697510869970487011280aimer256f
843096884330968446396picnicl3full
108724201098630810993504aimer128s
121048721210991612118912
T:
luov890351
123568921236120012368580picnicl3fs
123800681239776812463632
T:
mqdss64
10683400?12529064?15114604?
T:
redgemss192
10244852?12709644?14743196?
T:
redgemss192v2
140856441409124014096404picnicl5full
147214201472803614789088
T:
gravitysphincss
157722481578635615848332picnicl3ur
169614881697685617095472
T:
rainbow1acompres363232
180973121811180818129732picnic3l1
208639962094308422045868
T:
luov8117404
210843762111827622300172picnicl5fs
17326504?21582144?26023700?
T:
redgemss256v2
18509828?21747104?24779288?
T:
redgemss256
259841722604168826105468aimer192s
261791042619288026226376
T:
gravitysphincsm
264539002647439627577744picnicl5ur
313432603135763231381704
T:
gravitysphincsl
320699483209456432147808
T:
sphincsf128harakasimple
376582563768956037721528
T:
sphincsf192harakasimple
389011563892691239011572picnic3l3
402603284029302040321280
T:
sphincsf128harakarobust
429306604294138042955068
T:
luov4849242
493290084936356049412720
T:
sphincsf192harakarobust
499610365007565652713116
T:
sphincs256
500041645024861650464956aimer256s
668035486693929667064724picnic3l5
896504728967446890211208
T:
sphincsf256harakasimple
102843848104201612107876280
T:
rainbow3ccompres683248
114511540114641580114877588
T:
sphincsf256harakarobust
133695136134138464134397336
T:
luov6468330
146068412146149144146234928
T:
pqrsa15
152128004152235208152410720
T:
sphincsf128shake256simple
165532612165735692165889008
T:
picnic2l1fs
139090204?165789560?193397564?
T:
bluegemss128v2
148736040?178455384?236543756?
T:
bluegemss128
192330156192468468192614216
T:
sphincsf192shake256simple
249469868249640376253671920
T:
rainbow5ccompres963664
262208324262301004264942916
T:
luov8086399
270845548271266324271506792
T:
sphincsf128shake256robust
347693368347866876348154232
T:
sphincsf192shake256robust
344380160?412720724?482212144?
T:
bluegemss192v2
416189260416335520417249088
T:
sphincsf256shake256simple
492425680492599932492847364
T:
picnic2l3fs
429918796?516041832?601492928?
T:
bluegemss192
534205436535285644537715584
T:
sphincss128harakasimple
677439932677679040678617220
T:
sphincss128harakarobust
749001188749853012750185256
T:
sphincsf256shake256robust
764930088765003524768528404
T:
sphincss256harakasimple
693171336?810019996?928302288?
T:
bluegemss256v2
695080252?833893632?972701620?
T:
bluegemss256
994265548995395868997953236
T:
sphincss256harakarobust
103584018810362820081036493316
T:
picnic2l5fs
87624377610514511081052029644
T:
gemss128v2
943404544?1130934252?1507078236?
T:
gemss128
118268831211832193361183592800
T:
sphincss192harakasimple
159491598815951702161597081676
T:
sphincss192harakarobust
235971662423600685762364401988
T:
sphincss128shake256simple
2336775064?2806540528?3713981072?
T:
gemss192v2
345880486434609839323464691772
T:
sphincss256shake256simple
2900981440?3481601048?5197715320?
T:
gemss192
405201180440545951404054863732
T:
sphincss128shake256robust
490573718049067046964911817020
T:
sphincss192shake256simple
4137848128?4984534816?5814989636?
T:
gemss256v2
614737833261544509406206366408
T:
sphincss256shake256robust
5076066024?7104545172?8121447700?
T:
gemss256
828722822083363397768431001092
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
173041738817512
T:
rainbowbinary256181212
303123061231228
T:
rainbowbinary16242020
317563245633168
T:
rainbow1aclassic363232
747967670077908mqsignlr2567246
787407895679272T!!!dilithium2aes
814808319286024
T:
mqsignlr2567246
860288710487712
T:
falcon512tree
849208733290032mqsignrr2567246
860128846889468
T:
mqsignrr2567246
102172103684104364
T:
falcon512dyn
103416104000104548
T:
qtesla1
108124108344111512T!!!dilithium2
111268114936118868
T:
gravitysphincss
116096116420117252dilithium3aes
122080122840126080
T:
sflashv2
130844131416131960haetae2
137796139444141888
T:
luov863256pc
172616174016175264
T:
falcon1024tree
174124174692175156dilithium5aes
176792177032177216T!!!dilithium3
186396187800189348ed25519
195696198280203836
T:
rainbow3cclassic683248
207120208152209788
T:
falcon1024dyn
209180210080210888
T:
qtesla3f
210688211216212068
T:
qtesla3s
212356213016216764haetae3
214148221616229520
T:
gemss128v2
225048235928242736
T:
redgemss128v2
236364242600252296
T:
redgemss128
236524246532253884
T:
gemss128
246768247192247724haetae5
250600253280255192nccsign1aes
252480259108264248
T:
bluegemss128
277996278264278568T!!!dilithium5
276028282188288076
T:
bluegemss128v2
292708294648298624nccsign1
312892314688317328
T:
mqsignlr25611272
313164314812317008mqsignlr25611272
315156316584319400
T:
mqsignrr25611272
315440317160318736mqsignrr25611272
324780326236328024nccsign3aes
354532360540392488
T:
pass769
372952377540385072
T:
luov890351pc
383220385352387212nccsign3
400684403796407924
T:
donald1024
404296406596408872
T:
edons128k08n72nu8l4mu3
425368429744439100
T:
rainbow5cclassic963664
428684430164436712
T:
pass863
458352469860478120
T:
gravitysphincsm
509776513376520324
T:
luov8117404pc
516144517452519288
T:
qtesla1p
519544522036524684nccsign5aes
591904594140597144
T:
ed448goldilocks
585264597672610200
T:
gemss192
590500606580625284
T:
redgemss192
607044608700611976nccsign5
602604610840614332
T:
mqsignrr25614896
607032611256619472
T:
mqsignlr25614896
600592611692617568mqsignrr25614896
604788612792618448mqsignlr25614896
615004626000641464
T:
bluegemss192
615780627456640940
T:
redgemss192v2
619440629344635148
T:
gravitysphincsl
622348633596642852
T:
sphincss128harakasimple
638304650828669688
T:
gemss192v2
653052669496685152
T:
bluegemss192v2
881552886620893636
T:
edons128ref
900784919988940468
T:
sphincss128harakarobust
921716941408960136
T:
sphincss192harakasimple
120983212178841230212
T:
donald2048
123110812480881268768
T:
gemss256
127276412869321322480
T:
bluegemss256
129385613108161336776
T:
sphincss256harakasimple
127906413141441357460
T:
redgemss256
128933213141441345056
T:
redgemss256v2
130474413287441353352
T:
gemss256v2
129492013341201370284
T:
bluegemss256v2
140430414053681408572aimer128f
142833614658201478340
T:
sphincsf128harakasimple
145910014763401497744
T:
sphincss192harakarobust
150710015160321525932
T:
sphincs256
196867219904522018860
T:
sphincss256harakarobust
212690021454082187096
T:
sphincsf128harakarobust
232889223556642365608
T:
sphincsf192harakasimple
243263224404402448944
T:
qtesla3p
249640025138082535464
T:
sphincsf256harakasimple
295490029620362964364
T:
luov863256
337403233985363423380
T:
mqdss48
343876034450643447784aimer192f
349436835156763663056picnicl1full
361548436509643680496
T:
sphincsf192harakarobust
378886838239843850412
T:
sphincsf256harakarobust
411181642430364303896
T:
sphincss128shake256simple
432598043307364351568picnicl1fs
538824854079805428368picnicl1ur
612935262076726339328
T:
sphincss192shake256simple
684445668593006874856aimer256f
709977271097007114216picnicl3full
797176081262728270356
T:
sphincss256shake256simple
800919681676768370628
T:
sphincss128shake256robust
839410084144728484576
T:
mqdss64
100973481027343210391180
T:
sphincsf128shake256simple
104186041043378411106184picnicl3fs
105031681050468410509720
T:
luov890351
108370481086429610884984aimer128s
119310601195342411964360picnicl5full
119933521224911212398868
T:
sphincss192shake256robust
133256321334204813384840picnicl3ur
137361681374128413854316
T:
rainbow1acompres363232
137565401376335213811660
T:
rainbow1acyclicc363232
143015001431524414343172picnic3l1
157804241595386416190900
T:
sphincss256shake256robust
161798561631967616480692
T:
sphincsf192shake256simple
162664241645766016716400
T:
sphincsf256shake256simple
179818921798612817990036
T:
luov8117404
179925841804018419213660picnicl5fs
183569281860330818990212
T:
sphincsf128shake256robust
207012762077540820830820
T:
pqrsa15
225004082262704822723876picnicl5ur
260215842616980428678588aimer192s
296005842960874029633136
T:
luov4849242
311085603113937231170592picnic3l3
316032603178838032008816
T:
sphincsf192shake256robust
319820883233484432614520
T:
sphincsf256shake256robust
490560204910156449183728picnic3l5
500205365006409650071600aimer256s
680500966825018068530332
T:
picnic2l1fs
778858287792173677953908
T:
luov6468330
830835648335251284037388
T:
rainbow3ccyclicc683248
869752168762173287690304
T:
rainbow3ccompres683248
149986924150126076150309568
T:
luov8086399
156595316157138124157442760
T:
picnic2l3fs
185486252186658180186858368
T:
rainbow5ccyclicc963664
186043872187724808190518844
T:
rainbow5ccompres963664
275531924275617808275773520
T:
picnic2l5fs