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; Bulldozer (600f20); 2012 AMD FX-8350; 4 x 4000MHz; saber214, 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: (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
694669827061picnicl1full
699670597152picnic3l1
954095749629picnic3l3
955596029855picnicl3full
124051244912525picnicl5full
124331253413007picnic3l5
153931553915651
T:
picnic2l1fs
180491809618151picnicl1fs
181491818518212picnicl1ur
289052903229203
T:
picnic2l3fs
331843341333652picnicl3fs
333563378534010picnicl3ur
366613675836907
T:
picnic2l5fs
432624384044172picnicl5fs
460944618246254picnicl5ur
649376506665303
T:
lattisigns512
953659568795968ed25519
147782147901148623aimer128f
147781148083150463aimer128s
318382319241334673
T:
hector
350254350751351222aimer192f
350727351084352881aimer192s
356866357323357988
T:
ed448goldilocks
430170431088432294
T:
pass769
472263477873478996dilithium2
489229493122503521nccsign1
504482506004507914
T:
pass863
665577672944677851nccsign3
795176796415799813aimer256f
799853800813812143aimer256s
807139821192831448nccsign1aes
874270876445891824dilithium3
102249110314431040215nccsign5
108988311000481116686nccsign3aes
110853211115691116319dilithium2aes
112258411229931123513
T:
sphincsf128harakasimple
128288012848291287911
T:
mqdss48
134134013425871343944dilithium5
141745214176021418169
T:
sphincsf128harakarobust
164385116581731758167
T:
sphincsf192harakasimple
167642117424881764831nccsign5aes
192281319468851977252
T:
donald2048
210588721062542108537
T:
sphincsf192harakarobust
214007321622472199951dilithium3aes
1592213?2561700?4517949?haetae5
1948904?2605985?4361993?
T:
qtesla1
1232254?2685961?4347496?haetae2
302927530314653040834
T:
mqdss64
364286136543193683011dilithium5aes
2171135?3703303?7099430?haetae3
490378149056324940164
T:
sphincsf256harakasimple
611967761277356163549
T:
sphincsf256harakarobust
4242015?6253762?8363844?
T:
qtesla3f
7454853?9696838?10902414?
T:
qtesla1p
6424575?10513698?16691185?
T:
qtesla3s
106889601072157010740769
T:
sphincsf128shake256simple
156669661571759115782775
T:
sphincsf192shake256simple
161872501620153216236088
T:
sphincs256
201327852015321920191008
T:
sphincsf128shake256robust
233989162349646523657640
T:
luov4849242
296655062971054629816544
T:
sphincsf192shake256robust
336802753379761033895355
T:
luov863256
353805643549641835803566
T:
rainbow1aclassic363232
352211533554115136135542
T:
rainbow1acyclicc363232
360181153605164036093716
T:
sphincss128harakasimple
350531363626326536368592
T:
rainbow1acompres363232
364331423982154345172640
T:
falcon512tree
376248404082933646856021
T:
falcon512dyn
415013994153966641598175
T:
sphincsf256shake256simple
452182874523867745278412
T:
sphincss128harakarobust
525976245261127952683652
T:
sphincss192harakasimple
44777338?56411872?67789413?
T:
qtesla3p
669283016695569667012146
T:
sphincss192harakarobust
769850267708666577219491
T:
luov6468330
780005087815349878245844
T:
sphincsf256shake256robust
785012417852706978559806
T:
sphincss256harakasimple
979872089801267498063602
T:
sphincss256harakarobust
109058041109116940109257025
T:
gemss128
109348557109420505109543683
T:
redgemss128
112454853112548906112658187
T:
bluegemss128
113636235113716628113813805
T:
gemss128v2
108300426114029043124905142
T:
falcon1024tree
114345407114472937115200200
T:
bluegemss128v2
108836511116885538133779811
T:
falcon1024dyn
123403156123450754123558374
T:
redgemss128v2
124082186124265062124470123
T:
luov890351
144043295144251191144407546
T:
luov8086399
193358788193464065193902058mqsignlr2567246
202959093205083349208042099
T:
rainbow3cclassic683248
206832074212346769214477508
T:
rainbow3ccompres683248
213923298214971620215612612
T:
rainbow3ccyclicc683248
221508904221810525222008408
T:
luov8117404
251085620251194020251319224mqsignrr2567246
341601364341834418342472891
T:
sphincss128shake256simple
498821017498960112499329726
T:
sphincss192shake256simple
566102299566792702567315788
T:
redgemss192v2
561695534567329261568153243
T:
redgemss192
571341681572884452577314993
T:
gemss192v2
571375019575417708576033530
T:
bluegemss192v2
572701111577751993580339059
T:
rainbow5cclassic963664
589271027593472614595174700
T:
bluegemss192
596492539597295608599763604
T:
gemss192
601714853609653923616764204
T:
rainbow5ccompres963664
643914861644146613645541067
T:
sphincss128shake256robust
665386676665830349694061536
T:
sphincss256shake256simple
695722303702830180703489604mqsignlr25611272
926777666927268636928201081mqsignrr25611272
944770316948688822951437603
T:
sphincss192shake256robust
124477528612455418191245816082
T:
sphincss256shake256robust
124048875012457363211249503195
T:
rainbow5ccyclicc963664
166441014016694699051670484150mqsignlr25614896
183831972118400630401842412392
T:
redgemss256
189805335119015539801903550514
T:
bluegemss256
194170547619425888501944439474
T:
gemss256
198176746719825318021985950896
T:
gravitysphincss
200923463520105108992011865883
T:
redgemss256v2
201704827620186863122023680814
T:
gemss256v2
203339594020418493842042890092
T:
bluegemss256v2
216454371721665374672171893953mqsignrr25614896
730187649474061397737687972043
T:
pqrsa15
305178961703052432956630531199728
T:
gravitysphincsl
634586876406348289418363500906913
T:
gravitysphincsm
Cycles to sign 59 bytes
25%50%75%system
104638104922105172ed25519
227922228563229499
T:
rainbow1aclassic363232
231207236942251207
T:
rainbow1acyclicc363232
344522358430374223
T:
hector
369345369868370397
T:
ed448goldilocks
501569?532987?1013791?
T:
pass769
858965874704887055
T:
rainbow3cclassic683248
870237887857899439
T:
rainbow3ccyclicc683248
388305?930732?2053745?
T:
lattisigns512
518819?1080432?1728383?
T:
qtesla1
107149710826751100106
T:
falcon512tree
110189011038861108819mqsignlr2567246
592854?1188927?1788485?
T:
pass863
752326?1277822?2171607?
T:
qtesla3f
1311611?1321713?2015158?nccsign1
168665017021901712534
T:
falcon512dyn
1691790?1720408?2510088?nccsign1aes
177546917832201822273
T:
rainbow5cclassic963664
193255519499131972425
T:
donald2048
1413317?1966121?3648673?dilithium2
200201420124032027451mqsignrr2567246
216728821820542197565
T:
falcon1024tree
1465237?2264612?2928573?
T:
qtesla1p
1784045?2365460?3562737?
T:
qtesla3s
271991927267752748378mqsignlr25611272
1783197?2832021?4377755?nccsign3
2193196?2838487?5552962?dilithium3
2152246?2920086?4418315?dilithium2aes
2265714?3226575?5577772?nccsign3aes
2397767?3461763?4891409?dilithium5
348309834954373529584
T:
falcon1024dyn
2830372?3665422?5986436?dilithium3aes
3704054?3775909?7103530?nccsign5aes
2803217?4031820?5598518?nccsign5
452874045422864585930mqsignrr25611272
549413555061605547037mqsignlr25614896
3250627?6219594?12103358?haetae2
662880366452196657003aimer128f
691522269269546947565picnicl1full
5595990?7003649?8428808?dilithium5aes
698885770148757054947
T:
rainbow5ccyclicc963664
5630576?7522647?11110990?
T:
qtesla3p
812289481617708205801mqsignrr25614896
8119834?9690122?12307124?
T:
redgemss128
9048018?10454808?12413571?
T:
redgemss128v2
106520341070688110832184
T:
luov863256
7054542?11398764?15758892?haetae3
119345651195556311977848picnicl1fs
131192871325303213291844picnicl3full
140570261406641314075983picnicl1ur
6221063?14518243?28389937?haetae5
153496131536534015378168
T:
gravitysphincss
177138611773997217886418aimer192f
220438212206164122086746picnicl5full
20394576?23827697?27802926?
T:
redgemss192v2
23966845?28655936?34467576?
T:
redgemss192
291814882926298729333618
T:
gravitysphincsm
295548262992981830094923
T:
rainbow1acompres363232
309949943115116531219963picnic3l1
312454113127704431344899picnicl3fs
341525363420378234319011
T:
gravitysphincsl
344590403447770834591963aimer256f
351307453613753436185871
T:
luov890351
368305133685741336886039picnicl3ur
378534253793116637974458
T:
mqdss48
395480793956512439610027
T:
sphincsf128harakasimple
38334971?45039472?53063745?
T:
redgemss256v2
480031294806942948125956
T:
sphincsf192harakasimple
510688855115328151262923
T:
sphincsf128harakarobust
526119385269955052781696aimer128s
534839275352990653566781picnicl5fs
537023835445644555208374
T:
luov8117404
586859185873145158761912
T:
luov4849242
44829445?59347893?64076248?
T:
redgemss256
609793636105891261150136picnicl5ur
632931716332825663373843
T:
sphincsf192harakarobust
653182296543757265597626picnic3l3
112080713112528808112992207picnic3l5
120703366120739590120789444
T:
sphincsf256harakasimple
134360924134415641134808896
T:
mqdss64
137832143137922830138057737aimer192s
156193118156242329156285978
T:
sphincsf256harakarobust
170594969171172776172979442
T:
rainbow3ccompres683248
177739799178019501178274616
T:
luov6468330
254665854254881002255185381
T:
pqrsa15
266257518266566692266838750aimer256s
294061195294428792294792033
T:
picnic2l1fs
301949088302059977302212406
T:
sphincs256
337925689338144391338542179
T:
sphincsf128shake256simple
301432743?347641599?462878583?
T:
bluegemss128v2
361275327361857967368402424
T:
luov8086399
307606744?371562930?441221690?
T:
bluegemss128
422323522425133389429929891
T:
rainbow5ccompres963664
428905738429418956430347526
T:
sphincsf192shake256simple
608869473611135730611818635
T:
sphincsf128shake256robust
656433703656718424657164373
T:
sphincss128harakasimple
797649441801145868802924968
T:
sphincsf192shake256robust
850193073850368616851801955
T:
sphincss128harakarobust
752551277?903202689?1053796452?
T:
bluegemss192v2
907889971908526589909382285
T:
picnic2l3fs
950546916953819316954565445
T:
sphincsf256shake256simple
104262900110429813231043313097
T:
sphincss256harakasimple
135821041113584268621358671828
T:
sphincss256harakarobust
987778197?1375113970?1572569778?
T:
bluegemss192
142423133414250207361425736894
T:
sphincss192harakasimple
1306551874?1565120163?1827884429?
T:
bluegemss256v2
172810256217300642251730725268
T:
sphincsf256shake256robust
190132371219020402881902866412
T:
picnic2l5fs
199826175820009611622003140497
T:
sphincss192harakarobust
1391341887?2082408068?2776571349?
T:
bluegemss256
1831434132?2196600557?2604999666?
T:
gemss128v2
2049561682?2449261128?3377541505?
T:
gemss128
509599492350997581175105063495
T:
sphincss128shake256simple
4951461612?5940402383?6943218456?
T:
gemss192v2
797065747679732891217975684637
T:
sphincss256shake256simple
6710758193?8049367517?9397637670?
T:
gemss192
897443990990238667509038317293
T:
sphincss128shake256robust
8284928845?9927507269?11647463225?
T:
gemss256v2
106468565781065890552110676424976
T:
sphincss192shake256simple
142681460611427872164714292189861
T:
sphincss256shake256robust
12481738273?14952829500?19912970867?
T:
gemss256
183931787441843170987318440196595
T:
sphincss192shake256robust
Cycles to verify 59 bytes
25%50%75%system
793368060381961
T:
rainbow1aclassic363232
105821106228106649
T:
lattisigns512
141241143201144148
T:
falcon512tree
143556146133151195
T:
gravitysphincss
159434159974160616
T:
qtesla1
169107171485172138
T:
falcon512dyn
287656289039290331
T:
falcon1024tree
338213340466341943
T:
falcon1024dyn
340371343605348102ed25519
343740344838347428
T:
qtesla3f
348293350404351941
T:
qtesla3s
357665358377365203haetae2
371422383831394600
T:
redgemss128v2
459093474186488823
T:
redgemss128
469955482929492711
T:
gemss128v2
481918490220496547
T:
gemss128
474445490524500717
T:
bluegemss128v2
484433494385510665
T:
bluegemss128
557331557755558272dilithium2
615824620968637278
T:
gravitysphincsm
639152642281644467haetae3
637526645783653656
T:
rainbow3cclassic683248
698522701862727209
T:
pass769
789667791788800299haetae5
797428801948805926
T:
pass863
795975802797811292nccsign1
832716840141858039
T:
gravitysphincsl
848880853248857350
T:
qtesla1p
861963880136897402
T:
sphincss128harakasimple
912701919576927100dilithium3
105036010665701096635nccsign3
107654810837981091223nccsign1aes
109329911043421112532dilithium2aes
117939312101291247489
T:
gemss192
122253112263971233973
T:
ed448goldilocks
121682812484621273502
T:
bluegemss192
124916012658791286646
T:
redgemss192
123353312685911296127
T:
sphincss128harakarobust
129009613145451329096
T:
sphincss192harakasimple
134798113558221366679
T:
hector
134597113763801411301
T:
gemss192v2
137679414098571452827
T:
bluegemss192v2
139354714198091448347
T:
redgemss192v2
141029214542441488820
T:
rainbow5cclassic963664
145154214678611479565nccsign3aes
147873414800331481479dilithium5
168017816865651692874nccsign5
177873618111321835109
T:
sphincss256harakasimple
202257420277432038283mqsignlr2567246
202844320319802049509mqsignrr2567246
202738420375342044428dilithium3aes
204051220730502103365
T:
sphincss192harakarobust
204228020745942091162
T:
sphincsf128harakasimple
227393422918792312282
T:
donald2048
229483923179802338606nccsign5aes
255989626409172700695
T:
gemss256v2
262456326536222695626
T:
sphincss256harakarobust
281076528414572920670
T:
gemss256
288777629263373020483
T:
bluegemss256
285634129307932971895
T:
redgemss256
290711429544392997723
T:
sphincsf128harakarobust
291558029914523073261
T:
bluegemss256v2
298060130364943085332
T:
redgemss256v2
324593232720153315742
T:
sphincsf192harakasimple
346139935112443556644
T:
sphincsf256harakasimple
357985135946293639057dilithium5aes
385316838856993928311
T:
sphincs256
398062539963154020902
T:
qtesla3p
486913649173074966138
T:
sphincsf192harakarobust
495954150113075046914
T:
sphincsf256harakarobust
507574950967255135337mqsignrr25611272
508892651123245132497mqsignlr25611272
565466356762545694011picnicl1full
551378556833725839463
T:
sphincss128shake256simple
618867462191506236851aimer128f
818172382998938395355
T:
sphincss192shake256simple
838178883879568409675
T:
luov863256
837853084169738445334mqsignrr25614896
838442184282508479209mqsignlr25614896
105231401053805910556439picnicl1fs
107597351091894311052652
T:
sphincss256shake256simple
109485401097406410997549picnicl3full
107768651105108211322807
T:
sphincss128shake256robust
123191961233436312358411picnicl1ur
134414951365304113991902
T:
sphincsf128shake256simple
159093121636056616598915
T:
sphincss192shake256robust
165904181659821216673983aimer192f
183410051842306418461032picnicl5full
209327002113984421565711
T:
sphincss256shake256robust
217419252195953822150371
T:
sphincsf192shake256simple
218499612214287522452939
T:
sphincsf256shake256simple
232345272371479324702792
T:
rainbow1acyclicc363232
239225932410083824137122picnic3l1
236206412410236324284252
T:
rainbow1acompres363232
262857672673078126941360
T:
sphincsf128shake256robust
265374202690644227079007
T:
mqdss48
271739012721978827246615picnicl3fs
287158343099686331046437
T:
luov890351
317058353173364731763763picnicl3ur
322707673228349032331649aimer256f
367290283680885537280075
T:
pqrsa15
383378453842452538463125
T:
luov4849242
422167464275628343298922
T:
sphincsf256shake256robust
418643594275859343251509
T:
sphincsf192shake256robust
466502094671495546764628picnicl5fs
456671034783845254811571
T:
luov8117404
508590815094311251110045picnic3l3
522583995228301652614454aimer128s
549711425502698155080740picnicl5ur
816081498172675381843403picnic3l5
954234749637607297271034
T:
mqdss64
109526362109670325109769697
T:
luov6468330
120758292120960098121122050
T:
picnic2l1fs
137566621137700879137928570aimer192s
139553342139853503140303036
T:
rainbow3ccompres683248
139672560139868725141207243
T:
rainbow3ccyclicc683248
204822985206581355207278852
T:
luov8086399
264142399264393660264816884aimer256s
279732337279896551280063779
T:
picnic2l3fs
313353057317189364318014007
T:
rainbow5ccyclicc963664
320759325323425158327263288
T:
rainbow5ccompres963664
489381675489645523490123526
T:
picnic2l5fs