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; Broadwell+AES (306d4); 2015 Intel Core i3-5005U; 2 x 1900MHz; shoe, supercop-20241011

[Page version: 20241021 10:27:55]

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
248262525725647
T:
jacfp127i
256412595826407
T:
kumjacfp127g
281402889629614
T:
hecfp127i
290712953330154
T:
prjfp127i
369983720137463
T:
gls254
380883861339142
T:
hecfp128i
396533974439826
T:
gls254prot
404984112542209
T:
curve2251
418104253743558
T:
ecfp256e
447814550647871
T:
ecfp256h
479704892550506
T:
ecfp256q
493744947449570
T:
k277taa
552205541755620
T:
k298
673746802868076
T:
kummer
768367689776956
T:
k277mon
769807797178538
T:
gls1271
900649016090349
T:
kumfp127g
128298128362128452
T:
kumfp128g
143129143218143316
T:
curve25519
156756157234157977
T:
ed448goldilocks
183338184216185346
T:
ecfp256i
186285188264190459
T:
sclaus1024
247198247669249218
T:
nistp256
519092521365522891
T:
surf2113
903906904390905062
T:
ed521gs
939946945975950476
T:
sclaus2048
9899779910211012435
T:
claus
102102010214911022141
T:
nist521gs
Cycles to compute a shared secret
25%50%75%system
360983618736268
T:
gls254
395403962639709
T:
gls254prot
491854928449384
T:
k277taa
551435525855372
T:
k298
672706784767889
T:
kummer
766997672476762
T:
k277mon
875748773087856
T:
kumjacfp127g
927469291793081
T:
kumfp127g
133595133664133800
T:
kumfp128g
143009143099143167
T:
curve25519
153399153660153971
T:
jacfp127i
154605154986155184
T:
curve2251
168666168841169082
T:
ecfp256e
178953179098179243
T:
ecfp256i
181350181708182079
T:
ecfp256q
184500184778185053
T:
prjfp127i
186545186702186863
T:
hecfp127i
186937188640193146
T:
gls1271
191214192617194441
T:
sclaus1024
212637212814213111
T:
ecfp256h
267898268282273577
T:
hecfp128i
467599467816468032
T:
ed448goldilocks
512866518260520743
T:
surf2113
628474628875629642
T:
nistp256
904580904969905273
T:
ed521gs
934943944087950526
T:
sclaus2048
986678987600988614
T:
claus
102068310210951021767
T:
nist521gs