Chương 3 : BẢO MẬT THÔNG
TIN BẰNG MÃ HOÁ
Giảng viên : Nguyễn Minh Thành
E-mail : [email protected]
Mục Lục
Tổng quan về mã hoá
II. Bảo vệ dữ liệu bằng phương pháp mã hoá
III. Một số phương pháp mã hoá cổ điển
I.
1.
2.
3.
4.
5.
Mã hoá Ceasar
Mã hoá Viignere
Mã hóa Trithemius
Mã hóa Belasco
Kỹ thuật chuyển vị
IV. Vai trò và các ứng dụng của mật mã trong thời đại
hiện nay
2
I. Tổng quan về mã hoá
Mã hóa (Cryptography) là biến đổi dữ liệu thành một dạng
không thể đọc được bình thường, cần có chìa khóa (key) và
phương pháp mã hóa để có thể giải được mã.
Việc mã hóa đảm bảo
Tính bí mật (Confidentiality)
Tính toàn vẹn (Integrity)
Tính cá nhân (Privacy)
3
I. Tổng quan về mã hoá (tt)
Một hệ mã hoá (cryptosystem) phải bao gồm 5 thành phần
(E, D, M, K, C) trong đó :
4
M là tập các bản rõ (plaintext)
C là tập các bản mã (ciphertexts) tương ứng
K là tập các khoá dùng để mã hoá
E là tập các hàm (phương thức) mã hoá
D là tập các hàm (phương thức) giải mã
I. Tổng quan về mã hoá (tt)
Khi bảo về dữ liệu bằng mã hoá, người ta giả định rằng
Giải thuật mã hoá và giả mã có thể được biết
Bản mã có thể được biết (bị đọc trộm)
Nhưng khoá và bản rõ sẽ được giữ bí mật
Các tấn công có thể có :
Tấn công vào bản mã để tìm bản rõ.
Tấn công vào bản rõ và bản mã để tìm khoá.
Một hệ mã hoá hoàn hảo là phải chống được các tấn
5
công trên.
II. Các Nguyên Tắc Cơ Bản Trong
Bảo Mật Dữ Liệu
Nguyên tắc cơ bản cho việc bảo mật dữ liệu chính: chi phí
và thời gian.
Alice cần thông tin quan trọng cần truyền cho Bob; Malice
là đối thủ cạnh tranh cần biết được nội dung của thông tin
giữa Alice và Bob. Malice tìm cách lấy thông tin trong lúc
A đang truyền cho B. Nếu A và B không có phương pháp
bảo vệ thông tin thì M sẽ lấy được. Nếu A và B có phương
pháp bảo mật thì cho dù M có lấy được thông tin cũng
6
không biết được nội dung.
II. Các Nguyên Tắc Cơ Bản Trong
Bảo Mật Dữ Liệu (tt)
Khi A và B trao đổi thông tin thực hiện phương pháp bảo
mật và M vẫn là người muốn có được thông tin. Bằng cách
nào đó M đã thu được những gì mà A và B đã trao đổi và
tiến hành giải mã. Lúc này giá trị của thuật toán mới thấy
được thông qua chi phí và thời gian để thực hiện giải mã.
7
II. Các Nguyên Tắc Cơ Bản Trong
Bảo Mật Dữ Liệu (tt)
Nếu trị thông tin: 5 mà chi phí thực hiện bẻ khóa: 10 thì
việc bảo mật có thể được xem là đạt yêu cầu.
Thời gian bỏ ra để thực hiện việc giải mã. Trong thông tin
A hẹn B là sẽ thực hiện kế hoạch sau khi nhận được thông
tin là 1 ngày, trong khi đó thì M phải tốn 2 ngày mới có thể
giải mã xong.
8
III. Bảo Vệ Dữ Liệu Bằng Mã Hoá Mã
Hoá
9
Sơ đồ một hệ thống mã hoá đơn giản
III. Bảo Vệ Dữ Liệu Bằng Mã Hoá Mã
Hoá (tt)
Sau đó văn bản mã hóa được truyền trên đường truyền. Ở
đầu thu, văn bản mã hóa được biến đổi ngược lại nhờ thuật
toán giải mã với các giá trị của từ khóa đã được sử dụng
trong thuật toán mã hoá.
Có nhiều phương pháp mã hóa khác nhau: đối xứng, bất đối
xứng,.. (sẽ được học ở chương 3).
10
IV. Một Số Phương Pháp Mã Hoá Cổ
Điển
Trước khi máy tính ra đời, người ta đã có những thuật
toán mã hoá.
Nhữg thuật toán này đơn giản, thường là thuật tóan
dựa trên ký tự, những thuật toán này khác nhau ở chỗ
thay đổi (substitution) ký tự này bằng ký tự khác hay
hoán vị (transposition) ký tự này với ký tự khác.
Thuật toán tốt hơn có thể chứa cả hai loại trên.
11
IV.1 Mã Hoá Ceasar
Mô tả: Julius Ceasar phát hiện ra bộ mã này, bộ mã hóa đầu
tiên sử dụng kỹ thuật thay thế đơn giản, xuất hiện cách đây
khoảng 2000 năm. Mã Ceasar mã hóa văn bản gốc bằng
cách thay thế mỗi ký tự trong văn bản gốc bằng ký tự đứng
liền thứ 3 sau nó trong mẫu tự alphabet.
Mẫu tự Alphabet:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
12
IV.1 Mã Hoá Ceasar
Ví dụ:
13
Văn bản gốc: ‘Hello word’
Văn bản mã hóa: ‘Khoor zrug’
IV.1 Mã Hoá Ceasar
Nếu ta định nghĩa có tính toán học thì thuật toán mã hóa có
thể biểu diễn như sau:
C= E(p)=(p+3)mod(26)
14
Trong đó:
C: ký tự được mã hóa
E(p): hàm của thuật toán mã hóa
p: ký tự gốc(p=0..25)
IV.1 Mã Hoá Ceasar
Phương trình mô tả thuật toán giải mã:
C= E(p)=(p-3)mod(26)
Phương trình tổng quát:
C= E(p)=(p+k)mod(26)
Phương trình mô tả thuật toán giải mã:
D= D(c)=(c-k)mod(26)
Trong đó: k là khóa bí mật
15
IV.2 Mã Hoá Vigenère
Mô tả: Thuật toán này dựa trên ý tưởng của Ceasar
được nhà mật mã học người Pháp (Blaise de Vigenère)
đưa ra, thay vì mỗi chữ cái sẽ được dịch đi 3 vị trí như
trong mã Ceasar thì ở đây việc dịch chuyển của các
chữ cái được điều khiển bởi một khóa và chữ cái trong
văn bản gốc. Số thứ tự của chữ cái mã bằng tổng số
thứ tự của chữ cái trong khóa và chữ cái trong văn bản
gốc.
16
IV.2 Mã Hoá Vigenère
Ví dụ: Với khóa ABC thì quá trình mã hóa như sau
17
IV.3 Mã Hoá Trithemius
Mô tả: Kỹ thuật này được mã bằng cách dùng một
bảng 26 chữ cái như sau: chữ cái đầu tiên của thông
điệp gốc được mã hóa bằng hàng thứ nhất, chữ cái thứ
hai được mã hóa thành hàng thứ hai.. và điều này được
lặp vòng.
18
IV.3 Mã Hoá Trithemius
19
IV.3 Mã Hoá Trithemius
Ví dụ:
20
Thông điệp gốc là HAPPY
Sẽ được mã hóa thành HBRSC.