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; Tremont (906c0); 2021 Intel Celeron N5105; 4 x 2000MHz; jasper3, supercop-20241011

[Page version: 20241017 10:58:42]

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
359093675338164
T:
jacfp127i
376673837639622
T:
kumjacfp127g
431614453646522
T:
prjfp127i
455264675149554
T:
hecfp127i
502865079252498
T:
ecfp256e
505215100552484
T:
curve2251
538895418554704
T:
gls254
542505496856443
T:
ecfp256h
552505530355486
T:
gls254prot
560505703758696
T:
ecfp256s
610776197064062
T:
ecfp256q
630576430467052
T:
hecfp128i
675886771368018
T:
k277taa
762017709878757
T:
k298
969719819599277
T:
gls1271
983619859899123
T:
k277mon
153846154168154692
T:
kumfp127g
218618219872220584
T:
kumfp128g
240457240687240979
T:
curve25519
266922269145271114
T:
ecfp256i
304651306512307862
T:
ed448goldilocks
319943320599329126
T:
kummer
327231330583333107
T:
sclaus1024
341613341907342285
T:
nistp256
598632601536604305
T:
surf2113
174374317479291754663
T:
ed521gs
176538917802151793393
T:
sclaus2048
197057719789331985490
T:
claus
197978819838251987680
T:
nist521gs
Cycles to compute a shared secret
25%50%75%system
528065285052923
T:
gls254
551555522055358
T:
gls254prot
675816770167853
T:
k277taa
751707652878048
T:
k298
982449838098547
T:
k277mon
156481157062157452
T:
kumfp127g
158872159000159144
T:
kumjacfp127g
192882193539193961
T:
curve2251
226663227385227626
T:
kumfp128g
234578236842243984
T:
gls1271
240330240539240785
T:
curve25519
240870241443242180
T:
jacfp127i
246305246900247519
T:
ecfp256e
265209266016267309
T:
ecfp256i
265584266875269662
T:
ecfp256q
305051306339307949
T:
ecfp256h
312391312735313459
T:
prjfp127i
319446319644319899
T:
kummer
321765322104322549
T:
hecfp127i
327157328663334837
T:
sclaus1024
342742343866345581
T:
ecfp256s
461060461738462420
T:
hecfp128i
595845601415602718
T:
surf2113
100326310039421008864
T:
ed448goldilocks
117812711813481190162
T:
nistp256
174605517498111752483
T:
ed521gs
177174017944161798860
T:
sclaus2048
197869319820101985299
T:
nist521gs
197377119872601989597
T:
claus