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; Zen (800f11); 2017 AMD Ryzen 3 1200; 4 x 3100MHz; rumba3, supercop-20221122

[Page version: 20240726 23:45:37]

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.


Implementation notes

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

Cycles to generate a key pair
25%50%75%system
399064039241648
T:
curve2251
430004317343315
T:
gls254
447374492044939
T:
gls254prot
558915622856511
T:
k277taa
640776428664529
T:
k298
661346680067503
T:
gls1271
892038927689393
T:
k277mon
101348102336102370
T:
kummer
144317144332144396
T:
curve25519
186208186823187356
T:
surf127eps
200830201112201359
T:
ed448goldilocks
201457203277204818
T:
sclaus1024
265071265110265175
T:
nistp256
474898476975478480
T:
surf2113
954808956760958406
T:
ed521gs
99471310035201010948
T:
sclaus2048
109203910937761095296
T:
nist521gs
120183012051331208382
T:
claus
Cycles to compute a shared secret
25%50%75%system
422804243842475
T:
gls254
446494482644853
T:
gls254prot
557555616656410
T:
k277taa
639146406764346
T:
k298
891318921289256
T:
k277mon
101260101287101316
T:
kummer
157033158303163391
T:
curve25519
159716160689161507
T:
curve2251
165164165960166506
T:
gls1271
181807183608183962
T:
surf127eps
201024201382204739
T:
sclaus1024
475296477122477679
T:
surf2113
582336584503586958
T:
ed448goldilocks
685797687148687995
T:
nistp256
953919955956957987
T:
ed521gs
9962849976781004679
T:
sclaus2048
109090110925561093674
T:
nist521gs
120406712073391212719
T:
claus