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 Pentium Silver N6000; 4 x 1100MHz; jasper, 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
505851405298picnicl1full
517152305436picnic3l1
704771707320picnicl3full
740274647648picnic3l3
933194639725picnicl5full
9661989010102picnic3l5
130201312513224picnicl1fs
131451320913333picnicl1ur
145741461214745
T:
picnic2l1fs
246832483125180
T:
picnic2l3fs
265102662927004picnicl3fs
264462683227507picnicl3ur
299743011030223picnicl5fs
301763031131642picnicl5ur
329203315833458
T:
picnic2l5fs
769467745277746ed25519
141192142397147010
T:
ecdonaldp256
165905167111169750
T:
donald512
284650285983289877
T:
ecdonaldp224
303888304336304821
T:
ed448goldilocks
354615356074357764
T:
pass769
356644357155358717T!!!dilithium2
428700429972431839
T:
pass863
466597468718471359
T:
donald1024
667011668171669518T!!!dilithium3
687317687789688657
T:
sphincsf128harakasimple
711494715264719641
T:
edons128k08n72nu8l4mu3
772215775051778964T!!!dilithium2aes
802891804340805658
T:
sphincsf128harakarobust
809327812381819535
T:
ecdonaldp160
923294928270936893
T:
ecdonaldk163
953938958934966277
T:
ecdonaldb163
967459971895975565
T:
ecdonaldp521
978308985288998247
T:
ecdonaldp192
9983589995991001088
T:
sphincsf192harakasimple
109451610954521097053T!!!dilithium5
122726812281551230898
T:
mqdss48
126470112670841268706
T:
sphincsf192harakarobust
692647?1285258?2770063?haetae2
127987812927051304805
T:
ecdonaldk233
129430613005751312900
T:
ecdonaldb233
141331814218561428653T!!!dilithium3aes
160442116068231613094
T:
donald2048
210593221151562122325
T:
ecdonaldk283
213039021344332142982
T:
edons128ref
220420722092902219565
T:
ecdonaldb283
231290423207292330484T!!!dilithium5aes
283472928388442842727
T:
mqdss64
2167335?2844114?3610248?
T:
qtesla1
1651765?3098627?5028182?haetae3
347547734852033493729
T:
ecdonaldk409
365344936661413681768
T:
ecdonaldb409
374877637676893788297
T:
ecdonaldp384
2651785?3992453?5341125?haetae5
4184036?6143289?8137358?
T:
qtesla3f
774854077624567785073
T:
ecdonaldk571
824955582653828282575
T:
ecdonaldb571
6630177?8774455?13023973?
T:
qtesla3s
7351748?9620128?10796447?
T:
qtesla1p
981011898118319816923
T:
sphincsf128shake256simple
119774121199947112018823
T:
sphincs256
120797421210721312211360
T:
rainbow1aclassic363232
130055591301557013022380
T:
rainbow1acompres363232
130325781305201613111137
T:
rainbow1acyclicc363232
132894461335968213532497
T:
rainbowbinary256181212
145411831454311114560791
T:
sphincsf192shake256simple
188147351883113618835847
T:
sphincsf128shake256robust
215696712158456621591826
T:
sphincss128harakasimple
16078407?22633890?42100800?
T:
ronald512
255446272555686525666224
T:
sphincss128harakarobust
19589141?26682160?38967040?
T:
rwb0fuz1024
25793407?27593023?34288952?
T:
falcon512tree
279156882791969927933524
T:
sphincsf192shake256robust
26015819?28346177?33361313?
T:
falcon512dyn
319362563201427632020035
T:
sphincss192harakasimple
347298663477767934809921
T:
luov4849242
382716223827641238292213
T:
sphincsf256shake256simple
401747134019417340209591
T:
sphincss192harakarobust
436945194370615743903500
T:
sphincsf256harakasimple
474435594750728347619314
T:
luov863256
36750667?52023499?86696682?
T:
ronald768
44754114?52187404?63569762?
T:
qtesla3p
650017916516343176442340
T:
rainbowbinary16242020
47743437?66541849?125252345?
T:
ronald1024
689991596955981569684202
T:
rainbow3cclassic683248
717255307176236271801189
T:
sphincsf256shake256robust
760999107618011777064395
T:
gemss128
768362207697678377727839
T:
rainbow3ccyclicc683248
772097697727846377316003
T:
rainbow3ccompres683248
778730687789960578183886
T:
bluegemss128
809758508099953181188742
T:
sphincsf256harakarobust
816071518166997681712493
T:
redgemss128
791115468345024292440239
T:
falcon1024dyn
793202258559800593417432
T:
falcon1024tree
103922479104062631107086354
T:
luov6468330
118834316118920767119318406
T:
gemss128v2
122516510122603783122870843
T:
bluegemss128v2
126999995127095574127208278
T:
redgemss128v2
146807820146883545146909152mqsignlr2567246
164923821165165192169828777
T:
luov890351
194929782195376547200916932
T:
luov8086399
199995528200245256200312161mqsignrr2567246
208883985209099168209240782
T:
sflashv2
233982299234184990234249550
T:
rainbow5cclassic963664
250613121251753594253581471
T:
rainbow5ccompres963664
257492443258135195262563136
T:
rainbow5ccyclicc963664
185367234?268960169?486565280?
T:
ronald1536
294869354295729490305330134
T:
luov8117404
313865028313944071317914184
T:
sphincss128shake256simple
366818355366985184368740670
T:
bluegemss192v2
370165598370642470370935137
T:
redgemss192v2
382549284382681597383634613
T:
gemss192
385599449385740739386156381
T:
bluegemss192
390241189390469420390740460
T:
redgemss192
463604065463677267463837825
T:
sphincss192shake256simple
262499526?506162318?811795242?
T:
ronald2048
576812690577298236577995213mqsignlr25611272
602059024602101267602149127
T:
sphincss128shake256robust
609024303609117860609211576
T:
sphincss256shake256simple
615028737615508148615807966
T:
gemss192v2
697169328697310585702056934
T:
sphincss256harakasimple
685232474697649051711782872
T:
gui184
777240958778734778779035460mqsignrr25611272
890354264890455240890676061
T:
sphincss192shake256robust
113810207711405556441141397224
T:
gemss256v2
114800926911480963971149194758
T:
sphincss256shake256robust
116333559611646080051168406252
T:
gemss256
116870213711706348971171237694
T:
redgemss256v2
118003522711826293291257380382
T:
bluegemss256
119842240011998077231201021936
T:
redgemss256
120552307112060119041206058868
T:
gravitysphincss
129508273312951980101296819633
T:
sphincss256harakarobust
149676883014973524581498330077mqsignlr25614896
160923257516093497441609625390
T:
rainbow1a
1076717927?1699959987?2883299543?
T:
ronald3072
196813912719687369331970379974mqsignrr25614896
217155524021899779942241506790
T:
bluegemss256v2
481041990148248747304847083503
T:
gui312
2922765328?4841565836?8068951787?
T:
ronald4096
547682273154775651525480409636
T:
rainbow1b
571511320357154821485716120071
T:
rainbow1c
576151274958559715515974100548
T:
pqrsa15
139767453021397892686613983019762
T:
rainbow4a
154959413401550104837015527747046
T:
rainbow3b
188678655111887223388618900091293
T:
gravitysphincsl
222152967962230155413722435220362
T:
gui448
377450623563774949355337795999262
T:
gravitysphincsm
576490457785768687592157754118493
T:
rainbow6a
594374064495945455384959474743238
T:
rainbow3c
Cycles to sign 59 bytes
25%50%75%system
190381937620062
T:
rainbowbinary256181212
465234777353047
T:
rainbowbinary16242020
824388251682760ed25519
112152112497113029
T:
sflashv2
125782126346128694
T:
rainbow1aclassic363232
139646141081142355
T:
rainbow1acyclicc363232
194731195412196566
T:
ecdonaldp256
285258287673290800
T:
donald512
314392315199315861
T:
ed448goldilocks
359530360751363163
T:
ecdonaldp224
445037453701463105
T:
ronald512
514826?573017?1066119?
T:
pass863
585229588707593237
T:
donald1024
664165665501671886
T:
rainbow3cclassic683248
676933678008681661
T:
rainbow3ccyclicc683248
733640742079752189
T:
falcon512tree
780628782725784196
T:
rainbow1a
826615835285843686
T:
ronald768
424379?841089?1297727?
T:
pass769
851116854276867141
T:
ecdonaldp160
921036922415924902mqsignlr2567246
962214964804968937
T:
ecdonaldk163
514249?975434?1880553?
T:
qtesla1
9968509998221007495
T:
ecdonaldb163
103288210515281058868
T:
ecdonaldp192
889235?1189926?1723831?T!!!dilithium2
119883812096131224378
T:
ronald1024
124033512533151260880
T:
falcon512dyn
127296112831991296954
T:
rwb0fuz1024
132964713356961342147
T:
ecdonaldk233
136094513722771377036
T:
ecdonaldb233
142946714305721434582
T:
ecdonaldp521
976495?1493401?2337902?
T:
qtesla3f
148016014994021537029
T:
edons128k08n72nu8l4mu3
148374814996021512998
T:
falcon1024tree
155787115610461565406mqsignrr2567246
156739815714401579295
T:
rainbow5ccyclicc963664
157271015769231584786
T:
rainbow5cclassic963664
1387243?1723444?2780389?T!!!dilithium3
172185517252841728353
T:
donald2048
1361918?2016072?2964778?T!!!dilithium2aes
212804621315852135838
T:
rainbow1c
222071122298712245961
T:
ecdonaldk283
1682160?2268256?3797131?
T:
qtesla1p
2180790?2305669?3493937?T!!!dilithium5
232335823288652333980
T:
ecdonaldb283
238368523877962395845
T:
rainbow4a
250707025098622519713
T:
rainbow1b
253319725452682557810
T:
falcon1024dyn
257699825834032588010mqsignlr25611272
293036929321842941523
T:
rainbow3b
2138735?3038313?5254684?T!!!dilithium3aes
333686233534603373886
T:
ronald1536
369970937054613745639
T:
edons128ref
371027237234753769093
T:
ecdonaldk409
387350738803733890546
T:
ecdonaldb409
1772614?3895122?6452775?
T:
qtesla3s
392315739491323973674
T:
ecdonaldp384
400568340121864022949mqsignrr25611272
3018963?4267856?5612746?T!!!dilithium5aes
3510411?4674614?11196806?haetae2
4081318?4869560?6006223?
T:
redgemss128
515679251661035195910
T:
rainbow6a
3732608?5404042?10368968?haetae3
547290254892395494888mqsignlr25614896
594605159649396002102
T:
ronald2048
5395659?6155160?7702870?
T:
redgemss128v2
769401277227787802200
T:
rainbow1acompres363232
783373678419787852415
T:
rainbow3c
819705282100788228503
T:
ecdonaldk571
837317583866358401986mqsignrr25614896
4579897?8688432?14820403?haetae5
876890887842798826477
T:
ecdonaldb571
104405971045191810463634
T:
gravitysphincss
7510447?11086076?16022627?
T:
qtesla3p
110338271109270011253207picnicl1full
10247488?11930487?14521141?
T:
redgemss192
141565441417233215397373picnicl1fs
14026991?15726106?18394444?
T:
redgemss192v2
8322875?16436270?27425136?
T:
gui184
164638391651720216558301
T:
ronald3072
184427891849539218562269
T:
gravitysphincsm
16772802?20850756?23724100?
T:
redgemss256
209426332097501121418601picnicl1ur
216503082167141821723327
T:
gravitysphincsl
233207872340638324211916picnicl3full
243629312438427424410168
T:
sphincsf128harakasimple
261923902619638426199193
T:
luov863256
291789932922019329275680
T:
sphincsf192harakasimple
297771472981156729847220
T:
sphincsf128harakarobust
24986300?31181429?35105661?
T:
redgemss256v2
345662013463044734659705
T:
mqdss48
352154893527842935345320
T:
ronald4096
362195763751881539069492picnicl3fs
383452683838070438429174
T:
sphincsf192harakarobust
474798014753283747696334
T:
rainbow3ccompres683248
537595225380377954069775picnicl3ur
532673585408312354765089picnicl5full
586315825882636959732666
T:
luov4849242
611057816117123461220841picnicl5fs
600778176306595473736090picnic3l1
854437238599220686043789picnicl5ur
907760409079257590854148
T:
luov890351
102948291102992122104830777
T:
mqdss64
125038430125578664125815181picnic3l3
131197257132519893132936716
T:
rainbow5ccompres963664
157591337157627526157643467
T:
luov8117404
141088262?169233163?198739628?
T:
bluegemss128
141322302?169504573?198257886?
T:
bluegemss128v2
176984648183159464185353694
T:
luov6468330
225026324225129005225202577
T:
sphincs256
233240361233553643233678972
T:
pqrsa15
224002586246900589251767040picnic3l5
310145882310413852310597645
T:
sphincsf128shake256simple
340100879341047413377700785
T:
picnic2l1fs
355944997372385409372777138
T:
luov8086399
397121620397533853398263172
T:
sphincsf192shake256simple
404327166404439318405558182
T:
sphincss128harakasimple
381969640?458205057?536210690?
T:
bluegemss192
401606780?480865192?639817181?
T:
bluegemss192v2
497164543497339836497451023
T:
sphincss128harakarobust
340925607?513272631?937212190?
T:
gui312
566415015566800582572247958
T:
sphincsf128shake256robust
744924618745480103746063520
T:
sphincsf192shake256robust
625306008?750203628?879658335?
T:
bluegemss256
638668374?763748922?888356490?
T:
bluegemss256v2
876142677876494601876675322
T:
sphincsf256shake256simple
903911737904154665904793649
T:
sphincss192harakasimple
9403300799457173011036455983
T:
picnic2l3fs
879129074?1054276594?1405541314?
T:
gemss128v2
880960552?1057468588?1258029441?
T:
gemss128
119445502111952564731198490605
T:
sphincsf256harakasimple
123703070912376486901239896149
T:
sphincss192harakarobust
158887122815898328031593153907
T:
sphincsf256shake256robust
189753214619454362521955221629
T:
picnic2l5fs
212755261021281120182129048380
T:
sphincsf256harakarobust
2577283418?3086200707?3616595698?
T:
gemss192
2608794493?3262597774?3654710564?
T:
gemss192v2
467811391646795741384680209570
T:
sphincss128shake256simple
4602914207?5524539962?7340201106?
T:
gemss256
4642414863?5572815744?7395173158?
T:
gemss256v2
727428432572795064347280518666
T:
sphincss256shake256simple
837670749783781461678381766117
T:
sphincss128shake256robust
980633339598077304329808482924
T:
sphincss192shake256simple
4520747893?10167852315?16971193394?
T:
gui448
106371112161064742737810690529845
T:
sphincss256harakasimple
130790902781308745884613088897728
T:
sphincss256shake256robust
171900393241719097112217191867002
T:
sphincss192shake256robust
187181060921872805652818761699224
T:
sphincss256harakarobust
Cycles to verify 59 bytes
25%50%75%system
108961120011465
T:
rwb0fuz1024
161611647217181
T:
rainbowbinary256181212
282772844429160
T:
ronald512
319933231932869
T:
ronald768
382853867539242
T:
ronald1024
392473995041556
T:
rainbowbinary16242020
542015474455379
T:
ronald1536
545195528956394
T:
rainbow1aclassic363232
737547490377165
T:
gravitysphincss
754057589976545
T:
ronald2048
107997109445110193
T:
falcon512tree
134356135334136482
T:
ronald3072
134265136040136674
T:
falcon512dyn
133846137479138459
T:
sflashv2
187822189556191638
T:
donald512
215599216203217611
T:
ronald4096
216701217635218591
T:
qtesla1
220259222012222655
T:
falcon1024tree
237895242112248121
T:
gui184
261190261788262297haetae2
275372276824277430
T:
falcon1024dyn
281918283333284941ed25519
267874288147296265
T:
rainbow3cclassic683248
320127328941336723
T:
gemss128
326026333926338859
T:
gravitysphincsm
322735334916341459
T:
bluegemss128
337391346918357847
T:
gemss128v2
345970352264358998
T:
bluegemss128v2
383075389049399333
T:
redgemss128
392005402711409365
T:
redgemss128v2
402419402854404573T!!!dilithium2
428699429071429902
T:
qtesla3f
438968445686448592
T:
gravitysphincsl
460058470443479211
T:
sphincss128harakasimple
471121471681472278haetae3
473750476713482788
T:
donald1024
490085493613499311
T:
edons128k08n72nu8l4mu3
493848494655495720
T:
ecdonaldp256
500259504535505861
T:
rainbow1a
514034515008516204
T:
qtesla3s
544025545504547214
T:
pass769
591205592670593846haetae5
649363652303667278
T:
pass863
654842655419655959T!!!dilithium3
676473683027693790
T:
rainbow5cclassic963664
690665704626713855
T:
sphincss192harakasimple
693449714694731472
T:
gemss192
720854740525763458
T:
bluegemss192
747310751994756409T!!!dilithium2aes
729079752233776236
T:
sphincss128harakarobust
736089757286771487
T:
bluegemss192v2
747595767004796378
T:
redgemss192
774122776316779312
T:
qtesla1p
767583785377810569
T:
redgemss192v2
800704822716840955
T:
gemss192v2
824273825285827437
T:
ecdonaldp224
834291838349847934
T:
ecdonaldp160
934635937161944101
T:
edons128ref
9745689861361009738
T:
ecdonaldp192
101817310432651064184
T:
gui312
106313210660521070064
T:
ed448goldilocks
107782810986241121303
T:
sphincsf128harakasimple
115553111568011158587T!!!dilithium5
118268011839801187728
T:
rainbow1b
116990211959421214096
T:
sphincss192harakarobust
130043213063001316821T!!!dilithium3aes
145999314673261474129mqsignrr2567246
152368015286101532449mqsignlr2567246
154510615600111576415
T:
donald2048
153522615720131610968
T:
gemss256
156955516036351656773
T:
bluegemss256
161276316353661682304
T:
redgemss256
159549316420751708015
T:
bluegemss256v2
162588216557381675402
T:
gemss256v2
166161517088751741369
T:
redgemss256v2
171405917280671745504
T:
sphincsf192harakasimple
172935017514361785905
T:
sphincsf128harakarobust
184975818531451865232
T:
ecdonaldk163
184145218605931868324
T:
rainbow4a
188250818920081896390
T:
rainbow1c
192200119303691942769
T:
ecdonaldb163
225909123037692316189T!!!dilithium5aes
255805525740482586537
T:
ecdonaldk233
262752126365452656652
T:
ecdonaldb233
263956526483832659633
T:
rainbow3b
279085227973912802213
T:
ecdonaldp521
281096328399082872330
T:
sphincs256
291689129495692959416
T:
sphincsf192harakarobust
300860830922393176269
T:
gui448
321433332298343240235
T:
ecdonaldp384
371289037179313735891
T:
rainbow1acyclicc363232
373698237608093846713
T:
rainbow1acompres363232
384046538482063862874
T:
qtesla3p
388719838940773904712mqsignrr25611272
388846538970843906613mqsignlr25611272
430761143180304323605
T:
ecdonaldk283
451627945241504531944
T:
ecdonaldb283
456163745720564603871
T:
rainbow6a
508430552126225417982
T:
sphincss128shake256simple
693045769374586947201
T:
rainbow3c
719626372130307228121
T:
ecdonaldk409
753222775443957558128
T:
ecdonaldb409
766562677357277801919
T:
sphincss192shake256simple
781084178248357835050mqsignrr25614896
781399178303877852894mqsignlr25614896
817533682124428392014picnicl1full
98674831003947410221360
T:
sphincss256shake256simple
99680911034838610609113
T:
sphincss128shake256robust
115518351178956712392877picnicl1fs
123748021256945512699471
T:
sphincsf128shake256simple
144611431470747014859283
T:
sphincss256harakasimple
148183261500624915336939
T:
sphincss192shake256robust
159627541598918716031954
T:
ecdonaldk571
170805091710129017154642
T:
ecdonaldb571
169583701713870517326739picnicl1ur
176416171782742918154428picnicl3full
191191851949685519875694
T:
sphincss256shake256robust
200740102026458020541310
T:
sphincsf192shake256simple
201929602049494820673035
T:
sphincsf256shake256simple
225449332258113022600963
T:
rainbow3ccompres683248
240138702409693924150552
T:
rainbow3ccyclicc683248
246619932466305924664919
T:
luov863256
244955932476056225040467
T:
mqdss48
245840392492880225296142
T:
sphincsf128shake256robust
267257862696115927300765
T:
sphincsf256harakasimple
269172212725026327663852
T:
sphincss256harakarobust
303498893122868732151463picnicl3fs
390008463932360139724979
T:
sphincsf256shake256robust
393686193975303140509798picnicl5full
393566453988658740318698
T:
sphincsf192shake256robust
448838014489582944915197
T:
luov4849242
458216194591137646222319picnicl3ur
503523625053667950735001picnicl5fs
503827075070016151225689
T:
sphincsf256harakarobust
505851045155925752569040
T:
rainbow5ccompres963664
523821295246659052608521
T:
pqrsa15
518334115437442163904998picnic3l1
545730265524698255342985
T:
rainbow5ccyclicc963664
725425977290353873397093picnicl5ur
739762127492089575622914
T:
mqdss64
865321048653616886545643
T:
luov890351
101843345102191957102292262picnic3l3
124103005124160063124192956
T:
luov6468330
150641176150698253150720119
T:
luov8117404
197964945198537560242525737
T:
picnic2l1fs
182704150199564302205919451picnic3l5
228098541228195765228322649
T:
luov8086399
455764675456647602526750551
T:
picnic2l3fs
807151336823057971826279596
T:
picnic2l5fs