ì
Bài Thảo Luận : Thực tập an toàn thông tin
Bài Thảo Luận : Thực tập an toàn thông tin
Chủ đề : Tìm hiểu mã hoá khối
Chủ đề : Tìm hiểu mã hoá khối
Giáo viên hướng dẫn : TH.S CAO NGỌC ÁNH
Giáo viên hướng dẫn : TH.S CAO NGỌC ÁNH
Thành viên:
Thành viên:
►
►
Bùi Vĩnh Tiến
Bùi Vĩnh Tiến
►
►
Nguyễn Duy Trung
Nguyễn Duy Trung
►
►
Lê Công Đồng
Lê Công Đồng
I. Mã kh iố
Mã hóa kh i là nh ng thu t toán mã hóa đ i x ng ho t đ ng trên ố ữ ậ ố ứ ạ ộ
nh ng kh i thông tin có đ dài xác đ nh(block) v i nh ng chuy n đ i ữ ố ộ ị ớ ư ể ổ
xác đ nh. ị
Phân bi t v i mã hóa kh i là mã hóa dòng. Mã hóa dòng làm vi c trên ế ớ ố ệ
t ng bít c a d li u và quá trình bi n đ i thay đ i theo quá trình mã ừ ủ ữ ệ ế ổ ổ
hóa. Tuy nhiên, s phân bi t gi a 2 ph ng pháp nhi u khi không rõ ự ệ ữ ươ ề
ràng vì mã hóa kh i khi ho t đ ng theo m t ch đ nào đó thì có tác ố ạ ộ ộ ế ộ
Bảng mã của thông điệp dài
có tính an toàn không cao.
u đi m c a ECB :Ư ể ủ
Đ n gi n ơ ả
Không câ n đô ng bô hóa gi a be n g i và nhân. ̀ ̀ ̃ ̣̂ ư ử ̣
Các bit l i s không đ c đ a vào các kh i k sau . ỗ ẽ ượ ư ố ế
Nh c đi m :ượ ể
Trong ch đ này, các kh i đ c t o m t mã riêngbi t, đ c l p. Do ế ộ ố ượ ạ ậ ệ ộ ậ
đó, nh ng kh i tin gi ng nhau s đ c mã hóa thành nh ng kh i mã ữ ố ố ẽ ượ ữ ố
gi ng nhau.ố
Traffic analysis (Phân tích đ ng truy n): Ng i tha m mã có th d a ́ườ ề ườ ể ự
vào y u t ca c khô i plaintext giô ng nhau t o các th ng kê v các ́ ́ ́ế ố ạ ố ề
b n rõ t ng ng ngay c khi không gi i mã đ c toàn b b n mã, ả ươ ứ ả ả ượ ộ ả
ng i thám mã có th l i d ng th ng ke này đ khám phá khóa.̂ườ ể ợ ụ ố ể
Substitution attack (T n công thay th ): Mode ECB không b o v ấ ế ả ệ
đ c b n mã nhi u kh i. Đ i th có th s a đ i 1 thông báo dài b ng ượ ả ề ố ố ủ ể ử ổ ằ
cách ch c n xóa b t hay thay đ i th t m t vài kh i. N u đ i th ỉ ầ ớ ổ ứ ự ộ ố ế ố ủ
có trong tay 1 vài kh i mã đ c mã hóa cùng khóa v i thông ba o, đ i ́ố ượ ớ ố
th có th chèn nó vào b n mã. ECB không ne n dùng đ mã hóa các ̂ủ ể ả ể
b n rõ dài có nhi u kh i.ả ề ố
Ví dụ
Bản mã sau khi mã hóa DES theo chế độ ECB :
44665395698A26B944665395698A26B944665395698A26B9
2. Ch đ mã móc xích (Cipher Block Chaining -CBC)ế ộ
Ký hi u :ệ
E : Encryption (Mã hóa)
Pi : Plaintext block I (Kh i b n rõ)ố ả
K : Secret key (Khóa b o m t)ả ậ
D : Decryption (Gi i mã)ả
Ci : Ciphertext block i (Kh i b n mã)ố ả
IV : Initial Vector (C0)
•
Trong chế độ này, mỗi khối tin trước khi được mã hóa thì được XOR với khối mã sinh
ra từ bước trước đó.
Hàm mã hóa:
C0 = IV
Cj= Ek(Cj-1
XOR Pj)
1.Hàm giải mã:
Pj= Cj-1 XOR
Dk(Cj)
Chú ý khối đầu
tiên:
C0 = Ek(IV
XOR Pj)
P0 = IV XOR
Dk(C1)
Ca c v n đê bao m t trong CBĆ ̀ấ ̉ ậ
kh i b n mã P3ố ả
C3: 48656C6C6F202121
P2: C12802DF4346A11D
C3 XOR P2: 894D6EB32C66803C
Mã hóa DES C3 XOR P2 v i khóa Key ta đ c b n mã P3: 894D6EB32C66803Cớ ượ ả
B5 : Sau khi mã hóa đ c toàn b các kh i b n rõ ta đ c b n mã là t p h p ượ ộ ố ả ượ ả ậ ợ
c a các kh i b n mã ủ ố ả
B n mã sau khi mã hóa DES ch đ CBC :ả ở ế ộ
894D6EB32C66803C C12802DF4346A11D894D6EB32C66803C
3.Ch đ Mã ph n h i k-bit (k-bit Cipher Feedback Mode -CFB)ế ộ ả ồ
Ký hi u :ệ
E : Encryption (Mã hóa)
Pi : Plaintext block I (Kh i b n rõ)ố ả
K : Secret key (Khóa b o m t)ả ậ
D : Decryption (Gi i mã)ả
Ci : Ciphertext block i (Kh i b n mã)ố ả
IV : Initial Vector (C0)
W
Mã hóa
Cj= Pj XOR Ek(Cj-1)
Giải mã:
Pj= Cj XOR Dk(Cj-1)
Ví dụ
VD3: Mã hóa và gi i mã b n rõ : “Hello !!Hello !!Hello !!” Key : “abcdefgh” ả ả
Initialization Vector(IV): “defghabc” theo h mã DES v i c ch ma hóa CFB̃ệ ớ ơ ế
Ta có
B n rõ C (ASCII) : Hello !!Hello !!Hello !!ả
13394EB9723A7A68
B5 : L p l i b c 4 đ n khi mã hóa h t các kh i b n rõ ặ ạ ướ ế ế ố ả
Th c hi n mã hóa DES P2 v i khóa Key sau đó XOR v i kh i b n rõ C3 ta ự ệ ớ ớ ố ả
đ c kh i b n mã P3ượ ố ả
Mã hóa DES P2: 13394EB9723A7A68
Key: 6162636465666768
K t qu Des3:ế ả E832BC92806BFB2C
Th c hi n XOR k t qu Des3 v i C3 ta đ c P3ự ệ ế ả ớ ượ
C3: 48656C6C6F202121
Des3: E832BC92806BFB2C
P3: A057D0FEEF4BDA0D
B6: Sau khi mã hóa đ c toàn b các kh i b n rõ ta đ c b n mã là t p ượ ộ ố ả ượ ả ậ
h p c a các kh i b n mã ợ ủ ố ả
B n mã sau khi mã hóa DES ch đ CFB :ả ở ế ộ
67B902339099345E13394EB9723A7A68
A057D0FEEF4BDA0D
III. Ý nghĩa c a m t mã kh i ủ ậ ố
Mã kh i có m t u đi m đó là t c đ mã hoá r t nhanh, ố ộ ư ể ố ộ ấ
nó có th đáp ng cho vi c mã d li u, ti ng nói. Mã ể ứ ệ ữ ệ ế
kh i là y u t n i b t và quan tr ng trong m t s các h ố ế ố ổ ậ ọ ộ ố ệ
th ng m t mã. C th chúng cung c p m t s tin c y. ố ậ ụ ể ấ ộ ự ậ
Gi ng nh vi c xây d ng m t kh i c b n, chúng linh ố ư ệ ự ộ ố ơ ả
ho t h n trong vi c cho phép xây d ng các s gi ng u ạ ơ ệ ự ố ả ẫ
nhiên, dòng khoá, MAC và các hàm băm. Mã kh i có th ố ể
ng d ng cho c các thu t toán mã hoá bí m t và công ứ ụ ả ậ ậ
khai.