Thông tin tài liệu:
Hoán vị khởi tạo:Là bước đầu của quá trình mã hóa. Gồm 2 bước:Làm thay đổi trật tự các bit nguồn (xét khối nguồn 64 bit).Chia thành 2 nửa (mỗi phần 32 bit): Các bit chẵn chọn vào nửa đầu, lẻ vào nửa sau.Nói chung không tăng độ an toàn của thuật toán mà chỉ làm cho thuật toán phức tạp hơn.Ví dụ: IP (675a6967 5e5a6b5a) = (ffb2194d 004df6fb)
Nội dung trích xuất từ tài liệu:
Chương 4. Mã Hóa Theo Khối và DES (2) * Chương4MãHóaTheoKhốivàDES(tt) BảoMậtThôngTin * *TrầnNhậtQuang *KhoaCôngNghệ ThôngTin–ĐH *CácNộiDung *DES(tiếptheo) *SửdụngDEStrongthựctế *CácKiểusửdụng(Modeofuse): ECB,CBC,OFB,vàCFBBảoMậtThôngTin Chương4.MãHóaTheoKhốivàDES(tt) 2BảoMậtThôngTin Chương4.MãHóaTheoKhốivàDES(tt) 3 *QuáTrìnhMãHóa *HoánvịkhởitạoIP * Xáotrộn64bitdữliệuvàchia2nửaR0,L0(32bit) *Cácphéptínhởvòngthứitrong16vònglặp * HàmmởrộngE(Ri1)(32bit 48bit) * XORvớikhóaKi * 8Sbox(6bit 4bit) * HoánvịPxáo32bitnhậnđược * XORvớiLi1đểchoraRi * Tómlại:Ri=Li1XORP(S(E(Ri1)XORKi)) * Còn:Li=Ri1(vòng16khôngđảochỗR16vàL16) *HoánvịkếtthúcFP(=IP1)BảoMậtThôngTin Chương4.MãHóaTheoKhốivàDES(tt) 4BảoMậtThôngTin Chương4.MãHóaTheoKhốivàDES(tt) 5 *HoánVịKhởiTạo(Intial Permutation–IP) Làbướcđầucủaquátrìnhmãhóa.Gồm2bước: * *Làmthayđổitrậttựcácbitnguồn(xétkhốinguồn64bit). *Chiathành2nửa(mỗiphần32bit):Cácbitchẵnchọnvào nửađầu,lẻvàonửasau. *Nóichungkhôngtăngđộantoàncủathuậttoánmàchỉlàm chothuậttoánphứctạphơn. *Vídụ:IP(675a69675e5a6b5a)=(ffb2194d004df6fb)BảoMậtThôngTin Chương4.MãHóaTheoKhốivàDES(tt) 61 2 3 4 5 6 7 8 58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 49 10 11 12 13 14 15 16 62 54 46 3 30 22 14 617 18 19 20 21 22 23 2425 26 27 28 29 30 31 IP 8 32 64 64 64 56 48 40 32 24 16 833 34 35 36 37 38 39 40 57 49 41 3 25 17 9 141 42 43 44 45 46 47 48 349 50 51 52 53 54 55 56 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 557 58 59 60 61 62 63 64 63 55 47 3 31 23 15 7 1111 1111 ff 90 1 1 0 0 1 1 1 67 1011 0 0 1 0 b20 1 0 1 1 0 1 0 5a 0 0 0 1 1 0 0 1 190 1 1 0 1 0 0 1 69 0 1 0 0 1 1 0 1 4d0 1 1 0 0 1 1 1 67 0 0 0 0 0 0 0 0 000 1 0 1 1 1 1 0 5e 0 1 0 0 1 1 0 1 4d0 1 0 1 1 0 1 0 5a 1 1 1 1 0 1 1 0 f60 1 1 0 1 0 1 1 6b 1 1 1 1 1 0 1 1 fb0 1 0 1 1 0 1 0 5aBảoMậtThôngTin Chương4.MãHóaTheoKhốivàDES(tt) 8 *CácPhépTínhỞVòngi *KhốinửaphảiR(i1)Ł Ri: *MởrộngE(32 48 bit) *XORvớikhóa48bit *ThaythếS *HoánvịP *XORvớinửatráiRi=Li1XOR P(S[E(Ri1)XORKi])*KhốinửatráiL(i1)Ł Li: Li=Ri1 L(i) = R(i-1)BảoMậtThôngTin Chương4.MãHóaTheoKhốivàDES(tt) 9 *HàmMởRộngE(Expansion Function)*Mởrộng32bitŁ 48bit. 0 0 32 1 2 3 4 5*Dùngcácbittrong32bitđể 00 4 5 6 7 8 9 thêmthành2cột2bên. 00 8 9 10 11 12 13*Đệmthêm2cộtbitảovào 0 0 12 13 14 15 16 17 (bit0)đểđủ8bitđểghi 0 0 16 17 18 19 20 21 thànhsốhexa. 0 0 20 21 22 23 24 25*Vídụ:E(004df6fb)=20 0 0 24 25 26 27 28 29 00091b3e2d1f36 0 0 28 29 30 31 32 1BảoMậtThôngTin Chương4.MãHóaTheoKhốivàDES(tt) 10 32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 13 12 13 14 15 16 17 32Ł 48 16 17 18 19 20 211 2 3 4 5 6 7 8 20 21 22 23 24 259 10 11 12 13 14 15 16 24 25 26 27 28 2917 18 19 20 21 22 23 24 28 29 30 31 32 125 26 27 28 29 30 31 321 1 1 1 1 1 1 1 ff 1 0 0 0 0 0 20 0 01 0 1 1 0 0 1 0 b2 0 0 0 0 0 0 00 0 00 0 0 1 1 0 0 1 19 0 0 1 0 0 1 09 0 00 1 0 0 1 1 0 1 4d 0 1 1 0 1 1 1b 0 00 0 0 0 0 0 0 0 00 1 1 1 1 1 0 3e 0 00 1 0 0 1 1 0 1 4d 1 0 1 1 0 1 2d ...