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; Gracemont (b06a2-20); 2024 Intel Core 5 210H, E cores; 4 x 1600MHz; freshwrap,little, supercop-20260627

[Page version: 20260712 20:43:49]

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 (or StQ1 starting with supercop-20260214), the median of many speed measurements (or StQ2 starting with supercop-20260214), the third quartile of many speed measurements (or StQ3 starting with supercop-20260214), and the name of the primitive. Measurements with large interquartile range (or stabilized interquartile range) 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
284582924730472
T:
jacfp127i
294333017631224
T:
kumjacfp127g
323013307334304
T:
prjfp127i
332113390935121
T:
hecfp127i
338343396734710
T:
curve2251
363813652236667curve25519
379943820238394
T:
gls254
392763933839405
T:
gls254prot
389183965140580
T:
jacfp128bk
401574147743297
T:
ecfp256e
444024505646700
T:
ecfp256s
451424595446981
T:
hecfp128i
454084601147031
T:
hecfp128bk
452704611447089
T:
prjfp128bk
453424614947187
T:
hecfp128fkt
467484730849090
T:
ecfp256q
514025153951768
T:
k277taa
549165506155268
T:
k298
699157007370265
T:
k277mon
710947116471257nistp256
115049115301115566
T:
kumfp127g
125407125783125954
T:
kummer
150158150274150388
T:
kumfp128g
198600199786201074
T:
ecfp256i
235518237067238329
T:
ecfp256h
245277248518249765
T:
ed448goldilocks
344699348138352120
T:
sclaus1024
132569213312581337310
T:
ed521gs
149041215114621519599
T:
nist521gs
201663320239492030231
T:
claus
224063522575052271910
T:
sclaus2048
Cycles to compute a shared secret
25%50%75%system
371783723837293
T:
gls254
392473930339377
T:
gls254prot
513365145951667
T:
k277taa
546355482355043
T:
k298
698346994370121
T:
k277mon
115101115459115731
T:
jacfp128bk
118002118119118276
T:
kumfp127g
119113119335119590
T:
kumjacfp127g
125103125688125944
T:
kummer
136106136501136692
T:
curve2251
140020140194140794curve25519
141509141730142086
T:
prjfp128bk
146153146929147504
T:
hecfp128fkt
148544148775149120
T:
hecfp128bk
157020157127157242
T:
kumfp128g
176288176671177136
T:
jacfp127i
183264183862184340
T:
ecfp256e
189745190222190799
T:
ecfp256q
190431190972191842
T:
ecfp256i
221004221616222597
T:
prjfp127i
225452226407227311
T:
hecfp127i
227386227717228357
T:
ecfp256h
256448257249259609
T:
ecfp256s
279308280758281865nistp256
321395321874322698
T:
hecfp128i
362390363681364729
T:
sclaus1024
857037876573878505
T:
ed448goldilocks
130975513148121328680
T:
ed521gs
150110715102691537103
T:
nist521gs
203080120361232040097
T:
claus
228133222892172293835
T:
sclaus2048