Nghiên cứu sử dụng công nghệ bảo mật ssl tls

  • Số trang: 86 |
  • Loại file: PDF |
  • Lượt xem: 28 |
  • Lượt tải: 0
nganguyen

Đã đăng 34173 tài liệu

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đặng Thị Huê NGHIÊN CỨU SỬ DỤNG CÔNG NGHỆ BẢO MẬT SSL/TLS KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành : Công nghệ thông tin Cán bộ hướng dẫn: PGS.TS. Trịnh Nhật Tiến HÀ NỘI - 2005 Lời cảm ơn Em xin gửi lời cảm ơn chân thành tới thầy giáo hướng dẫn PGS.TS Trịnh Nhật Tiến đã tận tình hướng dẫn, cho em những định hướng và ý kiến quý báu cùng sự trực tiếp chỉ bảo của chị Trương Thị Thu Hiền đã giúp em hoàn thành tốt luận văn tốt nghiệp. Em chân thành cảm ơn tất cả các thầy cô trong Trường Đại Học Công Nghệ Đại Học Quốc Gia Hà Nội đã nhiệt tình giảng dạy và giúp đỡ em trong quá trình học tập tại trường. Con xin gửi đến Bố Mẹ và gia đình tình thương yêu và lòng biết ơn. Bố Mẹ và gia đình luôn là nguồn động viên của con và là chỗ dựa vững chắc cho cuộc đời con. Tôi xin cảm ơn các bạn cùng lớp đã động viên và giúp đỡ tôi trong thời gian thực hiện luận văn này. Vì thời gian có hạn, khoá luận tốt nghiệp của em không tránh khỏi khiếm khuyết. Rất mong nhận được sự góp ý của thầy cô và các bạn Hà Nội, ngày 06 tháng 06 năm 2005. Sinh viên Đặng Thị Huê Trang i Tóm tắt Được thiết kế bởi Netscape bao gồm các cơ chế bảo mật trong các sản phẩm trình duyệt để tạo ra truyền thông an toàn trên mạng, SSL (Secure Sockets Layer) hiện đang là giao thức bảo mật được sử dụng phổ biến trên Internet nhất là trong các hoạt động thương mại điện tử. Ban đầu, SSL được thiết kế kết hợp cùng với giao thức HTTP được sử dụng bởi các Web server và browser, nhưng bây giờ nó đã là một thành phần quan trọng trong mọi loại truyền thông Internet bảo mật. Việt Nam đang trên đường hội nhập với nền công nghệ thông tin thế giới, các hoạt động giao dịch trên mạng ở Việt Nam cũng sẽ diễn ra sôi nổi, khi đó vấn đề bảo mật trở nên quan trọng, việc triển khai SSL là điều cần thiết. Tuy nhiên đến nay hầu hết các website ở Việt Nam đều chưa sử dụng SSL trong các giao dịch của mình. Trong khoá luận này, em tiến hành nghiên cứu chi tiết về giao thức bảo mật SSL và cách triển khai chúng trên Internet Information Service (IIS) và Windows Server Enterprise 2003. Chúng tôi hy vọng rằng với khoá luận này sẽ đem đến cái nhìn cụ thể hơn về SSL và bảo mật mạng, tầm quan trọng của nó cũng như ứng dụng trong thực tế. Trang ii MỤC LỤC Chương 1 MỘT SỐ VẤN ĐỀ VỀ BẢO MẬT ......................................................5 1.1 Vấn đề an toàn mạng .......................................................................................5 1.1.1 Giao thức bảo mật ngăn cách (tách rời) ......................................................5 1.1.2 Bảo mật đặc tả ứng dụng .............................................................................6 1.1.3 Bảo mật với các giao thức trung tâm...........................................................7 1.1.4 Giao thức bảo mật song song ......................................................................8 1.2 Vấn đề mã hoá .................................................................................................9 1.2.1 Khái niệm mã hoá........................................................................................9 1.2.2 Hệ mã hoá đối xứng ..................................................................................10 1.2.3 Hệ mã hoá phi đối xứng ............................................................................10 1.2.4 Chứng chỉ khoá công khai.........................................................................11 1.3 Vấn đề ký số ..................................................................................................12 1.4 Vấn đề xác thực số.........................................................................................13 Chương 2 KHE CẮM AN TOÀN (SSL) .............................................................16 2.1 Tổng quan về SSL .........................................................................................16 2.1.1 Lịch sử SSL ...............................................................................................16 2.1.2 Cơ bản về SSL...........................................................................................16 2.1.3 SSL và ứng dụng thương mại điện tử........................................................19 2.2 Giao thức bản ghi (Record Protocol).............................................................20 2.3 Giao thức ChangeCipherSpec .......................................................................23 2.4 Giao thức cảnh báo (Alert Protocol) .............................................................23 2.4.1 Kiểu Closure Alert.....................................................................................24 2.4.2 Kiểu Error Alert.........................................................................................24 2.5 Giao thức bắt tay (Handshake Protocol) .......................................................25 2.5.1 Giai đoạn 1 : Các thông điệp Hello cho kết nối logic ...............................28 • 1. Thông điệp HelloRequest ......................................................................28 • 2. Thông điệp ClientHello .........................................................................28 2.5.2 Giai đoạn 2 : Xác thực Server và trao đổi khoá ........................................30 Trang iii • 4. Thông điệp ServerCertificate ................................................................30 • 5. Thông điệp ServerKeyExchange...........................................................32 • 6. Thông điệp CertificateRequest ..............................................................34 • 7. Thông điệp ServerHelloDone................................................................36 2.5.3 Giai đoạn 3 : Xác thực Client và trao đổi khoá .........................................36 • 8. Thông điệp ClientCertificate .................................................................36 • 9. Thông điệp ClientKeyExchange ...........................................................37 • 10. Thông điệp CertificateVerify ..............................................................38 2.5.4 Giai đoạn 4 : Kết thúc kết nối bảo mật......................................................40 • 11. Thông điệp ChangeCipherSpec...........................................................40 • 12. Thông điệp Finished ............................................................................41 2.5.5 Xác thực Server, xác thực client................................................................42 2.5.5.1 Xác thực Server .................................................................................42 2.5.5.2 Xác thực Client..................................................................................43 2.6 Bảo mật của SSL ...........................................................................................45 2.6.1 Các hệ mã hoá sử dụng với SSL................................................................45 2.6.2 Bảo mật của SSL .......................................................................................46 2.7 Ưu điểm và hạn chế của SSL/TLS ................................................................48 2.7.1 Ưu điểm của SSL.......................................................................................48 2.7.2 Hạn chế của SSL .......................................................................................49 2.7.2.1 Các giới hạn giao thức cơ bản ...........................................................49 2.7.2.2 Giới hạn công cụ................................................................................51 2.7.2.3 Các giới hạn môi trường....................................................................51 2.7.3 Tối ưu hoá SSL..........................................................................................52 2.7.3.1 Công nghệ tăng tốc giao dịch SSL ....................................................53 2.7.3.2 Tăng tốc SSL với vấn đề duy trì website (Web site persistence)......55 2.7.3.3 Tăng tốc SSL và content switch ........................................................55 2.7.3.4 Quá trình phát triển của bộ tăng tốc SSL ..........................................56 2.7.3.5 Bộ tăng tốc SSL của SonicWALL ....................................................56 2.7.3.6 Các đặc điểm nổi bật và lợi ích của SonicWALL SSL Offloader ....57 2.7.3.7 Các phương án triển khai...................................................................59 Chương 3 3.1 BẢO MẬT TẦNG GIAO VẬN (TLS)...............................................61 Giới thiệu tổng quan ......................................................................................61 Trang iv 3.2 Thông điệp giao thức cảnh báo .....................................................................62 3.3 Xác thực thông điệp.......................................................................................63 3.4 Sinh nguyên liệu khoá ...................................................................................64 3.5 Xác nhận chứng chỉ .......................................................................................67 3.6 Thông điệp Finished ......................................................................................67 3.7 Các bộ mã cơ sở ............................................................................................68 Chương 4 SỬ DỤNG GIAO THỨC SSL/TLS....................................................69 Tài liệu tham khảo.......................................................................................................77 Trang v Danh sách hình vẽ Hình 1. Vị trí SSL trong mô hình giao thức bảo mật tách rời.........................................5 Hình 2 Bảo mật có thể được gắn trực tiếp vào giao thức ứng dụng................................6 Hình 3. IPSec...................................................................................................................7 Hình 4. Giao thức ứng dụng sử dụng Kerberos...............................................................8 Hình 5. SSL tính toán một mã thông điệp .....................................................................14 Hình 6. Vị trí SSL trong mô hình OSI...........................................................................17 Hình 7. Vị trí giao thức bản ghi trong giao thức SSL ...................................................21 Hình 8. Các giai đoạn thi hành của giao thức bản ghi...................................................21 Hình 9. Cấu trúc một thông điệp SSL Record...............................................................22 Hình 10. Thông điệp ChangeCipherSpec......................................................................23 Hình 11. Định dạng thông điệp Alert ............................................................................24 Hình 12. Vị trí giao thức bắt tay....................................................................................25 Hình 13. Tiến trình bắt tay ............................................................................................26 Hình 14. Thông điệp Certificate....................................................................................31 Hình 15. ServerKeyExchange mang các tham số Diffie-Hellman................................32 Hình 16. ServerKeyExchange mang các tham số RSA.................................................33 Hình 17. ServerKeyExchange sử dụng Fortezza...........................................................33 Hình 18. Server ký một hàm băm của các tham số ServerKeyExchange .....................34 Hình 19. Thông điệp CertificateRequest .......................................................................35 Hình 20. Thông điệp ServerHelloDone.........................................................................36 Hình 21. Thông điệp ClientKeyExchange với RSA .....................................................37 Hình 22. Thông điệp ClientKeyExchange với Diffie-Hellman.....................................38 Hình 23. Thông điệp ClientKeyExchange với Fortezza ...............................................38 Hình 24. CertificateVerify.............................................................................................39 Hình 25. Thông điệp Finished .......................................................................................41 Trang vi Hình 26. Thông điệp Finish bao gồm một hàm băm.....................................................42 Hình 27. Quá trình xác thực server ...............................................................................43 Hình 28. Quá trình xác thực client ................................................................................45 Hình 29. Một bộ tăng tốc trực tuyến .............................................................................54 Hình 30. TLS sử dụng HMAC để sinh đầu ra giả ngẫu nhiên ......................................65 Hình 31. Hàm giả ngẫu nhiên của TLS sử dụng cả MD5 và SHA ...............................66 Hình 32. TLS sử dụng PRF để tạo ra master secret và nguyên liệu khoá.....................67 Hình 33. TLS sử dụng PRF cho các thông điệp Finished .............................................68 Danh sách bảng biểu Bảng 1. Giá trị các kiểu chứng chỉ ................................................................................35 Bảng 2. Sự khác biệt giữa SSL v3.0 và TLSv1.0..........................................................61 Bảng 3. Các thay đổi trong giao thức cảnh báo.............................................................62 Bảng 4. Các bước sinh một đầu ra giả ngẫu nhiên ........................................................64 Trang vii Bảng chú giải một số cụm từ viết tắt CA Certificate Authority (Tổ chức cấp chứng chỉ) Client Máy khách HTTP HyperText Transfer Protocol (Giao thức truyền siêu văn bản) IETF Internet Engineering Task Force LDAP Lightweight Directory Access Protocol MAC Message Authentication Code (Mã xác thực thông điệp) Server Máy chủ SSL Secure Sockets Layer (Khe cắm an toàn) TCP/IP Transfer Control Protocol/Internet Protocol TLS Transport Layer Security (Bảo mật tầng giao vận) Trang viii Giới thiệu Nghiên cứu sử dụng công nghệ SSL/TLS Giới thiệu Việc kết nối giữa một Web browser tới bất kỳ điểm nào trên mạng Internet đi qua rất nhiều các hệ thống độc lập mà không có bất kỳ sự bảo vệ nào với các thông tin trên đường truyền. Không một ai kể cả người sử dụng lẫn Web server có bất kỳ sự kiểm soát nào đối với đường đi của dữ liệu hay có thể kiểm soát được liệu có ai đó thâm nhập vào thông tin trên đường truyền. Để bảo vệ những thông tin mật trên mạng Internet hay bất kỳ mạng TCP/IP nào, SSL (Secure Sockets Layer) đã kết hợp những yếu tố sau để thiết lập được một giao dịch an toàn : đó là khả năng bảo mật thông tin, xác thực và toàn vẹn dữ liệu đến người dùng. SSL được tích hợp sẵn vào các browser và Web server, cho phép người sử dụng làm việc với các trang Web ở chế độ an toàn. Khi Web browser sử dụng kết nối SSL tới server, biểu tượng ổ khóa sẽ xuất hiện trên thanh trạng thái của cửa sổ browser và dòng “http” trong hộp nhập địa chỉ URL sẽ đổi thành “https”. Một phiên giao dịch HTTPS sử dụng cổng 443 thay vì sử dụng cổng 80 như dùng cho HTTP.Tuy nhiên, mặt trái của SSL là làm chậm lại hiệu nǎng thực hiện của ứng dụng. Mức sử dụng tài nguyên hệ thống CPU đòi hỏi trong tiến trình mã hoá và giải mã cho một trang SSL có thể cao hơn từ 10 đến 100% so với các trang không được bình thường. Nếu máy chủ có lưu lượng các trang SSL cao, có thể chúng ta phải cân nhắc tới việc sử dụng thêm một bộ tǎng tốc SSL phần cứng. Đề tài luận văn đề cập đến thuộc lĩnh vực an toàn, xác thực và bảo mật thông tin trên mạng. An toàn thông tin là một yêu cầu rất quan trọng trong việc truyền dữ liệu trên mạng đặc biệt là với các giao dịch thương mại điện tử, còn xác thực là một trong những mục tiêu trọng tâm của các website học tập trực tuyến. Những hậu quả do rò rỉ thông tin gây ra là rất lớn và khó có thể lường hết được. Ngày nay, dù ở Việt Nam, các nhà quản trị mạng đã bắt đầu quan tâm tới lĩnh vực này, nhưng thực sự vẫn chưa có nhiều nghiên cứu được tiến hành chi tiết và việc ứng dụng còn là rất hạn chế. Với xu thế phát triển hiện nay, trên con đường hội nhập với nền công nghệ thông tin của thế giới, chúng ta cần có những hiểu biết sâu sắc và toàn diện về an toàn và bảo mật thông tin. Từ những vấn đề nêu trên, luận văn đã thực hiện việc tiến hành những nghiên cứu chi tiết về một công nghệ bảo mật và xác thực mạng hiện nay đang được sử dụng rất phổ biến là Secure Sockets Layer (SSL), giao thức bảo mật tầng giao vận. Đồng thời cũng đưa ra giới thiệu công nghệ tăng tốc SSL, được sử dụng nhằm tăng hiệu Đặng Thị Huê Trang 1 Giới thiệu Nghiên cứu sử dụng công nghệ SSL/TLS năng của Website. Với khoá luận này, em muốn mang lại cái nhìn chi tiết hơn về công nghệ bảo mật SSL, hy vọng rằng nó sẽ được áp dụng rộng rãi ở Việt Nam trong một tương lai không xa. Nội dung khoá luận được trình bày bao gồm các phần sau : Chương 1 trình bày một số phương pháp bảo mật mạng cùng với các khái niệm cơ bản về mã hoá, xác thực, ký số… Có bốn phương pháp bảo mật mạng. Phương pháp thứ nhất là thêm vào một giao thức (SSL) giữa tầng TCP/IP và HTTP, đó là phương pháp bảo mật mạng tách rời, nó yêu cầu những thay đổi rất nhỏ ở giao thức bên trên và bên dưới nó. Phương pháp thứ hai là bảo mật đặc tả ứng dụng. Phương pháp này thêm trực tiếp các dịch vụ bảo mật vào trong giao thức (Secure HTTP). Phương pháp bảo mật thứ ba là bảo mật với các giao thức trung tâm, tức là các dịch vụ bảo mật được thêm trực tiếp vào giao thức mạng trung tâm, tất cả các dịch vụ bảo mật sẽ trở thành một phần tuỳ chọn của bản thân Internet Protocol, đây chính là kiến trúc IPSEC. IPSEC cũng có rất nhiều tiện ích giống SSL, nó độc lập với giao thức ứng dụng. Và phương pháp bảo mật cuối cùng là bảo mật song song. Ví dụ phổ biến về phương pháp này là giao thức Kerberos. Giao thức Kerberos làm việc như một bộ công cụ mà các giao thức khác có thể sử dụng cho các dịch vụ bảo mật, nhưng bản thân nó không phải là giải pháp bảo mật hoàn toàn. Chương 2 giới thiệu về hoạt động của SSL. SSL là giao thức đa mục đích được phát triển bởi Netscape, có thể hỗ trợ cho rất nhiều ứng dụng. SSL hoạt động bên trên TCP/IP và bên dưới các ứng dụng tầng cao hơn như HTTP, LDAP…SSL cho phép một server có hỗ trợ SSL tự xác thực với một client cũng hỗ trợ SSL, cho phép client tự xác thực với server và cho phép cả hai bên thiết lập một kết nối được mã hoá. Điều này là rất quan trọng với cả hai bên khi có những giao dịch mang tính riêng tư. Ngoài ra dữ liệu còn được bảo vệ nhờ cơ chế tự động phát hiện các xáo trộn hay thay đổi trong thông điệp. Ngày nay, SSL được sử dụng rộng rãi như nền tảng bảo mật cho các Website bán hàng qua mạng thanh toán bằng thẻ tín dụng, các trang tài chính ngân hàng, giao dịch chứng khoán, các dịch vụ của chính phủ như thuế, an ninh xã hội, quân đội….Tuy nhiên việc triển khai SSL cũng còn nhiều hạn chế do sự bảo hộ và kiểm soát chặt chẽ của chính phủ Mỹ. Tiếp theo là mô tả cấu trúc và phương pháp làm việc của các giao thức Record Protocol, ChangeCipherSpec Protocol, Alert Protocol, Handshake Protocol. Đặng Thị Huê Trang 2 Giới thiệu Nghiên cứu sử dụng công nghệ SSL/TLS Record Protocol nhận dữ liệu từ tầng trên gửi xuống, phân nhỏ thành từng block, nén dữ liệu, bổ sung dữ liệu kiểm tra, mã hoá và gửi đi. Khi nhận dữ liệu về tiến trình được thực hiện ngược lại : giải mã, kiểm tra, gỡ nén và sắp xếp lại rồi gửi lại cho tầng trên. ChangeCipherSpec Protocol bao gồm duy nhất một thông điệp, được sử dụng để client báo cho server biết rằng các bản ghi sau này sẽ được bảo vệ với các bộ mã hoá và các khoá đã thoả thuận. Alert Protocol được sử dụng để báo hiệu một lỗi hay một cảnh báo xảy ra trong quá trình truyền thông giữa hai bên. Cũng như các loại thông điệp khác, thông điệp Alert cũng được mã hoá và nén. Handshake Protocol là một phần quan trọng của SSL, nó cho phép client/server thống nhất về phiên bản SSL sử dụng, xác thực mỗi bên bằng cách thi hành một MAC (mã xác thực thông điệp), thoả thuận về thuật toán mã hoá và các khoá lập mã cho việc bảo vệ dữ liệu gửi đi trong một SSL Record trước khi dữ liệu được gửi đi. Phần tiếp theo giới thiệu về cách server xác thực client và ngược lại client xác thực server, các hệ mã hoá được sử dụng với SSL và mức độ bảo mật của SSL... Hạn chế lớn nhất của SSL với người dùng hiện nay là do tốc độ truy cập vào các Website sử dụng SSL còn chậm, trung bình chậm hơn đến 50% tốc độ thông thường khi không sử dụng SSL. Điều này sẽ gây tác dụng không tốt với người sử dụng do phải chờ đợi quá lâu, họ dễ dàng bỏ sang truy cập các Website khác, hoặc nôn nóng khởi tạo lại kết nối. Để khắc phục nhược điểm trên, ngoài một số phương pháp tối ưu hoá như giảm số lượng hình ảnh trên trang web, sử dụng các phần mềm tăng tốc, hiện nay hãng SonicWall đã cho ra một sản phẩm gọi là SSL Accelerator hay SSL offloader dùng để tăng hiệu năng của trang Web. Bộ tăng tốc SSL có thể tăng tốc độ thực hiện các giao dịch SSL lên đến 50 lần. Chương 3 tiếp tục giới thiệu về một phiên bản khác của SSLv3.0 là TLS. TLS về cơ bản là giống SSL nhưng có một số cải tiến đáng kể. Trong chương này, chúng ta sẽ chỉ đi nghiên cứu về các phần mà TLS khác với SSL như các thông điệp cảnh báo, cách xác thực thông điệp, quá trình sinh nguyên liệu khoá, xác nhận chứng chỉ, nội dung thông điệp Finished và các bộ mã được sử dụng với TLS. Đặng Thị Huê Trang 3 Giới thiệu Nghiên cứu sử dụng công nghệ SSL/TLS Phần cuối của luận văn là phần giới thiệu về cách cấu hình IIS và Apache sử dụng bảo mật SSL với các website. Với khoá luận này, chúng tôi muốn giới thiệu về một cơ chế bảo mật (SSL) trong thương mại điện tử, tầm quan trọng cũng như những lợi ích của nó, hy vọng sẽ mang lại một cái nhìn đúng đắn và sâu sắc hơn về vai trò của bảo mật và xác thực qua mạng cũng như xu hướng phát triển của nó trong tương lai. Đặng Thị Huê Trang 4 Chương 1 - Một số vấn đề về bảo mật Nghiên cứu sử dụng công nghệ SSL/TLS Chương 1 MỘT SỐ VẤN ĐỀ VỀ BẢO MẬT 1.1 Vấn đề an toàn mạng Giao thức SSL cung cấp bảo mật hiệu quả cho các phiên giao dịch Web, nhưng nó không phải là phương pháp duy nhất. Kiến trúc mạng dựa trên các tầng giao thức, mỗi tầng dựa trên các dịch vụ bên dưới chúng. Có nhiều tầng giao thức khác nhau có thể hỗ trợ các dịch vụ bảo mật, và mỗi cái lại có những thuận lợi và khó khăn khác nhau. Như chúng ta thấy, các nhà thiết kế ra SSL đã chọn phương pháp là tạo ra một tầng giao thức hoàn toàn mới cho việc bảo mật. Nó có thể bao gồm các dịch vụ bảo mật trong giao thức ứng dụng hoặc thêm chúng vào nhân một giao thức mạng. Một lựa chọn khác là các ứng dụng có thể dựa trên các giao thức song song cho một vài dịch vụ bảo mật. Tất cả các tuỳ chọn này đã được đề cập đến trong việc bảo mật các giao dịch Web, và các giao thức thực tế tồn tại trong mỗi tuỳ chọn. 1.1.1 Giao thức bảo mật ngăn cách (tách rời) Các nhà thiết kế SSL quyết định tạo ra một giao thức ngăn cách cho bảo mật. Trong thực tế, họ đã thêm vào một tầng trong kiến trúc giao thức của Internet. Hình 1. Vị trí SSL trong mô hình giao thức bảo mật tách rời Bên trái hình 1 minh hoạ các giao thức trong cho các truyền thông Web. Bên dưới cùng là Internet Protocol (IP). Giao thức này chịu trách nhiệm hỗ trợ định tuyến các thông điệp truyền trên mạng từ nguồn đến đích của chúng. Transmission Control Protocol (TCP) dựa trên các dịch vụ của IP để bảo đảm rằng truyền thông là tin tưởng được. Trên cùng là Hypertext Transfer Protocol. Bên phải của hình 1, SSL thêm sự bảo mật bằng cách thực thi như một giao thức bảo mật riêng biệt, thêm nó vào giữa HTTP và TCP. Làm việc như một giao thức mới, SSL yêu cầu rất ít sự thay đổi trong Đặng Thị Huê Trang 5 Chương 1 - Một số vấn đề về bảo mật Nghiên cứu sử dụng công nghệ SSL/TLS các giao thức bên trên và bên dưới. Giao diện ứng dụng HTTP với SSL gần giống như với TCP khi không có bảo mật. Bên cạnh việc yêu cầu những thay đổi rất nhỏ để có thể thi hành được, phương pháp này còn có những tiện ích quan trọng khác: nó cho phép SSL hỗ trợ các ứng dụng khác ngoài HTTP. Mục đích chính của việc phát triển SSL là bảo mật Web, nhưng SSL cũng được sử dụng để thêm vào sự bảo mật cho các ứng dụng Internet khác, bao gồm Net News Transfer Protocol (NNTP) và File Transfer Protocol (FTP). 1.1.2 Bảo mật đặc tả ứng dụng Một phương pháp khác là thêm trực tiếp vào các dịch vụ bảo mật vào trong giao thức ứng dụng. Thực tế, chuẩn HTTP có bao gồm một vài thuộc tính bảo mật khá sơ bộ, tuy nhiên các thuộc tính bảo mật đó không cung cấp một sự bảo vệ đầy đủ cho các giao dịch thương mại điện tử thực sự. Trong khi Netscape đang thiết kế SSL, một nhóm các nhà thiết kế giao thức khác cũng đang làm việc trên một thể hiện của HTTP được biết đến như là Secure HTTP. Hình 2 minh họa kiến trúc giao thức này. Chuẩn Secure HTTP được xuất bản bởi IETF như là một giao thức thực nghiệm, và một vài sản phẩm cũng đã hỗ trợ chúng. Tuy nhiên, nó chưa được ưa chuộng như SSL, và hiện nay khó mà có thể tìm thấy Secure HTTP bất kỳ nơi nào trên Internet. Hình 2 Bảo mật có thể được gắn trực tiếp vào giao thức ứng dụng Một trong những bất lợi của việc thêm sự bảo mật vào trong một ứng dụng cụ thể là các dịch vụ bảo mật sẽ chỉ có giá trị trong ứng dụng đó. Ví dụ, không giống như SSL, nó không thể bảo mật cho NNTP, FTP, hay các giao thức ứng dụng khác với Secure HTTP. Một trong những bất tiện của phương pháp này còn là do nó liên kết các dịch vụ bảo mật một cách chặt chẽ với ứng dụng. Mỗi khi giao thức ứng dụng thay đổi, các thi hành bảo mật phải được quan tâm cẩn thận, và các chức năng bảo mật của Đặng Thị Huê Trang 6 Chương 1 - Một số vấn đề về bảo mật Nghiên cứu sử dụng công nghệ SSL/TLS giao thức phải được thay đổi thích hợp. Một giao thức tách rời như SSL cách ly các dịch vụ bảo mật từ giao thức ứng dụng, cho phép mỗi dịch vụ tập chung vào giải quyết các vấn đề của riêng nó một cách có hiệu quả nhất. 1.1.3 Bảo mật với các giao thức trung tâm Phương pháp bảo mật tách rời của SSL có thể tiến thêm một bước xa hơn nếu các dịch vụ bảo mật được thêm trực tiếp vào một giao thức mạng trung tâm. Đây chính là phương pháp của kiến trúc IP Security, tất cả các dịch vụ bảo mật sẽ trở thành một phần tuỳ chọn của bản thân Internet Protocol. Hình 3 thể hiện kiến trúc của IPSEC. Hình 3. IPSec Kiến trúc của IPSEC cũng có rất nhiều tiện ích giống như SSL. Nó độc lập với các giao thức ứng dụng, và bất kỳ giao thức nào cũng có thể sử dụng nó. Trong phần lớn các trường hợp, ứng dụng không cần thay đổi tất cả để tận dụng được các tiện ích của IPSEC. Tuy nhiên, đặc tính này tạo ra một thách thức, đó là IPSEC phải đủ linh hoạt để hỗ trợ tất cả các ứng dụng. Sự phức tạp này có thể là một nhân tố lớn trì hoãn sự phát triển và triển khai IPSEC. Một hạn chế khác của phương pháp IPSEC là nó cung cấp quá nhiều sự liên hệ giữa các dịch vụ bảo mật và ứng dụng. IPSEC hướng tới việc thừa nhận rằng các yêu cầu bảo mật là một chức năng của hệ thống, và tất cả các ứng dụng bên trong hệ thống cần các dịch vụ bảo mật tương tự nhau. Phương pháp SSL cung cấp sự liên hệ giữa các ứng dụng và bảo mật, nhưng nó cũng cho phép tương tác giữa cả hai. Hoạt động bên trong của một ứng dụng như HTTP không cần thay đổi khi sự bảo mật được thêm vào, và đặc biệt là ứng dụng có thể tạo ra quyết định có sử dụng SSL hay không. Hoạt động Đặng Thị Huê Trang 7 Chương 1 - Một số vấn đề về bảo mật Nghiên cứu sử dụng công nghệ SSL/TLS đó tạo sự dễ dàng cho các ứng dụng có thể chọn các dịch vụ bảo mật phù hợp nhất với mình. Bất kể những trở ngại này, IPSEC thêm vào các công cụ bảo mật mới khá hiệu quả trên Internet, vào không còn nghi ngờ gì khi thấy sự triển khai rộng rãi của nó. Tuy nhiên, giao thức SSL cũng có nhiều tiện ích quan trọng và sự triển khai của nó cũng được hy vọng sẽ tăng lên trong tương lai. 1.1.4 Giao thức bảo mật song song Ví dụ phổ biến nhất về phương pháp này là giao thức Kerberos được phát triển bởi Học viện công nghệ Massachusetts. Các nhà nghiên cứu đã phát triển Kerberos cung cấp sự xác thực và điều khiển truy cập tài nguyên trong một môi trường phân tán. Giao thức Kerberos làm việc như là một bộ công cụ mà các giao thức khác có thể sử dụng cho các dịch vụ bảo mật. Ví dụ, một giao thức truy nhập từ xa như Telnet có thể sử dụng Kerberos để bảo mật định danh người dùng của nó. Hình 4. Giao thức ứng dụng sử dụng Kerberos Trong những ngày đầu phát triển trình duyệt Web, một vài thử nghiệm kết hợp việc hỗ trợ Kerberos với HTTP, mặc dù công việc này chưa bao giờ hoàn thành. Thay vào đó, hiện nay có một vài thử nghiệm kết hợp Kerberos với TLS. Trong các ứng dụng như vậy, Kerberos cung cấp một kỹ thuật trao đổi khoá tin tưởng cho TLS. Mặc dù chú ý rằng riêng Kerberos không thể là một giải pháp bảo mật hoàn toàn. Nó không truy cập tới các thông tin thực được trao đổi bởi các tổ chức truyền thông. Không có sự truy cập này, Kerberos không thể cung cấp các dịch vụ lập mã và giải mã. Đặng Thị Huê Trang 8 Chương 1 - Một số vấn đề về bảo mật Nghiên cứu sử dụng công nghệ SSL/TLS 1.2 Vấn đề mã hoá 1.2.1 Khái niệm mã hoá Mã hóa có lẽ là kĩ thuật được dùng lâu đời nhất trong an toàn truyền thông. Hiện nay có nhiều phương pháp mã hóa khác nhau, mỗi phương pháp có ưu, nhược điểm riêng. Tùy theo yêu cầu của môi trường ứng dụng mà người ta có thể lựa chọn dùng phương pháp bảo mật nào. Có những môi trường cần phải an toàn tuyệt đối bất kể thời gian và chi phí. Có những môi trường lại cần giải pháp dung hòa giữa bảo mật và chi phí... Các thông điệp cần chuyển đi và cần được bảo vệ an toàn gọi là bản rõ (plaintext), và được ký hiệu là P. Nó có thể là một dòng vào các bít, các file, âm thanh số hoá,... Bản rõ được dùng để lưu trữ hoặc để truyền đạt thông tin. Trong mọi trường hợp bản rõ là thông điệp cần mã hoá. Quá trình xử lý một thông điệp trước khi gửi được gọi là quá trình mã hoá (encryption). Thông điệp đã được mã hoá được gọi là bản mã (ciphertext) ký hiệu là C. Quá trình xử lý ngược lại từ bản mã thành bản rõ được gọi là quá trình giải mã (decryption). Hệ mật mã là tập hợp các thuật toán, các khóa nhằm che dấu thông tin tin cũng như làm rõ nó. Hệ mật mã được định nghĩa là bộ năm (P,C,K,E,D) trong đó: − P là tập hữu hạn các bản rõ có thể − C là tập hữu hạn các bản mã có thể − K là tập hữu hạn khóa có thể − E là tập các hàm lập mã − D là tập các hàm giải mã. Với mỗi k ∈ K có một hàm lập mã Ek ∈ E(Ek:P → C) và một hàm giải mã Dk ∈ D (Dk : C → P) sao cho Dk(Ek(x)) = x, ∀ x ∈P Hiện nay các hệ mật mã được phân làm hai loại chính là: hệ mật mã đối xứng và hệ mật mã phi đối xứng (hay còn gọi là hệ mật mã khóa công khai) Đặng Thị Huê Trang 9 Chương 1 - Một số vấn đề về bảo mật Nghiên cứu sử dụng công nghệ SSL/TLS 1.2.2 Hệ mã hoá đối xứng Phương pháp mã hoá đối xứng còn được gọi là phương pháp mã hoá khoá bí mật. Với phương pháp này thì người gửi và người nhận sẽ dùng chung một khoá để mã hoá và giải mã dữ liệu. Trước khi mã hoá dữ liệu để truyền đi trên mạng thì hai bên gửi và nhận phải có khoá và phải thống nhất thuật toán dùng để mã hoá và giải mã Nhược điểm chính của phương pháp mã hoá này là làm thế nào để hai bên gửi và nhận có được khoá đúng vì khóa được truyền trên môi trường mạng thì không có tính bảo mật cao, nhưng nó cũng có ưu điểm là tốc độ mã hoá và giải mã rất nhanh. Phương pháp này được sử dụng nhiều để truyền dữ liệu trong phiên làm việc của SSL. Lập mã khoá bí mật sử dụng thuật toán mã hoá Data Encrytion Standard (DES), triplestrength (3DES), Rivest Cipher 2 (RC2), và RC4… 1.2.3 Hệ mã hoá phi đối xứng Mã hoá phi đối xứng (hay còn gọi là mã hoá khoá công khai) đã giải quyết được vấn đề của mã hoá khoá bí mật là sử dụng hai khoá : khoá công khai (public key) và khoá riêng (private key). Khoá công khai được gửi công khai trên mạng, trong khi đó khoá riêng được giữ kín. Khoá công khai và khoá riêng có vai trò trái ngược nhau, một khoá dùng để mã hoá và khoá kia dùng để giải mã. Giả sử B muốn gửi cho A một thông điệp bí mật sử dụng phương pháp mã hoá khoá công khai. Ban đầu A có cả khoá riêng và khoá công khai. A sẽ giữ khoá riêng ở nơi an toàn và gửi khoá công khai nhận được của A. Sau đó A sẽ giải mã thông điệp bằng khoá riêng của mình. Ngược lại nếu A muốn gửi thông điệp cho B thì A phải mã hoá thông điệp bằng khoá công khai của B. Tới đây nảy sinh vấn đề : “giả mã khoá công khai”. Làm sao để A có thể tin được rằng đây là khoá công khai của B. Vì một hacker (kẻ tấn công) có thể tự sinh ra một cặp khoá công khai và khoá riêng, sau đó đưa cho A khoá công khai này và nói đấy là khoá công khai của B. Như thế mọi thông tin A truyền đi đều bị hacker đọc được nếu A dùng khoá công khai giả. Vấn đề này sẽ trở nên một cách đơn giản nếu A tin tưởng một nhân vật thứ 3, gọi là C. Khi đó A chỉ tin tưởng những khoá công khai nào được C chứng nhận. Những khoá công khai đã được C chứng nhận được gọi là chứng chỉ khoá công khai (public key certificate) hay chứng chỉ số (digital certificate). Đặng Thị Huê Trang 10 Chương 1 - Một số vấn đề về bảo mật Nghiên cứu sử dụng công nghệ SSL/TLS Phương pháp này sử dụng thuật toán mã hoá Rivest Shamir Adleman (RSA) và DiffieHellman(DH). Vì phương pháp mã hoá này rất chậm nên chỉ được sử dụng để mã hoá những mẩu dữ liệu nhỏ. 1.2.4 Chứng chỉ khoá công khai Chứng chỉ khoá công khai (public key certificate) dùng để làm cho hai bên client và server xác định chính xác đối tượng của mỗi bên cần giao tiếp vì nhờ có chứng chỉ khoá công khai mà các đối tượng tham gia trong quá trình trao đổi dữ liệu tin cậy khoá công khai mà mình đang sử dụng. Như ví dụ đã nêu trên, giả sử C tạo ra khoá công khai và khoá riêng. C yêu cầu được giao tiếp với A và gửi khoá công khai cho B. Như vậy B sẽ giao tiếp với C nhưng lại tưởng là đang giao tiếp với A. Một chứng chỉ khoá công khai được tạo ra bởi một tổ chức tin cậy, tổ chức này được gọi là Ceriticate Authority (CA). Một khi khoá công khai đã được CA chứng nhận thì có thể dùng khoá đó để trao đổi dữ liệu trên mạng với mức độ bảo mật cao. Cấu trúc của một chứng chỉ khoá công khai : • Issuer : tên của CA tạo ra chứng chỉ • Period of validity : ngày hết hạn của chứng chỉ • Subject: bao gồm những thông tin về thực thể được chứng nhận • Public key : thông tin chính mà chứng chỉ cung cấp là khoá công khai. Tất cả các trường khác được cung cấp để kiểm tra tính hợp lệ của khoá này. • Signature : được tạo bởi khoá riêng của CA và đảm bảo giá trị của chứng chỉ. Nhiều chứng chỉ có thể liên kết với nhau, có nghĩa là một CA có thể tạo ra một chứng chỉ cho một CA khác. Chứng chỉ đầu tiên luôn là của người gửi, sau đó là đến chứng chỉ của thực thể tạo ra chứng chỉ của người gửi. Cuối cùng của chứng chỉ trong mối liên hệ là root CA. Một root CA là một CA công khai có độ tin cậy cao. Thông tin về những root CA được lưu trong trình duyệt Web. Thông tin này bao gồm khoá công khai của CA. Những CA được biết đến nhiều hiện nay như là VeriSign Entrust, và GTECyberTrust. Đặng Thị Huê Trang 11
- Xem thêm -