paint-brush
Hướng dẫn đơn giản về chứng chỉ TLS 📝từ tác giả@jaypmedia
871 lượt đọc
871 lượt đọc

Hướng dẫn đơn giản về chứng chỉ TLS 📝

từ tác giả Jean-Paul Rustom8m2023/08/09
Read on Terminal Reader

dài quá đọc không nổi

Để đảm bảo liên lạc an toàn qua internet công cộng, JayP cần giải quyết các vấn đề về xác thực, bảo mật và toàn vẹn. Chứng chỉ kỹ thuật số đóng một vai trò quan trọng trong việc giải quyết những vấn đề này. Họ xác minh danh tính của các trang web như YouTube và ngăn chặn các cuộc tấn công trung gian bằng cách xác nhận nguồn gốc của khóa công khai. Tổ chức phát hành chứng chỉ (CA) ký chứng chỉ kỹ thuật số, tạo ra một chuỗi tin cậy. Các hệ điều hành bao gồm các CA gốc đáng tin cậy và các trang web lấy chứng chỉ trung gian từ các CA. Trình duyệt xác minh tính xác thực của chứng chỉ thông qua băm và giải mã, đảm bảo kết nối an toàn. Ba loại chứng chỉ TLS được giải thích: Miền đơn (cho một miền cụ thể), Ký tự đại diện (cho miền chính và miền phụ) và Đa miền (SAN, cho nhiều miền không liên quan trong một chứng chỉ).
featured image - Hướng dẫn đơn giản về chứng chỉ TLS 📝
Jean-Paul Rustom HackerNoon profile picture
0-item

Giả sử JayP muốn kết nối với youtube.com qua internet công cộng. Trước khi bất kỳ giao tiếp nào diễn ra, một số lo ngại sẽ nảy sinh:


Làm thế nào anh ấy có thể xác minh rằng anh ấy thực sự đang giao tiếp với youtube? (Xác thực)

Làm sao JayP có thể biết rằng không ai chặn tin nhắn của anh ấy? (Bảo mật)

Ngoài ra, làm thế nào anh ta có thể chắc chắn rằng không ai thay đổi tin nhắn? (Chính trực)


Chà, hãy giải quyết từng vấn đề một cách riêng biệt. Trước hết, JayP hãy xác minh danh tính của Youtube . Để làm được điều đó, anh ấy cần khóa công khai của Youtube. Khóa công khai đại diện cho danh tính của youtube.


Vấn đề

Vấn đề là, những kẻ tấn công đã nghĩ ra nhiều cách để chặn yêu cầu từ máy tính này đến máy tính khác trên Internet và khởi động một cuộc tấn công trung gian . Với kiểu tấn công này, kẻ tấn công Chady của chúng tôi sẽ tiêm khóa công khai của chính anh ta và khiến JayP nghĩ rằng anh ta đang giao tiếp với Youtube, trong khi thực tế, anh ta đang giao tiếp với Chady.


Chady lẻn vào và gửi khóa công khai của NGÀI


Chady lẻn vào và gửi khóa công khai của NGÀI.


Bây giờ bạn có thể nghĩ, đáng sợ, phải không? Hãy tưởng tượng những gì có thể xảy ra với kiểu tấn công này, từ việc đánh cắp thông tin cá nhân như thông tin đăng nhập hoặc chi tiết thẻ tín dụng đến phân phối phần mềm độc hại hoặc các mục tiêu độc hại khác. Vậy thì làm sao JayP có thể chắc chắn rằng khóa công khai mà anh ấy nhận được thực sự đến từ Youtube? Đó là lúc chứng chỉ kỹ thuật số ra đời. (TADAAA)


Mẫu chứng chỉ TLS


Họ đảm bảo rằng khóa công khai thực sự đến từ Youtube chứ không phải từ Chady độc hại. Thực ra chứng thư số không chỉ dùng được cho HTTPS mà còn dùng được cho mail, IOT, VPN…


Thông tin Bên trong Chứng chỉ TLS

Một chứng thư số sẽ chứa khá nhiều thông tin, hãy cùng khám phá những thông tin quan trọng nhất:


Chứng chỉ của Youtube như được hiển thị trong trình duyệt Chrome


  • Tổ chức phát hành là bên thứ ba đã ký chứng chỉ này, chúng ta sẽ tìm hiểu về vấn đề này sau. Một số thông tin cơ bản sẽ bao gồm Tên chung, tổ chức và quốc gia.

  • Tất nhiên, chứng chỉ kỹ thuật số cũng sẽ bao gồm Hiệu lực của nó, với hai trường quan trọng, không phải trước và không phải sau

  • Đối tượng là chủ sở hữu của chứng chỉ và sẽ là Youtube trong trường hợp của chúng tôi. Chủ đề sẽ chứa thông tin như tên chung, địa chỉ và quan trọng nhất là khóa chung.

  • Cuối cùng, chứng chỉ kỹ thuật số bao gồm Chữ ký của nó. Đây là chữ ký của tổ chức phát hành chứng minh rằng chứng chỉ này là xác thực.


    Cơ quan cấp chứng chỉ


Ai ký chứng thư số?

Chứng chỉ kỹ thuật số được ký bởi các tổ chức được gọi là cơ quan cấp chứng chỉ (ví dụ: DigiCert, Comodo, Symantec, Google Trust Services).

Nhưng chờ đã, cơ quan cấp chứng chỉ là gì?

Tóm lại, Cơ quan cấp chứng chỉ là các tổ chức bên thứ ba đáng tin cậy chịu trách nhiệm cấp chứng chỉ kỹ thuật số.

Cơ quan cấp chứng chỉ


Cơ quan cấp chứng chỉ có khóa công khai và khóa riêng. Từ đó, hãy giải thích cách tạo chữ ký.


Chẳng hạn, thông tin được đề cập trước đây có trong chứng chỉ kỹ thuật số sẽ được băm bằng thuật toán SHA-256 . Sau khi hàm băm được tạo, cơ quan cấp chứng chỉ sẽ mã hóa hàm băm bằng khóa riêng của nó bằng cách sử dụng mã hóa khóa bất đối xứng RSA. Hàm băm được mã hóa này là chữ ký của chứng chỉ và chỉ có thể được giải mã bằng khóa công khai của tổ chức phát hành chứng chỉ. Bất kỳ ai có khóa công khai của tổ chức phát hành chứng chỉ đã ký chứng chỉ này đều có thể giải mã và xác minh rằng chứng chỉ là xác thực và không bị giả mạo.


Khi trình duyệt nhận được chứng chỉ, nó sẽ băm tất cả thông tin về phía nó bằng cách sử dụng cùng một thuật toán băm, trong ví dụ này là SHA-256. Sau đó, nó giải mã chữ ký bằng khóa công khai của tổ chức phát hành chứng chỉ để nhận hàm băm từ tổ chức phát hành chứng chỉ. Nếu cả hai giá trị băm khớp nhau thì trình duyệt có thể xác nhận rằng chứng chỉ này thực sự đến từ cơ quan cấp chứng chỉ đã yêu cầu.


Hệ thống phân cấp cho cơ quan cấp chứng chỉ

Hệ thống phân cấp tồn tại cho cơ quan cấp chứng chỉ - cơ quan cấp chứng chỉ gốc và cơ quan cấp chứng chỉ trung gian.



Cơ quan cấp chứng chỉ gốc & trung gian



Các CA gốc này không thực sự trực tiếp cấp bất kỳ chứng chỉ kỹ thuật số nào cho máy chủ. Nó chỉ cấp chứng chỉ kỹ thuật số cho các CA trung gian hoạt động thay mặt nó. Các CA trung gian có thể cấp chứng chỉ số cho một CA trung gian khác hoặc cấp trực tiếp cho một máy chủ.



Do đó, có một chuỗi tin cậy, từ CA gốc đến máy chủ.

Các hệ điều hành đi kèm với một cửa hàng tin cậy, đây là danh sách các cơ quan cấp chứng chỉ gốc đáng tin cậy. Danh sách này được duy trì bởi các công ty sản xuất hệ điều hành như Apple và Microsoft. Tất cả chúng đều yêu cầu cơ quan cấp chứng chỉ gốc phải trải qua một hoặc nhiều cuộc kiểm tra chứng minh độ tin cậy và tính hợp lệ của chúng.


Làm thế nào để tất cả những điều này phù hợp với hình ảnh?

Hãy hình dung toàn bộ quá trình ngay từ đầu.

Trước hết, giả sử youtube.com là một công ty khởi nghiệp hoàn toàn mới. Hiểu được nhu cầu được bảo mật trên internet có sẵn công khai, Youtube sẽ phải sở hữu chứng chỉ kỹ thuật số đáng tin cậy và cung cấp chứng chỉ đó cho khách truy cập.



Bước 1: Youtube đi mua chứng thư số

Đầu tiên, Youtube đi tìm một tổ chức cấp chứng chỉ trung gian. Hãy nhớ rằng cơ quan cấp chứng chỉ trung gian là người trung gian giữa máy chủ và cơ quan cấp chứng chỉ gốc. Trong trường hợp của Youtube, Google có cơ quan cấp chứng chỉ riêng gọi là Google Trust Services.



Sau khi chọn CA trung gian, Youtube đưa ra yêu cầu ký chứng chỉ. Yêu cầu ký chứng chỉ sẽ chứa các thông tin sẽ được đưa vào chứng chỉ số của Youtube, chẳng hạn như tên chung, tổ chức và quan trọng nhất là khóa công khai của Youtube. Youtube sẽ gửi yêu cầu ký chứng chỉ tới CA trung gian.



Cơ quan cấp chứng chỉ trung gian sẽ xác minh CSR có chứa thông tin về chủ sở hữu còn được gọi là chủ thể. Sau đó, nó thêm các trường như thông tin tổ chức phát hành, là thông tin về chứng chỉ trung gian và tính hợp lệ, sau đó ký tất cả thông tin này như đã giải thích trước đây trong quy trình ký. Sau khi ký, tổ chức phát hành chứng chỉ số trung gian sẽ gửi lại chứng chỉ số cho youtube.


Youtube hiện có thể đính kèm chứng chỉ kỹ thuật số mới mua vào máy chủ web của mình.


Bước 2: JayP kết nối với youtube.com để xem các video thể dục


Khi anh ấy kết nối với Youtube, Youtube sẽ gửi chứng chỉ của riêng mình và chứng chỉ của cơ quan cấp chứng chỉ trung gian. Tổ chức phát hành chứng chỉ gốc sẽ không được gửi vì nó có sẵn trên Hệ điều hành của JayP. Chứng chỉ của Youtube sẽ bao gồm thông tin tổ chức phát hành, là cơ quan cấp chứng chỉ trung gian. Do đó, trình duyệt sẽ biết rằng chứng chỉ này được ký bởi Cơ quan cấp chứng chỉ trung gian dịch vụ tin cậy của Google và sẽ có chứng chỉ của nó. Bất kỳ chứng chỉ kỹ thuật số nào cũng sẽ chứa thông tin và chữ ký, như đã giải thích trước đây. Trình duyệt sẽ băm tất cả thông tin để lấy giá trị băm của nó. Sau đó, nó sẽ giải mã chữ ký bằng khóa chung của nhà phát hành, hay nói cách khác, khóa chung của cơ quan cấp chứng chỉ trung gian. Một lần nữa, hãy nhớ rằng chữ ký chỉ có thể được giải mã bằng khóa công khai của nhà phát hành. Sau đó, trình duyệt sẽ so sánh hai giá trị băm, nếu chúng giống nhau, thì phần này của chuỗi được xác minh và trình duyệt sẽ chuyển sang xác minh cơ quan cấp chứng chỉ trung gian vì như đã giải thích, cơ quan cấp chứng chỉ trung gian không được tin cậy trực tiếp bởi các hệ điều hành.



Okay, bây giờ trình duyệt sẽ xác minh chứng chỉ Google Trust Intermediate Certificate Authority. Chứng chỉ trung gian này được ký bởi cơ quan cấp Chứng chỉ gốc Dịch vụ tin cậy của Google. Xin lưu ý rằng trước bước này, chúng tôi có thể có nhiều tổ chức phát hành chứng chỉ trung gian giữa chứng chỉ cuối và chứng chỉ gốc và đối với từng phần của chuỗi, quy trình xác minh tương tự sẽ diễn ra.



Trong ví dụ của chúng tôi, chúng tôi sẽ chỉ dính vào một. Chữ ký của chứng chỉ của tổ chức phát hành chứng chỉ trung gian sẽ được xác minh bằng khóa công khai của tổ chức phát hành chứng chỉ gốc, như đã nêu trước đây. Khi đến cơ quan cấp chứng chỉ gốc, đó là nơi chuỗi kết thúc. Cơ quan cấp chứng chỉ gốc, tự ký, sẽ có sẵn trong cửa hàng ủy thác của hệ điều hành JayPee.




Đó là nó! Trình duyệt, sau khi xác minh này, sẽ hiển thị một biểu tượng khóa đẹp mắt, giống như biểu tượng trong trình duyệt của bạn. Giờ đây, đảm bảo rằng giao tiếp thực sự là với Youtube và nó an toàn (HOORAY)


Ba loại Chứng chỉ tên miền

Trước khi kết thúc, chúng tôi sẽ giải thích ngắn gọn ba loại chứng chỉ TLS chính.


1) Chứng chỉ tên miền đơn

Một chứng chỉ tên miền duy nhất được thiết kế để bảo mật một tên miền đủ điều kiện. Điều đó có nghĩa là chứng chỉ chỉ hợp lệ cho một miền cụ thể và không bao gồm bất kỳ miền phụ hoặc miền bổ sung nào. Ví dụ: đối với miền "www.youtube.com", một chứng chỉ miền sẽ chỉ bảo mật miền đó chứ không phải bất kỳ biến thể nào khác như "academy.youtube.com" hoặc "blog.youtube.com"

Trường hợp sử dụng: Chứng chỉ tên miền đơn lý tưởng khi bạn có một trang web hoặc ứng dụng web không yêu cầu tên miền phụ bổ sung. Chúng là tùy chọn đơn giản và tiết kiệm chi phí nhất để bảo mật một miền cụ thể.


2) Chứng chỉ ký tự đại diện


Tiếp theo, chúng tôi có chứng chỉ ký tự đại diện, là loại chứng chỉ TLS được cấp cho miền chính và tất cả miền phụ của nó bằng một chứng chỉ duy nhất. Dấu hoa thị ký tự đại diện được sử dụng trong trường Tên chung (CN) hoặc trường Tên thay thế chủ đề (SAN) để cho biết rằng bất kỳ miền phụ nào trong miền được chỉ định đều được bảo vệ. Ví dụ: nếu bạn có chứng chỉ ký tự đại diện cho " .youtube.com," thì chứng chỉ đó sẽ bảo mật cho "youtube.com," "academy.youtube.com ," blog.youtube.com", v.v.


Trường hợp sử dụng: Chứng chỉ ký tự đại diện giúp bạn không phải quản lý và gia hạn từng chứng chỉ cho từng miền phụ. Tuy nhiên, cần lưu ý rằng chứng chỉ ký tự đại diện chỉ bao gồm một cấp tên miền phụ. Ví dụ: chứng chỉ ký tự đại diện cho "*.youtube.com" sẽ không bao gồm "academy.blog.youtube.com".


3) Chứng chỉ đa miền (SAN)


Chứng chỉ đa miền, còn được gọi là chứng chỉ Tên thay thế chủ đề, cho phép bạn bảo mật nhiều miền không liên quan trong một chứng chỉ. Mỗi tên miền hoặc tên miền phụ được bảo mật được liệt kê trong phần mở rộng Tên thay thế chủ đề (SAN) của chứng chỉ.


Ví dụ: Google và các công ty lớn khác sẽ sử dụng các chứng chỉ đa miền này. Một trong những lợi ích chính sẽ là Quản lý chứng chỉ được đơn giản hóa: Google vận hành rất nhiều dịch vụ web và ứng dụng, mỗi ứng dụng có tên miền hoặc tên miền phụ riêng. Việc sử dụng chứng chỉ đa miền cho phép họ hợp nhất việc quản lý chứng chỉ cho nhiều miền hoặc miền phụ thành một chứng chỉ duy nhất. Điều này hợp lý hóa quá trình cấp, gia hạn và giám sát chứng chỉ.



Và, Thế là xong. Hãy dành chút thời gian để xem bài học hoạt hình.

Trong bài viết tiếp theo của tôi, tôi sẽ thảo luận về mã hóa với TLS.


Cũng được xuất bản ở đây.