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 N4500; 2 x 1100MHz; jasper2, 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
344313520236087
T:
jacfp127i
360443669137443
T:
kumjacfp127g
406384161042876
T:
prjfp127i
431314427045944
T:
hecfp127i
495215004351065
T:
ecfp256e
499795032251046
T:
curve2251
522325250152941
T:
gls254
529225359154744
T:
ecfp256h
539515439854789
T:
gls254prot
545485514356047
T:
ecfp256s
595246022461659
T:
ecfp256q
601896122863515
T:
hecfp128i
677196782367994
T:
k277taa
761177673777675
T:
k298
981059848498846
T:
k277mon
100173101544102857
T:
gls1271
152574153202153327
T:
kumfp127g
218597219518220000
T:
kumfp128g
239728239814240023
T:
curve25519
266134267579269263
T:
ecfp256i
303744304248304553
T:
ed448goldilocks
318864319253319674
T:
kummer
326575329669332616
T:
sclaus1024
342003342280342784
T:
nistp256
597489600043601289
T:
surf2113
174684017479171749222
T:
ed521gs
176223217756811786995
T:
sclaus2048
196664719713401976803
T:
claus
197713219795281981886
T:
nist521gs
Cycles to compute a shared secret
25%50%75%system
514455164352015
T:
gls254
538745435554932
T:
gls254prot
676236772667852
T:
k277taa
758907645377191
T:
k298
979759820298434
T:
k277mon
155758155810156089
T:
kumfp127g
158933159531159604
T:
kumjacfp127g
193029193210193542
T:
curve2251
226354227120227748
T:
kumfp128g
239270239339239556
T:
jacfp127i
239699239777239970
T:
curve25519
238332243332247468
T:
gls1271
243309243396243571
T:
ecfp256e
261393261607261832
T:
ecfp256q
262777262980263183
T:
ecfp256i
305375305567305799
T:
ecfp256h
311369311453311702
T:
prjfp127i
319273319713319950
T:
kummer
320787321148321330
T:
hecfp127i
331483331823332287
T:
sclaus1024
335562335670336127
T:
ecfp256s
461912462301462687
T:
hecfp128i
595137598700599418
T:
surf2113
100312810031921003963
T:
ed448goldilocks
118527511860951186804
T:
nistp256
174726317485851750514
T:
ed521gs
176915017760881784309
T:
sclaus2048
196102019643201978572
T:
claus
197208119742701976511
T:
nist521gs