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; K10 45nm (100f63); 2010 AMD Athlon II Neo K125; 1 x 1700MHz; h3neo, supercop-20240425

[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: 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
724367258073631ed25519
342722343406343961
T:
ed448goldilocks
435695437258439374dilithium2
589932594300603114
T:
pass769
693638697594709638
T:
pass863
783408806453821252dilithium3
109571811003771107086dilithium2aes
120043412065901213854
T:
edons128k08n72nu8l4mu3
121681812842941286204dilithium5
143168614421821457787
T:
donald2048
151199315140291517274
T:
mqdss48
183967418434701847520dilithium3aes
308251730872333093331dilithium5aes
2323225?3132685?3888851?
T:
qtesla1
351306335150093517477
T:
mqdss64
357108535912043633911
T:
edons128ref
4724418?6932144?11292287?
T:
qtesla3f
111309811113599811144322
T:
sphincsf128shake256simple
7319757?11581334?16165961?
T:
qtesla3s
10578516?12009706?14784009?
T:
qtesla1p
149420781494397314945751
T:
sphincsf128harakasimple
160993191610219016104975
T:
sphincs256
162452181627293616425577
T:
sphincsf192shake256simple
211526972116150121175705
T:
sphincsf128shake256robust
220134812201486522018691
T:
sphincsf192harakasimple
257451072576668625769836
T:
sphincsf128harakarobust
306785433068470030703016
T:
sphincsf192shake256robust
31347452?35137001?39467713?
T:
falcon512tree
32456942?37598374?42179247?
T:
falcon512dyn
380298573803641338050796
T:
sphincsf192harakarobust
431529434319892643229840
T:
sphincsf256shake256simple
44621636?51994809?59447546?
T:
qtesla3p
583853025842330558432983
T:
sphincsf256harakasimple
647918546495708565198137
T:
rainbow1aclassic363232
703563857051422270778301
T:
rainbow1acompres363232
708643397109118071276311
T:
rainbow1acyclicc363232
806234238065198680750632
T:
sphincsf256shake256robust
92546354?99870352?120461102?
T:
falcon1024tree
101258971101292693101406836
T:
sphincsf256harakarobust
101073474105929332114524136
T:
falcon1024dyn
354190820354501939355163389
T:
sphincss128shake256simple
424657377424824588425057162
T:
sflashv2
474676542474718086474776902
T:
sphincss128harakasimple
519747007519974461528297892
T:
sphincss192shake256simple
668550584669280615670563743
T:
rainbow3cclassic683248
673260822673499192680685317
T:
sphincss128shake256robust
686461706687053988687184790
T:
sphincss256shake256simple
701105066701379513701889579
T:
sphincss192harakasimple
731175691732139977732655556
T:
rainbow3ccompres683248
765431794772802865773429151
T:
rainbow3ccyclicc683248
820769935820944663821075420
T:
sphincss128harakarobust
932345853932475750932851685
T:
sphincss256harakasimple
981871260982170061983584971
T:
sphincss192shake256robust
129234519312980807221301416128
T:
sphincss256shake256robust
183867428918398594601850407071
T:
rainbow5cclassic963664
207966974020816829932082656807
T:
rainbow5ccompres963664
221716848322183657072220335739
T:
rainbow5ccyclicc963664
Cycles to sign 59 bytes
25%50%75%system
815128159081684ed25519
222943223707228763
T:
sflashv2
354341354630355073
T:
ed448goldilocks
489904490792492481
T:
rainbow1aclassic363232
505370506363508090
T:
rainbow1acyclicc363232
486900?729064?1430050?
T:
qtesla1
113264711480331155080
T:
falcon512tree
142868014369061449270
T:
donald2048
785173?1500627?1893223?
T:
pass769
732237?1559140?2571412?
T:
qtesla3f
901610?1706675?3633880?
T:
pass863
189409119029551912688
T:
falcon512dyn
1319635?1949246?2850940?dilithium2
228404522989962313711
T:
falcon1024tree
1860442?2441864?3606498?dilithium3
1948336?2450422?3942386?dilithium2aes
263080126381932645981
T:
edons128k08n72nu8l4mu3
2086605?2824024?4764325?dilithium5
1730055?3186777?5729387?
T:
qtesla3s
2226361?3636542?5084655?
T:
qtesla1p
385226538697813884207
T:
falcon1024dyn
3076985?3905598?5263028?dilithium3aes
418724541885884192363
T:
rainbow3cclassic683248
456724245695554572070
T:
rainbow3ccyclicc683248
4906921?6027744?6942717?dilithium5aes
628051662924116314539
T:
edons128ref
899909590029249006228
T:
rainbow5cclassic963664
103346221034198210351549
T:
rainbow5ccyclicc963664
6331444?10982687?18127004?
T:
qtesla3p
455146734565094945744088
T:
rainbow1acompres363232
883914648856736588705854
T:
mqdss48
284425155284840211285571654
T:
mqdss64
305959562306082088306481010
T:
sphincs256
352174648352805842353512477
T:
sphincsf128shake256simple
419779043420309058421513727
T:
rainbow3ccompres683248
443604556444304856450177968
T:
sphincsf192shake256simple
551501131551942448552264591
T:
sphincsf128harakasimple
635319337635934396637224564
T:
sphincsf128shake256robust
641630277641922730642131674
T:
sphincsf192harakasimple
819223981819705255820062421
T:
sphincsf192shake256robust
914396122915022554915485881
T:
sphincsf128harakarobust
990045538992323411994455200
T:
sphincsf256shake256simple
111328860411138410741114831936
T:
sphincsf192harakarobust
113152471611335466461134524457
T:
rainbow5ccompres963664
158694490515873704271587759139
T:
sphincsf256harakasimple
178466272817856706481786725785
T:
sphincsf256shake256robust
270105242227020935792707271160
T:
sphincsf256harakarobust
528277792452851045655287513901
T:
sphincss128shake256simple
819619190382000233798202916545
T:
sphincss256shake256simple
885731661888579232458861373137
T:
sphincss128harakasimple
937660809293814293419482420148
T:
sphincss128shake256robust
110137180981102019262911240059529
T:
sphincss192shake256simple
141230556011412437389614129701907
T:
sphincss256harakasimple
144894368151449059582714491869327
T:
sphincss128harakarobust
147361882401477649136714847838099
T:
sphincss256shake256robust
190051365251900853410019039173234
T:
sphincss192shake256robust
197982780151979941859319800796119
T:
sphincss192harakasimple
Cycles to verify 59 bytes
25%50%75%system
108813110788111745
T:
rainbow1aclassic363232
166414168363168829
T:
falcon512tree
202042203529204406
T:
falcon512dyn
235833236134236420
T:
qtesla1
244013244448244824
T:
sflashv2
266206267643268331ed25519
349556350924357586
T:
falcon1024tree
419713420796422008
T:
falcon1024dyn
526561527494551237dilithium2
530807532069540041
T:
qtesla3f
533289533806537604
T:
qtesla3s
532949535926539922
T:
rainbow3cclassic683248
843862887610905575dilithium3
955246961940971063
T:
pass769
101061410154231018173
T:
ed448goldilocks
108821310954721103754dilithium2aes
109188411030661184891
T:
edons128k08n72nu8l4mu3
111531111501731176442
T:
pass863
115557411596641164148
T:
rainbow5cclassic963664
129840413044491332381
T:
qtesla1p
145049614522601498844dilithium5
167439916841641694350
T:
donald2048
178839717956581838648dilithium3aes
194816319541801961960
T:
edons128ref
307766230860743095647dilithium5aes
378451838198113844124
T:
sphincs256
570738857182225733959
T:
qtesla3p
582577459395696084989
T:
sphincss128shake256simple
853299686465078752917
T:
sphincss192shake256simple
924504394805869770803
T:
sphincss128harakasimple
111172551133296411523631
T:
sphincss256shake256simple
112492151149166011862344
T:
sphincss128shake256robust
136927731388713814226725
T:
sphincss192harakasimple
141314931428972814536753
T:
sphincsf128shake256simple
164297571670478817035900
T:
sphincss192shake256robust
164724101673538317066649
T:
sphincss128harakarobust
194590151981693019945049
T:
sphincss256harakasimple
214504802174602622161064
T:
sphincss256shake256robust
214001212175576122195434
T:
sphincsf128harakasimple
223574832261271322867422
T:
sphincsf192shake256simple
228823662313796923457230
T:
sphincsf256shake256simple
253334102538502325440246
T:
rainbow1acompres363232
255738272581842425928144
T:
rainbow1acyclicc363232
275220342802029328640036
T:
sphincsf128shake256robust
336698543391215134080127
T:
sphincsf192harakasimple
357866833621317336530446
T:
sphincsf256harakasimple
377837553838251339136188
T:
sphincsf128harakarobust
435605244399502944276472
T:
sphincsf192shake256robust
439002434424027144802793
T:
sphincsf256shake256robust
600775386092447761371532
T:
sphincsf192harakarobust
640420086487124265354557
T:
sphincsf256harakarobust
643027286501852366144073
T:
mqdss48
153409179155657705159116567
T:
rainbow3ccompres683248
153618391157623519158265114
T:
rainbow3ccyclicc683248
208870241212264654214817863
T:
mqdss64
343766769344648182345743258
T:
rainbow5ccyclicc963664
347437067349894340350974504
T:
rainbow5ccompres963664