intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài Thảo Luận : Tìm hiểu mã hoá khối

Chia sẻ: Bùi Vĩnh Tiến | Ngày: | Loại File: PPT | Số trang:18

257
lượt xem
52
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

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 dụng như một phương pháp mã hóa dòng.

Chủ đề:
Lưu

Nội dung Text: Bài Thảo Luận : Tìm hiểu mã hoá khối

  1. 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 Giáo viên hướng dẫn : TH.S CAO NGỌC ÁNH ì Thành viên: ►Bùi Vĩnh Tiến ►Nguyễn Duy Trung ►Lê Công Đồng
  2. 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 dụng như  một phương pháp mã  hóa dòng.  Để xây dựng thuật toán mã  hóa khối an toàn bằng cách sử dụng kết hợp  các thao tác mã hóa tạo ra tính hỗn loạn và tính khuếch tán thông tin:  Tính hỗn loạn giúp phá vỡ mối quan hệ giữa bản rõ và bản mã, tạo  ra mối quan hệ phức tạp và chặt chẽ giữa khóa và bản mã.  Sự  khuếch  tán  giúp  phá  vỡ  và  phân  tán  các  phần  tử  trong  các  mẫ  xuất hiện trong bản rõ  để không thể phát hiện ra các mẫu này trong  bản mã.
  3. II. Các chế độ sử dụng Mã khối 1. Chế độ bảng tra mã điện tử (Electronic code book ­ECB) 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ã)
  4.  Mã hóa: Cj= Ek(Pj) P=P1P2…Pn  Giải mã: Pj= Dk(Cj)  Chỉ thích hợp cho việc mã hóa các thông điệp ngắn. Bảng mã của thông điệp dài có tính an toàn không cao.
  5.  Ưu điểm của ECB :  Đơn giản    Không cân đồng bộ hóa giữa ben 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  tham  mã  có  thể  dựa  ́ vào yếu tố cac 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 bao,  đối thủ có thể  ́ chèn nó vào bản mã. ECB không nen dùng  để mã hóa các bản rõ dài  ̂ có nhiều khối.
  6.  Ví dụ   Nếu ECB  được sử dụng trong truyền tin mật trong giao dịch ngân hàng, kẻ  địch có  thể  tấn  công  làm  giả  thông báo, lệnh  chuyển  tài  khoản. Nhược  điểm nói  trên khiến  cho  việc  truyền  tin  mật  theo  chế  độ  mã  này  là  không  có  lợi,  tuy  nhiên  chế  độ  này  thường  được dùng trong mã hóa thông tin lưu trữ, ví dụ như các cơ sở dữ liệu vì nó  cho phép từng  đơn vị dữ liệu  được mã hóa  độc lập và do  đó có thể cập nhật thay  đổi  dễdàng từng phần mà không động chạm đến các phần khác của cơ sở dữ liệu. VD1: Mã hóa và giải mã bản rõ : “Hello !!Hello !!Hello !!” Key : “abcdefgh” theo hệ mã  DES  với cơ chế ma hóa ECB. ̃       Ta có Bản rõ C (ASCII) : Hello !!Hello !!Hello !! Bản  rõ  C  (HEX)  :  48656C6C6F20212148656C6C6F20212148656C6C6F202121 Khóa key (ASCII) : abcdefgh Khóa key (HEX) : 6162636465666768
  7. VD1.1. Mã hóa B1 : Chia bản rõ ra thành các khối bản rõ (Plaintext block) 64bit Bản rõ gồm các khối : C1: 48656C6C6F202121 C2: 48656C6C6F202121 C3: 48656C6C6F202121 B2 : Mã hóa các khối bản rõ theo hệ mã DES bằng khóa Key : 6162636465666768 Khối mã sau khi mã  Khối Khối bản rõ Khối mã mã hóa DES Khối bản mã hóa DES C1 48656C6C6F202121 48656C6C6F202121 44665395698A26B9 44665395698A26B9 C2 48656C6C6F202121 48656C6C6F202121 44665395698A26B9 44665395698A26B9 C3 48656C6C6F202121 48656C6C6F202121 44665395698A26B9 44665395698A26B9 B3 : Sau khi mã hóa được các khối thì bản mã chính là tổng hợp của các kh ối bản mã Bản mã sau khi mã hóa DES theo chế độ ECB : 44665395698A26B944665395698A26B944665395698A26B9
  8. 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)
  9. •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)
  10. 1.Hàm giải Cj-1 XOR Pj= mã: Dk(Cj) Chú ý khối đầu tiên: C0 = Ek(IV XOR Pj) P0 = IV XOR Dk(C1)  Cac vấn đề bao mật trong CBC ́ ̉  Cac khối plaintext giống nhau trong cùng 1 message thường được mã hóa  ́ thành  cac  khối  ciphertext  khac  nhau.  Tuy  nhien  neu  2  message  giống  ́ ́ ̂ ̂ nhau thì se cho ket qua mã hóa giống nhau neu cùng gia tri IV. ̃ ̂́ ̉ ̂́ ̣́  Error Propagation : Các khối ciphertext có liên quan với nhau, vì vậy có  nghĩa là cac lỗi cũng sẽ truyền theo.– Vi dụ: khối mã ci  được truyền với 1  ́ ́ lỗi, khi  đó khôi ci và ci+1 sẽ giải mã không  đung. Nhưng tất cả cac khối  ́ ́ ́ mã khac c1, ... ,ci−1, ci+2,..., không bi anh hưởng. ́ ̣̉
  11.  Ví dụ VD2:  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 CBC ̃ Ta có Bản rõ C (ASCII) : Hello !!Hello !!Hello !!  :  Bản rõ C(HEX) 48656C6C6F20212148656C6C6F20212148656C6C6F202121 Khóa key (ASCII) : abcdefgh Khóa key (HEX) : 6162636465666768 IV (ASCII) : defghabc IV (HEX) : 6465666768616263
  12. B3 : XOR Khối bản mã P1 với C2 sau  đó thực hiện mã hóa DES với khóa key ta  được khối bản mã P2 C2: 48656C6C6F202121 P1: 894D6EB32C66803C C2 XOR P1 : C12802DF4346A11D Mã hóa DES C2 XOR P1 với khóa Key ta được bản mã P2: C12802DF4346A11D B4 : Lặp lại bước 3 đến khi mã hóa hết các khối bản rõ  XOR Khối bản mã P2 với C3 sau  đó thực hiện mã hóa DES với khóa key ta  được  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
  13. 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)
  14.   Mã hóa Cj= Pj XOR Ek(Cj­1) Giải mã: Pj= Cj XOR Dk(Cj-1)
  15.  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 !! Bản rõ C (HEX) :  48656C6C6F20212148656C6C6F20212148656C6C6F202121   Khóa key (ASCII) : abcdefgh Khóa key (HEX) : 6162636465666768 IV (ASCII) : defghabc IV (HEX) : 6465666768616263 VD3.1. Mã hóa B1 : Chia bản rõ ra thành các khối bản rõ (Plaintext block) 64bit Bản rõ gồm các khối :  C1: 48656C6C6F202121 C2: 48656C6C6F202121 C3: 48656C6C6F202121 B2 : Thực hiện mã hóa DES IV với khóa Key Mã hóa DES IV : 6465666768616263 Key : 6162636465666768 Kết quả Des1:  2FDC6E5FFFB9157F
  16. B3 : Thực hiện XOR Kết quả sau khi mã hóa DES : Des1 với khối bản  rõ C1 ta được khối bản mã P1 C1: 48656C6C6F202121 Des1: 2FDC6E5FFFB9157F P1:  67B902339099345E   B4 : Thực hiện mã hóa DES P1 với khóa Key sau đó XOR với khối bản  rõ C2 ta được khối bản mã P2 Mã hóa DES P1: 67B902339099345E Key: 6162636465666768 Kết quả Des2: 5B5C22D51D1A5B49 Thực hiện XOR kết quả Des2 với C2 ta được P2 C2: 48656C6C6F202121 Des2: 5B5C22D51D1A5B49 P2: 13394EB9723A7A68
  17. 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
  18. 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.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2