Phép ShirtRowsPhép MixColumns.
Trang 1AN NINH VÀ BẢO MẬT
( Thuật toán DES )
Mã hóa dòng mã hóa từng bits 1
Mã hóa khối chia thành các khối 64 128 512 để mã hóaĐặc điểm
DES mã hóa khối 64 nếu không đủ thì nhồi thêmtuy nhiên 56 bit được sử dụng 8 bit còn lại để kiểm traDes có 16 vòng và là mã hóa khối đối xứng
Hàm F
Từ ban đầu x có 64 bit chia L0 R0 32 bit
R0 đi qua phép mở rộng E ( hoán vị 32 bit của R ) biến thành 48bit
Trang 5Phép cộng sẽ được cộng từng bit theo module 2 chia 2 lấy
dư của Khóa K và R ( sau E ) và được chia B1…B8Tiếp tục chia B1 …B8 thành s,r ( với s,r hàng cột )
s ( B1, B6 ) giá trị của bit từ nhi phân chuyển sang thập phân
ví dụ S1(101110 ) = 10b =2 ( hàng thứ 2 lấy 1,6 )
r ( B2->B5 ) làm cx giống s
= 0111 =7 ( cột 7 lấy 2->5 )
= 1011 ( chuyển sang nhị phân )
Mỗi B đi vào 1 S
Sau khi đi vào xẽ đi qua phép hoán vị P ( làm giống E )
Trang 6Sơ đồ thuật toán G
Khóa K đi qua phép hoán vị C D ( 28 bit ) … Tạo thành
16 khóa K
LSI là phép dịch vòng sang trái
ví dụ 0101110
dịch trái 1 bit 1011100 ( đối với vòng 1 ,2 9 16 )
2 bit 0111001 ( đối với vòng còn lại )
Khóa K (56 bit ) chia làm 8 đoạn mỗi đoạn 7 bit ta thêm cho mỗi đoạn 1 bit thử tính chẵn lẻ để đc 1 đoạn 64 bit
Trang 7Bảng PC1 và PC 2
Trang 11Ví dụ
Cho M = 0123456789ABCDEFK=133457799BBCDFF1
Trang 12Bước 1: Chuyển M , K sang dạng thập phân
01010110 01100111 100011110
Theo bảng PC2
Trang 13Xử dụng phép mở rộng E với R0
E ( R0 ) =
A= 011000 010001 011110 111010 10001 100110
010100 100111
Trang 14Ta lấy từng 6 bit của A đối chiếu với bảng S1 -> S6 tính B
Thực hiện phép hoán vị P ( Bảng P ) đối với B
Tiếp theo tính R1Và L1
Trang 16( Thuật toán AES )
AES sử dụng kích thước khối 128-bit và kích thước khóa
có thể thay đổi 128,192 hoặc 256 bit
All cả hoạt động trên các byte 8 bit
Cấu trúc
Trang 173.2 Mở rộng khóa AES
Trang 18Phép SubBytes
Trang 19Phép ShirtRows
Phép MixColumns
Trang 201 0 1 0 1 1 0 1 1 1 1 0 0 1
1 0 0 0 1 1 0 1 1
Trang 211 0 1 0 1 0 0 1 1 0 0 0 1 0