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; Ice Lake (706e5); 2019 Intel Core i3-1035G1; 4 x 1000MHz; icelake2, supercop-20221005

[Page version: 20240720 10:46:06]

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
294222962629829
T:
gls254
315353159731656
T:
gls254prot
356823592536460
T:
curve2251
383873849338628
T:
k277taa
419144215642522
T:
k298
496314972949925
T:
kummer
551485524155618
T:
k277mon
635416461665455
T:
gls1271
121235121421121705
T:
curve25519
145378145817146240
T:
ed448goldilocks
167451169019171086
T:
surf127eps
210381213080215609
T:
sclaus1024
229401230861233076
T:
nistp256
393994396192398488
T:
surf2113
794593796389798799
T:
ed521gs
960681964206967325
T:
nist521gs
107529210887261104624
T:
sclaus2048
126261112669811272519
T:
claus
Cycles to compute a shared secret
25%50%75%system
288282887928947
T:
gls254
314583151831670
T:
gls254prot
382633836838587
T:
k277taa
415914182342184
T:
k298
495244961549793
T:
kummer
550675515755384
T:
k277mon
130070130318130992
T:
curve25519
140066140553140999
T:
curve2251
158547160294161947
T:
gls1271
163805165182167813
T:
surf127eps
212667213688216268
T:
sclaus1024
391304393743396581
T:
surf2113
469404470206471471
T:
ed448goldilocks
596086598954603025
T:
nistp256
794467795618798066
T:
ed521gs
959187961357964090
T:
nist521gs
108706910915971115555
T:
sclaus2048
126428812689701273171
T:
claus