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 key-encapsulation mechanisms on one machine: amd64; Haswell+AES (306c3); 2013 Intel Core i7-4770; 4 x 3400MHz; speed2supercop, supercop-20250922

[Page version: 20251001 12:36:32]

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 key-encapsulation mechanisms:

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 C: means that the current SUPERCOP database does not list IND-CCA2 security as a goal for this key-encapsulation mechanism. 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 key-encapsulation mechanism and each implementation. Designers and implementors interested in submitting new key-encapsulation mechanisms and new implementations of existing systems should read the call for submissions.


Test results

Graphs: (pkcycles,pkbytes) (ccycles,cbytes) (kcycles,cbytes) (pkbytes,cbytes)

NISTPQC graphs: (pkcycles,pkbytes) (ccycles,cbytes) (kcycles,cbytes) (pkbytes,cbytes)

Cycles to generate a key pair
25%50%75%system
191321923219456kyber90s512
256842586026068kyber512
281842829628460
T:
C:nhcompact512cca
291282933229620kyber90s768
303043040034880ntruplus576
355843599242440timer
378923797638124smaugt1
379763805238140
T:
lightsaber2
407324092041072
T:
C:nhcompact768cca
420604230442500kyber90s1024
423004302843296ntrulpr653
423844311243776kyber768
435564361243720ntruplus768
436164393244328
T:
ntrulpr4591761
445604463645428ntrulpr761
480324839648768T!!!newhope512cca
519805209652152ntruplus864
535525382054276
T:
C:nhcompact1024cca
39224?54284?57676?
T:
lac128
561325629667584smaugt3
565845678457172ntrulpr857
587605951259720ntrulpr1013
598806013260932ntrulpr953
619646220462528kyber1024
55824?63384?73528?ntruplus1152
671046723267436
T:
saber2
805408072881008ntrulpr1277
758488342485688smaugt5
898929005690460
T:
hqc128round4
906089101291348T!!!newhope1024cca
91652?91972?117204?
T:
lac256
106040106112106240
T:
firesaber2
107348122916133472
T:
lac192
166436166824167352ntruhps2048509
213372213592214096
T:
hqc192round4
218952219152250604threebears624r2cca
217488244596248516C:threebears624r2cpa
261464261824265828
T:
kindi256342
266544266888268084ntruhrss701
273688274500275008
T:
C:hila5
279044279456280028
T:
kindi512222
287240288672289416ntruhps2048677
288660289560308832
T:
kindi512241
389620390996405016
T:
hqcrmrs128
410340411464412772ntruhps4096821
434784439744442976
T:
ntrukem443
443508444424454972
T:
hqc256round4
438864458832465992
T:
hqc128
460864461328461604threebears936r2cca
467916469568488052
T:
hqc1281
457372487332532112C:threebears936r2cpa
581324583848585840
T:
kindi512321
587728589132619440
T:
C:bikel1
695456696140696912
T:
kindi256522
713580741252789996sntrup653
749440752680770452
T:
rqc128
796760808672826680
T:
hqcrmrs192
825200826144917836C:threebears1248r2cpa
827376829728849260sntrup761
831464845432864428
T:
C:edonk128k16n80nu4l6
865372873716897164
T:
hqc1921
821008880888914528threebears1248r2cca
886868891304918952
T:
hqc192
927568947172960772
T:
hqc1922
904896955904961508sntrup4591761
102059610249001029232
T:
C:rolloi128
111172811166721122168
T:
ntrukem743
120521212058081208016
T:
frodokem640
117806812267281228664sntrup857
130142813170121330504
T:
C:rolloi192
131112013194761382516
T:
rqc192
130387213249081349572
T:
hqcrmrs256
134633213497321368612
T:
C:edonk128k16n80nu8l6
135663213856241401460
T:
hqc2561
143479614559641513484sntrup953
142399614607481468876
T:
hqc256
146183214682161471700
T:
frodokem640aes
145543614691401499864
T:
hqc2562
150961215172841535500
T:
hqc2563
152534815540521573284
T:
C:edonk128k32n96nu4l4
163082416366201725428sntrup1013
1699268?1703432?2137447?
T:
C:rolloi256
173254817354601740812
T:
C:bikel3
188808819181601945792
T:
C:edonk192k32n128nu4l6
1937332?1949500?2704488?
T:
rqc256
199108019952402010516
T:
C:edonk128ref
239570024192602447008
T:
C:lake1
255288425634002577104
T:
C:lake2
259823226077082649444sntrup1277
261644826440122660744
T:
frodokem976
264790426641562707972
T:
C:lake3
284734828680642895540
T:
C:edonk192k48n144nu4l4
303453630431563057872
T:
frodokem976aes
393220839364363946948
T:
frodokem640shake
423652043148524331156
T:
locker1
445252044638124484012
T:
rolloii128
445134844661444483016
T:
rolloii192
457415245965084683220
T:
locker2
498496050081365042012
T:
locker3
512358051338405145240
T:
frodokem1344aes
522170452327725240460
T:
rolloii256
545874454722965502356
T:
locker4
630373663795086546144
T:
locker6
690573669435687430384
T:
remblem928
690369269775607409200
T:
remblem1056
719432872364047514616
T:
locker5
7576524?7598072?12037344?
T:
frodokem976shake
818142481939728260104
T:
sikep434
107105761128539611322116
T:
locker7
115881041161743211703516
T:
lotus128
114140161190906812039068
T:
locker8
122702241228660012351624
T:
sikep503
121927281239411612821384
T:
locker9
132108921329562413399144
T:
frodokem1344shake
138824481391380815086408
T:
sikep434comp
199240081996536021632492
T:
sikep503comp
221683482219970422254568
T:
lotus192
251343602517129225246128
T:
mersenne756839
254277042557686825583852
T:
sikep610
349131803628518036917340mceliece348864pcf
350316563659499637167164mceliece348864f
381496763981507640219388
T:
lotus256
433705444353417647407156
T:
sikep610comp
442681044427503244281636
T:
sikep751
499383605004472850172848
T:
ntskem1264
35168440?56437340?78851544?mceliece348864pc
45591228?57024132?89280320?mceliece348864
690361886910317674744852
T:
sikep751comp
112059448112213840113645944mceliece460896pcf
112179260115020600117814964mceliece460896f
64699372?117522868?187584008?
T:
rsa2048
116067408?150155308?255441216?mceliece460896
152782932153029652153232160
T:
ntskem1380
150434968?160356380?297116656?mceliece460896pc
234092804234815868235112080mceliece6960119f
235895832240345908241349104mceliece6960119pcf
267477144267647640267877456
T:
ntskem13136
266387072269791156269981516mceliece6688128pcf
270317416273119712275722604mceliece6688128f
274886952276443748282262140
T:
oddmanhattan128
302475868302585956303139564mceliece8192128f
302773688305868368306154188mceliece8192128pcf
270297312?359205448?537247748?mceliece6688128pc
273931840?374671984?542206156?mceliece6688128
241950044?388295808?475778152?mceliece6960119
313102240?388460028?467393344?mceliece6960119pc
301834244?390631028?491212340?mceliece8192128
442353160443924104455192008
T:
oddmanhattan192
306590176?484280632?649415488?mceliece8192128pc
788835324790881340795840336
T:
oddmanhattan256
897117364900183348904490592
T:
bigquake1
679539118468997266086969095264
T:
bigquake3
137303222361377903373613835750564
T:
bigquake5
Cycles for encapsulation
25%50%75%system
244242448024576smaugt1
246202474025464ntruhps2048509
239242482426788
T:
rsa2048
249282503225124ntruplus576
243442582426036timer
259962606026756ntruhrss701
307603088830964ntruplus768
318923197632092kyber90s512
346963579238740mceliece348864f
352643625638072mceliece348864
362043635637040ntruhps2048677
397043976039864ntruplus864
402004025640332kyber512
420884248842704ntruhps4096821
427444373646960mceliece348864pc
438524403244540sntrup4591761
442964436044492kyber90s768
434524505246588mceliece348864pcf
449004560845848sntrup653
463244643646628ntruplus1152
484244851648684
T:
C:nhcompact512cca
489284899249076sntrup761
487004905257616smaugt3
507365078050852
T:
lightsaber2
563805648859264kyber768
603526103261204sntrup857
607366104061532kyber90s1024
651006519665488sntrup953
653686594466292sntrup1013
678406796868168
T:
C:nhcompact768cca
690366924469700smaugt5
698486994470088ntrulpr653
735367359673716ntrulpr761
732647486081116mceliece460896
696447507685792mceliece460896f
758687598876136
T:
ntrulpr4591761
750167600076840
T:
lac128
808528126481740T!!!newhope512cca
782808351293932mceliece460896pc
838248388083948
T:
saber2
845888468884824kyber1024
793688496094940mceliece460896pcf
851728531285548sntrup1277
866408690887320
T:
ntskem1264
886088869288840
T:
C:nhcompact1024cca
940529417694332ntrulpr857
9296495848101700
T:
C:edonk128k16n80nu4l6
980289832898816ntrulpr1013
986889882098936ntrulpr953
116936117440118364
T:
C:bikel1
120708125136132088mceliece6688128f
126508126580126700
T:
firesaber2
125208127656135308mceliece6960119f
121824127828137228mceliece6688128
125812127904133160
T:
ntrukem443
125868129072134520mceliece6960119
130192130296130452ntrulpr1277
128116134020144636mceliece6688128pcf
130304134744141780mceliece6688128pc
142304143812151660mceliece6960119pcf
143168144040147224mceliece8192128
142968144748147064mceliece8192128f
143200146440153032mceliece6960119pc
150048150816151136T!!!newhope1024cca
155688157028159400mceliece8192128pc
155204157140158864mceliece8192128pcf
157432158356160208
T:
C:rolloi128
160344160700161140
T:
lotus128
171252172364173740
T:
C:rolloi192
178176200368213284
T:
lac192
200576?201640?252522?
T:
C:rolloi256
206768209840216076
T:
C:edonk128k16n80nu8l6
209860210876211980
T:
lac256
238728238996244228
T:
hqc128round4
241208241920243012
T:
lotus192
243556246644251636
T:
ntrukem743
248104251896259880
T:
C:edonk128k32n96nu4l4
275772276552277340
T:
C:bikel3
299776300196300808threebears624r2cca
303816307040352080C:threebears624r2cpa
324752325440326220
T:
ntskem1380
335536336188336824
T:
C:hila5
341668342384343028
T:
kindi256342
342888343984358584
T:
lotus256
372116377088384452
T:
C:edonk128ref
380036381388392912
T:
ntskem13136
403160403812404428
T:
kindi512222
414964415616417168
T:
kindi512241
445232453580463820
T:
C:lake1
484816487812513636
T:
C:lake2
497608500284502544
T:
C:edonk192k32n128nu4l6
509920511216512816
T:
rolloii128
527136527820528936
T:
rolloii192
540668543732571528
T:
C:lake3
548420548920549564
T:
hqc192round4
553960566396577864
T:
hqcrmrs128
581148582096666028threebears936r2cca
585328587216597764
T:
rolloii256
592352616660639892
T:
hqc128
579948635684676876C:threebears936r2cpa
716224720320729328
T:
C:edonk192k48n144nu4l4
713520735200740844
T:
hqc1281
749996757204764764
T:
locker1
759916761472770976
T:
kindi512321
740992767992774792
T:
locker2
835140839572842396
T:
kindi256522
838028856096863204
T:
locker3
942864950576965328
T:
locker4
96165610243601103900C:threebears1248r2cpa
95237210271161067936threebears1248r2cca
102344810346281045144
T:
rqc128
102470810613041080912
T:
locker6
106860410707321071872
T:
hqc256round4
114390411737081186304
T:
hqcrmrs192
118681611961641214716
T:
locker5
123603612653481278776
T:
hqc192
134490813532841383824
T:
hqc1921
144629214700361503968
T:
hqc1922
171653617196401725484
T:
frodokem640
185025618585081874504
T:
locker7
185929218718801883448
T:
locker8
1874876?1887740?2429100?
T:
rqc192
188877618925281901888
T:
frodokem640aes
189506819356521945912
T:
hqcrmrs256
202758820333362040468
T:
locker9
201822020523082067604
T:
hqc256
215467221749922220100
T:
hqc2561
228290423161602338400
T:
hqc2562
237350824139442460432
T:
hqc2563
239557224711402517972
T:
bigquake1
2672512?2704888?3453368?
T:
rqc256
342500834326443440636
T:
frodokem976
367295236795163690644
T:
frodokem976aes
428802042904244302604
T:
frodokem640shake
618868062080486232552
T:
frodokem1344aes
684615670796367256852
T:
bigquake3
801690480741808092796
T:
frodokem976shake
102373321024910010265720
T:
remblem928
102695441031657210442700
T:
remblem1056
104626041084454011182880
T:
bigquake5
132283641324124813246132
T:
sikep434
141629321417469614254836
T:
frodokem1344shake
202045202026483620289704
T:
sikep503
217043482178610821895728
T:
sikep434comp
274276322760458427623624
T:
mersenne756839
310255523115602831305372
T:
sikep503comp
466723404668601246701556
T:
sikep610
594661045967272060024688
T:
oddmanhattan128
639423926412138464423760
T:
sikep610comp
714028567141763271434472
T:
sikep751
110562404110682996111234848
T:
sikep751comp
113880952114043668114215220
T:
oddmanhattan192
235745836236926972237720168
T:
oddmanhattan256
Cycles for decapsulation
25%50%75%system
189241897619016ntruplus576
226962274022788ntruplus768
235322364823988kyber90s512
290682912429172ntruplus864
314003144831524kyber512
337323381633940kyber90s768
356603574435836ntruplus1152
380763814438764timer
383883841238476smaugt1
387123879238968ntruhps2048509
460124607646148kyber768
471004717247252
T:
C:nhcompact512cca
476884785648080kyber90s1024
505885063250664
T:
lightsaber2
539565411254364
T:
C:hila5
593445948059544sntrup761
602246036060504ntruhps2048677
616166172461804sntrup653
621566227663088ntruhrss701
665406730072472smaugt3
675766768067804
T:
C:nhcompact768cca
690006906469244kyber1024
764087678877480ntruhps4096821
827048277282860
T:
saber2
843008449284716ntrulpr653
858728599286080sntrup857
880208811688240
T:
C:nhcompact1024cca
883168839288484ntrulpr761
889808934489492T!!!newhope512cca
895368971289868sntrup953
912129129691448sntrup1013
922609247692724sntrup4591761
9318493752103712smaugt5
98944100084100956
T:
lac128
107920108128108292
T:
ntrulpr4591761
116072116148116272ntrulpr857
116504116640116804sntrup1277
118616118684118796ntrulpr1013
120856121032121160ntrulpr953
123824124092124348mceliece348864f
124400124564126104mceliece348864
125472125612126072
T:
firesaber2
131956132464133732mceliece348864pc
132808132976133880mceliece348864pcf
134736135088135752
T:
ntrukem443
133548143136147988C:threebears624r2cpa
157016157144157280ntrulpr1277
163236163412165052T!!!newhope1024cca
186492186780187024
T:
lotus128
187892197944201632C:threebears936r2cpa
215364217032267952
T:
lac192
219284225024237876C:threebears1248r2cpa
251612251996253752mceliece460896
251788252268252812mceliece460896f
257812258428258664mceliece460896pc
259196259396259636mceliece460896pcf
272264272776274404
T:
lotus192
281284281744283452mceliece6960119
281472281748282116mceliece6960119f
290764290940291480mceliece6960119pc
291240292068294384mceliece6960119pcf
295352295692296188mceliece8192128f
294260295796296136mceliece6688128
296316298460298772mceliece8192128
297384299620300016mceliece6688128f
308484308792310440mceliece8192128pcf
309288309648311560mceliece8192128pc
311688312440313536mceliece6688128pc
311948312592314264mceliece6688128pcf
316080320012322212
T:
ntrukem743
352720356340370860
T:
lac256
386960387380388292
T:
ntskem1264
414048414328414620
T:
hqc128round4
413276414700472764
T:
lotus256
427664427968428744
T:
kindi256342
534900535784537248
T:
kindi512222
547104547660548532
T:
kindi512241
671196678540730780threebears624r2cca
719728720632722268
T:
ntskem1380
874156875152876492
T:
hqc192round4
915464918836953372
T:
hqc128
927136943996947728
T:
hqcrmrs128
953964956076962108
T:
kindi512321
973384977924994872
T:
kindi256522
105309610560361058772
T:
C:rolloi128
123260412349161238104
T:
C:rolloi192
123443213126681349816threebears936r2cca
130967613128721348404
T:
hqc1281
138900813932281400184
T:
ntskem13136
170585617081641711436
T:
frodokem640
171802017234801734820
T:
hqcrmrs192
173346017381961747252
T:
rolloii128
173850817613961764332
T:
hqc256round4
177922817880321809348
T:
hqc192
180309218061161810136
T:
frodokem640aes
180978018118001815296
T:
C:bikel1
185355218647441896336
T:
C:lake1
189094818941281898276
T:
rolloii192
207603220781362082396
T:
C:rolloi256
209028821425242223492threebears1248r2cca
219517622225002248032
T:
hqc1921
225942022773442292448
T:
hqc1922
242871624317842439396
T:
rolloii256
261924026212722627368
T:
rsa2048
2675956?2753836?6614928?
T:
C:edonk192k48n144nu4l4
277168027801042822272
T:
hqcrmrs256
283450428641042871640
T:
hqc256
310575231272523145416
T:
C:lake2
322033232451843286988
T:
hqc2561
337718033912043461776
T:
hqc2562
343514434430683448032
T:
frodokem976
343134434627403490352
T:
bigquake1
348658834935563500636
T:
frodokem976aes
352410035498283593276
T:
hqc2563
361753236374283664152
T:
rqc128
370710037262723741512
T:
locker1
370358837538323849052
T:
locker2
411506841634884258760
T:
locker4
419150441933604207028
T:
frodokem640shake
424162442581404276756
T:
C:lake3
547529654918845515020
T:
locker3
574788857669725802164
T:
C:bikel3
3665164?5903132?6021084?
T:
C:edonk128k32n96nu4l4
596159259737485981124
T:
frodokem1344aes
609008461119246130792
T:
locker6
630972063277206344216
T:
locker5
687744469030526930640
T:
locker7
698815270144807045676
T:
locker8
731853673414168427336
T:
rqc192
7846636?7945368?10420964?
T:
frodokem976shake
943800894595529479868
T:
locker9
115419961158226413199112
T:
rqc256
137737121379881213886752
T:
remblem928
138330641390952013954552
T:
remblem1056
13910040?14013816?17452732?
T:
frodokem1344shake
142105321423394814242424
T:
sikep434
158581521586630415880452
T:
sikep434comp
18321620?20165108?82019216?
T:
C:edonk128k16n80nu8l6
215224282153629621578904
T:
sikep503
230264602304470423068068
T:
sikep503comp
289302962929800429367088
T:
bigquake3
10616976?30412388?90821956?
T:
C:edonk128k16n80nu4l6
395900523982246839839916
T:
mersenne756839
435930924375688045325804
T:
bigquake5
470138844710598447132636
T:
sikep610
496589324987824049996968
T:
sikep610comp
21115024?53095936?64003888?
T:
C:edonk128ref
650352486526217666043956
T:
oddmanhattan128
47974856?74850388?104821536?
T:
C:edonk192k32n128nu4l6
769340567699860877093848
T:
sikep751
815456248155910881584732
T:
sikep751comp
125995508126133224126325380
T:
oddmanhattan192
259594916261470464263961272
T:
oddmanhattan256