Đăng ký Đăng nhập
Trang chủ Công nghệ thông tin An ninh bảo mật Bài giảng an toàn bảo mật hệ thống thông tin chương 4 - gv. nguyễn minh thành...

Tài liệu Bài giảng an toàn bảo mật hệ thống thông tin chương 4 - gv. nguyễn minh thành

.PDF
40
451
86

Mô tả:

Chương 4 : CÁC PHƯƠNG PHÁP MÃ HOÁ HIỆN ĐẠI Giảng viên : Nguyễn Minh Thành E-mail : [email protected] Mục Lục Các loại hệ thống mã hoá Chuẩn mã hoá dữ liệu DES và các biến thể I. II. 1. 2. 3. DES Các mode của DES Các biến thể III. Chuẩn mã hoá cấp cao AES IV. Hệ thống mã hoá công khai RSA V. 2 Chữ ký số (Digital Signature) I. Các Loại Hệ Thống Mã Hoá  Có hai hệ thống mã hoá dựa vào khoá :  Hệ thống mã hoá đối xứng (Symmetric cryptosystem) : sử dụng một khoá (khoá bí mật) duy nhất để mã hoá và giải mã dữ liệu.  Hệ thống mã hoá bất đối xứng (Asymmetric cryptosystem) : sử dụng hai khoá, một khoá công khai để mã hoá (giải mã) và một khoá bí mật để giải mã (mã hoá) dữ liệu. 3 I. Các Loại Hệ Thống Mã Hoá (tt)  Đối với hệ mã hoá đối xứng  Người gửi và người nhận phải thoả thuận trước khoá bí mật khi muốn trao đổi thông tin với nhau.  Tính an tòan của thuật tóan đều nằm trong khóa, để lộ ra khóa có nghĩa là người nào đó có thể mã hóa và giải mã thông điệp. Quá trình mã hóa và giải mã với thuật tóan đối xứng có thể được biểu diễn như sau: 4  EK(M)=C  DK(C)=M I. Các Loại Hệ Thống Mã Hoá (tt)  5 Đối với hệ mã hoá đối xứng  Các hệ mã hoá cơ bản cũng thuộc vào hệ mã hoá này.  Thuật toán mã hoá có thể chia làm 2 loại :  Loại họat động dựa trên từng bit đơn hay từng byte gọi là stream algorithms hay stream ciphers.  Lọai thứ hai dựa trên plaintext là những nhóm bit, những nhóm bit này gọi là những block, cho nên thuật tóan được gọi là block algorithm hay block cipher.  Đối với thuật tóan máy tính hiện đại, một block điển hình là từ 64 bit, kích thước này đủ lớn để ngăn chận quá trình phân tích và đủ nhỏ để thuật tóan có thể họat động được. I. Các Loại Hệ Thống Mã Hoá (tt)  Đối với hệ mã hoá bất đối xứng  Người gửi và người nhận tự chọn một cặp khoá bí mật và công khai riêng cho mình. Khoá bí mật sẽ được giữ kín và khoá công khai sẽ được cho mọi người biết.  Cả 2 key này đều có thể được dùng để mã hóa và giải mã, nếu dữ liệu được mã hóa bằng key này thì phải được giải mã bằng key còn lại. 6 II. Chuẩn Mã Hoá Dữ Liệu DES  Vào cuối thập niên 60, Horsr Feistel đã đưa ra hệ mã Lucifer. Hệ mã này gắn liền với hãng IBM.  Uỷ ban Tiêu Chuẩn Hoa Kỳ đã dàn xếp với IBM và đựa hệ mã này thành tiêu chuẩn mã hoá dữ liệu (Data Encryption Standard) và miễn phí.  7 DES là hệ mã hoá đối xứng dùng khoá bí mật. II.1 DES (Data Encryption Standard)  Vào cuối thập niên 60, Horsr Feistel đã đưa ra hệ mã Lucifer. Hệ mã này gắn liền với hãng IBM.  Uỷ ban Tiêu Chuẩn Hoa Kỳ đã dàn xếp với IBM và đựa hệ mã này thành tiêu chuẩn mã hoá dữ liệu (Data Encryption Standard) và miễn phí.  DES là hệ mã hoá đối xứng dùng khoá bí mật.  Vấn đề chính trong phương pháp này là bên gửi và bên nhận phải trao đổi khóa một cách an tòan. 8 II.1 DES (Data Encryption Standard)  Mô tả tổng quan  DES là thuật toán mã hoá với input là khối 64bit, output cũng là khối 64bit.  DES sử dụng khóa 64 bit trong đó 56 bit làm key thực sự, còn 8 bit còn lại dùng để kiểm tra parity (bit kiểm tra tính chẵn lẻ). 9 II.1 DES (Data Encryption Standard)  Sự tạo khoá  DES thực hiện 16 vòng lặp với các phép tính và những hàm có chức năng đặc biệt để tạo ra khối mã hóa Cipher.  16 vòng lặp chạy cùng thuật toáng nhưng mỗi vòng lặp sử dụng một khoá riêng biệt 48bit. Các khoá này được tạo ra từ khối khoá 56bit (đã bỏ đi các bit parity), hoán chuyển các bit và trích ra 48bit làm khoá cho từng vòng.  10 Trong quá trình giải mã, các khoá sẽ được đảo ngược. II.1 DES (Data Encryption Standard)  Sự tạo khoá (tt)  Mô tả thuật toán sinh khoá chi tiết như sau Bước 1: Từ khóa key được hoán vị qua ma trận hoán vị PC-1 (Permuted Choice -1) •Từ khóa key được đưa vào khối hoán vị PC-1, thực chất khối này chỉ tác động lên 56 bit dữ liệu và loại bỏ 8 bit parity dùng để kiểm tra không mang tính bảo mật thông tin, sau khối hoán vi này sẽ tạo 56 bit ngõ ra và được chia thành 2 nhóm: 28 bit trái và 28 bit phải của khóa. • 28 bit đầu tiên (bên trái) được đặt vào ma trận C0 (Ci ,Di được xem là số vòng lặp có trong thuật toán) •28 bit sau được đặt vào ma trận D0. 11 II.1 DES (Data Encryption Standard)  Sự tạo khoá (tt)  Mô tả thuật toán sinh khoá chi tiết như sau Bước 2: Dịch xoay vòng sang trái thứ tự bit của ma trận Ci và Di trong một vòng lặp. Việc tính toán Ci và Di phụ thuộc vào Ci-1 và Di-1 và quá trình dịch chuyển từng bit của 2 nhóm sang trái theo quy tắc sau: Thứ tự vòng i 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Số bit dịch 1 vòng 1 2 2 2 2 2 2 1 2 2 2 2 2 2 Bước 3: Hoán vị Ci và Di qua ma trận nén PC-2 tạo từ khóa 48bit 12 1 II.1 DES (Data Encryption Standard)  Sự tạo khoá (tt)  13 Sơ đồ tạo khoá II.1 DES (Data Encryption Standard)  Quá trình mã hoá Thuật toán thực hiện 16 vòng, từ khoá K (64bit), sẽ tạo ra 16 khoá con (48bit) cho mỗi vòng.  Đầu tiên khối dữ liệu 64 bit sẽ được đưa vào khối hoán vị khởi tạo IP (Initial Permutation). Sau đó, khối dữ liệu sẽ được chia làm 2 nửa và đưa vào 2 khối L0 và R0(Li và Ri là thứ tự của mỗi vòng lặp).  14 II.1 DES (Data Encryption Standard)  Quá trình mã hoá Tại mỗi vòng lặp, input của vòng lặp này được tính từ output của vòng trước.  Nửa phải của vòng i-1 sẽ là nửa trái của vòng i, và nửa phải của vòng i-1 cùng với khoá ki sẽ đi qua một hàm f tạo ra 32bit, 32 bit này sẽ được xor với nửa trái của vòng i-1 để tạo ra nửa phải của vòng i.  15 II.1 DES (Data Encryption Standard)  Quá trình mã hoá  Hàm f cung cấp sức mạnh cho hệ mã hoá DES.  Hoạt động của hàm f :  Nửa phải (32bit) của vòng i-1 sẽ được mở rộng thanh 48bit và được xor với khoá ki, kết quả tạo ra 48bit và được chia thành 8 tập 6bit. Mỗi tập là một bảng thay thế gọi là S-box. S-box sẽ thay thế một số bit trong đó và tạo ra 4bit ở mỗi s-box. Kết hợp các bit đó ta được một chuỗi 32bit và là đầu ra cho hàm f. 16 II.1 DES (Data Encryption Standard)  Quá trình mã hoá  17 Hoạt động của hàm f : II.1 DES (Data Encryption Standard)  Quá trình mã hoá  Sau khi chạy qua hết 16 vòng, ở bước cuối cùng chuỗi 64bit sẽ được đưa vào chuỗi hoán vị ngược so với chuỗi hoán vị khởi tạo IP-1 trước khi trở thành chuỗi mã hoá. 18 II.1 DES (Data Encryption Standard)  19 Quá trình mã hoá II.2 Các Mode của DES  Khi lần đầu tiên được công bố, nó đã được thông báo là quá yếu do chiều dài 56bit của khoá là quá ngắn.  Do đó, DES đã được phát triển thêm nhiều Mode hoạt động khác nhau để tăng tính bảo mật. 20
- Xem thêm -

Tài liệu liên quan