An toàn bảo mật hệ thống thông tin - Chương 3: Bảo mật thông tin bằng mã hóa - Nguyễn Minh Thành

pdf 36 trang phuongnguyen 4030
Bạn đang xem 20 trang mẫu của tài liệu "An toàn bảo mật hệ thống thông tin - Chương 3: Bảo mật thông tin bằng mã hóa - Nguyễn Minh Thành", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfan_toan_bao_mat_he_thong_thong_tin_chuong_3_bao_mat_thong_ti.pdf

Nội dung text: An toàn bảo mật hệ thống thông tin - Chương 3: Bảo mật thông tin bằng mã hóa - Nguyễn Minh Thành

  1. 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 : thanhnm.itc@itc.edu.vn
  2. Mục Lục I. 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 1. Mã hoá Ceasar 2. Mã hoá Viignere 3. Mã hóa Trithemius 4. Mã hóa Belasco 5. 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
  3. 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
  4. 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 đó :  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ã 4
  5. 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.
  6. 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 không biết được nội dung. 6
  7. 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
  8. 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
  9. III. Bảo Vệ Dữ Liệu Bằng Mã Hoá Mã Hoá  Sơ đồ một hệ thống mã hoá đơn giản 9
  10. 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
  11. 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
  12. 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
  13. IV.1 Mã Hoá Ceasar  Ví dụ:  Văn bản gốc: ‘Hello word’  Văn bản mã hóa: ‘Khoor zrug’ 13
  14. 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)  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) 14
  15. 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
  16. 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
  17. IV.2 Mã Hoá Vigenère  Ví dụ: Với khóa ABC thì quá trình mã hóa như sau 17
  18. 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
  19. IV.3 Mã Hoá Trithemius 19
  20. IV.3 Mã Hoá Trithemius  Ví dụ:  Thông điệp gốc là HAPPY  Sẽ được mã hóa thành HBRSC. 20
  21. IV.4 Mã Hoá Belasco  Mô tả: Belasco dựa trên ý tưởng của Trithemius đã phát triển một mật mã phức tạp hơn có dùng khóa. Khóa được viết ngay phía trên thông điệp gốc. Mỗi một chữ cái trong thông điệp gốc cùng với chữ cái khóa được viết ngay phía trên nó tạo thành một tọa độ dùng để xác định chữ cái mã.  Toạ độ có dạng: hàng là khóa, cột là thông điệp gốc. 21
  22. IV.4 Mã Hoá Belasco  Ví dụ 22
  23. IV.5 Kỹ Thuật Chuyển Vị  Kỹ thuật này viết tuần tự văn bản gốc theo một đường chéo rồi hiển thị văn bản mã hóa tuần tự của hàng.  Ví dụ: Văn bản gốc: ‘haveagoodday’ h a e g o d y v a o d a  Văn bản mã hóa: ‘haegodyvaoda’ 23
  24. IV.5 Kỹ Thuật Chuyển Vị  Nếu muốn biểu đồ biểu hiện thông điệp phức tạp hơn, chúng ta biểu diễn thông điệp theo dạng hình chữ nhật, theo hàng, theo cột. Chúng ta có thể hóan đổi thứ tự của hàng và của cột và có thể xem đó là từ khóa của thuật toán.  Ví dụ: Văn bản gốc: ‘DataEncryptionStrings’ Key: 3 5 6 7 2 1 4 D a t a E n c r y p t i o n S t r i n g s 24 Văn bản mã hóa: ‘nogEinDrScnsayttprati’
  25. IV. Một Số Phương Pháp Mã Hoá Cổ Điển  Nhìn chung các thuật toán mã hóa trên đã có từ lâu và đến nay chỉ còn mang tính lịch sử. Tuy nhiên, ta vẫn phải kể đến nó bởi vì nó chính là tiền đề cho các thuật toán mã hóa phức tạp sau này. 25
  26. V. Vai trò và các ứng dụng của mật mã trong thời đại hiện nay  Mạng máy tính đang phát triển với tốc độ rất cao, các dịch vụ trên mạng ngày càng nhiều và đang thay thế dần các dịch vụ truyền thống. Chính phủ điện tử, thương mại điện tử đang ngày một hoàn thiện và đóng vai trò quyết định sự phát triển của mỗi quốc gia. Vấn đề an ninh trên mạng luôn là bài toán khó, đòi hỏi sự quan tâm và đầu tư của nhiều tổ chức. Do đó, mật mã học đóng vai trò quan trọng trong thời đại bùng nổ thông tin như hiện nay. 26
  27. V. Vai trò và các ứng dụng của mật mã trong thời đại hiện nay  Mật mã học hiện đại không còn nằm trong phạm vi mã hoá dữ liệu, mà nó còn rất nhiều ứng dụng khác nhau liên quan đến an toàn thông tin. Mật mã được sử dụng như là một công cụ để bảo vệ an ninh qua mạng. Chúng ta có thể liệt kê một số ứng dụng như sau:  Truyền thông an toàn (Secure communication)  Nhận dạng và xác nhận (Identification and Authentication)  Chia sẽ thông tin bí mật (Secret Sharing)  Thương mại điện tử (Electronic Commerce)  Chứng nhận (Certication)  Phục hồi khóa (key recovery) 27  Truy cập từ xa (Remote access)
  28. Truyền thông an toàn (Secure communication)  Đây là ứng dụng quan trọng nhất của mật mã. Hai đối tác trao đổi các thông tin bí mật bằng cách mã hóa các thông điệp trước khi gửi. Việc này ngăn chặn sự rò rĩ thông tin. Việc truyền thông an toàn đã tồn tại từ lâu, nhưng vấn đề trao đổi và quản lý khóa luôn là bài toán khó. Ngày nay nhờ vào kỹ thuật mã hóa công khai vấn đề này đã được giải quyết một cách rõ ràng. 28
  29. Nhận dạng và xác nhận (Identification and Authentication)  Đây là hai ứng dụng rộng rãi của mật mã hiện đại. Nhận dạng là quá trình kiểm tra và nhận dạng một user. Ví dụ khi rút tiền ở ngân hàng, người phát tiền sẽ yêu cầu thẻ chứng minh (ID) để xác nhận người chủ tài khoản. Quá trình như vậy có thể thực hiện bằng kỹ thuật mật mã. Mọi máy rút tiền tự động ATM đều yêu cầu người rút tiền nạp số pin (Personal Identification Number). Nếu PIN được nạp đúng là người chủ tài khoản và cho phép rút tiền. 29
  30. Chia sẽ thông tin bí mật (Secret Sharing)  Đây là ứng dụng được phát minh bởi Blakey và Shamir. Trong ứng dụng này một thông tin bí mật được chia sẽ cho nhiều người. Ví dụ, một khóa được chia thành nhiều phần và chia từng phần đó cho một số người trong nhóm. Để sử dụng khóa phải được sự chấp thuận của mọi người trong nhóm, khóa của một người trong nhóm không thể sử dụng một cách độc lập, như vậy là quyền hạn đã được chia sẽ cho nhiều người. 30
  31. Thương mại điện tử (Electronic Commerce)  Các năm gần đây, một khối lượng lớn giao dịch thương mại được thực hiện thông qua internet. Dạng thương mại này gọi là thương mại điện tử hay e-commerce. E-commerce bao gồm các ngân hàng trực tuyến, tài khoản trực tuyến, mua bán qua mạng, đặt hàng Tuy nhiên, việc sử dụng trực tiếp số thẻ tín dụng để mua bán thì thật sự không an toàn. Mật mã cung cấp một công cụ tin cậy hơn, sổ thẻ tín dụng sẽ được mã hóa trước khi truyền đi. Càng nhiều giao dịch thương mại diễn ra trên internet thì việc xây dựng một hệ thống an ninh đáng tin cậy hơn là rất quan trọng. 31
  32. Chứng nhận (Certication)  Đây là ứng dụng khác của mật mã. Một tổ chức (ví dụ như chính phủ) sẽ cung cấp một giấy chứng nhận điện tử (certificate) cho một user. User này có thể dùng giấy này để truy cập mạng, ký tên Thực chất đây là một ứng dụng làm tiện lợi quá trình nhận dạng và xác nhận. 32
  33. Phục hồi khóa (key recovery)  Đây là một ứng dụng cho phép một khóa được tìm ra mà không cần sự cung cấp thông tin của chủ sở hữu khóa. Ứng dụng này được áp dụng vì hai nguyên nhân chính sau đây. Thứ nhất, nếu user bị mất khóa hay vô tình xóa mất khóa, dịch vụ này có thể khôi phục lại. Thứ hai, một cơ quan pháp luật muốn “nghe trộm” các thông tin của một tổ chức tội phạm, cơ quan đó phải có khả năng phục hồi khóa. 33
  34. Truy cập từ xa (Remote access)  Truy cập từ xa một cách an toàn là một ứng dụng khác của mật mã. Một hệ thống dựa trên mật khẩu để truy cập cung cấp mức độ an toàn nhất định, nhưng nó không an toàn trong một số trường hợp (chẳng hạn mật khẩu có thể bị đánh cắp, nghe trộm ). Có nhiều ứng dụng của mật mã cho phép truy cập từ xa được an toàn hơn ví dụ như certificate). 34
  35. Ứng dụng khác  Mật mã không chỉ được dùng trong kỹ thuật máy tính, nó còn được sử dụng trong thông tin di động (cell phone) như mã hóa tín hiệu thoại để chống nghe trộm hay ngăn cản việc ăn cắp số điện thoại và mã truy cập. 35