Công cụ giải mã CSR
Dán một yêu cầu ký chứng chỉ để đọc mọi trường trong đó: chủ thể, khóa, từng tên thay thế và từng phần mở rộng. Trang còn đối chiếu yêu cầu với các quy tắc mà CA công khai áp dụng, và cho bạn biết khóa riêng của mình có khớp với nó không. Chứng chỉ SSL cũng giải mã được tại đây.
Giải mã ngay trong trình duyệt của bạn. Không tải gì lên, không lưu gì cả.
Thả tệp vào bất kỳ đâu trên trang này PEM, DER, .csr, .cer, .crt, .pem, .req, .txt
Mọi thứ trên trang này diễn ra trong trình duyệt của bạn. Hãy mở bảng điều khiển mạng và quan sát: không yêu cầu nào mang dữ liệu của bạn đi.
CSR là gì?
Yêu cầu ký chứng chỉ (CSR) là một tệp nhỏ đã được ký, dùng để xin một tổ chức cấp chứng chỉ cấp chứng chỉ. Nó mang khóa công khai của bạn, các tên bạn muốn có trên chứng chỉ, và một chữ ký tạo bằng khóa riêng của bạn.
Định dạng là PKCS#10, được ghi trong RFC 2986. Phần được ký chỉ chứa bốn thứ: số phiên bản, tên chủ thể, SubjectPublicKeyInfo chứa khóa công khai của bạn, và một tập thuộc tính. Toàn bộ phần đó sau đó được ký bằng khóa riêng đi cùng với khóa công khai nằm bên trong, nên CSR là tự ký. Chữ ký đó là bằng chứng sở hữu: ai cũng đọc được khóa công khai của bạn, nhưng chỉ người giữ khóa riêng mới ký được một yêu cầu mà chữ ký khớp với nó.
Khóa riêng của bạn không nằm trong tệp và không bao giờ nên nằm trong đó. CSR an toàn để gửi qua email, dán vào biểu mẫu web của CA, và giải mã tại đây — đó là lý do trang này làm được mọi việc ngay trong trình duyệt của bạn mà không gửi gì đi đâu cả.
- Lớp bọc4 byte
- Phần được ký469 byte
- Thuật toán chữ ký nào15 byte
- Bản thân chữ ký261 byte
- Phiên bản3 byteLuôn bằng không: phiên bản duy nhất mà định dạng định nghĩa
- Tên chủ thể108 byteTên phân biệt bạn đã gõ vào biểu mẫu
- Khóa công khai của bạn294 byteThuật toán, kích thước và khóa — trường duy nhất mà tổ chức cấp chứng chỉ chắc chắn sẽ dùng
- Thuộc tính60 byteNơi các tên thay thế bạn xin được chuyển đi
Khóa riêng của bạnký phần bên trênBằng chứng rằng bạn giữ khóa riêng tương ứng · Chữ ký chỉ bao phần đó, không bao toàn bộ tệp

Dán hoặc thảMột CSR, một chứng chỉ hoặc một khóa công khai — PEM, base64, bản dump hex hoặc một tệp. Nhiều mục cùng lúc cũng được.Kết luậnCA công khai sẽ làm gì với yêu cầu này: cấp, thay đổi hoặc từ chối, kèm lý do cho từng trường hợp.Các tênMọi tên mà chứng chỉ sẽ bao gồm, với tên chung được đối chiếu với chúng.Khóa và chữ kýThuật toán, kích thước, đường cong và số mũ, cùng việc chữ ký của chính yêu cầu có hợp lệ hay không.So khớp khóaThêm khóa riêng hoặc chứng chỉ đã được cấp để xem nó có thuộc về yêu cầu này không. Cả hai đều không rời khỏi trình duyệt của bạn.Cách kiểm tra CSR trước khi gửi
Có ba điều đáng kiểm tra: các tên có đúng là những tên bạn định dùng không, chữ ký có hợp lệ không, và không có gì trong đó vi phạm quy tắc mà CA của bạn áp dụng.
Dán yêu cầu vào phía trên. Trang đọc chủ thể từng thuộc tính một, liệt kê mọi tên thay thế của chủ thể (SAN), cho thấy thuật toán và kích thước của khóa, rồi kiểm tra chữ ký của chính yêu cầu. Một yêu cầu có chữ ký không hợp lệ đã bị chỉnh sửa, cắt cụt hoặc hỏng kể từ khi được tạo — hãy tạo lại thay vì gửi đi.
Sau đó đến các quy tắc. Tổ chức cấp chứng chỉ áp dụng Baseline Requirements của CA/Browser Forum, và một yêu cầu vi phạm một trong số đó sẽ bị từ chối hoặc âm thầm bị đổi. Các phát hiện trên trang này được đánh dấu Phải sửa khi CA không thể cấp thứ bạn xin, Sẽ bị đổi khi CA sẽ cấp nhưng loại bỏ hoặc thay đổi một trường, và Lưu ý khi không có gì sai nhưng có điều đáng xem.
- Các tênMọi tên mà chứng chỉ sẽ bao gồm, và tên chung có nằm trong số đó không
- Chữ kýĐược xác minh bằng mật mã của chính trình duyệt của bạn
- Quy tắc của tổ chức cấp chứng chỉÁp dụng từng quy tắc một, mỗi quy tắc kèm tài liệu nó đến từ đâu
- Gửi điKhông có gì trong yêu cầu vi phạm quy tắc
- Sẽ bị từ chốiTệp không có lỗi; thứ nó xin thì không được phép
- Tạo lạiChữ ký không hợp lệ nghĩa là tệp đã bị chỉnh sửa, cắt cụt hoặc sao chép hỏng sau khi được tạo
Trong CSR có gì — và CA thực sự dùng gì
Trong mọi thứ của một CSR, CA công khai chỉ dùng chắc chắn một trường: khóa công khai. Phần lớn phần còn lại, CA tự xác thực, ghi đè hoặc bị cấm sao chép.
DigiCert nói thẳng trong tài liệu của chính mình: "DigiCert uses the public key embedded in the CSR to create your client certificate. All other fields in the CSR are ignored." Trên chứng chỉ OV hoặc EV, CA phải tự xác thực tổ chức, địa phương và quốc gia trước khi đưa vào; những gì bạn gõ không được tin ngay. Ngày hiệu lực không bao giờ lấy từ yêu cầu: chúng theo lịch trình của Baseline Requirements.
Hai trường chủ thể không chỉ bị bỏ qua mà còn bị cấm. organizationalUnitName (OU) không được xuất hiện trong chứng chỉ TLS công khai — theo ballot SC047 của CA/Browser Forum, không chứng chỉ nào được cấp từ ngày 1 tháng 9 năm 2022 được mang nó — và emailAddress hoàn toàn không được phép trong chứng chỉ xác thực tên miền. Tên chung được phép nhưng không khuyến khích, và nếu có thì nó phải lặp lại chính xác một trong các tên thay thế. Quy tắc cuối cùng đó là lý do trang này đánh dấu tên chung không có trong danh sách SAN.
| Trong yêu cầu của bạn | Nó trở thành gì | Vì sao |
|---|---|---|
| Khóa công khaiSubjectPublicKeyInfo | Dùng đúng như bạn gửi | Thứ duy nhất mà tổ chức cấp chứng chỉ chắc chắn lấy từ bạn |
| Các tên thay thếsubjectAltName2.5.29.17 | Dùng đúng như bạn gửi | CA xác nhận bạn kiểm soát từng tên trước khi ghi bất kỳ tên nào |
| Tên chungCN2.5.4.3 | Được xác thực, rồi CA tự ghi | Không khuyến khích; nếu có thì phải lặp lại chính xác một trong các tên thay thế |
| Tổ chức, địa phương, tỉnh/bangO, L, ST2.5.4.10 | Được xác thực, rồi CA tự ghi | Trên chứng chỉ xác thực tổ chức, các trường này lấy từ hồ sơ đã được CA xác thực, không phải từ những gì bạn gõ |
| Quốc giaC2.5.4.6 | Được xác thực, rồi CA tự ghi | Có thể xuất hiện, bất kể mức xác thực |
| Đơn vị tổ chứcOU2.5.4.11 | Hoàn toàn không được phép | Bị cấm trong chứng chỉ công khai từ 1 tháng 9, 2022 |
| Địa chỉ emailemailAddress1.2.840.113549.1.9.1 | Hoàn toàn không được phép | Không được phép trong chứng chỉ xác thực tên miền |
| Có hiệu lực từ, đếnnotBefore, notAfter | Không bao giờ lấy từ yêu cầu | Do lịch trình mà tổ chức cấp chứng chỉ tuân theo đặt ra, không bao giờ do yêu cầu của bạn |
“DigiCert uses the public key embedded in the CSR to create your client certificate. All other fields in the CSR are ignored.”
Vì sao CA từ chối một CSR
Gần như mọi lần từ chối quy về một tên mà CA không được phép chứng nhận, một wildcard quá rộng, một địa chỉ IP dành riêng, một khóa quá nhỏ, một hàm băm chữ ký quá cũ, hoặc một yêu cầu có chữ ký không hợp lệ.
Tổ chức cấp chứng chỉ không được cấp cho một tên nội bộ — tên mà "does not end with a Top-Level Domain registered in IANA's Root Zone Database". Điều đó loại server.local, intranet, tên chỉ có một nhãn không có dấu chấm nào, và mọi đuôi tự bịa. Nhãn chỉ được gồm chữ cái, chữ số và dấu gạch ngang, nên dấu gạch dưới trong tên máy chủ bị từ chối, và tên không được viết với dấu chấm ở cuối. Wildcard chỉ được thay cho toàn bộ nhãn ngoài cùng bên trái, và không bao giờ cho một public suffix: *.example.com thì được, *.co.uk thì không. Địa chỉ IP có thể xuất hiện, nhưng không được là địa chỉ dành riêng — không có 10.0.0.0/8, 192.168.0.0/16, 127.0.0.1 hay fc00::/7.
Về khóa, Baseline Requirements rất chính xác: modulus RSA tối thiểu 2048 bit và chia hết cho 8, hoặc một điểm trên P-256, P-384 hay P-521, và "no other algorithms or key sizes are permitted". CA cũng phải từ chối khóa mà nó có thể phân tích thừa số, kể cả khóa "which can be factored within 100 rounds using Fermat's factorization method" — trang này chạy phép thử đó trên khóa trong yêu cầu của bạn. Và dù hàm băm chữ ký của CSR không phải của chứng chỉ, Let's Encrypt đã ngừng nhận chữ ký tự ký SHA-1 từ năm 2022, nên một công cụ cũ vẫn ký bằng SHA-1 sẽ bị trả yêu cầu lại.
server.localMột tên nội bộNó không kết thúc bằng tên miền cấp cao nhất có trong vùng gốc công khai, nên không ai chứng minh được nó là của bạnBị từ chốiintranetTên chỉ có một nhãnMột tên không có dấu chấm nào thuộc cùng định nghĩa đóBị từ chốimy_host.example.comMột dấu gạch dướiMột nhãn chỉ được gồm chữ cái, chữ số và dấu gạch ngang, không gì khácBị từ chối*.co.ukMột wildcard trên cả một nhà đăng kýWildcard có thể thay cho nhãn ngoài cùng bên trái, không bao giờ cho một public suffixBị từ chối192.168.1.10Một địa chỉ dành riêngĐịa chỉ công khai có thể được chứng nhận; địa chỉ thuộc dải riêng tư hoặc dải đặc biệt thì không bao giờBị từ chốiexample.com.Dấu chấm ở cuốiNhãn gốc rỗng không được viết raBị từ chối
Làm sao biết khóa riêng của tôi khớp với CSR?
Tệp khóa riêng đã mang sẵn khóa công khai của nó, nên việc so khớp là so sánh hai khóa công khai — không cần bí mật nào và không phải gửi gì đi đâu.
Mở So khớp với một khóa hoặc chứng chỉ phía trên và thêm khóa bên cạnh yêu cầu. Trang chỉ đọc phần công khai ra khỏi tệp — khóa PKCS#8, PKCS#1 và SEC1 đều được hiểu — so sánh với khóa trong yêu cầu rồi trả lời. Không có gì được tải lên, không có gì được giữ lại, và khóa bị xóa khi bạn rời khỏi ô. Phép kiểm tra tương tự dùng được giữa một yêu cầu và chứng chỉ mà CA trả về, giúp bắt lỗi "the certificate and the private key do not match" trước khi máy chủ không chịu khởi động.
Nếu bạn không muốn dán khóa vào bất kỳ trang web nào, câu trả lời tương tự chỉ cần hai lệnh trên máy của bạn. openssl req -in request.csr -pubkey -noout in khóa công khai từ yêu cầu và openssl pkey -in private.key -pubout in nó từ khóa: kết quả giống hệt nghĩa là chúng khớp nhau. Dạng -modulus cũ chỉ dùng được cho khóa RSA; -pubkey dùng được cho mọi loại khóa.
- Tệp khóa riêngTệp bạn không bao giờ được gửi đi đâuPhần công khai của nó được đọc ra
- Yêu cầuTệp bạn gửi cho tổ chức cấp chứng chỉNó đã mang sẵn khóa công khai
Đây có phải cùng một khóa không?
- Khớp nhauChứng chỉ trả về sẽ cài được với khóa này
- Không khớp nhauĐây là sự không khớp mà máy chủ web báo khi nó không chịu khởi động
Không gì vượt qua đường này · Phép so sánh chạy được khi tắt mạngBất kỳ nơi nào khác
openssl req -in request.csr -pubkey -nooutopenssl pkey -in private.key -puboutKết quả giống hệt nghĩa là chúng khớp nhauCSR, chứng chỉ, khóa riêng: khác nhau thế nào?
Khóa riêng là bí mật. CSR là một yêu cầu chứng minh bạn giữ nó. Chứng chỉ là câu trả lời đã ký của CA, và là tệp duy nhất trong ba tệp được thiết kế để công khai.
Ba tệp này thường nằm trong cùng một thư mục với những cái tên dễ nhầm lẫn. Khóa riêng bắt đầu bằng -----BEGIN PRIVATE KEY----- hoặc -----BEGIN RSA PRIVATE KEY----- và không bao giờ được gửi cho ai, kể cả tổ chức cấp chứng chỉ. Yêu cầu ký chứng chỉ bắt đầu bằng -----BEGIN CERTIFICATE REQUEST-----, được ký bằng khóa đó, và an toàn để gửi. Chứng chỉ bắt đầu bằng -----BEGIN CERTIFICATE-----, được CA ký, và dù sao cũng được gửi cho mọi khách truy cập website của bạn.
Khi chứng chỉ đã được cấp, yêu cầu không còn tác dụng: nó không cần để cài đặt, gia hạn hay thu hồi bất cứ thứ gì. Khóa mới là thứ bạn phải giữ, và giữ an toàn. Hãy dán một trong ba tệp phía trên và trang này sẽ cho bạn biết đó là tệp nào.
Khóa riêngBí mật
Dòng đầu tiên của nó
-----BEGIN PRIVATE KEY-----Cũng được dùng rộng rãi-----BEGIN RSA PRIVATE KEY------ Được ký bởi
- Không ai — chính nó là thứ thực hiện việc ký
- Ai được thấy nó
- Bạn, và không ai khác
- Dùng để làm gì
- Chứng minh máy chủ này đúng là nơi chứng chỉ được cấp cho
Yêu cầu ký chứng chỉCông khai
Dòng đầu tiên của nó
-----BEGIN CERTIFICATE REQUEST-----Cũng được dùng rộng rãi-----BEGIN NEW CERTIFICATE REQUEST------ Được ký bởi
- Chính nó, bằng khóa riêng
- Ai được thấy nó
- Bạn và tổ chức cấp chứng chỉ
- Dùng để làm gì
- Xin một chứng chỉ, và chứng minh bạn giữ khóa mà nó dành cho
Chứng chỉCông khai
Dòng đầu tiên của nó
-----BEGIN CERTIFICATE------ Được ký bởi
- Tổ chức cấp chứng chỉ
- Ai được thấy nó
- Mọi khách truy cập website của bạn
- Dùng để làm gì
- Cho trình duyệt biết khóa này thuộc về những tên này
.csr.pem.req.txtKhông tiêu chuẩn nào gán phần mở rộng tên tệp cho một yêu cầu; tất cả những cái này đều đang được dùng, và trang này đọc nội dung chứ không đọc tên
Giải mã CSR trực tuyến có an toàn không?
CSR không chứa bí mật nào, nên giải mã nó ở đâu cũng vô hại. Khóa riêng thì khác, và đó là tệp mà người ta hay nhầm với nó.
Mọi thứ trên trang này chạy trong trình duyệt của bạn. Yêu cầu được phân tích bằng mã tải về cùng với trang, chữ ký được kiểm tra bằng Web Crypto của chính trình duyệt, và không có yêu cầu nào gửi đến máy chủ nào kèm dữ liệu của bạn — bạn có thể theo dõi bảng điều khiển mạng khi dùng. Đó là đặc tính của cách trang được xây dựng, không phải một lời hứa mà chúng tôi bắt bạn phải tin.
Lý do điều này quan trọng là tệp nằm cạnh CSR. Định nghĩa của chính CA/Browser Forum không khoan nhượng: "A Private Key is said to be compromised if its value has been disclosed to an unauthorized person, or an unauthorized person has had access to it." Không cần bị lạm dụng — chỉ cần đến được máy chủ của người khác là đủ. Năm 2020, DigiCert phát hiện 337 khóa riêng mà khách hàng đã dán kèm với CSR của họ và thu hồi mọi chứng chỉ liên quan, ghi rằng "by sending the private key to DigiCert along with the CSR, the customer has compromised the private key". Nếu trang này từng đọc được một khóa riêng mà bạn dán vào, nó sẽ báo cho bạn, từ chối giải mã và không giữ lại gì.
Trang này
- Tệp được đọc
- Nó được tháo ra bằng mã đã đến cùng với trang
- Chữ ký được chính trình duyệt kiểm tra
- Kết quả được vẽ ra
Không yêu cầu nào rời đi mang theo dữ liệu của bạnMở bảng điều khiển mạng và quan sát khi bạn dùng
Một trang tải nó lên
Tệp được tải lên…cùng với bất cứ thứ gì được dán bên cạnh
Máy chủ của người khác
Khóa riêng đến đó đã bị lộ chỉ vì điều đó
“A Private Key is said to be compromised if its value has been disclosed to an unauthorized person, or an unauthorized person has had access to it.”
Chuyện này đã xảy ra rồiNăm 2020, một tổ chức cấp chứng chỉ phát hiện 337 khóa riêng bị dán kèm bên cạnh một yêu cầuMọi chứng chỉ liên quan đều bị thu hồi
RSA hay ECDSA: CSR nên xin loại khóa nào?
Khóa ECDSA P-256 mạnh ngang khóa RSA 3072 bit mà nhỏ hơn nhiều, nên là lựa chọn mặc định tốt hơn. RSA 2048 vẫn được chấp nhận ở mọi nơi.
NIST xếp P-256 và RSA-3072 ở cùng mức an toàn 128 bit, và bảng của họ hoàn toàn không có dòng nào cho RSA-4096: dòng kế tiếp là RSA-7680, ở mức 192 bit, mức mà P-384 đạt được. Vì vậy khóa RSA 4096 bit khiến mỗi khách truy cập tốn thêm công sức bắt tay mà không có lợi ích nào được ghi nhận so với 3072. Baseline Requirements cũng cho phép P-521, nhưng Let's Encrypt từ chối nó, nên một yêu cầu P-521 có thể hoàn toàn hợp lệ mà vẫn thất bại ở CA bạn định dùng.
Ed25519 hiện không phải là lựa chọn cho chứng chỉ TLS công khai, dù thuật toán có tốt đến đâu: Baseline Requirements liệt kê RSA và ba đường cong NIST rồi thêm "no other algorithms or key sizes are permitted". Khóa hậu lượng tử cũng vậy — đề xuất bỏ phiếu có thể cho phép ML-DSA trong TLS công khai đã bị đóng mà không được hợp nhất vào tháng 10 năm 2026. Ed25519 và ML-DSA vẫn hữu ích cho SSH, cho việc ký và cho một CA riêng, và trang này đọc được các yêu cầu dùng chúng.
| Mức an toàn | Khóa RSA | Đường cong |
|---|---|---|
| an toàn 112 bit | 2.048 bitCA công khai bất kỳ | Không có đường cong nào mà tổ chức cấp chứng chỉ công khai cho phép ở mức an toàn này |
| an toàn 128 bit | 3.072 bitCA công khai bất kỳ | P-256CA công khai bất kỳ |
| 4.096 bitCA công khai bất kỳ4.096 bit hoàn toàn không có trong bảng | ||
| an toàn 192 bit | 7.680 bitCA công khai bất kỳ | P-384CA công khai bất kỳ |
| an toàn 256 bit | 15.360 bitCA công khai bất kỳ | P-521CA công khai bất kỳ |
- Khóa RSA
- Đường cong
- Các bậc đi thẳng từ kích thước này sang kích thước kế tiếp và bỏ qua cái phổ biến ở giữa, nên công sức bắt tay thêm mà nó tốn của mỗi khách truy cập không mua được gì mà ai đó đã ghi lại
- Được chấp nhận bởiLet's Encrypt
Một đường cong mang cùng mức an toàn trong một phần nhỏ số byte
Cách tạo CSR trên mọi nền tảng
Một lệnh OpenSSL phủ Linux, macOS và Windows đã cài OpenSSL. IIS có certreq, macOS có Keychain Access, và trang này có một công cụ tạo CSR không bao giờ gửi khóa của bạn đi đâu.
Với OpenSSL, openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr -subj "/CN=example.com" -addext "subjectAltName=DNS:example.com,DNS:www.example.com" tạo khóa và yêu cầu trong một bước. (-nodes để khóa không mã hóa. OpenSSL 3 cũng viết là -noenc, nhưng LibreSSL tích hợp sẵn trong macOS chỉ biết -nodes.) Sau đó openssl req -in example.com.csr -text -verify -noout hiển thị và xác minh nó. Trên Windows, certreq -new request.inf request.req đọc một tệp .inf mà các tên thay thế nằm dưới OID 2.5.29.17 với các dòng _continue_ — không có khóa SAN=. Trang tham chiếu của chính Microsoft cảnh báo rằng ví dụ của họ dùng SHA-1, thứ mà CA giờ sẽ từ chối, nên hãy tự đặt hàm băm.
Trên máy Mac, Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority tạo một yêu cầu, với kích thước khóa nằm sau ô "Let me specify key pair information". Hoặc dùng công cụ tạo CSR của chúng tôi, tạo khóa bằng Web Crypto của trình duyệt và đưa cho bạn cả hai tệp mà không đi qua máy chủ nào. Không có tiêu chuẩn nào gán phần mở rộng tên tệp cho CSR: .csr, .pem, .req và .txt đều đang được dùng, và trang này đọc nội dung thay vì tin vào tên.
OpenSSLLinux, macOS, Windows
Tạo khóa và yêu cầu chỉ trong một lệnhopenssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr -subj "/CN=example.com" -addext "subjectAltName=DNS:example.com,DNS:www.example.com"Rồi đọc lại và xác minh chữ ký của chính nóopenssl req -in example.com.csr -text -verify -nooutcertreqWindows Server và IIS
Đọc một tệp văn bản thuần; các tên thay thế nằm trong một phần mở rộng, mỗi dòng một têncertreq -new request.inf request.req[Extensions] 2.5.29.17 = "{text}" _continue_ = "DNS=example.com&" _continue_ = "DNS=www.example.com"Trang ví dụ của chính Microsoft vẫn được viết quanh một hàm băm mà tổ chức cấp chứng chỉ giờ từ chối, nên hãy tự đặt hàm bămKeychain AccessmacOS
Keychain Access › Certificate Assistant › Request a Certificate From a Certificate AuthorityMáy Mac của bạn đặt tên các menu này bằng ngôn ngữ của nóLoại và kích thước khóa nằm sau ô cho phép bạn chỉ định cặp khóaKhóa RSA từ 2048 đến 4096 bit; khóa nhỏ hơn không còn được cung cấpDNS RobotTrình duyệt bất kỳ
Tạo khóa bằng mật mã của chính trình duyệt và đưa cho bạn cả hai tệp mà không tệp nào đi qua máy chủMở công cụ tạo CSR
Chứng chỉ sẽ có hiệu lực bao lâu?
Chứng chỉ TLS công khai cấp hôm nay không được vượt quá 200 ngày. Mức đó giảm xuống 100 ngày vào tháng 3 năm 2027 và 47 ngày vào tháng 3 năm 2029.
Lịch trình đến từ ballot SC-081v3 của CA/Browser Forum, được thông qua vào tháng 4 năm 2025, và CSR không thể tác động đến nó: thời hạn hiệu lực không bao giờ đến từ yêu cầu. Mỗi bước có hai con số, một mức SHOULD NOT thấp hơn mức MUST NOT một ngày — 199 và 200 hiện nay, 99 và 100 từ 15 tháng 3 năm 2027, 46 và 47 từ 15 tháng 3 năm 2029. Khi đếm, "a day is measured as 86,400 seconds", và một phần của ngày kế tiếp cũng được tính trọn một ngày.
Hệ quả thực tế là việc gia hạn phải tự động. Nếu bạn vẫn tạo CSR bằng tay mỗi năm, giờ là lúc chuyển sang ACME, nơi ứng dụng khách tạo yêu cầu thay bạn — và nhân tiện, ở đó PKCS#10 thật sự là bắt buộc, dù bản thân Baseline Requirements chỉ đòi "a certificate request in a form prescribed by the CA".
- trước 15 tháng 3, 2026Hôm nay nằm ở đâu397 ngày398 ngày
- từ 15 tháng 3, 2026199 ngày200 ngày
- từ 15 tháng 3, 202799 ngày100 ngày
- từ 15 tháng 3, 202946 ngày47 ngày
- Toàn bộ lịch trình đến từ một ballot, SC-081v3, được thông qua 11 tháng 4, 2025
- Một ngày được tính chính xác là 86.400 giây và một phần của ngày kế tiếp cũng được tính trọn một ngày
- Không có gì trong yêu cầu thay đổi được điều này
ASN.1 thô cho bạn thấy gì
Bên dưới lớp base64, CSR là một cái cây mã hóa DER. Công cụ vẽ nó kèm vị trí byte và đặt tên cho mọi mã định danh đối tượng mà nó biết, đúng thứ mà openssl asn1parse in ra.
Đó là cách trung thực để hiển thị một trường mà không ai có tên thân thiện cho nó. Mở Cấu trúc thô trên bất kỳ mục nào đã giải mã và bạn sẽ thấy CertificationRequestInfo, từng relative distinguished name của chủ thể, SubjectPublicKeyInfo, tập attributes [0] và bên trong nó là thuộc tính extensionRequest — mã định danh đối tượng 1.2.840.113549.1.9.14, được định nghĩa không phải trong RFC 2986 mà trong RFC 2985 §5.4.2 — mang chính các phần mở rộng X.509 của RFC 5280.
Thuộc tính khác bạn có thể gặp ở đó là challengePassword (1.2.840.113549.1.9.7). Nó vốn là một bí mật chung để thu hồi chứng chỉ về sau, vẫn được SCEP dùng khi đăng ký, và không đóng vai trò gì trong việc đặt chứng chỉ web thông thường. Trang này hiển thị nó khi có, vì một trường bạn không nhìn thấy là một trường bạn không thể kiểm tra.
| Tại byte | Cấu trúc | Kích thước |
|---|---|---|
| 0 | SEQUENCE | 749 byte |
| 4 | SEQUENCE | 469 byte |
| 8 | INTEGER0 | 3 byte |
| 11 | SEQUENCE | 108 byte |
| 13 | SET | 13 byte |
| 15 | SEQUENCE | 11 byte |
| 17 | OBJECT IDENTIFIERC2.5.4.6 | 5 byte |
| 22 | PrintableStringUS | 4 byte |
| 26 | SET | 21 byte |
| 28 | SEQUENCE | 19 byte |
| 30 | OBJECT IDENTIFIERST2.5.4.8 | 5 byte |
| 35 | UTF8StringCalifornia | 12 byte |
| 47 | SET | 24 byte |
| 49 | SEQUENCE | 22 byte |
| 51 | OBJECT IDENTIFIERL2.5.4.7 | 5 byte |
| 56 | UTF8StringSan Francisco | 15 byte |
| 71 | SET | 22 byte |
| 73 | SEQUENCE | 20 byte |
| 75 | OBJECT IDENTIFIERO2.5.4.10 | 5 byte |
| 80 | UTF8StringExample Inc | 13 byte |
| 93 | SET | 26 byte |
| 95 | SEQUENCE | 24 byte |
| 97 | OBJECT IDENTIFIERCN2.5.4.3 | 5 byte |
| 102 | UTF8Stringwww.example.com | 17 byte |
| 119 | SEQUENCE | 294 byte |
| 123 | SEQUENCE | 15 byte |
| 125 | OBJECT IDENTIFIERrsaEncryption1.2.840.113549.1.1.1 | 11 byte |
| 136 | NULL | 2 byte |
| 138 | BIT STRING2.160 bit30 82 01 0a 02 82 01 01 00 c5 47 47 1d 26 1c bf | 275 byte |
| 413 | [0] | 60 byte |
| 415 | SEQUENCE | 58 byte |
| 417 | OBJECT IDENTIFIERextensionRequest1.2.840.113549.1.9.14 | 11 byte |
| 428 | SET | 45 byte |
| 430 | SEQUENCE | 43 byte |
| 432 | SEQUENCE | 41 byte |
| 434 | OBJECT IDENTIFIERSubject Alternative Name2.5.29.17 | 5 byte |
| 439 | OCTET STRING32 byte30 1e 82 0f 77 77 77 2e 65 78 61 6d 70 6c 65 2e | 34 byte |
| 473 | SEQUENCE | 15 byte |
| 475 | OBJECT IDENTIFIERsha256WithRSAEncryption1.2.840.113549.1.1.11 | 11 byte |
| 486 | NULL | 2 byte |
| 488 | BIT STRING2.048 bit00 57 41 c5 09 98 14 78 8c ee c3 61 d4 c0 e0 2d | 261 byte |
- Chứa những thứ khác
- Chứa một giá trị
- Được đặt tên theo vị trí
Thuộc tính mang các phần mở rộng
1.2.840.113549.1.9.14Nó được định nghĩa trong một tài liệu khác với tài liệu định nghĩa chính yêu cầu, đó là lý do các tên thay thế đi bên trong một thuộc tính thay vì nằm cạnh chủ thểThuộc tính khác bạn có thể gặpKhông có trong yêu cầu này
1.2.840.113549.1.9.7Một bí mật chung, dùng để yêu cầu thu hồi chứng chỉ về sau, và vẫn được dùng khi một thiết bị tự đăng ký vào mạng
Công cụ giải mã CSR: hỏi và đáp
Làm sao để giải mã một CSR?
-----BEGIN CERTIFICATE REQUEST----- và -----END CERTIFICATE REQUEST-----, hoặc thả tệp lên trang. Nó được giải mã ngay khi bạn dán: chủ thể, khóa công khai, từng tên thay thế, từng phần mở rộng được yêu cầu và các dấu vân tay. Bạn cũng có thể dán riêng phần thân base64, một bản dump hex, hoặc tải lên tệp DER nhị phân.Công cụ giải mã CSR này có an toàn không?
Làm sao kiểm tra CSR của tôi có hợp lệ không?
Vì sao tổ chức cấp chứng chỉ từ chối CSR của tôi?
server.local hoặc tên máy chủ chỉ có một nhãn, dấu gạch dưới trong tên máy chủ, wildcard đặt trên một public suffix như *.co.uk, địa chỉ IP riêng tư trong các tên thay thế, khóa RSA dưới 2048 bit, hoặc yêu cầu vẫn ký bằng SHA-1. Hãy giải mã yêu cầu phía trên và từng điều đó đều được nêu rõ, kèm quy tắc mà nó vi phạm.Làm sao biết khóa riêng của tôi khớp với CSR?
openssl req -in request.csr -pubkey -noout và openssl pkey -in private.key -pubout in ra cùng một khóa công khai khi chúng khớp nhau. Phép so sánh tương tự dùng được giữa một khóa và một chứng chỉ đã cấp.Công cụ này giải mã được cả chứng chỉ SSL không?
CA thực sự dùng những trường nào từ CSR của tôi?
OU và, trên chứng chỉ xác thực tên miền, emailAddress.Tên chung còn quan trọng không?
Tôi có thể giải mã nhiều tệp cùng lúc không?
Challenge password trong CSR là gì?
Tôi có thể dùng khóa Ed25519 cho chứng chỉ công khai không?
Hiện nay chứng chỉ có hiệu lực bao lâu?
Còn thiếu điều gì?Đề xuất tính năng hoặc công cụ mới
Công cụ liên quan
Tạo CSR
Tạo yêu cầu ký chứng chỉ và khóa riêng tư ngay trong trình duyệt: RSA hoặc ECDSA, kèm SAN và lệnh OpenSSL tương ứng
Kiểm Tra Chứng Chỉ SSL
Xác minh tính hợp lệ chứng chỉ SSL và chi tiết bảo mật
Kiểm tra sức khỏe DNS
Chấm điểm DNS tên miền: ủy quyền, nameserver, SOA, DNSSEC và email qua 40 mục
Kiểm Tra DMARC
Kiểm tra chính sách DMARC và cài đặt căn chỉnh cho bất kỳ tên miền nào
Tra Cứu DNS
Mọi bản ghi DNS từ máy chủ của chính tên miền, cạnh bộ nhớ đệm của Google và Cloudflare
Tra Cứu WHOIS
Tra cứu đăng ký tên miền, nhà đăng ký và chi tiết chủ sở hữu qua RDAP
