Bài tập lớn môn An Toàn Thông Tin: Hệ mật mã khóa công khai

21 18 0
  • Loading ...
1/21 trang

Thông tin tài liệu

Ngày đăng: 15/03/2019, 10:56

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CNTT & TRUYỀN THƠNG  MƠN: AN TỒN THƠNG TIN ĐỀ TÀI: HỆ MẬT KHĨA CƠNG KHAI Giảng viên hướng dẫn : PGS.TS Đặng Văn Chuyết Sinh viên thực : Phạm Việt Dũng Lớp : 18BMMT học viên : CB180193 Mục lục Khái niệm 1.1 Vấn đề sử dụng phân phối khóa 1.2 Các yêu cầu loại hệ PKC 1.3 Các mơ hình sử dụng PKC 1.4 Cấu trúc PKC 1.5 Một số hệ mật bất đối xứng thông dụng Hệ knapsack 2.1 Bài toán xếp ba lô 2.2 Cách xây dựng hệ knapsack Ưu nhược điểm hệ mật khóa cơng khai 3.1 Ưu điểm 3.2 Nhược điểm Hệ mật RSA 4.1 Định lý RSA 4.2 Thuật giải RSA Hệ Difie – Henman Hệ El Gamal (1985) 6.1 hóa 6.2 Giải Khái niệm • • • Mật khóa cơng khai (Public key) hay gọi mật bất đối xứng mơ hình hóa chiều sử dụng cặp khóa khóa riêng (Private key) khóa cơng khai (Public key) Khóa cơng khai dùng để hóa, khóa riêng dùng để giải Hệ thống mật khóa cơng khai sử dụng với mục đích: hóa: Giữ bí mật thơng tin có người có khóamật giải Tạo chữ ký số: Cho phép kiểm tra văn có phải tạo với khóamật hay khơng Thỏa thuận khóa: Cho phép thiết lập khóa dùng để trao đổi thơng tin mật bên Các hệ mật khóa cơng khai biết đến nhiều hệ RSA Trong hệ mật khóa cơng khai hệ RSA cộng đồng Quốc tế chấp nhận ứng dụng rộng rãi 1.1 Vấn đề sử dụng phân phối khóaHệ mật bất đối xứng khắc phục tính chất phức tạp việc phân phối khóa hệ mật đối xứng cho phép giao tiếp đối tượng cách uyển chuyển , dễ dàng • Sử dụng hai khoá Kp (public key ) Ks (private key ) để giải mật • - Có hai mode làm việc : Bảo mật : public key → giải mật private key Xác thực : private key → giải mật public key 1.2 Các yêu cầu loại hệ PKC • • • • • Việc sinh KP, KS phải dễ dàng Việc tính E(KP, M) dễ dàng Nếu có C = E(KP, M) KS dễ ràng giải mật Nếu biết KP việc dò tìm KS khó Rất khó tìm rõ từ khơng biết khóa 1.3 Các mơ hình sử dụng PKC 1.3.1 Mơ hình bảo mật Mơ hình sử dụng hệ hóa cơng khai PKC 1.3.2 Mơ hình xác thực Mơ hình sử dụng hệ hóa cơng khai PKC 1.4 Cấu trúc PKC • • PKC xây dựng hàm chiều (one way functions) • Trong hệ PKC sử dụng “trapdoor” giúp cho việc tìm x : y = f(x) dễ dàng Hàm (trapdoor function): hàm chiều việc tính f-1 nhanh biết “trapdoor” f : X → Y hàm biết x є X → dễ dàng tính y = f(x) Nhưng với y є Y việc tìm x є X: y = f(x), có nghĩa tìm hàm ngược f-1 khó 1.5 Một số hệ mật bất đối xứng thơng dụng • • • Hệ Knapsack • ECC The Elliptic Curve Cryptosystem (ECC) sử dụng thiết bị nhỏ , thơng minh “ cell phones” “wireless” • El Gamal thuật giả dùng để truyền “digital signatures” “ key exchanges”(Cũng tương tự Diffie-Hellman “ The El Gamal gọi DSA RSA ( Rivest, Adi Shamir, and Leonard Adleman) RSA dùng để bảo mật tạo “digital signatures” Diffie-Hellman “Diffie-Hellman key exchange” sử dụng để truyền khóa mật kênh cơng khai , khơng dùng để hố thơng điệp Hệ knapsack 2.1 Bài tốn xếp ba lơ • Cho M, N A1, A2, , AN số nguyên dương Hỏi có tồn véc tơ nhị phân x=(x1, x2,…, xN) cho • • • • • Vectơ A = (A1, A2, , AN) gọi vectơ “xếp balơ” • • Khi tốn balo phát biểu sau: Vectơ X = (x1, x2, …, xN) vectơ nghiệm Đây tốn khó có thời gian hàm mũ O(2N) Nếu S dãy siêu tăng tốn giải với thời gian tuyến tính O N Vector siêu tăng : Dãy A=(Ai ) gọi siêu tăng với Ai>ΣAj (j=1, i-1) (tức phần tử đứng sau lớn tổng phần tử đứng trước Cho M, N A’=(A’1, A’2, , A’N ) dãy siêu tăng Hỏi có tồn véc tơ nhị phân x=(x 1, x2,…, xN) cho: M=Σi=1xi Ai (i=1 N)) 2.2 Cách xây dựng hệ knapsack • • • • • • 1.Chọn vecto siêu tăng A’ = (a’1, a’2, , a’N), • 7.Giải mã: Tính C’ = C * u-1 mod M sau giải tốn xếp ba lơ 0/1 với A’, C’ từ tìm được: P = (x1, x2, , xN) Chọn M > * a’N, chọn ngẫu nhiên u < M : (u, M) = 3.Xây dựng Vecto S = (s1, s2, , sN) với si = (a’i * u) mod M 4.Khóa: KP = (S, M), KS = (u, u-1) 5.Không gian rõ : dãy N bit : P = (x1, x2, , xN) 6.Mã hóa : Ưu nhược điểm hệ mật khóa cơng khai 3.1 Ưu điểm • Giải vấn đề phân phối khóa trao đổi khóa thuận lợi 3.2 Nhươc điểm • Tốc độ hóa/ giải chậm (chậm khoảng ngàn lần so với mật khóa đối xứng DES chẳng hạn) phải sử dụng đến số nguyên tố lớn trường hữu hạn 4 Hệ mật RSA • Hệ mật RSA Rivest, Shamir, Adleman tìm ra, cơng bố lần vào tháng năm 1977 tạp chí Scientific American • Hệ mật RSA sử dụng rộng rãi thực tiễn đặc biệt lĩnh vực bảo mật xác thực liệu số 4.1 Định lý RSA • • • • Cho p,q hai SNT phân biệt N=pq Có hàm φ = φ (n)=(p-1)(q-1), 1≤e≤ φ, (e, φ)=1, Tính : d = e-1mod φ, 1100 chữ số) • • Cặp (e ,N) khóa cơng khai (Kp ) Cho ngẫu nhiên số eϵ]1, φ[ thoả (e, φ)=1 Sử dụng thuật giải Bezout tính số nghịch đảo d ϵ]1, φ[ = e -1 mod φ ; ed ≡ mod φ Cặp (d,N) khóa nhân – khóamật (Ks ) 4.2.2 hóa giải • - hóa • - Tính c: c = memodN, c – văn mật (ciphertext) Tạo cặp khóa cơng khai (e,N), thơng điệp rõ dạng số nguyên dương m ; mϵ[0,N[, m – văn rõ (plaintext) Giải mật Phục hồi lại văn rõ m từ văn bảo mật c, ta sử dụng cặp khóa cá nhân (d,N) để tính m; m = c d modN 4.2.3 Độ an tồn RSA • • • • Độ an tồn RSA phụ thuộc vào độ khó việc tính φ (N) Muốn , cần phân tích N thừa số nguyên tố Thuật toán Brent-Pollard thuật tốn phân tích số ngun tố hiệu Việc sử dụng RSA cần tới số nguyên tố lớn nên phải có sở liệu số nguyên tố Tốc độ RSA chậm phải tính số lượng lớn phép nhân Phép nhân số n bit cần thực O(n 2) phép tính bit Thuật toán nhân số nguyên Schonhage – Strassen cho phép nhân số với độ phức tạp O(n log n) 4.2.4 Một số vấn đề xung quanh thuật tốn RSA • • • Vấn đề chọn p q: Vấn đề tốc độ thuật toán cài đặt Vấn đề tìm số nguyên tố lớn 4.2.5 Điểm yếu giải thuật RSA • Trong hệ RSA, tất thông tin che giấu tốt, tức khoá tốt làm rõ thay đổi hoàn toàn 4.2.6 Ứng dụng RSA • • Bảo mật thơng điệp : Sử dụng khố cơng khai bên nhận để , khoá riêng bên nhận để giải Xác thực thơng điệp : Dùng khố cá nhân bên gửi để , khố cơng khai bên gửi để giải 4.2.7 Phạm vi ứng dụng RSA • • • • • Mạng hành cơng , E-Business , E-Government Kinh doanh thương mại điện tử : Thanh toán điện tử,bảo mật liệu điện tử,chứng thực chữ ký điện tử Đào tạo ,thi cử từ xa,bảo mật liệu tuyển sinh Ngân hàng thương mại : Giao dịch, toán qua mạng Xuất nhập cảnh 5 Hệ Difie - Henman • • - Được sử dụng chế phân phối khóa hệ mật đối xứng Tạo khóa Ta có p số nguyên tố (p є Zp) Giả sử α ϵ Zp số nguyên thuỷ (primitive element ) Các giá trị p α công bố công khai mạng UID thông tin định danh hợp lệ cho user U mạng (“tên”,” e-mail address”,” telephone number”…) Từng “user U,V” có số mũ au ,aV với (0 ≤au ,aV ≤ p-2), tính giá trị bU ,bV công khai tương ứng : bU = αau modp bV = αav modp • - Khố chung K u,v tính Ku,v = αau ,av modp Thuật giải Input : p SNT α primitive element ϵ Z * p → truyền công khai mạng Từng “user U,V” có số mũ au ,av với : (0 ≤ au , av ≤ p-2), Output: Hai bên tính bu = αau mod p bv =αav mod p Hai bên gửi cho : bu bv Bên V tính : KU,V=αau ,av mod p = buav mod p Dùng bU từ U với giá trị mật au Bên U tính : KU,V=αau ,av mod p = bvau mod p Dùng bV gửi từ V với giá trị mật a v Hệ El Gamal • • • • • • Là biến thể sơ đồ Diffie – Hellman Tính an tồn dựa tính khó giải tốn logarit rời rạc Nhược điểm chính: kích thước thơng tin sau hóa tăng gấp đơi so với thơng tin gốc Giống hệ khóa cơng khai khác , El Gamal làm việc với tốc độ thấp (việc với số nguyên lớn) Cần nhớ lớn dành cho việc lưu trữ khóa Với hệ El Gamal cần gấp đôi nhớ để chứa so với hệ khác XIN TRÂN TRỌNG CẢM ƠN! ... hệ mật mã khóa cơng khai 3.1 Ưu điểm 3.2 Nhược điểm Hệ mật mã RSA 4.1 Định lý RSA 4.2 Thuật giải RSA Hệ mã Difie – Henman Hệ mã El Gamal (1985) 6.1 Mã hóa 6.2 Giải mã Khái niệm • • • Mật mã khóa. .. mật hay khơng Thỏa thuận khóa: Cho phép thiết lập khóa dùng để trao đổi thông tin mật bên Các hệ mật mã khóa cơng khai biết đến nhiều hệ RSA Trong hệ mật mã khóa cơng khai hệ RSA cộng đồng Quốc... để giải mã Hệ thống mật mã khóa cơng khai sử dụng với mục đích: Mã hóa: Giữ bí mật thơng tin có người có khóa bí mật giải mã Tạo chữ ký số: Cho phép kiểm tra văn có phải tạo với khóa bí mật hay
- Xem thêm -

Xem thêm: Bài tập lớn môn An Toàn Thông Tin: Hệ mật mã khóa công khai , Bài tập lớn môn An Toàn Thông Tin: Hệ mật mã khóa công khai , Hệ mật mã RSA

Từ khóa liên quan

Gợi ý tài liệu liên quan cho bạn

Nhận lời giải ngay chưa đến 10 phút Đăng bài tập ngay