Giáo trình Hệ điều hành - Chương 7: Bảo mật dựa trên mã hóa - Hoàng Xuân Dậu

pdf 40 trang huongle 2880
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Hệ điều hành - Chương 7: Bảo mật dựa trên mã hóa - Hoàng Xuân Dậu", để 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:

  • pdfgiao_trinh_he_dieu_hanh_chuong_7_bao_mat_dua_tren_ma_hoa_hoa.pdf

Nội dung text: Giáo trình Hệ điều hành - Chương 7: Bảo mật dựa trên mã hóa - Hoàng Xuân Dậu

  1. HHệệ điđiềềuu hhàànhnh mmạạngng nângnâng caocao GiGiảảngng viên:viên: HoHoààngng XuânXuân DDậậuu Email:Email: dauhoang@vnn.vndauhoang@vnn.vn KhoaKhoa CôngCông nghnghệệ thôngthông tintin 11 HHọọcc viviệệnn CôngCông nghnghệệ BCBC VTVT
  2. CCáácc gigiảảii phpháápp đđảảmm bbảảoo anan totoàànn ddựựaa trêntrên mãmã hohoáá • Mã hoá khoá bí mật (secret key cryptogrphy). • Mã hoá khoá công khai (public key cryptogrphy). • Các hàm băm (hash functions) • Chữ ký điện tử (digital signatures) • Các giao thức/kỹ thuật bảo mật: SSL/TLS, SET, PGP • Một số mô hình bảo mật HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 2
  3. MMụụcc đđííchch mãmã hohoáá thôngthông tintin • Mã hoá thông tin có thể được sử dụng để đảm bảo an toàn thông tin trên đường truyền với các thuộc tính: – Bí mật (confidentiality) – Toàn vẹn (integrity) – Không thể chối bỏ (non-repudiation) – Xác thực (authentication) HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 3
  4. CCáácc ththàànhnh phphầầnn ccủủaa mmộộtt hhệệ mãmã hohoáá • Mỗi hệ thống mã hoá được cấu thành từ hai bộ phận chính: – Phương pháp mã hoá, còn gọi là “giải thuật” (algorithm) – Một tập các khoá, còn gọi là không gian khoá (key space) • Nguyên lý Kerckhoff: “tính an toàn của một hệ mã hoá không nên phục thuộc vào việc giữ bí mật giải thuật mã hoá, mã chỉ nên phục thuộc vào việc giữ bí mật khoá mã”. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 4
  5. LLịịchch ssửử mãmã hohoáá • Các kỹ thuật mã hoá thô sơ đã được người cổ Ai cập sử dụng cách đây 4500 năm. • Người cổ Hy lạp, Ấn độ cũng đã sử dụng mã hoá cách đây hàng ngàn năm. • Các kỹ thuật mã hoá chỉ thực sự phát triển mạnh từ thế kỷ 1800 nhờ công cụ toán học, và phát triển vượt bậc trong thế kỷ 20 nhờ sự phát triển của máy tính và ngành CNTT. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 5
  6. CCáácc côngcông ccụụ mãmã hohoáá (crypto(crypto graphicgraphic primitives)primitives) HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 6
  7. CCáácc tiêutiêu chuchuẩẩnn đđáánhnh gigiáá • Độ an toàn (level of security): thường được đánh giá thông qua số lượng tính toán để có thể phá được hệ mã hoá. • Tính năng (functionality): hệ thống có thể được sử dụng cho nhiều mục đích bảo mật. • Chế độ hoạt động (methods of operation): cung cấp các tính năng khác nhau theo chế độ hoạt động. • Hiệu năng (performance): có thể được đo bằng tốc độ mã hoá (bits/giây). • Độ dễ cài đặt (ease of implementation): độ khó của việc cài đặt thuật toán trong thực tế trên phần cứng hoặc phần mềm. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 7
  8. MãMã hohoáá khokhoáá bbíí mmậậtt vvàà MãMã hohoáá khokhoáá côngcông khaikhai • Mã hoá khoá bí mật (khóa đối xứng) – Sử dụng một khoá duy nhất cho cả hai khâu mã hoá (encryption) và giải mã (decryption). – Khoá cần được giữ bí mật • Mã hoá khoá công khai (khóa bất đối xứng) – Sử dụng một cặp khoá, trong đó khoá công khai dùng để mã hoá (encryption) và khoá riêng/bí mật để giải mã (decryption). – Chỉ có khoá riêng (private key) cần được giữ bí mật, không cần giữ bí mật khoá công khai (public key). HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 8
  9. MãMã hohoáá khokhoáá bbíí mmậậtt • Trao đổi khoá: – Hai bên gửi và nhận trao đổi khoá bí mật (secret key) – Việc trao đổi khoá phải được thực hiện an toàn. • Mã hoá tại bên gửi: – Bản rõ (plaintext) được mã hoá sử dụng khoá bí mật tạo ra bản mã (ciphertext); – Bản mã được gửi cho bên nhận. • Giải mã tại bên nhận: – Bản mã được giải mã sử dụng khoá bí mật để khôi phục lại bản rõ ban đầu. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 9
  10. MãMã hohoáá khokhoáá bbíí mmậậtt (ti(tiếếp)p) HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 10
  11. MãMã hohoáá khokhoáá bbíí mmậậtt (ti(tiếếp)p) • Ưu điểm – Độ an toàn cao – Tốc độ cao • Nhược điểm – Gặp khó khăn trong việc đảm bảo an toàn khi chuyển giao khoá (key distribution). – Càng gặp nhiều khó khăn khi số lượng thực thể tham gia trao đổi thông tin lớn: • 2 thực thể dùng chung 1 khoá, 3 thực thể dùng 3 khoá • 4 thực thể dùng 6 khoá, 5 thực thể dùng 10 khoá • 100 thực thể dùng 4950 khoá, • 1000 thực thể dùng 499500 khoá HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 11
  12. MãMã hohoáá khokhoáá côngcông khaikhai • Trao đổi khoá: – Bên nhận gửi khoá công khai của mình (public key) cho bên gửi; – Việc trao đổi khoá công khai có thể được thực hiện trong môi trường mở như internet. • Mã hoá tại bên gửi: – Bản rõ (plaintext) được mã hoá sử dụng khoá công khai của bên nhận tạo ra bản mã (ciphertext); – Bản mã được gửi cho bên nhận. • Giải mã tại bên nhận: – Bản mã được giải mã sử dụng khoá bí mật của bên nhận để khôi phục lại bản rõ ban đầu. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 12
  13. MãMã hohoáá khokhoáá côngcông khaikhai (ti(tiếếp)p) HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 13
  14. MãMã hohoáá khokhoáá côngcông khaikhai (ti(tiếếp)p) • Ưu điểm: – Trao đổi khoá đơn giản do: • Chỉ cần trao đổi khoá công khai của cặp khoá • Khoá riêng/bí mật luôn được giữ bí mật – Độ an toàn cao • Nhược điểm: – Tốc độ chậm so với mã hoá khoá bí mật – Đòi hỏi công suất tính toán lớn – Độ phức tạp của thuật toán cao HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 14
  15. MãMã hohoáá khkhốốii vvàà dòngdòng • Mã hoá khối (block cipher): – Chia thông điệp thành các khối có chiều dài cố định và mã hoá từng khối; – Giải mã cũng được thực hiện trên từng khối và sau đó ghép các khối lại để khôi phục thông điệp ban đầu. • Mã hoá theo dòng (stream cipher): – Là trường hợp đặc biệt của mã hoá khối khi chiều dài khối là 1 ký tự. – Từng ký tự được mã hoá và giải mã riêng rẽ. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 15
  16. DESDES • DES (Data Encryption Standard) l à một trong những phương pháp mã hoá nổi tiếng nhất ra đời vào những năm 1970. • DES mã hoá thông điệp theo khối, kích thước khối 64 bít. • Khoá của DES dài 64 bít, trong đó: – 56 bít là khoá hiệu dụng (effective key) – 8 bít còn lại có thể được dùng như các bít chẵn lẻ. • Tổng số khoá trong không gian khoá hiệu dụng là 256 HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 16
  17. DESDES HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 17
  18. TripleTriple DESDES HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 18
  19. IDEAIDEA • IDEA (International Data Encryption Algorithm) là phương pháp mã hoá theo khối: – Kích thước khối là 64 bít – Kích thước khoá là 128 bít • Thuật toán IDEA gồm: – 8 vòng lặp, kết quả của mỗi vòng trước là đầu vào cho vòng tiếp theo. – Một vòng chuyển đổi kết quả HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 19
  20. IDEAIDEA HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 20
  21. MãMã hohoáá côngcông khaikhai RSARSA • RSA do R. Rivest, A. Shamir, v à L. Adleman phát minh vào năm 1977, là phương pháp mã hoá công khai được sử dụng rộng rãi nhất. • Độ an toàn của RSA dựa tính khó của việc phân tách số nguyên lớn. • RSA được sử dụng để: – Cung cấp tính bí mật – Tạo chữ ký điện tử HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 21
  22. RSA:RSA: ttạạoo ccặặpp khokhoáá HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 22
  23. RSA:RSA: mãmã hohoáá && gigiảảii mãmã HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 23
  24. CCáácc yyếếuu ttốố ảảnhnh hưhưởởngng đđếếnn đđộộ anan totoàànn ccủủaa RSARSA • p, q phải là các số nguyên tố “mạnh” (strong primes). • p, q phải đủ lớn và có kích thước ngang nhau. • Kích thước của các khoá d và e phải tương tự nhau và tương đương kích thước của n. • Kích thước của n phải từ 1024 bít trở lên. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 24
  25. KKííchch thưthướớcc khokhoáá RSARSA HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 25
  26. CCáácc hhààmm bămbăm • Một hàm băm (hash function) là một hàm h với tối thiểu hai thuộc tính sau: – Nén: h ánh xạ chuỗi vào x có độ dài tuỳ ý sang chuỗi ra h(x) có độ dài cố định. – Dễ tính toán: cho trước hàm h và chuỗi vào x, có thể dễ dàng tính chuỗi ra h(x). • Hàm băm thường được sử dụng: – Tạo chuỗi kiểm tra phát hiện sửa đổi MDC – Tạo chuỗi xác thực thông điệp MAC. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 26
  27. CCáácc hhààmm bămbăm thôngthông ddụụngng • MD5 (Message Digest) – Xử lý chuỗi đầu vào theo khối 512 bít – Chuỗi đầu ra có kích thước cố định 128 bít • SHA1 (Secure Hash Algorithm) – Xử lý chuỗi đầu vào theo khối 512 bít – Chuỗi đầu ra có kích thước cố định 160 bít • SHA256, SHA384, SHA512: tăng kích thước của chuỗi đầu ra. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 27
  28. ChChữữ kýký điđiệệnn ttửử • Chữ ký điện tử/ chữ ký số (digital signature) của một thông điệp là một chuỗi được tạo ra từ thông điệp đó. • Việc sử dụng chữ ký số liên quan đến 2 quá trình: – Quá trình tạo chữ ký số cho thông điệp (digital signature signing) – Quá trình kiểm tra chữ ký số (digital signature verification) HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 28
  29. TTạạoo chchữữ kýký ssốố HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 29
  30. KiKiểểmm tratra chchữữ kýký ssốố HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 30
  31. CCáácc giaogiao ththứứcc bbảảoo mmậậtt • SSL/TLS (Secure Sockets Layer, Transport Layer Security) là giao thức bảo mật được sử dụng rộng rãi nhất trên mạng Internet. • SET (Secure Electronic Transaction): giao thức cho thanh toán điện tử. • PGP (Pretty Good Privacy): giao th ức bảo mật dùng cho nhiều mục đích. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 31
  32. SSL/TLSSSL/TLS • SSL do công ty Netscape phát minh, TLS được xây dựng dựa trên SSL và do IETF phê chuẩn. • Đặc điểm của SSL/TLS: – Sử dụng mã hoá khoá công khai để trao đổi khoá phiên. Mỗi khoá phiên chỉ được sử dụng trong 1 phiên làm việc. – Sử dụng khoá phiên và mã hoá khoá bí mật để mã hoá toàn bộ dữ liệu trao đổi. – Ít nhất một thực thể có chứng chỉ số cho khoá công khai (public key certificate). HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 32
  33. SSL/TLSSSL/TLS trongtrong giaogiao ththứứcc TCP/IPTCP/IP HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 33
  34. CCáácc giaogiao ththứứcc concon ccủủaa SSL/TLSSSL/TLS HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 34
  35. SETSET • SET là giao thức cho phép thanh toán điện tử an toàn, sử dụng thẻ tín dụng. SET có khả năng đảm bảo các thuộc tính sau: – Bí mật thông tin – Toàn vẹn thông tin – Xác thực tài khoản chủ thẻ – Xác thực nhà cung cấp HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 35
  36. CCáácc ththàànhnh phphầầnn ccủủaa SETSET HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 36
  37. PGPPGP PrettyPretty GoodGood PrivacyPrivacy • PGP do Philip Zimmermann ph át triển năm 1991: – Cung cấp tính riêng tư – Cung cấp tính xác thực • PGP được sử dụng rộng rãi và đã được thừa nhận thành chuẩn (RFC 3156). • PGP cho phép: – Mã hoá dữ liệu sử dụng mã hoá khoá bí mật và khoá công khai – Tạo và kiểm tra chữ ký điện tử. HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 37
  38. MMôô hhììnhnh thamtham khkhảảo:o: mãmã hohoáá ssửử ddụụngng DSPDSP HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 38
  39. KKếếtt hhợợpp mãmã hohoáá côngcông khaikhai vvàà chchữữ kýký điđiệệnn ttửử Tính bí mật Tính không thể chối bỏ Tính toàn vẹn Mã hóa RSA Chữ kí điện tử HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 39
  40. MôMô hhììnhnh cungcung ccấấpp ttíínhnh bbíí mmậậtt && totoàànn vvẹẹnn thôngthông tintin HĐH mạng nâng cao VIII. Bảo mật dựa trên mã hoá 40