ĐÁP ÁN CÂU HỎI ÔN TẬP AN TOÀN VÀ BẢO MẬT DỮ LIỆU 1 ĐÁP ÁN 5 1. Trình bày về Hệ mã hoá 8 1. Định nghĩa Hệ mã hoá 8 a. Định nghĩa 8 2. Các loại hệ mã hóa 8 a. Một số hệ mã hóa cổ điển 9 b. Một số hệ mã hóa công khai 11 3. Ví dụ về một Hệ mã hoá 12 2. Trình bày về Hệ mã hoá khoá công khai 13 1. Định nghĩa. Các đặc điểm đặc trưng của Hệ mã hoá khoá công khai. 13 a. Định nghĩa: 13 b. Các đặc điểm đặc trưng của hệ mã hóa công khai: 13 2. Ví dụ về một Hệ mã hoá khoá công khai 13 a. Phát biểu: 14 b. Sơ đồ: 14 3. Ví dụ bằng số minh hoạ việc lập mã, giải mã theo Hệ mã hoá khoá công khai 14 3. Trình bày về Hệ mã hoá RSA 15 1. Sơ đồ Hệ mã hoá 15 2. Các đặc điểm đặc trưng của Hệ mã hoá RSA 15 3. Ví dụ bằng số minh hoạ việc lập mã, giải mã 16 4. Trình bày về Hệ mã hoá Elgamal 16 1. Sơ đồ Hệ mã hoá 16 a. Chuẩn bị 16 b. Mã hóa 16 c. Giải mã 17 2. Các đặc điểm đặc trưng của Hệ mã hoá Elgamal 17 3. Ví dụ bằng số minh hoạ việc lập mã, giải mã 17 a. Chuẩn bị 17 b. Mã hóa 17 c. Giải mã 17 5. Trình bày về Hệ mã hoá chuẩn DES (Data Encryption Standard) 18 1. Vẽ Sơ đồ mã hoá và Sơ đồ giải mã 18 2. Các đặc điểm đặc trưng của Hệ mã hoá DES 20 3. Trình bày ý chính việc thực hiện Sơ đồ mã hoá và Sơ đồ giải mã 20 6. Trình bày về Sơ đồ chữ ký số (chữ ký điện tử) 21 1. Định nghĩa Sơ đồ chữ ký số. Các loại chữ ký số hiện nay 21 a. Định nghĩa: 21 b. Các loại chữ kí số thông dụng hiện nay: 22 2. Ví dụ về một Sơ đồ chữ ký số 22 a. Sơ đồ chữ kí số RSA 22 b. Sơ đồ chữ kí Elmagal 23 c. Điểm khác biệt giữa Elgamal và RSA 23 3. Ví dụ minh hoạ việc Ký số và Kiểm tra chữ ký 24 7. Trình bày về Sơ đồ chữ ký số RSA 24 1. Sơ đồ chữ ký số 24 2. Các đặc điểm đặc trưng của chữ ký số RSA 25 3. Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký 25 8. Trình bày về Sơ đồ chữ ký số Elgamal 25 1. Sơ đồ chữ ký ELGAMAL 25 2. Các đặc điểm đặc trưng của chữ ký số Elgamal 26 3. Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký 26 9. Sơ đồ Chuẩn chữ ký số DSS (Digital Signature Standard). 27 1. Sơ đồ chữ ký số 27 2. Các đặc điểm đặc trưng của chữ ký số DSS 28 3. Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký. 28 10. Trình bày về Sơ đồ chữ ký số “Không thể phủ nhận” ( Undeniable Signature). 29 1. Sơ đồ chữ ký số 29 2. Các đặc điểm đặc trưng của chữ ký số “Không thể phủ nhận” 29 3. Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký. 29 11. Trình bày vấn đề Phân phối khoá (Key Distribution) 29 1. Khái niệm Phân phối khoá 29 2. Trình bày ý tưởng chính của một số sơ đồ Phân phối khoá hiện nay. 29 3. Cho ví dụ minh hoạ. 29 12. Trình bày Sơ đồ Phân phối khoá BLOM 29 13. Trình bày Sơ đồ Phân phối khoá Diffie Hellman 31 14. Trình bày Sơ đồ Phân phối khoá Kerberos 32 15. Trình bày vấn đề Thoả thuận khoá (Key Agreement) (Trao đổi khóa: Key Exchange) 33 16. Trình bày Giao thức Thoả thuận khoá Diffie Hellman 34 1. Sơ đồ phân phối khóa Diffie Hellman 34 2. Đặc điểm 35 3. Ví dụ 35 17. Trình bày Giao thức Thoả thuận khoá “Trạm tới Tram” (Station – To – Station” 35 18. Trình bày Giao thức Thoả thuận khoá MTI (Matsumoto – Takashima – Imai) 36 19. Trình bày Giao thức Thoả thuận khoá Girault (Trao đổi khoá không cần chứng chỉ). 37 20. Trình bày vấn đề Chia sẻ bí mật (Secret Sharing) 39 1. Khái niệm 39 2. Ý tưởng chính của một số Sơ đồ Chia sẻ bí mật hiện nay 40 a. Sơ đồ ngưỡng Shamir 40 b. Cấu trúc không gian vectơ Brickell 41 c. Mạch đơn điệu (Benaloh, Leichter) 42 21. Trình bày Sơ đồ Chia sẻ bí mật Shamir (Secret Sharing Scheme) 43 22. Trình bày vấn đề Tạo đại diện Thông điệp (Digest), Hàm băm (Hash Function) 46 1. Trình bày về Hệ mã hoá 1. Định nghĩa Hệ mã hoá a. Định nghĩa Mật mã được dùng để bảo vệ tính bí mật của thông tin khi được truyền trên các kênh truyền thông công cộng như các kênh bưu chính, điện thoại, mạng truyền thông máy tính, mạng Internet, ... Giả sử một người A muốn gửi đến người nhận B một văn bản (chẳng hạn như bức thư) p, để bảo mật, A lập cho p một bản mật mã c và thay cho việc gửi p, A gửi cho B bản mật mã c, B nhận được c và “giải mã” c để lại được văn bản p như A định gửi. Để A biến p thành c và B biến c ngược lại thành p, A và B phải thỏa thuận trước với nhau các thuật toán lập mã và giải mã, và đặc biệt là khóa mật mã chung K để thực hiện thuận toán đó. Người ngoài không biết thông tin đó (đặc biệt, không biết khóa K) cho dù có lấy trộm được c trên kênh truyền thông công cộng cũng không thể tìm được văn bản p mà hai người A, B muốn gửi cho nhau. Dưới đây là định nghĩa hình thức về sơ đồ mật mã, cách thức thực hiện để lập mã và giải mã: Định nghĩa 1: (về hệ mã hoá) Một hệ mã hoá là một bộ năm (P,C,K,e,d) thoả mãn các điều kiện sau đây: 1. P là một tập hữu hạn các bản rõ 2. C là một tập hữu hạn các bản mã 3. K là một tập hữu hạn các khoá 4. e là hàm lập mã x P → y = ekl(x) C 5. d là hàm giải mã y C → x = dkg(y) P 2. Các loại hệ mã hóa Mã hoá đối xứng, Mã hoá phi đối xứng, Mã hoá khoá công khai, Mã dòng, Mã khối,... Hệ mã đối xứng Hệ mã phi đối xứng 2 khoá: + Lập mã + Giải mã biết khoá này có thể tính được khoá kia một cách dễ dàng 2 khoá: + Lập mã + Giải mã biết khoá này “khó” tính khoá kia Đảm bảo tính bí mật, toàn vẹn Đảm bảo tính bí mật, toàn vẹn Đảm bảo tính xác thực Đảm bảo tính xác thực Chú ý: + Phải bí mật cả hai khoá + Phải bí mật cả tên hệ mã Chú ý: + Chỉ cần bí mật khoá giải mã + Không cần bí mật tên hệ mã Hầu hết mã cổ điển thuộc hệ mã đối xứng. Mã hiện đại thuộc hai loại: hệ mã đối xứng và phi đối xứng a. Một số hệ mã hóa cổ điển Hệ mã dịch chuyển: Hệ mã hoá dịch chuyển là một hệ (P,C,K,e,d), trong đó: P = C = K = Z26 (tập 26 chữ cái A>Z) A B C D E F G H I J K L M N O P Q R S T U V W X Y Z _ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 0 • Lập mã: x P → y = (x + k) mod 26 C • Giải mã: y C → x = (y k) mod 26 P Hệ mã Vigenera Hệ mã hoá Vigenera là một hệ (P,C,K,e,d) trong đó: • Bộ khoá: có m chìa k = (k1, k2, k3, . . ., km) • Lập mã: (x1, x2, x3, . . ., xm) → (y1, y2, y3, . . ., ym) trong đó yi = (xi + ki) mod 26 • Giải mã: (y1, y2, y3, . . ., ym) → (x1, x2, x3, . . ., xm) trong đó xi = (yi ki) mod 26 Hệ mã thay thế (hoán vị toàn cục) Hệ mã hoá thay thế là một hệ (P,C,K,e,d) trong đó: • Bộ khoá: có 26 chìa là hoán vị của (1, 2, ...., 26) = Π • Lập mã: x → Π(x) = y • Giải mã: y → Π1(y) = x Hệ mã hoán vị cục bộ Hệ mã hoá hoán vị cục bộ là một hệ (P,C,K,e,d), trong đó: • Bộ khoá: có m chìa là hoán vị của (1, 2, ...., m) = Π • Lập mã:
Trang 1CÂU HỎI ÔN TẬP AN TOÀN VÀ BẢO MẬT DỮ LIỆUCâu hỏi:
1 Trình bày về Hệ mã hoá
- Định nghĩa Hệ mã hoá Các loại Hệ mã hoá: Mã hoá đối xứng, Mã hoá phi đốixứng, Mã hoá khoá công khai, Mã dòng, Mã khối,
- Ví dụ về một Hệ mã hoá
- Ví dụ bằng số minh hoạ việc lập mã, giải mã theo Hệ mã hoá trên
2 Trình bày về Hệ mã hoá khoá công khai
- Định nghĩa Các đặc điểm đặc trưng của Hệ mã hoá khoá công khai
- Ví dụ về một Hệ mã hoá khoá công khai
- Ví dụ bằng số minh hoạ việc lập mã, giải mã theo Hệ mã hoá khoá công khai
3 Trình bày về Hệ mã hoá RSA
- Sơ đồ Hệ mã hoá
- Các đặc điểm đặc trưng của Hệ mã hoá RSA
- Ví dụ bằng số minh hoạ việc lập mã, giải mã
4 Trình bày về Hệ mã hoá Elgamal
- Sơ đồ Hệ mã hoá
- Các đặc điểm đặc trưng của Hệ mã hoá Elgamal
- Ví dụ bằng số minh hoạ việc lập mã, giải mã
5 Trình bày về Hệ mã hoá chuẩn DES (Data Encryption Standard)
- Vẽ Sơ đồ mã hoá và Sơ đồ giải mã
- Các đặc điểm đặc trưng của Hệ mã hoá DES
- Trình bày ý chính việc thực hiện Sơ đồ mã hoá và Sơ đồ giải mã
6 Trình bày về Sơ đồ chữ ký số (chữ ký điện tử)
- Định nghĩa Sơ đồ chữ ký số Các loại chữ ký số hiện nay
- Ví dụ về một Sơ đồ chữ ký số
- Ví dụ minh hoạ việc Ký số và Kiểm tra chữ ký
7 Trình bày về Sơ đồ chữ ký số RSA
Trang 2- Sơ đồ chữ ký số
- Các đặc điểm đặc trưng của chữ ký số RSA
- Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký
8 Trình bày về Sơ đồ chữ ký số Elgamal
- Sơ đồ chữ ký số
- Các đặc điểm đặc trưng của chữ ký số Elgamal
- Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký
9 Trình bày về Sơ đồ Chuẩn chữ ký số DSS (Digital Signature Standard)
- Sơ đồ chữ ký số
- Các đặc điểm đặc trưng của chữ ký số DSS
- Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký
10 Trình bày về Sơ đồ chữ ký số “Không thể phủ nhận” ( Undeniable Signature)
- Sơ đồ chữ ký số
- Các đặc điểm đặc trưng của chữ ký số “Không thể phủ nhận”
- Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký
11 Trình bày vấn đề Phân phối khoá (Key Distribution)
- Khái niệm Phân phối khoá
- Trình bày ý tưởng chính của một số sơ đồ Phân phối khoá hiện nay
- Cho ví dụ minh hoạ
12 Trình bày Sơ đồ Phân phối khoá BLOM
- Sơ đồ BLOM với k=1
- Các đặc điểm đặc trưng của Sơ đồ BLOM với k=1
- Ví dụ bằng số minh hoạ việc Phân phối khoá theo Sơ đồ BLOM với k=1
- Viết chương trình thực hiện theo sơ đồ này
- Sơ đồ BLOM với k tuỳ ý
13 Trình bày Sơ đồ Phân phối khoá Diffie - Hellman
- Sơ đồ Diffie - Hellman
- Các đặc điểm đặc trưng của Sơ đồ Diffie - Hellman
- Ví dụ bằng số minh hoạ việc Phân phối khoá theo Sơ đồ Diffie - Hellman
Trang 3- Viết chương trình thực hiện theo sơ đồ này.
14 Trình bày Sơ đồ Phân phối khoá Kerberos
- Sơ đồ Kerberos
- Các đặc điểm đặc trưng của Sơ đồ Kerberos
- Ví dụ bằng số minh hoạ việc Phân phối khoá theo Sơ đồ Kerberos
- Viết chương trình thực hiện theo sơ đồ này
15 Trình bày vấn đề Thoả thuận khoá (Key Agreement) (Trao đổi khóa: KeyExchange)
- Khái niệm Thoả thuận khoá
- Trình bày ý tưởng chính một số của một số Giao thức Thoả thuận khoá hiện nay
- Cho ví dụ minh hoạ
16 Trình bày Giao thức Thoả thuận khoá Diffie - Hellman
- Giao thức Diffie - Hellman
- Các đặc điểm đặc trưng của giao thức Diffie - Hellman
- Ví dụ bằng số minh hoạ việc Thoả thuận khoá theo giao thức Diffie - Hellman
- Viết chương trình thực hiện theo giao thức này
17 Trình bày Giao thức Thoả thuận khoá “Trạm tới Tram” (Station – To – Station”
- Giao thức “Trạm tới Tram”
- Các đặc điểm đặc trưng của giao thức “Trạm tới Tram”
- Ví dụ bằng số minh hoạ việc Thoả thuận khoá theo giao thức “Trạm tới Tram”
- Viết chương trình thực hiện theo giao thức này
18 Trình bày Giao thức Thoả thuận khoá MTI (Matsumoto – Takashima – Imai)
- Giao thức MTI
- Các đặc điểm đặc trưng của giao thức MTI
- Ví dụ bằng số minh hoạ việc Thoả thuận khoá theo giao thức MTI
- Viết chương trình thực hiện theo giao thức này
19 Trình bày Giao thức Thoả thuận khoá Girault (Trao đổi khoá không cần chứngchỉ)
- Giao thức Girault
Trang 4- Các đặc điểm đặc trưng của giao thức Girault.
- Ví dụ bằng số minh hoạ việc Thoả thuận khoá theo giao thức Girault
- Viết chương trình thực hiện theo giao thức này
20 Trình bày vấn đề Chia sẻ bí mật (Secret Sharing)
- Khái niệm Chia sẻ bí mật
- Trình bày ý tưởng chính của một số Sơ đồ Chia sẻ bí mật hiện nay
- Cho ví dụ minh hoạ
21 Trình bày Sơ đồ Chia sẻ bí mật Shamir (Secret Sharing Scheme)
- Sơ đồ Chia sẻ bí mật Shamir
- Các đặc điểm đặc trưng của Sơ đồ Chia sẻ bí mật Shamir
- Ví dụ bằng số minh hoạ việc Chia sẻ bí mật theo Sơ đồ Shamir
- Viết chương trình thực hiện theo Sơ đồ này
22 Trình bày vấn đề Tạo đại diện Thông điệp (Digest), Hàm băm (Hash Function)
- Khái niệm đại diện của Thông điệp, Hàm băm, ý nghĩa của vấn đề
- Các tính chất của Hàm băm
- Trình bày ý tưởng chính của một số Hàm băm hiện nay
- Cho ví dụ minh hoạ
Tài liệu:
1 Phan Đình Diệu Lý thuyết mật mã và An toàn thông tin
2 G J Simmons J L Massey Contemporary Cryptology: The Science ofInformation Integrity 1992
3 Douglas R Stinson: Cryptography 1995
Trang 5ĐÁP ÁN
CÂU HỎI ÔN TẬP AN TOÀN VÀ BẢO MẬT DỮ LIỆU 1
ĐÁP ÁN 5
1 Trình bày về Hệ mã hoá 8
1 Định nghĩa Hệ mã hoá 8
a Định nghĩa 8
2 Các loại hệ mã hóa 8
a Một số hệ mã hóa cổ điển 9
b Một số hệ mã hóa công khai 11
3 Ví dụ về một Hệ mã hoá 12
2 Trình bày về Hệ mã hoá khoá công khai 13
1 Định nghĩa Các đặc điểm đặc trưng của Hệ mã hoá khoá công khai 13
a Định nghĩa: 13
b Các đặc điểm đặc trưng của hệ mã hóa công khai: 13
2 Ví dụ về một Hệ mã hoá khoá công khai 13
a Phát biểu: 14
b Sơ đồ: 14
3 Ví dụ bằng số minh hoạ việc lập mã, giải mã theo Hệ mã hoá khoá công khai 14
3 Trình bày về Hệ mã hoá RSA 15
1 Sơ đồ Hệ mã hoá 15
2 Các đặc điểm đặc trưng của Hệ mã hoá RSA 15
3 Ví dụ bằng số minh hoạ việc lập mã, giải mã 16
4 Trình bày về Hệ mã hoá Elgamal 16
1 Sơ đồ Hệ mã hoá 16
a Chuẩn bị 16
b Mã hóa 16
c Giải mã 17
2 Các đặc điểm đặc trưng của Hệ mã hoá Elgamal 17
Trang 63 Ví dụ bằng số minh hoạ việc lập mã, giải mã 17
a Chuẩn bị 17
b Mã hóa 17
c Giải mã 17
5 Trình bày về Hệ mã hoá chuẩn DES (Data Encryption Standard) 18
1 Vẽ Sơ đồ mã hoá và Sơ đồ giải mã 18
2 Các đặc điểm đặc trưng của Hệ mã hoá DES 20
3 Trình bày ý chính việc thực hiện Sơ đồ mã hoá và Sơ đồ giải mã 20
6 Trình bày về Sơ đồ chữ ký số (chữ ký điện tử) 21
1 Định nghĩa Sơ đồ chữ ký số Các loại chữ ký số hiện nay 21
a Định nghĩa: 21
b Các loại chữ kí số thông dụng hiện nay: 22
2 Ví dụ về một Sơ đồ chữ ký số 22
a Sơ đồ chữ kí số RSA 22
b Sơ đồ chữ kí Elmagal 23
c Điểm khác biệt giữa Elgamal và RSA 23
3 Ví dụ minh hoạ việc Ký số và Kiểm tra chữ ký 24
7 Trình bày về Sơ đồ chữ ký số RSA 24
1 Sơ đồ chữ ký số 24
2 Các đặc điểm đặc trưng của chữ ký số RSA 25
3 Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký 25
8 Trình bày về Sơ đồ chữ ký số Elgamal 25
1 Sơ đồ chữ ký ELGAMAL 25
2 Các đặc điểm đặc trưng của chữ ký số Elgamal 26
3 Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký 26
9 Sơ đồ Chuẩn chữ ký số DSS (Digital Signature Standard) 27
1 Sơ đồ chữ ký số 27
2 Các đặc điểm đặc trưng của chữ ký số DSS 28
3 Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký 28
Trang 710 Trình bày về Sơ đồ chữ ký số “Không thể phủ nhận” ( Undeniable Signature) 29
1 Sơ đồ chữ ký số 29
2 Các đặc điểm đặc trưng của chữ ký số “Không thể phủ nhận” 29
3 Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký 29
11 Trình bày vấn đề Phân phối khoá (Key Distribution) 29
1 Khái niệm Phân phối khoá 29
2 Trình bày ý tưởng chính của một số sơ đồ Phân phối khoá hiện nay 29
3 Cho ví dụ minh hoạ 29
12 Trình bày Sơ đồ Phân phối khoá BLOM 29
13 Trình bày Sơ đồ Phân phối khoá Diffie - Hellman 31
14 Trình bày Sơ đồ Phân phối khoá Kerberos 32
15 Trình bày vấn đề Thoả thuận khoá (Key Agreement) (Trao đổi khóa: Key Exchange) 33
16 Trình bày Giao thức Thoả thuận khoá Diffie - Hellman 34
1 Sơ đồ phân phối khóa Diffie Hellman 34
2 Đặc điểm 35
3 Ví dụ 35
17 Trình bày Giao thức Thoả thuận khoá “Trạm tới Tram” (Station – To – Station” .35
18 Trình bày Giao thức Thoả thuận khoá MTI (Matsumoto – Takashima – Imai) 36
19 Trình bày Giao thức Thoả thuận khoá Girault (Trao đổi khoá không cần chứng chỉ) 37
20 Trình bày vấn đề Chia sẻ bí mật (Secret Sharing) 39
1 Khái niệm 39
2 Ý tưởng chính của một số Sơ đồ Chia sẻ bí mật hiện nay 40
a Sơ đồ ngưỡng Shamir 40
b Cấu trúc không gian vectơ Brickell 41
c Mạch đơn điệu (Benaloh, Leichter) 42
21 Trình bày Sơ đồ Chia sẻ bí mật Shamir (Secret Sharing Scheme) 43
22 Trình bày vấn đề Tạo đại diện Thông điệp (Digest), Hàm băm (Hash Function) 46
Trang 9p như A định gửi Để A biến p thành c và B biến c ngược lại thành p, A và B phải thỏa
thuận trước với nhau các thuật toán lập mã và giải mã, và đặc biệt là khóa mật mã chung
K để thực hiện thuận toán đó Người ngoài không biết thông tin đó (đặc biệt, không biết
khóa K) cho dù có lấy trộm được c trên kênh truyền thông công cộng cũng không thể tìmđược văn bản p mà hai người A, B muốn gửi cho nhau Dưới đây là định nghĩa hình thức
về sơ đồ mật mã, cách thức thực hiện để lập mã và giải mã:
Định nghĩa 1: (về hệ mã hoá)
Một hệ mã hoá là một bộ năm (P,C,K,e,d) thoả mãn các điều kiện sau đây:
Trang 10+ Giải mã
biết khoá này có thể tính được khoá kia
một cách dễ dàng
+ Giải mãbiết khoá này “khó” tính khoá kia
- Đảm bảo tính bí mật, toàn vẹn - Đảm bảo tính bí mật, toàn vẹn
- Hầu hết mã cổ điển thuộc hệ mã đối xứng
- Mã hiện đại thuộc hai loại: hệ mã đối xứng và phi đối xứng
a Một số hệ mã hóa cổ điển
(x1, x2, x3, , xm) → (y1, y2, y3, , ym) trong đó
yi = (xi + ki) mod 26
Giải mã:
(y1, y2, y3, , ym) → (x1, x2, x3, , xm) trong đó
Trang 11xi = (yi - ki) mod 26
Hệ mã thay thế (hoán vị toàn cục)
Hệ mã hoá thay thế là một hệ (P,C,K,e,d) trong đó:
Trang 12b Một số hệ mã hóa công khai
Ví dụ: Giả sử B cần gửi cho A một thông điệp x trên kênh truyền công cộng A và
B muốn giữ bí mật tài liệu, hai bên thống nhất sử dụng hệ mã khoá RSA
Trang 13Sau đây là các bước thực hiện để A và B trao đổi thông điệp
1 Lấy 2 số nguyên tố lớn p, q
2 Tính n = p * q; Φ(n) = (p-1)*(q-1)
3 Chọn số ngẫu nhiên b nguyên tố cùng
nhau với Φ(n) UCLN(b,Φ(n)) = 1
(cộng (modelo 26) các bộ từ khoá)
MÃ CHỮ: jmcaszvpjiebfqroszjwihc
Trang 142 Trình bày về Hệ mã hoá khoá công khai
1 Định nghĩa Các đặc điểm đặc trưng của Hệ mã hoá khoá công khai.
- D: Là hàm giải mã (decode) y C => x= dkg(y) P
Trong đó khóa lập mã K và thuật toán là công khai vì vậy hệ thống được gọi làcông khai (Public-key cryptogram system)
Chú ý: Trong bài này ta chỉ xét hệ mã hóa công khai tiêu biểu là hệ mật mã RSA
b Các đặc điểm đặc trưng của hệ mã hóa công khai:
- Đặc điểm cơ bản của hệ mã hóa công khai là xây dựng những hệ thống sao chobiết khóa lập mã K và thuật toán lập mã ek vẫn rất khó tìm được cách giải mã,thường là khó do phải khắc phục một độ phức tạp tính toán rất lớn
- Đối với hệ mã hõa công khai độ bảo mật càng cao nếu n = p*q càng lớn Khi
đó ta phải xây dựng các chương trình toán học trên các số rất lớn và lại phảitính toán đến hàm mũ cho nên tốc độ mã hóa chậm
- Tính bảo mật của hệ mã hóa công khai chủ yếu dựa vào việc giữ bí mật khóagiải mã K’ => Vì vậy khi đối phương biết được khóa K’ thì ta không chỉ phảithay đổi khóa K’ mà còn phải thay đổi cả hàm lập mã
2 Ví dụ về một Hệ mã hoá khoá công khai
Hệ mã hóa RSA:
a Phát biểu:
N là một số nguyên tố rất lớn và N bằng tích của hai số nguyên tố lớn khác nhau là
p, q (N = p*q) và (n) = (p - 1)* (q - 1)
Trang 15Lấy một giá trị b thuộc vành thặng dư (n) và là nguyên tố cùng nhau với (n) Tức
là UCLN(b, (n)) = 1
Tính giá trị a = b-1 mod (n) tức là a*b = 1 mod (n) trong đó
a: Là khóa bí mật (private)
b: Là khóa công khai (public)
Hàm lập mã: Cho bản mã x Dùng mã công khai để mã hóa theo công thức
y = xb mod nHàm giải mã: Dùng mã riêng (bí mật) để giải mã theo công thức x = ya mod n
- Số b phải chọn sao cho không chia hết cho 2, 5, 7 Chọn : b = 3533
- Khóa công khai là: (n, b) = (11413, 11200)
- Tính giá trị khóa bí mật: a * 3533 = 1 mod 11200 => a = 6579
- Phép lập mã: ek(x) = x3533 mod 11413
- Phép giải mã: dk(y) = y6579 mod 11413
Chọn x= 9726 ta có: y = 5761
Trang 163 Trình bày về Hệ mã hoá RSA
2 Các đặc điểm đặc trưng của Hệ mã hoá RSA
- RSA có tên lấy từ chữ cái đầu của ba người phát minh R.Rivest, A.Shamir và
L.Adleman
- Đây là hệ mã hóa công khai, còn gọi là hệ mã hóa dòng Giá trị khóa công khai vàkhóa bí mật được tính toán dựa trên hai số nguyên tố lớn theo phương pháp tínhgiá trị modulo
- Độ an toàn của RSA phụ thuộc vào kích thước của p và q sao cho giá trị n đủ lớn
để việc phân tích n thành thừa số nguyờn tố nhằm tìm ra khóa bí mật là khó thựchiện với các máy tính đương đại
- Khóa của hệ RSA có một phần (khác với hệ mã hóa Elgamal có hai phần)
- Bản mã có tính đơn trị, tức là từ một bản rõ chỉ sinh ra được một bản mã hóa
Trang 17-> Khóa bí mật a = 17.
- Quá trình mã hóa:
Cho x= 65; Mã hóa: y = xb mod n = 6553 mod 77 = 32
- Quá trình giải mã:
Nhận y = 32 Giải mã: x = ya mod n = 3217 mod 77 = 65
4 Trình bày về Hệ mã hoá Elgamal
Tính h=ga mod p (công khai)
Chọn ngẫu nhiên r Zp-1* (khóa bí mật thứ hai)
(y1,y2) x = d(y1,y2) = y2 * (y1a)-1 (mod p)
2 Các đặc điểm đặc trưng của Hệ mã hoá Elgamal
Trang 183 Ví dụ bằng số minh hoạ việc lập mã, giải mã
Trang 195 Trình bày về Hệ mã hoá chuẩn DES (Data Encryption Standard)
1 Vẽ Sơ đồ mã hoá và Sơ đồ giải mã
Trang 20L15=R14 R15=L14(R14,K15)
PLAINTEXTIP
Trang 212 Các đặc điểm đặc trưng của Hệ mã hoá DES
- Là hệ mã đối xứng tức là mã hoá và giải mã đều sử dụng cùng một khoá
- Sử dụng khoá 56 bít
- Xử lý khối vào 64 bít, biến đổi khối vào thành khối ra 64 bít
- Thuật toán DES mã hoá và giải mã nhanh
- DES được thiết kế để chạy trên phần cứng
3 Trình bày ý chính việc thực hiện Sơ đồ mã hoá và Sơ đồ giải mã
DES thực hiện trên từng khối 64 bít bản rõ Sau khi thực hiện hoán vị khởi đầu,khối dữ liệu được chia làm hai nửa trái và phải, mỗi nửa 32 bít Tiếp đó, có 16 vòng lặpgiống hệt nhau được thực hiện, được gọi là các hàm , trong đó dữ liệu được kết hợp vớikhoá Sau 16 vòng lặp, hai nửa trái và phải được kết hợp lại và hoán vị cuối cùng (hoán
vị ngược) sẽ kết thúc thuật toán
Trong mỗi vòng lặp, các bít của khoá được dịch đi và có 48 bít được chọn ra từ 56bít của khoá Nửa phải của dữ liệu được mở rộng thành 48 bít bằng một phép hoán vị mởrộng, tiếp đó khối 48 bít này được kết hợp với khối 48 bít đã được thay đổi và hoán vịcủa khoá bằng toán tử XOR Khối kết quả của phép tính XOR được lựa chọn ra 32 bítbằng cách sử dụng thuật toán thay thế và hoán vị lần nữa Đó là bốn thao tác tạo nên hàm
Tiếp đó, đầu ra của hàm được kết hợp với nửa trái bằng một toán tử XOR Kết quảcủa các bước thực hiện này trở thành nửa phải mới; nửa phải cũ trở thành nửa trái mới
Sự thực hiện này được lặp lại 16 lần, tạo thành 16 vòng của DES (Hình 10)
Nếu Bi là kết quả của vòng thứ i, Li và Ri là hai nửa trái và phải của Bi, Ki là khoá
48 bít của vòng thứ i, và là hàm thực hiện thay thế, hoán vị và XOR với khoá, ta cóbiểu diễn của một vòng sẽ như sau:
Li=Ri-1
Ri=Li-1 XOR (Ri-1,Ki)
Trang 226 Trình bày về Sơ đồ chữ ký số (chữ ký điện tử)
1 Định nghĩa Sơ đồ chữ ký số Các loại chữ ký số hiện nay
a Định nghĩa:
Một sơ đồ chữ ký số là bộ 5 (P,A,K,S,V) thoả mãn các điều kiện dưới đây:
- P là tập hữu hạn các bức điện có thể
- A là tập hữu hạn các chữ kí có thể
- K không gian khoá là tập hữu hạn các khoá có thể
- Với mỗi K thuộc K tồn tại một thuật toán kí sig k S và một thuật toán xácminh ver k V Mỗi sig k :P A và ver k :PxA {true, false} là những hàm saocho mỗi bức điện x P và mỗi chữ kí y A thoả mãn phương trình dưới đây
Ver(x,y) = True nếu y = sig(x)
False nếu y # sig(x)Với mỗi K thuộc K , hàm sig k và ver k là hàm thời gian đa thức Hàm ver k sẽ làhàm công khai còn sig k là mật
Khoá
28 bít 28 bít Dịch
28 bít
Dịch
28 bít
56 bít Hoán vị Chọn
48 bít
Ri-1
32 bít
Mở rộng Hoán vị
48 bít
Hộp S Thay thế Lựa chọn
Trang 23b Các loại chữ kí số thông dụng hiện nay:
Cho n=pq, p và q là các số nguyên tố Cho P=A=Zn và định nghĩa
K={(n,p,q,a,b): n=pq , p,q là nguyên tố, ab 1 (mod( (n))}
) 1 )(
1 ( )
a , là nghịch đảo của b theo (n)
Các giá trị n và b là công khai, còn p,q,a là mật
Kí:
Với K=(n,p,q,a,b) ta định nghĩa :
n a x x k sig
y ( ) mod
Kiểm tra chữ kí:
) (mod )
, (x y true x y b n k
Trang 24gọi Zp là phần tử nguyên thuỷ
1
* ,
chọn a Z*p khoá kí 1 (bí mật)
và định nghĩa:
p)}
(mod a :
) a, , {(p,
K
, ,
p là công khai
Chọn ngẫu nhiên rZ p 1, là khoá kí 2 (mật)
Kí:
) , ( ) , (x r
k sig
với r mod p, (x a )r1mod(p 1 )
Kiểm tra kí:
với x,Z p và Z p 1 ta có: ver(x, , ) true x(modp)
c Điểm khác biệt giữa Elgamal và RSA
với khoá mật a=77
khoá công khai b=119
Trang 257 Trình bày về Sơ đồ chữ ký số RSA
1 Sơ đồ chữ ký số
Chuẩn bị:
Cho n=pq, p và q là các số nguyên tố Cho P=A=Zn và định nghĩa
K={(n,p,q,a,b): n=pq , p,q là nguyên tố, ab 1 (mod( (n))}
) 1 )(
1 ( )
a , là nghịch đảo của b theo (n)
Các giá trị n và b là công khai, còn p,q,a là mật
Kí:
Với K=(n,p,q,a,b) ta định nghĩa :
n a x x k sig
y ( ) mod
Kiểm tra chữ kí:
) (mod )
, (x y true x y b n k
x,yZ n
2 Các đặc điểm đặc trưng của chữ ký số RSA
3 Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký
8 Trình bày về Sơ đồ chữ ký số Elgamal
Trang 26a : là khóa ký 1 (bí mật)
- Tính h=ga mod p
h: là khóa kiểm tra chữ ký (công khai)
- Chọn ngẫu nhiên r thuộc Z*p –1
= gr mod p = (x-a*x-a*)* r-1 mod (x-a*p-1)
Kiểm tra chữ ký
Ta cần xác định giá trị hàm
Ver(x, , )=(h
* gx mod p)Nếu chữ ký đúng thì Ver(x, g,d)=True,
Nếu sai Ver(x, g,d)=False
2 Các đặc điểm đặc trưng của chữ ký số Elgamal
- Chữ ký elgamal gồm hai phần (, )
- Sử dụng hai khóa ký (a, r) và một khóa kiểm tra
- Chữ ký không tất định (một bản rõ sẽ có thể có nhiều hơn 1 chỹ ký) vì do tachọn r ngẫu nhiên thuộc Z*p-1
Chữ ký Elgamal có thể giả mạo
Để giả mạo chữ ký, kẻ giả mạo cần tìm ra cặp (, ,x) sao cho thỏa mãn điềukiện kiểm tra
Các giá trị (,,x) được tính như sau:
Trang 27 = gi * hj mod p
= - *j-1 mod p-1
x = - *i*j-1 mod p-1Trong đó i,j Zp-2
Với bộ (,,x) được chọn như trên thỏa mãn điều kiện kiểm tra
Thật vậy ta có:
h = hgi * hj (gi * hj)-gi * hj * j-1 mod p
= hgi * hj * g-ij 1 gi hj h-gih j mod p = g-ij 1gi h j mod p
= g-ij 1 mod p = gx mod p
3 Ví dụ bằng số minh hoạ việc ký số, kiểm tra chữ ký