SSL CHỈ có tác dụng BẢO MẬT ĐƯỜNG TRUYỀN DỮ LIỆU Bảo mật các gói tin được gửi đi trong quá trình vận chuyển - tránh việc chặn gói tin và giải mã chúng khi đang vận chuyển chứ khôngphải c
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA VIỄN THÔNG 2
BÁO CÁO TIỂU LUẬN
MÔN HỌC INTERNET VÀ GIAO THỨC
ĐỀ TÀI: TÌM HIỂU VỀ GIAO THỨC SSL
TPHCM 10/2023
Trang 2Mục lục
I Giới thiệu chung về giao thức SSL 1
1 SSL là gì 1
2 Certificate SSL (chứng chỉ SSL) 2
3 Lợi ích khi sử dụng SSL ? 3
II Chứng chỉ SSL 4
1 Định nghĩa 4
2 Tầm quan trọng và các đặc điểm của trang web có chứng chỉ SSL 4
3 Lợi ích của chứng chỉ SSL 5
III Cấu trúc của giao thức SSL 6
1 Handshake Protocol (Giao thức xác thực): 6
2 Authentication and Key Exchange (Xác thực và Trao đổi Khóa): 6
3 Cipher Suite Selection (Lựa chọn bộ mã hóa): 7
4 Data Transfer (Truyền tải dữ liệu): 7
5 Session Termination (Kết thúc phiên): 7
IV Các thuật toán được sử dụng trong gia thức SSL: 7
1 Mã hóa dữ liệu (Data Encryption): 7
2 Xác thực (Authentication): 7
3 Trao đổi khóa (Key Exchange): 9
4 Băm (Hashing): 9
5 Random Number Generators (RNGs): 10
V Phương thức hoạt động của giao thức SSL 10
1 Asymmetric Cryptography 10
2 Symmetric Cryptography (mật mã đối xứng) 11
3 Truyền dữ liệu qua SSL 11
4 SSL Handshake 12
5 Actual Data Transfer 13
6 Public Key Infrastructure 13
VI Nhiệm vụ của giao thức SSL 14
VII Tổng kết 15
1 Ưu Điểm của SSL: 15
2 Nhược Điểm của SSL: 15
Trang 3I Giới thiệu chung về giao thức SSL
SSL là chữ viết tắt của Secure Sockets Layer là giao thức mã hóa dữ liệu được truyền tải từ máy khách đến server Hosting và ngược lại thông qua trình duyệt Tất cả dữ liệu truyền điều được mã hóa SSL CHỈ có tác dụng BẢO MẬT ĐƯỜNG TRUYỀN DỮ LIỆU (Bảo mật các gói tin được gửi đi trong quá trình vận chuyển - tránh việc chặn gói tin và giải mã chúng khi đang vận chuyển) chứ khôngphải cứ có SSL là website của Bạn không bị hack
1 SSL là gì
SSL ban đầu được Netscape phát triển, sau đó được IETF chuẩn hóa Cả SSL
và S-HTTP đáp ứng tốt yêu cầu bảo mật cho thương mại điện tử, kể cả việc tránh nghe trộm hoặc giả mạo
Với SSL, Trình duyệt (tại máy khách) và server kiểm tra tính hợp lệ lẫn nhau, sau đó mã hóa dữ liệu truyền trong một lần làm việc Thủ tục này khẳng định máy khách rằng Web server là hợp lệ trước khi máy khách gởi lên thông tin cần giữ bí mật, và cho phép Web server kiểm tra lại người dùng là hợp lệ trước khi cho họ truy cập hoặc gửi các gói tin
Trong mô hình này yêu cầu có giấy chứng nhận dùng kỹ thuật số, chính là
"Certification Systems"
Trang 42 Certificate SSL (chứng chỉ SSL)
Nếu website của Bạn có chức năng đăng nhập, thanh toán online thì BẮt BUỘC phải sử dụng SSL để đảm bảo an toàn
Có hai lý do chính khiến bạn cần sử dụng SSL Lý do đầu tiên và cũng là phổ biến nhất đó là bạn muốn chấp nhận thanh toán bằng thẻ tín dụng trên trang web của mình Lý do thứ hai là bạn có thể có các thông tin mật và bạn muốn bảo mật nó ngay
cả khi nó được truy cập thông qua trang web Chứng chỉ SSL cũng giúp bảo vệ mật khẩu của bạn khi bạn truy cập vào các trang web bảo mật
Chứng chỉ SSL
Trang 53 Lợi ích khi sử dụng SSL ?
Xác thực website, giao dịch
Nâng cao hình ảnh, thương hiệu và uy tín doanh nghiệp
Bảo mật các giao dịch giữa khách hàng và doanh nghiệp, các dịch vụ truy nhập hệ thống
Bảo mật webmail và các ứng dụng như Outlook Web Access, Exchange,
và Office Communication Server
Bảo mật các ứng dụng ảo hó như Citrix Delivery Platform hoặc các ứng dụng điện toán đám mây
Bảo mật dịch vụ FTP
Bảo mật truy cập control panel
Bảo mật các dịch vụ truyền dữ liệu trong mạng nội bộ, file sharing, extranet
Bảo mật VPN Access Servers, Citrix Access Gateway …
1 Định nghĩa
Chứng chỉ SSL (Secure Sockets Layer) là một loại chứng chỉ số dùng để bảo vệ giao tiếp an toàn qua mạng internet Chứng chỉ SSL giúp mã hóa dữ liệu truyền qua mạng và xác minh tính xác thực của các trang web, đảm bảo rằng thông tin của bạn không bị lộ ra ngoài hoặc bị thay đổi trong quá trình truyền tải
Trang 6Chứng chỉ SSL chứa thông tin về tổ chức hoặc cá nhân sở hữu trang web và được ký số bởi một tổ chức cung cấp chứng chỉ SSL (CA - Certificate Authority) đáng tin cậy Khi trình duyệt web kết nối đến một trang web sử dụng chứng chỉ SSL, nó kiểm tra chứng chỉ này để đảm bảo rằng trang web đó là trái với một trang web giả mạo và rằng kết nối đó được mã hóa và an toàn
Chứng chỉ SSL còn được gọi là chứng chỉ TLS (Transport Layer Security), và TLS là phiên bản mới hơn của SSL TLS là một phiên bản nâng cấp của SSL và được
sử dụng rộng rãi hơn trong các ứng dụng và trang web an toàn hiện nay
2 Tầm quan trọng và các đặc điểm của trang web có chứng chỉ SSL
a Tầm quan trọng
Chứng chỉ SSL/TLS tạo nên sự tin tưởng giữa người dùng trang web Các doanh nghiệp cài đặt chứng chỉ SSL/TLS trên các máy chủ web để tạo ra các trang web bảo mật SSL/TLS
b Một trang web bảo mật SSL/TLS có các đặc điểm sau: Biểu tượng ổ khóa và thanh địa chỉ màu xanh lá cây trên trình duyệt web Tiền tố https ở địa chỉ trang web trên trình duyệt
Chứng chỉ SSL/TLS hợp lệ Bạn có thể kiểm tra xem chứng chỉ SSL/TLS có hợp lệ hay không bằng cách nhấp và mở rộng biểu tượng ổ khóa trên thanh địa chỉ URL
Trang 7Một khi kết nối được mã hóa đã được thiết lập thì chỉ có khách hàng và máy chủ web có thể xem dữ liệu được gửi đi
3 Lợi ích của chứng chỉ SSL
a Bảo vệ dữ liệu cá nhân
Trình duyệt xác nhận chứng chỉ SSL/TLS của bất kỳ trang web nào để bắt đầu và duy trì các kết nối an toàn với máy chủ website Công nghệ SSL/TLS giúp đảm bảo mã hóa tất cả các giao tiếp giữa trình duyệt của bạn và trang web
b Tăng cường sự tự tin của khách hàng
Khách hàng hiểu Internet hiểu tầm quan trọng của quyền riêng tư và muốn tin tưởng vào các trang web mà họ đang truy cập Một trang web SSL/TLS được bảo vệ có biểu tượng ổ khóa màu xanh lá cây, mà khách hàng cảm nhận là an toàn Bảo vệ SSL/TLS giúp khách hàng biết rằng dữ liệu của họ đang được bảo vệ khi họ chia sẻ dữ liệu với doanh nghiệp của bạn
c Hỗ trợ việc tuân thủ quy định
Một số doanh nghiệp phải tuân thủ các quy định của ngành về tính bảo mật và bảo vệ dữ liệu Ví dụ, các doanh nghiệp trong ngành công nghiệp thẻ thanh toán phải tuân thủ PCI DSS PCI DSS là một yêu cầu trong ngành để cung cấp các giao dịch trực tuyến an toàn, bao gồm bảo mật máy chủ web bằng chứng chỉ SSL/TLS
d Cải thiện SEO
Các công cụ tìm kiếm lớn đã đưa bảo vệ SSL/TLS trở thành một yếu tố xếp hạng để tối ưu hóa công cụ tìm kiếm Một trang web được bảo đảm SSL/TLS có khả năng sẽ xếp hạng cao hơn trên công cụ tìm kiếm hơn một
Trang 8trang web tương tự mà không có chứng chỉ SSL/TLS Điều này làm tăng khách truy cập từ các công cụ tìm kiếm đến trang web SSL/TLS bảo vệ
III Cấu trúc của giao thức SSL
1 Handshake Protocol (Giao thức xác thực):
ClientHello: Trong bước này, máy khách (trình duyệt hoặc ứng dụng) gửi một thông điệp gọi là "ClientHello" tới máy chủ để bắt đầu quá trình thiết lập kết nối an toàn Thông điệp này bao gồm các thông tin về phiên làm việc và các ciphersuites mà máy khách hỗ trợ
ServerHello: Máy chủ phản hồi bằng một thông điệp "ServerHello," chọn một phiên bản của SSL/TLS, một ciphersuite và cung cấp một chứng chỉ SSL nếu có
2 Authentication and Key Exchange (Xác thực và Trao đổi Khóa):
Server Certificate: Máy chủ gửi chứng chỉ SSL của nó cho máy khách
để xác minh tính xác thực
Key Exchange: Dữ liệu được trao đổi để tạo khóa bí mật chung cho việc
mã hóa và giải mã dữ liệu trong suốt phiên làm việc
3 Cipher Suite Selection (Lựa chọn bộ mã hóa):
Client Key Exchange: Máy khách tạo một khóa chia sẻ bí mật và gửi nó đến máy chủ
Change Cipher Spec: Máy khách và máy chủ thông báo rằng họ sẽ sử dụng khóa mới để mã hóa và giải mã thông tin
Trang 9Finished: Máy khách và máy chủ trao đổi thông điệp "Finished" để xác nhận rằng quá trình thiết lập kết nối an toàn đã hoàn tất
4 Data Transfer (Truyền tải dữ liệu):
Bây giờ, sau khi quá trình thiết lập kết nối an toàn hoàn tất, dữ liệu được truyền qua kết nối bằng cách sử dụng các khóa bí mật được tạo trong quá trình xác thực và trao đổi khóa
5 Session Termination (Kết thúc phiên):
Máy khách hoặc máy chủ có thể chọn kết thúc phiên làm việc an toàn bằng cách gửi thông điệp "close_notify."
IV Các thuật toán được sử dụng trong gia thức SSL:
1 Mã hóa dữ liệu (Data Encryption):
Symmetric Encryption Algorithms (Thuật toán mã hóa đối xứng): Các loại thuật toán này sử dụng cùng một khóa để mã hóa và giải mã dữ liệu Ví dụ bao gồm AES (Advanced Encryption Standard), DES (Data Encryption Standard), và 3DES (Triple Data Encryption Standard) Asymmetric Encryption Algorithms (Thuật toán mã hóa khóa công khai): Các loại thuật toán này sử dụng một cặp khóa - khóa công khai
và khóa riêng tư - để mã hóa và giải mã dữ liệu Ví dụ bao gồm RSA, DSA (Digital Signature Algorithm), và ECC (Elliptic Curve
Cryptography)
2 Xác thực (Authentication):
RSA: RSA được sử dụng trong quá trình xác thực máy chủ và thỏa thuận về khóa chia sẻ
Thuật toán RSA DSA: DSA là một thuật toán xác thực dựa trên chữ ký số
Trang 10Thuật toán DSA
ECDSA (Elliptic Curve Digital Signature Algorithm): ECDSA sử dụng các đường cong elliptic để tạo chữ ký số cho việc xác thực
Thuật toán ECDSA
3 Trao đổi khóa (Key Exchange):
DH (Diffie-Hellman): DH là một thuật toán cho phép máy khách và máy chủ thỏa thuận về một khóa chia sẻ bí mật mà một bên không thể
dự đoán được từ thông tin truyền tải
Trang 11ECDH (Elliptic Curve Diffie-Hellman): ECDH sử dụng đường cong elliptic trong quá trình thỏa thuận về khóa chia sẻ bí mật
4 Băm (Hashing):
SHA-256, SHA-384, SHA-512: Các thuật toán băm
Chẳng hạn như SHA-256, được sử dụng để tạo giá trị băm cho dữ liệu, giúp kiểm tra tính toàn vẹn của dữ liệu
SHA-256
5 Random Number Generators (RNGs):
SSL/TLS sử dụng số ngẫu nhiên để tạo khóa phiên và các tham số bí mật khác Các thuật toán sinh số ngẫu nhiên đảm bảo rằng các khóa và
số ngẫu nhiên này không thể dự đoán được
Https sử dụng giao thức SSL để bảo mật thông tin liên lạc bằng cách truyền dữ liệu được mã hóa Về cơ bản, SSL hoạt động với các khái niệm sau:
Asymmetric Cryptography
Symmetric Cryptography
1 Asymmetric Cryptography
Mật mã bất đối xứng (còn được gọi là Mã hóa không đối xứng hoặc Mật mã khóa công khai) sử dụng một cặp khóa liên quan đến toán học để mã hóa và giải mã dữ liệu Trong một cặp khóa, một khóa được chia sẻ với bất kỳ ai quan tâm đến giao tiếp Nó gọi là Public Key và khóa khác trong cặp khóa được giữ bí mật và được gọi là Private Key
Trang 12Ở đây, các khóa đề cập đến một giá trị toán học và được tạo ra bằng cách sử dụng một thuật toán toán học để mã hóa hoặc giải mã dữ liệu Trong mật mã không đối xứng,
dữ liệu có thể được ký bằng khóa riêng, chỉ có thể được giải mã bằng khóa công khai liên quan trong một cặp
SSL sử dụng mật mã không đối xứng để bắt đầu giao tiếp được gọi là SSL handshake Các thuật toán mã hóa khóa bất đối xứng được sử dụng phổ biến nhất bao gồm EIGamal, RSA, DSA, kỹ thuật đường cong Elliptic và PKCS
2 Symmetric Cryptography (mật mã đối xứng)
Trong mật mã đối xứng, chỉ có một khóa mã hóa và giải mã dữ liệu Cả người gửi
và người nhận đều phải có khóa này mà chỉ họ mới biết
SSL sử dụng mật mã đối xứng bằng cách sử dụng khóa phiên sau khi quá trình bắt tay ban đầu được thực hiện Các thuật toán đối xứng được sử dụng rộng rãi nhất là AES-128, AES-192 và AES-256
3 Truyền dữ liệu qua SSL
Giao thức SSL sử dụng mật mã không đối xứng và đối xứng để truyền dữ liệu một cách
an toàn Hình sau minh họa các bước của giao tiếp SSL
Trang 13Như bạn có thể thấy trong hình trên, giao tiếp SSL giữa trình duyệt và máy chủ web (hoặc bất kỳ hai hệ thống nào khác) chủ yếu được chia thành hai bước: SSL handshake và truyền dữ liệu thực tế
4 SSL Handshake
Giao tiếp qua SSL luôn bắt đầu bằng SSL Handshake Handshake SSL là một mật
mã không đối xứng cho phép trình duyệt xác minh máy chủ web, lấy khóa công khai và thiết lập kết nối an toàn trước khi bắt đầu truyền dữ liệu thực tế
Hình sau minh họa các bước liên quan đến quá trình SSL Handshake:
1 Máy khách gửi thông báo "client hello" Điều này bao gồm số phiên bản SSL của máy khách, cài đặt mật mã, dữ liệu theo phiên cụ thể và thông tin khác mà máy chủ cần giao tiếp với máy khách bằng SSL
2 Máy chủ phản hồi bằng một thông báo "server hello" Điều này bao gồm số phiên bản SSL của máy chủ, cài đặt mật mã, dữ liệu theo phiên cụ thể, chứng
Trang 14chỉ SSL có khóa công khai và thông tin khác mà máy khách cần để giao tiếp với máy chủ qua SSL
3 Máy khách xác minh chứng chỉ SSL của máy chủ từ CA (TCertificate Authority) và xác thực máy chủ Nếu xác thực không thành công, thì máy khách từ chối kết nối SSL và ném một ngoại lệ Nếu xác thực thành công, hãy chuyển sang bước 4
4 Máy khách tạo một session key, mã hóa nó bằng khóa công khai của máy chủ
và gửi đến máy chủ Nếu máy chủ đã yêu cầu xác thực máy khách (chủ yếu là trong giao tiếp máy chủ với máy chủ), thì máy khách sẽ gửi chứng chỉ của chính mình đến máy chủ
5 Máy chủ giải mã khóa phiên bằng khóa riêng của nó và gửi xác nhận đến máy khách được mã hóa bằng khóa phiên
Do đó, khi kết thúc quá trình bắt tay SSL, cả máy khách và máy chủ đều có khóa phiên hợp lệ mà họ sẽ sử dụng để mã hóa hoặc giải mã dữ liệu thực tế Khóa công khai và khóa cá nhân sẽ không được sử dụng nữa sau đó
5 Actual Data Transfer
Máy khách và máy chủ hiện sử dụng khóa phiên dùng chung để mã hóa và giải
mã dữ liệu thực tế và chuyển dữ liệu đó Điều này được thực hiện bằng cách sử dụng cùng một khóa phiên ở cả hai đầu và do đó, nó là một mật mã đối xứng Việc truyền dữ liệu SSL thực tế sử dụng mật mã đối xứng vì nó dễ dàng và tốn ít CUP hơn so với mật
mã không đối xứng
Do đó, về cơ bản SSL hoạt động bằng cách sử dụng mật mã không đối xứng và mật mã đối xứng Có một số cơ sở hạ tầng liên quan đến việc đạt được giao tiếp SSL trong cuộc sống thực, được gọi là Public Key Infrastructure
Trang 156 Public Key Infrastructure
Public Key Infrastructure là một tập hợp các vai trò, chính sách và thủ tục cần thiết
để tạo, quản lý, phân phối, sử dụng, lưu trữ và thu hồi chứng chỉ số và quản lý mã hóa khóa công khai PKI bao gồm các yếu tố sau:
Cơ quan cấp chứng chỉ: Cơ quan xác thực danh tính của các cá nhân, máy tính
và các thực thể khác
Cơ quan đăng ký: CA cấp dưới phát hành chứng chỉ thay mặt cho CA gốc cho các mục đích sử dụng cụ thể
Chứng chỉ SSL: Tệp dữ liệu bao gồm khóa công khai và các thông tin khác
Hệ thống quản lý chứng chỉ: Hệ thống lưu trữ, xác nhận và thu hồi chứng chỉ
Giao thức SSL (Secure Sockets Layer) hoặc phiên bản nâng cấp TLS (Transport Layer Security) có nhiệm vụ chính là bảo vệ tính bảo mật và toàn vẹn của dữ liệu truyền tải qua mạng internet Dưới đây là các nhiệm vụ cụ thể của giao thức SSL/TLS:
1 Mã hóa Dữ liệu: Một trong những nhiệm vụ quan trọng của SSL/TLS là
mã hóa dữ liệu Khi dữ liệu được truyền qua mạng, SSL/TLS sử dụng các thuật toán mã hóa để biến dữ liệu thành dạng không đọc được nếu bị nội dung
bị truy cập bởi bên thứ ba Mã hóa đối xứng và khóa công khai được sử dụng
để đảm bảo tính bảo mật
2 Xác Thực: SSL/TLS giúp xác thực máy chủ và (nếu được sử dụng) máy khách Máy chủ chứng minh tính xác thực của mình thông qua một chứng chỉ
số SSL được ký số bởi một CA (Certificate Authority) Máy khách cũng có thể xác thực máy chủ để đảm bảo rằng họ đang giao tiếp với một máy chủ đúng đắn
3 Trao đổi Khóa: SSL/TLS cho phép máy khách và máy chủ thỏa thuận về một khóa chia sẻ bí mật Quá trình này giúp đảm bảo tính bí mật và toàn vẹn của dữ liệu trong suốt phiên làm việc