SlideShare a Scribd company logo
1 of 55
Chủ đề 4: Data Encryption Standard và  Advanced Encryption Standard ThS. Trần Minh Triết
Nội dung ,[object Object],[object Object]
Mã hóa tích (Product Cipher) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Quy trình mã hóa theo khối Key Schedule Data Path Secret Key PlainText Round Keys (Sub Keys) 
Quy trình mã hóa theo khối ,[object Object],[object Object],[object Object],[object Object]
Kiến trúc chu kỳ mã hóa ,[object Object],[object Object],[object Object],[object Object],[object Object]
Data Encryption Standard
Data Encryption Standard ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Quy trình Mã hóa theo kiến trúc Feistel … … L i  =  R i -1 R i  =  L i -1      f  ( R i -1 ,  K i -1 ) Chu kỳ mã hóa  i Chu kỳ mã hóa  Nr Chu kỳ mã hóa 1 L i -1 R i -1 K i -1 L i R i f 
Quy trình Giải mã theo kiến trúc Feistel … … R i -1  =  L i L i-1  =  R i      f  ( L i ,  K i ) Chu kỳ giải mã  Nr Chu kỳ giải mã  i Chu kỳ giải mã  1 L i R i K i L i -1 R i -1 f 
Quy trình Mã hóa của giải thuật DES … … Plaintext  (64-bit) Ciphertext  (64-bit) IP: Initial Permutation FP: Final Permutation FP = IP -1 Ghi chú: FP và IP không có ý nghĩa về mặt mã hóa, chi có tác dụng để nạp dữ liệu vào và ra các khối dữ liệu (theo cơ chế phần cứng giữa thập niên 1970!!!) Chu kỳ mã hóa 1 Chu kỳ mã hóa  i Chu kỳ mã hóa 16 Initial Permutation  Final Permutation ( R 16 , L 16 )
Initial Permutation Ví dụ: Bit thứ 58 của  x  trở thành bit đầu tiên của  IP( x ) Bit thứ 50 của x trở thành bit thứ hai của  IP( x ) 7 15 23 31 39 47 55 63 5 13 21 29 37 45 53 61 3 11 19 27 35 43 51 59 1    9 17 25 33 41 49 57 8 16 24 32 40 48 56 64 6 14 22 30 38 46 54 62 4 12 20 28 36 44 52 60 2 10 18 26 34 42 50 58 IP
Final Permutation Ví dụ: Bit thứ 58 của  x  trở thành bit đầu tiên của  IP( x ) Bit thứ 50 của x trở thành bit thứ hai của  IP( x ) 25 57 17 49    9 41 1 33 26 58 18 50 10 42 2 34 27 59 19 51 11 43 3 35 28 60 20 52 12 44 4 36 29 61 21 53 13 45 5 37 30 62 22 54 14 46 6 38 31 63 23 55 15 47 7 39 32 64 24 56 16 48 8 40 IP
Expansion Bảng E: quy tắc mở rộng từ 32 bit thành 48 bit    1 32 31 30 29 28 29 28 27 26 25 24 25 24 23 22 21 20 21 20 19 18 17 16 17 16 15 14 13 12 13 12 11 10    9    8    9    8    7    6    5    4    5    4    3    2    1 32 Bảng chọn lựa bit E
Hàm  f   trong DES P ermutation  E xpansion  Nửa khối (32 bit) 48 bit S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 8 Sub Key (48 bit)
S-box Ví dụ: B j  =  b 1 b 2 b 3 b 4 b 5 b 6  thì  S j ( B i )  =  S j [ b 1 b 6 ][ b 2 b 3 b 4 b 5 ] 13    6    0 10 14    3 11    5    7    1    9    4    2    8 12 15    0    5 10    3    7    9 12 15 11    2    6 13    8 14    1    4    8    3    5    9 11 12    6 10    1 13    2 14    4    7 15    0    7    0    9    5 12    6 10    3    8 11 15    2    1 13    4 14 S 1    9 14    5    0 12    7    6 11    2    4 15    3    1 10    8 13 15    2    3    9    6 12    8    5    1 13    4 10 11    7 14    0    5 11    9    6 10    1    0 12 14    8    2 15    7    4 13    3 10    5    0 12 13    2    7    9    4    3 11    6 14    8    1 15 S 2
S-box 12    2    5 11    3 14 15    4    7    8    9    6    0 13 10    1    7 14 10    5 12    2    1 11    0    3 15    8    9    4    6 13    1 15 11 12 14    5    8    2 10    6    4    3    9    0    7 13    8    2    4 11    7 12 13    1    5 15    3    6 14    9    0 10 S 3 14    2    7 12 11    5    4    9    8 13    1 10    6    0 15    3    4    8    2    5 14    3    1 15 13    7 11 12    0    9    6 10    9 14 10    1 12    2    7    4    3    0 15    6    5 11    8 13 15    4 12 11    5    8    2    1 10    9    6    0    3 14 13    7 S 4
S-box    3    5    4 10    9    0 15    6 13    2 14    1    7 12    8 11 14    0    3    6    5 12    9 15    8    7 13 10 11    1    2    4    6    8    9    3 10 15    0    5    1 13    7    4 12    2 11 14    9 14    0 13 15    3    5    8    6 11 10    7    1    4 12    2 S 5 13    8    0    6    7    1 14 11 10 15    5    9 12    2    3    4    6 11 13    1 10    4    0    7    3 12    8    2    5 15 14    9    8    3 11    0 14 13    1    6    5    9 12    7    2    4 15 10 11    5    7 14    4    3 13    0    8    6    2    9 15 10    1 12 S 6
S-box 12    3    2 14 15    0    5    9    7 10    4    1    8 13 11    6    2    9    5    0    8    6 15 10 14    7    3 12 13 11    4    1    6    8 15    2 12    5    3 14 10    1    9    4    7 11    0 13    1    6 10    5    7    9 12    3 13    8    0 15 14    2 11    4 S 7 11    6    5    3    0    9 12 15 13    8 10    4    7 14    1    2    8    5    3 15 13 10    6    0    2 14 12    9    1    4 11    7    2    9 14    0 11    6    5 12    4    7    3 10    8 13 15    1    7 12    0    5 14    3    9 10    1 11 15    6    4    8    2 13 S 8
Bảng hoán vị P 25    4 11 22    6 30 13 19    9    3 27 32 14 24    8    2 10 31 18    5 26 23 15    1 17 28 12 29 21 20    7 16 P
Key Schedule ,[object Object],[object Object],[object Object],[object Object],[object Object]
Các hoán vị trong Key Schedule Chọn 56 bit (bỏ bit 8, 16, 24, 32,  40, 48, 56, 64 Chọn 48 bit (bỏ bit 9, 18, 22, 25,  35, 38, 43, 54) 32 29 36 50 42 46 53 34 56 39 49 44 48 33 45 51 40 30 55 47 37 31 52 41    2 13 20 27    7 16    8 26    4 12 19 23 10 21    6 15 28    3    5    1 24 11 17 14 PC-2    4 12 20 28    5 13 21 29 37 45 53 61    6 14 22 30 38 46 54 62    7 15 23 31 39 47 55 63 36 44 52 60    3 11 19 27 35 43 51 59    2 10 18 26 34 42 50 58    1    9 17 25 33 41 49 57 PC-1
Một số nhận xét ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Advanced Encryption Standard
Phương pháp mã hóa Rijndael ,[object Object],[object Object]
Phương pháp mã hóa Rijndael ,[object Object],[object Object]
Một số khái niệm Toán học ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Phép toán trên GF (2 8 ) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Đa thức với hệ số trên  GF ( 2 8 )
Đa thức với hệ số trên  GF ( 2 8 )
Phương pháp Rijndael ,[object Object],[object Object],[object Object],[object Object]
Biểu diễn khối dữ liệu và mã khóa Nb=4 Nb=6 Nb=8 S 21 S 00 S 01 S 02 S 03 S 10 S 11 S 12 S 13 S 20 S 22 S 23 S 30 S 31 S 32 S 33 S 04 S 05 S 14 S 15 S 24 S 25 S 34 S 35 S 06 S 07 S 16 S 17 S 26 S 27 S 36 S 37
Chu kỳ mã hóa bình thường Chu kỳ  i Chu kỳ  Nr … … Chu kỳ 1 Mix Columns Add Round Key Sub Bytes Shift Rows Mix Columns Add Round Key Sub Bytes Shift Rows Chu kỳ  Nr -1 Mix Columns Add Round Key Sub Bytes Shift Rows Mix Columns Add Round Key Sub Bytes Shift Rows Add Round Key Sub Bytes Shift Rows Mix Columns Add Round Key Sub Bytes Shift Rows
Chu kỳ mã hóa cuối Chu kỳ  i Chu kỳ  Nr … … Chu kỳ 1 Mix Columns Add Round Key Sub Bytes Shift Rows Mix Columns Add Round Key Sub Bytes Shift Rows Chu kỳ  Nr -1 Mix Columns Add Round Key Sub Bytes Shift Rows Add Round Key Sub Bytes Shift Rows Add Round Key Sub Bytes Shift Rows Add Round Key Sub Bytes Shift Rows
Kiến trúc Substitution-Permutation Network Mix Columns Add Round Key Sub Bytes Shift Rows Add Round Key 32-bit LT 32-bit LT 32-bit LT 32-bit LT
Quy trình mã hóa của thuật toán Rijndael ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Phép biến đổi  SubBytes S' 00 S' 01 S' 02 S' 03 S' 10 S' 11 S' 12 S' 13 S' 20 S' 22 S' 23 S' 30 S' 31 S' 32 S' 33 S ij S-Box S’ ij SubBytes
Phép biến đổi  SubBytes ,[object Object],[object Object]
Phép biến đổi  SubBytes ,[object Object],[object Object],[object Object],[object Object],[object Object]
Phép biến đổi  SubBytes
Phép biến đổi ngược  InvSubBytes ,[object Object],[object Object],[object Object],[object Object],[object Object]
Phép biến đổi ngược  InvSubBytes
Phép biến đổi  ShiftRows ShiftRows
Phép biến đổi  ShiftRows ,[object Object],[object Object],[object Object],4 3 1 8 3 2 1 6 3 2 1 4 Nb 3 2 1 r shift ( r ,  Nb )
Phép biến đổi  AddRoundKey l  =  round * Nb  AddRoundKey S 13 S 12 S 11 S 10 S 23 S 22 S 21 S 20 S 33 S 32 S 31 S 30 S 03 S 02 S 01 S 00 S' 13 S' 12 S' 11 S' 10 S' 23 S' 22 S' 21 S' 20 S' 33 S' 32 S' 31 S' 30 S' 03 S' 02 S' 01 S' 00 S 3 c S 2 c S 1 c S 0 c S’ 3 c S’ 2 c S’ 1 c S’ 0 c W l +3 W l +2 W l +1 W l W l + c
Phép biến đổi  AddRoundKey ,[object Object],[object Object],[object Object]
Phép biến đổi  MixColumns S 21 S 00 S 01 S 02 S 03 S 10 S 11 S 12 S 13 S 20 S 22 S 23 S 30 S 31 S 32 S 33 S i S' 00 S' 01 S' 02 S' 03 S' 10 S' 11 S' 12 S' 13 S' 20 S' 22 S' 23 S' 30 S' 31 S' 32 S' 33 S' 21 S ’ i MixColumns  a ( x )
Phép biến đổi  MixColumns ,[object Object],[object Object],[object Object],[object Object],[object Object]
Phép biến đổi ngược  InvMixColumns ,[object Object],[object Object],[object Object],[object Object],[object Object]
Phát sinh mã khóa mỗi chu kỳ ,[object Object],[object Object]
Phát sinh mã khóa mỗi chu kỳ Bảng mã khóa mở rộng và cách xác định  mã khóa của chu kỳ (Nb=6, Nk=4)
Phát sinh mã khóa mỗi chu kỳ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Phát sinh mã khóa mỗi chu kỳ ,[object Object],[object Object],[object Object]
16 bb 54 b0 0f 2d 99 41 68 42 e6 Bf 0d 89 a1 8c f df 28 55 ce e9 87 1e 9b 94 8e d9 69 11 98 f8 e1 e 9e 1d c1 86 b9 57 35 61 0e f6 03 48 66 B5 3e 70 d 8a 8b bd 4b 1f 74 dd e8 c6 b4 a6 1c 2e 25 78 ba c 08 ae 7a 65 ea f4 56 6c a9 4e d5 8d 6d 37 c8 e7 b 79 e4 95 91 62 ac d3 c2 5c 24 06 49 0a 3a 32 e0 a db 0b 5e de 14 b8 ee 46 88 90 2a 22 dc 4f 81 60 9 73 19 5d 64 3d 7e a7 c4 17 44 97 5f ec 13 0c cd 8 d2 f3 ff 10 21 da b6 bc f5 38 9d 92 8f 40 a3 51 7 a8 9f 3c 50 7f 02 f9 45 85 33 4d 43 fb aa ef d0 6 cf 58 4c 4a 39 be cb 6a 5b b1 fc 20 ed 00 d1 53 5 84 2f e3 29 b3 d6 3b 52 a0 5a 6e 1b 1a 2c 83 09 4 75 b2 27 eb e2 80 12 07 9a 05 96 18 c3 23 c7 04 3 15 31 d8 71 f1 e5 a5 34 cc f7 3f 36 26 93 fd b7 2 c0 72 a4 9c af a2 d4 ad f0 47 59 fa 7d c9 82 ca 1 76 ab d7 fe 2b 67 01 30 c5 6f 6b f2 7b 77 7c 63 0 x f e d c b a 9 8 7 6 5 4 3 2 1 0 y Sbox
7d 0c 21 55 63 14 69 e1 26 d6 77 ba 7e 04 2b 17 f 61 99 53 83 3c bb eb c8 b0 f5 2a ae 4d 3b e0 a0 e ef 9c c9 93 9f 7a e5 2d 0d 4a b5 19 a9 7f 51 60 d 5f ec 80 27 59 10 12 b1 31 c7 07 88 33 a8 dd 1f c f4 5a cd 78 fe c0 db 9a 20 79 d2 c6 4b 3e 56 fc b 1b be 18 aa 0e 62 b7 6f 89 c5 29 1d 71 1a f1 47 a 6e df 75 1c e8 37 f9 e2 85 35 ad e7 22 74 ac 96 9 73 e6 b4 f0 ce cf f2 97 ea dc 67 4f 41 11 91 3a 8 6b 8a 13 01 03 bd af c1 02 0f 3f ca 8f 1e 2c d0 7 06 45 b3 b8 05 58 e4 f7 0a d3 bc 8c 00 ab d8 90 6 84 9d 8d a7 57 46 15 5e da b9 ed fd 50 48 70 6c 5 92 b6 65 5d cc 5c a4 d4 16 98 68 86 64 f6 f8 72 4 25 d1 8b 6d 49 a2 5b 76 b2 24 d9 28 66 a1 2e 08 3 4e c3 fa 42 0b 95 4c ee 3d 23 c2 a6 32 94 7b 54 2 cb e9 de c4 44 43 8e 34 87 ff 2f 9b 82 39 e3 7c 1 fb d7 f3 81 9e a3 40 bf 38 a5 36 30 d5 6a 09 52 0 x f e d c b a 9 8 7 6 5 4 3 2 1 0 y Sbox -1

More Related Content

What's hot

Slide bai giang_an_toan_va_bao_mat_thong_tin
Slide bai giang_an_toan_va_bao_mat_thong_tinSlide bai giang_an_toan_va_bao_mat_thong_tin
Slide bai giang_an_toan_va_bao_mat_thong_tinLang Codon
 
Đại số boolean và mạch logic
Đại số boolean và mạch logicĐại số boolean và mạch logic
Đại số boolean và mạch logicwww. mientayvn.com
 
Bài giảng thực hành windows server 2008 776030
Bài giảng thực hành windows server 2008 776030Bài giảng thực hành windows server 2008 776030
Bài giảng thực hành windows server 2008 776030trucmt2000
 
Báo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởBáo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởThuyet Nguyen
 
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNHBÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNHHoà Đoàn
 
Khái niệm thông tin và dữ liệu
Khái niệm thông tin và dữ liệuKhái niệm thông tin và dữ liệu
Khái niệm thông tin và dữ liệuminhhai07b08
 
Kiến trúc máy tính và hợp ngữ bài 08
Kiến trúc máy tính và hợp ngữ bài 08Kiến trúc máy tính và hợp ngữ bài 08
Kiến trúc máy tính và hợp ngữ bài 08Nhóc Nhóc
 
Bai tap va loi giai sql
Bai tap va loi giai sqlBai tap va loi giai sql
Bai tap va loi giai sql. .
 
Bai02 he thong quan ly tap tin
Bai02   he thong quan ly tap tinBai02   he thong quan ly tap tin
Bai02 he thong quan ly tap tinVũ Sang
 
Tính toán khoa học - Chương 7: Các phương pháp cực tiểu hóa không ràng buộc
Tính toán khoa học - Chương 7: Các phương pháp cực tiểu hóa không ràng buộcTính toán khoa học - Chương 7: Các phương pháp cực tiểu hóa không ràng buộc
Tính toán khoa học - Chương 7: Các phương pháp cực tiểu hóa không ràng buộcChien Dang
 
Tài liệu tổng kểt môn mạng máy tính
Tài liệu tổng kểt môn mạng máy tínhTài liệu tổng kểt môn mạng máy tính
Tài liệu tổng kểt môn mạng máy tínhJojo Kim
 
Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02Nhóc Nhóc
 
Quan ly bo nho ngoai trong linux
Quan ly bo nho ngoai trong linuxQuan ly bo nho ngoai trong linux
Quan ly bo nho ngoai trong linuxThu Lam
 

What's hot (20)

Slide bai giang_an_toan_va_bao_mat_thong_tin
Slide bai giang_an_toan_va_bao_mat_thong_tinSlide bai giang_an_toan_va_bao_mat_thong_tin
Slide bai giang_an_toan_va_bao_mat_thong_tin
 
Đại số boolean và mạch logic
Đại số boolean và mạch logicĐại số boolean và mạch logic
Đại số boolean và mạch logic
 
MATMA - Chuong2
MATMA - Chuong2MATMA - Chuong2
MATMA - Chuong2
 
Bài giảng thực hành windows server 2008 776030
Bài giảng thực hành windows server 2008 776030Bài giảng thực hành windows server 2008 776030
Bài giảng thực hành windows server 2008 776030
 
Báo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mởBáo cáo môn mã nguồn mở
Báo cáo môn mã nguồn mở
 
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNHBÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
 
Hệ mật mã Mekle-Hellman
Hệ mật mã Mekle-HellmanHệ mật mã Mekle-Hellman
Hệ mật mã Mekle-Hellman
 
Hệ mật mã Elgamal
Hệ mật mã ElgamalHệ mật mã Elgamal
Hệ mật mã Elgamal
 
Bai tap thuc hanh
Bai tap thuc hanhBai tap thuc hanh
Bai tap thuc hanh
 
Đề tài: Phần mềm quản lý thư viện và website tra cứu sách, HOT
Đề tài: Phần mềm quản lý thư viện và website tra cứu sách, HOTĐề tài: Phần mềm quản lý thư viện và website tra cứu sách, HOT
Đề tài: Phần mềm quản lý thư viện và website tra cứu sách, HOT
 
Khái niệm thông tin và dữ liệu
Khái niệm thông tin và dữ liệuKhái niệm thông tin và dữ liệu
Khái niệm thông tin và dữ liệu
 
Kiến trúc máy tính và hợp ngữ bài 08
Kiến trúc máy tính và hợp ngữ bài 08Kiến trúc máy tính và hợp ngữ bài 08
Kiến trúc máy tính và hợp ngữ bài 08
 
Bai tap va loi giai sql
Bai tap va loi giai sqlBai tap va loi giai sql
Bai tap va loi giai sql
 
Bai02 he thong quan ly tap tin
Bai02   he thong quan ly tap tinBai02   he thong quan ly tap tin
Bai02 he thong quan ly tap tin
 
Tính toán khoa học - Chương 7: Các phương pháp cực tiểu hóa không ràng buộc
Tính toán khoa học - Chương 7: Các phương pháp cực tiểu hóa không ràng buộcTính toán khoa học - Chương 7: Các phương pháp cực tiểu hóa không ràng buộc
Tính toán khoa học - Chương 7: Các phương pháp cực tiểu hóa không ràng buộc
 
Tài liệu tổng kểt môn mạng máy tính
Tài liệu tổng kểt môn mạng máy tínhTài liệu tổng kểt môn mạng máy tính
Tài liệu tổng kểt môn mạng máy tính
 
Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02
 
Luận văn: Tìm hiểu chuẩn mật mã dữ liệu (DES) và ứng dụng, HOT
Luận văn: Tìm hiểu chuẩn mật mã dữ liệu (DES) và ứng dụng, HOTLuận văn: Tìm hiểu chuẩn mật mã dữ liệu (DES) và ứng dụng, HOT
Luận văn: Tìm hiểu chuẩn mật mã dữ liệu (DES) và ứng dụng, HOT
 
Quan ly bo nho ngoai trong linux
Quan ly bo nho ngoai trong linuxQuan ly bo nho ngoai trong linux
Quan ly bo nho ngoai trong linux
 
Bài giảng Assembly
Bài giảng AssemblyBài giảng Assembly
Bài giảng Assembly
 

Viewers also liked

Provably Secure Three Party Authenticated Quantum Key Distribution Protocols
Provably Secure Three Party Authenticated Quantum Key Distribution ProtocolsProvably Secure Three Party Authenticated Quantum Key Distribution Protocols
Provably Secure Three Party Authenticated Quantum Key Distribution ProtocolsAvinash Varma Kalidindi
 
CHỮ KÝ SỐ & ỨNG DỤNG
CHỮ KÝ SỐ & ỨNG DỤNGCHỮ KÝ SỐ & ỨNG DỤNG
CHỮ KÝ SỐ & ỨNG DỤNGDigiword Ha Noi
 
Bài 14-15 -Lớp 11: Thao tác với tệp
Bài 14-15 -Lớp 11: Thao tác với tệpBài 14-15 -Lớp 11: Thao tác với tệp
Bài 14-15 -Lớp 11: Thao tác với tệpthaohien1376
 
Bai giang tin hoc lop 11 bai 14 15
Bai giang tin hoc lop 11 bai 14   15Bai giang tin hoc lop 11 bai 14   15
Bai giang tin hoc lop 11 bai 14 15Chi Lệ
 
key distribution in network security
key distribution in network securitykey distribution in network security
key distribution in network securitybabak danyal
 
Bài tập có lời giải chương 1
Bài tập có lời giải chương 1Bài tập có lời giải chương 1
Bài tập có lời giải chương 1TheSPDM
 

Viewers also liked (8)

Provably Secure Three Party Authenticated Quantum Key Distribution Protocols
Provably Secure Three Party Authenticated Quantum Key Distribution ProtocolsProvably Secure Three Party Authenticated Quantum Key Distribution Protocols
Provably Secure Three Party Authenticated Quantum Key Distribution Protocols
 
CHỮ KÝ SỐ & ỨNG DỤNG
CHỮ KÝ SỐ & ỨNG DỤNGCHỮ KÝ SỐ & ỨNG DỤNG
CHỮ KÝ SỐ & ỨNG DỤNG
 
Encryption and Key Distribution Methods
Encryption and Key Distribution MethodsEncryption and Key Distribution Methods
Encryption and Key Distribution Methods
 
Bài 14-15 -Lớp 11: Thao tác với tệp
Bài 14-15 -Lớp 11: Thao tác với tệpBài 14-15 -Lớp 11: Thao tác với tệp
Bài 14-15 -Lớp 11: Thao tác với tệp
 
Bai giang tin hoc lop 11 bai 14 15
Bai giang tin hoc lop 11 bai 14   15Bai giang tin hoc lop 11 bai 14   15
Bai giang tin hoc lop 11 bai 14 15
 
key distribution in network security
key distribution in network securitykey distribution in network security
key distribution in network security
 
Bài tập có lời giải chương 1
Bài tập có lời giải chương 1Bài tập có lời giải chương 1
Bài tập có lời giải chương 1
 
Cau hoi trac_nghiem
Cau hoi trac_nghiemCau hoi trac_nghiem
Cau hoi trac_nghiem
 

Similar to 04 Des Aes

Slide c2 + c3
Slide   c2 + c3Slide   c2 + c3
Slide c2 + c3Huynh MVT
 
Modern block cipher
Modern block cipherModern block cipher
Modern block cipherHoang Nguyen
 
De thi va dap an mon toan khoi d 2013
De thi va dap an mon toan khoi d 2013De thi va dap an mon toan khoi d 2013
De thi va dap an mon toan khoi d 2013dethinet
 
My linh ip_sec_slide
My linh ip_sec_slideMy linh ip_sec_slide
My linh ip_sec_slideLinh Nguyễn
 
Nhập môn Mạch số, Hà Lê Hoài Trung
Nhập môn Mạch số, Hà Lê Hoài TrungNhập môn Mạch số, Hà Lê Hoài Trung
Nhập môn Mạch số, Hà Lê Hoài TrungMan_Ebook
 
Lập trình C cho 8051
Lập trình C cho 8051Lập trình C cho 8051
Lập trình C cho 8051chilacaiten
 
Turbo Code
Turbo CodeTurbo Code
Turbo Codelengocdu
 
7 Công cụ quản lý chất lượng - Nâng cao kỹ năng phân tích - 7 QC tools
7 Công cụ quản lý chất lượng - Nâng cao kỹ năng phân tích - 7 QC tools7 Công cụ quản lý chất lượng - Nâng cao kỹ năng phân tích - 7 QC tools
7 Công cụ quản lý chất lượng - Nâng cao kỹ năng phân tích - 7 QC toolsThanh Nguyễn Văn
 
ccceaasddddddHe PTVP va PTVP bac cao.pdf
ccceaasddddddHe PTVP va PTVP bac cao.pdfccceaasddddddHe PTVP va PTVP bac cao.pdf
ccceaasddddddHe PTVP va PTVP bac cao.pdfkhangnguyenbao1753
 
Cách tìm bài báo tham khảo khoa học - Bibliography
Cách tìm bài báo tham khảo khoa học - Bibliography Cách tìm bài báo tham khảo khoa học - Bibliography
Cách tìm bài báo tham khảo khoa học - Bibliography bomxuan868
 
Ma trận và đề kiểm tra môn Toán học kì 2 lớp 4 theo thông tư 22
Ma trận và đề kiểm tra môn Toán học kì 2 lớp 4 theo thông tư 22Ma trận và đề kiểm tra môn Toán học kì 2 lớp 4 theo thông tư 22
Ma trận và đề kiểm tra môn Toán học kì 2 lớp 4 theo thông tư 22Bồi Dưỡng HSG Toán Lớp 3
 
Tai lieu rat hay ve chuyen de tinh tong chuoi so hay cau kho
Tai lieu rat hay ve chuyen de tinh tong chuoi so hay cau khoTai lieu rat hay ve chuyen de tinh tong chuoi so hay cau kho
Tai lieu rat hay ve chuyen de tinh tong chuoi so hay cau khoNguyễn Nhật Chung
 
Data mining - Luật kết hợp và ứng dụng
Data mining - Luật kết hợp và ứng dụngData mining - Luật kết hợp và ứng dụng
Data mining - Luật kết hợp và ứng dụngPhien Le
 
HÀM SỐ MŨ & LOGARIT
HÀM SỐ MŨ & LOGARITHÀM SỐ MŨ & LOGARIT
HÀM SỐ MŨ & LOGARITDANAMATH
 

Similar to 04 Des Aes (20)

AES-DES.pptx
AES-DES.pptxAES-DES.pptx
AES-DES.pptx
 
Slide c2 + c3
Slide   c2 + c3Slide   c2 + c3
Slide c2 + c3
 
01 ma hoa
01 ma hoa01 ma hoa
01 ma hoa
 
Modern block cipher
Modern block cipherModern block cipher
Modern block cipher
 
De thi va dap an mon toan khoi d 2013
De thi va dap an mon toan khoi d 2013De thi va dap an mon toan khoi d 2013
De thi va dap an mon toan khoi d 2013
 
My linh ip_sec_slide
My linh ip_sec_slideMy linh ip_sec_slide
My linh ip_sec_slide
 
Nhập môn Mạch số, Hà Lê Hoài Trung
Nhập môn Mạch số, Hà Lê Hoài TrungNhập môn Mạch số, Hà Lê Hoài Trung
Nhập môn Mạch số, Hà Lê Hoài Trung
 
Lập trình C cho 8051
Lập trình C cho 8051Lập trình C cho 8051
Lập trình C cho 8051
 
Vdk 8051
Vdk 8051 Vdk 8051
Vdk 8051
 
Báo cáo môn học phương pháp phần tử hữu hạn
Báo cáo môn học phương pháp phần tử hữu hạnBáo cáo môn học phương pháp phần tử hữu hạn
Báo cáo môn học phương pháp phần tử hữu hạn
 
Turbo Code
Turbo CodeTurbo Code
Turbo Code
 
7 Công cụ quản lý chất lượng - Nâng cao kỹ năng phân tích - 7 QC tools
7 Công cụ quản lý chất lượng - Nâng cao kỹ năng phân tích - 7 QC tools7 Công cụ quản lý chất lượng - Nâng cao kỹ năng phân tích - 7 QC tools
7 Công cụ quản lý chất lượng - Nâng cao kỹ năng phân tích - 7 QC tools
 
7 qc tools
7 qc tools7 qc tools
7 qc tools
 
Chuong 2
Chuong 2Chuong 2
Chuong 2
 
ccceaasddddddHe PTVP va PTVP bac cao.pdf
ccceaasddddddHe PTVP va PTVP bac cao.pdfccceaasddddddHe PTVP va PTVP bac cao.pdf
ccceaasddddddHe PTVP va PTVP bac cao.pdf
 
Cách tìm bài báo tham khảo khoa học - Bibliography
Cách tìm bài báo tham khảo khoa học - Bibliography Cách tìm bài báo tham khảo khoa học - Bibliography
Cách tìm bài báo tham khảo khoa học - Bibliography
 
Ma trận và đề kiểm tra môn Toán học kì 2 lớp 4 theo thông tư 22
Ma trận và đề kiểm tra môn Toán học kì 2 lớp 4 theo thông tư 22Ma trận và đề kiểm tra môn Toán học kì 2 lớp 4 theo thông tư 22
Ma trận và đề kiểm tra môn Toán học kì 2 lớp 4 theo thông tư 22
 
Tai lieu rat hay ve chuyen de tinh tong chuoi so hay cau kho
Tai lieu rat hay ve chuyen de tinh tong chuoi so hay cau khoTai lieu rat hay ve chuyen de tinh tong chuoi so hay cau kho
Tai lieu rat hay ve chuyen de tinh tong chuoi so hay cau kho
 
Data mining - Luật kết hợp và ứng dụng
Data mining - Luật kết hợp và ứng dụngData mining - Luật kết hợp và ứng dụng
Data mining - Luật kết hợp và ứng dụng
 
HÀM SỐ MŨ & LOGARIT
HÀM SỐ MŨ & LOGARITHÀM SỐ MŨ & LOGARIT
HÀM SỐ MŨ & LOGARIT
 

04 Des Aes

  • 1. Chủ đề 4: Data Encryption Standard và Advanced Encryption Standard ThS. Trần Minh Triết
  • 2.
  • 3.
  • 4. Quy trình mã hóa theo khối Key Schedule Data Path Secret Key PlainText Round Keys (Sub Keys) 
  • 5.
  • 6.
  • 8.
  • 9. Quy trình Mã hóa theo kiến trúc Feistel … … L i = R i -1 R i = L i -1  f ( R i -1 , K i -1 ) Chu kỳ mã hóa i Chu kỳ mã hóa Nr Chu kỳ mã hóa 1 L i -1 R i -1 K i -1 L i R i f 
  • 10. Quy trình Giải mã theo kiến trúc Feistel … … R i -1 = L i L i-1 = R i  f ( L i , K i ) Chu kỳ giải mã Nr Chu kỳ giải mã i Chu kỳ giải mã 1 L i R i K i L i -1 R i -1 f 
  • 11. Quy trình Mã hóa của giải thuật DES … … Plaintext (64-bit) Ciphertext (64-bit) IP: Initial Permutation FP: Final Permutation FP = IP -1 Ghi chú: FP và IP không có ý nghĩa về mặt mã hóa, chi có tác dụng để nạp dữ liệu vào và ra các khối dữ liệu (theo cơ chế phần cứng giữa thập niên 1970!!!) Chu kỳ mã hóa 1 Chu kỳ mã hóa i Chu kỳ mã hóa 16 Initial Permutation Final Permutation ( R 16 , L 16 )
  • 12. Initial Permutation Ví dụ: Bit thứ 58 của x trở thành bit đầu tiên của IP( x ) Bit thứ 50 của x trở thành bit thứ hai của IP( x ) 7 15 23 31 39 47 55 63 5 13 21 29 37 45 53 61 3 11 19 27 35 43 51 59 1    9 17 25 33 41 49 57 8 16 24 32 40 48 56 64 6 14 22 30 38 46 54 62 4 12 20 28 36 44 52 60 2 10 18 26 34 42 50 58 IP
  • 13. Final Permutation Ví dụ: Bit thứ 58 của x trở thành bit đầu tiên của IP( x ) Bit thứ 50 của x trở thành bit thứ hai của IP( x ) 25 57 17 49    9 41 1 33 26 58 18 50 10 42 2 34 27 59 19 51 11 43 3 35 28 60 20 52 12 44 4 36 29 61 21 53 13 45 5 37 30 62 22 54 14 46 6 38 31 63 23 55 15 47 7 39 32 64 24 56 16 48 8 40 IP
  • 14. Expansion Bảng E: quy tắc mở rộng từ 32 bit thành 48 bit    1 32 31 30 29 28 29 28 27 26 25 24 25 24 23 22 21 20 21 20 19 18 17 16 17 16 15 14 13 12 13 12 11 10    9    8    9    8    7    6    5    4    5    4    3    2    1 32 Bảng chọn lựa bit E
  • 15. Hàm f trong DES P ermutation  E xpansion Nửa khối (32 bit) 48 bit S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 8 Sub Key (48 bit)
  • 16. S-box Ví dụ: B j = b 1 b 2 b 3 b 4 b 5 b 6 thì S j ( B i ) = S j [ b 1 b 6 ][ b 2 b 3 b 4 b 5 ] 13    6    0 10 14    3 11    5    7    1    9    4    2    8 12 15    0    5 10    3    7    9 12 15 11    2    6 13    8 14    1    4    8    3    5    9 11 12    6 10    1 13    2 14    4    7 15    0    7    0    9    5 12    6 10    3    8 11 15    2    1 13    4 14 S 1    9 14    5    0 12    7    6 11    2    4 15    3    1 10    8 13 15    2    3    9    6 12    8    5    1 13    4 10 11    7 14    0    5 11    9    6 10    1    0 12 14    8    2 15    7    4 13    3 10    5    0 12 13    2    7    9    4    3 11    6 14    8    1 15 S 2
  • 17. S-box 12    2    5 11    3 14 15    4    7    8    9    6    0 13 10    1    7 14 10    5 12    2    1 11    0    3 15    8    9    4    6 13    1 15 11 12 14    5    8    2 10    6    4    3    9    0    7 13    8    2    4 11    7 12 13    1    5 15    3    6 14    9    0 10 S 3 14    2    7 12 11    5    4    9    8 13    1 10    6    0 15    3    4    8    2    5 14    3    1 15 13    7 11 12    0    9    6 10    9 14 10    1 12    2    7    4    3    0 15    6    5 11    8 13 15    4 12 11    5    8    2    1 10    9    6    0    3 14 13    7 S 4
  • 18. S-box    3    5    4 10    9    0 15    6 13    2 14    1    7 12    8 11 14    0    3    6    5 12    9 15    8    7 13 10 11    1    2    4    6    8    9    3 10 15    0    5    1 13    7    4 12    2 11 14    9 14    0 13 15    3    5    8    6 11 10    7    1    4 12    2 S 5 13    8    0    6    7    1 14 11 10 15    5    9 12    2    3    4    6 11 13    1 10    4    0    7    3 12    8    2    5 15 14    9    8    3 11    0 14 13    1    6    5    9 12    7    2    4 15 10 11    5    7 14    4    3 13    0    8    6    2    9 15 10    1 12 S 6
  • 19. S-box 12    3    2 14 15    0    5    9    7 10    4    1    8 13 11    6    2    9    5    0    8    6 15 10 14    7    3 12 13 11    4    1    6    8 15    2 12    5    3 14 10    1    9    4    7 11    0 13    1    6 10    5    7    9 12    3 13    8    0 15 14    2 11    4 S 7 11    6    5    3    0    9 12 15 13    8 10    4    7 14    1    2    8    5    3 15 13 10    6    0    2 14 12    9    1    4 11    7    2    9 14    0 11    6    5 12    4    7    3 10    8 13 15    1    7 12    0    5 14    3    9 10    1 11 15    6    4    8    2 13 S 8
  • 20. Bảng hoán vị P 25    4 11 22    6 30 13 19    9    3 27 32 14 24    8    2 10 31 18    5 26 23 15    1 17 28 12 29 21 20    7 16 P
  • 21.
  • 22. Các hoán vị trong Key Schedule Chọn 56 bit (bỏ bit 8, 16, 24, 32, 40, 48, 56, 64 Chọn 48 bit (bỏ bit 9, 18, 22, 25, 35, 38, 43, 54) 32 29 36 50 42 46 53 34 56 39 49 44 48 33 45 51 40 30 55 47 37 31 52 41    2 13 20 27    7 16    8 26    4 12 19 23 10 21    6 15 28    3    5    1 24 11 17 14 PC-2    4 12 20 28    5 13 21 29 37 45 53 61    6 14 22 30 38 46 54 62    7 15 23 31 39 47 55 63 36 44 52 60    3 11 19 27 35 43 51 59    2 10 18 26 34 42 50 58    1    9 17 25 33 41 49 57 PC-1
  • 23.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29. Đa thức với hệ số trên GF ( 2 8 )
  • 30. Đa thức với hệ số trên GF ( 2 8 )
  • 31.
  • 32. Biểu diễn khối dữ liệu và mã khóa Nb=4 Nb=6 Nb=8 S 21 S 00 S 01 S 02 S 03 S 10 S 11 S 12 S 13 S 20 S 22 S 23 S 30 S 31 S 32 S 33 S 04 S 05 S 14 S 15 S 24 S 25 S 34 S 35 S 06 S 07 S 16 S 17 S 26 S 27 S 36 S 37
  • 33. Chu kỳ mã hóa bình thường Chu kỳ i Chu kỳ Nr … … Chu kỳ 1 Mix Columns Add Round Key Sub Bytes Shift Rows Mix Columns Add Round Key Sub Bytes Shift Rows Chu kỳ Nr -1 Mix Columns Add Round Key Sub Bytes Shift Rows Mix Columns Add Round Key Sub Bytes Shift Rows Add Round Key Sub Bytes Shift Rows Mix Columns Add Round Key Sub Bytes Shift Rows
  • 34. Chu kỳ mã hóa cuối Chu kỳ i Chu kỳ Nr … … Chu kỳ 1 Mix Columns Add Round Key Sub Bytes Shift Rows Mix Columns Add Round Key Sub Bytes Shift Rows Chu kỳ Nr -1 Mix Columns Add Round Key Sub Bytes Shift Rows Add Round Key Sub Bytes Shift Rows Add Round Key Sub Bytes Shift Rows Add Round Key Sub Bytes Shift Rows
  • 35. Kiến trúc Substitution-Permutation Network Mix Columns Add Round Key Sub Bytes Shift Rows Add Round Key 32-bit LT 32-bit LT 32-bit LT 32-bit LT
  • 36.
  • 37. Phép biến đổi SubBytes S' 00 S' 01 S' 02 S' 03 S' 10 S' 11 S' 12 S' 13 S' 20 S' 22 S' 23 S' 30 S' 31 S' 32 S' 33 S ij S-Box S’ ij SubBytes
  • 38.
  • 39.
  • 41.
  • 42. Phép biến đổi ngược InvSubBytes
  • 43. Phép biến đổi ShiftRows ShiftRows
  • 44.
  • 45. Phép biến đổi AddRoundKey l = round * Nb  AddRoundKey S 13 S 12 S 11 S 10 S 23 S 22 S 21 S 20 S 33 S 32 S 31 S 30 S 03 S 02 S 01 S 00 S' 13 S' 12 S' 11 S' 10 S' 23 S' 22 S' 21 S' 20 S' 33 S' 32 S' 31 S' 30 S' 03 S' 02 S' 01 S' 00 S 3 c S 2 c S 1 c S 0 c S’ 3 c S’ 2 c S’ 1 c S’ 0 c W l +3 W l +2 W l +1 W l W l + c
  • 46.
  • 47. Phép biến đổi MixColumns S 21 S 00 S 01 S 02 S 03 S 10 S 11 S 12 S 13 S 20 S 22 S 23 S 30 S 31 S 32 S 33 S i S' 00 S' 01 S' 02 S' 03 S' 10 S' 11 S' 12 S' 13 S' 20 S' 22 S' 23 S' 30 S' 31 S' 32 S' 33 S' 21 S ’ i MixColumns  a ( x )
  • 48.
  • 49.
  • 50.
  • 51. Phát sinh mã khóa mỗi chu kỳ Bảng mã khóa mở rộng và cách xác định mã khóa của chu kỳ (Nb=6, Nk=4)
  • 52.
  • 53.
  • 54. 16 bb 54 b0 0f 2d 99 41 68 42 e6 Bf 0d 89 a1 8c f df 28 55 ce e9 87 1e 9b 94 8e d9 69 11 98 f8 e1 e 9e 1d c1 86 b9 57 35 61 0e f6 03 48 66 B5 3e 70 d 8a 8b bd 4b 1f 74 dd e8 c6 b4 a6 1c 2e 25 78 ba c 08 ae 7a 65 ea f4 56 6c a9 4e d5 8d 6d 37 c8 e7 b 79 e4 95 91 62 ac d3 c2 5c 24 06 49 0a 3a 32 e0 a db 0b 5e de 14 b8 ee 46 88 90 2a 22 dc 4f 81 60 9 73 19 5d 64 3d 7e a7 c4 17 44 97 5f ec 13 0c cd 8 d2 f3 ff 10 21 da b6 bc f5 38 9d 92 8f 40 a3 51 7 a8 9f 3c 50 7f 02 f9 45 85 33 4d 43 fb aa ef d0 6 cf 58 4c 4a 39 be cb 6a 5b b1 fc 20 ed 00 d1 53 5 84 2f e3 29 b3 d6 3b 52 a0 5a 6e 1b 1a 2c 83 09 4 75 b2 27 eb e2 80 12 07 9a 05 96 18 c3 23 c7 04 3 15 31 d8 71 f1 e5 a5 34 cc f7 3f 36 26 93 fd b7 2 c0 72 a4 9c af a2 d4 ad f0 47 59 fa 7d c9 82 ca 1 76 ab d7 fe 2b 67 01 30 c5 6f 6b f2 7b 77 7c 63 0 x f e d c b a 9 8 7 6 5 4 3 2 1 0 y Sbox
  • 55. 7d 0c 21 55 63 14 69 e1 26 d6 77 ba 7e 04 2b 17 f 61 99 53 83 3c bb eb c8 b0 f5 2a ae 4d 3b e0 a0 e ef 9c c9 93 9f 7a e5 2d 0d 4a b5 19 a9 7f 51 60 d 5f ec 80 27 59 10 12 b1 31 c7 07 88 33 a8 dd 1f c f4 5a cd 78 fe c0 db 9a 20 79 d2 c6 4b 3e 56 fc b 1b be 18 aa 0e 62 b7 6f 89 c5 29 1d 71 1a f1 47 a 6e df 75 1c e8 37 f9 e2 85 35 ad e7 22 74 ac 96 9 73 e6 b4 f0 ce cf f2 97 ea dc 67 4f 41 11 91 3a 8 6b 8a 13 01 03 bd af c1 02 0f 3f ca 8f 1e 2c d0 7 06 45 b3 b8 05 58 e4 f7 0a d3 bc 8c 00 ab d8 90 6 84 9d 8d a7 57 46 15 5e da b9 ed fd 50 48 70 6c 5 92 b6 65 5d cc 5c a4 d4 16 98 68 86 64 f6 f8 72 4 25 d1 8b 6d 49 a2 5b 76 b2 24 d9 28 66 a1 2e 08 3 4e c3 fa 42 0b 95 4c ee 3d 23 c2 a6 32 94 7b 54 2 cb e9 de c4 44 43 8e 34 87 ff 2f 9b 82 39 e3 7c 1 fb d7 f3 81 9e a3 40 bf 38 a5 36 30 d5 6a 09 52 0 x f e d c b a 9 8 7 6 5 4 3 2 1 0 y Sbox -1