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; Ivy Bridge+AES (306a9); 2012 Intel Core i5-3427U; 2 x 1800MHz; hunsnivy, 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
527253055485picnicl1full
532454235677picnic3l1
767877567976picnic3l3
757578198023picnicl3full
9835989610290picnicl5full
103331038610439picnic3l5
118501189611990picnicl1ur
119681202112091picnicl1fs
124711252312654
T:
picnic2l1fs
227092280522925picnicl3ur
226642321123361
T:
picnic2l3fs
235572360423740picnicl3fs
302563032030573
T:
picnic2l5fs
308523098331280picnicl5fs
31076?31359?50608?picnicl5ur
624016250463605ed25519
142818144311148329
T:
ecdonaldp256
158618158979162048
T:
donald512
201205201574203086
T:
ecdonaldp224
208765208959209452
T:
ed448goldilocks
349620350071350705T!!!dilithium2
418130418569423126
T:
donald1024
431036432509434461
T:
pass769
545434547335550195
T:
pass863
660919662337663179T!!!dilithium3
740220743220747911T!!!dilithium2aes
761085761253761853
T:
sphincsf128harakasimple
837610841165849073
T:
edons128k08n72nu8l4mu3
847717849981858240
T:
ecdonaldp160
890541893073899058
T:
ecdonaldp521
945161945579946021
T:
sphincsf128harakarobust
989805992095998239T!!!dilithium5
102398910271011033230
T:
ecdonaldp192
102907910331591042586
T:
ecdonaldk163
106580810703461075377
T:
ecdonaldb163
112442211263631128614
T:
mqdss48
115023311510011154444
T:
sphincsf192harakasimple
132567013416151356812
T:
donald2048
135470913622131367814T!!!dilithium3aes
137430613806491393436
T:
ecdonaldk233
141892614234511429810
T:
ecdonaldb233
160820116098751611789
T:
sphincsf192harakarobust
905434?2000733?3372616?haetae2
1645934?2156833?2748388?
T:
qtesla1
227070522809802294098T!!!dilithium5aes
1534776?2426105?6020263?haetae3
245027424546652467296
T:
ecdonaldk283
255870325618012567734
T:
mqdss64
258572626002552618307
T:
edons128ref
260166726081012616527
T:
ecdonaldb283
292490129263622934058
T:
sphincsf256harakasimple
1602739?3590241?5194037?haetae5
362712036304313636926
T:
sphincsf256harakarobust
3619370?3645308?7030553?
T:
qtesla3f
374620337588633769714
T:
ecdonaldp384
430555543221294334088
T:
ecdonaldk409
462671146364124648273
T:
ecdonaldb409
5377100?8825213?10758061?
T:
qtesla3s
891543389186958928732
T:
sphincsf128shake256simple
7934888?9043434?11141473?
T:
qtesla1p
947805495017529533200
T:
ecdonaldk571
102871051029217310319212
T:
ecdonaldb571
113977161139906611400527
T:
sphincs256
120714841209070912395809
T:
rainbow1aclassic363232
125390341254705712554986
T:
rainbow1acompres363232
125551201256323812571591
T:
rainbow1acyclicc363232
129694061299972013036957
T:
rainbowbinary256181212
132924481329771113315381
T:
sphincsf192shake256simple
169622921696607716971593
T:
sphincsf128shake256robust
11219335?21248724?27810250?
T:
rwb0fuz1024
220068422203904122082958
T:
luov4849242
242484462425688224283059
T:
sphincss128harakasimple
253545882535947725366597
T:
sphincsf192shake256robust
225106892549494727926554
T:
falcon512tree
23549097?26531144?31322835?
T:
falcon512dyn
303012043031235630320982
T:
sphincss128harakarobust
304024703048256130530537
T:
luov863256
350214573502590535048473
T:
sphincsf256shake256simple
355842293558791735595614
T:
sphincss192harakasimple
24774001?36885978?53577713?
T:
ronald512
38523990?44899514?51421125?
T:
qtesla3p
478442324786956448179742
T:
sphincss256harakasimple
504565965053522750549042
T:
sphincss192harakarobust
584222745843458858445321
T:
sphincss256harakarobust
620568626232523662632170
T:
rainbowbinary16242020
654225516543797265455274
T:
sphincsf256shake256robust
698896277007286170255310
T:
luov6468330
695084747065363775661709
T:
falcon1024dyn
716117057166778872081573
T:
rainbow3cclassic683248
45281092?71983024?92685383?
T:
ronald768
705500397465341784674353
T:
falcon1024tree
754848777554162075616258
T:
rainbow3ccompres683248
755843557571181477542417
T:
rainbow3ccyclicc683248
802065648024240380283685
T:
bluegemss128
827511488276721782818616
T:
redgemss128
838997038394325284052949
T:
gemss128
881119358816151888190277
T:
redgemss128v2
913254159135125291438417
T:
bluegemss128v2
920151929215199992338725
T:
gemss128v2
55406886?92533912?150443106?
T:
ronald1024
111191690111410294111685028
T:
luov890351
128380907128516782128605365mqsignlr2567246
130353862130450465130652926
T:
luov8086399
177346645177508819177589492mqsignrr2567246
198070817198379533199642712
T:
luov8117404
239240263239311878239457550
T:
rainbow5cclassic963664
254741879254821775255095890
T:
rainbow5ccompres963664
255319143255424492255506630
T:
rainbow5ccyclicc963664
266409894266461979266487445
T:
sflashv2
292589979292606639292759553
T:
sphincss128shake256simple
168033535?347650718?489088803?
T:
ronald1536
425413263425936606426632188
T:
sphincss192shake256simple
459380216461833341462543072
T:
redgemss192
486998753487164120487328857mqsignlr25611272
495088349495331708496706379
T:
redgemss192v2
497356226498112085498921711
T:
bluegemss192
513807118514483895515173606
T:
bluegemss192v2
520027356520158020520325764
T:
gemss192
524204376524481875525770816
T:
gemss192v2
547131331547485791547747847
T:
sphincss128shake256robust
563064343563448999563496126
T:
sphincss256shake256simple
665283067665559985666904831mqsignrr25611272
481270511?758687548?1176817854?
T:
ronald2048
815583989815983564816333289
T:
sphincss192shake256robust
868784604882092048895791318
T:
gui184
104928997910495472611051152152
T:
sphincss256shake256robust
110949698011130569191115833966
T:
redgemss256v2
126073949112610198951261725912mqsignlr25614896
134715316513476476541350223924
T:
redgemss256
138321098613899403811393254521
T:
bluegemss256v2
139674023613970005271399712299
T:
rainbow1a
139924189214025151481405222168
T:
gemss256v2
150957844315116747761514008236
T:
gemss256
160049580716006433451600780341
T:
gravitysphincss
166188996616632720771663647776mqsignrr25614896
1158541491?1847509239?2885112635?
T:
ronald3072
298083903429814257012984122026
T:
rainbow1b
2022974356?4560033372?6342480094?
T:
ronald4096
483889730548890799095009363988
T:
gui312
513346760451360283075149360195
T:
rainbow1c
515774073253112864875416620732
T:
pqrsa15
119456105801197555414511986760286
T:
bluegemss256
120627945171206371075112073907601
T:
rainbow4a
153260350161536925269915371732816
T:
rainbow3b
256202504842562264577825623275616
T:
gravitysphincsl
281798601942836910195628511703474
T:
gui448
518424167805186649204951956930244
T:
gravitysphincsm
549803602545498775498455003327046
T:
rainbow6a
551378341635525967686555394113990
T:
rainbow3c
678798620266788554779367891394057
T:
rainbow6b
Cycles to sign 59 bytes
25%50%75%system
188191894219293
T:
rainbowbinary256181212
420854259243548
T:
rainbowbinary16242020
662916635766648ed25519
109025110155111048
T:
rainbow1aclassic363232
111720112134113864
T:
rainbow1acyclicc363232
124495124884125230
T:
sflashv2
195226195644196299
T:
ecdonaldp256
218612220376221472
T:
ed448goldilocks
281084281686282649
T:
ecdonaldp224
298036301667305579
T:
donald512
477920479706483399
T:
rainbow3cclassic683248
478876479975483276
T:
rainbow3ccyclicc683248
498735504697512988
T:
ronald512
559933561621567114
T:
donald1024
609949614624618300
T:
rainbow1a
760546762574768376mqsignlr2567246
760196770740777284
T:
falcon512tree
875614888869898025
T:
ronald768
894317896183898811
T:
ecdonaldp160
541592?924716?1853671?
T:
qtesla1
510213?1016686?1042410?
T:
pass769
107220610741921077637
T:
ecdonaldk163
107849210819541085713
T:
ecdonaldp192
111227811197681127266
T:
ecdonaldb163
111090011237381137235
T:
rwb0fuz1024
115859211608781169273
T:
rainbow5ccyclicc963664
115939611633131168732
T:
rainbow5cclassic963664
118575611934751204698
T:
ronald1024
122476912327721243103
T:
falcon512dyn
654109?1301123?1967771?
T:
pass863
927325?1323375?2152506?T!!!dilithium2
866241?1326410?2386700?
T:
qtesla3f
132589013293291334423mqsignrr2567246
132696113381401352404
T:
donald2048
135013513521351355198
T:
ecdonaldp521
135001213537261369107
T:
edons128k08n72nu8l4mu3
144260014451091448417
T:
ecdonaldk233
149209814945291497598
T:
ecdonaldb233
152647015387031545049
T:
falcon1024tree
1049770?1789862?2933494?T!!!dilithium2aes
1003411?1877052?3403438?
T:
qtesla1p
188168718966781912713
T:
rainbow4a
985271?1911864?3878437?
T:
qtesla3s
192199019235531930562
T:
rainbow1c
196732819697601978194
T:
rainbow1b
204548420480242055040mqsignlr25611272
1766064?2306671?3395071?T!!!dilithium3
249965825103712527255
T:
falcon1024dyn
256263825781942597267
T:
ecdonaldk283
271350927190772744292
T:
ecdonaldb283
2208505?2745853?4131083?T!!!dilithium5
320963932153193222374mqsignrr25611272
324644632629103307631
T:
edons128ref
325861932748423289020
T:
ronald1536
1843639?3485098?6747810?haetae2
2222331?3625406?5116828?T!!!dilithium3aes
365333736578863663870
T:
rainbow3b
391119239225023937901
T:
ecdonaldp384
406631440742994092765
T:
rainbow6a
1640937?4130092?7864378?haetae3
428061642852954291634mqsignlr25614896
3508580?4382765?6676284?T!!!dilithium5aes
454493445516034567397
T:
ecdonaldk409
484935248541774864222
T:
ecdonaldb409
531286753357015356523
T:
ronald2048
628326362898036293948picnicl1full
653866765449946548850mqsignrr25614896
724564672490607258714
T:
rainbow3c
800883080175878032557
T:
rainbow1acompres363232
5078036?8148134?14282681?haetae5
5941905?8217413?12985188?
T:
qtesla3p
843986184453858553709
T:
luov863256
7757899?9242451?11745613?
T:
redgemss128v2
927884992955629303266picnicl1fs
993453999453009969742
T:
ecdonaldk571
7586562?10053996?12079670?
T:
redgemss128
108404961084526710849894
T:
rainbow6b
108014291086396510985443
T:
ecdonaldb571
114129451141713411423681picnicl1ur
121769711218849212197396picnicl3full
135438561355311813565458
T:
gravitysphincss
143559181437504514404616
T:
ronald3072
199759911999192720000851picnicl5full
230298622303746623043886picnicl3fs
240369552406244324077365
T:
gravitysphincsm
18490835?26006243?31048055?
T:
redgemss192v2
268490092685582926862716
T:
mqdss48
275218862756147327587478
T:
sphincsf128harakasimple
284647432848561428499618
T:
gravitysphincsl
286850962869088228699175picnicl3ur
287203602873523028766602
T:
luov890351
305361183062015330780501
T:
ronald4096
306305373066976130708796picnic3l1
338573763390161233928987
T:
sphincsf192harakasimple
28300095?34367514?42775733?
T:
redgemss192
351493133518741735217212
T:
sphincsf128harakarobust
13067045?39241612?90913763?
T:
gui184
395920043961096639665157picnicl5fs
37181715?42658752?54843572?
T:
redgemss256v2
469904224701650647070785
T:
luov4849242
479107494793208747964238picnicl5ur
483791784839556648433725
T:
sphincsf192harakarobust
487693334882013849748757
T:
luov8117404
497296364976283549774360
T:
rainbow3ccompres683248
43045599?54296311?65487872?
T:
redgemss256
650948156512650565173682picnic3l3
763041307634098076363960
T:
sphincsf256harakasimple
775496907757611477621182
T:
mqdss64
979251109802809398100762
T:
sphincsf256harakarobust
109122915109232792109293069picnic3l5
137857532138028479138198271
T:
rainbow5ccompres963664
140154856140210369140246123
T:
luov6468330
168358478168416487168477624
T:
pqrsa15
211594601211646922211693242
T:
sphincs256
281842320282044601282206818
T:
sphincsf128shake256simple
282663913282756770283081585
T:
luov8086399
287015503287136721287236857
T:
picnic2l1fs
285518771?342417027?399480165?
T:
bluegemss128v2
363123936363334325363599916
T:
sphincsf192shake256simple
279546516?390871652?446797346?
T:
bluegemss128
458074225458161472458269436
T:
sphincss128harakasimple
511176417511508980511770688
T:
sphincsf128shake256robust
586120089586289181586904143
T:
sphincss128harakarobust
674464105674717549676402962
T:
sphincss256harakasimple
677305160677669894678212327
T:
sphincsf192shake256robust
799481175799650797799881569
T:
sphincsf256shake256simple
830545673831259260831613875
T:
picnic2l3fs
860589422860772819860884697
T:
sphincss256harakarobust
818329992?982214382?1308468787?
T:
bluegemss192v2
103148704810321815851032600788
T:
sphincss192harakasimple
702598022?1402547278?2581654097?
T:
gui312
1173222817?1407008487?1643905260?
T:
bluegemss192
145093028814515745811452071011
T:
sphincsf256shake256robust
150933891315096780441510191004
T:
sphincss192harakarobust
1300237469?1557857491?1816156105?
T:
bluegemss256v2
175584954717564679001762231985
T:
picnic2l5fs
1784975642?2146559704?2853776637?
T:
gemss128v2
1878528804?2259021351?3002154332?
T:
bluegemss256
1922624832?2306618560?2691195560?
T:
gemss128
435308064043534532464359968247
T:
sphincss128shake256simple
669119541566962613316696799454
T:
sphincss256shake256simple
4468439350?6696573663?7811959101?
T:
gemss192v2
762847021876338848277659213463
T:
sphincss128shake256robust
903152618390325902599033370125
T:
sphincss192shake256simple
7934567924?9675174270?12696535765?
T:
gemss192
9279896003?11136056739?14851810516?
T:
gemss256v2
119795750671199146577511996696880
T:
sphincss256shake256robust
158524149061585476017015877114797
T:
sphincss192shake256robust
14880833482?17858317286?20847335418?
T:
gemss256
13745184762?27481557283?48153208314?
T:
gui448
Cycles to verify 59 bytes
25%50%75%system
9609994810136
T:
rwb0fuz1024
169671702817117
T:
rainbowbinary256181212
332913379633958
T:
ronald512
350893570136240
T:
rainbowbinary16242020
352583572136200
T:
ronald768
405904112841992
T:
rainbow1aclassic363232
415984203942689
T:
ronald1024
563525672957503
T:
ronald1536
771357795178706
T:
ronald2048
114858115570116581
T:
falcon512tree
113347116355119621
T:
gravitysphincss
133257133547134052
T:
qtesla1
133093134833135709
T:
ronald3072
137944140021140509
T:
sflashv2
143931145404146080
T:
falcon512dyn
192783194034195576
T:
donald512
203679205463207357
T:
rainbow3cclassic683248
206250207018209333
T:
ronald4096
210390211187212592ed25519
214968217970223485
T:
gui184
234388235497236915
T:
falcon1024tree
256934257211257800haetae2
252747266830280622
T:
bluegemss128
256056271610276776
T:
gemss128v2
262469275563283390
T:
bluegemss128v2
273912281920290222
T:
redgemss128
274238283641289622
T:
gemss128
280224293786345544
T:
redgemss128v2
298843300531301168
T:
falcon1024dyn
369790370344371250
T:
qtesla3s
379039379577380567
T:
qtesla3f
395171395411395830T!!!dilithium2
425687426463428791
T:
rainbow1a
441540442119443281
T:
ecdonaldp256
441476444284446472
T:
donald1024
465360465901466666haetae3
473248478311484034
T:
edons128k08n72nu8l4mu3
491171500446511124
T:
gravitysphincsm
517098520012525268
T:
rainbow5cclassic963664
521377521766522802
T:
ecdonaldp224
586511587138588204haetae5
588801602208615145
T:
sphincss128harakasimple
624607641250658900
T:
gemss192
646078647916651368
T:
pass769
656997657192657938T!!!dilithium3
650030666454682188
T:
gemss192v2
672185673597676268
T:
qtesla1p
655974679786692342
T:
redgemss192
672755680323690337
T:
gravitysphincsl
672270687029697756
T:
bluegemss192
695688698562701397
T:
ed448goldilocks
691039700770712873
T:
redgemss192v2
689952708370726834
T:
bluegemss192v2
720042722930726147T!!!dilithium2aes
811106814514818475
T:
pass863
818504822144825743
T:
edons128ref
885266902237915408
T:
sphincss192harakasimple
904398909059914335
T:
ecdonaldp160
99257010141611034720
T:
sphincss128harakarobust
103550810562971073722
T:
gui312
106109010627901067589T!!!dilithium5
105683510642001068670
T:
ecdonaldp192
109553210960161096768
T:
rainbow1b
116443611659781168540mqsignrr2567246
114692111735681188224
T:
gemss256v2
117916011798021182766mqsignlr2567246
118980212158601238729
T:
bluegemss256v2
119779912213391232705
T:
sphincss256harakasimple
125331812560491260904T!!!dilithium3aes
130201213293201367964
T:
gemss256
132781413635711392352
T:
redgemss256v2
135356913772021400162
T:
redgemss256
137830313980611426486
T:
sphincsf128harakasimple
154767315558241570358
T:
donald2048
158050715984411624623
T:
sphincss192harakarobust
160515216060721616503
T:
rainbow4a
167954016805161685304
T:
rainbow1c
206742720718802075396
T:
ecdonaldk163
214904321606822175574
T:
ecdonaldb163
217117421905772217551
T:
sphincss256harakarobust
221727622200162224577T!!!dilithium5aes
221305622292712245681
T:
sphincsf192harakasimple
228118623042102333918
T:
sphincsf256harakasimple
234168323749522406677
T:
sphincsf128harakarobust
260567526075892610226
T:
ecdonaldp521
266711926892692721836
T:
sphincs256
279078127968192800621
T:
ecdonaldk233
288818928922252894895
T:
ecdonaldb233
288845428957752907048mqsignrr25611272
289328229222292960870
T:
gui448
294483129490302959262mqsignlr25611272
329169533055043321492
T:
ecdonaldp384
332323133342763342139
T:
qtesla3p
375131437564443761241
T:
rainbow6a
376590337725203777404
T:
rainbow3b
389842239251853954199
T:
sphincsf192harakarobust
410049341471704174039
T:
sphincsf256harakarobust
443545544416094447351
T:
rainbow1acompres363232
443757044427164498348
T:
rainbow1acyclicc363232
470759348408304959494
T:
sphincss128shake256simple
499702350010295009579
T:
ecdonaldk283
499163350018355017151picnicl1full
529443053093885364950
T:
ecdonaldb283
609383461114576123419mqsignrr25614896
611229561192836126460mqsignlr25614896
623069862339116307739
T:
rainbow3c
675975967626636768410
T:
luov863256
696262271122957266963
T:
sphincss192shake256simple
789942479146707925416picnicl1fs
884506488563368869204
T:
ecdonaldk409
913471892841689439072
T:
sphincss256shake256simple
948608794980229508580
T:
ecdonaldb409
935505695363059775930
T:
sphincss128shake256robust
956901595827729602063picnicl1ur
970641697136839724107
T:
rainbow6b
981794198290169842305picnicl3full
112514921137432011548693
T:
sphincsf128shake256simple
137267051390168314303954
T:
sphincss192shake256robust
162189801623518916272201picnicl5full
176103471797298218202192
T:
sphincss256shake256robust
182149981850071618681151
T:
sphincsf192shake256simple
185143601869528018883331
T:
sphincsf256shake256simple
189973221922668519393082
T:
mqdss48
194632451948804419521310
T:
ecdonaldk571
200242382004016320050067picnicl3fs
211623942124510921492339
T:
ecdonaldb571
222720862256718122852134
T:
sphincsf128shake256robust
228283772284806522866831
T:
pqrsa15
239459652395284623961330
T:
luov890351
246919602471445624743773picnicl3ur
252256932526545225290945picnic3l1
267511392679076726795463
T:
rainbow3ccompres683248
267864462686507528781688
T:
rainbow3ccyclicc683248
326500383266054932684173
T:
luov4849242
346695893468699834714856picnicl5fs
356842483608890536673957
T:
sphincsf256shake256robust
359922483646721236830034
T:
sphincsf192shake256robust
413319234135729142543288
T:
luov8117404
422808884236060042450804picnicl5ur
522652525228821852464881picnic3l3
560616085649794657012826
T:
mqdss64
603314986034453160413975
T:
rainbow5ccyclicc963664
603442486036080760570309
T:
rainbow5ccompres963664
826743948275205482771235
T:
luov6468330
830678618314451283216124picnic3l5
118999995119111013119190060
T:
picnic2l1fs
144517534144907294153929339
T:
bluegemss256
162366212162508718163029024
T:
luov8086399
269484203269941052270872920
T:
picnic2l3fs
477650848478122546478511458
T:
picnic2l5fs