Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 32 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
32
Dung lượng
1,04 MB
Nội dung
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 Chương IV Các giải thuật mã hóa KHĨA ĐỐI XỨNG DES Triple-DES AES 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 truyền liệu bên gửi nhận phải thỏa thuận khóa dùng chung cho qúa trình mã hóa giải mã, khóa sinh sinh khóa ❖ Sau đó, bên gửi mã hóa Plaintext cách sử dụng khóa bí mật gửi thơng điệp mã hóa cho bên nhận ❖ Bên nhận sau nhận thơng điệp mã hóa sử dụng khóa bí mật mà hai bên thỏa thuận để giải mã lấy Plaintext Các giải thuật mã hóa khóa đối xứng ❖ Những bạn nhìn thấy hình q trình tiến hành trao đổi thông tin bên gửi bên nhận thông qua việc sử dụng phương pháp mã hóa đối xứng ❖ Trong trình thành phần quan trọng cần phải giữ kín khóa ❖ Việc trao đổi, thỏa thuận thuật toán sử dụng việc mã hóa tiến hành cách cơng khai, bước thỏa thuận khóa việc mã hóa giải mã phải tiến hành bí mật Các giải thuật mã hóa khóa đối xứng ❖ Phải có bước thỏa thuận khóa, hai lý sau đây: 🡪 Nếu hai bên thống thuật tốn mã hóa, 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 q trình mã hóa 🡪 Nơi nhận khơng có khóa để giải mã chẳng hiểu nội dung tài liệu muốn nói 🡪 Vì bắt buộc ngồi việc trao đổi thuật tốn cần phải trao đổi khóa Các giải thuật mã hóa khóa đối xứng ❖ Khóa phải trao đổi theo kênh bí mật ❖ 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 qua kênh truyền bí mật có bên thứ ba nghe trao đổi hai bên có khóa, thơng tin trao đổi bị kẻ khác biết 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, nhờ người khác gửi hộ khóa người dùng khóa để ăn cắp thơng tin Thuật tốn mã hóa loại có ưu điểm nhanh, độ an toàn gần tuyệt đối khơ để lộ khóa bí mật ❖ Chính mấu chốt việc sử dụng loại thuật toán mã hóa việc truyền khóa bí mật cho bên nhận cách an toàn 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 mã hóa khóa riêng hay bí mật (secret/private key encryption): ▪ Sử dụng khóa (key) cho trình mã hóa 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 tồn cao ▪ Khó khăn quản lý phân phối khóa Các giải thuật mã hóa khóa đối xứng Giải thuật mã hóa Khóa đối xứng DES DES (Data Encryption Standard) sử dụng phổ biến: ▪ DES phát triển IBM vào đầu năm 1970; ▪ Được thừa nhận chuẩn mã hóa Mỹ (NSA) vào năm 1976; ▪ DES sử dụng rộng rãi năm 70 80 ❖ Hiện DES khơng coi an tồn do: ▪ Khơng gian khóa nhỏ (khóa 64 bít, thực sử dụng 56 bít) ▪ Tốc độ tính tốn hệ thống máy tính ngày nhanh ❖ Đặc điểm 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, thực sử dụng 56 bít, bít dùng cho kiểm tra chẵn lẻ ▪ DES sử dụng chung giải thuật cho hai khâu mã hóa giải mã 10 Giải thuật mã hóa Khóa đối xứng Triple DES ❖Triple DES (3-DES) gọi Triple Data Encryption Algorithm (TDEA Triple DEA) phát triển từ DES cách áp dụng DES lần cho khối liệu; ❖ Triple DES sử dụng khóa DES: K1, K2, K3, khóa kích thước hiệu dụng 56 bít; ❖ Các lựa chọn khóa: ▪ Lựa chọn 1: khóa độc lập (168 bít) ▪ Lựa chọn 2: K1 K2 độc lập, K3 = K1 (112 bít) ▪ Lựa chọn 3: khóa giống nhau, K1 = K2 = K3 (56 bít) ❖ Kích thước khối liệu vào: 64 bít 18 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 khóa K1, giải mã K2 mã hóa K3 ❖ Giải thuật giải mã: ▪ plaintext = DK1(EK2(DK3(ciphertext))) 🡪 Giải mã K3, mã hóa K2 giải mã K1 19 Giải thuật mã hóa Khóa đối xứng AES ❖ AES (Advanced Encryption Standard) chuẩn mã hóa liệu NIST công nhận năm 2001; ❖ AES xây dựng dựa Rijndael cipher phát triển nhà mật mã học người Bỉ Joan Daemen Vincent Rijmen; ▪ Rijndael cipher mã hóa lựa chọn để xây dựng AES sau giành chiến thắng thi tuyển chọn mã hóa làm chuẩn mã hóa thay cho DES ▪ AES giống Rijndael cipher 20 Giải thuật mã hóa Khóa đối xứng AES ❖ Đặc điểm AES: ▪ Kích thước khối liệu AES 128 bít; ▪ Kích thước khóa 128, 192, 256 bit; ▪ AES thiết kế dựa mạng hoán vị - thay (substitutionpermutation network); • Có thể đạt tốc độ cao cài đặt phần mềm phần cứng ❖ AES vận hành dựa ma trận 4x4, gọi state (trạng thái); ❖ Kích thước khóa định số vịng lặp chuyển đổi cần thực để chuyển rõ thành mã: ▪ 10 vịng lặp với khóa 128 bít; ▪ 12 vịng lặp với khóa 192 bít; ▪ 14 vịng lặp với khóa 256 bít 21 Giải thuật mã hóa Khóa đối xứng AES ❖ Mô tả khái quát giải thuật AES: Mở rộng khóa (KeyExpansion): Các khóa phụ dùng vịng lặp sinh từ khóa AES sử dụng thủ tục sinh khóa Rijndael Vịng khởi tạo (InitialRound) AddRoundKey: Mỗi byte state kết hợp với khóa phụ sử dụng XOR Các vịng lặp (Rounds) a) SubBytes: bước thay phi tuyến tính, byte state thay byte khác sử dụng bảng tham chiếu; b) ShiftRows: bước đổi chỗ, dịng state dịch số bước theo chu kỳ; c) MixColumns: trộn cột state, kết hợp bytes cột d) AddRoundKey Vòng cuối (Final Round - không MixColumns) a) SubBytes; b) ShiftRows; c) AddRoundKey 22 Giải thuật mã hóa Khóa đối xứng AES Các bước xử lý AES 23 Giải thuật mã hóa Khóa đối xứng AES Các bước xử lý AES 24 Giải thuật mã hóa Khóa đối xứng AES ❖ Mở rộng khóa sử dụng thủ tục sinh khóa Rijndael: ▪ Rotword: quay trái bít; ▪ SubBytes ▪ Rcon: tính tốn giá trị Rcon(i) ▪ ShiftRow 25 Giải thuật mã hóa Khóa đối xứng AES ❖Bước SubBytes: ▪ Mỗi byte ma trận state thay byte Rijndael S-box, hay bij = S(aij) 26 Giải thuật mã hóa Khóa đối xứng AES ❖Bước ShiftRows: ▪ Các dòng ma trận state dịch theo chu kỳ sang trái; ▪ Dòng thứ giữ nguyên 27 Giải thuật mã hóa Khóa đối xứng AES ❖Bước MixColumns: ▪ Mỗi cột ma trận state nhân với đa thức c(x) 28 Giải thuật mã hóa Khóa đối xứng AES ❖ Bước AddRoundKey: ▪ Mỗi byte ma trận state kết hợp với byte khóa phụ sử dụng phép ⊕ (XOR) 29 Giải thuật mã hóa Khóa đối xứng AES Q trình mã hóa giải mã AES 30 TÓM TẮT CHƯƠNG DES AES 31 Thanks 32