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; Comet Lake (806ec); 2019 Intel Core i3-10110U; 2 x 2100MHz; cubi10, supercop-20240909

[Page version: 20241011 15:42:01]

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
212182155122723
T:
kumjacfp127g
214572235823173
T:
jacfp127i
251172603526964
T:
prjfp127i
257182678927805
T:
hecfp127i
292633020931412
T:
jacfp128bk
359303682338510
T:
hecfp128fkt
363553707037896
T:
hecfp128i
361223711138487
T:
prjfp128bk
365293716038100
T:
hecfp128bk
372033741537738
T:
gls254
384933863939290
T:
curve2251
391673921839274
T:
gls254prot
463104635646406
T:
k277taa
533745357253807
T:
k298
533785457054859
T:
kummer
693767013770904
T:
gls1271
722457229472337
T:
k277mon
797077979979901
T:
kumfp127g
112766112897113145
T:
kumfp128g
126586126815127106
T:
curve25519
152153152526152841
T:
ed448goldilocks
176728178824180505
T:
sclaus1024
232978233702234474
T:
nistp256
503611507677510154
T:
surf2113
822039823060824396
T:
ed521gs
891230899150906481
T:
sclaus2048
955768957034959474
T:
nist521gs
976918978937983596
T:
claus
Cycles to compute a shared secret
25%50%75%system
361793622736278
T:
gls254
387843896939024
T:
gls254prot
460704610846157
T:
k277taa
532435339754457
T:
kummer
533395343053597
T:
k298
721557219672226
T:
k277mon
811768212482235
T:
kumfp127g
828328293183100
T:
kumjacfp127g
884868865288835
T:
jacfp128bk
109315109467109744
T:
prjfp128bk
113883114013114209
T:
hecfp128bk
117595117729117928
T:
hecfp128fkt
118034118195118380
T:
kumfp128g
124495125676125841
T:
jacfp127i
136074136464136786
T:
curve25519
144072144248144341
T:
curve2251
165281166603166797
T:
prjfp127i
169002169137169298
T:
hecfp127i
171909177410178364
T:
gls1271
179550180020180969
T:
sclaus1024
250536253338253699
T:
hecfp128i
456831457052457300
T:
ed448goldilocks
499620501999507448
T:
surf2113
588354589345590920
T:
nistp256
822761823422824379
T:
ed521gs
902606905913908926
T:
sclaus2048
955303956377959068
T:
nist521gs
972644975939980494
T:
claus