Tải bản đầy đủ (.ppt) (55 trang)

Chương 2 " Mật mã đối xứng" doc

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 (2.53 MB, 55 trang )


Mật mã đối xứng
Information security, PTITHCM, 2012
Tổng quan về mật mã học
Cryptology
Cryptography Cryptanalysis
Symmetric Asymmetric
Block ciphers Stream ciphers
Information security, PTITHCM, 2012
Lịch sử phát triển

Mật mã cổ điển (2000 BC)

Mật mã đối xứng (trước 1976)

Mật mã bất đối xứng (sau 1976)

Cá hệ thống ghép
Information security, PTITHCM, 2012
Mật mã quy ước
Hackers
Information security, PTITHCM, 2012
Phương trình mật mã

Ký hiệu:

P: thông tin gốc (plaintext)

C: thông tin mật (ciphertext)

K: khóa (key)



Quá trình mã hóa:

C = E(P, K)

Quá trình giải mã:

P = D(C, K)
Information security, PTITHCM, 2012
Đặc trưng của hệ thống mã

Phương pháp mã:

Thay thế (substitution)

Chuyển vị (transposition).

Số khóa:

Đối xứng (một khóa)

Bất đối xứng (hai khóa)

Cách xử lý thông tin gốc:

Xử lý theo khối (block cipher)

Xử lý theo dòng (stream cipher)
Information security, PTITHCM, 2012
Kỹ thuật bẻ khóa


Phân tích mã (Cryptanalysis)

Tìm những điểm yếu của thuật toán mã để khai thác

Dò khóa (brute-force)

Thử khóa tuần tự

Nếu tổng số khóa có thể có là n, số khóa trung bình
phải thử để dò được khóa đúng là n/2.
Information security, PTITHCM, 2012
Thời gian thực hiện dò khóa
Information security, PTITHCM, 2012
Các kiểu tấn công mật mã

Ciphertext only:

C → P

Known plaintext:

C + nhiều cặp (P-C) → P

Chosen plaintext:

C + nhiều cặp (P-C) chọn trước → P

Chosen ciphertext:


C + nhiều cặp (C-P) chọn trước → P

Chosen text:

C + nhiều cặp (P-C) và (C-P) chọn trước → P
Information security, PTITHCM, 2012
Mã hóa cổ điển

Thay thế (substitution): thay thế 1 đơn vị mã
(từ, ký tự, bit, …) bởi 1 đơn vị mã khác

Caesar Cipher:

plaintext: meet me after the toga party

ciphertext: phhw ph diwhu wkh wrjd sduwb

Key:
Information security, PTITHCM, 2012
Mã hóa cổ điển

Thay thế (substitution): tổng quát
C = E(P, k) = (P + k) mod 26
P = D(C, k) = (C - k) mod 26
Plaintext = “Go to the canteen after class”, k =5
Ciphertext = ???
Information security, PTITHCM, 2012
Mã hóa cổ điển

Thay thế (substitution):


Monoalphabetic cipher: tương tự Ceasar,
với:

Key: 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

=> : hoán vị ngẫu nhiên của 26 ký tự

26! khóa (≈ 4*10
26
khóa)
VD: Plaintext = “Hello”

Key = z b c d y f g r i j k t m n u p q l s e o v w
x h a

Ciphertext = ???
Information security, PTITHCM, 2012
Mã hóa cổ điển

Thay thế (substitution): hạn chế

Dựa vào tần suất xuất hiện ký tự để dò khóa
Information security, PTITHCM, 2012
Mã hóa cổ điển

Thay thế (substitution): Các thuật
toán thay thế khác:


Playfair Cipher

Hill Cipher

Vigenère Cipher

Vernam Cipher

One-Time Pad


Information security, PTITHCM, 2012
Mã hóa cổ điển

Chuyển vị (transposition):

Plaintext: attackpostponeduntiltwoamxyz

Thực hiện chuyển vị: ghi vào theo dòng, đọc ra theo
cột sau khi hoán vị cột
Ciphertext:
TTNAAPTMTSUOAODWCOIXKNLYPETZ
Information security, PTITHCM, 2012
One-time Pad

Mã hóa với khóa chỉ dùng một lần

Khóa dài bằng thông tin gốc và được
sinh ra ngẫu nhiên
Information security, PTITHCM, 2012

One-time Pad: Ví dụ
e=000 h=001 i=010 k=011 l=100 r=101 s=110 t=111
h e i l h i t l e r
001 000 010 100 001 010 111 100 000 101
111 101 110 101 111 100 000 101 110 000
110 101 100 001 110 110 111 001 110 101
s r l h s s t h s r
Mã hóa: Plaintext ⊕ Key = Ciphertext
Plaintext:
Key:
Ciphertext:
Tập 8 ký tự được mã hóa dùng 3 bit nhị phân
Information security, PTITHCM, 2012
One-time Pad: Ví dụ
e=000 h=001 i=010 k=011 l=100 r=101 s=110 t=111
s r l h s s t h s r
110 101 100 001 110 110 111 001 110 101
111 101 110 101 111 100 000 101 110 000
001 000 010 100 001 010 111 100 000 101
h e i l h i t l e r
Gi i mã:ả Ciphertext ⊕ Key = Plaintext
Ciphertext:
Key:
Plaintext:
Information security, PTITHCM, 2012
One-time Pad: Ví dụ
e=000 h=001 i=010 k=011 l=100 r=101 s=110 t=111
s r l h s s t h s r
110 101 100 001 110 110 111 001 110 101
101 111 000 101 111 100 000 101 110 000

011 010 100 100 001 010 111 100 000 101
k i l l h i t l e r
Ciphertext:
“key”:
“Plaintext”:
Nhi u khóa khác nhau cho ra nhi u k t qu ề ề ế ả
“đúng” khác nhau
Information security, PTITHCM, 2012
One-time Pad: Ví dụ
e=000 h=001 i=010 k=011 l=100 r=101 s=110 t=111
s r l h s s t h s r
110 101 100 001 110 110 111 001 110 101
111 101 000 011 101 110 001 011 101 101
001 000 100 010 011 000 110 010 011 000
h e l i k e s i k e
Ciphertext:
“Key”:
“Plaintext”:
Nhiều khóa khác nhau cho ra nhiều kết quả
“đúng” khác nhau
Information security, PTITHCM, 2012
Mã hóa cổ điển

Steganography: Giấu thông tin vào một
message khác
Hidden message:
Your package ready
Friday 21
st
room

three. Please destroy
this immediately
Information security, PTITHCM, 2012
Mã hóa cổ điển

Steganography:
Cách biến đổi: Xóa tất cả các bit của từng điểm ảnh, chỉ chừa
lại 2 bit có trọng số thấp nhất, tăng độ sáng của ảnh lên 85 lần
Information security, PTITHCM, 2012
Mã hóa cổ điển

Steganography:
Anh đi không h n ngày vẹ ề
Ch th ai bu c tóc th ai chôn?ỉ ề ộ ề
Mu n gì, anh mu n gì h nố ố ơ
Hôn hoàng nay l i hoàng hôn mai ngàyạ
Môi khô vóc li u thêm g yễ ầ
Anh xa em k lông mày v i ai?ẻ ớ
Th không làm tr n m t bàiơ ọ ộ
Đàn không g y đ c m t vài khúc ả ượ ộ
ngâm
Ông t già quá nên nh mơ ầ
Ai làm sum h p ai làm chia phôiọ
Ch ng thà đ ng k t duyên đôiẳ ừ ế
Có cho sum h p đ r i xa nhauọ ể ồ
Tính năm tính tháng thêm s uầ
y hai con én ngang l u bay bayẤ ầ
Nguy n Bínhễ
Nhi u công c cho ề ụ
phép gi u d li u vào ấ ữ ệ

t p tin hình nhậ ả
Information security, PTITHCM, 2012
Mật mã đối xứng
Information security, PTITHCM, 2012
Cấu trúc mã khối Feistel

IBM xây dựng năm 1973

Làm cơ sở cho nhiều thuật tóan mã
hóa đối xứng hiện đại.

Dựa trên các thao tác thay thế
(substitution) và hoán vị
(permutation) nhiều lần

×