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; Bonnell (106ca); 2010 Intel Atom N455; 1 x 1000MHz; h2atom, supercop-20250922

[Page version: 20251005 01:31:31]

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: old (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, picnic3l1, picnic3l3, picnic3l5, picnicl1fs, picnicl1full, picnicl1ur, picnicl3fs, picnicl3full, picnicl3ur, picnicl5fs, picnicl5full, picnicl5ur, qtesla128, qtesla192, qtesla256

Cycles to generate a key pair
25%50%75%system
355393556435640
T:
picnic2l1fs
629396296863048
T:
picnic2l3fs
872788754495631
T:
picnic2l5fs
139077139311140596crossrsdpg128fast
139139139413141010crossrsdpg128balanced
139422139584140270crossrsdpg128small
232534232740234946crossrsdp128fast
232605232954235528crossrsdp128balanced
232610232979235094crossrsdp128small
285120285303286929aimer128f
285475285504287198aimer128s
289050289689292112crossrsdpg192small
289080289721292260crossrsdpg192balanced
289857290598292716crossrsdpg192fast
343374343476345216ed25519
488712491336494333crossrsdpg256fast
488114491368495325crossrsdpg256balanced
488627492499496338crossrsdpg256small
526116528878530210crossrsdp192small
525880529458530269crossrsdp192balanced
527575531159532273crossrsdp192fast
728142729212734924aimer192s
728334729656735296aimer192f
947536948118953956crossrsdp256small
947822948419951660crossrsdp256fast
947999949135962549crossrsdp256balanced
115525511576331161978T!!!dilithium2
121477612217461234898nccsign1
131185813131151317802
T:
ed448goldilocks
155197015579891565048nccsign3
171811917317851750839nccsign1aes
174422317488881756593aimer256f
174721317504491763971aimer256s
192557419285511947650T!!!dilithium3
208821820945922109944
T:
pass769
217825121889722199752T!!!dilithium2aes
222128022303702252021nccsign3aes
251015225164832529909nccsign5
259134726053292622494
T:
pass863
290666829119192915951
T:
mqdss48
304627830506233072416T!!!dilithium5
351430435282053547392nccsign5aes
378653837981863813087T!!!dilithium3aes
2823506?4620421?9801620?haetae2
637005863845926403466T!!!dilithium5aes
5402554?6640878?6781740?
T:
qtesla1
670373067114826735422
T:
mqdss64
4759705?7626230?17769794?haetae3
792779480423498109456
T:
donald2048
5460132?8558818?14659026?haetae5
7143190?10267167?13446074?
T:
qtesla3f
131109541313369813176891
T:
sphincsf128sha256simple
17028742?19108210?23333917?
T:
qtesla1p
192733141935078719397722
T:
sphincsf192sha256simple
195054821953004319606930
T:
sphincsf128shake256simple
12481470?20122644?27836654?
T:
qtesla3s
216337102166787521748877
T:
sphincsf128harakasimple
251022862511782125177851
T:
sphincsf128sha256robust
286028762864959228699482
T:
sphincsf192shake256simple
313595363145200531523306
T:
3icp
319839733205310332101581
T:
sphincsf192harakasimple
324323773257786232791153
T:
luov4849242
362595683631066836386971
T:
sphincsf128shake256robust
374536703751834037574894
T:
sphincsf192sha256robust
407593274082349041049514
T:
sphincsf128harakarobust
463095914642210146553656
T:
luov863256
505677315061935150681238
T:
sphincsf256sha256simple
512081935139884751536556
T:
rainbowbinary256181212
538838895393284454071742
T:
sphincsf192shake256robust
599113315996449260135646
T:
sphincsf192harakarobust
756833837576763576053273
T:
sphincsf256shake256simple
841886938428200284620175
T:
sphincsf256harakasimple
822246978769854093387682
T:
falcon512dyn
835708508829972496383627
T:
falcon512tree
78812059?89980940?114079141?
T:
qtesla3p
100934887101244158102896411
T:
tts6440
120410809120789486121075731
T:
luov6468330
134424113134518111134760490
T:
sphincsf256sha256robust
141916679142233652142376947
T:
sphincsf256shake256robust
159204381159361882159511843
T:
sphincsf256harakarobust
184041070184238739184699168
T:
luov890351
212066913212164205212428970
T:
pflash1
218553935218828948219428846
T:
luov8086399
238546174241829683243426567
T:
rainbowbinary16242020
246736029257045965272718575
T:
falcon1024dyn
250494171259106871280865709
T:
falcon1024tree
259511734260053768263020791
T:
rainbow5640
334015682334345954335293282
T:
luov8117404
419584639420240325422790786
T:
sphincss128sha256simple
561879889565079890572346063
T:
rainbow6440
613340034613770912616690315
T:
sphincss192sha256simple
629641439629964245630783698
T:
sphincss128shake256simple
689040037689719580690087828
T:
sphincss128harakasimple
803208302804867642805674126
T:
sphincss128sha256robust
814832975824667016825301036
T:
sphincss256sha256simple
918194265918409487918949717
T:
sphincss192shake256simple
116407975611647858341165412896
T:
sphincss128shake256robust
121339367812140344041215077820
T:
sphincss256shake256simple
129830666312989565781299582577
T:
sphincss128harakarobust
135270484313532295111354347243
T:
sphincss256harakasimple
147763256714783815801479027677
T:
redgemss128v2
226538911522659077232266650136
T:
sphincss256shake256robust
385185356638541105713855689355
T:
bluegemss128v2
784208650878440279007851430066
T:
redgemss192v2
241208493802412815251224138736041
T:
redgemss256v2
Cycles to sign 59 bytes
25%50%75%system
687526988870364
T:
rainbowbinary256181212
979239879099907
T:
tts6440
146670148001151519
T:
rainbowbinary16242020
243606245557274350
T:
rainbow5640
354475354590355275ed25519
393911395802420227
T:
rainbow6440
134279013450271348988
T:
ed448goldilocks
461420?1503513?2629221?
T:
3icp
170629717195351730708
T:
falcon512tree
2685002?2716285?5361817?
T:
pass769
326087432737923284826
T:
falcon512dyn
352960535458023569590
T:
falcon1024tree
1945614?3855074?6152046?
T:
pflash1
3905567?4832667?7291075?nccsign1
4809415?4833037?9727290?nccsign3
2759426?5378039?9240885?
T:
qtesla1
3897410?5647311?7856583?T!!!dilithium2
4519197?6364679?8680746?nccsign1aes
3322429?6615903?6677362?
T:
pass863
3816023?6681407?11614879?
T:
qtesla3f
672342767310796750970crossrsdpg128fast
679101968112556839038
T:
falcon1024dyn
754026275541467584059crossrsdp128fast
5082011?7580276?9476895?T!!!dilithium2aes
794501079987188072170
T:
donald2048
5649543?8578794?13194920?nccsign3aes
6725504?10125034?16314724?
T:
qtesla1p
6065425?10140850?15742832?T!!!dilithium3
8122354?11157421?17767542?T!!!dilithium3aes
8319257?11699345?16181699?T!!!dilithium5
8222636?11777396?16446675?nccsign5
127328021275288312806942aimer128f
135734271358645713610077crossrsdpg128balanced
7320169?13870761?26932622?haetae2
140669631407408814099324crossrsdp128balanced
9482350?14316661?18243279?nccsign5aes
155975711560606215624685crossrsdpg192fast
9475295?15613016?21634221?T!!!dilithium5aes
6049859?15921887?28297237?
T:
qtesla3s
177935531781231617833251crossrsdp192fast
206318082064496220682417crossrsdpg192balanced
11221367?21240486?45986337?haetae3
226505142268405222790411
T:
luov863256
270497302707637827135368crossrsdpg128small
276491442766134627736572crossrsdpg256fast
283590652837485328455098crossrsdp128small
308532033087072030963293crossrsdp192balanced
329742513299620333093851crossrsdp256fast
332244863336145133433479aimer192f
353902733541457335470625crossrsdpg256balanced
18648091?36078708?62319482?
T:
qtesla3p
19916769?38323733?50661317?haetae5
390512883908207439151812crossrsdpg192small
462655324635230946412747crossrsdp192small
556274985568303055771452crossrsdp256balanced
633651676344546963525158crossrsdpg256small
725191757288833073641893aimer256f
786054697871190979092974
T:
luov890351
897254088978875989896114crossrsdp256small
100846552100975216101355006aimer128s
113012860113384753114286395
T:
luov4849242
140123249140488720140850729
T:
luov8117404
176989399177307780177961173
T:
mqdss48
258242116260485624261664204aimer192s
413234998414008884416334398
T:
sphincsf128sha256simple
447329810457735166464595286
T:
luov6468330
539928496540598104541431204
T:
sphincsf192sha256simple
546153618549163064549730867
T:
mqdss64
556827804557514475653468197aimer256s
618309113618908341619703127
T:
sphincsf128shake256simple
754325741754850101755549840
T:
sphincsf128sha256robust
783453444784156697785198173
T:
sphincsf192shake256simple
806286147806936894807570790
T:
sphincsf128harakasimple
896124569896748048897363932
T:
picnic2l1fs
895302244897295864903795367
T:
luov8086399
939076766939832272940262655
T:
sphincsf192harakasimple
103979079510402881891040948105
T:
sphincsf192sha256robust
109630043410971093561098094894
T:
sphincsf128shake256robust
807361437?1146953804?1341818953?
T:
redgemss128v2
122936460912300262291230737299
T:
sphincsf256sha256simple
141241483014138213471415108374
T:
sphincsf128harakarobust
144274840414437444741444805178
T:
sphincsf192shake256robust
173567602217366969031738300576
T:
sphincsf192harakarobust
173872522117395581411740926986
T:
sphincsf256shake256simple
230201583523031942262304273166
T:
sphincsf256harakasimple
252025271125208980632522223033
T:
picnic2l3fs
313778477831393748643141281465
T:
sphincsf256sha256robust
315062733931522355413153733919
T:
sphincsf256shake256robust
3299243880?3911572500?4649873000?
T:
redgemss192v2
414624546141472886934148870574
T:
sphincsf256harakarobust
544880765554498545415452725674
T:
picnic2l5fs
623890386262438876926284988273
T:
sphincss128sha256simple
7439058436?8885182452?11969750896?
T:
redgemss256v2
935563963393573493799367377539
T:
sphincss128shake256simple
104792693791048810084510541581295
T:
sphincss256sha256simple
111228232021112713725511138149960
T:
sphincss128sha256robust
129601905951296271766912981089179
T:
sphincss128harakasimple
145041475841450776389014522788925
T:
sphincss256shake256simple
149309423831493775694214949160130
T:
sphincss192sha256simple
162563400191625889524516273738013
T:
sphincss128shake256robust
195475891501955708986019564578999
T:
sphincss192shake256simple
205338330992054148470320557786993
T:
sphincss256harakasimple
17691280898?21244020290?24956338803?
T:
bluegemss128v2
221106549722211896823722143366908
T:
sphincss128harakarobust
258469265402586239888625885549119
T:
sphincss256shake256robust
Cycles to verify 59 bytes
25%50%75%system
686806897169273
T:
rainbowbinary256181212
802258067981154
T:
3icp
964549717898187
T:
rainbow5640
111351113205115020
T:
rainbowbinary16242020
121965123466124101
T:
tts6440
123335124437126349
T:
rainbow6440
256702260372261206
T:
falcon512tree
321720325485326279
T:
falcon512dyn
519315523217526888
T:
falcon1024tree
657436659325661769
T:
falcon1024dyn
731766746921772609
T:
bluegemss128v2
787032788539796171
T:
qtesla1
790293810625824431
T:
redgemss128v2
843369875285912985
T:
pflash1
898963900239904471haetae2
126951512772271283080ed25519
140797614095911411634T!!!dilithium2
154454515473131550439haetae3
162788116305681635512
T:
qtesla3f
163363216684081704102
T:
redgemss192v2
180149118039491809313
T:
qtesla3s
183596018381251841680haetae5
219644521972712199931T!!!dilithium3
224435122497222260524nccsign1
226951122774542291088T!!!dilithium2aes
268929226958882708605nccsign1aes
275370027587522766799nccsign3
300354530954953153834
T:
redgemss256v2
323266632456423253979
T:
pass769
334194233533233363306nccsign3aes
345315434545163462714T!!!dilithium5
382022638273403844777T!!!dilithium3aes
394051239500723958259
T:
pass863
398362239889714003345crossrsdpg128fast
404333940504504072277
T:
qtesla1p
441209744153514437396crossrsdp128fast
470736447173154722065nccsign5
482771948423854858085
T:
ed448goldilocks
559937656141325626826nccsign5aes
647858264913736516387T!!!dilithium5aes
690696270383347216671
T:
sphincss128sha256simple
731477873253947343726crossrsdpg128balanced
875441287651398791228crossrsdp128balanced
930862693156859331745crossrsdpg192fast
930826593599529462999
T:
donald2048
102036161041605410714325
T:
sphincss128shake256simple
104798381049327910514172crossrsdp192fast
107603881095641011081847
T:
sphincss192sha256simple
114917541150269311521355crossrsdpg192balanced
117966791181527711868457aimer128f
132512231358701313931197
T:
sphincss128harakasimple
136918551402770314257780
T:
sphincss128sha256robust
142626021427988414297977crossrsdpg128small
142702751443935114858319
T:
sphincss256sha256simple
150224031535024315589393
T:
sphincss192shake256simple
162888541630563116322164crossrsdpg256fast
169677461699360417041850
T:
qtesla3p
167789641704443817191017
T:
sphincsf128sha256simple
179129411793965318003421crossrsdp128small
187227571873934018798927crossrsdp192balanced
187453281875747718776479crossrsdpg256balanced
189135101893369418991593
T:
luov863256
193078741933612719426323crossrsdp256fast
193142031985982220316140
T:
sphincss128shake256robust
197254892002462620364844
T:
sphincss256shake256simple
207614742077519920830195crossrsdpg192small
249525962527553025634605
T:
sphincsf128shake256simple
246997462537718026167952
T:
sphincss128harakarobust
275996132782364428284538
T:
sphincsf192sha256simple
276187142802175428470177
T:
sphincss256harakasimple
282263982823513828286852crossrsdp192small
281048902836797828714380
T:
sphincsf256sha256simple
309212773096626831086306aimer192f
309740573100103831093740crossrsdpg256small
306141763107713531429526
T:
sphincsf128harakasimple
323129473234169832425879crossrsdp256balanced
333598573372534534387715
T:
sphincsf128sha256robust
379488073874714139228638
T:
sphincss256shake256robust
397250834005197240411084
T:
sphincsf192shake256simple
400444854069136441214458
T:
sphincsf256shake256simple
472820634812778049021279
T:
sphincsf128shake256robust
480259954857518949202304
T:
sphincsf192harakasimple
510127475137132352179014
T:
sphincsf256harakasimple
520689555212563952220324crossrsdp256small
558292475613596256927690
T:
sphincsf192sha256robust
583492315922711560269345
T:
sphincsf128harakarobust
675380766765270067915278aimer256f
686104946870437869089502
T:
luov890351
734201847411287475412745
T:
luov4849242
764812297748580978128817
T:
sphincsf192shake256robust
767591497782298578591816
T:
sphincsf256shake256robust
789794247970648480755273
T:
sphincsf256sha256robust
937099209415608494933657
T:
sphincsf192harakarobust
9840857599173407100222875
T:
sphincsf256harakarobust
100096049100294272100572413aimer128s
123022151123203619123642344
T:
luov8117404
129265866131481858133269784
T:
mqdss48
229095662237735129239314898
T:
luov6468330
256808620258683219258896484aimer192s
402465204407438535411983247
T:
mqdss64
419901978421368776423109993
T:
luov8086399
430585892431519725432004239
T:
picnic2l1fs
553651527?554350820?885653895?aimer256s
958727029959399826960642917
T:
picnic2l3fs
169122993016927030001693959963
T:
picnic2l5fs