Decode certificate online: đọc chứng chỉ X.509 từ tệp PEM, CRT, DER
PEM Certificate Decoder giải mã chứng chỉ SSL/TLS và chứng chỉ chữ ký số X.509 ngay trong trình duyệt: chủ thể, bên cấp, ngày hiệu lực theo giờ Việt Nam, tên miền trong SAN, loại và độ dài khóa, mục đích sử dụng, địa chỉ OCSP, CRL, chính sách cấp và dấu vân tay SHA-1, SHA-256. Dán cả chuỗi fullchain để kiểm tra thứ tự và quan hệ cấp phát giữa các chứng chỉ, có kiểm tra chữ ký thật bằng Web Crypto. Công cụ cũng đọc CSR và khóa công khai, còn khóa riêng thì bị loại bỏ ngay, không đọc, không hiển thị.
Tính năng nổi bật
- Bộ đọc DER/ASN.1 viết riêng, không phụ thuộc thư viện, đọc được PEM, tệp .crt, .cer, .der nhị phân, gói PKCS#7 .p7b và chuỗi base64 không có header
- Hiển thị phiên bản, số serial (hex và thập phân), thuật toán chữ ký, chủ thể và bên cấp, giữ đúng tên tiếng Việt có dấu trong UTF8String và BMPString
- Ngày hiệu lực và hết hạn quy đổi sang giờ Việt Nam (GMT+7), số ngày còn lại, tổng thời hạn chứng chỉ
- Khóa công khai RSA (số bit, số mũ), ECDSA (P-256, P-384, P-521, secp256k1, brainpool), Ed25519, Ed448, DSA
- Giải các phần mở rộng: SAN (DNS, IP v4 và v6, email, URI, UPN), Key Usage, Extended Key Usage, Basic Constraints, SKI, AKI, CRL, OCSP, CA Issuers, Certificate Policies (DV, OV, EV), SCT
- Dấu vân tay SHA-1, SHA-256 và pin SHA-256 của khóa công khai tính bằng Web Crypto
- Kiểm tra chuỗi chứng chỉ theo thứ tự dán: so tên bên cấp, so AKI với SKI và kiểm tra chữ ký thật bằng Web Crypto (RSA PKCS#1, RSA-PSS, ECDSA, Ed25519)
- Đọc CSR (CERTIFICATE REQUEST): chủ thể, SAN yêu cầu, khóa và tự kiểm tra chữ ký của CSR; phát hiện khóa riêng và từ chối xử lý
Khi nào cần giải mã chứng chỉ từ tệp thay vì kiểm tra theo tên miền
Công cụ kiểm tra SSL theo tên miền chỉ thấy được chứng chỉ đang chạy trên máy chủ công khai. Nhưng rất nhiều lúc bạn cần đọc một tệp chứng chỉ chưa cài: nhà cung cấp gửi tệp .crt qua email và bạn muốn chắc nó đúng tên miền, đúng hạn trước khi cài; bạn cần biết tệp nào là chứng chỉ trung gian để ghép fullchain cho Nginx; máy chủ nội bộ, thiết bị mạng, API đối tác chỉ chạy trong mạng riêng; bạn tạo CSR và muốn kiểm tra lại SAN trước khi gửi đi mua chứng chỉ; hoặc bạn đang cầm chứng chỉ chữ ký số của doanh nghiệp và muốn xem mã số thuế, hạn dùng. Công cụ đọc tất cả những thứ đó ngay trên trình duyệt, không cần gõ lệnh openssl x509 -text và không gửi tệp đi đâu.
Lợi ích khi sử dụng
- Kiểm tra tệp chứng chỉ trước khi cài, tránh cài nhầm tên miền hay chứng chỉ sắp hết hạn
- Ghép fullchain đúng thứ tự cho Nginx, Apache, HAProxy mà không phải thử đi thử lại
- Đọc được tên doanh nghiệp tiếng Việt có dấu, mã số thuế trong chứng chỉ chữ ký số
- Không cần cài OpenSSL hay nhớ cú pháp dòng lệnh
- Tệp chứng chỉ không rời khỏi máy, khóa riêng lỡ dán vào cũng bị loại bỏ ngay
Cách decode certificate online
- 1Mở tệp chứng chỉ bằng trình soạn thảo văn bản, sao chép toàn bộ từ dòng -----BEGIN CERTIFICATE----- tới dòng -----END CERTIFICATE----- và dán vào ô nhập; có thể dán nhiều khối liên tiếp.
- 2Hoặc bấm chọn tệp để tải một hay nhiều tệp .pem, .crt, .cer, .der, .p7b, .csr; tệp nhị phân DER cũng đọc được.
- 3Xem thẻ thông tin của từng chứng chỉ: loại chứng chỉ, trạng thái thời hạn, chủ thể, bên cấp, danh sách tên miền trong SAN, khóa và thuật toán chữ ký.
- 4Nếu dán nhiều chứng chỉ, đọc phần Chuỗi chứng chỉ để biết chứng chỉ trước có đúng do chứng chỉ sau cấp không, kèm kết quả kiểm tra chữ ký.
- 5Mở mục Tất cả phần mở rộng để xem chi tiết Key Usage, EKU, OCSP, CRL, chính sách cấp và các phần mở rộng khác.
- 6Sao chép dấu vân tay SHA-256 để so với con số nhà cung cấp công bố hoặc để cấu hình ghim chứng chỉ trong ứng dụng.
PEM, DER, CRT, CER khác nhau thế nào
Chứng chỉ X.509 luôn được mã hóa theo quy tắc DER, một dạng nhị phân của cấu trúc ASN.1. Tệp PEM chỉ là bản DER được viết lại bằng base64 và kẹp giữa hai dòng -----BEGIN CERTIFICATE----- và -----END CERTIFICATE-----, để có thể dán vào email hay tệp cấu hình. Phần đuôi .crt, .cer, .pem không quyết định định dạng: tệp .crt có thể là PEM hoặc DER, tệp .cer xuất từ Windows thường là DER nhị phân hoặc base64. Tệp .p7b là gói PKCS#7 chứa nhiều chứng chỉ, hay gặp khi nhà cung cấp gửi cả chuỗi. Công cụ tự nhận ra các trường hợp này: nếu tệp có dòng BEGIN thì đọc như PEM, nếu không thì đọc như DER nhị phân hoặc base64 trần.
Đọc các trường quan trọng trong chứng chỉ SSL
Chủ thể (Subject) cho biết chứng chỉ cấp cho ai, gồm tên chung CN, tổ chức O, quốc gia C. Tuy nhiên trình duyệt hiện nay không còn dựa vào CN để so tên miền mà chỉ đọc phần mở rộng Subject Alternative Name (SAN), nên một chứng chỉ TLS thiếu SAN sẽ bị báo lỗi dù CN đúng. Bên cấp (Issuer) là CA đã ký chứng chỉ. Basic Constraints cho biết đây là chứng chỉ CA hay chứng chỉ cuối. Key Usage và Extended Key Usage giới hạn mục đích dùng khóa, ví dụ serverAuth cho website, codeSigning cho ký phần mềm. Certificate Policies cho biết mức xác thực: DV chỉ xác minh quyền kiểm soát tên miền, OV xác minh thêm tổ chức, EV xác minh chặt chẽ nhất. Authority Information Access chứa địa chỉ OCSP để kiểm tra thu hồi và địa chỉ tải chứng chỉ trung gian.
Chuỗi chứng chỉ và lỗi thiếu chứng chỉ trung gian
CA gốc hiếm khi ký trực tiếp chứng chỉ của website; thường có một hoặc hai CA trung gian ở giữa. Máy chủ web phải gửi kèm chứng chỉ trung gian, nếu không một số trình duyệt, điện thoại Android cũ hoặc các thư viện như curl, Java sẽ báo lỗi không xác minh được chứng chỉ dù trên máy bạn vẫn mở được. Tệp fullchain đúng có thứ tự: chứng chỉ của tên miền trước, rồi CA trung gian đã ký nó, rồi tới CA trung gian cấp cao hơn nếu có; CA gốc có thể bỏ vì máy khách đã có sẵn. Khi bạn dán nhiều chứng chỉ, công cụ kiểm tra từng cặp liền kề: tên bên cấp của chứng chỉ trước có khớp tên chủ thể của chứng chỉ sau không, mã khóa AKI có khớp SKI không, và chữ ký của chứng chỉ trước có được xác minh bằng khóa công khai của chứng chỉ sau không.
Công cụ kiểm tra chữ ký tới đâu
Với mỗi cặp chứng chỉ liền kề, công cụ tách phần tbsCertificate và chữ ký, rồi dùng Web Crypto của trình duyệt để xác minh chữ ký bằng khóa công khai của chứng chỉ phía sau. Các thuật toán được hỗ trợ là RSA PKCS#1 v1.5 và RSA-PSS với SHA-1, SHA-256, SHA-384, SHA-512, ECDSA trên P-256, P-384, P-521 và Ed25519 nếu trình duyệt có. Các thuật toán khác như secp256k1, brainpool, DSA hay GOST sẽ được ghi rõ là không kiểm tra được thay vì báo bừa. Điều công cụ không làm: không đối chiếu với kho CA tin cậy của hệ điều hành hay trình duyệt, không kiểm tra thu hồi qua CRL hay OCSP, không kiểm tra tên miền, không kiểm tra ràng buộc tên và độ dài đường dẫn. Một chuỗi hợp lệ ở đây vẫn có thể bị trình duyệt từ chối nếu CA gốc không được tin cậy.
Chứng chỉ chữ ký số doanh nghiệp tại Việt Nam
Chứng chỉ chữ ký số dùng để ký tờ khai thuế, hóa đơn điện tử, hồ sơ bảo hiểm xã hội cũng là chứng chỉ X.509. Tên doanh nghiệp tiếng Việt thường được lưu dạng UTF8String hoặc BMPString, công cụ giải đúng cả hai và chuẩn hóa về dạng dựng sẵn NFC để hiển thị có dấu chính xác. Mã số thuế hoặc số định danh thường nằm ở trường UID (0.9.2342.19200300.100.1.1) với nội dung dạng MST:0123456789, tùy từng nhà cung cấp. Để xem, bạn xuất chứng chỉ từ token USB (không kèm khóa riêng) ra tệp .cer rồi tải lên công cụ. Tuyệt đối không xuất kèm khóa riêng hay tệp .pfx có mật khẩu lên bất kỳ trang web nào.
Khóa riêng và các giới hạn của công cụ
Nếu bạn dán hoặc tải lên nội dung có -----BEGIN PRIVATE KEY-----, -----BEGIN RSA PRIVATE KEY-----, khóa EC, khóa OpenSSH hay khóa PKCS#8 dạng nhị phân, công cụ xóa khối đó khỏi ô nhập ngay lập tức, không phân tích và hiện cảnh báo nổi bật. Khóa riêng là bí mật tuyệt đối của máy chủ; nếu đã lỡ dán khóa của hệ thống thật lên một dịch vụ trực tuyến khác, hãy coi như đã lộ và cấp lại chứng chỉ. Giới hạn khác: công cụ không đọc danh sách thu hồi CRL, tệp .pfx hoặc .p12 có mật khẩu, khóa công khai RSA dạng PKCS#1; các phần mở rộng hiếm chỉ hiện tên và kích thước chứ không giải chi tiết; tệp lớn hơn 5 MB bị bỏ qua. Để xem chứng chỉ đang chạy trên một tên miền cụ thể, hãy dùng SSL Certificate Decoder của Tấn Phát Digital.
Câu hỏi thường gặp (FAQ)
Decode certificate online có an toàn không, chứng chỉ có bị gửi đi không?
Chứng chỉ được giải mã hoàn toàn bằng JavaScript trong trình duyệt, không có yêu cầu mạng nào gửi nội dung đi. Chứng chỉ vốn là thông tin công khai, máy chủ gửi nó cho mọi người truy cập, nên việc đọc chứng chỉ không có rủi ro. Chỉ khóa riêng mới cần giữ bí mật.
Làm sao biết tệp .crt của tôi là PEM hay DER?
Mở tệp bằng Notepad hoặc trình soạn thảo: nếu thấy dòng -----BEGIN CERTIFICATE----- thì là PEM, nếu thấy ký tự lạ không đọc được thì là DER nhị phân. Bạn không cần phân biệt, cứ tải tệp lên, công cụ tự nhận ra.
Vì sao chứng chỉ có đúng CN mà trình duyệt vẫn báo sai tên miền?
Trình duyệt hiện đại chỉ kiểm tra tên miền trong phần mở rộng Subject Alternative Name, bỏ qua CN. Hãy xem mục Tên thay thế (SAN) trong kết quả; nếu tên miền của bạn không có ở đó, cần cấp lại chứng chỉ với SAN đúng.
Thứ tự đúng của tệp fullchain là gì?
Chứng chỉ của tên miền đứng đầu, tiếp theo là CA trung gian đã ký nó, rồi CA trung gian cấp cao hơn nếu có. CA gốc có thể bỏ. Dán cả tệp vào công cụ, phần Chuỗi chứng chỉ sẽ cho biết từng cặp có đúng quan hệ cấp phát không.
Công cụ có kiểm tra chữ ký thật hay chỉ so tên?
Có kiểm tra chữ ký thật. Ngoài so tên và so AKI với SKI, công cụ dùng Web Crypto để xác minh chữ ký của chứng chỉ trước bằng khóa công khai của chứng chỉ sau, hỗ trợ RSA, RSA-PSS, ECDSA P-256/384/521 và Ed25519. Thuật toán không hỗ trợ được ghi rõ là không kiểm tra được.
Kết quả chuỗi hợp lệ có nghĩa là trình duyệt sẽ tin chứng chỉ không?
Không hẳn. Công cụ chỉ xác nhận quan hệ ký giữa các chứng chỉ bạn dán, không đối chiếu với kho CA tin cậy, không kiểm tra thu hồi hay tên miền. Chứng chỉ tự ký nội bộ có thể có chuỗi hợp lệ nhưng trình duyệt vẫn không tin.
Dấu vân tay SHA-256 dùng để làm gì?
Dấu vân tay là mã băm của toàn bộ chứng chỉ, dùng để so khớp chính xác một chứng chỉ, ví dụ so với con số nhà cung cấp gửi qua kênh khác hoặc cấu hình ghim chứng chỉ trong ứng dụng di động. Pin SHA-256 của khóa công khai dùng cho ghim theo khóa, không đổi khi gia hạn chứng chỉ với cùng khóa.
Có đọc được CSR không?
Được. Dán khối -----BEGIN CERTIFICATE REQUEST-----, công cụ hiện chủ thể, danh sách SAN được yêu cầu, loại khóa, thuật toán chữ ký và tự kiểm tra chữ ký của CSR. Nên kiểm tra SAN trước khi gửi CSR đi mua chứng chỉ.
Tôi lỡ dán khóa riêng vào ô nhập thì sao?
Công cụ xóa khối khóa riêng khỏi ô nhập ngay khi phát hiện, không đọc và không hiển thị nó. Vì trang không gửi gì lên máy chủ nên khóa không bị lộ qua công cụ này, nhưng hãy tập thói quen không dán khóa riêng vào bất kỳ trang web nào.
Ngày hết hạn hiển thị theo múi giờ nào?
Chứng chỉ lưu thời điểm theo giờ UTC. Công cụ quy đổi sang giờ Việt Nam GMT+7 và hiển thị đủ ngày, giờ, phút, giây, nên cùng một chứng chỉ sẽ hiện giống nhau trên mọi máy.
Có mở được tệp .pfx hoặc .p12 không?
Không. Tệp .pfx, .p12 chứa cả khóa riêng và thường có mật khẩu, công cụ không xử lý loại tệp này. Hãy xuất riêng phần chứng chỉ ra .cer hoặc .crt rồi tải lên.
Công cụ này khác gì SSL Certificate Decoder?
SSL Certificate Decoder kết nối tới một tên miền và đọc chứng chỉ đang chạy trên máy chủ đó. PEM Certificate Decoder đọc tệp hoặc nội dung bạn dán vào, phù hợp với chứng chỉ chưa cài, máy chủ nội bộ, CSR hay chứng chỉ chữ ký số.
Vì sao chứng chỉ ký bằng SHA-1 bị đánh dấu yếu?
SHA-1 đã có tấn công va chạm thực tế, nên các trình duyệt lớn ngừng chấp nhận chứng chỉ TLS ký bằng SHA-1 từ năm 2017. Khóa RSA dưới 2048 bit cũng bị đánh dấu yếu vì lý do tương tự.
Từ khóa liên quan
- decode certificate online
- pem certificate decoder
- giải mã chứng chỉ ssl
- đọc file crt
- x509 certificate decoder
- certificate decoder online
- xem thông tin chứng chỉ ssl
- kiểm tra file pem
- decode csr online
- kiểm tra chuỗi chứng chỉ
- fullchain.pem thứ tự
- chứng chỉ trung gian ssl
- subject alternative name
- fingerprint sha256 chứng chỉ
- đọc file cer
- der to pem
- chứng chỉ chữ ký số
- openssl x509 text online
- ssl certificate expiry check