Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 18 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
18
Dung lượng
1,4 MB
Nội dung
ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA TOÁN – CƠ – TIN HỌC BÁO CÁO CUỐI KỲ HỌC PHẦN: MẬT MÃ VÀ AN TỒN THƠNG TIN Bài thu hoạch chuỗi giảng hội thảo Conference on Blockchain Computing 2022 Sinh viên thực hiện: Lê Đình Phúc - 19000463 Giảng viên: PGS.TS Phó Đức Tài Mục lục I Đường cong Eliptic lược đồ chữ ký số ECDSA Đường cong Eliptic a Định nghĩa b Phép cộng đường cong Eliptic (E) c Một số kết đường cong Eliptic d Một vài tốn khó Lược đồ chữ ký số ECDSA .7 II Hash functions; Zero-knowledge proof .9 Hàm băm mật mã a Định nghĩa b Cách công hàm băm Zero-knowledge proof (ZKP) blockchain 10 a Định nghĩa 10 b.Ví dụ ZKP 10 III Algorithms for Decentralized Finance 12 Bonding Curve .13 Automated Maket Maker .14 Mở đầu Giới thiệu mật mã Mật mã xây dựng hình thành từ lâu trước để phục vụ nhu cầu đảm bảo an tồn thơng tin Và để đảm bảo an tồn, người mã hóa phải cách mã hóa thơng tin Mặt khác, ln có đối tượng muốn phá giải mật mã với mục đích chiếm đoạt thơng tin gọi người phá mã Quá trình mật mã phát triển đối kháng người mã hóa người phá mã bên muốn đảm bảo an tồn thơng tin bên cịn lại muốn phá giải mật mã Ngày nay, xã hội công nghệ phát triển tạo tập liệu thông tin khổng lồ Điều kéo theo kẻ muốn theo dõi, truy cập ăn cắp thông tin tập liệu khổng lồ Hậu nguy tổn hại bí mật cá nhân tập thể Từ đó, ta thấy tầm quan trọng mã hóa thơng tin việc đảm bảo an tồn thơng tin cá nhân tập thể Một số hệ mật mã - Hệ mật mã khóa bí mật (hệ mã đối xứng) - Hệ mật mã khóa cơng khai (hệ mã bất đối xứng) - Hệ mật mã hộp điện tử - … 2.1 Hệ mã khóa cơng khai Mật mã hóa khóa cơng khai dạng mật mã hóa cho phép người sử dụng trao đổi thông tin mật mà không cần phải trao đổi khóa chung bí mật trước Điều thực cách sử dụng cặp khóa có quan hệ tốn học với khóa cơng khai khóa cá nhân (hay khóa bí mật) Mỗi người có khóa (p;e) đó, p khóa cơng khai, e khóa bí mật Người gửi (p1; e1) người nhận (p2; e2) Người gửi dùng p2 để mã hóa người nhận dùng e2 để giải mã 2.2 Lược đồ chữ ký số Lược đồ chữ ký số phương thức để cung cấp tính xác thực cho văn tài liệu Trong đó, người gửi dùng e1 để kí, người nhận dùng p1 để kiểm tra chữ ký Một số nhóm sử dụng - Vành số nguyên n: Hệ mã RSA - Nhóm nhân trường hữu hạn Fq: chữ ký số DSA, Trao đổi khóa DH, - Nhóm điểm đường cong Elictic: chữ ký số ECDSA, trao đổi khóa ECDH,… I Đường cong Eliptic lược đồ chữ ký số ECDSA Đường cong Eliptic a Định nghĩa Đường cong Eliptic (E) định nghĩa trường K cho phương trình: y2 = x3 + ax + b a,b K thỏa mãn 4a + 27b2 ≠ - Đường cong gọi đường cong eliptic dạng Weierstrass ngắn - Tập điểm K – hữu tỉ E tập E(K) = {(x, y) KxK : y2 = x3 + ax + b} {O} Trong đó, O: Điểm vơ cực - Thông thường, trường K trường C, R, Q trường hữu hạn K = Fq với q = pm Trong đó, p số nguyên tố, m ≥ số nguyên dương Khi m = => K = Fq Ví dụ: Xét E trường hữu hạn ta có: 1) f(x) = y2 = x3 – x 2) f(x) = y2 = x3 + b Phép cộng đường cong Eliptic (E) Phép cộng đường cong E sử dụng phương pháp “ tiếp tuyến dây cung” Để tính tổng (P+Q), ta làm sau: - Vẽ đường thẳng qua P, Q - Tìm R giao điểm PQ với đường cong E - Từ R lấy đối xứng qua Ox R’ - R’ điểm P+Q - Một vài trường hợp khác: Giả sử P = (x1, y1), Q = (x2, y2) - Trường hợp PQ song song với Oy khơng có giao điểm để xác định R Khi đó, lấy R’ = O (điểm vô cực) (P, Q E(K)) - Trường hợp đường thẳng PQ tiếp tuyến với đường cong E P Khi đó, giao điểm thứ R hay P R Suy ra, R’ = 2P - Trường hợp P, Q phân biệt, đường PQ cắt đường cong E Q Khi đó, Q R Suy ra, R’ = P + Q c Một số kết đường cong Eliptic Xét nhóm điểm E, đường cong E Fq: - Định lý Hasse: #E(Fq) = q + – t, |t| ≤ Giá trị t gọi vết Frobenius đường cong Eliptic E - Thuật tốn Schoof: #E(Fq) tính thời gian đa thức (Được đưa Rene’ Schoof vào năm 1985) - Thuật toán SEA cải tiến Schoof (SEA viết tắt tên Schoof, Elkies Atkin) o P E(Fq) gọi điểm n-xoắn (n – torsion point) np = o Ký hiệu: E[n] tập gồm tất điểm n E o Nếu gcd(n, q) = 1, E[n] Zn Zn o Vì độ dài bit > 200 thuật tốn Schoof khơng kết ( chạy lâu data lớn) nên thông thường, người ta sử dụng độ dài bit x < 192 bit o Thuật tốn SEA có hiệu trường vô hạn d Một vài tốn khó - Logarit rời rạc E (ECDLP) - ECCDH - ECDDH Đối với ECDLP: Các thuật toán giải ECDLP có độ phức tạp O(): Baby step giant step Pollard-Rho số cải tiến thuật tốn index-Calculus Tính khó giải phụ thuộc vào kích thước E nhóm điểm: Mong muốn #E(K) = h.n , với h ≤ 10 n số nguyên tố (tránh công Pohlig-Hellman) Lưu ý: o Không sử dụng đường cong E(Fpm) với m > p có kích thước nhỏ trung bình o Chọn n cho không chia hết cho q - với nhỏ để tránh công MOV o Không sử dụng đường cong với #E(K) = |K| (tránh đường cong yếu) o Tính #E(K): sử dụng Schoof SEA Lược đồ chữ ký số ECDSA - Quan tâm đến tham số miền - Các tham số miền tham số C khai tất người dùng hệ thống đăng ký sử dụng chung - Các tham số miền lược đồ chữ ký số ECDSA gồm: q = pm : p số nguyên tố lớn, m ≥ định nghĩa trường hữu hạn Fq Đường cong E : y2 = x3 + ax + b đường cong Eliptic định nghĩa trường Fq G = (xG, yG): điểm đường cong E n : cấp điểm G, số nguyên tố lớn - hàm băm H thống sử dụng Để đảm bảo an tồn lược đồ cần thỏa mãn: #E(Fq) = h.n, n số nguyên tố thỏa mãn n > 2160 n > 4; h số nguyên tố nhỏ, h ≤ 10 #E(Fq) ≠ q (Tránh công anomalous) n phải thỏa mãn điều kiện cho không chia hết (q - 1) với nhỏ, thường lấy < 100, < 106 m q = m phải số nguyên tố o Hàm băm H phải hàm băm an tồn Các thuật tốn tạo số ngẫu nhiên phải đảm bảo an tồn So sánh kích thước hệ mã: Khóa đối xứng < ECA