Chương 2:
Mã hóa và
Các giao thức trao đổi khóa
Khoa Khoa học và Kỹ thuật Máy tính
Đại học Bách Khoa Tp.HCM
Nội dung
Mã hóa hoàn hảo
2
Những khái niệm cơ bản về mã hóa
1
Những khái niệm cơ bản về mã hóa
1
Kênh trao đổi khóa
3
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
2
Giao thức trao đổi khóa
5
Mô hình Dolev-Yao
4
Tài liệu tham khảo:
W. Mao (2003).
Modern Cryptography: Theory and Practice
, 3
rd
Ed., Prentice
Hall, ISBN 0-13-066943-1.
Những khái niệm cơ bản về mã hóa
n Văn bản gốc (plaintext) là văn bản ban đầu có nội dung có
thể đọc được và cần được bảo vệ.
n Văn bản mã hóa (ciphertext) là văn bản sau khi mã hóa, nội
dung không thể đọc được.
n Mã hóa (encryption) là quá trình chuyển văn bản gốc thành
văn
bản
mã
hóa
.
Giải
mã
(decryption)
là
quá
trình
đưa
văn
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
4
văn
bản
mã
hóa
.
Chương 2: Mã hóa và giao thức trao đổi khóa
5
Cryptosystem
confidential
…
………………
….
…………………
…………………
…
Decryption
Key
D
Những khái niệm cơ bản về mã hóa
n Hệ thống mã hóa đối xứng (Symmetric cryptosystem) là hệ
thống mã hóa sử dụng một khóa bí mật chia sẻ (shared-
secret-key) cho cả hai quá trình mã hóa và giải mã.
n Hệ thống mã hóa bất đối xứng (Asymmetric cryptosystem)
là hệ thống mã hóa sử dụng một khóa công khai (public key)
và
một
khóa
bí
mật
(private key)
cho
quá
trình
mã
hóa
D
Hello,
À¿¾«
§
¶
"xi
Encryption
K
E
Plaintext Ciphertext
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
7
Cryptosystem
Hello,
This content is
confidential
…
………………
….
À¿¾«
§
¶
"xi
5TfhiN?"
aPQ}¸´f
…………………
chuẩn
mã
hóa
vào
năm
1977.
n Mỗi thông điệp (message) được chia thành những khối (block)
64 bits
n Khóa có 56 bits
n Có thể bị tấn công bằng giải thuật vét cạn khóa (Brute-force or
exhaustive key search)
Kỹ thuật mã hóa đối xứng - Triple DES
n 1999, Triple DES được khuyến khích sử dụng thay cho DES
n Triple DES: thực hiện giải thuật DES ba lần.
n Mã hóa: c ß ε
k1
(D
k2
(ε
k1
(m)))
n Giải mã: m ß D
k1
(ε
k2
(D
k1
(c)))
n
c:
n
Rijndael
là
giải
thuật
mã
hóa
theo
khối
.
Tuy
nhiên
,
khác
với
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
10
n
Rijndael
là
giải
thuật
mã
hóa
theo
khối
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
11
n
Khóa
công
khai
được
công
bố
rộng
rãi
cho
mọi
người
và
được
dùng để mã hóa.
n Khóa bí mật dùng để giải mã.
So sánh mã hóa đối xứng và bất đối xứng
n Kỹ thuật mã hóa đối xứng có tốc độ mã hóa và giải mã
nhanh hơn so với kỹ thuật mã hóa bất đối xứng.
n Kỹ thuật mã hóa bất đối xứng an toàn hơn so với kỹ thuật
mã hóa đối xứng.
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
12
chủ
của
thông
điệp
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
14
n
Xác
thực
:
xác
định
ai
là
chủ
của
thông
điệp
n Tính toàn vẹn : kiểm tra xem thông điệp có bị thay đổi
n Tính chống thoái thác: ngăn chặn việc người dùng từ chối đã
tạo ra và gửi thông điệp
Chữ ký số
n Chữ ký số:
n Dùng khóa bí mật để ký (mã hóa) lên thông điệp à chữ ký
n Dùng khóa công khai để xác thực (giải mã) chữ ký
Trường Đại Học Bách Khoa Tp.HCM
nhận
được
văn
bản
gốc
và
văn
bản
đã
ký
n Bob dùng khóa công khai của Alice để giải mã văn bản đã ký
n Bob so sánh văn bản giải mã được và văn bản gốc, nếu giống
nhau thì đây chính là do Alice gửi, nếu sai thì đây không phải
văn bản do Alice gửi.
Chữ ký số an toàn (Secure digital signature)
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
17
Chứng thực số
n Chứng thực số (digital certificate), hoặc chứng thực khóa
công khai (public key certificate), là một tài liệu điện tử
dùng để xác minh một khóa công khai là của ai.
n Trong mô hình hạ tầng khóa công khai (public key
infrastructure), CA (Certificate Authority) là nhà cung cấp
chứng
thực
số
Kênh trao đổi khóa
3
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
20
Giao thức trao đổi khóa
5
Mô hình Dolev-Yao
4
Mã hóa hoàn hảo (Perfect encryption)
n Ký hiệu:
n M: văn bản gốc
n A: giải thuật mã hóa
n K: khóa mã hóa
n Mối quan hệ của M và M’ được biểu diễn như sau:
n M’: văn bản mã hóa
n A’: giải thuật giải mã
n K’: khóa giải mã
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
21
M’ = A(K,M) = {M}
K
M = A’(K’,M’) = A’(K’, A(K,M))
xứng
),
thì
không
có
cách
nào
có
thể
tìm
ra
được
văn
bản gốc M từ văn bản mã hóa {M}
K
Mã hóa hoàn hảo
n M’ = A(K,M) = {M}
K
n Một giải thuật mã hóa được gọi là hoàn hảo cần phải đảm
bảo các tính chất sau (tiếp theo):
n Tính chất 2: Nếu có văn bản mã hóa {M}
K
và một phần
thông tin về văn bản gốc M, thì cũng không có cách nào có
thể
tìm
ra
được
khóa
bí
khóa bí mật K’ tương ứng với K (trong mã hóa bất đối xứng)
n Tính chất 3: Nếu không có khóa K thì dù có thông tin của
văn bản gốc M cũng không thể thay đổi {M}
K
mà không bị
phát hiện trong quá trình giải mã.
Nội dung
Những khái niệm cơ bản về mã hóa
1
Kênh trao đổi khóa
3
Mã hóa hoàn hảo
2
Trường Đại Học Bách Khoa Tp.HCM
Khoa Khoa Học và Kỹ Thuật Máy Tính
© 2011
Bảo mật hệ thống thông tin
Chương 2: Mã hóa và giao thức trao đổi khóa
24
Giao thức trao đổi khóa
5
Mô hình Dolev-Yao
4
Kênh trao đổi khóa
n Giả sử Alice và Bob muốn nói chuyện một cách bí mật với
nhau thông qua kỹ thuật mã hóa đối xứng.
n Alice và Bob chưa từng thỏa thuận với nhau về một khóa bí
mật chung.
n Kênh trao đổi khóa là nơi/cách thức/kỹ thuật mà Alice dùng
để
Bob
K