Tải bản đầy đủ (.pptx) (25 trang)

slide tìm hiểu về mật mã hóa

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (724.02 KB, 25 trang )

LOGO
Kỹ thuật truyền số liệu
Mật mã hóa
Nhóm sinh viên lớp Đ6-ĐTVT2
Contents
TỔNG QUAN MẬT MÃ HÓA
I
MỘT SỐ CÁCH TẠO MẬT MÃ
II

TỔNG QUAN

ỨNG DỤNG

MÔ HÌNH TRUYỀN TIN MẬT CƠ BẢN

MÃ CAESAR

MÃ ĐA MẪU TỰ

MÃ CHUYỂN VỊ

MÃ DES
2
I.TỔNG QUAN MẬT MÃ HÓA
1. Tổng quan

Mật mã là một lĩnh vực khoa học chuyên nghiên cứu về các phương pháp và kỹ thuật đảm bảo an toàn và bảo mật
trong truyền tin liên lạc với giả thiết sự tồn tại của các thế lực thù địch, những kẻ muốn ăn cắp thông tin để lợi dụng và
phá hoại.


Mật mã (cryptology) thường được quan niệm như sự kết hợp của 2 lĩnh vực con:

Sinh, chế mã mật (cryptography): nghiên cứu các kỹ thuật toán học nhằm cung cấp các công cụ hay dịch vụ đảm
bảo an toàn thông tin

Phá giải mã (cryptanalysis): nghiên cứu các kỹ thuật toán học phục vụ phân tích phá mật mã và/hoặc tạo ra các
đoạn mã giản nhằm đánh lừa bên nhận tin.
3
I.TỔNG QUAN MẬT MÃ HÓA
2. Ứng dụng

Mật mã có các ứng dụng như sau:


Với chính phủ: bảo vệ truyền tin mật trong quân sự và ngoại giao, bảo vệ thông tin các lĩnh vực tầm cỡ lợi
ích quốc gia.

Trong các hoạt động kinh tế: bảo vệ các thông tin nhạy cảm trong giao dịch như hồ sơ pháp lý hay y tế,
các giao dịch tài chính hay các đánh giá tín dụng …

Với các cá nhân: bảo vệ các thông tin nhạy cảm, riêng tư trong liên lạc với thế giới qua các giao dịch sử
dụng máy tính và/hoặc kết nối mạng.
4
I.TỔNG QUAN MẬT MÃ HÓA
3. Mô hình truyền tin mật cơ bản
5
II. MỘT SỐ CÁCH TẠO MẬT MÃ
1. Mã CAESAR

Trong mật mã học, mật mã Caesar, còn gọi là mật mã dịch chuyển, là một trong những mật mã đơn giản và được biết đến

nhiều nhất.

Đây là một dạng của mật mã thay thế.

Nơi nhận sẽ giải mã bằng cách trừ 1 cho các mã nhận được trước khi tra bảng mã ASCII.

Thường được kết hợp với một mã phức tạp hơn, ví dụ như mật mã Vigenère, và hiện nay vẫn được dùng trong các ứng dụng
hiên đại như mã ROT13.

Vì giải thuật tạo mã quá đơn giản nên bản tin có thể được giải mã một cách dễ dàng mà không cần biết trước khóa.
6
II. MỘT SỐ CÁCH TẠO MẬT MÃ
1. Mã CAESAR
Ví dụ: bước dịch chuyển là 3:
Ta thu được chuỗi:
WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ
THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
Với dòng dữ liệu cần mã hóa:
Với dòng dữ liệu cần mã hóa:
Với dòng dữ liệu cần mã hóa:
7
Plain : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Cipher: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
II. MỘT SỐ CÁCH TẠO MẬT MÃ
1. Mã CAESAR
Một phương pháp khác để tạo mã mẫu tự đơn có tên là Polybius square.
Mẫu tự I và J được kết hợp lại và được xử lý như một từ đơn, để tổng số mẫu tự là 25. 25 mẫu tự lại được chia
thành dãy 5x5. Mỗi mẫu tự sẽ được mã bởi một cặp số tương ứng với hàng và cột trong bảng mã.
Polybius square
8

II. MỘT SỐ CÁCH TẠO MẬT MÃ
1. Mã CAESAR
Bảng mã Polybius square
Ví dụ trước: THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
Mã Polybius square là: 44325114544231522124432533 414322
9
II. MỘT SỐ CÁCH TẠO MẬT MÃ
2. Mã đa mẫu tự

Mục đích: Để tránh việc lặp lại các ký tự trong bản mật mã.

Mỗi ký tự cũng được thay bởi một ký tự khác, nhưng các ký tự giống nhau không phải được thay
bằng một ký tự duy nhất, mà sẽ được thay bằng các ký tự khác nhau tùy theo vị trí của nó.

Thí dụ của mã đa mẫu tự là mã Vigenère
10
II. MỘT SỐ CÁCH TẠO MẬT MÃ
2. Mã đa mẫu tự

Mã Vigenère

Mã hóa văn bản bằng cách xen kẽ một số phép mã hóa Caesar khác nhau dựa trên các chữ cái của một từ
khóa. Nó là một dạng đơn giản của mật mã thay thế dùng nhiều bảng chữ cái.

Kết hợp xen kẽ vài phép mã hóa Caesar với các bước dịch khác nhau.

Để mã hóa, ta dùng một hình vuông Vigenère (trang sau). Trong quá trình mã hóa, tùy theo từ khóa mà mỗi
thời điểm ta dùng một dòng khác nhau để mã hóa văn bản.
11
II. MỘT SỐ CÁCH TẠO MẬT MÃ

2. Mã đa mẫu tự
Bảng Vigenère
12
II. MỘT SỐ CÁCH TẠO MẬT MÃ
2. Mã đa mẫu tự

Khóa: Dãy m số nguyên:
K = (K[0], K[1], …, K[m-1])

Mật hóa:
Mật hóa từng ký tự của bản rõ
Ký tự thứ i của bản rõ (p[i]) được mã hóa thành:
C[i] = (p[i] + k[i mod m] ) mod 26

Thí dụ: Dùng mảng ở trên để thay các chữ THE trong bản
tin ở các vị trí 25, 54 và 104. Ta lập bảng thay thế như sau:
Các ký tự THE ở các vị trí khác nhau trong bản tin đã lần lượt
được thay bởi SHF, VKI và TIG.
Ký tự cần thay Vị trí i i mod 26 Vị trí j Ký tự phải thay
T 25 25 19 S (h25, kt19)
H 26 0 7 H (h0, kt7)
E 27 1 4 F
T 54 2 19 V
H 55 3 7 K
E 56 4 4 I
T 104 0 19 T
H 105 1 7 I
E 106 2 4 G
13
II. MỘT SỐ CÁCH TẠO MẬT MÃ

2. Mã đa mẫu tự

Ý tưởng của phương pháp giải mã Vigenere gồm 3 bước như sau:

Đi tìm chu kỳ p (độ dài khoá)

Chia tách MÃ thành p đoạn phân mã, mỗi đoạn bao gồm các chữ ở vị trí kp+i (k=1,2,3 ; i=0,p-1), tức là được mã hoá theo bảng thế với
chữ khoá chỉ số i.

Dùng phương pháp một bảng thế đã biết để giải từng đoạn phân mã (cụ thể là
với mã Vigenere chỉ cần một phép dịch đúng).
Người ta sử dụng khái niệm IC (Index of Coincidence) để tính chu kỳ p.
Theo định nghĩa, IC xác định qua công thức:
IC =
Trong đó f là xác xuất của phép thử - nhặt ra 2 con chữ ngẫu nhiên bất kỳ từ trong một đoạn văn bản -
để thu được cùng một chữ cho trước.

14
II. MỘT SỐ CÁCH TẠO MẬT MÃ
3. Mã chuyển vị

Người ta sắp xếp lại thứ tự các ký tự của bản văn bằng cách lưu chúng trong một mảng 2 chiều, m cột, m ký tự đầu tiên
sẽ cho vào hàng thứ nhất, m ký tự kế tiếp cho vào hàng thứ hai, và cứ thế tiếp tục cho hết bản tin.

Hoán đổi vị trí các cột theo thứ tự mới, giả sử pb p
2
. . . p
m
. Sự hoán đổi có thể thực hiện một cách ngẫu nhiên hoặc theo
một qui luật định trước. Bản tin sẽ được truyền đi theo thứ tự từ p^ p

2
. . . đến p
m
.

Thí dụ bản tin cần phát:
Thực hiện mã:
MISS PIGGY KERMIT ANIMAL AND FOZZIE BEAR
15
II. MỘT SỐ CÁCH TẠO MẬT MÃ
3. Mã chuyển vị
Giả sử dùng mảng 5 cột 1 2 3 4 5
1 2 3 4 5
M I S S
P
I G G Y
K E R M
I T A N
I M A L
A N D F
O Z Z I E
B E A R
16
II. MỘT SỐ CÁCH TẠO MẬT MÃ
3. Mã chuyển vị

Sắp xếp lại các cột theo thứ tự 2, 4, 3, 1, 5, ta được bản tin:
IIKTMNZBSGRAL IASGE ADZEMP IIAO (2 khoảng trống) YMN FER

Để tăng tính bảo mật có thể chuyển vị nhiều lần.


Rõ ràng là bản tin đã mã hóa không còn một dáng dấp nào của bản tin ban đầu.

Nhưng phương pháp vẫn còn khuyết điểm là sự lặp lại của các ký tự. Nếu kẻ gian xác định được mật mã đã
dùng là loại chuyển vị thì khả năng giải được mã không khó lắm.
17
II. MỘT SỐ CÁCH TẠO MẬT MÃ
4. Mã DES

Mã DES được phát triển bởi IBM vào những năm đầu thập niên 70.

DES chia bản tin ra thành từng khối 64 bit và dùng khóa 56 bit để thực hiện quá trình tạo mã rất phức tạp
bao gồm các kỹ thuật như chuyển vị, thay thế, toán tử EX-OR và vài xử lý khác để tạo nên một bản mã 64
bit.
Giới thiệu
18
II. MỘT SỐ CÁCH TẠO MẬT MÃ
4. Mã DES
Thuật toán của DES:

Với bản rõ cho trước x, một xâu bit x
0
sẽ được xây dựng bằng cách hoán vị các bit của x theo phép hoán vị cố định ban đầu IP. Ta viết
x
0
=IP(x)=L
0
R
0
, trong đó L

0
gồm 32 bít đầu và R
0
là 32 bit cuối.

Sau đó tính toán 16 lần lặp theo một hàm xác định. Ta sẽ tính L
i
R
i
1 <= I <= 16 theo quy tắc sau: L
i
=R
i-1
;R
i
=L
i-1
xor f(R
i-`1
,k
i
)
Trong đó: xor là phép loại trừ hai xâu bit.
F là một hàm sẽ được mô tả ở sau
K
1
k
2
…k
16

là các xâu bit có độ dài 48 được tính như 1 hàm của khóa k.
19
II. MỘT SỐ CÁCH TẠO MẬT MÃ
4. Mã DES
Một vòng của phép mã hóa được mô tả như sau

Áp dụng phép hoán vị ngược IP
-1
cho xâu bit R16L16 ta thu được bản mã y. Tức là y=IP
-1
(R16L16).
20
II. MỘT SỐ CÁCH TẠO MẬT MÃ
4. Mã DES
Mô tả hàm f:

Xâu bit A có độ dài 32

Xâu bit J có độ dài 48

Hàm f có 2 biến vào:

Đầu ra của f là xâu bit có độ dài 32.

Các bước thực hiện:

Biến thứ nhất A được mở rộng thành một xâu bit độ dài 48 theo một hàm mở rộng cố định E. E(A) gồm
32 bit của A (được hoán vị theo cách cố định) với 16 bit xuất hiện hai lần.

Tính E(A) xor J và viết kết quả thành một chuỗi 8 xâu 6 bit là

B
1
B
2
B3B4B5B6B7B8
21
II. MỘT SỐ CÁCH TẠO MẬT MÃ
4. Mã DES

Bước tiếp theo dùng 8 bảng S
1
S
2
….S
8
(được gọi là hộp S) với mỗi S
i
là một bảng 4x16 cố định có các hàng là các số nguyên từ 0 đến
15. Với xâu bit có độ dài 6 (ki hiệu B
i
=b
1
b
2
b3b4b5b6), ta tính S
j
(B
j
) như sau:
o

Hai bit b
1
b
6
xác định biểu diễn nhị phân hàng r của S
j
(0=<r=<3)
o
4 bit (b2b3b4b5) xác định biểu diễn nhị phân của cột c của S
j
(0=<c=<15)
o
Khi đó S
j
(B
j
) sẽ xác định phần tử S
j
(r,c); phần tử này viết dưới dạng nhị phân là một xâu bit có độ dài 4.
o
Bằng cách tương tự tính các C
j
=Sj(bj) ,(1=<j=<8)

Xâu bit C=C1C2…C8 có độ dài 32 được hoán vị theo phép hoán vị cố định P. Xâu kết quả là P(C) được xác định là f(A,J).
22
II. MỘT SỐ CÁCH TẠO MẬT MÃ
4. Mã DES
A
J

E
E(A)
+
B1 B2 B3 B4 B5 B6 B7 B8
S1 S2 S3 S4 S5 S6 S7 S8
C1 C2 C3 C4 C5 C6 C7 C8
+
F(A,J)
23
II. MỘT SỐ CÁCH TẠO MẬT MÃ
4. Mã DES
Phép hoán vị ban đầu IP
Bảng hoán vị IP
-1
24
LOGO
Thank You !

×