Professional Documents
Culture Documents
Baitap Nguyen Dinh An
Baitap Nguyen Dinh An
Baitap Nguyen Dinh An
ĐÀ NẴNG – 11/2018
1
MỤC LỤC
PHẦN 1: BÀI TẬP................................................................................................................................. 3
Bài 1................................................................................................................................................ 3
Bài 2................................................................................................................................................ 6
Bài 3................................................................................................................................................ 8
Bài 4.............................................................................................................................................. 16
Bài 5.............................................................................................................................................. 19
Phần 2: Bài thực hành ...................................................................................................................... 23
Lab05: Thực hành sử dụng Putty-OPENSSH................................................................................. 23
Lab10: Thực hành sử dụng OpenSSL ............................................................................................ 28
2
PHẦN 1: BÀI TẬP
Bài 1. Cho văn bản gốc P = <hovaten>. Mã hóa P sử dụng các thuật toán mã
hóa sau trên trường số nguyên Z26. Giải thích các bước thực hiện.
a) Mã hóa cộng với khóa K = 18
b) Mã hóa affine với khóa k1= 7, k2 = 11
c) Mã hóa Vigenère với khóa K = attack.
d) Mã hóa Hill Cipher với khóa K tự chọn.
e) Mã hóa Playfair với khóa K tự chọn.
f) Mã hóa Autocipher với K = 18.
=> Bài làm:
Văn bản gốc P a b c d e f g h i j k l m
Văn bản mã hóa A B C D E F G H I J K L M
C
Giá trị 0 1 2 3 4 5 6 7 8 9 10 11 12
n o p q r s t u v w x y z
N O P Q R S T U V W X Y Z
13 14 15 16 17 18 19 20 21 22 23 24 25
3
b) Mã hóa affine với khóa k1= 7, k2 = 11
Bản gốc P n g u y e n d i n h a n
13 6 20 24 4 13 3 8 13 7 0 13
k1 = 7 7 7 7 7 7 7 7 7 7 7 7 7
k2 = 11 11 11 11 11 11 11 11 11 11 11 11 11
C = (P.k1 + k2) mod 26 24 1 21 23 13 24 6 15 24 8 11 24
Bản mã hóa C Y B V X N Y G P Y I L Y
Ma trận [P]:
13 6 20
24 4 13
𝑃=[ ]
3 8 13
7 0 13
[C] = [P][K] mod 26
4
1 4 0
9 16 15
𝐶=[ ]
0 24 1
8 18 23
Bản mã C:
1 4 0 9 16 15 0 24 1 8 18 23
B E A J Q P A Y B I S X
Ta có P = ng uy en di nh an
C = MH TZ CP IO CL
Bản gốc n g u y e n d i n h a n
13 6 20 24 4 13 3 8 13 7 0 13
Khóa K = 18 18 13 6 20 24 4 13 3 8 13 7 0
C 5 19 0 18 2 17 16 11 21 20 7 13
Bản mã F T A S C R Q L V U H N
Bản mã C = FTASCRQLVUHN
5
Bài 2. Cho văn bản gốc P = <hovaten>. Thực hiện mã hoá P theo :
a)Mã hóa AES với khóa K tự chọn. Giải thích các bước thực hiện.
b)Mã hóa RC6 với khóa K tự chọn. Giải thích các bước thực hiện.
Bài làm:
a)Mã hóa AES với khóa K tự chọn. Giải thích các bước thực hiện.
- Văn bản gốc P = nguyendinhan, gồm 12 ký tự, điền thêm 4 ký tự ‘z’ để đủ
16 => P= nguyendinhanzzzz
chuyển sang mã hexa = 6E677579656E64696E68616E7A7A7A7A
6
4D D8 D3 B7 D3 B7 4D D8 A8 16 A2 6D 29 DF EB 18 81 C9 49 75
A0 29 5D 7E 7E A0 29 5D A1 CE 85 61 47 DD 91 F9 E6 13 14 98
Round
B1 51 7B 90 B1 51 7B 90 4B 16 34 F1 24 F0 91 35 6F E6 A5 C4 08
4
BA 3E 9E 62 3E 9E 62 BA 74 3A 8A C7 94 A5 8A 33 E0 9F 00 F4
A5 9E E9 AD E9 AD A5 9E F6 75 10 95 31 7B 57 A7 C7 0E 47 32
A0 C1 81 99 99 A0 C1 81 36 9B D3 96 3F 81 DD 00 09 1A 0E 96
Round
36 8C 81 96 36 8C 81 96 5E A8 8C B1 9E 8E 0F F6 C0 26 83 47 10
5
22 06 7E C3 06 7E C3 22 B4 E1 42 70 77 BD 1E D8 C3 5C 5C A8
C7 21 5B 5C 5B 5C C7 21 23 D5 C3 AE 74 8C DD 82 57 59 1E 2C
75 0C C1 63 63 75 0C C1 C1 47 84 3B D4 48 85 AC 15 0F 01 97
Round
0B 19 76 42 0B 19 76 42 C8 FF 8F 73 EA FB 08 B3 22 04 87 C0 20
6
F5 7A 72 61 7A 72 61 F5 36 80 4B 88 84 6E F9 92 B2 EE B2 1A
92 64 C1 13 C1 13 92 64 40 95 DE DD 9F 13 46 69 DF 86 98 B4
48 52 97 91 91 48 52 97 9F DA CD 62 2A 60 76 4E B5 BA BB 2C
Round
87 0F 30 6D 87 0F 30 6D DA B2 BA 7E 1A 76 F9 FD C0 C4 43 83 40
7
5F 9F 99 4F 9F 99 4F 5F 63 D3 08 6C 5C 02 6B 15 3F D1 63 79
DB 7D 5A F9 5A F9 DB 7D DD 4B B9 80 73 63 09 84 AE 28 B0 04
E5 D0 38 2F 2F E5 D0 38 09 A0 7F E5 06 15 71 C7 0F B5 0E 22
Round
A2 38 99 54 A2 38 99 54 01 C1 14 2E F7 F3 65 DC F6 32 71 F2 80
8
4A 77 7F 59 77 7F 59 4A 89 48 F8 75 44 54 87 73 CD 1C 7F 06
8F FB 01 5F 01 5F 8F FB 86 48 2E 0D BB 5D 8B AC 3D 15 A5 A1
6F 59 A3 C6 C6 6F 59 A3 1C B6 D4 10 FF E0 8C 6A E3 56 58 7A
Round
68 0D 4D 86 68 0D 4D 86 8F A4 1B 12 0D 14 DA 21 82 B0 C1 33 1B
9
1B 20 17 8F 20 17 8F 1B 6D 9D 8C 00 92 7E 10 9A FF E3 9C 9A
EA 4C 3D 91 3D 91 EA 4C 34 19 35 A9 D3 EB 62 5F E7 F2 57 F6
16 E1 64 02 02 16 E1 64 A1 BD 6B 0E CB 81 0F 10 6A 3C 64 1E
Round
D7 FA 57 FD D7 FA 57 FD DB 46 2A B3 0C BC 7D 4E 36
10
4F F3 CA B8 F3 CA B8 4F 4E 94 7A 17 BD 5E C2 58
66 E9 AA CF AA CF 66 E9 3F A8 56 2F 95 67 30 C6
1F 0C 76 CA CA 1F 0C 76 63 8A FD 99 A9 95 F1 EF
7
b) Mã hóa RC6 với khóa K tự chọn. Giải thích các bước thực hiện. (Chưa làm
được)
Bài 3. Cho văn bản gốc P = <hovaten>. Tính giá trị hàm băm MD5 và SHA-1
của P. Giải thích các bước thực hiện.
1/ Tính giá trị hàm băm MD5
- Bước 1: Bổ sung thêm dữ liệu
+ Dữ liệu ban đầu : P = “nguyendinhan” biểu diễn dưới dạng nhị phân:
01101110 01100111 01110101 01111001 01100101 01101110 01100100
01101001 01101110 01101000 01100001 01101110
+ Dữ liệu gồm 12 ký tự ASCII, mỗi kí tự 8 bit nên thông điệp P có 12x8 = 96 bits.
Thêm 1 bit 1 và 351 bit 0 để có chiều dài 448 bits.
- Bước 2: Thêm các bit chiều dài dữ liệu
+ 64 bits còn lại biểu diễn độ dài thông điệp. Độ dài thông điệp là 96, biểu diễn nhị
phân là 1110 0000 nên 64 bit còn lại thêm vào là :
0000000000000000000000000000000000000000000000000000000001100000
+ Chung lại 512 bits sau khi bổ sung thêm dữ liệu là
01101110 01100111 01110101 01111001 01100101 01101110 01100100
01101001 01101110 01101000 01100001 01101110 10000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
01100000
- Bước 3: Khởi tạo bộ đệm
𝐴0 = 67452301; 𝐵0 = 𝐸𝐹𝐶𝐷𝐴𝐵89; 𝐶0 = 98𝐵𝐴𝐷𝐶𝐹𝐸; 𝐷0 = 10325476
8
- Bước 4: Xử lý thông điệp theo từng khối 16 words 32 bits ( tổng cộng
chiều dài dữ liệu đưa vào là 512 bits)
Quá trình xử lý gồm 4 vòng, mỗi vòng 16 bước. 4 vòng xử lý theo các hàm như
sau:
9
16 80814dd2 eb631fcb 4b731d0c [BCDA 15 22 16] 60 49b40821 22 626eb6dd
17 80814dd2 eb631fcb 4b731d0c [ABCD 1 5 17] 656e6469 f61e2562 5 becc9abe
18 80814dd2 eb631fcb a722682a [DABC 6 9 18] 0 c040b340 9 becc9abe
19 80814dd2 3c351c2d a722682a [CDAB 11 14 19] 0 265e5a51 14 becc9abe
20 8d97296c 3c351c2d a722682a [BCDA 0 20 20] 6e677579 e9b6c7aa 20 becc9abe
21 8d97296c 3c351c2d a722682a [ABCD 5 5 21] 0 d62f105d 5 cff41272
22 8d97296c 3c351c2d 94fcce0 [DABC 10 9 22] 0 2441453 9 cff41272
23 8d97296c 9097e4ef 94fcce0 [CDAB 15 14 23] 60 d8a1e681 14 cff41272
24 b207459e 9097e4ef 94fcce0 [BCDA 4 20 24] 0 e7d3fbc8 20 cff41272
25 b207459e 9097e4ef 94fcce0 [ABCD 9 5 25] 0 21e1cde6 5 ffafe28e
26 b207459e 9097e4ef 1d1d4b8c [DABC 14 9 26] 0 c33707d6 9 ffafe28e
27 b207459e d2be0452 1d1d4b8c [CDAB 3 14 27] 80000000 f4d50d87 14 ffafe28e
28 b9aa648 d2be0452 1d1d4b8c [BCDA 8 20 28] 0 455a14ed 20 ffafe28e
29 b9aa648 d2be0452 1d1d4b8c [ABCD 13 5 29] 0 a9e3e905 5 b554e3f6
30 b9aa648 d2be0452 bb497c39 [DABC 2 9 30] 6e68616e fcefa3f8 9 b554e3f6
31 b9aa648 1683fa97 bb497c39 [CDAB 7 14 31] 0 676f02d9 14 b554e3f6
32 2d9f6786 1683fa97 bb497c39 [BCDA 12 20 32] 0 8d2a4c8a 20 b554e3f6
33 2d9f6786 1683fa97 bb497c39 [ABCD 5 4 33] 0 fffa3942 4 87ef4d89
34 2d9f6786 1683fa97 209e586 [DABC 8 11 34] 0 8771f681 11 87ef4d89
35 2d9f6786 2d4c1221 209e586 [CDAB 11 16 35] 0 6d9d6122 16 87ef4d89
36 3db629ce 2d4c1221 209e586 [BCDA 14 23 36] 0 fde5380c 23 87ef4d89
37 3db629ce 2d4c1221 209e586 [ABCD 1 4 37] 656e6469 a4beea44 4 ce1e7388
38 3db629ce 2d4c1221 360b24ee [DABC 4 11 38] 0 4bdecfa9 11 ce1e7388
39 3db629ce 12350e98 360b24ee [CDAB 7 16 39] 0 f6bb4b60 16 ce1e7388
40 30a859b8 12350e98 360b24ee [BCDA 10 23 40] 0 bebfbc70 23 ce1e7388
41 30a859b8 12350e98 360b24ee [ABCD 13 4 41] 0 289b7ec6 4 e5aebb78
42 30a859b8 12350e98 92b42e82 [DABC 0 11 42] 6e677579 eaa127fa 11 e5aebb78
43 30a859b8 9e935d59 92b42e82 [CDAB 3 16 43] 80000000 d4ef3085 16 e5aebb78
44 4ea2ba78 9e935d59 92b42e82 [BCDA 6 23 44] 0 4881d05 23 e5aebb78
45 4ea2ba78 9e935d59 92b42e82 [ABCD 9 4 45] 0 d9d4d039 4 6f380fb8
46 4ea2ba78 9e935d59 3cc0117c [DABC 12 11 46] 0 e6db99e5 11 6f380fb8
47 4ea2ba78 bbcded0c 3cc0117c [CDAB 15 16 47] 60 1fa27cf8 16 6f380fb8
48 4582e042 bbcded0c 3cc0117c [BCDA 2 23 48] 6e68616e c4ac5665 23 6f380fb8
49 4582e042 bbcded0c 3cc0117c [ABCD 0 6 49] 6e677579 f4292244 6 97aa2e98
50 4582e042 bbcded0c 27695ee0 [DABC 7 10 50] 0 432aff97 10 97aa2e98
51 4582e042 e8a5a6fc 27695ee0 [CDAB 14 15 51] 0 ab9423a7 15 97aa2e98
52 1be7dd61 e8a5a6fc 27695ee0 [BCDA 5 21 52] 0 fc93a039 21 97aa2e98
53 1be7dd61 e8a5a6fc 27695ee0 [ABCD 12 6 53] 0 655b59c3 6 31e0d4ed
54 1be7dd61 e8a5a6fc 7e92d877 [DABC 3 10 54] 80000000 8f0ccc92 10 31e0d4ed
55 1be7dd61 6358b47e 7e92d877 [CDAB 10 15 55] 0 ffeff47d 15 31e0d4ed
56 776c4840 6358b47e 7e92d877 [BCDA 1 21 56] 656e6469 85845dd1 21 31e0d4ed
10
57 776c4840 6358b47e 7e92d877 [ABCD 8 6 57] 0 6fa87e4f 6 e73804cd
58 776c4840 6358b47e 325394e3 [DABC 15 10 58] 60 fe2ce6e0 10 e73804cd
59 776c4840 7b5c705 325394e3 [CDAB 6 15 59] 0 a3014314 15 e73804cd
60 be742a1d 7b5c705 325394e3 [BCDA 13 21 60] 0 4e0811a1 21 e73804cd
61 be742a1d 7b5c705 325394e3 [ABCD 4 6 61] 0 f7537e82 6 73c00412
62 be742a1d 7b5c705 a63800e7 [DABC 11 10 62] 0 bd3af235 10 73c00412
63 be742a1d 10499b9c a63800e7 [CDAB 2 15 63] 6e68616e 2ad7d2bb 15 73c00412
64 296623fb 10499b9c a63800e7 [BCDA 9 21 64] 0 eb86d391 21 73c00412
11
01101110 01100111 01110101 01111001 01100101 01101110 01100100
01101001 01101110 01101000 01100001 01101110 10000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
01100000
- Bước 3: Khởi tạo bộ đệm
𝐻1 = 67452301
𝐻2 = 𝐸𝐹𝐶𝐷𝐴𝐵89
𝐻3 = 98𝐵𝐴𝐷𝐶𝐹𝐸
𝐻4 = 10325476
𝐻5 = 𝐶3𝐷2𝐸1𝐹0
Các hằng số K[t]:
+ 𝐾𝑡 = 5𝐴827999 (0 ≤ 𝑡 ≤ 19)
+ 𝐾𝑡 = 6𝐸𝐷9𝐸𝐵𝐴1(20 ≤ 𝑡 ≤ 39)
+ 𝐾𝑡 = 8𝐹1𝐵𝐵𝐶𝐷𝐶 (40 ≤ 𝑡 ≤ 59)
+ 𝐾𝑡 = 𝐶𝐴62𝐶1𝐷6 (60 ≤ 𝑡 ≤ 80)
Các trị đầu vào W[t] xử lý từ chuỗi dữ liệu 512 bits ban đầu: (trình bày trong cột
W[t] trong bàng)
+ 16 khối 32 bits tách ra từ dữ liệu ban đầu:
t W[t]
0 6e677579
1 656e6469
2 6e68616e
3 80000000
12
4 0
5 0
6 0
7 0
8 0
9 0
10 0
11 0
12 0
13 0
14 0
15 60
for i from 16 to 79
w[i] = (w[i-3] xor w[i-8] xor w[i-14] xor w[i-16]) << 1
Ta được các giá trị W[t] còn lại được ghi trong bảng xử lý dữ liệu phía dưới
- Bước 4: Xử lý các khối dữ liệu 512 bits.
T A B C D E F W[T] K[T]
0 E1C0E2C 67452301 7BF36AE2 98BADCFE 10325476 (B AND C) OR ((NOT B) AND D) 6E677579 5A827999
1 8FA0F6F7 E1C0E2C 59D148C0 7BF36AE2 98BADCFE (B AND C) OR ((NOT B) AND D) 656E6469 5A827999
2 CFB7FFB8 8FA0F6F7 387038B 59D148C0 7BF36AE2 (B AND C) OR ((NOT B) AND D) 6E68616E 5A827999
3 A146E617 CFB7FFB8 E3E83DBD 387038B 59D148C0 (B AND C) OR ((NOT B) AND D) 80000000 5A827999
4 A0D0C308 A146E617 33EDFFEE E3E83DBD 387038B (B AND C) OR ((NOT B) AND D) 0 5A827999
5 DC0EDDE6 A0D0C308 E851B985 33EDFFEE E3E83DBD (B AND C) OR ((NOT B) AND D) 0 5A827999
6 73C43217 DC0EDDE6 283430C2 E851B985 33EDFFEE (B AND C) OR ((NOT B) AND D) 0 5A827999
7 2F4BED38 73C43217 B703B779 283430C2 E851B985 (B AND C) OR ((NOT B) AND D) 0 5A827999
8 67820CF4 2F4BED38 DCF10C85 B703B779 283430C2 (B AND C) OR ((NOT B) AND D) 0 5A827999
9 F396728 67820CF4 BD2FB4E DCF10C85 B703B779 (B AND C) OR ((NOT B) AND D) 0 5A827999
10 94A61E58 F396728 19E0833D BD2FB4E DCF10C85 (B AND C) OR ((NOT B) AND D) 0 5A827999
11 D619EC9E 94A61E58 3CE59CA 19E0833D BD2FB4E (B AND C) OR ((NOT B) AND D) 0 5A827999
12 3359A22E D619EC9E 25298796 3CE59CA 19E0833D (B AND C) OR ((NOT B) AND D) 0 5A827999
13 E566D872 3359A22E B5867B27 25298796 3CE59CA (B AND C) OR ((NOT B) AND D) 0 5A827999
14 404C0975 E566D872 8CD6688B B5867B27 25298796 (B AND C) OR ((NOT B) AND D) 0 5A827999
13
15 1DF39B3E 404C0975 B959B61C 8CD6688B B5867B27 (B AND C) OR ((NOT B) AND D) 60 5A827999
16 5B74E54F 1DF39B3E 5013025D B959B61C 8CD6688B (B AND C) OR ((NOT B) AND D) 1E282E 5A827999
17 D0ED7AFE 5B74E54F 877CE6CF 5013025D B959B61C (B AND C) OR ((NOT B) AND D) CADCC8D3 5A827999
18 11D4380A D0ED7AFE D6DD3953 877CE6CF 5013025D (B AND C) OR ((NOT B) AND D) DCD0C21C 5A827999
19 BD3689E8 11D4380A B43B5EBF D6DD3953 877CE6CF B XOR C XOR D 3C505D 6ED9EBA1
20 A6140114 BD3689E8 84750E02 B43B5EBF D6DD3953 B XOR C XOR D 95B991A7 6ED9EBA1
21 4F51A516 A6140114 2F4DA27A 84750E02 B43B5EBF B XOR C XOR D B9A18439 6ED9EBA1
22 1AEF3B4F 4F51A516 29850045 2F4DA27A 84750E02 B XOR C XOR D 78A0BA 6ED9EBA1
23 C6428E3E 1AEF3B4F 93D46945 29850045 2F4DA27A B XOR C XOR D 2B73238F 6ED9EBA1
24 7AB70071 C6428E3E C6BBCED3 93D46945 29850045 B XOR C XOR D 737F582F 6ED9EBA1
25 17B4F490 7AB70071 B190A38F C6BBCED3 93D46945 B XOR C XOR D 9548D0D3 6ED9EBA1
26 F631173C 17B4F490 5EADC01C B190A38F C6BBCED3 B XOR C XOR D EF47C327 6ED9EBA1
27 DAC849F9 F631173C 5ED3D24 5EADC01C B190A38F B XOR C XOR D E68610E4 6ED9EBA1
28 28C83B57 DAC849F9 3D8C45CF 5ED3D24 5EADC01C B XOR C XOR D 1E282E8 6ED9EBA1
29 7704D6B0 28C83B57 76B2127E 3D8C45CF 5ED3D24 B XOR C XOR D ADCC8EFC 6ED9EBA1
30 87199C9A 7704D6B0 CA320ED5 76B2127E 3D8C45CF B XOR C XOR D CDC130E1 6ED9EBA1
31 1BB96284 87199C9A 1DC135AC CA320ED5 76B2127E B XOR C XOR D C09AD3A9 6ED9EBA1
32 B29D7047 1BB96284 A1C66726 1DC135AC CA320ED5 B XOR C XOR D 4FA79C2 6ED9EBA1
33 594B24F3 B29D7047 6EE58A1 A1C66726 1DC135AC B XOR C XOR D 24D2F179 6ED9EBA1
34 991D95E2 594B24F3 ECA75C11 6EE58A1 A1C66726 B XOR C XOR D CD68866A 6ED9EBA1
35 9F18A9E1 991D95E2 D652C93C ECA75C11 6EE58A1 B XOR C XOR D B7C37A84 6ED9EBA1
36 5EA8065D 9F18A9E1 A6476578 D652C93C ECA75C11 B XOR C XOR D 61E28519 6ED9EBA1
37 47C7743 5EA8065D 67C62A78 A6476578 D652C93C B XOR C XOR D E4ED5E41 6ED9EBA1
38 85F04C7A 47C7743 57AA0197 67C62A78 A6476578 B XOR C XOR D 120B65E0 6ED9EBA1
39 45C288ED 85F04C7A C11F1DD0 57AA0197 67C62A78 (B AND C) OR (B AND D) OR (C 3E874BD8 8F1BBCDC
AND D)
40 6D4C8BE4 45C288ED A17C131E C11F1DD0 57AA0197 (B AND C) OR (B AND D) OR (C F85F7916 8F1BBCDC
AND D)
41 DBE3FE38 6D4C8BE4 5170A23B A17C131E C11F1DD0 (B AND C) OR (B AND D) OR (C 8A2EA95C 8F1BBCDC
AND D)
42 68CC3DFF DBE3FE38 1B5322F9 5170A23B A17C131E (B AND C) OR (B AND D) OR (C 3A9518FA 8F1BBCDC
AND D)
43 AF406D34 68CC3DFF 36F8FF8E 1B5322F9 5170A23B (B AND C) OR (B AND D) OR (C 9AD3B14 8F1BBCDC
AND D)
44 53518243 AF406D34 DA330F7F 36F8FF8E 1B5322F9 (B AND C) OR (B AND D) OR (C 4FDF3C98 8F1BBCDC
AND D)
45 396BCF5A 53518243 2BD01B4D DA330F7F 36F8FF8E (B AND C) OR (B AND D) OR (C 665C37DD 8F1BBCDC
AND D)
46 F419E2AF 396BCF5A D4D46090 2BD01B4D DA330F7F (B AND C) OR (B AND D) OR (C A53A2FAF 8F1BBCDC
AND D)
47 507C18D2 F419E2AF 8E5AF3D6 D4D46090 2BD01B4D (B AND C) OR (B AND D) OR (C 2A20AB21 8F1BBCDC
AND D)
48 4DEB37CF 507C18D2 FD0678AB 8E5AF3D6 D4D46090 (B AND C) OR (B AND D) OR (C AF2362C6 8F1BBCDC
AND D)
14
49 75BFAA44 4DEB37CF 941F0634 FD0678AB 8E5AF3D6 (B AND C) OR (B AND D) OR (C 780A1A1D 8F1BBCDC
AND D)
50 2AFA9140 75BFAA44 D37ACDF3 941F0634 FD0678AB (B AND C) OR (B AND D) OR (C 787F6151 8F1BBCDC
AND D)
51 ABF4E62F 2AFA9140 1D6FEA91 D37ACDF3 941F0634 (B AND C) OR (B AND D) OR (C EB40FA2F 8F1BBCDC
AND D)
52 45CBDFCE ABF4E62F ABEA450 1D6FEA91 D37ACDF3 (B AND C) OR (B AND D) OR (C 88798CF8 8F1BBCDC
AND D)
53 B0A3F0D3 45CBDFCE EAFD398B ABEA450 1D6FEA91 (B AND C) OR (B AND D) OR (C 8892862B 8F1BBCDC
AND D)
54 5467129A B0A3F0D3 9172F7F3 EAFD398B ABEA450 (B AND C) OR (B AND D) OR (C 485D92ED 8F1BBCDC
AND D)
55 5923103 5467129A EC28FC34 9172F7F3 EAFD398B (B AND C) OR (B AND D) OR (C 2DE18ABA 8F1BBCDC
AND D)
56 CBB9177C 5923103 9519C4A6 EC28FC34 9172F7F3 (B AND C) OR (B AND D) OR (C CAF70A03 8F1BBCDC
AND D)
57 8472CDFF CBB9177C C1648C40 9519C4A6 EC28FC34 (B AND C) OR (B AND D) OR (C 67A83571 8F1BBCDC
AND D)
58 C819C76 8472CDFF 32EE45DF C1648C40 9519C4A6 (B AND C) OR (B AND D) OR (C 41A99F12 8F1BBCDC
AND D)
59 D15DD7EC C819C76 E11CB37F 32EE45DF C1648C40 B XOR C XOR D 9C8DF9CA CA62C1D6
60 A15F0C02 D15DD7EC 8320671D E11CB37F 32EE45DF B XOR C XOR D A69557C CA62C1D6
61 E7229722 A15F0C02 345775FB 8320671D E11CB37F B XOR C XOR D A8F0B8B CA62C1D6
62 638CC532 E7229722 A857C300 345775FB 8320671D B XOR C XOR D BD924C9D CA62C1D6
63 2582CF0C 638CC532 B9C8A5C8 A857C300 345775FB B XOR C XOR D EB44DDF4 CA62C1D6
64 4F6FC18D 2582CF0C 98E3314C B9C8A5C8 A857C300 B XOR C XOR D 2E48043E CA62C1D6
65 F83D45C3 4F6FC18D 960B3C3 98E3314C B9C8A5C8 B XOR C XOR D 92E133BC CA62C1D6
66 2097C1BD F83D45C3 53DBF063 960B3C3 98E3314C B XOR C XOR D B5D75E9E CA62C1D6
67 BAF3350A 2097C1BD FE0F5170 53DBF063 960B3C3 B XOR C XOR D A22F03E1 CA62C1D6
68 70C66948 BAF3350A 4825F06F FE0F5170 53DBF063 B XOR C XOR D B158F1AA CA62C1D6
69 783C2264 70C66948 AEBCCD42 4825F06F FE0F5170 B XOR C XOR D 3456B308 CA62C1D6
70 A085635F 783C2264 1C319A52 AEBCCD42 4825F06F B XOR C XOR D 3A2FAF25 CA62C1D6
71 E91BAD7 A085635F 1E0F0899 1C319A52 AEBCCD42 B XOR C XOR D 20AB272A CA62C1D6
72 10931FDC E91BAD7 E82158D7 1E0F0899 1C319A52 B XOR C XOR D 2280444F CA62C1D6
73 998EE287 10931FDC C3A46EB5 E82158D7 1E0F0899 B XOR C XOR D A7D6A044 CA62C1D6
74 12DDACD5 998EE287 424C7F7 C3A46EB5 E82158D7 B XOR C XOR D BD7967B5 CA62C1D6
75 99A36CF2 12DDACD5 E663B8A1 424C7F7 C3A46EB5 B XOR C XOR D 2D5B6BDE CA62C1D6
76 F5FA3280 99A36CF2 44B76B35 E663B8A1 424C7F7 B XOR C XOR D 42EA901F CA62C1D6
77 9B0D9ED5 F5FA3280 A668DB3C 44B76B35 E663B8A1 B XOR C XOR D D1C80584 CA62C1D6
78 32FCF064 9B0D9ED5 3D7E8CA0 A668DB3C 44B76B35 B XOR C XOR D 95D18B1 CA62C1D6
79 A69CB5D4 32FCF064 66C367B5 3D7E8CA0 A668DB3C B XOR C XOR D 37C8B2FA CA62C1D6
15
- Bước 5: Xuất kết quả.
+ Với 𝐻1 = 67452301; 𝐻2 = 𝐸𝐹𝐶𝐷𝐴𝐵89;
𝐻3 = 98𝐵𝐴𝐷𝐶𝐹𝐸; 𝐻4 = 10325476; 𝐻5 = 𝐶3𝐷2𝐸1𝐹0
Các giá trị băm cuối cùng:
𝐻0_𝑘𝑞 = (𝑎69𝑐𝑏5𝑑4 + 𝐻1 ) 𝑚𝑜𝑑 100000000 = 0𝑑𝑒1𝑑8𝑑5
𝐻1_𝑘𝑞 = (32𝑓𝑐𝑓064 + 𝐻2 ) 𝑚𝑜𝑑 100000000 = 22𝑐𝑎9𝑏𝑒𝑑
𝐻2_𝑘𝑞 = (66𝑐367𝑏5 + 𝐻3 ) 𝑚𝑜𝑑 100000000 = 𝑓𝑓7𝑒44𝑏3
𝐻3_𝑘𝑞 = (3𝑑7𝑒8𝑐𝑎0 + 𝐻4 ) 𝑚𝑜𝑑 100000000 = 4𝑑𝑏0𝑒116
𝐻4_𝑘𝑞 = (𝑎668𝑑𝑏3𝑐 + 𝐻5 ) 𝑚𝑜𝑑 100000000 = 4𝑑𝑏0𝑒116
SHA1("nguyendinhan")=
0DE1D8D522CA9BEDFF7E44B34DB0E1166A3BBD2C
Bài 4. Cho văn bản gốc P = <ten>. Thực hiện mã hoá và giải mã từng ký tự
trong P theo :
a) Mã hóa RSA với (p = 7, q = 11) hoặc (p = 17, q = 31)
b) Mã hóa ElGamal với p = 31, a = 11 và x = 6.
c) Mã hóa Rabin với (p = 7, q = 11)
Bài làm :
16
+ Xác định d để 𝑑 × 𝑒 ≡ 1 (𝑚𝑜𝑑 480) và 𝑑 < 480. Giá trị phù hợp là 𝑑 = 37 vì
13 × 37 ≡ 1 (𝑚𝑜𝑑 480).
Kết quả ta có khóa công khai (13,527), khóa bí mật (31, 527)
+ Văn bản gốc M1 = 97 < n
Quá trình mã hóa : 𝐶 = 𝑀𝑒 𝑚𝑜𝑑 𝑛 = 9713 𝑚𝑜𝑑 527 = 405
Quá trình giải mã : 𝑀 = 𝐶 𝑑 𝑚𝑜𝑑 𝑛 = 40537 𝑚𝑜𝑑 527 = 97 (đúng)
+ Văn bản gốc M2 = 110 < n
Quá trình mã hóa : 𝐶 = 𝑀𝑒 𝑚𝑜𝑑 𝑛 = 11013 𝑚𝑜𝑑 527 = 468
Quá trình giải mã : 𝑀 = 𝐶 𝑑 𝑚𝑜𝑑 𝑛 = 46837 𝑚𝑜𝑑 527 = 110 (đúng)
17
c) Mã hóa Rabin với (p=7, q=11):
+ Chọn p = 7, q = 11.
+ Tính n = p × q = 7 × 11 = 77
+ Khóa công khai là n = 77. Khóa riêng là (23, 7)
Cho văn bản M = 20
- Quá trình mã hóa:
C = M 2 𝑚𝑜𝑑 𝑛 = 202 𝑚𝑜𝑑 77 = 15
- Quá trình giải mã:
𝑝+1 7+1
𝑚𝑝1 = 𝐶 4 𝑚𝑜𝑑 𝑝 = 15 4 𝑚𝑜𝑑 7 = 1
𝑚𝑝 2 = 𝑝 − 𝑚𝑝1 = 7 − 1 = 6
𝑞+1 11+1
𝑚𝑞 1 = 𝐶 4 𝑚𝑜𝑑 𝑞 = 15 4 𝑚𝑜𝑑 11 = 9
𝑚𝑞 2 = 𝑞 − 𝑚𝑞 1 = 11 − 9 = 2
18
+ M4 = (𝑚𝑝 2 𝑞(𝑞 −1 𝑚𝑜𝑑 𝑝) + 𝑚𝑞 2 𝑝(𝑝−1 𝑚𝑜𝑑 𝑞)) 𝑚𝑜𝑑 𝑛
x 13 14 15 16 17 18 19 20 21 22
y1 ∞ ∞ 3 8 10 10 1 4 6 ∞
y2 ∞ ∞ 20 15 13 13 22 19 17 ∞
19
+ Tọa độ R:
𝑥𝑅 = 𝜆2 − 𝑥𝑃 − 𝑥𝑄 𝑚𝑜𝑑 𝑝 = 82 − 1 − 20 𝑚𝑜𝑑 23 = 20
𝑦𝑅 = 𝜆(𝑥𝑃 − 𝑥𝑅 ) − 𝑦𝑃 𝑚𝑜𝑑 𝑝 = 8(1 − 20) − 5 𝑚𝑜𝑑 23 = 4
R(20, 4)
- Tính R = 2P
2 +𝑎
3𝑥𝑝 3.12 +1
+ Hệ số góc 𝜆 = 𝑚𝑜𝑑 𝑝 = 𝑚𝑜𝑑 23 = 5
2𝑦𝑃 2∗5
+ Tọa độ R:
𝑥𝑅 = 𝜆2 − 2𝑥𝑃 𝑚𝑜𝑑 𝑝 = 52 − 1 − 1 𝑚𝑜𝑑 23 = 0
𝑦𝑅 = 𝜆(𝑥𝑃 − 𝑥𝑅 ) − 𝑦𝑃 𝑚𝑜𝑑 𝑝 = 5(1 − 0) − 5 𝑚𝑜𝑑 23 = 0
R(0,0)
- Tính R = 3P = 2P + P
𝑦𝑞 −𝑦𝑝 5−0
+ Hệ số góc 𝜆 = 𝑚𝑜𝑑 𝑝 = 𝑚𝑜𝑑 23 = 5
𝑥𝑞 −𝑥𝑝 1−0
+ Tọa độ R:
𝑥𝑅 = 𝜆2 − 𝑥𝑃 − 𝑥𝑄 𝑚𝑜𝑑 𝑝 = 52 − 1 − 0 𝑚𝑜𝑑 23 = 1
𝑦𝑅 = 𝜆(𝑥𝑃 − 𝑥𝑅 ) − 𝑦𝑃 𝑚𝑜𝑑 𝑝 = 14(1 − 1) − 5 𝑚𝑜𝑑 23 = 18
R(1,18)
d) Giả sử cần mã hóa bản rõ M = (11, 10) với một số ngẫu nhiên k = 3. Hãy
xác định bản mã hóa C tương ứng.
*Để thuận tiện tính toán, ta có bảng kết quả phép cộng các điểm:
+ ∞ (0,0) (1,5) (1,18) (9,5) (9,18) (11,10) (11,13) (13,5) (13,18) (15,3) (15,20) (16,8) (16,15) (17,10) (17,13) (18,10) (18,13) (19,1) (19,22) (20,4) (20,19) (21,6) (21,17)
∞ ∞ (0,0) (1,5) (1,18) (9,5) (9,18) (11,10) (11,13) (13,5) (13,18) (15,3) (15,20) (16,8) (16,15) (17,10) (17,13) (18,10) (18,13) (19,1) (19,22) (20,4) (20,19) (21,6) (21,17)
(0,0) (0,0) ∞ (1,18) (1,5) (18,13) (18,10) (21,6) (21,17) (16,8) (16,15) (20,19) (20,4) (13,5) (13,18) (19,1) (19,22) (9,18) (9,5) (17,10) (17,13) (15,20) (15,3) (11,10) (11,13)
(1,5) (1,5) (1,18) (0,0) ∞ (13,18) (16,8) (17,10) (19,22) (9,18) (18,13) (15,20) (20,19) (18,10) (9,5) (21,6) (11,13) (13,5) (16,15) (11,10) (21,17) (15,3) (20,4) (19,1) (17,13)
(1,18) (1,18) (1,5) ∞ (0,0) (16,15) (13,5) (19,1) (17,13) (18,10) (9,5) (20,4) (15,3) (9,18) (18,13) (11,10) (21,17) (16,8) (13,18) (21,6) (11,13) (20,19) (15,20) (17,10) (19,22)
(9,5) (9,5) (18,13) (13,18) (16,15) (18,10) ∞ (15,3) (19,1) (1,18) (13,5) (17,13) (11,13) (1,5) (16,8) (15,20) (21,6) (0,0) (9,18) (20,4) (11,10) (21,17) (19,22) (20,19) (17,10)
(9,18) (9,18) (18,10) (16,8) (13,5) ∞ (18,13) (19,22) (15,20) (13,18) (1,5) (11,10) (17,10) (16,15) (1,18) (21,17) (15,3) (9,5) (0,0) (11,13) (20,19) (19,1) (21,6) (17,13) (20,4)
20
(11,10) (11,10) (21,6) (17,10) (19,1) (15,3) (19,22) (13,18) ∞ (11,13) (15,20) (13,5) (9,18) (21,17) (20,4) (18,13) (1,18) (17,13) (20,19) (9,5) (1,5) (18,10) (16,8) (16,15) (0,0)
(11,13) (11,13) (21,17) (19,22) (17,13) (19,1) (15,20) ∞ (13,5) (15,3) (11,10) (9,5) (13,18) (20,19) (21,6) (1,5) (18,10) (20,4) (17,10) (1,18) (9,18) (16,15) (18,13) (0,0) (16,8)
(13,5) (13,5) (16,8) (9,18) (18,10) (1,18) (13,18) (11,13) (15,3) (9,5) ∞ (19,1) (11,10) (18,13) (0,0) (19,22) (20,4) (16,15) (1,5) (17,13) (15,20) (21,6) (17,10) (21,17) (20,19)
(13,18) (13,18) (16,15) (18,13) (9,5) (13,5) (1,5) (15,20) (11,10) ∞ (9,18) (11,13) (19,22) (0,0) (18,10) (20,19) (19,1) (1,18) (16,8) (15,3) (17,10) (17,13) (21,17) (20,4) (21,6)
(15,3) (15,3) (20,19) (15,20) (20,4) (17,13) (11,10) (13,5) (9,5) (19,1) (11,13) (1,18) ∞ (17,10) (21,17) (9,18) (16,15) (21,6) (19,22) (18,10) (13,18) (0,0) (1,5) (16,8) (18,13)
(15,20) (15,20) (20,4) (20,19) (15,3) (11,13) (17,10) (9,18) (13,18) (11,10) (19,22) ∞ (1,5) (21,6) (17,13) (16,8) (9,5) (19,1) (21,17) (13,5) (18,13) (1,18) (0,0) (18,10) (16,15)
(16,8) (16,8) (13,5) (18,10) (9,18) (1,5) (16,15) (21,17) (20,19) (18,13) (0,0) (17,10) (21,6) (9,5) ∞ (17,13) (15,20) (13,18) (1,18) (19,22) (20,4) (11,10) (19,1) (11,13) (15,3)
(16,15) (16,15) (13,18) (9,5) (18,13) (16,8) (1,18) (20,4) (21,6) (0,0) (18,10) (21,17) (17,13) ∞ (9,18) (15,3) (17,10) (1,5) (13,5) (20,19) (19,1) (19,22) (11,13) (15,20) (11,10)
(17,10) (17,10) (19,1) (21,6) (11,10) (15,20) (21,17) (18,13) (1,5) (19,22) (20,19) (9,18) (16,8) (17,13) (15,3) (16,15) ∞ (11,13) (20,4) (13,18) (0,0) (13,5) (18,10) (9,5) (1,18)
(17,13) (17,13) (19,22) (11,13) (21,17) (21,6) (15,3) (1,18) (18,10) (20,4) (19,1) (16,15) (9,5) (15,20) (17,10) ∞ (16,8) (20,19) (11,10) (0,0) (13,5) (18,13) (13,18) (1,5) (9,18)
(18,10) (18,10) (9,18) (13,5) (16,8) (0,0) (9,5) (17,13) (20,4) (16,15) (1,18) (21,6) (19,1) (13,18) (1,5) (11,13) (20,19) (18,13) ∞ (21,17) (15,3) (17,10) (11,10) (19,22) (15,20)
(18,13) (18,13) (9,5) (16,15) (13,18) (9,18) (0,0) (20,19) (17,10) (1,5) (16,8) (19,22) (21,17) (1,18) (13,5) (20,4) (11,10) ∞ (18,10) (15,20) (21,6) (11,13) (17,13) (15,3) (19,1)
(19,1) (19,1) (17,10) (11,10) (21,6) (20,4) (11,13) (9,5) (1,18) (17,13) (15,3) (18,10) (13,5) (19,22) (20,19) (13,18) (0,0) (21,17) (15,20) (16,15) ∞ (16,8) (9,18) (18,13) (1,5)
(19,22) (19,22) (17,13) (21,17) (11,13) (11,10) (20,19) (1,5) (9,18) (15,20) (17,10) (13,18) (18,13) (20,4) (19,1) (0,0) (13,5) (15,3) (21,6) ∞ (16,8) (9,5) (16,15) (1,18) (18,10)
(20,4) (20,4) (15,20) (15,3) (20,19) (21,17) (19,1) (18,10) (16,15) (21,6) (17,13) (0,0) (1,18) (11,10) (19,22) (13,5) (18,13) (17,10) (11,13) (16,8) (9,5) (1,5) ∞ (9,18) (13,18)
(20,19) (20,19) (15,3) (20,4) (15,20) (19,22) (21,6) (16,8) (18,13) (17,10) (21,17) (1,5) (0,0) (19,1) (11,13) (18,10) (13,18) (11,10) (17,13) (9,18) (16,15) ∞ (1,18) (13,5) (9,5)
(21,6) (21,6) (11,10) (19,1) (17,10) (20,19) (17,13) (16,15) (0,0) (21,17) (20,4) (16,8) (18,10) (11,13) (15,20) (9,5) (1,5) (19,22) (15,3) (18,13) (1,18) (9,18) (13,5) (13,18) ∞
(21,17) (21,17) (11,13) (17,13) (19,22) (17,10) (20,4) (0,0) (16,8) (20,19) (21,6) (18,13) (16,15) (15,3) (11,10) (1,18) (9,18) (15,20) (19,1) (1,5) (18,10) (13,18) (9,5) ∞ (13,5)
+ 𝐾𝑝𝑟𝑖 = 𝑘 = 3
- Quá trình mã hóa:
+ Chọn giá trị ngẫu nhiên 𝑟 < 𝑝, 𝑟 = 2
𝐶1 = 𝑟 × 𝑒1 = 2 × (1,5) = (0,0)
+{
𝐶2 = 𝑀 + 𝑟 × 𝑒2 = (11,10) + 2 × (1,18) = (21,6)
Bản mã 𝐶 = (𝐶1 , 𝐶2 ) = ((0,0), (21,6))
e) Thực hiện giải mã
- Quá trình giải mã:
21
+ 𝑀 = 𝐶2 − 𝑘 × 𝐶1 = (21,6) − 3(0,0) = (11,10) đúng với điểm ban đầu.
22
Phần 2: Bài thực hành
Lab05: Thực hành sử dụng Putty-OPENSSH
Mục đích:
Dùng Putty/Secure CRT tạo 02 khóa (pub key, pri key),
NSD tự định nghia ra mật khẩu riêng (passprhase)
Upload pub key lên Server (10.10.17.17) theo tài khoản NSD.
Dùng putty để dang nhập vào Server 10.10.17.17 với khóa pri key và
passphrase
Sau khi dang nhập, các giao dịch giữa hai bên sẽ được mã hóa bằng khóa
đã xây dựng
Hướng dẫn:
1. Xem nội dung file Thuc hanh Putty SSH
2. tải file putty.zip
23
1.1. Tạo Khóa
1.2. Đẩy khóa public lên server bằng cách sử dụng công cụ pscp trên Windows
C:\putty x64>dir
24
07/04/2017 08:34 PM 643.144 PSFTP.EXE
user01@192.168.1.10's password:
1.3. Đưa khóa public vào xác thực khi đăng nhập bằng ssh
Dùng putty.exe để đăng nhập vào hệ thống với tài khoản NSD
user01@VMKali:~$ ls -lF
total 48
Comment: "rsa-key-20181023"
AAAAB3NzaC1yc2EAAAABJQAAAQEAioabMsJklJDlH9L0sohRfHhko478SsWXNH2/
r+b//9UeIWr16bYz61Z0hQK/4RFFIcuOZHq8rmRmFTXJ76wEGN7fNYNbwIG2fcZy
U7E0z7fYBNUCr6Ig2wKYReaQiX/6/xahAKV1I2O5YnVMhMUZ4xvO21TbW4kBV6oz
yEiE0qoB3thr0xyWsJ9Ey7GUIQp4bJwLkXcP853cgyNsMVV39YjIABmkO6BV8xxA
GZL8nce66V5ru/hxZuywC6XVSeCEgQegy/AkYOpvrg8lBBmzhhQYdQZQWDB9Dfh1
loLdIxx3Wb5lQ642HTwzvY91tJRb7ea6hYrHhg6//evLueQFlw==
25
user01@VMKali:~$ mkdir $HOME/.ssh
total 12
ssh-rsa
AAAAB3NzaC1yc2EAAAABJQAAAQEAioabMsJklJDlH9L0sohRfHhko478SsWXNH2/r+b//9UeIWr16bYz61Z0hQ
K/4RFFIcuOZHq8rmRmFTXJ76wEGN7fNYNbwIG2fcZyU7E0z7fYBNUCr6Ig2wKYReaQiX/6/xahAKV1I2O5YnVM
hMUZ4xvO21TbW4kBV6ozyEiE0qoB3thr0xyWsJ9Ey7GUIQp4bJwLkXcP853cgyNsMVV39YjIABmkO6BV8xxAGZ
L8nce66V5ru/hxZuywC6XVSeCEgQegy/AkYOpvrg8lBBmzhhQYdQZQWDB9Dfh1loLdIxx3Wb5lQ642HTwzvY91
tJRb7ea6hYrHhg6//evLueQFlw==
user01@VMKali:~$
26
1.4. Kết quả đăng nhập thành công bằng ssh
27
Lab10: Thực hành sử dụng OpenSSL
>> Vào run, gõ lệnh: cmd để mở cửa sổ lệnh
>> Chuyển về thư mục C:\OpenSSL-Win32\bin
C:\Users\XXX>cd C:\OpenSSL-Win32\bin
Máy em lưu ở thư mục F:\Tut\Sem7\Mã hóa\bai-thuc-
hanh\ToolOpenSSL\bin>
28
----------------------------------------------------
>> Xem thông tin về phiên bản OpenSSL
29
----------------------------------------------------
>> Mã hóa tập tin baocao.doc thành baocaoXXX.doc.aes theo thuật toán mã hóa
AES 256-bit ở chế độ CBC
30
>> Giải mã tập tin mã hóa AES baocaoXXX.doc.aes thành tập tin
baocaoXXX01.doc
--------------------------------------------------------
31
>> Mã hóa file baocao.doc sử dụng thuật toán AES 256-bit, kết quả là file
baocaoXXX.doc.enc theo chuẩn mã hóa base64
>> Giải mã tập tin baocaoXXX.doc.enc đã mã hóa. Chú ý tập tin này đã được
tạo từ lệnh trên
32
>> Xem kết quả thực hiện lệnh
----------------------------------------------------
>> Mã hóa file theo thuật toán AES sử dụng mật khẩu nhập từ dòng lệnh
33
>> Mã hóa file theo thuật toán AES sử dụng mật khẩu đã lưu trong file
password.txt
----------------------------------------------------
>> Mã hóa file theo thuật toán DES
34
>> Xem kết quả thực hiện lệnh
35
>> Xem kết quả thực hiện lệnh
----------------------------------------------------
>> Mã hóa file theo thuật toán mã hóa Base64-encode
36
----------------------------------------------------
----------------------------------------------------
37
>> Tính giá trị băm MD5 cho tập tin
38
# SHA1 digest
# SHA256 digest
39
----------------------------------------------------
>> Generate a crypt-style password hash
# If you know an existing password’s “salt,” you can duplicate the hash.
40
----------------------------------------------------
>> Mã hóa theo thuật toán mã hóa công khai RSA
>> Chú ý thay XXX bằng tên của người dùng
>> Tạo khóa riêng theo thuật toán mã hóa RSA
41
>> Xem kết quả thực hiện lệnh
42
>> Xem nội dung khóa công khai trong file XXXpub.key
43
Giải mã:
44
-------------------------------------------------------------------
>> Tạo một chứng nhận từ khóa riêng NguyenDinhAnpri.key
45
>> Xem nội dung giấy chứng nhận NguyenDinhAn.crt (CRT Certificate Signing
Request)
----------------------------------------------------
46
>> Xem kết quả thực hiện lệnh
>> Từ cửa sổ Windows, chạy tập tin NguyenDinhAn.pfx để cài đặt chữ kí điện tử
vừa tạo. Xuất hiện cửa sổ Certificate Import Wizard, chọn nút Next...
47
48
49
50
51
----------------------------------------------------
52
>> Xem kết quả thực hiện lệnh
53
>> Xem kết quả thực hiện lệnh
---------------------------------------------------
>> Tạo khóa riêng có sử dụng password để bảo vệ. Mã hóa sử dụng AES 256 bits
>> Generate a public and private RSA key pair:
54
>> Xem kết quả thực hiện lệnh
55
>> Tạo khóa công khai từ tập tin XXXpri.pem
56
>> Xem nội dung khóa công khai trong tập tin XXXpub.pem
----------------------------------------------------
57
58
-------------------------------------------------
>> Sử dụng OpenSSL như một chương trình kết nối đến một Web server và hiển
thị chuỗi certificate chain.
59
60
--------------------------------------------------
>> Tạo khóa cho mã hóa Elliptic (?)
61
// openssl can provide full list of EC parameter names suitable for passing to the
-name option above:
62
63
64