TIỂU LUẬN kết THÚC môn học AN NINH MẠNG THÔNG TIN đề tài mật mã hóa khóa công khai sử dụng đường cong elliptic và ứng dụng

29 5 0
TIỂU LUẬN kết THÚC môn học AN NINH MẠNG THÔNG TIN đề tài  mật mã hóa khóa công khai sử dụng đường cong elliptic và ứng dụng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG TIỂU LUẬN KẾT THÚC MÔN HỌC AN NINH MẠNG THÔNG TIN Đề tài : Mật mã hóa khóa cơng khai sử dụng đường cong elliptic ứng dụng GIẢNG VIÊN: NHÓM: SINH VIÊN: Hà Nội – 06/2021 Bài thi cuối kỳ môn an ninh mạng Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng MỤC LỤC DANH MỤC HÌNH VẼ MỞ ĐẦU CHƯƠNG 1: LÝ THUYẾT VỀ ĐƯỜNG CONG ELLIPTIC 1.1 Định nghĩa, tính chất đường cong 1.1.1Địnhnghĩa 1.1.2 Tính chất CHƯƠNG 2: MẬT Mà HĨA KHĨA CƠNG KHAI SỬ DỤNG ĐƯỜNG CONG ELLIPTIC 2.1 Các tham số hệ mật mã hóa ECC 2.1.1 Đương cong eliptic trường nguyên tố hữu hạn Fp 2.1.1.1 Trường hữu hạn 2.1.1.2 Đường cong Elliptic trường Fp có dạng sau: 2.1.2 Tham số hệ mật mã ECC trường nhị phân hữu hạn CHƯƠNG 3: ƯU ĐIỂM & ỨNG DỤNG CỦA ECC 3.1 Ưu điểm EEC 3.2 So sánh ECDSA RSA CHƯƠNG 4: CHỮ KÝ SỐ SỬ DỤNG HỆ MẬT Mà ĐƯỜNG CONG ELLIPTIC 4.1 Tạo xác thực chữ ký số 4.1.1 Tạo chữ ký số 4.1.2 Xác Thực chữ ký số 4.2 Sơ đồ chữ ký số đường cong eliptic (ECDSA) 4.3 Tính bảo mật ECDSA 4.4 Ứng dụng ECC 4.4.1 Ứng dụng hệ mật mã hóa khóa cơng khai sử dụng đường cong eliptic ECDSA đồng tiền ảo Ethereum 4.4.1.1 Tạo khóa cơng khai: 4.4.1.2 Tạo chữ ký 4.4.1.3 Xác thực chữ ký 4.4.1.4 Tạo địa ví 4.4.2 Elliptic-curve Diffie–Hellman (ECDH) 4.4.3 Ứng dụng vào thiết bị có tài nguyên hạn chế: KẾT LUẬN TÀI LIỆU THAM KHẢO BẢNG PHÂN CÔNG CÔNG VIỆC Nhóm 16 Bài thi cuối kỳ môn an ninh mạng DANH MỤC HÌNH VẼ Nhóm 16 Bài thi cuối kỳ môn an ninh mạng MỞ ĐẦU Mật mã học vấn đề quan trọng lĩnh vực bảo mật an tồn thơng tin Trên giới, mật mã học đời từ thời La Mã cổ đại ngày nghiên cứu, phát triển đạt thành tựu to lớn Trong mật mã học, vấn đề bảo mật đôi với vấn đề xác thực thông tin, đặc biệt hệ thống mã hóa khóa cơng khai vấn đề xác thực vô quan trọng Để giải vấn đề người ta đưa cách giải hiệu quả, chữ ký số Với bùng nổ mạng Internet nay, mạng máy tính đóng vai trò thiết yếu lĩnh vực hoạt động xã hội, trở thành phương tiện điều hành hệ thống nhu cầu bảo mật thông tin đặt lên hàng đầu Việc sử dụng chữ ký số giải pháp hữu hiệu, ngày ứng dụng nhiều thực tế, không giới hạn ngành công nghệ thông tin, mật mã học mà áp dụng nhiều lĩnh vực khác ngân hàng, viễn thơng… Mật mã học khóa cơng khai tạo chữ ký số ứng dụng vào tài liệu Hệ mật mã hóa RSA – hệ mã hóa điển hình mật mã hóa cơng khai với hàm băm mật mã học chiều cơng cụ việc tạo chữ ký số điện tử Trong tiểu luận này, nhóm tập trung vào chữ ký số ECC ứng dụng Nội dung nghiên cứu chia làm phần: Lý thuyết đường cong elliptic Hệ mật mã ECC Ưu điểm ứng dụng ECC Chữ ký số hệ mật mã đường cong Nhóm 16 Bài thi cuối kỳ môn an ninh mạng CHƯƠNG 1: LÝ THUYẾT VỀ ĐƯỜNG CONG ELLIPTIC 1.1 Định nghĩa, tính chất đường cong 1.1.1 Định nghĩa Thơng thường, đường cong elliptic định nghĩa phương trình có dạng sau : y2=x3 +ax +b (1) có điều kiện : a3 +27 b2 ≠ Hình 1: Trường đồ thị đường cong elliptic 1.1.2 Tính chất Nếu hai điểm P1 (x1, y1) P2 (x2, y2) với x1 ≠ x2 nằm đường đường cong elliptic E, đường thẳng qua hai điểm P1 P2 cắt điểm P3(x3, y3) xác định thơng qua P1 P2 nằm đường cong E Tiếp tuyến đường cong điểm P(x, y) đường cong E cắt đường cong elliptic E điểm nằm đường E, điểm xác định thơng qua P Nhóm 16 Bài thi cuối kỳ môn an ninh mạng 1.1.2.1 Phép cộng đường cong elliptic Giả sử, ta có A(x1, y1) B(x2, y2) hai điểm thuộc đường cong E Nếu x1 = x2 y1 = - y2 ta có A + B = Ngược lại A + B = C(x3, y3) ∈ E đó: { x3= λ2−x1−x2 y3=λ ( x1−x3 )− y1 Với: λ= { y2− y1 x −x ,nếu A ≠ B 3x2 + a y1 ,nếu A=B Vậy A ≠ B thì: C =¿ Nếu A=B thì: {y =( C= )x( x1−x3 )−x1 x2 + a x3=( ) −2 x1 x2 −x1 x 21+ a x 2− x1 Hình 2: Ví dụ phép cộng đường cong Elliptic Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng Chú ý điểm (x3, y3), (x3,- y3) nằm đường cong E xét mặt hình học, điểm (x1, y1), (x2, y2), (x3,- y3) nằm đường thẳng 1.1.2.2 Phép nhân đường cong elliptic Phép∈ nhân số nguyên k với điểm P thuộc đường cong Elliptic E điểm Q (Q E) xác định cách cộng k lần điểm P: kP = P + P + … + P (k lần phép cộng điểm P) Vì G điểm thuộc đường cong Elliptic E với số ngun dương k ln dễ dàng xác định điểm Q = k x G Hình 3: Ví dụ phép nhân đường cong Elliptic Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng CHƯƠNG 2: MẬT Mà HĨA KHĨA CÔNG KHAI SỬ DỤNG ĐƯỜNG CONG ELLIPTIC Hệ mật mã công khai ECC hệ mật mã xây dựng sở toán logarit rời rạc phép nhân xét tập điểm thuộc đường cong Elliptic Hệ mật mã công khai ECC cung cấp đầy đủ dịch vụ an ninh: Mã hóa, xác thực, ký số trao đổi khóa 2.1 Các tham số hệ mật mã hóa ECC 2.1.1 Đương cong eliptic trường nguyên tố hữu hạn F p 2.1.1.1 Trường hữu hạn Đường cong elliptic xây dựng trường hữu hạn Có hai trường hữu hạn là: Trường hữu hạn Fq với q số nguyên tố Trường hữu hạn Fq với q = 2m (m số nguyên) Tùy thuộc vào trường hữu hạn Fq, với bậc q, tồn nhiều đường cong elliptic Do đó, với trường hữu hạn cố định có q phần tử q lớn, có nhiều lựa chọn nhóm đường cong elliptic 2.1.1.2 Đường cong Elliptic trường F p có dạng sau: Định nghĩa tham số hệ mật mã ECC trường nguyên tố hữu hạn F p bao gồm: T = (p, a, b, G, n, h) Trong đó: p: số nguyên tố lớn a, b: hệ số a, b ∈ F p, cho thỏa mãn điều kiện a2 +27 b2 ≢0 G: điểm sở thuộc E (F p) n: số nguyên thứ tự điểm sở G h: phần phụ đại số thỏa mãn h = #E(F p ¿/n với Số lượng điểm E(F p) Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng #E(F p) thỏa định lý Hasse: p+1−2 √ p≤ ¿ E ( F p )≤ p+1+2 √ p 2.1.2 Tham số hệ mật mã ECC trường nhị phân hữu hạn SECG định nghĩa tham số hệ mật mã ECC trường nhị phân hữu hạn F bao gồm tham số sau: m Y = (m,f(x),a,b,G,n,h) Trong đó: m: số nguyên∈ dương xác định trường nhị phân hữu hạnFm2 [log2 m] {163,233,239,283,409,571} f(x): đa thức bất khả quy, có bậc m đa thức sở biểu diễn trường Fm a,b: hệ số a,b ∈ m xác định đường cong elliptic E( m ) trường ( F2 m ): F2 F2 E: y + xy=x +a x + b G: điểm sở thuộc E(Fp) n: số nguyên tố thứ tự điểm sở G h: phần phụ đại số (cofactor) thỏa mãn h = #E(Fm2)/n với #E(Fm2) số điểm thuộc đường cong E(Fm2) Cùng với điểm O điểm vô cực Số lượng điểm E( F2m ) #E(F2m ) thỏa định lý Hasse: q+ 1−2 √q≤¿ E (F2m )≤ q+1+2 √q Trong q = 2m Ngồi ra, #E(F2m ) số chẵn 10 Nhóm 16 Bài thi cuối kỳ môn an ninh mạng CHƯƠNG 4: CHỮ KÝ SỐ SỬ DỤNG HỆ MẬT Mà ĐƯỜNG CONG ELLIPTIC 4.1 Tạo xác thực chữ ký số 4.1.1 Tạo chữ ký số Hình 6: Quy trình thực để tạo chữ ký số Quá trình tạo chữ ký số thực qua bước: Dữ liệu cần ký qua hàm băm để tạo thành giá trị băm (bản tóm lược) Giá trị băm sau mã hóa khóa bí mật người gửi, tạo thành chữ ký số Chữ ký số gắn vào liệu ban đầu, tạo thành tin ký số 15 Nhóm 16 Bài thi cuối kỳ môn an ninh mạng 4.1.2 Xác Thực chữ ký số Hình 7: Quy trình thực để xác thực chữ ký số Việc xác thực chữ ký số thực qua bước: Bản tin ký số tách thành hai phần: Dữ liệu chữ ký số Chữ ký số giải mã khóa cơng khai người gửi  Nếu chữ ký giải mà thành cơng tạo thành giá trị băm  Nếu giải mã chữ ký chứng tỏ tin không người gửi Phần liệu qua hàm băm tương tự phía người gửi tạo thành giá trị băm Giá trị băm liệu so sánh với giá trị băm thu trình giải mã chữ ký số  Hai giá trị trùng chứng tỏ tin gửi toàn vẹn  Hai giá trị khác chứng tỏ tin bị thay đổi 4.2 Sơ đồ chữ ký số đường cong eliptic (ECDSA) Để thiết lập sơ đồ chữ ký số ECDSA (Elliptic Curve Digital Signture Algorithm), tham số cần phải xác định là: đường cong E trường hữu hạn Fq với tham số p phù hợp điểm sở G E(Fq) (Generator point) 16 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng Sinh khóa: Chọn số ngẫu nhiên d khoảng [2, n - 1] làm khóa bí mật Tính Q = dG làm khóa cơng khai Ký rõ m: Chọn số ngẫu nhiên k, ≤ k ≤ n –1 Tính kG = (x1, y1) Tính r = x1 mod n Nếu r = 0, quay lại bước Tính k−1 mod n Tính s = k−1 (m + dr) mod n Nếu s = 0, quay lại bước Chữ ký thông điệp m (r, s) Kiểm tra chữ ký: Kiểm tra r s có số tự nhiên khoảng [2, n - 1] khơng Tính w = s−1 mod n Tính u1 = mw (mod n) u2 = rw (mod n) Tính X = u1G + u2Q = (xx, y y) Nếu X = phủ nhận chữ ký Ngược lại tính v = xx mod n Chữ ký chấp nhận v = r Chứng minh: Nếu chữ ký (r, s) m thì: s = k−1(m + dr) mod n k s−1 (m + dr) s−1 m + s−1 rd wm + wrd u1 + u2d (mod n) Vì vậy, u1G + u2G = (u1 + u2d)G = kG Suy v = r 4.3 Tính bảo mật ECDSA ECDSA cần có tính bảo mật cao để khẳng định tồn làm giả được, chống lại công vào tin ký Mục đích kẻ cơng giả mạo A tạo chữ ký hợp lệ tin M, sau có tin có chữ ký A phân tích 17 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng Khi thay thuật tốn RSA ECDSA, tốc độ thực thuật toán cải thiện đáng kể Việc thay đạt hiệu với việc cần dung lượng nhớ sử dụng thuật tốn RSA Các điều kiện an tồn cần thiết thuật toán ECDSA là: Bài toán logarit rời rạc đường cong eliptic E(F q) khó: điều kiện khơng thỏa mãn, ta cần tính logarit rời rạc với khóa cơng khai lấy khóa bí mật Hàm băn sử dụng phải là hàm băm chiều, tức khơng thể tính rõ m từ giá trị băm Hm Hàm băm sử dụng phải chống xung đột, tức tồn hai giá trị băm Hm 1=Hm (nếu m1 m2 khác nhau) Việc tạo k trình ngẫu nhiên khơng thể dự đốn Các cách cơng có ECDSA phân loại sau: Cách cơng tốn logarit rời rạc đường cong elliptic Cách công hàm băm Cách công khác 4.4 Ứng dụng ECC Trong thực tế, ECC ứng dụng nhiều cho ứng dụng bảo mật như: bảo mật tài liệu, thông tin liên lạc nội bộ, cung cấp chữ ký số dịch vụ nhắn tin bảo mật iMessage Apple hay Blackberry Message Blackberry Ngoài ra, ECC cịn ứng dụng việc trao đổi khóa thuật tốn Elliptic-curve Diffie–Hellman Thuật tốn mã hóa khóa công khai hệ đầu RSA sử dụng nhiều lĩnh vực, vậy, năm gần ECC phát triển nhanh đánh giá thuật toán thay cho RSA tương lai gần Hiệu suất tính tốn ECDSA nhanh vượt trội so với RSA, điều rõ ràng, chứng minh nhiều thực tế Ngay với phiên cũ OpenSSL khơng có tối ưu cho ECC, thời gian tính tốn để tạo tạo chữ ký ECDSA 18 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng với khóa 256-bit nhanh 20 lần so với chữ ký RSA với khóa 2048-bit Chính thế, ECC thuật tốn thích hợp để tích hợp vào thiết bị có tài nguyên hạn chế ECC có nhiều ứng dụng thực tế nay, ứng dụng phổ biến nhất, đưa ECC phát triển ứng dụng đồng tiền ảo 4.4.1 Ứng dụng hệ mật mã hóa khóa cơng khai sử dụng đường cong eliptic ECDSA đồng tiền ảo Ethereum Trong Ethereum (Bitcoin tương tự) đường cong Elliptic ứng dụng việc: Tạo địa ví Tạo chữ ký cho giao dịch Tiền ảo Ethereum sử dụng đường cong tiêu chuẩn secp256k1 Viện Tiêu chuẩn Kỹ thuật Quốc gia Mỹ (NIST) đặt Đường cong có cơng thức sau: y2 (mod p) = x3 + (mod p) Với p = 2256 – 232 – 29 – 28 – 27 – 26 – 25 – 24 – = 2256 – 232 – 997 Đây số nguyên tố lớn 4.4.1.1 Tạo khóa cơng khai: Đầu tiên, ta chọn số ngẫu nhiên d A làm khóa bí mật Số phải thỏa mãn nằm khoảng [2, 2256 – 1] Trên đường cong Elliptic ta chọn điểm sở G (generator point) Với Ethereum điểm G có giá trị: G = 04 79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DCE28D9 59F2815B 16F81798 483ADA77 26A3C465 5DA4FBFC 0E1108A8 FD17B448 A6855419 9C47D08F FB10D4B8 Theo tiêu chuẩn secp256k1 Lúc này, khóa cơng khai PU kết phép nhân: PU =dA × G 19 Nhóm 16 Bài thi cuối kỳ môn an ninh mạng Dựa vào tính chất đường cong Eliptic, chắn PU điểm đường cong 4.4.1.2 Tạo chữ ký Chữ ký Ethereum chữ ký thông thường, biểu diễn cặp số (r, s) Để tạo cặp (r, s) hệ thống phải chọn số ngẫu nhiên k, số phải khác với khóa bí mật người dùng Tiếp theo, hệ thống thực phép nhân k với điểm sở G (giống với trình tạo public key) để tạo một điểm P=k ×G Kết phép nhân điểm P(x, y) Giá trị r toạ độ x điểm P (vì độ bảo mật ECC cao nên cần giá trị x đủ độ an tồn cần thiết, khơng cần lấy giá trị y) Để tính giá trị s, đầu tiên, hệ thống cần phải đưa tin cần ký qua hàm băm, hàm băn sử dụng Ethereum hàm Keccak256 Giá trị sau băm tin ta đặt z Lúc này, s tính sau: s=k−1 ( z+ da × r )( mod p) 4.4.1.3 Xác thực chữ ký Để xác thực chữ ký có hợp lệ hay khơng, hệ thống cần tham số khóa cơng khai người gửi PU Việc xác thực thực cách tính: P=s−1 × z×G+ s−1 × r× PU Tọa độ điểm P tham số r chữ ký số chữ ký hợp lệ Chứng minh điều thực phần 4.4.1.4 Tạo địa ví Từ private key, địa ví Ethereum tạo sau Tạo public key từ private key giống bên ta trình bày Tính giá trị băm public key, giá trị 20 byte cuối public key sử dụng làm địa ví Hàm băm sử dụng Keccak-256 Ví dụ, khóa bí mật người dùng có giá trị (dạng hexa): PR=5 bff b2 a bc 0049382 ece 299 b fe1 fef 82 d b 517 d d 05 be d dc ae 3e1 aa 0047 Bằng phép nhân đường cong Elliptic, ta tính public key điểm PU có giá trị tọa độ (dạng hexa) là: 20 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng x :1E866 A 709 A 022 B A 56 C F 372E5869094 EF 4300E1 EAB A B2892734499305447 E y : FDBF 17E1C 96E5C CF 28 D ECE 1958 D FA 16130 D BF 93E9975 ABC AE 6450 DBA 49 ghép vào ta có public key: PU = 0x1E866A709A022B7A56C5F372E5869094EF4300E1EAB8A7B2892734499305447 EFDBF17E1C96E5C0CF28D4ECE1958D7FA16130D5BF93E9975ABC4AE6450DB A492 Áp dụng hàm băm vào public key, ta giá trị: H (PU )=97 f 104 de ced 45e912 ccf b1 c 11 eea 10 ced ea 3270 d 46 ceec ce1e53 d 6689 cd Từ giá trị Hash này, lấy 20 bytes cuối cùng, ta có địa ví là: xc 11 eea 10 ced ea 3270 d 46 ceec ce 1e53 d 6689 cd 4.4.1.5 Ký giao dịch Một raw transaction Ethereum trông sau: { from: '0x937CDc3a7273269Fe43967E785D9e24D3C48C164', gas: '0x3d0900', gasPrice: 10000000000, hash: '0x228c53215e5ad0f9d6114a4f4adeb8e5359fbee1283aacb7fedb2ab1b212871b', data: '0x60fe47b100000000000000000000000000000000000000000000000000000000000 00003', nonce: 34, to: '0x6b4A7a46ad065b5fb142DEe92E9F4546982510fD', value: '0x', } 21 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng Sau ký, tin broadcast lên mạng có nội dung sau: { blockHash: '0x7905dc70c9a0196fd2a1999568506026e5e4027c7fac88fd3b841df213c7918d', blockNumber: 7719658, from: '0x937CDc3a7273269Fe43967E785D9e24D3C48C164', gas: '0x3d0900', gasPrice: '10000000000', hash: '0x228c53215e5ad0f9d6114a4f4adeb8e5359fbee1283aacb7fedb2ab1b212871b', input: '0x60fe47b100000000000000000000000000000000000000000000000000000000000 00003', nonce: 34, r: '0x3dee14909e26ec8758cca4b386ec582cac5100767776454eec94343ac6f2de46', s: '0x68869c7b5e4b4caa6b602e29f0787ae70a37833cc681c9463b139f30a2fe5de5', to: '0x6b4A7a46ad065b5fb142DEe92E9F4546982510fD', transactionIndex: 2, v: '0x29', value: '0', }; Ta để ý raw transaction cũ thêm trường r s, chữ ký số tin 22 Nhóm 16 Bài thi cuối kỳ môn an ninh mạng Bằng chữ ký số này, tất máy khác hệ thống dễ dàng xác nhận tin ký bởi: 0x937CDc3a7273269Fe43967E785D9e24D3C48C164 4.4.2 Elliptic-curve Diffie–Hellman (ECDH) Thuật toán Diffie-Hellman thuật toán trao đổi khóa sử dụng lĩnh vực mật mã học Thuật tốn trao đổi khóa cho phép hai bên tham gia giao tiếp thiết lập khóa bí mật dùng chung để mã hóa liệu đường truyền hai bên cách an toàn mà khơng cần đến việc thỏa thuận khóa bí mật trước hai bên tham gia trao đổi Khóa bí mật tạo sau trao đổi khóa dùng để mã hóa liệu phương pháp mã hóa khóa đối xứng Elliptic-curve Diffie–Hellman (ECDH) biến thể cải tiến thuật toán Diffie–Hellman truyền thống, thuật toán cho phép hai bên tham gia trao đổi, bên có cặp khóa xây dựng đường cong elliptic, xây dưng bí mật chung hai bên kênh thông tin không an tồn Bí mật sử dụng làm khóa làm sở để xây dựng khóa khác Sau đó, khóa mã hóa thơng tin trao đổi hai bên phương pháp mã hóa khóa đối xứng Việc thiết lập bí mật chung hai bên thực sau: Giả sử, Alice muốn thiết lập bí mật chung với Bob, họ khơng có kênh truyền an tồn, thơng tin qua kênh truyền họ bị nghe trộm Các tham số đường cong Elliptic bên thỏa thuận trước kênh khơng an tồn Mỗi bên tạo cặp khóa phù hợp cho dựa đường cong elliptic, bao gồm khóa riêng d khóa cơng khai Q = dG Cách tạo khóa tương tự cách tạo khóa chữ ký số trình bày phần trước Cặp khóa Alice ký hiệu (d A ,QA {¿(d{ ¿{ A }},Q{ ¿ { A }})}) Bob (d B,QB) Q A QB Alice Bob công khai lên kênh truyền Hai bên nhận khóa cơng khai Alice tính điểm K1=dA QB=(xK , yK ), Bob tính điểm K2=dB QA =( xK , yK ) Điểm K1 K2 trùng nhau, giá trị x tọa độ lấy làm bí mật chung hai bên Thơng thường, giao thức tiêu chuẩn hóa dựa ECDH dựa 23 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng x để tính tốn khóa bí mật để trao đổi thơng tin Hai điểm K1 K2 trùng bởi: d A QB =d A dB G=dB d A G=d B QA Chỉ có khóa cơng khai Alice tiết lộ Cịn khóa riêng Alice biết, khơng bên xác định khóa riêng Alice trừ họ giải toán logarit rời rạc đường cong eliptic Với Bob, việc bảo mật thực tương tự Do đó, khơng tính tốn bí mật chung hai bên, trừ bên thứ giải tồn logarit rời rạc đường cong elliptic 4.4.3 Ứng dụng vào thiết bị có tài nguyên hạn chế: Với ưu điểm thuật tốn ECDSA với độ dài khóa thấp (tức nhớ dùng để lưu thông tin hơn) giữ độ an tồn cao (ví dụ với độ dài khóa 160 bit tương đương với khóa có độ dài 1024 bit thuật tốn RSA), việc tính tốn với tốc độ tính tốn cao thuật tốn thực tính tốn phép tính theo đường cong E với tập giá trị E(Fq) trường hữu hạn Fq Chính vậy, thuật tốn ECDSA cho thích hợp cho việc thực ký xác thực thiết bị có tài ngun hạn chế cơng nghệ NFC (Near Field Communication), RFID (Radio Frequency Identification) hay IoT (Internet of Things), nơi mà việc truyền thông khơng bó buộc thực thể mạng trở nên xác thực an toàn Hệ mật mã hóa khóa cơng khai ECC dùng lược đồ khóa cơng khai hiệu cho thiết bị xử lý có tài nguyên hạn chế u cầu tài ngun so với thuật toán tiếng RSA Với ECDSA thiết bị thụ động (như thẻ RFID) cần phải xác thực dễ dàng thực thuật tốn Trong thực tế, thẻ thụ động có chứa mã xác thực nhớ riêng với tài nguyên hạn chế phải thực việc ký để xác thực với trung tâm xác thực Đầu tiên, đọc nhận chứng từ thẻ xác minh giá trị khóa cơng khai Sau đó, gửi chuỗi ngẫu nhiên đến thẻ Thẻ sử dụng khóa riêng với thuật tốn ECDSA để ký lên tin sau gửi lại đọc để xác thực quyền đăng nhập thẻ Các bước để xây dựng thực thuật tốn ECDSA thiết bị có 24 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng tài ngun hạn chế trình bày sau: 4.4.3.1 Lựa chọn tham số cho hệ thống: ECDSA thực việc sử dụng tham số đường cong elliptic khác Nhưng thuật tốn chữ ký ECDSA lại có hai lựa chọn trường hữu hạn cho việc tính tốn phép tính trường hữu hạn ngun tố F p (p số nguyên tố > 2) trường nhị phân mở rộng F2m (m số nguyên) Để áp dụng thiết bị có tài ngun hạn chế phép tính số học yếu tố ảnh hưởng đến lực yêu cầu thiết bị Chính vậy, để áp dụng thiết bị phép tốn nên thực trường nguyên tố Fp (q = p); trường ta cần lưu tham số ECDSA sử dụng trường nhị phân mở rộng ta cịn phải tính tốn thêm phép tốn đa thức mở rộng trường Như thế, số thành phần phần cứng số học cần thiết tối ưu Do yêu cầu thuật toán ECDSA phải hoạt động thiết bị có tài nguyên hạn chế lại phải có độ an tồn cao việc xác thực bảo mật Vì vậy, để đạt yêu cầu này, tham số đường cong với kích thước nguyên tố nhỏ chọn tiêu chuẩn NIST-P192 4.4.3.2 Thực thuật toán Thuật toán xác thực ký sử dụng ECDSA mô tả mục Ta thấy, việc khó khăn việc thực thuật tốn việc thực phép tính đường cong elliptic Chính vậy, cần có phương pháp áp dụng để làm tăng tốc độ tính tốn thuật toán Gọi E đường cong elliptic Fp Một điểm P nhân vơ hướng sau: k kP= Σ P i=1 Làm thực tính kP cách hiệu vấn đề nghiên cứu nhiều để thực ECC Như ta biết, đường cong 25 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng elliptic có hai phép tốn dùng phép cộng phép nhân trình bày chương trước Để thực đơn giản hóa phép tốn ta thực sau: Tách k thành số nhị phân k = (kt – 1, …, k1, k0), ki {0,1} Đặt Q = Cho i chạy từ t – đến 0: Q=2Q Nếu ki = Q = Q + P Kết ta thu Q=kP Thuật tốn giúp tính tốn thiết bị nhỏ nhanh nhiều 26 Nhóm 16 Bài thi cuối kỳ môn an ninh mạng KẾT LUẬN Sau đời Diffie-Hellman tảng tuyệt vời cho khả mã hóa cơng khai ,có thể kể đến tiêu biểu thuật tốn RSA.Nhờ người sử dụng cách ký hiệu cho thân ,cái gọi chữ ký số Đây điều tiên cần thiết việc thực ký xác thực thuật toán chữ ký số Hệ mật đường cong elliptic phát biện pháp sinh khóa mang tính chất đột biến sau RSA Thuật toán chữ ký số đường cong elliptic cho giải pháp hiệu an tồn, với kích thước khóa nhỏ thuật tốn cho mức an tồn cao thuật tốn khác có kích thước khóa lớn Với việc sử dụng tài nguyên đem lại độ an toàn cao, ECDSA cho thuật tốn thích hợp để áp dụng thiết bị có tài nguyên hạn chế Tiểu luận đưa lược đồ cho việc áp dụng thuật toán ECDSA thiết bị Theo đó,tiểu luận khuyến nghị tập trung vào tham số trường hữu hạn (nên sử dụng trường hữu hạn Fp p số nguyên tố lớn 2), phương pháp tính nhằm tăng tốc độ phép tính kP thiết bị việc thực phân tách tham số k thành chuỗi số nhị phân áp dụng công thức cộng nhân đôi điểm đường cong elliptic 27 Nhóm 16 Bài thi cuối kỳ môn an ninh mạng TÀI LIỆU THAM KHẢO [1] Al Imem Ali, Comparison and evaluation of digital signature schemes employed in ndn network, International Journal of Embedded systems and Applications(IJESA) Vol.5, No.2, June 2015 [2] Cameron F Kerry, Patrick D Gallagher, “Digital Signature Standard”, Federal information processing standards publication, July 2013 [3] Don Johnson, Alfred Menezes, Scott Vanstone, “The Elliptic Curve Digital Signature Algorithm”, International Journal of Information Security, Vol 1, issue 1, pp 36-63 [4] Đỗ Xuân Bình, “Chữ ký số, chứng số sở hạ tầng khóa cơng khai – Các vấn đề kỹ thuật ứng dụng”, Nhà xuất vản bưu điện, 12 – 2007 [5] https://en.wikipedia.org/wiki/Elliptic-curve_Diffie%E2%80%93Hellman [6] Man Young Rhee, “Internet Security Cryptographic Principles, Algorithms and Protocols”, John Wiley and Sons, 2003 [7] N Mistry, An Introduction to Bitcoin, Elliptic Curves and the Mathematics of ECDSA 28 Nhóm 16 Bài thi cuối kỳ mơn an ninh mạng BẢNG PHÂN CƠNG CƠNG VIỆC STT 29 Nhóm 16 ... bên có cặp khóa xây dựng đường cong elliptic, xây dưng bí mật chung hai bên kênh thơng tin khơng an tồn Bí mật sử dụng làm khóa làm sở để xây dựng khóa khác Sau đó, khóa mã hóa thơng tin trao đổi... hợp vào thiết bị có tài nguyên hạn chế ECC có nhiều ứng dụng thực tế nay, ứng dụng phổ biến nhất, đưa ECC phát triển ứng dụng đồng tiền ảo 4.4.1 Ứng dụng hệ mật mã hóa khóa cơng khai sử dụng đường. .. ngày ứng dụng nhiều thực tế, không giới hạn ngành công nghệ thơng tin, mật mã học mà cịn áp dụng nhiều lĩnh vực khác ngân hàng, viễn thông? ?? Mật mã học khóa cơng khai tạo chữ ký số ứng dụng vào tài

Ngày đăng: 17/01/2022, 06:38

Tài liệu cùng người dùng

Tài liệu liên quan