Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình

Hoán vị mở rộng (Expansion Permutation) trong DES

Khái niệm

Hoán vị mở rộng (Expansion Permutation) mở rộng nửa phải của thông tin R từ 32 bit lên 48 bit. Phép toán thay đổi thứ tự bit và lặp lại một số bit cụ thể.

Hai mục đích

  1. Tạo nửa phải cùng kích thước khóa (48-bit) cho phép XOR.
  2. Tạo kết quả dài hơn có thể nén trong phép thay thế (substitution). Cho phép 1 bit ảnh hưởng 2 thay thế → sự phụ thuộc bit đầu ra trên bit đầu vào lan truyền nhanh hơn. Đây chính là hiệu ứng tuyết lở (avalanche effect).

Quy trình chi tiết

  1. 32-bit Right Plain Text (RPT) chia thành 8 khối, mỗi khối 4 bit.
  2. Mỗi khối 4-bit mở rộng thành khối 6-bit tương ứng: thêm 2 bit lặp lại (bit đầu và bit thứ 4 của khối 4-bit).
  3. Bit 2 và bit 3 giữ nguyên vị trí. Bit 1 ra vị trí output 2 và lặp lại ở vị trí 48. Bit 32 input ở vị trí output 47 và 1.

Bảng hoán vị mở rộng RPT (Expansion Permutation Table):

3212345456789
8910111213121314151617
161718192021202122232425
24252627282928293031321

Sau khi mở rộng, khóa 48-bit (đã nén từ 56-bit) XOR với RPT 48-bit → kết quả đưa vào bước tiếp theo: S-box substitution.