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; Sandy Bridge (206a7); 2011 Intel Core i3-2310M; 2 x 2100MHz; h6sandy, supercop-20240909

[Page version: 20240920 17:02:34]

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
662666616739picnicl1full
657867026819picnic3l1
947695009606picnicl3full
950995739657picnic3l3
124351254512632picnic3l5
124951256012626picnicl5full
132211333513439
T:
picnic2l1fs
143891442314513picnicl1ur
143701447414542picnicl1fs
254572551425731
T:
picnic2l3fs
261182653226669picnicl3fs
264192657026742picnicl3ur
328403328033937
T:
picnic2l5fs
343733445134807picnicl5fs
343923449335606picnicl5ur
697766989970322ed25519
123999124500125281aimer128f
124171124581125225aimer128s
215099215394216007
T:
ed448goldilocks
292050292414293140aimer192f
313065313350313778aimer192s
374339374702374960T!!!dilithium2
374103376299378788nccsign1
432559433991436481
T:
pass769
499588502300505853nccsign3
507928510099512340
T:
pass863
600115606649611266nccsign1aes
688898690151691285T!!!dilithium3
701135701975703550aimer256f
702080702731704349aimer256s
771957774634776780nccsign5
784718789501795651nccsign3aes
833270837561840654T!!!dilithium2aes
105388810543871055482T!!!dilithium5
112976411324801134016
T:
mqdss48
121237812207071232694nccsign5aes
135245413665541382301
T:
donald2048
151683115204711527018T!!!dilithium3aes
665000?1628987?3171214?haetae2
1154231?1881814?4032785?haetae5
1712513?2258037?3337107?
T:
qtesla1
836995?2422862?4330610?haetae3
253614325425632550254T!!!dilithium5aes
261865526208132624078
T:
mqdss64
3911276?5743632?7586830?
T:
qtesla3f
5793104?7673286?11402546?
T:
qtesla3s
6942747?9062153?10139989?
T:
qtesla1p
959010195914389592996
T:
sphincsf128shake256simple
114944311149568311497600
T:
sphincsf128harakasimple
124674741247410212502593
T:
sphincs256
138917111393074113999950
T:
rainbowbinary256181212
141745961418344014184766
T:
sphincsf192shake256simple
169954131699734217105935
T:
sphincsf192harakasimple
181362051813878118141306
T:
sphincsf128shake256robust
200904022009446620124991
T:
sphincsf128harakarobust
229582022301916423073008
T:
luov4849242
255932092563748126317953
T:
rainbow1aclassic363232
259773902603469426338464
T:
rainbow1acompres363232
260269402608797026139900
T:
rainbow1acyclicc363232
268676372687089326880425
T:
sphincsf192shake256robust
24635241?27842526?33100216?
T:
falcon512tree
298184272982061029823608
T:
sphincsf192harakarobust
281484853090982034768887
T:
falcon512dyn
316740783171050931773763
T:
luov863256
376318243763669437683837
T:
sphincsf256shake256simple
445176414457413544718727
T:
sphincsf256harakasimple
38231117?52325910?59467889?
T:
qtesla3p
653579236565614566155868
T:
rainbowbinary16242020
701352057013995670154594
T:
sphincsf256shake256robust
733292447351828573692615
T:
luov6468330
742458597803183382476994
T:
falcon1024tree
789337347894355379681545
T:
sphincsf256harakarobust
813454468137331081516840
T:
redgemss128
839018038396812984023630
T:
bluegemss128
797923148461929195127858
T:
falcon1024dyn
851143088517056885217503
T:
gemss128
917851079180947291906792
T:
redgemss128v2
957052929574887995846707
T:
bluegemss128v2
965320739656235396696151
T:
gemss128v2
121294663121580242121767634
T:
luov890351
138980855139295860139479316
T:
luov8086399
155173220155832877162778256
T:
rainbow3cclassic683248
156252607156375070156558894mqsignlr2567246
157912001158023051158106685
T:
rainbow3ccompres683248
162095552162841463163987009
T:
rainbow3ccyclicc683248
201979683202442971202872002mqsignrr2567246
216200964216612878216916324
T:
luov8117404
308963452309067160309132588
T:
sphincss128shake256simple
364483594364917974365330822
T:
sphincss128harakasimple
426805891427545665428047511
T:
rainbow5cclassic963664
446766541447432994448035034
T:
rainbow5ccompres963664
452325414452338047452414219
T:
sphincss192shake256simple
460647181461226338461791650
T:
rainbow5ccyclicc963664
510835709511709903512519219
T:
redgemss192
524495803524949538527020529
T:
redgemss192v2
537449755537722717537731719
T:
sphincss192harakasimple
547333733547787133548194505
T:
bluegemss192v2
547665522548695356548855472
T:
bluegemss192
553667767554278797554489824
T:
gemss192v2
568678334568808675569877243
T:
gemss192
583432566583460002584572067
T:
sphincss128shake256robust
589142412589294979589621215mqsignlr25611272
593227777595201297607180343
T:
sphincss256shake256simple
637850866638287251638304502
T:
sphincss128harakarobust
714025215714043983714065249
T:
sphincss256harakasimple
772294481772542489772792306mqsignrr25611272
858496625858532693858863200
T:
sphincss192shake256robust
951133463951317731951402462
T:
sphincss192harakarobust
113519320311352236241135434075
T:
sphincss256shake256robust
125667785712567119871257682304
T:
sphincss256harakarobust
145408645214553887611457253774mqsignlr25614896
149814658415013100831576052864
T:
redgemss256v2
155139158215525637171554827355
T:
gemss256v2
156678062915702174701649884508
T:
redgemss256
172760641917283831461728912507
T:
gemss256
187085397818714759261874941661mqsignrr25614896
168310495619582622181966307150
T:
bluegemss256v2
168889813419604186111992177909
T:
bluegemss256
543307305855633407165762729425
T:
pqrsa15
850204054258504800185185057932367
T:
gravitysphincss
Cycles to sign 59 bytes
25%50%75%system
219572216622927
T:
rainbowbinary256181212
495395021351040
T:
rainbowbinary16242020
780987842078781ed25519
156517158205164079
T:
rainbow1aclassic363232
160772162909164695
T:
rainbow1acyclicc363232
225019225262225624
T:
ed448goldilocks
300469?504470?899953?
T:
qtesla1
571579573508576328
T:
rainbow3cclassic683248
613649615095617438
T:
rainbow3ccyclicc683248
780210791520797468
T:
falcon512tree
873723?879590?1346542?nccsign1
945738948323950451mqsignlr2567246
673933?994659?1815171?
T:
qtesla3f
520530?1036399?1576225?
T:
pass769
615251?1220390?1849663?
T:
pass863
126514612742001280787
T:
falcon512dyn
129648613016121309081
T:
rainbow5cclassic963664
982512?1318774?1926210?T!!!dilithium2
134530413606291370787
T:
donald2048
1076569?1533474?2210930?nccsign3
153558915411641549050
T:
rainbow5ccyclicc963664
157732215878271594176
T:
falcon1024tree
1149263?1590576?1691983?nccsign1aes
165793716590311660385mqsignrr2567246
853107?1806923?2531079?
T:
qtesla1p
1498727?1850594?2652042?T!!!dilithium2aes
1429141?1980254?3452745?T!!!dilithium3
1442998?1996686?2782401?nccsign3aes
896853?2071808?3244840?
T:
qtesla3s
1659929?2321652?4016342?T!!!dilithium5
252085725269402534418mqsignlr25611272
256044825769002590737
T:
falcon1024dyn
1853887?2835787?3630141?nccsign5
2394974?3519179?5389847?nccsign5aes
2813106?3824918?5027483?T!!!dilithium3aes
408193240853044089960mqsignrr25611272
3127789?4573675?6148632?T!!!dilithium5aes
528683152896735298033mqsignlr25614896
5173476?5611913?9121633?
T:
qtesla3p
596870859695265992083aimer128f
3647587?7074635?12806273?haetae2
725772672670117280542picnicl1full
3862151?7303333?12488007?haetae3
809667981070808129323mqsignrr25614896
4762780?9023545?17505706?haetae5
919645992003719206508
T:
luov863256
7875624?9314017?11548002?
T:
redgemss128v2
9283437?9637310?12429378?
T:
redgemss128
107612191078993010806732picnicl1fs
127606891294289712952205picnicl1ur
141469911416686014199617picnicl3full
151113201511690915175445aimer192f
214405602150451321630677
T:
rainbow1acompres363232
235071452352766723541553picnicl5full
259355992596257326004779picnicl3fs
284449142845898228472462
T:
mqdss48
23558026?28750324?32089174?
T:
redgemss192v2
295982492961728229630343aimer256f
318699953199733532089812picnicl3ur
320381343205347532066429
T:
luov890351
331655763319187533212324picnic3l1
29758144?34446185?41683590?
T:
redgemss192
445025334457021144647668picnicl5fs
37940174?46348582?51950917?
T:
redgemss256v2
470690034717170347181897aimer128s
493794064941872949456009
T:
luov4849242
534036695343990953463067picnicl5ur
540522645406400254089510
T:
luov8117404
51391409?62606774?73709807?
T:
redgemss256
711278137122437371473426picnic3l3
814190248143260281584171
T:
mqdss64
117882004117919009118192628aimer192s
118879626118985635120952108picnic3l5
131731656131839250132345601
T:
rainbow3ccompres683248
157699066157746332157972398
T:
luov6468330
178518227178555821178598126
T:
pqrsa15
226552664226789762226871485aimer256s
233181080233274385233585749
T:
sphincs256
302229062302702663303161400
T:
picnic2l1fs
303100817303243459303488102
T:
sphincsf128shake256simple
318188949318597022319585880
T:
luov8086399
324269162324671122325577505
T:
rainbow5ccompres963664
280050906?336371604?447551341?
T:
bluegemss128v2
387180544387316466387602422
T:
sphincsf192shake256simple
428021769428217112428380165
T:
sphincsf128harakasimple
367298251?428259401?489176520?
T:
bluegemss128
496803728497306670497778365
T:
sphincsf192harakasimple
546183376546492457546843417
T:
sphincsf128shake256robust
558246229558552660566872257
T:
gravitysphincss
712927756713336766713812394
T:
sphincsf128harakarobust
718534149719065474719457609
T:
sphincsf192shake256robust
862548945862954443866735909
T:
sphincsf256shake256simple
871364103872119725872573921
T:
sphincsf192harakarobust
909987467910444620911045707
T:
picnic2l3fs
855984986?1027223877?1368161270?
T:
bluegemss192v2
121903059012194748601220110383
T:
sphincsf256harakasimple
1221107552?1464485465?1715529161?
T:
bluegemss192
155343859415541020191556088972
T:
sphincsf256shake256robust
1364850290?1637248106?1907653325?
T:
bluegemss256v2
192352611219248174901925997035
T:
picnic2l5fs
210773241921085745142119177677
T:
sphincsf256harakarobust
1790990761?2154076976?2865290854?
T:
gemss128v2
1960986512?2334455169?2723262455?
T:
gemss128
2158097841?2590209256?3451022898?
T:
bluegemss256
460826340946086104054609410746
T:
sphincss128shake256simple
578250880057856430916940987389
T:
gemss192v2
688732013068905159886899734540
T:
sphincss128harakasimple
709838849071464145117226465339
T:
sphincss256shake256simple
813568505781363834218136953992
T:
sphincss128shake256robust
962369327796242099139625351277
T:
sphincss192shake256simple
8278709656?9934886855?11595184523?
T:
gemss192
108939887941089716580210916334861
T:
sphincss256harakasimple
112635930351126560572411265900807
T:
sphincss128harakarobust
9716010088?11654449529?13602934193?
T:
gemss256v2
129390060921293941241412939965689
T:
sphincss256shake256robust
154078341041541037270515410886642
T:
sphincss192harakasimple
166220676261662802579916629354307
T:
sphincss192shake256robust
15439509154?18528596145?21623517690?
T:
gemss256
185879411871858843792818599268699
T:
sphincss256harakarobust
271757474382717626688727193105132
T:
sphincss192harakarobust
Cycles to verify 59 bytes
25%50%75%system
194491959919838
T:
rainbowbinary256181212
404174142441850
T:
rainbowbinary16242020
567735819159739
T:
rainbow1aclassic363232
114589116485117147
T:
falcon512tree
137954138747141558
T:
qtesla1
137303139112139964
T:
falcon512dyn
227079228505230640ed25519
237393238524239462
T:
falcon1024tree
271008272011273154haetae2
273656276388279902
T:
rainbow3cclassic683248
279068280315281666
T:
falcon1024dyn
282058292330303420
T:
gemss128
281128293028298379
T:
bluegemss128
293144293976294828
T:
qtesla3s
299394300130302742
T:
qtesla3f
296689304081313864
T:
redgemss128
293732305096321004
T:
redgemss128v2
309566319779327688
T:
gemss128v2
316244324098329243
T:
bluegemss128v2
422826423035423414T!!!dilithium2
489870490814491471haetae3
545050546844549502nccsign1
608815609451611533haetae5
655918658087662511
T:
pass769
671355677189681218
T:
rainbow5cclassic963664
681955682658694157T!!!dilithium3
687771690556691968nccsign3
682436696744714880
T:
gemss192
704788720202749610
T:
bluegemss192
721664723050724932
T:
ed448goldilocks
744514745834748753
T:
qtesla1p
740952746156748670nccsign1aes
724734751508833276
T:
redgemss192
759740762572765809
T:
pass863
759836770022800468
T:
redgemss192v2
755836771534788039
T:
bluegemss192v2
757958771753783500
T:
gemss192v2
805048808025811331T!!!dilithium2aes
945174949601953616nccsign3aes
112057111212331122036T!!!dilithium5
113918711419411144032nccsign5
140206814052651410031T!!!dilithium3aes
142899414525831493212
T:
gemss256v2
146704415106241534534
T:
redgemss256v2
152943015377651544652nccsign5aes
149848915392231562231
T:
gemss256
153755715618401593371
T:
bluegemss256
157342515996901611925
T:
donald2048
1570333?1618050?2373998?
T:
redgemss256
161202216710601716684
T:
bluegemss256v2
169392416958681697832mqsignrr2567246
169507216985951702331mqsignlr2567246
246252224675562472138T!!!dilithium5aes
285108229032362945370
T:
gravitysphincss
292995529562822990014
T:
sphincs256
350215335111443520662
T:
qtesla3p
429201042984714306629mqsignrr25611272
435558843597514368637mqsignlr25611272
501452351480665251853
T:
sphincss128shake256simple
555495855615355563166aimer128f
586348458786675894407picnicl1full
710810971967147307081
T:
sphincss128harakasimple
741527474183297419922
T:
luov863256
736013575546237692607
T:
sphincss192shake256simple
791458979202497929875mqsignlr25614896
793199179374787945733mqsignrr25614896
909350691185289325307picnicl1fs
960282797402349937518
T:
sphincss256shake256simple
9718860985199310105512
T:
sphincss128shake256robust
104152711049912010663639
T:
sphincss192harakasimple
109405541097397111111632picnicl1ur
116797571169221111710492picnicl3full
121245041237834312517458
T:
sphincsf128shake256simple
126604661292137313058330
T:
sphincss128harakarobust
141026911411245114125799aimer192f
145471951473819714988962
T:
sphincss192shake256robust
146231761484675214999265
T:
sphincss256harakasimple
163775341656919216782776
T:
sphincsf128harakasimple
173992291742002817483709
T:
rainbow1acyclicc363232
174240361744000717769520
T:
rainbow1acompres363232
190688821926797819631477
T:
sphincss256shake256robust
195505841958125419601873picnicl5full
195644671981003119932284
T:
sphincsf192shake256simple
197187891993818320263478
T:
sphincss192harakarobust
197568372000083420290054
T:
sphincsf256shake256simple
199289532006115020273125
T:
mqdss48
227123902275719122779269picnicl3fs
235688792394758724262314
T:
sphincsf128shake256robust
242716082430247024316922
T:
pqrsa15
254913282571321825970205
T:
sphincsf192harakasimple
262850342630158426318694
T:
luov890351
268809502708134827483321
T:
sphincss256harakarobust
271748182720815627230250picnic3l1
270718142728441327566087
T:
sphincsf256harakasimple
276788282770026427807555picnicl3ur
276663062771958627761103aimer256f
295653742996122530180093
T:
sphincsf128harakarobust
339047283392540434069627
T:
luov4849242
381493483860325238999363
T:
sphincsf192shake256robust
382817123860453239155500
T:
sphincsf256shake256robust
393268403936669139419610picnicl5fs
444275614446541644523344
T:
luov8117404
466349764667808846724211aimer128s
473140414772093148461293
T:
sphincsf192harakarobust
480480144808202548114244picnicl5ur
500367725069503651131884
T:
sphincsf256harakarobust
584580825855678758635138picnic3l3
589629915950593860039756
T:
mqdss64
913911889153467693559238picnic3l5
924003269247106892536339
T:
luov6468330
106363214107035561108200879
T:
rainbow3ccompres683248
107458487107831935110288073
T:
rainbow3ccyclicc683248
117102379117498999117713799aimer192s
128781389129037750129166666
T:
picnic2l1fs
170037968170139635170344297
T:
luov8086399
224052763224126886224160773aimer256s
239417099239907421240925082
T:
rainbow5ccyclicc963664
239596260240181552240716182
T:
rainbow5ccompres963664
293362379293793744294961149
T:
picnic2l3fs
520052345520274443520536166
T:
picnic2l5fs