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 Diffie–Hellman secret-sharing systems on one machine: amd64; Redwood Cove (a06a4-40); 2023 Intel Core Ultra 5 125H, P cores; 4 x 1200MHz; meteor,big, supercop-20251222

[Page version: 20260208 14:17:38]

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 Diffie–Hellman secret-sharing systems:

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 Diffie–Hellman system and each implementation. Designers and implementors interested in submitting new Diffie–Hellman systems and new implementations of existing systems should read the call for submissions.


Test results

Graphs: (pkcycles,pkbytes) (scycles,pkbytes)

Cycles to generate a key pair
25%50%75%system
194892068423444
T:
prjfp127i
207542176423277
T:
jacfp127i
211052197523695
T:
kumjacfp127g
227432364525160
T:
hecfp127i
238432391724047curve25519
266162778028831
T:
jacfp128bk
279992837129599
T:
ecfp256e
283652931030934
T:
hecfp128i
290583045632312
T:
prjfp128bk
304313066530850
T:
gls254
299043148732994
T:
hecfp128bk
315453160531672
T:
gls254prot
308663185333220
T:
hecfp128fkt
321743282934458
T:
ecfp256s
328803342234607
T:
ecfp256q
333853348633922
T:
curve2251
375623769437927nistp256
386323867738738
T:
k277taa
428604292943022
T:
k298
518915194052026
T:
kummer
609406104461171
T:
k277mon
636046387664368
T:
kumfp127g
787957894079165
T:
kumfp128g
130998131704132736
T:
ecfp256i
142344142611142974
T:
ed448goldilocks
149130149920150915
T:
ecfp256h
183066184933187072
T:
sclaus1024
609309612644617542
T:
ed521gs
774718778664782253
T:
nist521gs
924601925944932261
T:
claus
946095953064959762
T:
sclaus2048
Cycles to compute a shared secret
25%50%75%system
294542950429569
T:
gls254
314703153131587
T:
gls254prot
385373858338626
T:
k277taa
427024275242818
T:
k298
518195187151924
T:
kummer
607326078360855
T:
k277mon
650106519265392
T:
kumfp127g
661056623166455
T:
jacfp128bk
669136752068429
T:
kumjacfp127g
749377509475341curve25519
749807517475453
T:
prjfp128bk
771857758677830
T:
hecfp128bk
797188001980254
T:
hecfp128fkt
829248314183367
T:
kumfp128g
100723100951101442
T:
jacfp127i
117435117787118483
T:
ecfp256e
119894120179121908
T:
prjfp127i
120353120693121021
T:
hecfp127i
123975124218124700
T:
ecfp256i
128183128568129633
T:
ecfp256q
132574134030134701
T:
curve2251
138058138181138370nistp256
142027142485142944
T:
ecfp256h
166783167199167695
T:
hecfp128i
175223175778176742
T:
ecfp256s
186999190837192851
T:
sclaus1024
413966414631415246
T:
ed448goldilocks
608265611045614312
T:
ed521gs
773960777202781320
T:
nist521gs
924147924923925874
T:
claus
952438966917969824
T:
sclaus2048