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; Golden Cove (90675-00); 2022 Intel Core i3-12100; 4 x 3300MHz; alder, 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
182631912420473
T:
jacfp127i
188491987021345
T:
kumjacfp127g
201472137523032
T:
prjfp127i
207542211624089
T:
hecfp127i
277462821828982
T:
ecfp256e
279252832429282
T:
ecfp256h
275312877230610
T:
hecfp128i
296802995530596
T:
gls254
310513111631172
T:
gls254prot
323273276233317
T:
ecfp256q
334213350933662
T:
curve2251
382783831738365
T:
k277taa
422444229742350
T:
k298
498235053751038
T:
gls1271
522835232652377
T:
kummer
606026067160754
T:
k277mon
637826396864195
T:
kumfp127g
800578029580771
T:
kumfp128g
106427107737109094
T:
curve25519
131565132437133363
T:
ecfp256i
139043139357139705
T:
ed448goldilocks
164261165942167469
T:
sclaus1024
177374178291179316
T:
nistp256
340240341868342957
T:
surf2113
597776604040613776
T:
ed521gs
767619773444778334
T:
nist521gs
876441881581888441
T:
sclaus2048
922864924073925799
T:
claus
Cycles to compute a shared secret
25%50%75%system
290062905629106
T:
gls254
309193097131023
T:
gls254prot
381453818638243
T:
k277taa
420704212342187
T:
k298
522185226252316
T:
kummer
605136058060649
T:
k277mon
656236575365932
T:
kumfp127g
670126713667540
T:
kumjacfp127g
853028558285803
T:
kumfp128g
101291101473101610
T:
jacfp127i
105122106347106941
T:
curve25519
118124118386118680
T:
ecfp256e
120657120960123094
T:
hecfp127i
120077121057122317
T:
prjfp127i
124228124473125316
T:
ecfp256i
126022126660127919
T:
gls1271
128642128918129711
T:
ecfp256q
132143133051133967
T:
curve2251
141461141772142195
T:
ecfp256h
167449167739167970
T:
hecfp128i
165481169072169488
T:
sclaus1024
339210339989341510
T:
surf2113
408256408889409569
T:
ed448goldilocks
437158438243441455
T:
nistp256
596065600105604901
T:
ed521gs
768880775431780732
T:
nist521gs
880017888445889552
T:
sclaus2048
921133922295923887
T:
claus