0% found this document useful (0 votes)
39 views11 pages

Bai Tap Maho Adest Hu Cong

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as XLSX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views11 pages

Bai Tap Maho Adest Hu Cong

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as XLSX, PDF, TXT or read online on Scribd

Khóa K A0B1C2D3E4F56789

Vị trí Hexan BINARY


1 A 1010 1010000010110001110000101101001111100100111101010110011
2 0 0000 0000101100011100001011010011111001001111010101100111100
3 B 1011 1011000111000010110100111110010011110101011001111000100
4 1 0001 0001110000101101001111100100111101010110011110001001
5 C 1100 110000101101001111100100111101010110011110001001
6 2 0010 00101101001111100100111101010110011110001001
7 D 1101 1101001111100100111101010110011110001001
8 3 0011 001111100100111101010110011110001001
9 E 1110 11100100111101010110011110001001
10 4 0100 0100111101010110011110001001
11 F 1111 111101010110011110001001
12 5 0101 01010110011110001001
13 6 0110 0110011110001001
14 7 0111 011110001001
15 8 1000 10001001
16 9 1001

PC 1 1011111101110100011100110010010011000111000010000000101
stt vị trí bit
1 57 1 1011111101110100011100110010010011000111000010000000101
2 49 0 0111111011101000111001100100100110001110000100000001010
3 41 1 111111011101000111001100100100110001110000100000001010
4 33 1 11111011101000111001100100100110001110000100000001010
5 25 1 1111011101000111001100100100110001110000100000001010
6 17 1 111011101000111001100100100110001110000100000001010
7 9 1 11011101000111001100100100110001110000100000001010
8 1 1 1011101000111001100100100110001110000100000001010
9 58 0 011101000111001100100100110001110000100000001010
10 50 1 11101000111001100100100110001110000100000001010
11 42 1 1101000111001100100100110001110000100000001010
12 34 1 101000111001100100100110001110000100000001010
13 36 0 01000111001100100100110001110000100000001010
14 18 1 1000111001100100100110001110000100000001010
15 10 0 000111001100100100110001110000100000001010
16 2 0 00111001100100100110001110000100000001010
17 59 0 0111001100100100110001110000100000001010
18 51 1 111001100100100110001110000100000001010
19 43 1 11001100100100110001110000100000001010
20 35 1 1001100100100110001110000100000001010
21 27 0 001100100100110001110000100000001010
22 19 0 01100100100110001110000100000001010
23 11 1 1100100100110001110000100000001010
24 3 1 100100100110001110000100000001010
25 60 0 00100100110001110000100000001010
26 52 0 0100100110001110000100000001010
27 44 1 100100110001110000100000001010
28 36 0 00100110001110000100000001010
29 63 0 0100110001110000100000001010
30 55 1 100110001110000100000001010
31 47 0 00110001110000100000001010
32 39 0 0110001110000100000001010
33 31 1 110001110000100000001010
34 23 1 10001110000100000001010
35 15 0 0001110000100000001010
36 7 0 001110000100000001010
37 62 0 01110000100000001010
38 54 1 1110000100000001010
39 46 1 110000100000001010
40 38 1 10000100000001010
41 30 0 0000100000001010
42 22 0 000100000001010
43 14 0 00100000001010
44 6 0 0100000001010
45 61 1 100000001010
46 53 0 00000001010
47 45 0 0000001010
48 37 0 000001010
49 29 0 00001010
50 21 0 0001010
51 13 0 001010
52 5 0 01010
53 28 1 1010
54 20 0 010
55 12 1 10
56 4 0
00100111101010110011110001001
0111101010110011110001001
101010110011110001001
10110011110001001
0011110001001
110001001

001110000100000001010
Byte byte hex
001110000100000001010 1 10111111 BF
01110000100000001010 2 01110100 74
1110000100000001010 3 01110011 73
110000100000001010 4 00100100 24
10000100000001010 5 11000111 C7
0000100000001010 6 00001000 8
000100000001010 7 00001010 A
00100000001010
0100000001010
100000001010
00000001010
0000001010
000001010
00001010
PC 1 10111111011101000111001100100100110001110000100000001010

Byte byte hex C0 = 1011111101110100011100110010


1 10111111 BF C1 = 011111101110100011100110010
2 01110100 74
3 01110011 73
4 00100100 24 Byte byte hex
5 11000111 C7 1 01111110 7E
6 00001000 8 2 11101000 E8
7 00001010 A 3 11100110 E6
4 0101 05

Tính Khóa K1 = PC2(C1D1) 011001110101110110010011010100000010101000000011


C1D1= 01111110111010001110011001011001100011100001000000010100

stt pc2
1 14 0 011001110101110110010011010100000010101000000011
2 17 1 11001110101110110010011010100000010101000000011
3 11 1 1001110101110110010011010100000010101000000011
4 24 0 001110101110110010011010100000010101000000011
5 1 0 01110101110110010011010100000010101000000011
6 5 1 1110101110110010011010100000010101000000011
7 3 1 110101110110010011010100000010101000000011
8 28 1 10101110110010011010100000010101000000011
9 15 0 0101110110010011010100000010101000000011
10 6 1 101110110010011010100000010101000000011
11 21 0 01110110010011010100000010101000000011
12 10 1 1110110010011010100000010101000000011
13 23 1 110110010011010100000010101000000011
14 19 1 10110010011010100000010101000000011
15 12 0 0110010011010100000010101000000011
16 4 1 110010011010100000010101000000011
17 26 1 10010011010100000010101000000011
18 8 0 0010011010100000010101000000011
19 16 0 010011010100000010101000000011
20 7 1 10011010100000010101000000011
21 27 0 0011010100000010101000000011
22 20 0 011010100000010101000000011
23 13 1 11010100000010101000000011
24 2 1 1010100000010101000000011
25 41 0 010100000010101000000011
26 52 1 10100000010101000000011
27 31 0 0100000010101000000011
28 37 1 100000010101000000011
29 47 0 00000010101000000011
30 55 0 0000010101000000011
31 30 0 000010101000000011
32 40 0 00010101000000011
33 51 0 0010101000000011
34 45 0 010101000000011
35 33 1 10101000000011
36 48 0 0101000000011
37 44 1 101000000011
38 49 0 01000000011
39 39 1 1000000011
40 56 0 000000011
41 34 0 00000011
42 53 0 0000011
43 46 0 000011
44 42 0 00011
45 50 0 0011
46 36 0 011
47 29 1 11
48 32 1
1100110010 D0 = 0100110001110000100000001010
1001100101 D1 = 1001100011100001000000010100

Byte byte hex


1 10011000 98
2 11100001 E1
3 00000001 01
4 0100 04

0101000000011
1000000010100
Byte byte hex
1 01100111 67
0101000000011 2 01011101 5D
101000000011 3 10010011 93
01000000011 4 01010000 50
1000000011 5 00101010 2A
000000011 6 00000011 03
00000011
Tính Khóa K1 = PC2(C1D1) 0110011101011101100100110101000000101010000
Byte byte hex
1 01100111 67
2 01011101 5D
3 10010011 93
4 01010000 50
5 00101010 2A
6 00000011 3

input M= 133457799BBCDFF0 0001001100110100010101110111100110

Vị trí Hexan BINARY


stt IP bit
1 58 1 1100110011111111011001100101110111110000101

IP(M)= 110011001111111101100110010111011111000010101010011110

Byte byte hex


1 11001100 CC
2 11111111 FF
3 01100110 66
4 01011101 5D
5 11110000 F0
6 10101010 AA
7 01111000 78
8 01010101 55

stt E E(R0) 1111101000010101010101000011111100


1 32 1 1111101000010101010101000011111100000010101

Tính Khóa K1 = PC2(C1D1) 0110011101011111100100110101000000101010000


Byte byte hex
1 01100111 67 103
2 01011101 5D 93
3 10010011 93 147
4 01010000 50 80
5 00101010 2A 42
6 00000011 3 3

Khóa K1

Byte XOR(ER0, K1 binary hexan


1 157 10011101 9D
2 72 01001000 48
3 199 11000111 C7
4 111 01101111 6F
5 40 00101000 28
6 168 10101000 A8

A = ER0 XOR K1 = 1001110101001000110001110110111100

Cặp 6 bit hàng cột


1 100111 11 0011 110011
2 010100 00 1010 001010
3 100011 11 0001 110001
4 000111 01 0011 010011
5 011011 01 1101 011101
6 110010 10 1001 101001
7 100010 10 0001 100001
8 101000 10 0100 100100

chỉ số S1 S2 S3 S4

B= 00100010101001011001000001001001

Hoán vị P(B)

STT P bit
1 16 1

F = P(B) = 11101001000100000001101100000100

byte byte hexan decimal


1 11101001 E9 233
2 00010000 10 16
3 00011011 1B 27
4 00000100 4 4

R1 = F XOR L0 R1 = F XOR L0

L0 = 11001100111111110110011001011101

byte XOR Hexan


1 37 25
2 239 EF
3 125 7D
4 89 59
10010011010100000010101000000011

100010101110111100110011011101111001101111111110000

011001100101110111110000101010100111100001010101

110111110000101010100111100001010101

Nửa trái = 11001100111111110110011001011101


Nửa phải = 11110000101010100111100001010101
Byte byte hex
1 11111010 FA
2 00010101 15
3 01010100 54
4 00111111 3F
5 00000010 02
6 10101011 AB
0001010101010100001111110000001010101011
01010100001111110000001010101011

10010011010100000010101000000011
Byte byte hex
1 11111010 FA 250
2 00010101 15 21
3 01010100 54 84
4 00111111 3F 63
5 00000010 02 2
6 10101011 AB 171

E(R0)
0100100011000111011011110010100010101000

chỉ số mảng tra bảng 5 hex binary


51 2 2 0010
10 2 2 0010 00100010
49 10 A 1010 001000101010
19 5 5 0101 0010001010100101
29 9 9 1001 00100010101001011001
41 0 0 0000 001000101010010110010000
33 4 4 0100 00100010101001011001000001
36 9 9 1001 00100010101001011001000001

S5 S6 S7 S8

byte byte hexan decimal


1 11001100 CC 204
2 11111111 FF 255
3 01100110 66 102
4 01011101 5D 93

R0 = 11110000101010100111100001010101

byte byte hexan


1 11110000 F0
2 10101010 AA
3 01111000 78
4 01010101 55
1001011001
10010110010000
100101100100000100
1001011001000001001001

You might also like