Upload
hoang-thanh
View
221
Download
1
Embed Size (px)
Citation preview
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 1/25
1
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
---------------------------------------
Hoàng Thị Xuân
NGHIÊN CỨ U HỆ MẬT ĐƯỜ NG CONG ELLIPTIC
VÀ Ứ NG DỤNG
LUẬN VĂN THẠC SĨ KỸ THUẬT
HÀ NỘI - 2013
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 2/25
2
Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: GS. Nguyễn Bình
Phản biện 1: ……………………………………………………………………………
Phản biện 2: …………………………………………………………………………..
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ
Bưu chính Viễn thông
Vào lúc: ....... giờ ....... ngày ....... tháng ....... .. năm ...............
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 3/25
3
MỞ ĐẦU
Lý do chọn đề tài
Sự phát triển 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. Do vậy một số vấn đề phát sinh làthông tin có thể bị tr ộm cắ p, có thể sai lệch, có thể giả mạo. Điều đó có thể ảnh hưởng đếncác tốc chức, các công ty hay cả một quốc gia. Để 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.Các nhà khoa học đã phát minh ra những hệ mật ma nhằm che dấu thong tin cũng như là làmrõ chúng để tránh k ẻ cố tình phá hoạt các hệ mật: RSA, Elgamal …
Đối tượ ng và phạm vi nghiên cứ u
Đối tượ ng nghiên c ứ u c ủa Lu ận văn:
-
Cơ sở toán học hệ mật dựa trên các đườ ng cong Elliptic.- Các tấn công và độ phức tạ p của các tấn công trên hệ mật Elliptic.
- Giao thức bảo mật mạng sử dụng hệ mật Elliptic.
Ph ạm vi nghiên c ứ u c ủa Lu ận văn:
- Luận văn tậ p trung tìm hiểu về các đánh giá tấn công hệ mật đườ ng cong Elliptic, tìmhiểu một số hệ mật trên các đườ ng cong Elliptic.
- Dựa trên các cơ sở lý thuyết và tìm hiểu, xây dựng ứng dụng bảo mật mạng riêng ảo
sử dụng hệ mật Elliptic.Mục đích nghiên cứ u
- Làm rõ các phương pháp tấn công trong hệ mật đườ ng cong Elliptic.
-
Ứ ng dụng trong một bài toán bảo mật mạng cụ thể.
Bố cục luận văn: Luân văn này gồm 03 chương cùng vớ i phần mở đầu, k ết luận và các danh mục:Chương 1: Tổng quan về hệ mật đườ ng cong Elliptic
Chương 2: Mật mã đườ ng cong EllipticChương 3:Ứ ng dụng trong bài toán bảo mật mạng riêng ảo
CHƯƠNG I – TỔNG QUAN VỀ HỆ MẬT ĐƯỜNG CONG ELLIPTIC
1.1 Cơ sở toán học hệ mật đường cong Elliptic
1.1.1Các định nghĩa
Định nghĩa 1.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 4/25
4
Một đườ ng cong El liptic d ạng Weierstrass đầy đủ là tậ p tất cả các điểm vớ i 3 tọa độ x, y, z thỏa mãn phương trình:
2 3 3 2 2 3
1 1 2 4 6yz y z a xyz a x a x z a xz a z Vớ i 1, 2, 3, 4, 6
a a a a a (1.1)
Phương trình đườ ng cong Elliptic d ạng Weierstrass rút g ọn sẽ đượ c biểu diễn bở i phương trình:
2 3: ; E y x Ax B vớ i , p
A B (1.2)
Định nghĩa 2:Bi ệt th ứ c c ủa đườ ng cong E được xác định bở i công thức:
3 216 4 27 A B (1.3)
Định nghĩa 3:Gọi 3 2( , ) f x y x Ax B y . Một điểm ( , ) P x y E đượ c gọi là điể m không kì d ị nếu
có ít nhất một trong hai đạo hàmdf
dxhoặc
df
dykhác 0. Điều này có nghĩa là nếu cả hai đạo
hàm này bằng 0 thì điểm P sẽ được coi là điểm kì dị.Định nghĩa 4:
Đường cong Elliptic E đượ c coi là đườ ng cong không kì d ị nếu tất cả các điểm của nólà không kì dị. Ngượ c lại, nếu có ít nhất một điểm kì dị thì đường cong được coi là đườ ngcong kì dị.Định nghĩa 5:
Đại lượ ng j – b ấ t bi ế n của đườ ng cong E khi 0 là:3
3 2
4
( ) 1728 4 27
A
j j E A B
(1.4)
Định nghĩa 6:Hai đường cong E và E’ xác định bởi phương trình Weierstrass rút gọn vớ i các biến số
tương ứng là (x, y) và (x’, y’) đượ c gọi là đẳng c ấ u trên trườ ng nếu và chỉ nếu tồn tại các
hằng số , ,r s t và *u sao cho khi thực hiện đổi biến 2 3 2' ; ' ' x u x r y u y su x t thì E
biến thành E’.Có hai giá tr ị đặc biệt của j – bất biến là:
j = 0: Khi đó đườ ng cong Elliptic có dạng 2 3 y x B .
j = 1728: Đườ ng cong Elliptic có dạng 2 3 y x Ax .Định nghĩa 7:
Nếu hai đườ ng cong Elliptic khác nhau đượ c xác định trên một trườ ng có cùng một j – bất biến thì ta gọi chúng là “xo ắn đôi ” (twist) của nhau.
Đườ ng cong xoắn đôi với đườ ng cong vớ i j – bất biến là j có dạng:
2 3 3 2; 0,1728
1728 1728
j j y x x j
j j
(1.5)
Định nghĩa 8:
Một đườ ng cong Elliptic E định nghĩa trên p đượ c gọi là đườ ng cong siêu kì d ị nếukhông có điểm bậc p.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 5/25
5
Định nghĩa 9:
Đường cong Elliptic E định nghĩa trên p thỏa mãn # p E p đượ c gọi là các đườ ng
cong b ấ t quy t ắc.
1.1.2 Hệ mật dựa trên đường cong Elliptic
Tậ p hợ p tất cả các điểm , x y vớ i , p x y thỏa mãn phương trình của đườ ng cong E
và vớ i một điểm ở vô cực cùng vớ i một phép toán cộng sẽ tạo thành một nhóm, gọi là
nhóm các điểm trên đườ ng cong Elliptic trong p , ký hiệu là p E .
Phép cộng điểm: Cho hai điểm 1 P và 2 P phân biệt trên đườ ng cong Elliptic
E. Tổng của 1 P và 2 P , ký hiệu là 3 P , được định nghĩa như sau:
K ẻ một đườ ng thẳng đi qua 1 P và 2
P . Đườ ng thẳng này sẽ cắt E tại một điểm thứ 3,
đượ c ký hiệu là '
3 P . Tiế p tục k ẻ đườ ng thẳng đi qua '
3 P và vuông góc vớ i tr ục x , đườ ng
thẳng này sẽ cắt E tại điểm thứ hai chính là điểm 3 P .
Phép nhân đôi một điểm: Cho 1 P là một điểm trên E . Nhân đôi điểm 1
P , ký
hiệu là1 1 12 P P P , được định nghĩa như sau: Kẻ qua 1
P một tiế p tuyến của E , tiế p
tuyến này cắt E tại điểm thứ hai, ký hiệu là R . K ẻ đườ ng thẳng đi qua R và vuônggóc vớ i tr ục x , đườ ng thẳng này cắt E tại điểm thứ hai chính là
12 P .
Cho E là một đường cong Elliptic xác định bởi phương trình 2 3 y x x B . Gọi
11 1( , ) P x y và 2 2 2
( , ) P x y là các điểm trên E vớ i 1 2, P P . Khi đó
1 2 3 3 3( , ) P P P x y vớ i
3 3, x y được tính như sau: (1) (Công thứ c cộng điểm) Nếu 1 2
x x , thì
2
3 1 2 x m x x , 3 1 3 1 y m x x y , vớ i 2 1
2 1
y ym
x x
.
(2) Nếu 1 2 x x nhưng
1 2 y y , thì1 2 P P .
(3) (Công thức nhân đôi điểm) Nếu 1 2 P P và 1 0 y , thì
2
3 1 2 x m x x , 3 1 3 1 y m x x y vớ i
2
1
1
3
2
x Am
y
(4)
Nếu 1 2 P P và 1 0 y , thì 1 2 P P .
(5) 1 1 1; P P P E .
Phép cộng điểm trên đườ ng cong Elliptic E thỏa mãn các tính chất sau:
(1) Tính giao hoán: 1 2 2 1 P P P P vớ i mọi 1 2, P P trên E .
(2) T ồn t ại phần t ử đơn vị: P P vớ i mọi P trên E .
(3) T ồn t ại phần t ử nghịch đảo: V ới điể m P cho trướ c trên E , t ồn t ại một điể m' P
trên E sao cho ' P P . Điể m ' P thường đượ c kí hiệu là P .
(4)
Tính k ế t hợ p: 1 2 3 1 2 3 1 2 3( ) , , P P P P P P P P P E
.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 6/25
6
1.1.2.1 Các tự đồng cấu
Một tự đồng cấu E nghĩa là một đồng cấu : ( ) ( ) E E đượ c cho bở i các hàm hữu
tỉ. Nói cách khác, 1 2 1 2 P P P P , và có các hàm hữu tỉ (thương của các đa chức)
1 , R x y , 2 , R x y vớ i các hệ số trong sao cho
1 2, , , , , x y R x y R x y x y E
Một tự đồng cấu , 0 x y đượ c gọi là tự đồng cấu tách đượ c nếu đạo hàm '
1 , R x y
không đồng nhất bằng không.
1.1.2.2 Các điểm n – xoắn
Các điểm xoắn, chính là các điểm có bậc hữu hạn, đóng một vai trò quan tr ọng trongnghiên cứu các đườ ng cong Elliptic. Cho E là một đường cong Ellip được xác định trên mộttrườ ng . Giả sử n là một số nguyên dương. Theo [6] tập các điểm n-xoắn đượ c định nghĩa
bở i:
| E n P E nP (1.7)
1.1.2.3 Đa thức chia
Đa thứ c chia thứ - m của đườ ng cong Elliptic E , [ , , , ]m x y A B , được xác định bở i
dãy các công thức toán học truy hồi sau đây:
0 1 20, 1, 2 y
4 2 2
3 3 6 12 x Ax Bx A
6 4 3 2 2 2 3
44 ( 5 20 5 4 8 ) y x Ax Bx A x ABx B A
3 3
2 1 2 1 1m m m m m V ớ i 2m
1 2 2
2 2 1 2 12m m m m m m y
V ớ i 2m .
Cho , P x y là một điểm trên đườ ng cong Elliptic 3 A y x x B (trên một trườ ng
nào đó có đặc số khác 2), và n là một số nguyên dương. Khi đó:
32
,,
,
n n
n n
x x ynP
x x y
(1.8)
1.1.3 Cặp Weil
Cho E là một đườ ng cong Elliptic trên một trườ ng và cho n là một số nguyên không
chia hết cho đặc số của . Khi đó n n E n . Đặt:
| 1n
n x x (1.9)
Là nhóm của các căn bậc n của phần tử đơn vị trong . Vì đặc số của không chia
hết cho n , nên phương trình 1n x không có nghiệm bội, do đó nó có n nghiệm trong . Do
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 7/25
7
vậy,n là một nhóm cyclic bậc n . Một phần tử sinh của
n đượ c gọi là một căn nguyên
th ủy b ậc n . Điều này tương đương vớ i việc nói r ằng 1k khi và chỉ khi n chia hết cho k .
Định lý [6 – Theorem 3.9]:Cho E là một đườ ng cong Ellipt ic xác định trên một trườ ng và cho n là một số
nguyên dương. Giả sử r ằng đặc số của trườ ng không chia hế t cho n . Khi đó một phép
ghép cặ p:
:n ne E n E n (1.10)
1.2 Đường cong Elliptic
1.2.1 Đặt vấn đề bài toán
Đường cong elliptic là tập hợp các điểm có toạ độ , x y thoả mãn phương trình có
dạng sau đây: 2 3 2
1 3 2 4 6 y a xy a y x a x a x a Trên trường F biểu diễn bằng phương trình Weiretrass:
3 2
1 3 2 4 6a y xy a y x a x a x a (1.11)
Xét đường cong E trên trường nguyên tố hữu hạn p F ( p nguyên tố, p >3 ) với công
thức biến đổi như sau:2 3 a b (1.12)
Hình 1: Một ví dụ về đường cong Elliptic
Định nghĩa: Giả sử là một trường có đặc số khác 2 và khác 3 và xét đa thức 3 a b (với a,
b ). Khi đó đường cong elliptic trên trường : 2 3 a b là tập hợp tất cả các
điểm (x, y) với x, y sao cho (1.12) không có các nghiệm bội tức là 3 24 27 0moda b p
cùng với phần tử O - điểm O này được gọi là điểm vô hạn. Tính chất của đường cong elliptic:
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 8/25
8
Nếu hai điểm1 1 1(x y ) và
2 2 2(x y ) với1 2x x nằm trên đường cùng một đường
cong elliptic , thì đường thẳng qua hai điểm 1 và 2 sẽ cắt một điểm duy nhất 3 3 3x , y
có thể xác định thông qua 1 và2 nằm trên đường cong .
Tiếp tuyến của đường cong tại điểm bất kỳ P x, y trên đường cong cũng cắt đường
cong elliptic tại một điểm duy nhất nằm trên đường , điểm này cũng có thể xác định đượcthông qua P.
1.2.2 Đường cong elliptic trên trường hữu hạn
Xét trườ ng hữu hạn q F của q = pr phần tử trên trườ ng hữu hạn . Giả sử E là đườ ng
cong elliptic được định nghĩa trên q F . Nếu đặc số của trườ ng 2 p hoặc 3 p thì E đượ c
cho bởi phương trình ở (1.13) và (1.14) . Đị nh lý: Gọi N là số các điểm trên đường cong elliptic được định nghĩa trên q F . Khi
đó N q 1 2 q
1.2.3 Các phép toán trên đường cong Elliptic
1.2.3.1 Phép cộng
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 địnhnghĩa P + Q = O. Ngượ c lại thì P + Q = (x3, y3) E trong đó:
2
3 1 2 3 1 3 1x x – x , y x – x – y ,
Vớ i:
2 1 2 1
2
1
y – y x – x
3x a 2 y
K hi P ≠ Q( nếu x1 = x2 th ì là hệ số góc đườ ngthẳng qua P và Q) (1.17)
Khi P = Q ( là đạo hàm của đườ ng cong tại P) (1.18)
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 9/25
9
Hình 2: Phép cộng trên đường cong Elliptic
Tính chất Dễ thấy r ằng tậ p E vớ i phép toán cộng đó tạo thành một nhóm Abelian:
Tính đóng: Nếu P, Q E thì P + Q E .
Tính k ết hợ p: Nếu P, Q, R E thì P + ( Q + R ) = R + ( Q + P ).
Tồn tại phần tử trung hoà O: vớ i mọi P E thì P + O = O + P = P (theo định nghĩa).
Tồn tại phần tử nghịch đảo: vớ i mỗi P , x y E thì luôn tồn tại phần tử
P , - x y E để P + (-P) = O.
Tính chất giao hoán: Nếu P, Q E thì P + Q = Q + P.
1.2.3.2 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
: P P P P PQ E k ( k phép cộng điểm P).
P
Q
P+ Q
R
P
2P
R
-1
-2
2
1
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 10/25
10
Hình 3: Ví dụ phép nhân đôi trên đường cong Elliptic
1.2.4 Đếm số điểm trên đường cong Elliptic trên trường q F
1.2.4.1 Định lý Hasse
N là số điểm của E trên trườ ng Fq (trườ ng hữu hạn q phần tử). Khi đó:
N – q 1 2 q . Từ định lý Hasse suy ra #E –q q 1 t trong đó
t 2 q .
1.2.4.2 Định nghĩa Bậc của điểm G thuộc E là số k dương bé nhất sao cho k G = O; khi k = #E(Fq) thì G là
điểm cơ sở của E.
1.2.5 Phương pháp chọn đường cong Elliptic phù hợp và điểm cơ sở
1.2.5.1 Trường
Một đườ ng cong elliptic trên một trườ ng hữu hạn tạo thành nhóm Abelian đượ c sử
dụng trong mật mã học. Một ví dụ là việc chọn trườ ng r
2
F giúp thực hiện các phép tính nhanh
và dễ dàng triển khai đượ c trên các thiết bị cứng. Tuy nhiên, các đường cong trên trườ ng r
2 F
có thể bị tấn công bởi MOV, trong khi các đường cong trên trườ ng p F ( p là số nguyên tố lớ n)
lại chống lại đượ c kiểu tấn công này. Một chú ý nữa là việc tính số điểm trên # ( ) E . Tốc
độ của thuật toán Shoof phụ thuộc vào kích thước và đặc số của trườ ng K.
1.2.5.2 Dạng của đường cong elliptic
Trên trườ ng Fq có hai lớp đường cong elliptic đượ c dùng trong các hệ mã hoá là
supersingular . Xét Fq có đặc số là m2 g 2 . Khi đó:
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 11/25
11
Tậ p tất cả các cặ p nghiệm (x, y) của phương trình 2 3y ax x bx c vớ i a, b,
c Fq và a = 0 (mod q) cùng với điểm trung hoà O tạo thành một đườ ng cong ellipticdạng supersin gular .
Tậ p tất cả các cặ p nghiệm (x, y) của phương trình 2 3y ax x bx c vớ i a, b,
c Fq và b = 0 (mod q) cùng với điểm trung hoà O tạo thành một đườ ng cong ellipticdạng non-supersingular .
1.2.5.3 Phương pháp lựa chọn
Phương pháp- Phương pháp chọn ng ẫ u nhiên Kobliz:
(1) .Chọn ngẫu nhiên 3 phần tử từ Fq là x, y, a(2) .Tính b = y2 – (x3 + ax)(3) .Kiểm tra 4a3 + 27b2 ≠ 0 để đảm bảo phương trình x3 + ax + b =0 không có nghiệm
kép.
(4)
.Nếu điều kiện trên không thoả mãn quay lại bướ c 1.(5) .Còn lại, đặt P = (x, y) và đườ ng cong y2 = x3 + ax +b là đườ ng cong cần chọn.
1.2.6 Đánh giá các tấn công hệ mật đường cong Elliptic
1.2.6.1 Phương pháp Pohlig - Hellman
Cho , P Q là các phần tử trong nhóm hữu hạn G bậc N. Ta muốn tìm một số nguyên k
vớ i kP Q . Giả sử biết phân tích ra thừa số nguyên tố của N là:
ieii
N n
Phương pháp Pohlig – Hellman thự c hiện t ố t nế u t ấ t cả các ướ c nguyên t ố của N là
nhỏ. N ếu ướ c nguyên t ố l ớ n nhấ t xấ p xỉ l ớ n của N thì phương pháp Pohlig – Hellman r ấ t khó
áp d ụng. Vì lý do này, các hệ mật d ự a trên logarith r ờ i r ạc, nói chung thườ ng chọn bậc của
nhóm có chứ a một thừ a số nguyên t ố l ớ n.
1.2.6.2 Tấn công MOV
Thuật toán 1: Tấn công MOV
Input: , ( ) p P Q E , ( )ord P N , gcd( , ) N p 1 , Q kP
Output: (mod )k N
(1). Chọn một điểm ngẫu nhiên ( )m pT E
(2). Tính bậc M của T
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 12/25
12
(3). Đặt gcd( , )d M N , đặt ( / )1T M d T . Khi đó 1T có bậc d chia hết cho N ,
vậy 1T E N
(4). Tính ( , )1 N 1e P T và ( , )2 N 2e P T . Khi đó cả 1 , 2 đều thuộc vào
*
md p
(5). Giải bài toán log r ờ i r ạc k
2 1 trong *m p
. K ết quả cho ta (mod )k d .
(6). Lặ p lại vớ i các điểm ngẫu nhiên T đến khi bội chung nhỏ nhất của các số d khácnhau thu được là N. Khi đó ta xác định đượ c (mod )k N
1.2.6.3 Phương pháp Xedni
Thuật toán tính chỉ số ngược đầu tiên là nâng các điểm , ,...,1 2 n P P P , sau đó chọn mộtđườ ng cong Elliptic E Q chứa các điểm đã nâng và hy vọng r ằng chúng phụ thuộc tuyến
tính. Nghĩa là thỏa mãn quan hệ r
i i
i 1
n P 0
. Tuy nhiên, xác suất để chúng phụ thuộc tuyến
tính là nhỏ.
1.2.6.4 Các tấn công dựa trên giả thuyết Diffie – Hellman
Cho G là một nhóm Abel bậc nguyên tố p và g là phần tử sinh của G. Bài toán
logarith r ờ i r ạc DLP trong G là bài toán tìm số pa khi biết g và a g trong G. Nhiều hệ
mật đượ c thiết k ế dựa trên bài toán DLP, tuy nhiên hầu hết chúng có độ an toàn tương đươngvớ i một biến thể yếu hơn của bài toán DLP. Hai biến thể yếu hơn quan trọng nhất là bài toánDH – Tính toán CDH và bài toán DH – Quyết định DDH.
CDH: Cho , ,a b g g g . Tính ab g ?
DDH: Cho , , ,a b c g g g g . Xác định xem c ab trong p hay không?
1.2.6.5 Các tấn công cài đặt
Kiểu tấn công cài đặt thứ nhất là dựa trên điểm không hợ p lệ của đườ ng cong Elliptic. Nếu trong quá trình nhận và xử lý một điểm trên đườ ng cong mà không thực hiện việc kiểmtra xem nó có thực sự nằm trên đường cong đã cho hay không thì lược đồ có thể bị tấn công.
Dạng tấn công thứ hai là kiểu tấn công phân tích năng lượng để khám phá khóa bí mật..Hiệu quả của các kiểu tấn công này phụ thuộc vào cách cài đặt cụ thể.
1.2.6.6 Nhận xét Tổng hợp các phương pháp trên ta có bảng như sau:
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 13/25
13
Bảng 1: So sánh các phương pháp tấn công hệ mật Elliptic
STT Phương pháp
Độ phứ c t ạ p của thuật toán
trong nhóm có bậc là N
Yêu cầu
bộ nhớ Ghi chú
1 Pohlig -Hellman
O K với K là ướ c nguyên tố
lớ n nhất của N
Nhỏ Hiệu quả nếu N chỉ cócác ướ c nguyên tố nhỏ.
2 MOV ~ *DLP m p Nhỏ Hiệu quả nếu m nhỏ
3 Xedni ( )O N - Không áp dụng đượ ctrong thực tế
4 Tấn côngdựa vàomột số giả thuyết DH
( .log )O d p với d là ướ c của
3 p d p
pO
d
Yêu cầu giả thuyếtmạnh, cần bộ nhớ lớ n
5 Tấn côngcài đặt
Phụ thuộc vào cách cài đặt cụ thể
Nhỏ Thời gian đa thức theoConron.
Kết luận chương
Các k ết quả mà chương 1 đạt đượ c bao gồm:(1) Đã nghiên cứu tổng quan về hệ mật Elliptic trên trườ ng hữu hạn, nghiên cứu về các
vấn đề như đa thức chia, nhóm con xoắn, các tự đồng cấu, Weil pairing.(2) Nghiên cứu, xem xét và đánh giá về độ phức tạ p tính toán, yêu cầu bộ nhớ và khả năng
áp dụng trong thực tế của các tấn công đối vớ i hệ mật Elliptic.
CHƯƠNG 2 – MẬT MÃ ĐƯỜNG CONG ELLIPTIC
2.1 Mật mã đường cong Elliptic
2.1.1 Thiết lập cơ sở
Alice muốn gửi một văn bản, thường đượ c gọi là b ản rõ (Plaintext) , tớ i Bob. Cô ấymã hóa văn bản để thu đượ c b ản mã (Ci pher text) . Để mã hóa văn bản, Alice sử dụng một
khóa mã hóa (Encryption key). Bob sử dụng một khóa gi ải mã (Decryption key) để giải mã bản mã nhận đượ c.Có hai cách mã hóa cơ bản. Trong m ật mã đố i x ứ ng (Symmetr ic Encryption) , khóa
mã hóa và khóa giải mã là như nhau,Một dạng khác của mã hóa là m ật mã khóa công khai (Publi c Key Encryption) ,
hoặc mật mã không đối xứng (Asymmetric Encryption).
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 14/25
14
Hình 4: Mô phỏng mã hóa công khai
2.1 .2 Nhúng bản rõ lên đường cong
Nhúng bản rõ lên E là biểu diễn lại bản rõ đó như là các điểm trên E, nhờ đó có thể thực hiện đượ c các tính toán trên E. Có một số phương pháp để thực hiện việc này. Trong đócó 2 phương pháp chính là “nhúng” (Imbeding) và “mặt n ạ” (Mask).
2.1.3. Logarith rời rạc trên đường cong Elliptic
Định nghĩa:
E là đường cong Elliptic trên trườ ng Fq và B là một điểm trên E. Khi đó bài toán logaritr ờ i r ạc trên E (theo cơ số B) là một bài toán, cho trướ c một điểm P E , tìm số nguyên x Z
sao cho xB = P (nếu số x như vậy tồn tại)
2.1.4 Trao đổi khóa Diffie – Hellman
Alice và Bob muốn thống nhất một khóa chung mà họ có thể sử dụng cho việc trao đổidữ liệu thông qua một sơ đồ mã đối xứng. Alice và Bob thống nhất một đườ ng cong ellipticE trên trườ ng hữu hạn Fq sao cho bài toán logarithm r ờ i r ạc là khó trong E(Fq). Thông tin duynhất mà k ẻ tr ộm Eve thấy chỉ là đường cong E, trườ ng hữu hạn Fq, và các điểm P, aP và bP.Do đó cô ta cần phải giải quyết các bài toán sau:
2.1.4.1 Bài toán Diffie – HellmanCho trướ c P, aP và bP trong E(Fq), tính abP?
Nếu Eve có thể giải bài toán log r ờ i r ạc trong E(Fq), khi đó cô ta có thể sử dụng P vàaP để tìm a. Khi đó cô ta có thể tính a(bP) để nhận đượ c abP. Tuy nhiên, liệu có thể có cáchnào để tính abP mà không phải giải bài toán log r ờ i r ạc đầu tiên.
2.1.4.2 Bài toán quyết định Diffie – Hellman
Cho trướ c P, aP và bP trong E(Fq) và cho trướ c một điểm Q ∈ E(Fq). Khi đấy có xácđịnh đượ c Q = abP hay không?
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 15/25
15
Cho E là đườ ng cong 12 3 y x trên Fq, với q ≡ 2 (mod 3). Theo mệnh đề, E là siêu
kì dị. Cho 2q F là một căn nguyên thủy bậc ba của đơn vị. Định nghĩa ánh xạ
: E( ) E( ), x,y x, y , ( )q q F F .
Bằng tính toán trực tiếp ta chỉ ra được β là một đẳng cấu.
2.1.5 Mã hóa Massey – Omura
Alice muốn gửi một văn bản tới Bob qua một kênh công khai. Họ chưa thiết lập đượcmột khóa riêng. Một cách để thực hiện điều này như sau. Alice đặt văn bản của cô vào mộthộp và lắp khóa của cô ta vào đấy. Cô gửi chiếc hộp cho Bob, Bob lắp khóa của anh vào sauđó gửi trả chiếc hộp lại cho Alice. Alice tháo khóa của mình ra và gửi chiếc hộp lại cho Bob.Khi đó Bob bỏ khóa của anh ta ra, mở chiếc hộp và đọc văn bản trong ấy.
Ta sẽ chỉ ra M4 chính là văn bản M, một cách hình thức ta có:
4M1 1
A Bm m
mB mAM = M Nhưng ta cần giải thích thực tế r ằng 1
Am , số nguyên biểu diễn nghịch đảo của mA, và
mA là khử nhau. Ta có 1
Am mA (mod N), vậy 1
Am mA = 1 + kN với số nguyên k.
Nhóm E(Fq) có cấp N, vậy định lý Lagrange kéo theo NR với mọi qR E F .
Do đó, 1
Am mAR = (1+kN)R = R + k ∞ = R.
Áp dụng điều này với R = mBM, ta thấy M3 =1
Am mB mAM = mBM.
Tương tự, 1
Bm và mB khử nhau, vậy M4 =
1
Bm mBM = M.
Tên trộm Eve biết E(Fq) và các điểm mAM, mBmAM và mBM. Đặt a = 1
Am , b = 1
Bm
, P = mAmBM.
2.1.6 Mã hóa công khai Elgamal
Alice muốn gửi một văn bản cho Bob, Anh chọn một đường cong Elliptic E trên mộttrường hữu hạn Fq sao cho bài toán log rời rạc là khó với E(Fq). Anh cũng chọn một điểm Ptrên E (thông thường được thỏa thuận để cấp của P là một số nguyên tố lớn). Anh chọn mộtsố nguyên bí mật s và tính B = sP.
Để gửi văn bản cho Bob, Alice thực hiện như sau: (1) Tải về khóa công khai của Bob (2) Biểu diễn văn bản của cô như một điểm M ∈ E(Fq).(3) Chọn một số bí mật ngẫu nhiên k và tính M1 = kP.(4) Tính M2 = M + kB(5) Gửi M1, M2 cho Bob.
Bob giải mã bằng việc tính: M = M2 – sM1. Việc giải mã thực hiện được vì M2 – s M1 = (M+kB) – s(kP) = M + k(sP) – skP = M.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 16/25
16
2.2 Sinh tham số cho hệ mật Elliptic
2.2.1 Tham số miền của đường cong Elliptic
Các tham số cho hệ mật đườ ng cong Elliptic trên p là một bộ , , , , , , EE p A B G N h S D
, trong đó:
p>3 là số nguyên tố, xác định trườ ng hữu hạn cơ sở p .
2 3: A E y x x B vớ i , p A B
Phần tử sinh ,G GG x y có bậc nguyên tố là N trên E , , ( )G G p x y E và
# ( ) p N E .
Đồng thừa số h=1
Một xâu bít SEED dùng để sinh ngẫu nhiên đườ ng cong
2.2.2 Sinh và kiểm tra cặp khóa đường cong Elliptic
Thuật toán 2 : Sinh cặp khóa cho hệ mật Elliptic
Input: Bộ tham số miền , , , , , , EE p
A B G N h S D
Output: (Q – điểm công khai, d – khóa bí mật)
(1) Sinh 0, 1d R N . Số nguyên d phải đượ c giữ bí mật và phải không dự đoán
đượ c
(2)
Tính điểm ,Q QQ x y dG
(3) Tr ả về cặ p khóa là ( , )Q d trong đó Q là khóa công khai, d là khóa bí mật.
Vớ i một bộ tham số miền , , , , , , EE p A B G N h S D và một khóa công khai Q có thể
đượ c kiểm tra tính hợ p lệ theo thuật toán dưới đây.
Thuật toán 3 : Kiểm tra tính hợp lệ của khóa công khai
Input: Tham số miền , , , , , , EE p A B G N h S D , khóa công khai Q
Output: “ Khóa công khai hợ p l ệ” hoặc “ Khóa công khai không hợ p l ệ” (1) Kiểm tra Q không phải là điểm trên E
(2) Kiểm tra ,Q Q p x y
(3) Kiểm tra r ằng2 3 AQ Q Q y x x B
trong p .
(4) Kiếm tra NQ (5) Nếu bất k ỳ một trong các phép kiểm tra trên thất bại tr ả về “khóa công khaikhông hợ p lệ” còn không thì trả về “khóa công khai hợ p lệ”.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 17/25
17
2.2.3 Thuật toán kiểm tra điều kiện MOV
Thuật toán 4 : Kiểm tra điều kiện MOV
Input: Giá tr ị B là cận của MOV theo tiêu chuẩn EC5Output: 0: Không thỏa mãn điều kiện MOV; 1: Thỏa mãn MOV
(1)
t = 1, ok= 1;(2) for i = 1 to B do
T = t.p (modN)If (t==1){ok=0; return ok;}
(3) return ok;
2.2.4 Thuật toán sinh đường cong ngẫu nhiên
Thuật toán 5 : Sinh đường cong ngẫu nhiên
Input: Số nguyên tố pOutput: Chuỗi SEED và , p A B xác định E trên p .
Tính trướ c 2logt p , 1 / 256 s t , 256.h t s
(1) Chọn một chuỗi bít SEED có độ dài ít nhất là 256 bít. Gọi g là độ dài theo bítcủa SEED.
(2) Tính H=SHA256(SEED), gọi 0c là h bít bên phải của H
(3)
0W
là h bít nhận đượ c bở i việc thiết lậ p bít ngoài cùng bên trái của0c
thành 0(nhằm đảm bảo r < p)
(4) Với i= 1 đến s tính W 256 mod 2 g
i SHA SEED i
(5) 0 1W W W ..... W s
(6) Vớ i1 2.... t w w w là các bít của W từ trái qua phải. Tính số nguyên 1
1
2t
i
i
i
r w
.
(7) Chọn, p A B
sao cho2 3(mod )rB A p (A, B không nhất thiết phải chọn
ngẫu nhiên).
(8) Nếu 3 24 27 0 (mod ), A B p chuyển sang bướ c 1.
(9) Đường cong đượ c chọn trên p là E: 2 3 y x Ax B .
(10) Return (SEED, A, B).
2.2.5 Thuật toán kiểm tra đường cong được sinh ngẫu nhiên
Thuật toán 6 : Kiểm tra đường cong được sinh ngẫu nhiên
Input: Chuỗi bít SEED có độ dài là g-bít và , p A B . Output: Chấ p nhận hoặc không chấ p nhận tham số đầu vào.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 18/25
18
Tính trướ c 2 , t l / 256 , 256.t log p s h t s
(1) Tính H= SHA256(SEED), gọi 0c là h bít bên phải của H
(2) 0W là h bít nhận đượ c bở i việc thiêt lậ p bít ngoài cùng bên trái của 0c thành 0.
(3) Vớ i i= 1 đến s thực hiện:
Tính g SHA256 SEED mod 2iW i
(4) '
0 1 ... sW W W W
(5) Vớ i 1 2.... t w w w là các bít của'W từ trái qua phải. Tính số nguyên
1
1
' 2t
i
i
i
r w
(6) Nếu 2 3( d )r B A mo p thì chấ p nhận, ngượ c lại không chấ p nhận tham số đầu
vào.
2.2.6 Thuật toán tính số điểm của đường cong elliptic Định lý Hasse:
Cho E là một đườ ng cong elliptic trên trườ ng hữ u hạn p . Khi đ ó bậc của E( p ) thỏa
mãn:
1 # 2 p p E p (2.1)
Đặt t = 1 # p p E . Khi đấy mối quan hệ giữa tự đồng cấu Frobenius vớ i số điểm
của đườ ng cong elliptic E trên trườ ng hữu hạn p .
Thuật toán 7 : Tỉnh số điểm của đường cong _
Input: A ,Bvà p xác định (E)2 3 y x Ax B trên p .
Output: E ( p ) = p+1- t .
(1) Chọn tậ p các sổ nguyên tố 2,3, 5,...,S L sao cho:
4l S
l p
(2) Vớ i l = 2 , Nếu gcd 3( , ) 1 p x Ax B x x thì ta có t 0 mod 2 .
Ngượ c lại thì 1 mod 2t .
(3) Vớ i mỗi số nguyên tố lẻ l S , thực hiện các bước sau đây:
a) Tính modl p p l vớ i / 2l p l
. b) Tính hoành độ x' của điểm:
2 2' ' p
, , ( , )mod
p
l l x y x y P x y
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 19/25
19
Chú ý, trong thực tế đa thức chia l đượ c thay bở i l f vớ i công thức truy hồi sauđây:
4 2
0 2 3
2
10; 1; 1; 3 6 12 . f f f f x Ax x B A 4 3 2 2 2 36
4 4( 5 20 5 4 8 ) f x x Bx A x ABx B A A 3 2 3
2 1 1
2 1 2 3 3
1 1 1
; 3, 2 1
; 2, 2
m m m m
m
m m m m
f f F f f m m i f
F f f f f m m i
(2.7)
2 2
2 1 2 1 . ; 2m m m m m f f f f f f m
Trong đó 3 F x Ax B .
c) Vớ i 1,2, ..., 1 / 2 j l thực hiện các bướ c sau:
(i) Tính hoành độ j x của điểm , , j j x y j x y
(ii)
Nếu
'
x 0(mod )
p
j l x thì chuyển sang bướ c iii. Còn không thì tiế p tụcthử vớ i giá tr ị tiế p theo của j. Nếu mọi giá tr ị của j trong đoạn
1, 1 /2l đã đượ c thử thì sang bướ c d.
(iii) Tính ' à y j y v . Nếu ' ) / 0(mod ) j l y y y thì (mod )t j l , còn không
thì (mod ).t j l
d) Tính w sao cho 2 (mod )w p l nếu w không tồn tại thì 0(mod )t l .
e) Nếu gcd(tử _số _của , p
w l x x ) = 1 thì 0(mod )t l . Còn không thì tính
gcd(tử _số _của / , pw l y y y ). Nếu gcd này là 1 thì t 2w (mod )l . Còn
không thì 2 (mod )t w l .
(4) Sử dụng các giá tr ị (mod )t l đã tính ở bướ c 3 vớ i mỗi l S và Định lý Phần dư
Trung hoa để tính (mod )t l . Chọn giá tr ị t duy nhất thoả mãn 2t p
(5) Tr ả về 1 p E p t .
Đánh giá độ phứ c tạp của thuật toán Schoof: Các phép tính phức tạ p nhất phải thực hiện trong mỗi bướ c tính (mod )t l là tính
2
(mod ), (mod ), (mod ) p p
l l l x w x w y w và2
(mod ) p
l y w .
Như vậy, vớ i mỗi một số nguyên tố l , để tính (mod )t l yêu cầu cỡ 4 2 7(log ). (log ). (log ) (log )O p O p O p O p phép toán bít.
Số lượ ng các số nguyên tố l xuất hiện là cỡ (log )O p , như vậy độ phức tạ p tổng thể
của thuật toán Schoof là cỡ 7 8(log ). (log ) (log )O p O p O p phép toán bít.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 20/25
20
2.2.7 Thuật toán sinh tham số miền
Hình 5: Lưu đồ thuật toán sinh tham số miền
Xác định độ dài của N và p theo EC2, EC3
Sinh ngẫu nhiên điểm cơ sở
OUTPUT:( p, A, B, G, N, h =1, SEED)
Tính số điểm của đường cong :
Sinh đường cong ngẫu nhiên
Sinh số nguyên tố tất định p
N is prime
EC6
INPUT:
EC4
2011 2020; y atm
: EE , , p E S D AB
# p N E
EC5
-
+
-
+
-
+
-
+
( , )G G
G x y
EC7 -
+
Thuật toán 8: Sinh tha m số miền cho hệ mật đường cong elliptic
Input: Số năm y trong khoảng 2011 -2020 và biến atm (bằng 1 xác định mức an toàn làATM1, bằng 2 xác định ATM2).Output: Bộ tham số miền ( , , , , , , ). p A B G N h SEED
(1) Dựa vào y và biến xác định mức an toàn atm để tính các giá tr ị cụ thể của độ dàikhóa N và modulo p theo tiêu chuẩn EC2 và EC3.
(2)
Sử dụng một thuật toán tất định để sinh số nguyên tố p có thể chứng minh đượ ctheo độ dài đã xác định trong bước (1). Lưu lại p.
(3) Sử dụng Thuật toán 5 để sinh đườ ng cong ngẫu nhiên có thể kiểm tra đượ c trong
p . Lưu lại SEED, A, B.
(4) Sử dụng Thuật toán 7 để tính số điểm của đường cong đượ c sinh ngẫu nhiên: N=#E( p ).
(5) Nếu N là hợ p số thì quay lại bướ c (3).(6)
[1].
Kiểm tra tiêu chuẩn EC6 về ướ c nguyên tố của N± 1, nếu không thỏa mãn thìquay về bướ c (3).
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 21/25
21
[2].
Kiểm tra tiêu chuẩn EC4 về đườ ng cong bất quy tắc: Nếu N = p thì quay về bướ c (3).
[3]. Kiểm tra tiêu chuẩn EC5 về điều kiện MOV, nếu không thỏa mãn thì quay về bướ c (3).
(7) h =1.
(8)
Sinh ngẫu nhiên một điểm cơ sở G( , )GG x y .(9) Kiểm tra điểm cơ sở theo tiêu chuẩn EC7 (
2 4 2 20,3 0(mod ),5 2 4 0(mod )G G G G G x x p x Ax Bx A p . Nếu không thỏa
mãn thì quay về bướ c (8).(10) Tr ả về ( p, A, B, G, N, h, SEED).
2.2.8 Thuật toán kiểm tra tính hợp lệ của tham số miền
Thuật toán 9 : Kiểm tra tính hợp lệ của tham số miền Input: Bộ tham sô miền (p, A, B, G, N, h, SEED). Output: "tham số miề n hợ p l ệ" hoặc "tham số miề n không hợ p l ệ"
Kiểm tra độ dài theo bít của N theo tiêu chuẩn EC2.(1) Kiểm tra p là nguyên tố (dựa theo các bằng chứng nguyên tố đã đượ c tạo ra
trong quá trình sinh p từ Thuật toán 8). Kiểm tra độ dài của p theo tiêu chuẩnEC3.
(2) Kiểm tra, , ,G G p A B x y
(3)
Kiểm tra A, B có đượ c dẫn xuất từ SEED không (theo Thuật toán 6 về việckiểm tra đường cong đượ c sinh ngẫu nhiên).
(4) Kiểm tra3 2(4 27 ) 0 (mod ). A B p
(5) Kiểm tra tiêu chuẩn EC7 2 3 A modG G G y x x B p ;20;3 0(mod )
G G x x A p ; 4 2 25 2 4 0 modG G G x Ax Bx A p .
(6) Kiểm tra N là nguyên tố và h = 1 theo tiêu chuẩn EC4.(7) Kiểm tra tiêu chuẩn EC6 về ướ c nguyên tố của N ± 1.
(8) Kiểm tra NG ,(9) Kiểm tra điều kiện MOV theo tiêu chuẩn EC5.
(10) Kiểm tra điều kiện đườ ng cong bất quy tắc theo tiêu chuẩn EC4: N p .(11) Nếu một trong các bướ c kiểm tra trên cho k ết quả sai thì tr ả về “tham số miền
không hợ p lệ” còn không thì tr ả về “tham số miền hợ p lệ”.
Kết luận chương
Các k ết quả cụ thể của chương 2:
(1)
Đã đưa ra các thuật toán phục vụ cho bài toán sinh tham số.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 22/25
22
(2)
Nghiên cứu bài toán sinh tham số an toàn cho hệ mật Elliptic theo các tiêu chuẩn ISOvà IEEE.
Các k ết quả của chương này thu đượ c khẳng định việc xây dựng bài toán tham số an toàn chohệ mật có tính khả thi áp dụng vào bài toán thực tế đượ c trình bài ở chương 3.
CHƯƠNG 3 - ỨNG DỤNG TRONG BÀI TOÁN BẢO MẬT MẠNGRIÊNG ẢO
3.1. Phần mềm bảo mật mạng riêng ảo OpenVPN
OpenVPN là một bộ chương trình tạo mạng riêng ảo (VPN) mã nguồn mở dựa trêngiao thức bảo mật SSL/TLS. OpenVPN bao gồm 03 thành phần: thiết lậ p khóa, mã hóa/ giảimã bở i một thuật toán đối xứng, đảm bảo tính toàn vẹn dữ liệu bằng HMAC (dựa trên hàm
băm mật mã).
3.2. Tích hợp giao thức trao đổi khóa EC-HMQV trong SSLHugo Krawczyk đã đề xuất một biến thể đơn giản nhưng mạnh mẽ của MQV (tương
ứng EC-MQV), và gọi là giao thức HMQV (tương ứng là EC-HMQV). Cũng giống nhưMQV, giao thức HMQV dựa trên giao thức Diffie-Hellman cơ bản. Điểm khác nhau giữaHMQV và MQV nằm trong việc tính toán khoá phiên có sử dụng hàm Hash.
Thuật toán 10 : Tính khóa chung của giao thức EC -HMQV
Input: Tậ p các tham số hệ thống ( p, E, N, h, G) và các thông tin đã nhận đượ c từ
Bướ c 2 của A là , . , , . , . . A A B s s G x x G y G và s G (tương tự của B là, . , , . , . .
B B A s s G y y G x G và s G )
Output: Khóa bí mật k và k’ cho thực thể A (và B)
Thự c thể A Thự c thể B
Bướ c 1: 2log
2
pl
Bướ c 1: 2log
2
pl
Bướ c 2: d (x.G, ) A H B Bướ c 2: d ( . , ) B H y G A
Bướ c 3: c . mod A A A x d s N Bướ c 3: c . mod B B B y d s N Bướ c 4:
Ae ( . , ) H y G A Bướ c 4: e ( . , ) B H xG B
Bướ c 5: . .
A A BQ c y G e s G
Bướ c 5: . . B B AQ c x G e s G
Bướ c 6: , ’k k H Q Bướ c 6: , ’k k H Q
3.3. Tích hợp tham số an toàn hệ mật Elliptic
Để sử dụng tham số do ta tự sinh ra trong bộ phần mềm OpenVPN. Ta phải chuyểnđổi sang định dạng PEM và X.509 cho khóa bí mật và công khai. Tham số khóa bí mật sẽ
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 23/25
23
đượ c sử dụng trong lược đồ chữ ký số ECDSA (cho việc kiểm tra chứng chỉ số của đối tác)và trong lược đồ trao đổi khóa EC- HMQV. Để làm được điều này, ta cần chỉnh sửa code củathư viện SSL như sau: (1). Do bộ thư viện SSL sử dụng các tham số hệ mật Elliptic theo các chuẩn của NIST,
FIPS và SEClv2-2009 nên các số nguyên tố modulo ở dạng đặc biệt. Các phép tính
liên quan đến modulo được cài đặt mặc định để sử dụng cho các số nguyên tố đó. Tacần phải chỉnh sửa code trong file ec_cvt.c để bộ thư viện có thể tính toán đượ c vớ icác số nguyên tố modulo ngẫu nhiên do ta sinh ra.
(2). Khai báo các tham số hệ mật Elliptic cần sử dụng trong file ec_curve.c. Sử dụng tiệních ecparam.c để chuyển đổi tham số sang dạng PEM và chứng chỉ sổ X.509 hoặcPKCS12.
3.4 Mô hình thử nghiệm bảo mật VPN
3.4.1 Mô hình mạng
Hình 6: Mô hình bảo mật VPN
3. 4.2. Thiết lập cấu hình cho VPN Server # VPN Server
Port 1194
Proto udp
Dev tap0
# RootCA sử d ụng tham số hệ m ật Elliptic
ca /etc/openvpn/key/ec_ca.crt# Khóa công khai/ bí m ật sử d ụng tham số Elliptic
cert /etc/openvpn/key/server1.crt
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 24/25
24
key / etc/openvpn/key/server1.key
# Tham số Diffie-Hellman cho trao đổi khóa EC-HMQV
ecdh /etc/openvpn/key/ecdh.pem
# Mã hóa và xác thự c dùng AES và SHA2
cipher AES-256-CBC
auth SHA256…………
3.4.3. Thiết lập cấu hình cho VPN Client # VPN Client: Linux – User02
Client
Proto udp
Dev tap0
# RootCA sử d ụng tham số hệ m ật Elliptic
ca /etc/openvpn/key/ec_ca.crt
# Khóa công khai/ bí m ật sử d ụng tham số Elliptic
cert /etc/openvpn/key/user2.crt
key / etc/openvpn/key/user2.key
# K ết nối đến địa chỉ thật của VPN Server
Remote 192.168.1.18 1194
# Mã hóa và xác thự c dùng AES và SHA2
cipher AES-256-CBC
auth SHA256
…………
3.4.4. Kết quả và nhận xét
Việc thay thế giao thức trao đổi khóa ECDH bở i EC-HMQV trong bộ thư việnOpenSSL là công việc phức tạp và khó khăn.
Quá trình hoạt động của bộ chương trình bảo mật VPN sau khi đã tích hợ p giao thứctrao đổi khóa EC-HMQV và sử dụng tham số hệ mật Elliptic do Luận văn tạo ra.
Kết luận Chương
Các k ết quả cụ thể trong Chương 3 bao gồm:(1). Nghiên cứu và áp dụng các thuật toán phục vụ cho bài toán sinh tham số theo cáctiêu chuẩn ISO và IEEE.(2). Nghiên cứu chương trình sinh tham số an toàn hệ mật Elliptic theo các tiêu chuẩnđã đề xuất.(3). Ứ ng dụng phần mềm bảo mật mạng riêng ảo và áp dụng các tham số an toàn hệ mật Elliptic.
Các k ết quả thu đượ c tr ong chương này khẳng định tham số sinh ra vớ i giá tr ị p là số nguyêntố ngẫu nhiên có tính bảo mật hơn so vớ i giá tr ị p là số nguyên tố đặc biệt và khả thi trongthực tế.
7/23/2019 Ma Hoa Dua Tren Duong Cong Eliptic Va Ung Dung
http://slidepdf.com/reader/full/ma-hoa-dua-tren-duong-cong-eliptic-va-ung-dung 25/25
25
KẾT LUẬN A. Các k ết quả đạt đưọc của Luận văn
1.
Đã nghiên cứu cơ sở toán học hệ mật dựa trên đườ ng cong elliptic và các tấn công đốivớ i hệ mật Elliptic.2. Đã nghiên cứu, đánh giá một số chuẩn về tham số.3. Nghiên cứu đượ c giá tr ị tham số p là số nguyên tố ngẫu nhiên là an toàn cho các tham
số hệ mật Elliptic.4. Đã nghiên cứu, đánh giá thuật toán tính số điểm của đườ ng cong elliptic phục vụ cho
bài toán sinh tham số an toàn.5. Đã nghiên cứu về cấu trúc, nguyên lý hoạt động của một ứng dụng bảo mật mạng
riêng ảo (trao đổi khóa, tham số an toàn ...).
B.
Hướ ng nghiên cứ u tiếp theo1. Nghiên cứu phương pháp tính số điểm của đường cong theo phương pháp nhân phức
CM để tăng tính hiệu quả của thuật toán sinh tham số.
2. Cậ p nhật phương pháp tính độ dài khóa dựa trên điện toán đám mây.