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 Pentium Silver N6000; 4 x 1100MHz; jasper, 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
350933585436590
T:
jacfp127i
362473697437617
T:
kumjacfp127g
413514225543258
T:
prjfp127i
438714487046293
T:
hecfp127i
508095128752405
T:
ecfp256e
515085203252800
T:
curve2251
524785283553689
T:
gls254
538175434356095
T:
ecfp256h
549325540756130
T:
gls254prot
582175881459408
T:
ecfp256s
610036191263166
T:
ecfp256q
615906245863984
T:
hecfp128i
677716789468103
T:
k277taa
759697715978309
T:
k298
983009847598742
T:
k277mon
99004100051101117
T:
gls1271
153694154010154272
T:
kumfp127g
219173219353219575
T:
kumfp128g
240642240887241170
T:
curve25519
267841269617271842
T:
ecfp256i
304048304377305031
T:
ed448goldilocks
319939320209320419
T:
kummer
327320330345333704
T:
sclaus1024
343605343957344398
T:
nistp256
602136604873606465
T:
surf2113
174711917500131752160
T:
ed521gs
176181117744681787012
T:
sclaus2048
197298019776691983077
T:
claus
198440819877191990441
T:
nist521gs
Cycles to compute a shared secret
25%50%75%system
517735215652777
T:
gls254
545495496755543
T:
gls254prot
676266775867876
T:
k277taa
748747589877169
T:
k298
982619839398527
T:
k277mon
156905157272157473
T:
kumfp127g
159421159899160121
T:
kumjacfp127g
192784193061194483
T:
curve2251
227207227532228123
T:
kumfp128g
240504240711241004
T:
curve25519
240529240883241534
T:
jacfp127i
234977243060245249
T:
gls1271
254101254558255469
T:
ecfp256e
263554264956266853
T:
ecfp256q
265677266734268476
T:
ecfp256i
305551306229308649
T:
ecfp256h
312204312504312936
T:
prjfp127i
319774319911320188
T:
kummer
321691322106322681
T:
hecfp127i
333796340038341721
T:
sclaus1024
339175340097341535
T:
ecfp256s
461231461783462581
T:
hecfp128i
597106598845604437
T:
surf2113
100370410078221008846
T:
ed448goldilocks
118782911886871189841
T:
nistp256
174941817546781758179
T:
ed521gs
178088317838811795184
T:
sclaus2048
197530919778261982683
T:
claus
198020919821031986632
T:
nist521gs