MỞ ĐẦU
Ngày nay với sự phát triển mạnh mẽ của công nghệ thông tin, truyền thông
nói chung và Internet nói riêng đã giúp cho việc trao đổi thông tin nhanh chóng, dễ
dàng, E-mail cho phép người ta nhận hay gửi thư ngay trên máy tính của mình, E-
business cho phép thực hiện các giao dịch trên mạng. Do vậy một vấn đề phát sinh
là thông tin có thể bị trộm cắp, có thể là sai lệch, có thể giả mạo. Điều đó có thể
ảnh hưởng tới các tổ chứa, các công ty hay cả một quốc gia. Những bí mật kinh
doanh, tài chính là mục tiêu của các đối thủ cạnh tranh. Những tin tức về an ninh
quốc gia là mục tiêu của các tổ chức tình báo trong và ngoài nước.
Để giải quyết tình hình trên an toàn thông tin được đặt ra cấp thiết. Kỹ thuật
mật mã là một trong những giải pháp của an toàn truyền thông. Kỹ thuật này có từ
ngàn xưa nhưng nó đơn giản, ngày nay khi có mạng máy tính người ta dùng mật
mã hiện đại. Các nhà khoa học đã phát minh ra những hệ mật mã nhằm che dấu
thông tin cũng như là làm rõ chúng để tránh sự dòm ngó của những kẻ cố tình phá
hoại như các hệ mật: RSA, Elgamal… mặc dù cũng rất an toàn nhưng có độ dài
khoá lớn nên trong một số lĩnh vực không thể ứng dụng được.
Chính vì vậy người ta đã phát minh một hệ mật đó là hệ mật trên đường
cong elliptic, hệ mật này được đánh giá là hệ mật có độ bảo mật an toàn cao và
hiệu quả hơn nhiều so với hệ mật công khai khác, nó đã được ứng dụng trên nhiều
lĩnh vực và được sử dụng nhiều nơi trên thế giới tuy nhiên còn mới mẻ ở Việt
Nam. Trong tương lai gần Hệ mật trên đường cong Elliptic sẽ được sử dụng một
cách phổ biến và thay thế những hệ mật trước nó.
Bài tập lớn của chúng em nghiên cứu về Chữ ký số trên đường cong Elliptic
ECDSA. Thông qua quá trình nghiên cứu, nội dung được tóm tắt trong 4 chương
như sau:
Chương 1: Cơ sở toán học
Chương 2: Đường cong Elliptic
Chương 3: Thuật toán chữ ký số trên đường cong Elliptic
Chương 4: Giới thiệu chương trình
CHƯƠNG 1
CƠ SỞ TOÁN HỌC
(b
°
c), với ∀a, b, c ∈ G.
G3. Phần tử đơn vị (trung hòa): Trong G tồn tại một phần tử được gọi là phần tử
đơn vị e sao cho với ∀a ∈ G thì a
°
e = e
°
a = a.
G4. Phần tử nghịch đảo: Với mỗi phần tử a ∈ G tồn tại một phần tử a
-1
, gọi là
phần tử nghịch đảo của a, sao cho: a
-1
°
a = a
°
a
-1
= e.
Chú ý: toán tử
°
là ký hiệu chung và có thể đại diện cho toán tử cộng, nhân hoặc
các toán tử toán học khác.
Định lý 1.2.1: Với ∀a ∈ G, a
-1
°
a = e.
Chứng minh: Khai triển a
-1
có một nghịch đảo ký hiệu là
(a
-1
)
-1
)
o a
-1
°
a
°
(a
-1
°
(a
-1
)
-1
) = a
-1
°
(a
°
a
-1
)
°
(a
-1
⇒ a
-1
°
a = e
Định lý 1.2.2: Với ∀a ∈ G, e
°
a = a.
Chứng minh: Khai triển e
°
a, có:
o e
°
a = (a
°
a
-1
)
°
a (theo G4)
o (a
°
a
-1
)
°
a = a
°
(a
-1
°
b) = (a
°
a
-1
)
°
b (theo G2).
o (a
°
a
-1
)
°
b= e
°
b = b (theo G3).
Như vậy x này luôn tồn tại và thỏa mãn a
°
x = b.
Để chỉ ra tính duy nhất, nếu a
°
x = b, thì:
o x = e
°
x
o e
°
x = (a
-1
°
Chứng minh: Giả sử G có hai phần tử đơn vị là e và f. Vậy thì e
°
f = e (theo
G3), nhưng cũng có e
°
f = f (theo định lý 1.1.2) ⇒ e = f. Như vậy, có thể nói phần
tử đơn vị của (G,
°
) thay vì một phần tử đơn vị. Khi đề cập những nhóm khác nhau,
sẽ thường ký hiệu e
G
cho phần tử đơn vị của nhóm (G,
°
).
Định lý 1.2.5: Phần tử nghịch đảo của mỗi phần tử thuộc (G,
°
) là duy nhất, hay
với ∀a ∈ G, a
°
x = e nếu và chỉ nếu x = a
-1
.
Chứng minh: Giả sử một phần tử g ∈ G có hai phần tử nghịch đảo, h và k. Thì
h = h
°
e = h
°
(g
°
k) = (h
.
Chứng minh: Ta có (a
°
b)
°
(b
-1
°
a
-1
) = a
°
(b
°
b
-1
)
°
a
-1
= a
°
e
°
a
-1
= a * a
-1
=
e, có kết luận dựa vào định lý 1.4.
°
a)
°
x = (a
-1
°
a)
°
y
o e
°
x = e
°
y
⇒ x = y
Nếu x
°
a = y
°
a thì
o (x
°
a)
°
a
-1
= (y
°
a)
°
c. Với
∀
a
∈
R: a + 0 = a (0 là phần tử đơn vị).
d. Với
∀
a
∈
R: –a + a = 0 (tồn tại phần tử đối lập).
2. Tập số thực khác không (R
#
) là một nhóm dưới phép nhân (*):
a. Tích của hai số thực luôn là một số thực (tính đóng).
b. Với
∀
a, b, c
∈
R: (a * b) * c = a * (b * c) (tính kết hợp).
c. Với
∀
a
∈
R: a * 1 = a (1 là phần tử đơn vị).
d. Với
∀
a
∈
R: a * a
-1
“abel” thường bỏ qua.
Ví dụ 1.2.2
1. Tập hợp của các số nguyên Z là nhóm đối với toán tử (+), tức là cặp (G, +) –
là nhóm, ở đây e = 0 và a
–1
= – a. Đây là nhóm cộng, vô hạn và abel. (Theo
G4: a
-1
+ a = 0 → a
-1
= -a).
Tập hợp của các số hữu tỷ Q, tập hợp của các số thực R, tập hợp của các số
phức C cũng là nhóm cộng và vô hạn, trong đó phần tử đơn vị và ngược
được xác định theo cùng quy tắc.
2. Các phần tử khác không của tập hợp Q , R và C đối với phép nhân – là các
nhóm, trong đó e = 1 và a
–1
là phần tử nghịch đảo, được xác định theo quy
tắc thông thường. Ký hiệu các nhóm này là (Q, * ), (R, *) và (C, *). Các
nhóm này được gọi là các nhóm nhân và vô hạn.
3. Đối với số nguyên bất kỳ n ≥ 1, tập hợp các số nguyên theo modulo n hình
thành lên nhóm hữu hạn, bao gồm từ n phần tử. Phần tử đơn vị của nhóm
này là số 0, đối với phần tử a bất kỳ sẽ thực hiện điều kiện a
–1
= n – a. Nhóm
này được ký hiệu là Z
n
và ký hiệu đầy đủ của nhóm này là (Z
n
, + (mod n)).
là nhóm con của mọi nhóm.
3. Tất cả các nhóm con của
+
6
Z
là {0}, {0, 3}, {0, 2, 4} và chính nó.
Định nghĩa 1 . 2.6 (Nhóm con tách biệt và nhóm con không tầm thường)
Một nhóm con tách biệt của một nhóm G là một nhóm con khác G (H ≠ G), ký
hiệu H ⊂ G. Một nhóm con không tầm thường của G là bất kỳ nhóm con tách biệt
nào của G chứa một phần tử khác e.
Định lý 1.2.9: Nếu H là một nhóm con của (G,
°
), thì phần tử đơn vị e
H
của H
giống với phần tử đơn vị e của nhóm (G,
°
).
Chứng minh: Nếu h ∈ H, thì h
°
e
H
= h; vì h cũng phải thuộc G, h
°
e = h; do đó
theo định lý 1.1.4, e
H
= e.
Định lý 1.2.10: Nếu H là một nhóm con của G, và h là một phần tử của H, thì
nghịch đảo của h trong H giống với nghịch đảo của h trong G.
-1
= a
-1
∈ S
o Với ∀a, b ∈ S, a
°
b = a
°
(b
-1
)
-1
∈ S
Do đó, các tiên đề về tính đóng, phần tử đơn vị, phần tử nghịch đảo, và tính kết
hợp được kế thừa do đó S là một nhóm con.
2. Ngược lại, nếu S là một nhóm con của G, thì nó tuân theo các tiên đề về
nhóm.
o Như đã nói, phần tử đơn vị của S chính là phần tử đơn vị e của G.
o Theo G4, với ∀b ∈ S, b
-1
∈ S
o Theo G1, a
°
b
-1
∈ S.
Định lý 1.2.12: Giao của các nhóm con của nhóm G là một nhóm con.
Chứng minh:
1. Gọi {H
i
i
} là một nhóm con của G và hơn nữa K là một nhóm con của
mỗi H
i
.
Định lý 1.2.13: Gọi a là một phần tử của một nhóm (G,
°
), khi đó tập hợp {a
n
: n
nguyên} là một nhóm con của G.
Định nghĩa 1. 2 .7 (Liên tập, hay liền kề)
Cho G là nhóm abel, H ⊆ G và
Ga
∈
thì
tập hợp {a
°
hh ∈ H} gọi là liên tập trái (left coset) của nhóm con H trong G và
ký hiệu là a
°
H, và
tập hợp {h
°
ah ∈ H} gọi là liên tập phải (right coset) của nhóm con H trong G
và ký hiệu là H
°
a
Định lý 1.2.14: Nếu H là một nhóm con của G, và x, y là các phần tử của G, thì
x
n
,,
1
=
khác nhau và không trùng với các phần tử của H. Vì từ
xhxh
ji
=
dẫn đến
ji
hh
=
, nhưng
ji
hxh =
dẫn đến
Hhhx
ji
∈=
−1
là không thể. Nếu như
GHxH =∪
, thì định lý được chứng minh. Nếu như H ∪ Hx nhỏ hơn G, thì có thể
chọn
)(\ HxHGy ∪∈
và thành lập nên tập
{ }
yhyhHy
n
,,
°
…
°
a) i lần (i nguyên,
dương).
Khi
°
= +, thì a
°
a
°
…
°
a = a . i, còn khi
°
= *, thì a
°
a
°
…
°
a = a
i
.
Ví dụ 1.2.4
1. Bậc của các phần tử của nhóm
+
6
Z
,
Z
gồm tất cả các số nguyên theo phép cộng – là một nhóm cyclic,
><=
+
1Z
và
∞=)(nord
với
Zn
∈
, n ≠ 0.
Định lý 1.2.17: Cho G là nhóm hữu hạn và
Ga∈
là phần tử bất kỳ của nhóm.
Khi đó ord(a)|#G.
Chứng minh: Nếu như a = e, thì ord(a) = 1 và điều kiện ord(a)|#G là hiển
nhiên. Ngược lại các phần tử
eaaa
aord
=
)(2
,,,
, sẽ tạo nên nhóm con của G. Theo
định lý Lagrange thì ord(a)|#G.
Định lý 1.2.17, dẫn ra từ định lý Lagrange, miêu tả sự liên hệ giữa bậc của
nhóm với các bậc của các phần tử của nhóm này. Mối tương hỗ này có ứng dụng
quan trọng trong mật mã với khoá công khai: hệ mật nổi tiếng Rivest, Shamir và
Adleman (RSA), hoạt động trên cơ sở của nhóm, mà bậc của nó là khoá riêng, chỉ
được biết bởi chủ nhân của khoá. Văn bản mã có thể xem xét như phần tử ngẫu
nhiên của nhóm nào đó. Biết bậc của nhóm, chủ nhân của khoá có thể sử dụng sự
đều có thể biểu
diễn dưới dạng tổng của 1 hoặc 5 theo modulo 6.
2.
{ }
><=><==
528,7,5,4,2,1
*
9
Z
,bởi vì mọi phần tử của
9
Z
đều có thể biểu
diễn dưới dạng tích của các số 2 hoặc 5 theo modulo 9
3.
{ }
><== 36,5,4,3,2,1
*
7
Z
4. Nhóm
{ }
7,5,3,1
*
8
=
Z
không là nhóm cyclic
5. Cũng dễ dàng chứng minh được rằng nhóm nhân
*
φ
(n) phần tử, mà
nó có bậc d.
5. Giả sử #〈a〉 = m. Khi đó nhóm 〈a〉 bao gồm
φ
(m) phần tử sinh. Chúng là các
phần tử a
r
, sao cho gcd(r, m) = 1.
1.3. Trường
Định nghĩa 1.3.1 (Trường)
Nếu các phần tử khác không của vành tạo thành nhóm tương ứng với phép nhân
thì gọi vành đó là trường.
Ví dụ 1.3.1 (Trường)
1. Tập Q, R và C là trường tương ứng với phép cộng và nhân thông thường,
với phần tử 0 là 0 và phần tử 1 là 1.
2. Tập Z
p
với với p là số nguyên tố là trường tương ứng với phép cộng và nhân cho
modulo p, với phần tử 0 là 0 và phần tử 1 là 1.
Trường hữu hạn
Trường hữu hạn là trường được ứng dụng rất nhiều trong mật mã, bởi vậy phần
này sẽ đi sâu khảo sát một số phương pháp xây dựng một trường hữu hạn cũng như
các tính chqất của chúng.
Các trường hữu hạn, bao gồm các phần tử nguyên tố
Các trường hữu hạn mà bậc của chúng (số lượng các phần tử) là số nguyên tố
có cấu trúc đơn giản nhất. Các trường như vậy được ứng dụng rộng rãi trong mật
mã.
Định nghĩa 1.3.2 (Trường nguyên tố)
Trường, không bao gồm các trường con riêng biệt, được gọi là trường nguyên
F
là nhóm cyclic. Phần tử sinh
α
của nhóm cyclic gọi là phần tử nguyên thủy
của trường hữu hạn
q
F
. Tất cả các phần tử của trường hữu hạn có thể viết dưới
dạng sau:
{ }
1, ,,,,0
0122
===
−−
ααααα
qq
q
F
Định nghĩa 1.3.4 (Trường hữu hạn
n
q
F
)
Cho q là số lượng phần tử của trường hữu hạn F. Ký hiệu
n
q
F
cho trường hữu
hạn, được xây dựng trên cơ sở gồm n phần tử trên trường F.
Ví dụ 1.3.1 (Trường
3
3
4
4
5
5
6
6
7
7
bbbbbbbb +++++++
ααααααα
,
ở đây α là nghiệm của phương trình x
8
+ x
4
+ x
3
+ x + 1 = 0, các hệ số b
7
, b
6
, b
5
, b
4
,
b
3
Ví dụ cần tính ‘57’.’83’. Chú ý: ‘57’ = (0101_0111), còn ‘83’ = (1000_0011).
(α
6
+ α
4
+ α
2
+ α + 1).(α
7
+ α + 1) = α
13
+ α
11
+ α
9
+ α
8
+ α
6
+ α
5
+ α
4
+ α
3
+ 1
Bởi vì α
8
+ α
4
13
= α
9
+ α
8
+ α
6
+ α
5
cho nên α
13
+ α
11
+ α
9
+ α
8
+ α
6
+ α
5
+ α
4
+ α
3
+ 1= α
7
+ α
6
+ 1. Và có nghĩa là
khi và chỉ khi
Fa∈
Chứng minh:
Chứng minh khẳng định thứ nhất:
Cho 1, α, α
2
,…, α
n-1
là đa thức cơ sở của trường
n
q
F
trên trường F. Bởi vì đa
thức cơ sở này bao gồm phần tử đơn vị, bất kỳ phần tử nào của trường F đều có thể
biểu diễn dưới dạng tổ hợp tuyến tính của phần tử đơn vị, có nghĩa là dưới dạng tổ
hợp tuyến tính của phần tử cơ sở.
Chứng minh khẳng định thứ hai:
Đặt
{ }
*
0 FF ∪=
, ở đây
*
F
là nhóm nhân với các phần tử khác không. Như vậy
điều kiện
Fa ∈
có thể là 0 hoặc có thể là thuộc
*
F
q
=
phải là nghiệm của phương trình
0=− xx
q
. Thấy rằng bậc của đa thức bằng
q nên phương trình trên trong trường
n
q
F
không thể có số nghiệm lớn hơn q kể cả
0. Từ phần 1 của định lý, trường
F
là trường con của
n
q
F
, mà các nghiệm của
phương trình
0=− xx
q
thuộc về F. Nên không một nghiệm của đa thức
0=− xx
q
không là phần tử của
n
q
F
.
CHƯƠNG 2
p
)
Cho p là số nguyên tố (p > 3), cho a, b ∈ F
p
sao cho 4a
3
+ 27b
2
≠ 0 trong trường
F
p
. Một đường cong elliptic E(F
p
) trên F
p
(được định nghĩa bởi các tham số a và b)
là một tập hợp các cặp giá trị (x, y) (x, y ∈ F
p
) thỏa mãn công thức:
y
2
= x
3
+ ax + b,
cùng với điểm O đặc biệt gọi là điểm vô cực và có thể biểu diễn dưới dạng O = (x,
∞
).
Số lượng điểm của E(F
p
) là #E(F
Ví dụ 2.1.1 (Đường cong Elliptic)
1. Cho phương trình
46
32
++= xxy
mod 7. Nhận thấy (4.6
3
+ 27.4
2
) mod 7 = 1 ≠
0, nó phù hợp với điều kiện của các nhóm elliptic theo mudulo 7. Đường cong này
có các điểm sau:
E(F
7
)=
{ }
)5,6(),2,6(),6,4(),1,4(),0,3(),5,1(),2,1(),5,0(),2,0(,O
.
Ta thấy (3, 0) + (3, 0) = O. Phần tử sinh của nhóm G = (1, 2). Nhóm các điểm
trên đường cong elliptic là nhóm cyclic.
2. Giả sử p = 23, khảo sát đường cong elliptic y
2
= x
3
+ x + 1. Trong trường hợp
này a = b = 1 và có 4 × 1
3
+27 × 1 (mod 23) = 8 ≠ 0, nó phù hợp với điều kiện của
các nhóm elliptic theo mudulo 23.
Trên hình 2 biểu diễn đường cong liên tục, các điểm sẽ cho giá trị phù hợp với
Một đường cong elliptic E(
m
F
2
) trên
m
F
2
được định nghĩa bởi các tham số a, b ∈
m
F
2
(với b ≠ 0) là tập các điểm P(x, y) với x ∈
m
F
2
, y ∈
m
F
2
thỏa mãn công thức:
y
2
+ xy = x
3
+ ax
2
+ b,
cùng với điểm O là điểm tại vô cực. Số lượng các điểm thuộc E( m F2 ) ký hiệu
#E( m F2 ) thoả mãn định lý Hasse:
).
2.2. Các phép toán trên đường cong Elliptic trên trường F
p
2.2.1. Phép cộng
Đây là một quy tắc, gọi là quy tắc “dây cung và đường tiếp tuyến” để cộng 2
điểm trên đường cong Elliptic để cho ra điểm thứ 3 cũng nằm trên E. Với phép
cộng này ta có thể thiết lập một lớp các điểm trên E(F
p
) với O là điểm vô cực. Tập
điểm này là thành tố trong mật mã đường cong Elliptic.
Giả sử P= (x1, y1) và Q (x2, y2) là hai điểm của E.
Nếu x1 = x2 và y1 = - y2 thì ta định nghĩa P + Q = O
Ngược lại thì P + Q = (x3, y3) ∈ E trong đó
x3=
y3=()(x1-x3)-y1
2.2.2. Phép nhân đôi
Nếu P=(x1,y1). Ta tính tọa độ R=2P =(x3,y3) theo quy tắc sau: Vẽ đường
tiếp tuyến tại P. Đường này cắt Elliptic tại điểm thứ 2, lấy đối xứng của điểm này
qua trục X, đó là điểm R.
x3=
y3=()(x1-x3)-y1
2.2.3. Phép nhân
Phép nhân một số nguyên k với một điểm P thuộc đường cong elliptic E là
điểm Q được xác định bằng cách cộng k lần điểm P và dĩ nhiên Q E:
K x P = P + P + P……+ P ( k phép cộng điểm P).
Vì vậy nếu G là một điểm thuộc đường cong elliptic E thì với mỗi số
nguyên dương k luôn dễ dàng xác định được điểm Q = k x G
2.2.4. Đếm số điểm trên đường cong elliptic trên trường Fq
Việc xây dựng các hệ mật mã trên đường cong elliptic bao gồm việc lựa
chọn đường cong E thích hợp và một điểm G trên E gọi là điểm cơ sở. Xét trường
1987. Sơ đồ đầu tiên tương tự như sơ đồ RSA và 3 hàm một chiều (có cửa sập)
mới dựa trên đường cong Elliptic được đưa ra năm 1991 bởi Koyama, Maurer,
Okamoto và Vanstone ( thuật toán này tốc độ thực hiện nhanh gấp 6 lần so với
RSA). Cùng thời điểm đó, Kaliski chứng minh rằng các hàm cửa sập một chiều đòi
hỏi thời gian là hàm mũ để thực hiện phép tính nghịch đảo. Menezes, Okamoto và
Vanstone đã đưa ra một phương pháp tấn công MOV để giải bài toán EDLP trong
một số trường hợp riêng. Ngay sau đó, Miyaji đã tìm được các điều kiện để tránh
khỏi tấn công MOV và đề xuất một ứng dụng thực tế của các đường cong elliptic
cho các sơ đồ chữ ký và định danh trên Smart Card.
Năm 1993, Demytko đưa ra một thuật toán mới tương tự như RSA cho các
đường cong Elliptic trên vành Zn vượt qua các hạn chế của các phiên bản trước, và
Menezes và Vanstone đã đưa ra phương pháp thực thi trên các thiết bị cứng có thể
cài thiện các tính toán trên elliptic trên một trường hữu hạn. Những năm 1997,
1998 việc tìm ra các hệ mật mã trên các đường cong Elliptic ngày càng thu hút
nhiều sự chú ý và một số thuật toán đã được đưa thành chuẩn trong các RFC.
Sơ đồ chữ ký ECDSA được xây dựng tương tự như sơ đồ chữ ký ElGamal
tuy nhiên các thuật toán ký và thuật toán kiểm thử được xây dựng dựa trên đường
cong Elliptic.
Để thiết lập sơ đồ chữ ký ECDSA, cần xác định các tham số: lựa chọn
đường cong E trên trường hữu hạn Fq với đặc số p sao cho phù hợp và công khai
cho tất cả mọi người, điểm cơ sở G E(Fq).
Một số khuyến nghị khi lựa chọn các tham số:
1. Kích thích q của trường, hoặc q = p (p>2) .
2. Hai phần tử a, b thuộc Fq xác định phương trình đường cong Elliptic:
= + ax + b (p>2) .
3. Hai phần tử xG và yG thuộc Fq xác định điểm cơ sở G = (xG, yG).
4. Bậc n của điểm G với n> và n > 4.
3.3. Phương pháp chọn đường cong Elliptic phù hợp và điểm cơ sở
Việc chọn một đường cong elliptic thế nào ảnh hưởng đến tốc độ, tính
hiệu quả, độ dài khoá và tính an toàn của hệ mật mã trên đường cong này. Dù
6. Chữ ký trên thông điệp m là ( r, s ).
3.5. Thuật toán xác minh chữ ký.
Người dùng B kiểm tra chữ ký (r, s ) trên thông điệp m theo các bước sau:
1. Kiểm tra r và s có là các số tự nhiên trong khoảng [ 2, n-1 ] không.
2. Tính w = mod n.
3. Tính u1 = mw mod n và u2 = rw mod n.
4. Tính X = u1G + u2Q = (XX, YX).
5. Nếu X = O thì phủ nhận chữ ký. Ngược lại tính v = XX mod n.
6. Chữ ký chỉ được chấp nhận nếu v = r.
3.6. Độ an toàn của sơ đồ chữ ký ECDSA
Các hệ mã hoá đường cong elliptic đầu tiên được phát minh năm 1985 bởi
Neal Kobliz và Victor Miller. Tuy nhiên sơ đồ chữ ký ECDSA do Scott Vanstone
đưa ra năm 1992, được chấp nhận là chuẩn ISO vào năm 1998, là chuẩn ANSI vào
năm 1999, và là chuẩn IEEE vào năm 2000.
Độ an toàn của sơ đồ ký ECDSA dựa trên bài toán logarit rời rạc đường
cong elliptic. Cho đến nay độ an toàn của các hệ mã hoá đường cong elliptic đã
được chỉ ra là rất an toàn và hiệu quả. Đối với bài toán logarit rời rạc đường cong
elliptic thì có nhiều thuật toán giải nó. Tuy nhiên chưa có thuật toán nào có độ
phức tạp tính toán trong thời gian đa thức.
Thuật toán giải bài toán logarit rời rạc đường cong elliptic tốt nhất hiện nay
là thuật toán Pollard’s Rho, phiên bản thiết kế theo hướng tính toán song song.
Theo đó với nhóm đường cong elliptic cấp n và có r máy tính cùng tính toán thì
phải mất /2.r phép toán.
Mặt khác người ta đã phân tích và chỉ ra rằng với hệ mã hoá dựa trên bài
toán logarit rời rạc đường cong elliptic có cùng độ bảo mật với hệ mã hoá dựa trên
bài toán phân tích số nguyên thành các thừa số nguyên tố (như RSA) thì độ dài
khoá của hệ mã hoá dựa trên đường cong elliptic có chiều dài khoá ngắn hơn rất
nhiều . Chẳng hạn với hệ mã hoá RSA có chiều dài khoá là 1024 bit thì hệ mã hoá
bằng đường cong elliptic chỉ cần độ dài khoá 163 bit sẽ có độ bảo mật tương
đương. Và do đó việc tính toán các tiến trình đối với các hệ mã hoá đường cong