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-20240909

[Page version: 20241011 15:42:08]

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
157381?159177?252400?ed25519
263591264076264860aimer128f
433252433642434577aimer128s
625152?627836?999500?aimer192f
692441?694503?1100556?
T:
ed448goldilocks
784197?794195?1228184?nccsign1
823232826134826800T!!!dilithium2
633930?1007176?1010919?aimer192s
139988714017581422430T!!!dilithium3
155985715625311584049aimer256f
1572682?1602684?2498614?aimer256s
158357016050681634903nccsign3
1076720?1692221?1708722?
T:
pass769
199506720109502034795
T:
pass863
2032458?2053971?3237918?T!!!dilithium2aes
1433811?2103761?2139628?nccsign1aes
1573936?2480070?2494819?nccsign5
1761970?2776109?2803568?nccsign3aes
3087034?3149706?4881319?
T:
donald2048
2326731?3644827?3680675?T!!!dilithium5
1688155?4103592?9332329?haetae2
2712830?4192145?4240624?nccsign5aes
2756212?4276820?4304720?
T:
mqdss48
2965904?5301351?7644441?haetae3
3389971?5382952?5413290?T!!!dilithium3aes
3475599?5467226?8993731?haetae5
5701905?5722325?9115326?T!!!dilithium5aes
6234774?6246260?9986486?
T:
mqdss64
4583284?6804988?11134019?
T:
qtesla1
11347921?11938835?21891496?
T:
qtesla3f
12424674?20320618?32496964?
T:
qtesla3s
259093982591941525941203
T:
sphincsf128harakasimple
19414926?26337420?33260759?
T:
qtesla1p
319598393197242631993017
T:
sphincsf128shake256simple
376733943767701937685607
T:
sphincsf128shake256robust
38143113?38248886?60988171?
T:
sphincsf192harakasimple
23957950?38326644?38395751?
T:
sphincs256
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
115823359116339347117069355
T:
rainbow1acyclicc363232
123488339123570761124852990
T:
sphincsf256shake256simple
89076165?140923599?141910510?
T:
rainbow1aclassic363232
113941518?144479202?164853690?
T:
qtesla3p
145289727?145333503?232696050?
T:
sphincsf256shake256robust
145449532147147875147670128
T:
rainbow1acompres363232
174546935?174636021?279596006?
T:
sphincsf256harakarobust
189832321?254854467?285967917?
T:
falcon1024tree
180901665?257183269?272253442?
T:
falcon1024dyn
368143520?368893687?570712486?
T:
rainbowbinary16242020
588107997?589381330?929791244?
T:
rainbow3ccompres683248
645951522646038100646116859
T:
sphincss128shake256simple
483757347?676852761?771916658?mqsignrr2567246
457147652?730922880?731171690?mqsignlr2567246
557259792?889298282?893187967?
T:
rainbow3cclassic683248
111482261111161863081117975983
T:
rainbow3ccyclicc683248
121215624712124597871213719250
T:
sphincss192harakasimple
1233760687?1234361320?1976076560?
T:
sphincss256shake256simple
822535337?1319953892?1320074177?
T:
sphincss128harakasimple
936000244?1374878484?1504011647?
T:
sphincss192shake256simple
1535424138?1548013053?2407465214?
T:
rainbow5cclassic963664
1554303075?1583105455?2473363984?
T:
rainbow5ccyclicc963664
161613880816162375131616385404
T:
sphincss256harakasimple
1769439638?1769572780?2834239139?
T:
sphincss192shake256robust
192709771419274838561928896155
T:
sphincss128shake256robust
1593956664?2170974423?2527480904?
T:
rainbow5ccompres963664
1997798743?2307996538?3197662237?mqsignrr25611272
2325499837?2327602980?3724153378?
T:
sphincss256shake256robust
1468682919?2351464866?2352420025?
T:
sphincss128harakarobust
1589041877?2538605975?2542484768?mqsignlr25611272
4239177210?5323575391?6735143114?mqsignlr25614896
5813187199?6249441140?8269799343?mqsignrr25614896
Cycles to sign 59 bytes
25%50%75%system
848788528685971
T:
rainbowbinary256181212
177521?177978?285769?ed25519
201067203328207598
T:
rainbowbinary16242020
708396?710129?1133578?
T:
ed448goldilocks
9726579744061070298
T:
rainbow1aclassic363232
144028614442191512780
T:
rainbow1acyclicc363232
1719828?1746323?2715252?
T:
falcon512tree
2118234?2629614?4247393?
T:
pass769
2586764?2809012?7843879?
T:
pass863
2813022?2835370?4515003?
T:
falcon512dyn
1992430?2874092?3132621?nccsign1
289097829499302983879
T:
rainbow3cclassic683248
2209325?2980924?5604496?T!!!dilithium2
1884211?3034699?6004299?
T:
qtesla1
3080275?3126440?4898651?
T:
donald2048
3989339?4316259?6006936?nccsign1aes
430428943476034358837mqsignrr2567246
3275809?4504587?5693384?
T:
qtesla3f
3609202?4713910?7368822?T!!!dilithium2aes
3288767?4881252?7054011?T!!!dilithium3
3556515?5560431?5631016?
T:
falcon1024tree
3881572?5585454?8173857?nccsign3
3990437?5818693?8469046?
T:
qtesla1p
5826075?6075440?10536963?T!!!dilithium5
6231948?6251399?9822706?
T:
rainbow5cclassic963664
6334890?6347972?10095621?
T:
rainbow5ccyclicc963664
6528124?6736180?13264261?nccsign5
3918451?7279660?11696134?
T:
qtesla3s
5366018?7427708?9961591?nccsign3aes
5063894?8079209?8095847?mqsignlr2567246
5548262?8617056?12010580?nccsign5aes
5936289?9401784?9479884?
T:
falcon1024dyn
8994054?10739665?14868541?T!!!dilithium3aes
119240631193038011937491aimer128f
9293760?12344381?17382497?T!!!dilithium5aes
7922900?12487959?12523955?
T:
rainbow3ccyclicc683248
125835951259535712617549mqsignlr25611272
9785617?14157489?31837127?haetae5
8392733?14644725?27326470?haetae2
11646710?18675984?33297301?haetae3
198178171983482219868837mqsignrr25611272
271104112713468427153199mqsignlr25614896
17531209?28078299?58793258?
T:
qtesla3p
306460363066480830689651aimer192f
418513954188581341928127mqsignrr25614896
68256369?68385360?108556020?aimer256f
97824069?98286235?156224265?aimer128s
112498558114967218115525120
T:
rainbow1acompres363232
244343335?244541390?390044711?aimer192s
159950208?255499731?255572720?
T:
mqdss48
450052150451687560457514836
T:
rainbow3ccompres683248
459679511?462041967?734779319?
T:
sphincs256
515687417516062743518535731aimer256s
542476933?542605990?868282363?
T:
mqdss64
795795292?796473468?1274899934?
T:
sphincsf192shake256simple
630592420?1009581929?1010698297?
T:
sphincsf128shake256simple
1110654724?1112034304?1782876187?
T:
sphincsf192harakasimple
113421841411351589141135743862
T:
sphincsf128shake256robust
956438706?1530274701?1531279834?
T:
sphincsf128harakasimple
1577991672?1579393349?2527549874?
T:
sphincsf128harakarobust
1766376615?1768614269?2828864894?
T:
sphincsf256shake256simple
1151320832?1782834382?1796292452?
T:
rainbow5ccompres963664
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
258448260580264090
T:
rainbow1aclassic363232
261350?262880?416299?
T:
falcon512tree
320254?324900?511471?
T:
falcon512dyn
543747?547737?863953?ed25519
454248?709907?712899?
T:
qtesla1
539989?859133?861659?
T:
falcon1024tree
939279940391941849T!!!dilithium2
606827?967532?969433?haetae2
1026589?1033918?1651856?
T:
qtesla3s
668097?1062513?1068256?
T:
falcon1024dyn
1072883?1075328?1714498?haetae3
114228411485551157627
T:
rainbow3cclassic683248
1206951?1229319?1909343?nccsign1
128379712861341302573haetae5
135728813622001379476
T:
qtesla3f
144606214482231463451T!!!dilithium3
1967859?1980978?3139365?T!!!dilithium2aes
2179058?2194324?3489664?
T:
ed448goldilocks
242786324396722449898nccsign3
2493318?2581083?3714268?
T:
rainbow5cclassic963664
1679139?2640848?2671937?
T:
pass769
1735389?2727545?2749101?nccsign1aes
322630932409873263117
T:
pass863
2152961?3387819?3415792?nccsign3aes
2161939?3398724?3443218?
T:
qtesla1p
3458832?3515076?5517595?nccsign5aes
3613824?3640961?5728230?
T:
donald2048
2485233?3928036?3953088?T!!!dilithium5
2551368?3959177?3992181?nccsign5
432285643771684390311mqsignrr2567246
3211375?5107513?5133805?T!!!dilithium3aes
5599253?5618167?8935130?T!!!dilithium5aes
5623349?5685949?9034452?
T:
sphincs256
5875460?9353154?9384134?mqsignlr2567246
10693048?11099055?16567667?
T:
sphincss128shake256simple
111070961111826811124125aimer128f
15412353?15801507?24569584?
T:
sphincss192shake256simple
10115358?16156042?16288126?
T:
qtesla3p
207067562072628820752726mqsignlr25611272
207134772074557320769636mqsignrr25611272
20241332?20945367?32148898?
T:
sphincss256shake256simple
24103476?24601989?38482994?
T:
sphincss192harakasimple
16558405?24740256?26261197?
T:
sphincss128harakasimple
25442853?25913601?40324071?
T:
sphincsf128shake256simple
286070942863277728668800aimer192f
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
420510944208009842150289mqsignrr25614896
420516174209581642163432mqsignlr25614896
30573113?46757313?47448900?
T:
sphincss128harakarobust
49719366?50927614?78752074?
T:
sphincsf128shake256robust
57699660?58991490?92275429?
T:
sphincsf192harakasimple
62082091?62821553?99886453?aimer256f
41077045?63315120?65037889?
T:
sphincsf192shake256simple
65779458?66804826?105734772?
T:
sphincsf128harakarobust
788619937961738281064060
T:
sphincsf256shake256robust
838355198415043087249658
T:
rainbow1acyclicc363232
841894048688330987247549
T:
rainbow1acompres363232
96942113?97080429?155434725?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
241226969241480134241921196aimer192s
321896052?324337144?512417251?
T:
rainbow3ccyclicc683248
326019190330013142333250343
T:
rainbow3ccompres683248
505096803?505988297?817742254?aimer256s
405309387?635055924?650151135?
T:
mqdss64
760618023766354939848640577
T:
rainbow5ccompres963664
729099816?1162508867?1180620679?
T:
rainbow5ccyclicc963664