Tiếp nối phần 1, phần 2 sách gồm 2 chương cong lại: Chương 3. Mật mã khóa công khai: Trình bày các thuật toán cơ bản trong mật mã khóa công khai bao gồm các các hệ mật RSA, MerkleHellman, Rabin, ElGamal, hệ mật trên đường cong Elliptic và hệ mật McEliece và chương 4 Hàm băm và chữ ký số: Trình bày khái niệm hàm băm và các ứng dụng trong việc xác thực và đảm bảo tính toàn vẹn của dữ liệu. Sau mỗi chương đều có các bài tập nhằm giúp cho các bạn sinh viên có thể nắm vững, hiểu cụ thể và sâu sắc hơn các vấn đề lý thuyết được trình bày. | C hư ơ ng 3 M ẬT MÃ KHÓA CÔNG KHAI . Giói thiệu chung Trong mô hình mật mã chúng ta nghiên cứu cho đen nay (mật mã khóa bí mật), Alice và Bob thoả thuận chọn một cách bí mật khoá k. Từ k người ta suy ra qui tắc mã hoá ek và qui tắc giải mã các hệ mật này, chúng ta thấy dk hoặc trùng với ek, hoặc dễ dàng rút ra từ ek (ví dụ phép giải mã DES nói chung đồng nhất với phép mã hoá, chỉ khác là lược đồ khoá thỉ đào ngược). Các hệ mật loại này được gọi là hệ mật khoá bí mật (hoặc riêng, hoặc đối xứng), vì việc tiết lộ ek sẽ làm cho hệ thống không an toàn. Một đặc điểm của hệ mật khoá bí mật là ở chỗ nó yêu cầu thoả thuận về khoá giữa Alice và Bob bằng sử dụng kênh an toàn, trước khi bản mã bất ki được thực tế thực hiện điều này là rất khó. Ý tưởng nằm sau hệ mật khoá công khai là ở chỗ người ta có thể tìm ra một hệ mật trong đó không thể tính toán để xác định dk khi biết ek. Nếu thế thỉ qui tắc mã ek có thể cho công khai bằng cách công bố nó trong một thư mục (vì thế mới có thuật ngữ hệ mật khoá công khai). Ưu điểm cùa hệ mật khoá công khai là à chỗ Alice (hoặc ngiròi khác hất kỳ) CÓ thể gửi thông báo đã mã tới Bob (mà không cần liên lạc trước về khoá bí mật) bằng cách dùng qui tắc mã hoá công khai eic- Bob sẽ là người duy nhất có thể giải bản mã này bằng cách sử dụng qui tắc giải mã bí mật dk của anh ta. Ta có thể hình dung như sau: Alice đặt một vật vào hộp sắt sau đó khoá nó với cái khoá bấm do Bob để lại. Bob là người duy nhất có thể mờ hộp vi chỉ anh ta có chìa. Một nhận xét rất quan trọng là hệ mật khoá công khai có thể không bao giờ cung cấp độ mật vô điều kiện. Đó là vì bằng quan sát bản mã y, đối phương có thể mã hoá mỗi bản rõ có thể nhờ ek cho đến khi tìm thấy 132 X duy nhất thoả mãn y=ek(x). Nghiệm X này ià giải mã của y. Như vậy độ an toàn của các hệ mật khoá công khai là độ an toàn tính toán. Hàm mã hoá công khai ẽk của Bob phải dễ dàng tính toán. Chúng ta chú ý rằng v iệ c tính h àm n g ư ợ c , n g h ĩa là v iệ c g iả i m ã, phái