Cryptography Reference
In-Depth Information
Table 2.
Benchmarks for various group sizes and structures
Alice Bob
round 1 round 2 round 1 round 2
2
253
3
161
7
−
1
365 ms
363 ms
318 ms
314 ms
5
110
7
91
284
−
1
419 ms
374 ms
369 ms
326 ms
11
74
13
69
384
−
1
332 ms
283 ms
321 ms
272 ms
17
62
19
60
210 + 1
330 ms
274 ms
331 ms
276 ms
23
56
29
52
286 + 1
339 ms
274 ms
347 ms
277 ms
31
51
41
47
564
−
1
355 ms
279 ms
381 ms
294 ms
2
384
3
242
8
−
1
1160 ms 1160 ms
986 ms
973 ms
5
165
7
137
2968
−
1
1050 ms
972 ms
916 ms
843 ms
11
111
13
104
78 + 1
790 ms
710 ms
771 ms
688 ms
17
94
19
90
116
1 761 ms 673 ms 750 ms 661 ms
23
85
29
79
132
−
1 755 ms 652 ms 758 ms 647 ms
31
77
41
72
166 + 1 772 ms 643 ms 824 ms 682 ms
2
512
3
323
799
−
1 2570 ms 2550 ms 2170 ms 2150 ms
23
113
29
105
1004
−
1 1480 ms 1330 ms 1470 ms 1300 ms
−
6.1 Example
As a convenience, we provide an example calculation of a key-exchange transac-
tion. Let
A
=2,
B
=3,
e
A
= 63,
e
B
= 41, and
f
= 11. We use the starting
curve
E
0
:
y
2
=
x
3
+
x
. For the torsion bases, we use
P
A
= (2374093068336250774107936421407893885897
i
+ 2524646701852396349308425328218203569693
,
1944869260414574206229153243510104781725
i
+ 1309099413211767078055232768460483417201)
P
B
= (1556716033657530876728525059284431761206
i
+ 1747407329595165241335131647929866065215
,
3456956202852028835529419995475915388483
i
+ 1975912874247458572654720717155755005566)
=
ψ
(
P
B
), where
i
=
√
−
and
Q
A
=
ψ
(
P
A
)
,Q
B
1in
F
p
2
and
ψ
(
x, y
)=(
−
x, iy
)
is a distortion map [10]. The secret values are
m
A
= 2575042839726612324
,n
A
= 8801426132580632841
,
m
B
= 4558164392438856871
,n
B
= 20473135767366569910
The isogeny
φ
A
:
E
0
→
E
A
is specified by its kernel, and thus the curve
E
A
is
only well defined up to isomorphism; its exact value may vary depending on the
implementation. In our case, the curve is
E
A
:
y
2
=
x
3
+
ax
+
b
where
a
= 428128245356224894562061821180718114127
i
+ 2147708009907711790134986624604674525769
b
= 3230359267202197460304331835170424053093
i
+ 1577264336482370197045362359104894884862
and the values of
φ
A
(
P
B
)and
φ
A
(
Q
B
)are
φ
A
(
P
B
) = (1216243037955078292900974859441066026976
i
+ 1666291136804738684832637187674330905572
,
3132921609453998361853372941893500107923
i
+ 28231649385735494856198000346168552366)
φ
A
(
Q
B
) = (2039728694420930519155732965018291910660
i
+ 2422092614322988112492931615528155727388
,
1688115812694355145549889238510457034272
i
+ 1379185984608240638912948890349738467536)
Similarly, in our implementation
E
B
:
y
2
=
x
3
+
ax
+
b
is the curve with
a
= 2574722398094022968578313861884608943122
i
+ 464507557149559062184174132571647427722
b
= 2863478907513088792144998311229772886197
i
+ 1767078036714109405796777065089868386753