TIểu luận môn CHỨNG THỰC SỐ TÌM HIỂU VỀ SSL HAI CHIỀU

19 2.2K 2
TIểu luận môn CHỨNG THỰC SỐ TÌM HIỂU VỀ SSL HAI CHIỀU

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC LỜI NÓI ĐẦU 3 CẤU TRÚC CỦA SSL 7 1. Cấu trúc SSL 7 2. Các giao thức của SSL 8 PHƯƠNG THỨC HOẠT ĐỘNG 11 1. Nhận diện 11 2. Các thuật toán mã hóa dùng trong SSL 12 3. Hoạt động 14 ỨNG DỤNG 17 1. Ứng dụng trong Thương mại điện tử 17 2. Các loại giao thức bảo mật khác 17 LỜI NÓI ĐẦU Secure Socket Layer hay còn được biết với tên viết tắt SSL là một giao thức mà rất nhiều dịch vụ có kết nối thông qua Internet có thể sử dụng nhằm tăng cường tính bảo mật. Trước khi nghiên cứu sâu về SSL, hãy cùng hình dung những gì có thể xảy ra khi không có SSL. Chúng ta hãy cùng xem xét đến việc kết nối giữa hay máy tính thông qua Internet và việc giao tiếp giữa con người với nhau thông qua điện thoại. Nếu không có sự xuất hiện của SSL, việc kết nối máy tính – máy tính cũng sẽ gặp những vấn đề tương tự như việc giao tiếp thông qua điện thoại giữa con người và con người: • Bạn đang nói chuyện với ai? Trong quá trình giao tiếp qua điện thoại, làm thế nào để bạn có thể bảo đảm rằng người đang nói chuyện với bạn là người bạn cần gặp và cung cấp thông tin, nhất là khi bạn không biết mặt họ và có khi đây là lần đầu tiên bạn nghe giọng nói của họ? Chuyện gì sẽ xảy ra khi cuộc gọi của bạn đã bị chuyển hướng hoặc có một người nào đó đang trả lời thay cho người bạn muốn gọi? Không có gì chắc chắn rằng bạn đang được nói chuyện với người bạn muốn. • Nghe lén Nếu như thường xuyên xem phim ảnh cũng như đọc sách báo, bạn có thể dễ dàng nhận ra những cuộc gọi điện thoại rất dễ bị thu âm hoặc nghe lén, ví dụ điển hình nhất là việc cảnh sát thực hiện việc ghi âm cuộc gọi nhằm thu thập chứng cứ (mặc dù đây là việc làm hợp pháp). Vậy phải làm thế nào để đảm bảo rằng cuộc giao tiếp của bạn chỉ diễn ra giữa bạn và người bạn mong muốn được bí mật? Từ hai điều trên, chúng ta rút ra được vấn đề tồn đọng trong việc giao tiếp đó là:

1 ĐẠI HỘC QUỐC GIA TP.HỒ CHÍ MINH ĐẠI HỌC CÔNG NGHỆ THÔNG TIN Khoa Kỹ Thuật Máy Tính ¶ MÔN : CHỨNG THỰC SỐ Đề Tài: TÌM HIỂU VỀ SSL HAI CHIỀU Giáo viên hướng dẫn : Sinh viên thực hiện Đặng Thành Vinh – 07520413 Nguyễn Minh Hoàng – 07520132 TP.HỒ CHÍ MINH 4 - 2011 2 MỤC LỤC MỤC LỤC 2 3 LỜI NÓI ĐẦU Secure Socket Layer hay còn được biết với tên viết tắt SSL là một giao thức mà rất nhiều dịch vụ có kết nối thông qua Internet có thể sử dụng nhằm tăng cường tính bảo mật. Trước khi nghiên cứu sâu về SSL, hãy cùng hình dung những gì có thể xảy ra khi không có SSL. Chúng ta hãy cùng xem xét đến việc kết nối giữa hay máy tính thông qua Internet và việc giao tiếp giữa con người với nhau thông qua điện thoại. Nếu không có sự xuất hiện của SSL, việc kết nối máy tính – máy tính cũng sẽ gặp những vấn đề tương tự như việc giao tiếp thông qua điện thoại giữa con người và con người: • Bạn đang nói chuyện với ai? Trong quá trình giao tiếp qua điện thoại, làm thế nào để bạn có thể bảo đảm rằng người đang nói chuyện với bạn là người bạn cần gặp và cung cấp thông tin, nhất là khi bạn không biết mặt họ và có khi đây là lần đầu tiên bạn nghe giọng nói của họ? Chuyện gì sẽ xảy ra khi cuộc gọi của bạn đã bị chuyển hướng hoặc có một người nào đó đang trả lời thay cho người bạn muốn gọi? Không có gì chắc chắn rằng bạn đang được nói chuyện với người bạn muốn. • Nghe lén! Nếu như thường xuyên xem phim ảnh cũng như đọc sách báo, bạn có thể dễ dàng nhận ra những cuộc gọi điện thoại rất dễ bị thu âm hoặc nghe lén, ví dụ điển hình nhất là việc cảnh sát thực hiện việc ghi âm cuộc gọi nhằm thu thập chứng cứ (mặc dù đây là việc làm hợp pháp). Vậy phải làm thế nào để đảm bảo rằng cuộc giao tiếp của bạn chỉ diễn ra giữa bạn và người bạn mong muốn được bí mật? Từ hai điều trên, chúng ta rút ra được vấn đề tồn đọng trong việc giao tiếp đó là: 4 1. Bảo đảm bạn đang kết nối với đúng người mình mong muốn. 2. Bảo đảm rằng cuộc đối thoại hoặc tài liệu của bạn hoàn toàn bí mật. SSL ra đời nhằm giải quyết hai vấn đề trên. 5 LỊCH SỬ HÌNH THÀNH Như chúng ta đã biết có hai giao thức bảo mật quan trọng lớp vận chuyển (Layer Transport) có tầm quan trọng cao nhất đối với sự bảo mật của các trình ứng dụng trên Web: đó là hai giao thức SSL và TLS. Vào những năm 1990, Netscape Communication đã giới thiệu SSL và một giao thức tương ứng với phiên bản đầu tiên của Netscape Navigator. Trái với tập đoàn các tập đoàn bảo mật khác, Netscape Communications đã không tính phí các khách hàng của nó về việc thực thi giao thức bảo mật của nó. Kết quả, SSL trở thành giao thức nổi bật để cung cấp các dịch vụ bảo mật cho lưu lượng dữ liệu HTTP 1994 và lặng lẽ biến mất. Cho đến bây giờ, có ba phiên bản của SSL: 1. SSL 1.0: được sử dụng nội bộ chỉ bởi Netscape Communications. Nó chứa một số khiếm khuyết nghiêm trọng và không bao giờ được tung ra bên ngoài. 2. SSL 2.0: được kết nhập vào Netscape Communications 1.0 đến 2.x. Nó có một số điểm yếu liên quan đến sự hiện thân cụ thể của cuộc tấn công của đối tượng trung gian. Trong một nỗ lực nhằm dùng sự không chắc chắn của công chúng về bảo mật của SSL, Microsoft cũng đã giới thiệu giao thức PCT (Private Communication Technology) cạnh tranh trong lần tung ra Internet Explorer đầu tiên của nó vào năm 1996. 3. Netscape Communications đã phản ứng lại sự thách thức PCT của Microsoft bằng cách giới thiệu SSL 3.0 vốn giải quyết các vấn đề trong SSL 2.0 và thêm một số tính năng mới. Vào thời điểm này, Microsoft nhượng bộ và đồng ý hỗ trợ SSL trong tất cả các phiên bản phần mềm dựa vào TCP/IP của nó (mặc dù phiên bản riêng của nó vẫn hỗ trợ PCT cho sự tương thích ngược). Thông số kỹ thuật mới nhất của SSL 3.0 đã được tung ra chính thức vào tháng 3 năm 1996. Nó được thực thi trong tất cả các trình duyệt chính bao gồm ví dụ Microsoft 6 Internet Explorer 3.0 (và các phiên bản cao hơn), Netscape Navigator 3.0 (và các phiên bản cao hơn), và Open. Như được thảo luận ở phần sau trong chương này, SSL 3.0 đã được điều chỉnh bởi IETF TLS WG. Thực tế, thông số kỹ thuật giao thức TLS 1.0 dẫn xuất từ SSL 3.0. Hai phần tiếp theo tập trung chỉ vào các giao thức SSL và TLS; giao thức PCT không được trình bầy thêm trong các bài viết sắp tới. 7 CẤU TRÚC CỦA SSL 1. Cấu trúc SSL SSL được thiết kế như là một giao thức riêng cho vấn đề bảo mật có thể hỗ trợ cho rất nhiều ứng dụng. Giao thức SSL hoạt động bên trên TCP/IP và bên dưới các giao thức ứng dụng tầng cao hơn như là HTTP (Hyper Text Transport Protocol), IMAP ( Internet Messaging Access Protocol) và FTP (File Transport Protocol). Trong khi SSL có thể sử dụng để hỗ trợ các giao dịch an toàn cho rất nhiều ứng dụng khác nhau trên Internet, thì hiện nay SSL được sử dụng chính cho các giao dịch trên Web. SSL không phải là một giao thức đơn lẻ, mà là một tập các thủ tục đã được chuẩn hoá để thực hiện các nhiệm vụ bảo mật sau: • Xác thực server: Cho phép người sử dụng xác thực được server muốn kết nối. Lúc này, phía browser sử dụng các kỹ thuật mã hoá công khai để chắc chắn rằng certificate và public ID của server là có giá trị và được cấp phát bởi một CA (certificate authority) trong danh sách các CA đáng tin cậy của client. Điều này rất quan trọng đối với người dùng. Ví dụ như khi gửi mã số credit card qua mạng thì người dùng thực sự muốn kiểm tra liệu server sẽ nhận thông tin này có đúng là server mà họ định gửi đến không. • Xác thực Client: Cho phép phía server xác thực được người sử dụng muốn kết nối. Phía server cũng sử dụng các kỹ thuật mã hoá công khai để kiểm tra xem certificate và public ID của server có giá trị hay không và được cấp phát bởi một CA (certificate authority) trong danh sách các CA đáng tin cậy của server không. Điều này rất quan trọng đối với các nhà cung cấp. Ví dụ như khi một ngân hàng định gửi các thông tin tài chính mang tính bảo mật tới khách hàng thì họ rất muốn kiểm tra định danh của người nhận. 8 • Mã hoá kết nối: Tất cả các thông tin trao đổi giữa client và server được mã hoá trên đường truyền nhằm nâng cao khả năng bảo mật. Điều này rất quan trọng đối với cả hai bên khi có các giao dịch mang tính riêng tư. Ngoài ra, tất cả các dữ liệu được gửi đi trên một kết nối SSL đã được mã hoá còn được bảo vệ nhờ cơ chế tự động phát hiện các xáo trộn, thay đổi trong dữ liệu. ( đó là các thuật toán băm – hash algorithm). 2. Các giao thức của SSL Các giao thức con của SSL trong mô hình TCP/IP SSL là giao thức tầng (layered protocol), bao gồm 4 giao thức con được chia thành hai phần như sau: • Thành phần thứ nhất được gọi là record protocol, được đặt trên đỉnh của các giao thức lớp vận chuyển. 9 Nhiệm vụ của record protocol • Thành phần thứ hai đặt giữa các lớp giao thức tầng ứng dụng (như HTTP) và record protocol, bao gồm các giao thức: o Handshake protocol o Change-cipher-spec protocol o Aleart protocol Các giao thức ở thành phần thứ hai có nhiệm vụ là: • Handshake: thành lập các giải thuật mã hóa, giải thuật nén và các thông số được hai bên sử dụng trong trao đổi dữ liệu được mã hóa. Sau đó các giao thức bản ghi (record protocol) chịu trách nhiệm phân chia thông điệp vào các khối, nén mỗi khối lại, chứng thực chúng, mã hóa chúng, thêm header vào mỗi khối và truyền đi các khối kết quả. • Change-cipher-spec cho phép các bên giao tiếp có thể thay đổi các giải thuật hoặc các thông số trong một phiên truyền thông. • Alert là một giao thức quản lý, nó thông báo cho các bên tham gia truyền thông khi có vấn đề xảy ra. Theo biểu đồ trên, SSL nằm trong tầng ứng dụng của giao thức TCP/IP. Do đặc điểm này, SSL có thể được dùng trong hầu hết mọi hệ điều hành hỗ trợ TCP/IP mà không cần 10 phải chỉnh sửa nhân của hệ thống hoặc ngăn xếp TCP/IP. Điều này mang lại cho SSL sự cải tiến mạnh mẽ so với các giao thức khác như IPSec (IP Security Protocol). Vì giao thức này đòi hỏi nhân hệ điều hành phải hỗ trợ và chỉnh sửa ngăn xếp TCP/IP. SSL cũng có thể dễ dàng vượt qua tường lửa và proxy, cũng như NAT (Network Address Translation) mà không cần nguồn cung cấp. [...]... điệp client-hello Phiên 2: server xác thực và trao đổi khóa Server sẽ gửi cho client: o Chứng chỉ khóa công khai của server o Thông tin trao đổi khóa của server 16 - o Yêu cầu chứng chỉ khóa công khai của client Phiên 3: client xác nhận và trao đổi khóa Client trả lời cho server các thông tin: o Chứng chỉ khóa công khai của client o Thông tin trao đổi khóa công khai của client Phiên 4: hoàn thành việc... chuẩn về xác thực số đang được được chính phủ Mỹ sử dụng • KEA (Key Exchange Algorithm) là một thuật toán trao đổi khoá đang được chính phủ Mỹ sử dụng • MD5 (Message Digest algorithm) được phát thiển bởi Rivest • RSA: là thuật toán mã hoá công khai dùng cho cả quá trình xác thực và mã hoá dữ liệu được Rivest, Shamir, and Adleman phát triển • RSA key exchange: là thuật toán trao đổi khoá dùng trong SSL. .. khai, từ khoá chia sẻ tạm thời được sinh ra tại thời điểm trao đổi giữa hai ứng dụng là tạo ngẫu nhiên và bí mật đối với người quan sát trên mạng máy tính Ngoài ra, giao thức SSL còn đòi hỏi ứng dụng chủ phải được chứng thực bởi một đối tượng lớp thứ ba (CA) thông qua chứng chỉ điện tử (digital certificate) dựa trên mật mã công khai (thí dụ RSA) 1 Nhận diện Để client và server có thể nhận diện được... lập kết nối SSL bắt đầu bằng việc trao đổi các tham số mã hoá và sau đó xác nhận các server một cách tuỳ ý (dùng gia thức SSL Handshake) Nếu “bắt tay” (Handshake) thành công, cả hai chiều đều chấp nhận bộ mã hoá chung và các khoá mã hoá, thì dữ liệu ở tầng ứng dụng (thông thường dùng HTTP, nhưng cũng có thể là một giao thức khác) có thể được gửi thông qua đường hầm (tunnel) mã hoá (dùng SSL Record Layer)... Layer) Trong thực tế, tiến trình trên còn phức tạp hơn một chút Để tránh những cái “bắt tay” không cần thiết, một số tham số mã hoá được giữ lại Các thông báo được gửi đi Bộ mã hoá cũng có thể được thay đổi Tuy nhiên, bất chấp các đặc điểm kĩ thuật đó, cách thức phổ biến nhất của tiến trình này làm việc thực sự như trên 17 ỨNG DỤNG 1 Ứng dụng trong Thương mại điện tử Trong thực tiễn, sự hiểu biết của... là thay thế SSL Tuy nhiên giao thức này đã không bao giờ thu được kết quả phổ biến như là SSL v3.0 SSL v3.0 Được phát hành vào năm 1996 bởi Netscape Communications SSL v3.0 giải quyết hầu hết các vấn đề của SSL v2.0 và kết hợp rất nhiều thành phần của PCT Nhanh chóng sau đó nó trở thành giao thức phổ biến nhất cho an toàn truyền thông trên World Wide Web TLS v1.0 (được biết đến như là SSL v3.1) Được... hay mã hoá lại lưu lượng tại cổng vào của WAP Nói tóm lại, mặc dù trong thực tế có nhiều giao thức “an toàn” nhưng ta chỉ nên dùng hai giao thức giao dịch web (ít nhất tại thời điểm này) là: TLS v1.0 và SSL v3.0 Cả hai đều được nhấn mạnh trong loạt bài này với cái tên đơn giản là SSL/ TLS Bởi những điểm yếu kém đã được biết đến của SSL v2.0 và “lỗ hổng WAP” nổi tiếng của WTLS, chúng ta nên tránh dùng... dài khoá 40 bit), thuật toán xác thực MD5 • Thuật toán mã hoá RC2 (với độ dài khoá 40 bit), thuật toán xác thực MD5 Yếu nhất • Không mã hoá thông tin, chi dùng thuật toán xác thực MD5 3 Hoạt động Biểu đồ dưới đây sẽ chỉ ra một cách đơn giản với từng bước quá trình thiết lập kết nối SSL giữa máy khách (client – dùng một đường dẫn web browser) và máy chủ (server – dùng một SSL web server) 15 - Phiên 1:... dùng trong SSL Các thuật toán mã hoá (cryptographic algorithm hay còn gọi là cipher) là các hàm toán học được sử dụng để mã hoá và giải mã thông tin Giao thức SSL hỗ trợ rất nhiều các thuật toán mã hoá, được sử dụng để thực hiện các công việc trong quá trình xác thực server và client Client và server có thể hỗ trợ các bộ mật mã (cipher suite) khác nhau tuỳ thuộc vào nhiều yếu tố như phiên bản SSL đang... trợ trong SSL mà sử dụng thuật toán trao đổi khoá RSA và được liệt kê theo khả năng bảo mật từ mạnh đến yếu Mạnh nhất • Thuật toán mã hoá 3- DES, thuật toán xác thực SHA-1 Mạnh • Thuật toán mã hoá RC4 (với độ dài khoá 128 bit), thuật toán xác thực MD5 • Thuật toán mã hoá RC2 (với độ dài khoá 128 bit), thuật toán xác thực MD5 • Thuật toán mã hoá DES (với độ dài khoá 56 bit), thuật toán xác thực SHA –1 . CÔNG NGHỆ THÔNG TIN Khoa Kỹ Thuật Máy Tính ¶ MÔN : CHỨNG THỰC SỐ Đề Tài: TÌM HIỂU VỀ SSL HAI CHIỀU Giáo viên hướng dẫn : Sinh viên thực hiện Đặng Thành Vinh – 07520413 Nguyễn Minh Hoàng. và Open. Như được thảo luận ở phần sau trong chương này, SSL 3.0 đã được điều chỉnh bởi IETF TLS WG. Thực tế, thông số kỹ thuật giao thức TLS 1.0 dẫn xuất từ SSL 3.0. Hai phần tiếp theo tập. Ngoài ra, giao thức SSL còn đòi hỏi ứng dụng chủ phải được chứng thực bởi một đối tượng lớp thứ ba (CA) thông qua chứng chỉ điện tử (digital certificate) dựa trên mật mã công khai (thí dụ RSA).

Ngày đăng: 20/12/2014, 15:00

Từ khóa liên quan

Mục lục

  • MỤC LỤC

Tài liệu cùng người dùng

Tài liệu liên quan