04.10.2019
1
Nội dung khóa học
2
Tổng quan về các thuật
tốn mật mã
3
Một số vấn đề khác trong
mật mã
4
Bài tập lớn, tiểu luận
MẬT MÃ ƯD TRONG ATTT
Bài 01: Nhắc lại kiến thức tổng quan về
mật mã
Nội dung khóa học
1
Nội dung khóa học
2
Tổng quan về các thuật
toán mật mã
3
Một số vấn đề khác trong
mật mã
4
Bài tập lớn, tiểu luận
Nội dung
Tài liệu tham khảo
Cơ sở lý thuyết mật mã (Hv KTMM), 2013
Mật mã ứng dụng trong ATTT (Hv KTMM), 2013
St Denis, Tom. Cryptography for developers. Elsevier,
2006.
Applied Cryptography (Bruce Schneier)
Handbook of Applied Cryptography (Menezes et al.)
Cryptography Engineering (Bruce Schneier)
D. Boneh and Victor Shoup. A Graduate Course in
Applied Cryptography, 2015.
Saiful Azad, Al-Sakib Khan Pathan. Practical
Cryptography: Algorithms and Implementations Using
C++, 2015.
4
1
Nội dung khóa học
2
Tổng quan về các thuật
tốn mật mã
3
Một số vấn đề khác trong
mật mã
4
Bài tập lớn, tiểu luận
Thuật toán mật mã
Phân loại
Mật mã đối
xứng
Mật mã bất đối
xứng
Hàm băm
Chữ kí số
Mã dịng
Mã khối
Hàm băm khơng
khóa
Hàm băm có có
khóa
6
1
04.10.2019
Mật mã ñối xứng
Mật mã ñối xứng
ܿ = ܧ (m)
m
ciphertext
E
m
ܦ (c) = m
D
plaintext
Thám mã
݇
Khóa mã hóa
DES, 3DES
IDEA
AES
RC2,
RC4
SEAL
Truyền
tin
݇ௗ
Mã
hóa
m = D(K, c)
Giải
mã
Nhận
tin
Khóa giải mã
thơng thường ݇ = ݇ௗ
KDC
(Key Distribution Center)
7
Mật mã đối xứng
m
Truyền
tin
c = E(K,m)
c = E(K,m)
Mã
hóa
8
Tính chất của mật mã đối xứng
Biết được khóa mã hóa sẽ dễ dàng suy ra khóa
giải mã (Thơng thường: Khóa mã hóa và khóa
giải mã là như nhau), khóa được chia sẻ và giữ bí
mật bởi hai bên.
m = D(K, c)
Giải
mã
Nhận
tin
Với khóa K định trước thì quan hệ giữa bản rõ m
và bản mã c là một tương ứng 1:1
Số lượng khóa trong hệ thống n người dùng là
n(n-1)/2
Sinh
khóa
Nói chung, khó chứng minh được độ an tồn về
mặt lý thuyết
An tồn thực tế
9
Các phép tốn thường đơn giản nên cho tốc độ
10
cao
Ứng dụng của mật mã khóa đối xứng
Mật mã khóa cơng khai
Ứng dụng của
mật mã khóa
đối xứng
ܿ = ܧ (m)
m
E
ciphertext
D
plaintext
Mã hóa dữ liệu khi lưu trữ
݇
Khóa mã hóa (cơng khai)
Mã hóa dữ liệu trên đường truyền
Kẻ tấn cơng
ܦ (c) = m
݇ௗ
Khóa giải mã (bí mật)
Xác thực
Sử dụng như hàm băm có khóa
RSA
El-Gamal; DSA
ECDH, ECDSA
11
12
2
04.10.2019
Mật mã khóa cơng khai
m
Truyền
tin
c = E(Ke,m)
Mã
hóa
Mật mã khóa cơng khai
m = D(Kd, c)
Giải
mã
m
Nhận
tin
c = E(Ke,m)
Truyền
tin
Mã
hóa
m = D(Kd, c)
Giải
mã
Nhận
tin
Ke
Ke
Sinh cặp
khóa
Public Key Distribution Center
13
Tính chất của mã hóa khóa cơng khai
14
Ứng dụng của mật mã khóa cơng khai
Khóa mã hóa và khóa giải mã là khác nhau.
Ứng dụng của
mật mã khóa
cơng khai
Mỗi bên có khóa bí mật của riêng mình và khóa
cơng khai tương ứng (Kd, Ke).
Từ khóa cơng khai khơng thể tìm ra khóa bí mật
Vận chuyển khóa(truyền khóa)
Thiết lập khóa
Dữ liệu được mã hóa bằng khóa cơng khai, giải
mã bằng khóa bí mật
Kiểm tra tính tồn vẹn dữ
liệu
Mọi người đều có thể mã hóa nhưng chỉ một
người có thể giải mã, chính người mã hóa cũng
khơng thể giải mã
Chữ kí số
Thường tính tốn trên số lớn nên cho tốc độ thực
thi thấp
15
So sánh mật mã ñối xứng và mật mã khóa cơng khai
Mật mã đối
xứng
Thỏa thuận khóa
Xác thực nguồn gốc dữ liệu,
xác thực người dùng
Chống chối bỏ
16
So sánh mật mã đối xứng và mật mã khóa cơng khai
Mật mã khóa
cơng khai
Các bên CẦN thỏa
thuận trước khóa bí
mật cần dùng; số
lượng khóa lớn
Các bên KHƠNG
CẦN thỏa thuận
trước về khóa; số
lượng khóa nhỏ
tốn với bít, byte
nên tốc độ CAO
có thể xử lý
lượng LỚN dữ
liệu
với số rất lớn nên
tốc độ THẤP chỉ
phù hợp với lượng
NHỎ dữ liệu
Loại nào an toàn
hơn? Thực hiện tính tốn
Gồm các phép
17
Sử dụng mật mã đối xứng
hay
mật mã khóa cơng khai?
18
3
04.10.2019
Sử dụng mật mã đối xứng và mật mã khóa cơng khai
Hàm băm
Bộ sinh số
ngẫu nhiên
K
Bản rõ M
SE
KPB
Gửi cho B
AE
Khóa đ/x
MD4
MD5
SHA1
SHA224
SHA256
SHA512
Bản mã
Dữ liệu có độ
dài bất kì
H
Bản tóm lược có
độ dài định trước
19
Tính chất của hàm băm
20
Ứng dụng của hàm băm
Ứng dụng của
hàm băm
Nén
quan hệ giữa thông điệp và bản tóm
lược khơng phải là tương ứng 1:1
Kháng tiền ảnh: từ H(x) khơng thể tìm được x
Kháng tiền ảnh thứ hai: cho trước x, khơng thể
tìm được x' sao cho H(x) = H(x')
Kháng va chạm: khơng thể tìm được cặp (x, y)
sao cho H(x) = H(y)
Kiểm tra tính tồn vẹn dữ liệu
Xác thực nguồn gốc dữ liệu
Sử dụng trong các lược đồ xác
thực người dùng
21
Chữ kí số
22
Chữ kí số
Chữ kí viết tay
• Đặc trưng cho người kí, mỗi người
có một chữ kí đặc trưng, khơng thể
được tạo ra bởi người khác
• Chữ kí gắn liền với một văn bản,
khơng thể tách rời văn bản, thường
giống nhau trên nhiều văn bản.
• Mọi người đều có khả năng kiểm
tra chữ kí của một người bất kì
23
Chữ kí số
•Là thơng điệp dữ liệu (dãy
bít)
•Có các tính chất của chữ kí
viết tay
24
4
04.10.2019
Chữ kí số
Chữ ký số
Chữ kí số
Ks
ứng dụng mật mã khóa cơng khai
h = H(m)
Băm
m’ = D(Kp, s)
Giải
mã
m
Lưu lượng tăng gấp đơi
Lấy đại diện của m
Kích thước của m thường vượt
q khả năng tính tốn hiện nay
26
Chữ kí số
Kp
Mã
hóa
Giải
mã
s = E(Ks, h)
h’ = D(Kp, s)
Băm
So sánh
Ks
m
s = E(Ks, m)
Mã
hóa
25
Chữ ký số
m
m
So sánh
• Đặc trưng cho người kí
phụ thuộc vào
yếu tố bí mật của riêng người kí
• Là phần tách rời với văn bản, hai văn bản khác
nhau thì có chữ kí số khác nhau
chữ kí phụ
thuộc vào chính văn bản
• Người bất kì có thể kiểm tra có một đại
lượng cơng khai tương ứng với yếu tố bí
mật
Kp
h = H(m)
27
Một số ứng dụng thực tế của mật mã
28
Vai trò của mật mã trong ATTT
Đảm bảo tính bí mật
Vai trị của mật mã
trong ATTT
Đảm bảo tính tồn vẹn
Đảm bảo tính xác thực
Đảm bảo tính chống chối bỏ
29
30
5
04.10.2019
Một số ứng dụng thực tế của mật mã
Một số ứng dụng thực tế của mật mã
Mã hóa file, ổ đĩa
• Office, PDF, Archive...
• NTFS
• BitLocker, TrueCrypt,...
Mã hóa dữ liệu trên đường truyền
Bạn biết ứng dụng
nào nữa?
• VPN, IPsec, SSL/TLS, SSH...
• S/MIME
Chứng thực điện tử
• Xác thực người dùng bằng eToken
• Chữ kí số: Khai báo thuế qua mạng, Code Signing, Chống chối
bỏ trong các hệ thống quản lý công việc điện tử
...............
• ............
31
32
Một số vấn đề khác trong mật mã
1
Nội dung khóa học
2
Tổng quan về các thuật
tốn mật mã
3
Một số vấn đề khác
trong mật mã
4
Bài tập lớn, tiểu luận
1
Nội dung khóa học
2
Tổng quan về các thuật
tốn mật mã
3
Một số vấn đề khác trong
mật mã
4
Bài tập lớn
• Thiết kế các hệ mật an tồn
• Các phương pháp thám mã
• Cài đặt các hệ mật an toàn
–
–
–
–
Cài đặt hiệu quả bằng phần mềm
Cài đặt hiệu quả bằng phần cứng
Lược đồ mật mã chống lại tấn cơng lên thuật tốn
Lược đồ mật mã chống lại tấn cơng kênh kề
• Sinh khóa tốt
– Sinh số ngẫu nhiên
– Sinh số giả ngẫu nhiên
– Sinh số ngun tố
•
•
•
•
Trao đổi khóa an tồn
Nghiệp vụ mật mã
Ứng dụng mật mã
Luật pháp, chính sách, tiêu chuẩn về mật mã
34
6