1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài tập cuối khóa học phần mật mã học đề tài tìm hiểu về hệ mã hóa elgamal

16 1 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 16
Dung lượng 2,14 MB

Nội dung

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THỰC PHẨM TP.HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN -o0o BÀI TẬP CUỐI KHÓA HỌC PHẦN MẬT MÃ HỌC ĐỀ TÀI: TÌM HIỂU VỀ HỆ MÃ HĨA ELGAMAL Giảng viên hướng dẫn: VŨ ĐỨC THỊNH Sinh viên thực hiện: Ngơ Văn Thiều – 2033190166 (Nhóm trưởng) Nguyễn Công Dũng - 2033172024 Nguyễn Ngọc Bảo Trân – 2033190131 Nguyễn Văn Vàng - 2033183002 Thành phố Hồ Chí Minh, 26 tháng 12 năm 2022 MỤC LỤC LỜI CẢM ƠN Đầu tiên, chúng em xin gửi lời cảm ơn chân thành đến Trường Đại học Công nghiệp Thực phẩm Khoa Công Nghệ Thông Tin đưa môn học “Mật Mã Học” vào chương trình giảng dạy Đặc biệt chúng em xin gửi lời cảm ơn sâu sắc đến thầy Vũ Đức Thịnh truyền đạt kiến thức quý báu cho chúng em, trực tiếp hướng dẫn tận tình giúp đỡ chúng em suốt thời gian học môn “Mật Mã Học” Mặc dù cố gắng q trình tìm hiểu khơng thể tránh khỏi sai sót Chúng em mong nhận góp ý, nhận xét quý thầy cô nội dung hình thức trình bày để báo cáo hồn thiện Lời cuối cùng, chúng em xin kính chúc quý thầy cô bạn sức khỏe, thành công công việc sống Chúng em xin chân thành cảm ơn ! NHẬN XÉT CỦA GIẢNG VIÊN Ý kiến Giáo Viên (Ký ghi rõ họ tên) VŨ ĐỨC THỊNH LỜI MỞ ĐẦU Trong thời đại xã hội lồi người, vấn đề bảo mật thơng tin ln quan tâm lớn Từ xa xưa, người sáng tạo hệ mật mã cổ điển để đáp ứng nhu cầu bảo mật thông tin Mật mã học ngành có lịch sử từ hàng nghìn năm Trong phần lớn thời gian phát triển (ngoại trừ vài thập kỷ trở lại đây), lịch sử mật mã học lịch sử phương pháp mật mã học cổ điển - phương pháp mật mã hóa với bút giấy, đơi có hỗ trợ từ dụng cụ khí đơn giản Vào đầu kỷ 20, xuất cấu khí điện cơ, chẳng hạn máy Enigma, cung cấp chế phức tạp hiệu cho việc mật mã hóa Sự đời phát triển mạnh mẽ ngành điện tử máy tính thập kỷ gần tạo điều kiện để mật mã học phát triển nhảy vọt lên tầm cao Rất nhiều hệ mật mã đại đời dựa sở đại số Modulo thuật tốn logarithm rời rạc… Năm 1975, IBM cơng bố Hệ mật DES, khởi đầu cho hệ mật mã đại Tiếp theo đời hệ mật mã AES, RSA, DSA, Elgamal… Hệ mật Elgamal đề xuất vào năm 1984 sở toàn Logarit rời rạc, hệ mật mã khó thám mã Dựa hướng dẫn thầy, thành viên nhóm tiến hành tìm hiểu thuật toán thám mã giải mã hệ mật mã hóa Elgamal, nhóm tiến hành xây dựng mô hệ mật Elgamal phần mềm Matlab Báo cáo phần mơ nhóm khơng tránh khỏi thiếu sót, mong góp ý dẫn thầy! I LÝ THUYẾT Tổng quan Elgamal Hệ mật ElGamal hệ mật khóa bất đối xứng cho khóa cơng khai, dựa trao đổi khóa Diffie – Hellan Thuật tốn Taher ElGamal tạo vào năm 1985 lấy mơ hình tốn logarit rời rạc Thuật tốn ElGamal có hai khóa: Public key (khóa cơng khai) Private key (khóa bí mật) Public key công bố người mã hóa tin Nhưng có Pravate key thể giải mã  Ưu điểm: o Do xây dựng từ toán logarit rời rạc, độ phức tạp toán logarithm lớn nên có độ an tồn cao o Bản mã phụ thuộc vào rõ giá trị ngẫu nhiên nên từ rõ ta có nhiều mã khác  Nhược điểm: o Tốc độ chậm (do phải xử lý số nguyên lớn) o Dung lượng nhớ dành để lưu trữ mã lớn gấp đôi so với hệ mã khác o Do việc sử dụng số nguyên tố nên việc sinh khóa quản lý khóa khó khăn hệ mã khối 1.1 Tính bảo mật hệ mật mã ElGamal Hệ mật ElGamal bị phá vỡ khóa bí mật � � tính tốn logarit rời rạc Tính an tồn tùy thuộc vào độ phức tạp toán logarith Trong toán hệ Elgamal: + p số nguyên tố, a phần tử nguyên thủy Z*p (p a cố định) + Bài toán logarith rời rạc phát biểu sau: Tìm số mũ x nhất, 0 Khi tính mật � = Sử dụng khóa cơng khai để tính mật �2 = Alice có mã gồm (�1, �2) để gửi đến cho Bob 2.3 Giải mã Bob nhận mã (�1, �2) có khóa bí mật Bob tìm rõ theo cơng thức: Ví dụ: Cho hệ Elgamal có p = 2579; = 2; a = 765; chọn k ngẫu nhiên 853 Bản rõ M = 1299 Tìm khóa hệ mã trên? Giải: Mã hóa: Trước hết ta tính: = = 2765 mod 2579 = 949 Để mã hóa thơng điệp M = 1299 ta tính theo k = 853: C1 = mod p = 2853 mod 2579 = 435 C2 = (Mk) mod p = (1299949853) mod 2579 = 2396 Vậy mã gửi C = (435, 2396) Giải mã: Với khóa bí mật a = 765; (C1a)-1) mod p = C1(p-1-a)) mod p = (435(2579 - - 765)) mod 2579 = (4351813) mod 2579 = 1980 M = (C2 (C1a)-1) mod p = (23961980) mod 2579 = 1299 Kết luận: Xây dựng hệ mã Elgamal khóa: K = (p, , a,) = (2579, 2, 765, 949) với: - Thành phần khóa cơng khai: Ku = (,, p) = (2, 949, 2579) - Thành phần khóa bí mật: Kr = (a, p) = (765, 2579) - Mã hóa M = 1299 với E(C1 , C2) = (435, 2396) 2.4 Thám mã hệ Elganal Để thám mã hệ Hệ Elgamal, ta cần phải giải toán logarit rời rạc Chúng ta có thuật tốn để giải toán logarit rời rạc là: Thuật toán Shank Thuật toán Pohlig Hellman *Thuật toán Shank Thuật toán có tên gọi khác thuật tốn thời gian nhớ Tư tưởng thuật toán ta có đủ nhớ sử dụng nhớ để giảm thời gian thực thuật toán Input: Số nguyên tố p, phần tử nguyên thủy a Z*p, số nguyên y  Output: Cần tìm a cho = a mod p Thuật toán:  Gọi m = [p-1)/2] (lấy phần nguyên) + Bước 1: Tính mj mod p với 0 log = (mj +i) mod (p-1)= a *Bài toán logarith rời rạc: Logarith rời rạc kết nối phép tính logarith trường số thực vào nhóm hữu hạn Ta nhắc lại với hai số thực x, y số a>0, a0, ax -y=0 x gọi logarith sổ y, ký hiệu x = Logarith rời rạc toán khó (chưa biết thuật tốn hiệu nào) Trong tốn ngược lũy thừa rời rạc lại khơng khó (có thể sử dụng thuật tốn bình phương nhân) Ví dụ: Cho p số nguyên tố, xét nhóm nhân số nguyên modulo p: Zp*= {1,2, ,p} với phép nhân modulo p Nếu ta tính lũy thừa bậc k số nhóm rút gọn theo modulo p ta số nhóm Qúa trình gọi lũy thừa rời rặc modulo p, chẳng hạn với p = 17, lấy a = 3, k = ta có: 34 = 81 = 13 mod 17 Logarith rời rạc phép tính ngược lại: Biết: 3k = 13 (mod 17) tìm k? Thực tương tự thuật tốn Shank => k=4 Tuy nhiên toán tương đối khó Trong trường hợp p lớn (có 150 chữ số) tốn trở thành bất khả thi => an toàn Ứng dụng chữ ký số 3.1 Chữ ký số Chữ ký số dạng chữ ký điện tử Nó dạng liệu dùng để chứng thực cho liệu khác Chữ ký số sử dụng hệ mã hóa bất đối xứng Trong phần lớn trường hợp, cịn kiểm tra tính tồn vẹn liệu Chữ ký số tương tự chữ ký tay nhiều phương diện, việc cài đặt sử dụng chữ ký số khó khăn nhiều 3.2 Chữ ký số sử dụng hệ mật mã Elgamal Việc ký tên xác thực chữ ký số sử dụng hệ mã hóa Elgamal tương tự q trình mã hóa mà giải mã Tuy nhiên vai trị public key private key có thay đổi đơi chút Để tạo chữ ký, người gửi dùng private key người nhận dùng public key để xác thực chữ ký Tuy nhiên, tin dài nên việc mã hóa tồn tin thời gian Vì vậy, thực hành, chữ ký số thường sử dụng phương pháp mã hóa giá trị hash tin Việc mang lại nhiều lợi ích như: Các hàm hash hàm chiều, dù có hash khơng thể biết tin gốc Độ dài hash cố định thường nhỏ, chữ số không chiếm nhiều dung lượng Giá trị hash cịn dùng để kiểm tra lại tin nhận có ngun vẹn hay khơng? Chữ ký số đem lại nhiều giá trị chữ ký tay nhiều Có lẽ vậy, việc xử lý chữ ký số phức tạp hẳn chữ ký tay truyền thống 3.3  Ưu điểm Khả nhận thức: Các hệ thống mật mã khóa cơng khai cho phép mật mã hóa văn với khóa bí mật mà có người chủ khóa biết Để sử dụng chữ ký số văn khơng cần phải mã hóa mà cần mã hóa hàm băm văn Khi cần kiểm tra, bên nhận giải mã để lấy lại hàm băm kiểm tra với hàm băm văn nhận Nếu hai giá trị khớp bên nhận tin tưởng văn xuất phát từ người sở hữu khóa bí mật Tất nhiên khơng thể đảm bảo 100% văn không bị giả mạo hệ thống bị phá vỡ  Tính tồn vẹn: Cả hai bên tham gia vào q trình thơng tin tin tưởng văn khơng bị sửa lỗi truyền văn bị thay đổi hàm băm thay đổi bị phát Quá trình mã hóa ẩn nội dung gói tin bên thứ ba không ngăn cản việc thay đổi nội dung  Tính khơng thể phủ nhận: Trong giao dịch, bên từ chối nhận văn gửi Để ngăn ngừa khả này, bên nhận yêu cầu bên gửi phải gửi kèm chữ ký số văn Khi có tranh chấp, bên nhận dùng chữ ký chứng để bên thứ ba giải Tuy nhiên, khóa bí mật bị lộ tính khơng thể phủ nhận khơng thể đạt hồn tồn 3.4 Ý nghĩa  Được sử dụng rộng rãi thương mại điện tử để thực giao dịch điện tử nhằm xác định rõ người kí văn  Chống chối bỏ người ký ký vào văn họ khơng thể phủ nhận chữ ký khơng phải họ  Xác thực nội dung văn ký: nhằm kiểm tra tính tồn vẹn văn xem có bị thay đổi thơng tin q trình vận chuyển  Độ an tồn chữ ký số cao, sử dụng phổ biến giao dịch điện tử  Để đảm bảo an toàn, tăng hiệu chữ ký số cần có tổ chức chứng thực điện tử nhằm cung cấp đảm bảo độ tin cậy cho chữ ký số Đó tổ chức cơng an II CODE VÀ DEMO CHƯƠNG TRÌNH

Ngày đăng: 07/06/2023, 17:24

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w