Des LTMM

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

S-boxes in DES/3DES

Họ và tên : Vũ Hải Đăng


MSSV : 20200150
Lớp : 143817
OUTLINE

1. Định nghĩa S-boxes


a. Vị trí
b. Định nghĩa
2. Giải thuật
3. Mô phỏng
a. Tính toán
b. Python code

5
1. Định nghĩa

a. Vị trí S-boxes trong giải thuật DES

Structure of Round in encryption

6
1. Định nghĩa

a. Vị trí S-boxes trong giải thuật DES

S-box (substitution-box)
nằm trong Des function
sau phần Whitener (XOR)
trước phần Straight P-box

DES function

6
1. Định nghĩa

b. Định nghĩa
S-boxes là thành phần dùng để thực hiện các phép thay thế phi tuyến,
nhằm che giấu mối quan hệ giữa khóa mật mã và bản mã — tính hỗn loạn
do Shannon đề xuất

Trong DES, S-boxes lấy 48 bit đầu vào và biến đổi chúng thành 32 bit đầu ra
dựa trên bảng chuẩn SBOX đã được công bố

6
2. Giải thuật S-boxes

Bảng chuẩn SBOX gồm 8 mảng nguyên có kích cỡ 16x4


Giá trị các phần tử trong mỗi mảng đều trong [0,15]

S-box 1

7
2. Giải thuật S-boxes

Mảng đầu vào 48-bit được chia


thành 8 mảng 6-bit
Tại mảng 6-bit thứ i :
row = int( bit1_6, 2)
col = int( bit2_3_4_5 , 2)
Thay thế 6 bit với 4 bit tạo bởi
bin( SBOX[j][row][col] , dec)
Ghép các mảng 4-bit tạo thành
mảng đầu ra 32-bit
S-box rule

7
3. Mô phỏng

a. Tính toán b. Python code


Đối với mảng S-box 6-bit thứ nhất
Đầu vào: 100011
Tính
row = int( 11, 2) = 3
col = int( 0001 , 2) = 1
Thay thế 6 bit thành 4 bit
SBOX[ 1 ][ 3 ][ 1 ] = 12
bin(12 , dec ) = 1100
4-bit đầu của mảng 32-bit : 1100

You might also like