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; Bobcat (500f10); 2011 AMD G-T56N; 2 x 1650MHz; h8bobcat, supercop-20241022

[Page version: 20241215 22:59:18]

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, qtesla128, qtesla192, qtesla256

Cycles to generate a key pair
25%50%75%system
157819?158375?250672?ed25519
262409?263026?419040?aimer128s
263606?264665?420133?aimer128f
692441?694503?1100556?
T:
ed448goldilocks
784254?795815?1254513?nccsign1
835354836175838118T!!!dilithium2
625205?997890?999960?aimer192s
625580?998640?1001091?aimer192f
1004858?1026579?1577827?nccsign3
131277613224761354424nccsign1aes
1401288?1419884?2237829?T!!!dilithium3
983715?1497285?1601990?
T:
hector
1510871?1531561?2412487?aimer256s
1636394?1662505?2615031?nccsign5
168379916844311704994aimer256f
1076720?1692221?1708722?
T:
pass769
199506720109502034795
T:
pass863
2201606?2234443?3518929?T!!!dilithium5
265599626814552694309nccsign5aes
1852452?2817942?2853824?nccsign3aes
3087034?3149706?4881319?
T:
donald2048
2079080?3281675?3305644?T!!!dilithium2aes
336430633777683400197T!!!dilithium3aes
2756212?4276820?4304720?
T:
mqdss48
2911579?4393479?6679431?haetae5
2279763?5210128?7709568?haetae2
6234774?6246260?9986486?
T:
mqdss64
4583284?6804988?11134019?
T:
qtesla1
4623484?8142074?14199336?haetae3
5918333?9409802?9442306?T!!!dilithium5aes
11347921?11938835?21891496?
T:
qtesla3f
12424674?20320618?32496964?
T:
qtesla3s
252271362523741125259046
T:
sphincs256
259093982591941525941203
T:
sphincsf128harakasimple
19414926?26337420?33260759?
T:
qtesla1p
319598393197242631993017
T:
sphincsf128shake256simple
376733943767701937685607
T:
sphincsf128shake256robust
38143113?38248886?60988171?
T:
sphincsf192harakasimple
44271634?44289494?70893090?
T:
sphincsf128harakarobust
29250671?46705610?46730647?
T:
sphincsf192shake256simple
550692065522023755734946
T:
sphincsf192shake256robust
636502996377446963843895
T:
rainbowbinary256181212
54712789?65387992?90592789?
T:
falcon512tree
65462087?65516954?104851025?
T:
sphincsf192harakarobust
57610332?69310095?90165212?
T:
falcon512dyn
101299925?101331674?162275280?
T:
sphincsf256harakasimple
123488339123570761124852990
T:
sphincsf256shake256simple
88379165?141895629?143722626?
T:
rainbow1aclassic363232
113941518?144479202?164853690?
T:
qtesla3p
145289727?145333503?232696050?
T:
sphincsf256shake256robust
144772880145650765147631021
T:
rainbow1acompres363232
174546935?174636021?279596006?
T:
sphincsf256harakarobust
144643367?230182055?231916588?
T:
rainbow1acyclicc363232
189832321?254854467?285967917?
T:
falcon1024tree
180901665?257183269?272253442?
T:
falcon1024dyn
368143520?368893687?570712486?
T:
rainbowbinary16242020
381465256?381589198?609809014?mqsignlr2567246
555822666558600052564043585
T:
rainbow3cclassic683248
559046433559220545560161563mqsignrr2567246
645951522646038100646116859
T:
sphincss128shake256simple
588063851?917325714?935407183?
T:
rainbow3ccompres683248
583833672?924687131?930800567?
T:
rainbow3ccyclicc683248
121215624712124597871213719250
T:
sphincss192harakasimple
1233760687?1234361320?1976076560?
T:
sphincss256shake256simple
822535337?1319953892?1320074177?
T:
sphincss128harakasimple
936000244?1374878484?1504011647?
T:
sphincss192shake256simple
1464642716?1526463558?2340653871?
T:
rainbow5cclassic963664
1534441391?1544904046?2442950844?
T:
rainbow5ccompres963664
1562288219?1568861811?2461992750?
T:
rainbow5ccyclicc963664
161613880816162375131616385404
T:
sphincss256harakasimple
1769439638?1769572780?2834239139?
T:
sphincss192shake256robust
192709771419274838561928896155
T:
sphincss128shake256robust
2325499837?2327602980?3724153378?
T:
sphincss256shake256robust
1468682919?2351464866?2352420025?
T:
sphincss128harakarobust
2812208050?2815445279?4498732481?mqsignlr25611272
3174443976?3184425821?4960464335?mqsignrr25611272
4209322296?4227908300?6271659897?mqsignlr25614896
5187803125?5911466019?7845501655?mqsignrr25614896
Cycles to sign 59 bytes
25%50%75%system
848788528685971
T:
rainbowbinary256181212
177133?178120?283357?ed25519
201067203328207598
T:
rainbowbinary16242020
708396?710129?1133578?
T:
ed448goldilocks
9749949784811091621
T:
rainbow1aclassic363232
1334422?1371705?2126827?
T:
rainbow1acyclicc363232
1027924?1567638?1629606?
T:
hector
1719828?1746323?2715252?
T:
falcon512tree
2602862?2629121?3832105?nccsign1aes
2118234?2629614?4247393?
T:
pass769
2590854?2657274?4160473?mqsignlr2567246
2586764?2809012?7843879?
T:
pass863
2813022?2835370?4515003?
T:
falcon512dyn
2001698?2872002?4198948?nccsign1
288945929099452984748
T:
rainbow3ccyclicc683248
289217629149422981927
T:
rainbow3cclassic683248
1884211?3034699?6004299?
T:
qtesla1
3080275?3126440?4898651?
T:
donald2048
2384510?3229872?4402490?T!!!dilithium2
3275809?4504587?5693384?
T:
qtesla3f
5409803?5516394?8240372?nccsign3aes
3786862?5537545?7230189?nccsign3
3556515?5560431?5631016?
T:
falcon1024tree
5783315?5797475?9227882?mqsignrr2567246
3990437?5818693?8469046?
T:
qtesla1p
4524803?6003268?8851240?T!!!dilithium2aes
6329864?6335170?10021218?
T:
rainbow5ccyclicc963664
4061716?6648959?11313849?T!!!dilithium3
4369819?6911924?11161745?T!!!dilithium3aes
4393166?7017926?10812857?nccsign5
3918451?7279660?11696134?
T:
qtesla3s
5769231?7664186?10544026?T!!!dilithium5
5538491?8034672?9743508?nccsign5aes
5936289?9401784?9479884?
T:
falcon1024dyn
5095961?9709342?16694563?haetae2
100360571009275210134329
T:
rainbow5cclassic963664
119336671194441611958558aimer128f
10062067?14579617?32484319?haetae5
12032229?14714807?21005906?T!!!dilithium5aes
8336364?24112278?41201662?haetae3
26363749?26392335?42215131?mqsignrr25614896
16934310?27116791?27155432?mqsignlr25614896
17154544?27363467?27402118?mqsignlr25611272
17531209?28078299?58793258?
T:
qtesla3p
306658533067850230696272aimer192f
419877394202048542050030mqsignrr25611272
71350106?71598788?113500742?aimer256f
96656448?96764925?154554365?aimer128s
113153232113487537114267359
T:
rainbow1acompres363232
241479759?242460554?386322677?aimer192s
159950208?255499731?255572720?
T:
mqdss48
483225836483488036483781154
T:
sphincs256
542476933?542605990?868282363?
T:
mqdss64
444058742?699947888?715501819?
T:
rainbow3ccompres683248
795795292?796473468?1274899934?
T:
sphincsf192shake256simple
525299360?838701045?839629480?aimer256s
630592420?1009581929?1010698297?
T:
sphincsf128shake256simple
107079142210728900581079693905
T:
rainbow5ccompres963664
1110654724?1112034304?1782876187?
T:
sphincsf192harakasimple
113421841411351589141135743862
T:
sphincsf128shake256robust
956438706?1530274701?1531279834?
T:
sphincsf128harakasimple
1577991672?1579393349?2527549874?
T:
sphincsf128harakarobust
1766376615?1768614269?2828864894?
T:
sphincsf256shake256simple
235509975123619963862383042985
T:
sphincsf192shake256robust
2752434986?2754525684?4409826869?
T:
sphincsf256harakasimple
1921947413?3072579865?3076626476?
T:
sphincsf192harakarobust
3217991839?3227935204?5152311558?
T:
sphincsf256shake256robust
4676817676?4678603182?7486225022?
T:
sphincsf256harakarobust
9576168430?11147033791?14665218766?
T:
sphincss128shake256simple
14729486831?16014925970?20880426732?
T:
sphincss256shake256simple
15345730642?17015231818?22150707561?
T:
sphincss128harakasimple
16803108200?20974045607?23346633273?
T:
sphincss128shake256robust
19854568881?23512841050?27299194585?
T:
sphincss192shake256simple
24461029206?27900737160?32499735623?
T:
sphincss256harakasimple
26704853913?30765237756?33571153670?
T:
sphincss128harakarobust
27593207050?31501097590?36326316315?
T:
sphincss256shake256robust
34997432418?41580491499?45535085516?
T:
sphincss192harakasimple
381117506524270330733944258780951
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
797058076482355
T:
rainbowbinary256181212
168748172364175265
T:
rainbowbinary16242020
259032262286265230
T:
rainbow1aclassic363232
261350?262880?416299?
T:
falcon512tree
320254?324900?511471?
T:
falcon512dyn
541690?546032?862980?ed25519
570565574195575349haetae2
454248?709907?712899?
T:
qtesla1
539989?859133?861659?
T:
falcon1024tree
973845975607977383T!!!dilithium2
1026589?1033918?1651856?
T:
qtesla3s
668097?1062513?1068256?
T:
falcon1024dyn
111527211202351125803
T:
rainbow3cclassic683248
1209436?1228341?1905463?nccsign1
130208913039131322642haetae5
135728813622001379476
T:
qtesla3f
1446964?1463499?2314613?T!!!dilithium3
1519434?1532056?2422524?nccsign3
1048145?1646207?1651076?haetae3
166756316756101693717nccsign1aes
2179058?2194324?3489664?
T:
ed448goldilocks
1679139?2640848?2671937?
T:
pass769
2608771?2643280?4137012?nccsign5
2001655?3173366?3192565?T!!!dilithium2aes
318948232021653216666T!!!dilithium3aes
322630932409873263117
T:
pass863
2161939?3398724?3443218?
T:
qtesla1p
345413834689973489649nccsign5aes
2230396?3540826?3566899?nccsign3aes
3613824?3640961?5728230?
T:
donald2048
2408516?3825878?3852550?T!!!dilithium5
391259939984644048463
T:
rainbow5cclassic963664
4360262?4387831?6899199?mqsignlr2567246
5831010?5846866?9325381?mqsignrr2567246
5874857?5994585?9484776?
T:
sphincs256
4213711?6646495?6707266?
T:
hector
5828250?9271648?9301512?T!!!dilithium5aes
10693048?11099055?16567667?
T:
sphincss128shake256simple
111147671112588711151946aimer128f
15412353?15801507?24569584?
T:
sphincss192shake256simple
10115358?16156042?16288126?
T:
qtesla3p
20241332?20945367?32148898?
T:
sphincss256shake256simple
13183910?20958667?21008414?mqsignlr25611272
209543402097227121015183mqsignrr25611272
24103476?24601989?38482994?
T:
sphincss192harakasimple
16558405?24740256?26261197?
T:
sphincss128harakasimple
25442853?25913601?40324071?
T:
sphincsf128shake256simple
26590675?26659955?42496692?mqsignrr25614896
286236952871750328767292aimer192f
29908356?30811587?46875128?
T:
sphincss192shake256robust
21466922?32336803?33402090?
T:
sphincss128shake256robust
33742285?34093999?53061604?
T:
sphincss256harakasimple
37382462?38295132?59694703?
T:
sphincsf128harakasimple
38828618?39848923?61644826?
T:
sphincss256shake256robust
41035098?41855086?63865356?
T:
sphincsf256shake256simple
26263975?42051683?42080677?mqsignlr25614896
30573113?46757313?47448900?
T:
sphincss128harakarobust
49719366?50927614?78752074?
T:
sphincsf128shake256robust
52791301?53815728?84696960?
T:
rainbow1acyclicc363232
57699660?58991490?92275429?
T:
sphincsf192harakasimple
41077045?63315120?65037889?
T:
sphincsf192shake256simple
65856085?66174511?105922468?aimer256f
65779458?66804826?105734772?
T:
sphincsf128harakarobust
788619937961738281064060
T:
sphincsf256shake256robust
855473298589424587014262
T:
rainbow1acompres363232
95565041?95628572?153395503?aimer128s
63049301?99080345?100647142?
T:
sphincsf256harakasimple
111436449?112971059?147730799?
T:
sphincsf256harakarobust
117288933?119241416?184521093?
T:
mqdss48
80777926?125875351?127337687?
T:
sphincsf192shake256robust
106167982?167224396?168944613?
T:
sphincsf192harakarobust
237686181?238402595?380185981?aimer192s
323257061?328681157?520200254?
T:
rainbow3ccyclicc683248
519253717?519618118?827784846?aimer256s
511314097522043810527602493
T:
rainbow3ccompres683248
405309387?635055924?650151135?
T:
mqdss64
114401880911517947441159541961
T:
rainbow5ccompres963664
726955747?1185741987?1193068126?
T:
rainbow5ccyclicc963664