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; Bonnell (30661); 2011 Intel Atom D2500; 2 x 1866MHz; h8atom, supercop-20241022

[Page version: 20250111 18:45:18]

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
128842129815130851
T:
jacfp127i
134596135345136374
T:
kumjacfp127g
141449142394143332
T:
prjfp127i
146727147861149219
T:
hecfp127i
219128220108221536
T:
jacfp128bk
247891249375251426
T:
hecfp128bk
247520249620251818
T:
hecfp128fkt
249452251104253491
T:
hecfp128i
249592251132254128
T:
prjfp128bk
250061251972255311
T:
curve2251
310583314405317254
T:
gls1271
541443545587547001
T:
kumfp127g
773241790636808668
T:
hector
103257010395071041726
T:
kumfp128g
109564710956611096256
T:
curve25519
113201211374931143583
T:
surf127eps
131145713157341325548
T:
ed448goldilocks
134794113479901349215
T:
nistp256
169887217074191713705
T:
surf2113
172844017292451746500
T:
kummer
175921217765931802143
T:
sclaus1024
705474070591717077637
T:
ed521gs
868305287586738827994
T:
sclaus2048
106055881064557210725526
T:
claus
Cycles to compute a shared secret
25%50%75%system
548422551859554302
T:
kumfp127g
556108557697558684
T:
kumjacfp127g
733334734755735511
T:
jacfp128bk
746179755076761873
T:
gls1271
861462866817869057
T:
prjfp128bk
884863890526894453
T:
hecfp128bk
919513922565927689
T:
hecfp128fkt
936922938504940205
T:
jacfp127i
102907710324371035538
T:
curve2251
106264210658551068298
T:
kumfp128g
109545110954791098741
T:
curve25519
110907311130141115436
T:
prjfp127i
110591611143021135057
T:
surf127eps
114256111462641149260
T:
hecfp127i
170128717040521715406
T:
surf2113
172827217283981729301
T:
kummer
175465517757531818600
T:
sclaus1024
195705319712351976114
T:
hecfp128i
280469028350492855573
T:
hector
446261244755974481372
T:
ed448goldilocks
453416645457024554319
T:
nistp256
705240270586117133609
T:
ed521gs
862431587032898715777
T:
sclaus2048
106166761062894010730398
T:
claus