Đường cong Elliptic trên trường hữu hạn Các giao thức mật mã dùng đường cong Elliptic trên trường hữu hạn GVHD Th s Nguyễn Thành Nhựt Thực hiện Trần Thị Mỹ Huỳnh 0711104 Nội dung 1 Các kiến thức liên[.]
Trang 1Các giao thức mật mã dùng đường cong Elliptic trên trường hữu hạn
GVHD:
Th.s Nguyễn Thành Nhựt Thực hiện:
Trần Thị Mỹ Huỳnh 0711104
Trang 2Nội dung:
Trang 31 Các kiến thức liên quan
Cho K là một trường với phần tử đơn vị là e
Khi đó, nếu ∃ p ∈ Ν \{0} nhỏ nhất: n*e = 0 thì
p được gọi là đặc số của K Ngược lại, K có đặc số 0 Kí hiệu: Char(K)
Char(Q) = Char(R) =Char(C) = 0.
Nếu Char(K ) = p ≠ 0 thì p phải là số nguyên tố.
Trang 4P được gọi là trường con nguyên tố của K
nếu nó là trường con bé nhất được chứa trong
mọi trường con khác của K Khi P = K thì K
được gọi là trường nguyên tố
K được gọi là trường hữu hạn nếu nó có hữu hạn phần tử
Trang 5Với mỗi số nguyên tố p và với mỗi số tự nhiên
r > 1 đều tồn tại trường hữu hạn cấp pr
Số phần tử trong một trường hữu hạn là lũy thừa pr , với p là đặc số của trường
F p có {0, 1, 2, …, p-1} phần tử, với phép
cộng, phép nhân modulo p
Trang 6Ví dụ: F29 có {0, 1, 2, …, 28} phần tửPhép cộng:
Trang 8Các phép toán trên F24 với f(x) = x4 + x +1: Phép cộng:
Trang 9Không gian xạ ảnh:
Cho K là một trường Không gian xạ ảnh
hai chiều Pk2 trên K được cho bởi lớp tương đương của bộ ba (x, y, z) là Pk2 /~ ={(λx,
λy, λz)| λ∈ K*, x, y, z ∈ K và gcd(x, y, z)
=1} Kí hiệu: (x: y: z)
(x1, y1, z1) ~ (x2, y2, z2) ⇔ ∃λ ∈ K*: (x1, y1,
z1) = (λx2, λy2, λz2)
Trang 11Một đa thức f được gọi là đồng nhất bậc n nếu f(x, y, z) = Σi+j+k= n axiyjzk , a ∈ K
Trang 12Nếu f là đa thức đồng nhất bậc n có được từ
Trang 132 Đường cong Elliptic (EC- Elliptic Curve)
EC trên trường K là tập hợp các điểm thỏa
phương trình E: y2 + a1xy + a3y = x3 + a2x2 + a4x + a6 (*)
và một điểm O gọi là điểm tại vô cùng.
Trong đó: a1, a2, a3, a4, a6∈ K, ∆ ≠ 0 là biệt thức của đường cong và
∆ = - d 22 d 8 – 8d 43 – 27d 62 + 9d 2 d 4 d 6
d 2 = a12 + 4a2 ,
Trang 14d 4 = 2a4 + a1a2 ,
d 6 = a32 + 4a2 ,
d 8 = a12a6 + 4a2a6 – a1a3a4 + a2a32 – a42
∆ ≠ 0 ⇔ Điều kiện không kì dị ⇔ đường cong
không có nghiệm bội.
Đường cong trong mặt phẳng xạ ảnh
y 2 z+ a 1 xyz + a 3 yz 2 = x 3 + a 2 x 2 z + a 4 xz 2 + a 6 z 3
Trang 15Điểm 0 là điểm tại vô cùng trong đường cong
xạ ảnh có được bằng cách cho z = 0, ta được 0= x3 Do x, y, z không đồng thời bằng 0 nên y
≠ 0 Khi đó (0: y: 0) = (0: 1: 0) là điểm tại vô cùng trong E
Nếu ∆ > 0 thì đồ thị của một đường cong không kì dị sẽ có 2 thành phần, và có một thành phần nếu ∆ <0
Ví dụ: (a) ∆ = 64 > 0, (b) ∆ = - 676 < 0
Trang 17y2 +xy = x3 +ax2 +b.
Trang 19với b2 = a12 +a2 và b4 = a4 – a1 a3 thì ta có đường cong:
Trang 20Qui luật nhóm trên trường có Char(K) ≠ 2, 3
Phần tử 0 là điểm tại vô cùng (0, 1, 0)
Nghịch đảo của điểm có tọa độ (x1 , y1) là (x1 , -y1 –a1x1– a3)
Nếu P = (x1 , y1) và Q = (x2 , y2) không là nghịch đảo của nhau thì P + Q = (x3 , y3),
Trang 22Tính toán trên EC với Pari
Ví dụ 1: Cho E: y2 + y = x3 – x, và P = (1, 0), Q = (2, 2) Ta có: P + Q = (1, -1)
>e = ellinit([0, 0, 1, -1, 0]);
>elladd(e, [1, 0], [2, 2])
>ellpow(e, [2, 2], 3)
Trang 23Ví dụ 2 : Cho E: y2 + 2xy +8y = x3 +5x2 + 1136x + 531 trên F2003, P = (1118, 269), Q = (892, 529)
Ta có: P+Q = (1681, 1706), 2P = (1465, 677)
>e2=ellinit([Mod(2,2003),Mod(5,2003),Mod(8,20 03),Mod(1136,2003),Mod(531,2003)]);
>elladd(e2,[Mod(1118,2003),Mod(269,2003)],
[Mod(892,2003),Mod(529,2003)])
>ellpow(e2,[Mod(1118,2003),Mod(269,2003)],2)
Trang 24Mô tả hình học
Trang 25Đường cong Elliptic trên trường R
Phương trình có dạng
y2 = x3 + a4x + a6
gọi là dạng Weierstrass của đường cong
Biệt thức ∆ của đường cong là
∆ = -16(4a43 + 27a62 )
Đường cong không kì dị (không có điểm bội)
⇔ ∆ ≠ 0 ⇔ 4a43 + 27a62 ≠ 0
Trang 26Đường cong Elliptic trên Q
Là các đường cong được cho bởi phương trình
Trang 27Đường cong Elliptic trên trường hữu hạn
Là các đường cong trên trường số hữu tỷ sửa theo modulo p
⇒Đường cong có được có thể có điểm bội
Trang 28Nếu q không phải số nguyên tố thì [.] là kí hiệu Jacobi.
(Định lý Hasse) Giả sử N là số điểm của
đường cong Elliptic xác định trên trường Fq Khi đó ta có:
| N – (q+1)| ≤ 2√q
Trang 29Các hệ mật mã dựa trên EC
Elliptic Curve Cryptography – ECC
ECC được đề xuất bởi Neil Koblitz và Victor Miller năm 1985, sau thuật toán RSA 20 năm ECC được chuẩn hóa trên bình diện quốc tế bởi ISO, IETF, và Mỹ bởi ANSI và NIST
Trang 30Với Q = kP, P và Q thuộc EC, thì việc tìm Q dễ dàng khi biết k và P; nhưng lại khó xác định k khi biết P và Q.
Ví dụ: 31P = 2(2(2(2P + P) +P) + P) + P
Khi đó, k được gọi là logarit cơ sở P của Q
Bài toán tìm logarit rời rạc của các điểm trên đường cong đòi hỏi thời gian mũ
Trang 31Các hệ mã khóa công khai sử dụng EC dựa trên độ phức tạp của thuật toán tìm logarit x sao cho: Q = kP, trong đó P, Q là các điểm cho trước của đường cong.
Trong đó, k là khóa bí mật và Q là khóa công khai , P là được dùng làm “ cơ sở”
Trang 323 Các giao thức mật mã dùng EC
Giao thức là nghi thức giao dịch gồm một chuỗi các hoạt động có sự tham gia của 2 hay nhiều phía nhằm hoàn tất một tác vụ xác định Các giao thức cần được thực hiện một cách tuần tự và có mục đích chung
Trang 33Đặt trưng của giao thức:
Cần phải nắm trước các bước hoạt động của giao thức
Người tham gia vào giao thức cần phải đồng thuận chấp hành việc tuân thủ giao thức
Phải có tính mạch lạc rõ ràng
Phải mang tính đầy đủ
Trang 34Giao thức mật mã:
Là thuật toán
Các bước mô tả các hành động cần thiết của các đối tượng nhằm đạt được mục tiêu bảo mật
Trang 35Thuật toán chữ ký điện tử
ECDSA được ANSI thừa nhận 1999, IEEE và NIST năm 2000
Trang 36Dùng để chứng thực tác giả của văn bản và giúp người nhận kiểm tra tính toàn vẹn nội dung văn bản gốc
ECDSA được cho bởi (H, K, E, q, G), với H là hàm băm mật mã, E là đường cong EC trên trường K, G là một điểm thuộc đường cong EC
có bậc q
Trang 37Thuật toán: Thiết lập chữ ký
(ECDSA signing)
Input: Văn bản m và khóa mật x
Output: Chữ ký (r, s) trong văn bản m
Trang 38Thuật toán: kiểm tra chữ ký
Trang 39Ví dụ
Cho p= 114973, E: y2 = x3 -3x + 69424, G = (11570, 42257) có bậc n = 114467 Chọn x=
Trang 42Nhận xét
Việc chữ ký có dung lượng nhỏ sẽ làm cho kho
dữ liệu nhỏ đi gần một nữa
Các bản quyền văn bản có thể chỉ cần lưu chữ
ký mà không cần lưu toàn bộ văn bản, nhưng vẫn khẳng định được văn bản đó thuộc về ai
Chỉ quan tâm đến tính toàn vẹn dữ liệu của nội dung văn bản, mà không quan tâm đến việc giữ bí mật nội dung của nó
Trang 43ECIES–Elliptic Curve
Integrated Encryption Scheme
Dựa vào giao thức DHAES / Hellman Augmented Encryption Scheme) của Abdalla, Bellare, và Rogaway
Là thuật toán mã hóa khóa công khai
Khóa công khai là (q, E, k, G,Y) và khóa mật x
Trang 44Sử dụng hàm giải mã đối xứng để mã hóa văn bản dài.
ECIES sử dụng EC Diffie- Hellman trao đổi khóa để sinh ra ngẫu nhiên một khóa đối xứng,
nó được dùng để mã hóa và MAC một văn bản
Trang 45Thuật toán: mã hóa (ECIES Encryption)
Input: Văn bản m và khóa công khai Y.
Output: Văn bản mã hóa (U, c, r).
1 Chọn k ngẫu nhiên thuộc {1, …, q – 1}.
Trang 46Thuật toán: giải mã (ECIES decryption)
Input: Văn bản mã (U, c, r) và khóa mật x
Output: Văn bản m hoặc vô hiệu văn bản mã
Trang 47So sánh giữa ECC và RSA
Độ mật của ECC dựa vào bài toán logarit rời rạc trên EC, còn độ mật của RSA dựa vào bài toán phân tích thừa số nguyên tố của một số nguyên lớn
Khả năng bảo mật của ECC cao hơn RSA với kích thước khóa nhỏ ⇒giảm thời gian tạo khóa, thu gọn được kích thước của chứng nhận giao dịch trên mạng và giảm kích thước tham
số của hệ thống mã hóa
Trang 50Sự điều chỉnh hệ thống tham số của ECC và RSA
Trang 51
Độ phức tạp không gian:
Do kích thước dữ liệu đầu vào khác nhau
⇒Không gian khác nhau
Trang 52Chữ ký:
Trang 53Phần mềm tấn công
Trang 54Tốc độ mã hóa và giải mã
Trang 55về khả năng tính toán, khả năng lưu trữ
⇒ ECC thích hợp trên các thiết bị di động kĩ thuật số như: handheld, PDA, điện thoại di động và thẻ thông minh
Trang 56
Hạn chế của ECC là việc chọn sử dụng các tham số đường cong và điểm qui ước chung như thế nào để đạt được độ bảo mật cần thiết Hơn nữa, khi các tham số mang giá trị nhỏ thì mức độ bảo mật của ECC không bằng RSA
Trang 574 Tài liệu kham khảo
[1] Henri Cohen and Gerhard Frey, Handbook
of Elliptic and Hyperelliptic Curve Cryptography
[2] Lawrence C Washington, Elliptic Curve: Number Theory and Cryptography, Second Editor
[3] Douglas R Stinson, Cryptography: Theory and Practice, Third Edition
[4] …