Tải bản đầy đủ (.ppt) (15 trang)

Bài giảng an toàn thông tin ECC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (266.66 KB, 15 trang )

Mã hóa công khai ECC
Tổng quan về ECC (Elliptic Curve Cryptography)
 Phương thức này phát minh năm 1985 bởi hai nhà toán học Miller và Koblitz.
 Mã hoá thông tin lên một nhóm bao gồm những điểm trên đường cong elliptic.
 Đường cong elliptic này được định nghĩa trên một trường đại số hữu hạn (finite

field).
 Hay nói cho đơn giản hơn, dựa trên những điểm tọa độ số nguyên trên trục tọa độ
Descartes, kể cả một điểm đặc biệt ở vô cực (infinity).
 Elliptic thực tế chỉ là những điểm có tọa độ số nguyên, thỏa mãn một phương
trình đại số bậc ba.

 Page 1


Mã hóa công khai
ECC
Các khái niệm cơ bản về ECC
 Tập điểm (x, y) thỏa mãn đẳng thức:
 Điểm O được gọi là điểm vô cùng.

 Page 2


Mã hóa công khai
ECC
Đường cong Eliptic trên trường số thực (Dạng Weierstrass)
 Phép cộng

 Page 3



Mã hóa công khai ECC
Cấu trúc nhóm trên đường cong Elliptic
 Phép nhân

 Bậc r

 Page 4


Mã hóa công khai ECC
Mật mã công khai dùng đường cong Eliptic
 Đường cong elliptic được xây dựng trên các trường hữu hạn.
 Có hai trường hữu hạn: Trường hữu hạn Fq với q là số nguyên tố hoặc q là 2^m

(m là số nguyên).
 Tùy thuộc vào trường hữu hạn Fq, với mỗi bậc của q, tồn tại nhiều đường cong
elliptic.
 Do đó, với một trường hữu hạn cố định có q phần tử và q lớn, có nhiều sự lựa
chọn nhóm đường cong Elliptic.

Bài toán logarit rời rạc trên đường cong Eliptic
 Cho trước (E) và hai điểm P, Q thuộc E.
 Tìm số nguyên k để: Q = kP.
 Không thể tìm được k (có thể tìm được trong khoảng thời gian đủ ngắn).

 Page 5


Mã hóa công khai ECC

Mô hình mã hóa dữ liệu ECC (Bên gửi B)

 Page 6


Mã hóa công khai ECC
Mô hình mã hóa dữ liệu ECC (Bên gửi B)

(x1, y1) = k x P
X2 = (x2, y2) = k × Q

C = Φ(Y, M)

f

Y

(x1, y1)

C
C

B ((E), P, QA, k)

 Page 7

Gửi đi

A



Mã hóa công khai ECC
Mô hình giải mã dữ liệu ECC (Bên nhận A)
 A nhận giá trị (x1, y1).
 A tính giá trị của điểm X2 = (x2, y2) = d × (x1, y1). Trong đó X2

là giá trị bí mật sẽ được sử dụng để tạo khóa giải mã thông
điệp.
 Sử dụng cùng một hàm tạo mặt nạ (mask function) như đã sử
dụng ở giai đoạn mã hóa, A tạo mặt nạ Y từ giá trị bí mật X2. Y
chính là khóa bí mật để giải mã.
 A giải mã thông điệp C để lấy thông điệp M ban đầu.
 M = Φ^-1(C, Y) = C Y (thông thường).

 Page 8


Mã hóa công khai ECC
Mô hình giải hóa dữ liệu ECC (Bên gửi B)

Φ^-1(C, Y)

(x1, y1) = k x P
f^(-1)
X2 = (x2, y2) = d x (x1, y1)

A ((E), P, QA, d)

 Page 9


Y

M


Mã hóa công khai ECC
Mô hình mã hóa dữ liệu ECC (Ví dụ)
 Tham số chung:
 (E)y 2

 x3  x  1

 P = (1, 1) thuộc (E)
 Bên A chọn:
 d = 2, đây là khóa riêng.
 QA = d x P = (-1, -1), đây là khóa công cộng.
 Mã hóa (bên B):
 QA = (-1, -1), P, (E). B chọn k=1
 (x1, y1) = k × P = (1, 1)
 X2 = (x2, y2) = kQA = 1(-1,-1) = (-1, -1)
 Y = X2 = (-1, -1)
 C = M Y = (1, -1) + (-1, -1) = (0, -1)

 Page 10


Mã hóa công khai ECC
Mô hình mã hóa dữ liệu ECC (Ví dụ)
 Giải mã (bên A):
 D=2

 (x1, y1) = (1, 1)
 C = (0, -1)
 (x2, y2) = d × (x1, y1) = 2 x (1, 1) = (-1, 1)
 Y = -X2 = -(-1, 1)
 M = Φ^-1(C, Y) = C Y = (0, -1) – (-1, 1) = (0, -1) + (-1, -1) = (1,

-1)

 Page 11


Mã hóa công khai ECC
Thời gian phá mã ECC (Lời giải bài toán ECDLP: Q=kP)
 C có thuật toán nào được xem là hiệu quả để giải quyết bài toán này. Để giải cần phải kiểm










tra tất cả các giá trị nguyên trên [2…n-2].
Nếu điểm P được chọn lựa cẩn thận với n rất lớn thì việc giải bài toán ECDLP xem như
không khả thi.
Các phương pháp giải bài toán ECDLP gồm:
The Pohlig-Hellman algorithm.
Shanks' baby-step-giant-step method.

Pollard's methods.
The Menezes-Okamoto-Vanstone (MOV) attack using the Weil pairing.
The Frey-Rueck attack using the Tate pairing.
The attacks on anomalous elliptic curves due to Semaev, Satoh-Araki and Smart.
Weil descent (for some special finite fields).

 Page 12


Mã hóa công khai ECC
Thời gian phá mã ECC (Lời giải bài toán ECDLP: Q=kP)
 Lời giải bài toán có độ phức tạp hàm mũ (khó)
 Số điểm rời rạc trên đường cong (điểm mà cả tọa độ X và Y là

nguyên) được gọi là bậc của đường cong N.
 Giả sử N là số nguyên tố n bit thì để tính k từ biểu thức trên
cần 2^(n/2) thao tác.
 Giả sử chiều dài n là 160 bits thì cần khoảng 2^80 thao tác.
 Giả sử Hacker có thể thao tác 1 tỉ thao tác trên giây thì C cần
khoảng 2^80/(10^9*365*24*60*60) ≈ 38 triệu năm.

 Page 13


Mã hóa công khai ECC
Ưu nhược điểm ECC
 Ưu:
 Một ưu điểm của ECC là khả năng bảo mật cao
 Kích thước khóa nhỏ dựa vào mức độ khó giải quyết của vấn đề ECDLP.
 Giảm kích thước tham số của hệ thống mã hóa.

 Giảm thời gian tạo khóa.
 Nhược:
 Khó chọn sử dụng các tham số đường cong.
 Khó chọn điểm quy ước chung
 Hầu hết các đường cong được đưa ra đều thất bại khi áp dụng vào thực tiễn

 Page 14


Mã hóa công khai ECC
Ứng dụng ECC
 Áp dụng cho các ứng dụng trên môi trường:
 Giới hạn về thông lượng truyền dữ liệu.
 Giới hạn về khả năng tính toán.
 Giới hạn về khả năng lưu trữ.
 PDA, điện thoại di động và thẻ thông minh (smart card).
 Mật mã trên đường cong Elliptic (ECC) thích hợp với các ứng dụng

nhúng vì việc cứng hóa cần ít tài nguyên phần cứng hơn.

 Page 15



×