bài 3 mã hóa đối xứng hiện đại

21 2.3K 1
bài 3 mã hóa đối xứng hiện đại

Đ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

BẢO MẬT THÔNG TIN BÀI 3: MÃ HÓA ĐỐI XỨNG HIỆN ĐẠI Nguyễn Hữu Thể 1 Nội dung 1. TinyA5/1 2. A5/1 3. TinyRC4 4. RC4 2 − Mã hóa cổ điển  bản tin ngôn ngữ,  một đơn vị mã hóa là chữ cái,  phương thức thay thế hay phương thức hoán vị. − Thông tin ngày ngày nay  HTML, hình ảnh, video, âm thanh… => Biểu diễn trên máy vi tính dưới dạng một dãy các số nhị phân.  Trong máy tính: chữ cái được biểu diễn bằng mã ASCII. 3 Ví dụ: − Bản tin: attack − Mã ASCII: 97 116 116 97 99 107 − Biểu diễn nhị phân: 01100001 01110100 01110100 01100001 01100011 01101011 4 Mã hóa đối xứng hiện đại Ví dụ mã hóa đối xứng hiện đại − Bản rõ là các chữ cái của một ngôn ngữ gồm có 8 chữ cái A, B, C, D, E, F, G, H trong đó mỗi chữ cái được biểu diễn bằng 3 bít. − Nếu có bản rõ là “ head ” => nhị phân là: 111100000011 5 Mã hóa đối xứng hiện đại − Giả sử dùng một khóa K gồm 4 bít 0101 để mã hóa bản rõ trên bằng phép XOR :  bản rõ: 1111 0000 0011 (head)  khóa: 0101 0101 0101  bản mã: 1010 0101 0110 (FBCG) − Đơn vị mã hóa không phải là một khối 4 bít. − Để giải mã, lấy bản mã XOR một lần nữa với khóa thì có lại bản rõ ban đầu. 6 Mã hóa đối xứng hiện đại − Mã hóa bằng phép XOR :  Khóa được lặp lại: • => điểm yếu giống như mã hóa Vigenere. • Khắc phục: dùng một bộ sinh số ngẫu nhiên để tạo khóa dài, giả lập mã hóa One-Time pad.  Một khối được mã hóa bằng phép XOR với khóa: • => Không an toàn vì chỉ cần biết một cặp khối bản rõ - bản mã (vd: 1111 và 1010 ) => dễ dàng tính được khóa. • Khắc phục: tìm các phép mã hóa phức tạp hơn phép XOR 7 Mã dòng (Stream Cipher) − Mã dòng có các đặc tính sau: 8 Mã dòng (Stream Cipher) − Giải mã => thực hiện ngược lại  Bản mã C được XOR với dãy số ngẫu nhiên S để cho ra lại bản rõ ban đầu: − Ví dụ này không phải là mã dòng vì s0, s1, s2 lặp lại khóa K . − Về phương diện khóa, ví dụ này giống mã Vigenere. 9 Mã dòng (Stream Cipher) − Với mã dòng, các số s i được sinh ra phải đả m bảo một độ ngẫu nhiên nào đó (chu kỳ tuần hoàn dài) − Khóa có chiều dài ngắn: Vigenere => không bảo đảm an toàn − Khóa có chiều dài bằng chiều dài bản tin: One-Time Pad => không thực tế. One-time Pad, dùng rằng không hoàn toàn thực sự ngẫu nhiên. − Mã dòng cân bằng giữa hai điểm này => khóa ngắn nhưng dãy số sinh ra bảo đảm một độ ngẫu nhiên cần thiết như khóa của 1 0 A5/1 − A5/1 được dùng trong mạng điện thoại GSM, để bảo mật dữ liệu trong quá trình liên lạc giữa máy điện thoại và trạm thu phát sóng vô tuyến. − Đơn vị mã hóa của A5/1 là một bít. − Bộ sinh số mỗi lần sẽ sinh ra hoặc bít 0 hoặc bít 1 để sử dụng trong phép XOR. 11 TinyA5/1 − Mô hình thu nhỏ của A5/1 gọi là TinyA5/1. − Cơ chế thực hiện của bộ sinh số TinyA5/1 là như sau: − Bộ sinh số gồm 3 thanh ghi X, Y, Z.  Thanh ghi X gồm 6 bit, ký hiệu là (x 0 , x 1 , …, x 5 ).  Thanh ghi Y gồm 8 bit (y 0 , y 1 , …, y 7 ).  Thanh ghi Z lưu 9 bit (z 0 , z 1 , …, z 8 ). − Khóa K ban đầu có chiều dài 23 bít và lần lượt được phân bố vào các thanh ghi: K -> XYZ 12 TinyA5/1 − Các thanh ghi X, Y, Z được biến đổi theo 3 quy tắc: 13 TinyA5/1 − Hàm maj(x, y, z) nếu trong 3 bít x, y, z có từ hai bít 0 trở lên thì hàm trả về giá trị 0, nếu không hàm trả về giá trị 1. − Tại bước sinh số thứ i, các phép tính sau được thực hiện:  m = maj(x 1 , y 3 , z 3 )  If x 1 = m then thực hiện quay X  If y 3 = m then thực hiện quay Y  If z 3 = m then thực hiện quay Z − Và bít được sinh ra là: [...]... a) Giai đoạn khởi tạo − Dãy S gồm các số nguyên 3 bít từ 0 đến 7 được sắp thứ tự tăng dần Sau đó dựa trên các phần tử của khóa K, các phần tử của S được hoán vị lẫn nhau đến một mức độ ngẫu nhiên nào đó 20 - Hoán vị S Ví dụ: − Mã hóa bản rõ: P = 001000110 (từ ‟bag”) − Khóa K gồm 3 số 2, 1, 3 (N =3) 21 Thực hiện đến khi i=7 và lúc đó dãy S là 6 0 7 1 2 3 5 4 TinyRC4 b) Giai đoạn sinh số: − Các phần tử... liệu trong liệu giữa Web Server và trình duyệt Web dụng trong mã hóa WEP của mạng Wireless 18 TinyRC4 − Là mô hình thu nhỏ của RC4 − Đơn vị mã hóa của TinyRC4 là 3 bít − TinyRC4 dùng 2 mảng S và T mỗi mảng gồm 8 số nguyên 3 bít (từ 0 đến 7) − Khóa là một dãy gồm N số nguyên 3 bít với N có thể lấy giá trị từ 1 đến 8 Bộ sinh số mỗi lần sinh ra 3 bít để sử dụng trong phép XOR − Quá trình sinh số của TinyRC4... được XOR với bít thứ i trong bản rõ để c i ó được bít thứ i trong bản mã theo quy tắc của mã dòng 4 Ví dụ: mã hóa bản rõ P=111 (chữ h) với khóa K là 100101 01001110.100110000 1 Mã dòng (Stream Cipher) 15 A5/1 − A5/1 hoạt động giống như TinyA5/1 − Kích thước thanh ghi X, Y, Z lần lượt là 19, 22 và 23 bít 16 A5/1 − Hàm maj được tính trên 3 bít x , y , z Sau 8 10 khi quay xong bít sinh ra là: − Toàn bộ quá... TinyRC4 b) Giai đoạn sinh số: − Các phần tử của S tiếp tục được hoán vị − Tại mỗi bước sinh số, hai phần tử ra số bản rõ k 3 bít là số của dãy S được chọn để tính được dùng để XOR với đơn vị mã hóa của 2 2 - Tiếp tục ví dụ trên, quá trình sinh số mã hóa bản rõ ‟bag” thực hiện: 23 public static int[] cryptRC4(int S[], int T[], int K[], int N) { // Giai đoạn khởi tạo for (int i = 0; i < 8; i++) { S[i]... // Chú ý: Phương thức (hàm) này có thể tách ra thành nhiều } phương thức nhỏ 25 RC4 − Cơ chế hoạt động của RC4 cũng giống như TinyRC4 với các đặc tính sau:  Đơn vị mã hóa của RC4 là một byte 8 bít  Mảng S và T gồm 256 số nguyên 8 bít  Khóa K là một dãy gồm N số nguyên 8 bít với N có thể lấy giá trị từ 1 đến 256  Bộ sinh số mỗi lần sinh ra một byte để sử dụng trong phép XOR 26 RC4 − Hai giai đoạn . vị mã hóa không phải là một khối 4 bít. − Để giải mã, lấy bản mã XOR một lần nữa với khóa thì có lại bản rõ ban đầu. 6 Mã hóa đối xứng hiện đại − Mã hóa bằng phép XOR :  Khóa. THÔNG TIN BÀI 3: MÃ HÓA ĐỐI XỨNG HIỆN ĐẠI Nguyễn Hữu Thể 1 Nội dung 1. TinyA5/1 2. A5/1 3. TinyRC4 4. RC4 2 − Mã hóa cổ điển  bản tin ngôn ngữ,  một đơn vị mã hóa là chữ. 111100000011 5 Mã hóa đối xứng hiện đại − Giả sử dùng một khóa K gồm 4 bít 0101 để mã hóa bản rõ trên bằng phép XOR :  bản rõ: 1111 0000 0011 (head)  khóa: 0101 0101 0101  bản mã: 1010

Ngày đăng: 22/10/2014, 22:10

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan