intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng An toàn dữ liệu và mật mã: Chương 4 - Trường ĐH Nguyễn Tất Thành

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:32

11
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng An toàn dữ liệu và mật mã: Chương 4 Các giải thuật mã hóa khoá đối xứng, được biên soạn gồm các nội dung chính sau: Giải thuật mã hóa Khóa đối xứng DES; Giải thuật mã hóa Khóa đối xứng Triple DES; Giải thuật mã hóa Khóa đối xứng AES;...Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Bài giảng An toàn dữ liệu và mật mã: Chương 4 - Trường ĐH Nguyễn Tất Thành

  1. TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN AN TOÀN DỮ LIỆU VÀ MẬT MÃ Data security and encryption Giảng Viên: ThS. Dương Minh Tuấn Email: dmtuan@ntt.edu.vn 1
  2. Chương IV. Các giải thuật mã hóa KHÓA ĐỐI XỨNG 1. DES 2. Triple-DES 3. AES 2
  3. Các giải thuật mã hóa khóa đối xứng ❖ Trong hệ thống mã hóa đối xứng, trước khi truyền dữ liệu 2 bên gửi và nhận phải thỏa thuận về khóa dùng chung cho qúa trình mã hóa và giải mã, khóa được sinh ra bởi bộ sinh khóa. ❖ Sau đó, bên gửi sẽ mã hóa Plaintext bằng cách sử dụng khóa bí mật này và gửi thông điệp đã mã hóa cho bên nhận. ❖ Bên nhận sau khi nhận được thông điệp đã mã hóa sẽ sử dụng chính khóa bí mật mà hai bên thỏa thuận để giải mã và lấy ra Plaintext. 3
  4. Các giải thuật mã hóa khóa đối xứng ❖ Những gì bạn nhìn thấy hình trên chính là quá trình tiến hành trao đổi thông tin giữa bên gửi và bên nhận thông qua việc sử dụng phương pháp mã hóa đối xứng. ❖ Trong quá trình này thì thành phần quan trọng nhất cần phải được giữ kín chính là khóa. ❖ Việc trao đổi, thỏa thuận về thuật toán được sử dụng trong việc mã hóa có thể tiến hành một cách công khai, nhưng bước thỏa thuận về khóa trong việc mã hóa và giải mã phải 4 tiến hành bí mật.
  5. Các giải thuật mã hóa khóa đối xứng ❖ Phải có bước thỏa thuận về khóa, vì hai lý do cơ bản sau đây: 🡪 Nếu như hai bên đã thống nhất thuật toán mã hóa, nhưng sau đó nơi gửi gửi thông điệp đã mã hóa tới cho nơi nhận mà không cho biết khóa đã sử dụng trong quá trình mã hóa. 🡪 Nơi nhận không có khóa để giải mã cho nên sẽ chẳng hiểu được nội dung trong tài liệu muốn nói gì. 🡪 Vì thế bắt buộc ngoài việc trao đổi về thuật toán thì cần phải trao đổi về khóa 5
  6. Các giải thuật mã hóa khóa đối xứng ❖ Khóa phải được trao đổi theo một kênh bí mật nào đó. ❖ Ví dụ trực tiếp trao đổi (mặt đối mặt) hay gián tiếp trao đổi (thông qua điện thoại, email, tin nhắn). ❖ Phải thực hiện qua kênh truyền bí mật vì rất có thể sẽ có một bên thứ ba nghe lén cuộc trao đổi giữa hai bên và có được khóa, như vậy thông tin trao đổi sẽ bị kẻ khác biết được. 6
  7. Các giải thuật mã hóa khóa đối xứng ❖ Thêm vào đó hai bên buộc phải tin cậy lẫn nhau, không thể nhờ một người khác gửi hộ khóa được vì rất có thể người này sẽ dùng khóa đó để ăn cắp thông tin Thuật toán mã hóa loại này có ưu điểm là nhanh, độ an toàn gần như tuyệt đối nếu khô để lộ khóa bí mật. ❖ Chính vì vậy mấu chốt của việc sử dụng loại thuật toán mã hóa này là việc truyền khóa bí mật cho bên nhận một cách an toàn. 7
  8. Các giải thuật mã hóa khóa đối xứng Các giải thuật mã hóa khóa đối xứng (symetric key encryption) ▪ Còn gọi là mã hóa khóa riêng hay bí mật (secret/private key encryption): ▪ Sử dụng một khóa (key) duy nhất cho cả quá trình mã hóa và giải mã. ❖ Đặc điểm: ▪ Kích thước khóa tương đối ngắn (64, 128, 192, 256 bít) ▪ Tốc độ nhanh ▪ Độ an toàn cao ▪ Khó khăn trong quản lý và phân phối khóa. 8
  9. Các giải thuật mã hóa khóa đối xứng 9
  10. 1. Giải thuật mã hóa Khóa đối xứng DES DES (Data Encryption Standard) được sử dụng phổ biến: ▪ DES được phát triển tại IBM vào đầu những năm 1970; ▪ Được thừa nhận là chuẩn mã hóa tại Mỹ (NSA) vào năm 1976; ▪ DES được sử dụng rộng rãi trong những năm 70 và 80. ❖ Hiện nay DES không được coi là an toàn do: ▪ Không gian khóa nhỏ (khóa 64 bít, trong đó thực sử dụng 56 bít) ▪ Tốc độ tính toán của các hệ thống máy tính ngày càng nhanh. ❖ Đặc điểm của DES: ▪ Là dạng mã hóa khối, kích thước khối vào 64 bít ▪ Khóa 64 bít, trong đó thực sử dụng 56 bít, 8 bít dùng cho kiểm tra chẵn lẻ ▪ DES sử dụng chung một giải thuật cho cả hai khâu mã hóa và giải mã. 10
  11. 1. Giải thuật mã hóa Khóa đối xứng DES ❖ Mã hóa và giải mã một khối dữ liệu với DES 11
  12. 1. Giải thuật mã hóa Khóa đối xứng DES Mã hóa và giải mã một khối dữ liệu với DES ❖ Các bước thực hiện mã hóa của DES với mỗi khối dữ liệu 64 bít: ▪ Bước hoán vị khởi tạo (IP – Initial Permutation); ▪ 16 vòng lặp chính thực hiện xáo trộn dữ liệu theo hàm Feistel (F); ▪ Bước hoán vị kết thúc (FP – Final Permutation). ❖ Sử dụng phép ⊕ (XOR) để kết hợp trong quá trình lặp. 12
  13. 1. Giải thuật mã hóa Khóa đối xứng DES Tiến trình mã hóa một khối dữ liệu với DES 13
  14. 1. Giải thuật mã hóa Khóa đối xứng DES Tiến trình mã hóa một khối dữ liệu với DES ❖ Các bước thực hiện hàm F (Fiestel) của DES: ▪ E (Expansion) – mở rộng ▪ ⊕: trộn với một phần khóa ▪ Si (Substitution) - thay thế ▪ P – Hoán vị. 14
  15. 1. Giải thuật mã hóa Khóa đối xứng DES ❖ Chia khối 64 bít thành 2 khối 32 bít và xử lý lần lượt. ❖ Các bước thực hiện hàm F (Fiestel) với khối dữ liệu 32 bít của DES: ▪ E (Expansion): thực hiện mở rộng 32 bít đầu vào thành 48 bít bằng cách nhân đôi một nửa số bit. ▪ ⊕: Trộn 48 bit ở bước E với khóa phụ 48 bít. Có 16 khóa phụ được tạo từ khóa chính để sử dụng cho 16 vòng lặp. ▪ Si (Substitution): Khối dữ liệu 48 bit được chia thành 8 khối 6 bít và được chuyển cho các bộ thay thế (S1-S8). • Mỗi bộ thay thế sử dụng phép chuyển đổi phi tuyến tính để chuyển 6 bit đầu vào thành 4 bit đầu ra theo bảng tham chiếu. Các bộ thay thế là thành phần nhân an ninh (security core) của DES. ▪ P: 32 bít đầu ra từ các bộ thay thế được sắp xếp bằng phép hoán vị cố định (fixed permutation) cho ra đầu ra 32 bít. 15
  16. 1. Giải thuật mã hóa Khóa đối xứng DES ❖ Tạo bộ khóa phụ cho 16 vòng lặp: ▪ 56 bít khóa được chọn từ khóa 64 bit ban đầu bởi PC1 (Permuted Choice 1). 8 bit còn lại được hủy hoặc dùng để kiểm tra chẵn lẻ; ▪ 56 bít được chia thành 2 phần 28 bit, mỗi phần được xử lý riêng; ▪ Mỗi phần được quay trái 1 hoặc 2 bit. ▪ Hai phần được ghép lại và 48 bit được chọn làm khóa phụ 1 bởi PC2; ▪ Lặp lại bước trên để tạo 15 khóa phụ còn lại. 16
  17. 1. Giải thuật mã hóa Khóa đối xứng DES ❖Giải mã trong DES: ▪ Có thể sử dụng giải thuật mã hóa DES để giải mã; ▪ Các bước thực hiện giống quá trình mã hóa; ▪ Các khóa phụ sử dụng cho các vòng lặp được sử dụng theo trật tự ngược lại: Khóa phụ 16, 15,…, 2, 1 cho các vòng 1, 2,…, 15, 16 tương ứng. 17
  18. 2. Giải thuật mã hóa Khóa đối xứng Triple DES ❖Triple DES (3-DES) còn được gọi là Triple Data Encryption Algorithm (TDEA hoặc Triple DEA) được phát triển từ DES bằng cách áp dụng DES 3 lần cho mỗi khối dữ liệu; ❖ Triple DES sử dụng bộ 3 khóa DES: K1, K2, K3, mỗi khóa kích thước hiệu dụng 56 bít; ❖ Các lựa chọn bộ khóa: ▪ Lựa chọn 1: cả 3 khóa độc lập (168 bít) ▪ Lựa chọn 2: K1 và K2 độc lập, K3 = K1 (112 bít) ▪ Lựa chọn 3: 3 khóa giống nhau, K1 = K2 = K3 (56 bít). ❖ Kích thước khối dữ liệu vào: 64 bít 18
  19. 2. Giải thuật mã hóa Khóa đối xứng Triple DES ❖ Giải thuật mã hóa: ▪ ciphertext = EK3(DK2(EK1(plaintext))) 🡪 Mã hóa bằng khóa K1, giải mã bằng K2 và mã hóa bằng K3. ❖ Giải thuật giải mã: ▪ plaintext = DK1(EK2(DK3(ciphertext))) 🡪 Giải mã bằng K3, mã hóa bằng K2 và giải mã bằng K1 19
  20. 3. Giải thuật mã hóa Khóa đối xứng AES ❖ AES (Advanced Encryption Standard) là một chuẩn mã hóa dữ liệu được NIST công nhận năm 2001; ❖ AES được xây dựng dựa trên Rijndael cipher phát triển bởi 2 nhà mật mã học người Bỉ là Joan Daemen và Vincent Rijmen; ▪ Rijndael cipher là bộ mã hóa được lựa chọn để xây dựng AES sau khi giành chiến thắng trong cuộc thi tuyển chọn bộ mã hóa làm chuẩn mã hóa mới thay cho DES. ▪ AES về cơ bản giống Rijndael cipher. 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2