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 (906a4-40); 2022 Intel Core i3-1215U, P cores; 2 x 1600MHz; alder2,1f626960,5600000, supercop-20241011

[Page version: 20241017 10:58:42]

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
169931789518779
T:
jacfp127i
178371835319508
T:
prjfp127i
180041880019966
T:
kumjacfp127g
195982048621732
T:
hecfp127i
265272753628384
T:
hecfp128i
271512753628031
T:
ecfp256e
278992818128858
T:
ecfp256h
296022981030080
T:
gls254
310563111531172
T:
gls254prot
325713291033446
T:
ecfp256q
335813368533876
T:
curve2251
383043834638398
T:
k277taa
422404231342420
T:
k298
500445062051164
T:
gls1271
523195237152440
T:
kummer
606066067960764
T:
k277mon
635236369863977
T:
kumfp127g
801888054780861
T:
kumfp128g
106624107214110330
T:
curve25519
131344132240133330
T:
ecfp256i
139651140060141012
T:
ed448goldilocks
177084177982179536
T:
nistp256
182115183789185622
T:
sclaus1024
597723603129611078
T:
ed521gs
772969777528780654
T:
nist521gs
922875923553924278
T:
claus
935145941837948556
T:
sclaus2048
Cycles to compute a shared secret
25%50%75%system
290262907429132
T:
gls254
309073094531004
T:
gls254prot
381813822238269
T:
k277taa
420704211542181
T:
k298
522295228252339
T:
kummer
605316059860649
T:
k277mon
658176600466349
T:
kumfp127g
662286667167383
T:
kumjacfp127g
851408567186035
T:
kumfp128g
101066101234101422
T:
jacfp127i
106200106843109631
T:
curve25519
117813118335119309
T:
ecfp256e
119872120154121790
T:
prjfp127i
120830121027121357
T:
hecfp127i
122064122891126211
T:
gls1271
124329124468124757
T:
ecfp256i
128717128978129389
T:
ecfp256q
130563133976134288
T:
curve2251
141112141685143000
T:
ecfp256h
168644169020169809
T:
hecfp128i
190674191398193358
T:
sclaus1024
408584409179409875
T:
ed448goldilocks
436277437514439074
T:
nistp256
595066599094604905
T:
ed521gs
769600773943779545
T:
nist521gs
920903921782922845
T:
claus
951718960575964276
T:
sclaus2048