Xem mẫu

  1. Đề tài thảo luận nhóm HỆ THỐNG MẬT MÃ HÓA KHÓA CÔNG KHAI RSA Nhóm 7: 1. Huỳnh Thị Bé Huyền 2. Hoàng Yến Nhi 3. Dương Trần Đan Thư 4. Phạm Thị Trang 5. Nguyễn Ngọc Bảo Trân I. Giới thiệu Mô hình trao đổi thông tin qua mạng theo cách thông thường Mô hình trao đổi thông tin theo phương pháp mã hóa Tại sao phải mã hóa thông tin? Mã hóa chủ yếu để tránh những cái nhìn soi mói của những người tò mò tọc mạch, nói chung là bạn không muốn thông tin của mình lộ ra ngoài, tăng tính bảo mật. Chỉ có người gửi và người nhận mới đọc được thông tin. II. Hệ thống mã hóa RSA 1. Giới thiệu a) Lịch sử Thuật toán được Ron Rivest, Adi Shamir và Len Adleman mô tả lần đầu vào năm 1977 tại Học viện Công nghệ Massachusetts (MIT). Tên của thuật toán lấy từ 3 chữ cái đầu của tên 3 tác giả (RSA).Thuật toán RSA được MIT đăng ký bằng sáng chế tại Hoa Kỳ vào năm 1983 (Số đăng ký 4.405.829) b) Sơ lược về hệ thống mã hóa khóa công khai RSA RSA được sử dụng rộng rãi trong công tác mã hoá và công nghệ chữ ký điện tử. Trong hệ mã hóa này, public key có thể chia sẻ công khai cho tất cả mọi người. Hoạt động của RSA dựa trên 4 bước chính: sinh khóa, chia sẻ key, mã hóa và giải mã 2. Mô tả hoạt động RSA có hai khóa: - Khóa công khai (Pulic key): Được công bố rộng rãi cho mọi người và được dùng để mã hóa - Khóa bí mật (Private key): Những thông tin được mã hóa bằng khóa công khai chỉ có thể được giải mã bằng khóa bí mật tương ứng. a) Tạo khóa Bước 1: chọn 2 nguyên tố lớn ngẫu nhiên và độc lập p và q Bước 2: tính n= pq Bước 3: tính giá trị hàm số ɸ(n)= (p-1)(q-1) Bước 4: chọn 1 số tự nhiên e sao cho 1
  2. b) Mã hóa và giải mã Bước 1: A nhận khóa công khai của B Bước 2: A biểu diễn thông tin cần gửi thành số m (0
  3. Độ an toàn của hệ thống RSA dựa trên 2 vấn đề: bài toán phân tích ra thừa số nguyên tố các số nguyên lớn và bài toán RSA. Vì vậy muốn xây dựng hệ RSA an toàn thì n=p*q phải là một số đủ lớn, để không có khả năng phân tích nó về mặt tính toán. Vì vậy hiện nay người ta khuyến cáo sử dụng khóa có độ dài tối thiểu 2048 bít 5. Các vấn đề đặt ra trong thực tế *Qúa trình tạo khóa Việc tìm ra 2 số nguyên tố đủ lớn p và q thường được thực hiện bằng cách thử xác suất các số ngẫu nhiên có độ lớn phù hợp. p và q cần được chọn không quá gần nhau phòng trường hợp phân tích n bằng phương pháp phân tích Fermat. Ngoài ra, nếu p-1 hoặc q-1 có thừa số nguyên tố nhỏ thì n cũng có thể dễ dàng bị phân tích và vì thế p và q cần được thử để tránh khả năng này. Yêu cầu: lựa chọn các số cần đồng thời ngẫu nhiên và không dự đoán được. *Tốc độ RSA có tốc độ thực hiện chậm hơn đáng kể so với DES và các thuật toán mã hóa đối xứng khác. Thực tế, sử dụng một thuật toán mã hóa đối xứng nào đó để mã hóa văn bản cần gửi và chỉ sử dụng RSA để mã hóa khóa để giải mã (thông thường khóa ngắn hơn nhiều so với văn bản). *Phân phối khóa Cách thức phân phối khóa công khai là một trong những yếu tố quyết định độ an toàn của RSA. Quá trình phân phối khóa cần chống lại được tấn công đứng giữa (man-in-the-middle attack). Các phương pháp chống lại dạng tấn công này thường dựa trên các chứng thực khóa công khai (digital certificate) hoặc các thành phần của hạ tầng khóa công khai (public key infrastructure - PKI). *Tấn công dựa trên thời gian Năm 1995, Paul Kocher mô tả dạng tấn công mới lên RSA: nếu kẻ tấn công nắm đủ thông tin về phần cứng thực hiện mã hóa và xác định được thời gian giải mã thì có thể nhanh chóng tìm ra khóa d.Năm 2003, Dan Boneh và David Brumley chứng minh một dạng tấn công: phân tích thừa số RSA dùng mạng máy tính (Máy chủ web dùng SSL, khai thác thông tin rò rỉ của việc tối ưu hóa định lý số dư Trung quốc Để chống lại tấn công các ứng dụng RSA sử dụng kỹ thuật che mắt dựa trên tính nhân của RSA *Tấn công lựa chọn thích nghi bản mã Năm 1981, Daniel Bleichenbacher mô tả dạng tấn công lựa chọn thích nghi bản mã có thể thực hiện với một văn bản mã hóa bằng RSA bằng cách lợi dụng sự khiếm khuyết của PKCS #1. Để chống lại tấn công nên sử dụng các mô hình chuyển đổi an toàn hơn như chuyển đổi mã hóa bất đối xứng tối ưu hay phiên bản mới của PKCS #1 6. Ứng dụng của hệ mã hóa RSA RSA thỏa mãn 5 yêu cầu của một hệ mã hóa hiện đại: 1. Độ bảo mật cao (nghĩa là để giải mã ddược mà không biết kháo thì phải tốn hàng triệu năm) 2. Thao tác nhanh (thao tác mã hóa và giải mã ít tốn thời gian) 3. Dùng chung được 4. Có ứng dụng rộng rãi 5. Có thể dùng để xác định chủ nhân (dùng làm chữ ký điện tử) Vì vậy mà thuật toán RSA được sử dụng rộng rãi trong công tác mã hoá và công nghệ chữ ký điện tử: truyền dẫn quỹ điện tử chuyển đổi thư điện tử, giao dịch tiền điện tử, thương mại điện tử, tài chính- ngân hàng... III. Tài liệu tham khảo https://www.wikipedia.org/ https://tailieu.vn/
nguon tai.lieu . vn