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; Bobcat (500f10); 2011 AMD G-T56N; 2 x 1650MHz; h8bobcat, supercop-20240909

[Page version: 20240912 11:45:52]

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: old (pkcycles,pkbytes) (scycles,pkbytes)

Cycles to generate a key pair
25%50%75%system
692316984970480
T:
jacfp127i
802948111681657
T:
hecfp127i
95513?98135?151677?
T:
jacfp128bk
72508?112324?113615?
T:
kumjacfp127g
111686113435115178
T:
hecfp128bk
115069116327118355
T:
hecfp128fkt
115287116589118351
T:
hecfp128i
77406?119330?120446?
T:
prjfp127i
115463?177241?180163?
T:
prjfp128bk
248928?249047?398255?
T:
kumfp127g
209357?328496?333820?
T:
gls1271
394934?395029?631845?
T:
kumfp128g
454261?456494?726788?
T:
curve25519
761216?761657?1216907?
T:
nistp256
997605?998635?1596133?
T:
kummer
642152?1004492?1014524?
T:
curve2251
648845?1012686?1032792?
T:
sclaus1024
688926?1096922?1100390?
T:
ed448goldilocks
2151517?3406044?3428483?
T:
surf2113
3010313?4786186?4808981?
T:
ed521gs
3090844?4884748?4939378?
T:
sclaus2048
3826534?6108586?6130227?
T:
claus
Cycles to compute a shared secret
25%50%75%system
251883?252012?402976?
T:
kumfp127g
296618?296918?474297?
T:
jacfp128bk
372300372700373459
T:
hecfp128bk
385842386104387121
T:
hecfp128fkt
406847?406862?650945?
T:
kumfp128g
258989?414171?414290?
T:
kumjacfp127g
432687432735433604
T:
jacfp127i
454191?456441?726669?
T:
curve25519
544255544449544678
T:
hecfp127i
365997?585233?585447?
T:
prjfp128bk
466231?758205?779608?
T:
gls1271
823436823536824738
T:
hecfp128i
535183?854891?855632?
T:
prjfp127i
997571?997847?1596071?
T:
kummer
649999?1031234?1048838?
T:
sclaus1024
2549325?2555286?4082606?
T:
nistp256
2037798?3241856?3260647?
T:
ed448goldilocks
2127753?3404021?3413692?
T:
surf2113
2612396?4152003?4161955?
T:
curve2251
2989598?4763328?4783683?
T:
ed521gs
3068111?4896842?4953347?
T:
sclaus2048
3825536?6104657?6119340?
T:
claus