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 2 (860f01); 2022 AMD Ryzen 5 4500U; 6 x 3600MHz; renoir, 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
220932328424917
T:
kumjacfp127g
226352357424618
T:
jacfp127i
237802510926928
T:
prjfp127i
245402606627737
T:
hecfp127i
336733470036842
T:
ecfp256e
339803560237308
T:
hecfp128i
343683577039334
T:
ecfp256h
368663858841768
T:
ecfp256s
388744018844042
T:
ecfp256q
398654055242867
T:
curve2251
439084391743931
T:
gls254prot
434724528745624
T:
gls254
536165364253702
T:
k277taa
601216077161228
T:
gls1271
607806083061001
T:
kummer
640236406664168
T:
k298
821288219782296
T:
kumfp127g
865988659886598
T:
k277mon
109497109559109638
T:
kumfp128g
134260134367134437
T:
curve25519
152706153586154485
T:
ecfp256i
158781159969160209
T:
ed448goldilocks
163748165525166882
T:
sclaus1024
235587235981236606
T:
nistp256
442575444555445394
T:
surf2113
804326804999806045
T:
ed521gs
844889850043855348
T:
sclaus2048
938526941734951973
T:
nist521gs
976860979744982812
T:
claus
Cycles to compute a shared secret
25%50%75%system
419824199542283
T:
gls254
437354383143831
T:
gls254prot
536185362253623
T:
k277taa
607816083760939
T:
kummer
639526398164012
T:
k298
835658367984233
T:
kumfp127g
853838598886102
T:
kumjacfp127g
865698658386583
T:
k277mon
114623114623114624
T:
kumfp128g
128349128411128541
T:
jacfp127i
134270134341134434
T:
curve25519
139975140031140238
T:
ecfp256e
146807147247148493
T:
gls1271
147365147503147943
T:
ecfp256i
149259149443149579
T:
ecfp256q
157008157350157896
T:
curve2251
159632159767159959
T:
prjfp127i
163041163240163385
T:
hecfp127i
161962166801167530
T:
sclaus1024
170626170847171137
T:
ecfp256h
207668207771207959
T:
ecfp256s
225782225953226301
T:
hecfp128i
443663444307444629
T:
surf2113
482996483167483626
T:
ed448goldilocks
597570598080599522
T:
nistp256
805534805898806767
T:
ed521gs
851776858333861261
T:
sclaus2048
938235941303952921
T:
nist521gs
977027978635980088
T:
claus