Pack Camo

X.509 सर्टिफ़िकेट डिकोडर

किसी भी PEM या DER सर्टिफ़िकेट का सब्जेक्ट, जारीकर्ता, वैधता, SAN और फ़िंगरप्रिंट देखें।

सब कुछ लोकल तौर पर चलता है — कुछ भी अपलोड नहीं होता।

सर्टिफ़िकेट

2 सर्टिफ़िकेट

…

सर्टिफ़िकेट में क्या लिखा है, ठीक से समझें

यह सर्टिफ़िकेट डिकोडर X.509 सर्टिफ़िकेट पढ़ता है — हर HTTPS साइट पर लगे SSL/TLS सर्टिफ़िकेट, साथ ही क्लाइंट प्रमाणीकरण, कोड साइनिंग और S/MIME के लिए इस्तेमाल होने वाले सर्टिफ़िकेट — और उनकी पूरी जानकारी दिखाता है: सब्जेक्ट और जारीकर्ता, वैधता की तारीखें और एक्सपायरी के बाकी दिन, सब्जेक्ट अल्टरनेटिव नेम, पब्लिक की का प्रकार और साइज़, सभी एक्सटेंशन, तथा SHA-1 और SHA-256 फ़िंगरप्रिंट। एक या अधिक PEM ब्लॉक, सिर्फ़ Base64 पेस्ट करें, या .crt, .cer, .der, .pem या .p7b फ़ाइल ड्रॉप करें। पूरी चेन एक-एक करके डिकोड होती है और हर सिग्नेचर की जाँच अगले सर्टिफ़िकेट से की जाती है। पार्सिंग आपके ब्राउज़र में होती है; कुछ भी अपलोड नहीं किया जाता।

सर्टिफ़िकेट डिकोड कैसे करें

  1. 1-----BEGIN CERTIFICATE----- और -----END CERTIFICATE----- लाइनों सहित सर्टिफ़िकेट पेस्ट करें, या फ़ाइल को इनपुट पर ड्रॉप करें।
  2. 2सारांश पढ़ें: यह किसके लिए जारी हुआ, किसने जारी किया, और क्या यह आज मान्य है।
  3. 3Subject Alternative Names देखें: ब्राउज़र होस्टनेम का मिलान इनसे करते हैं, Common Name से नहीं।
  4. 4दूसरी कॉपी से तुलना करने के लिए फ़िंगरप्रिंट कॉपी करें, या सब कुछ JSON के रूप में एक्सपोर्ट करें।

X.509 सर्टिफ़िकेट में क्या होता है?

सर्टिफ़िकेट एक पब्लिक की को किसी नाम से जोड़ता है, और इस पर उस जारीकर्ता के हस्ताक्षर होते हैं जो इस संबंध की गारंटी देता है। सब्जेक्ट वह है जिसके लिए सर्टिफ़िकेट बना है और जारीकर्ता वह है जिसने इस पर हस्ताक्षर किए हैं, दोनों विशिष्ट नामों के रूप में लिखे जाते हैं जैसे CN=example.com, O=Example Inc., C=US। वैधता अवधि वह पहला और अंतिम समय बताती है जब सर्टिफ़िकेट पर भरोसा किया जा सकता है, और सीरियल नंबर इसे जारीकर्ता द्वारा हस्ताक्षरित सभी दस्तावेज़ों के बीच विशिष्ट रूप से पहचानता है — यही रिवोकेशन लिस्ट में दिखता है।

बाकी सब कुछ एक्सटेंशन में रहता है। फ़ॉर्मैट के वर्ज़न 3 के बाद से, जिसका पालन आज का हर सर्टिफ़िकेट करता है, अधिकतर अर्थ यही रखते हैं: यह किन नामों को कवर करता है, की का उपयोग किस लिए हो सकता है, क्या यह अन्य सर्टिफ़िकेट साइन कर सकता है, और यह कहाँ जाँचना है कि इसे रद्द तो नहीं किया गया।

ज़रूरी एक्सटेंशन

Subject Alternative Name (SAN)
DNS नाम, IP पते, ईमेल और URI जिनके लिए सर्टिफ़िकेट मान्य है। ब्राउज़र Common Name को अनदेखा करते हैं और केवल इस सूची की जाँच करते हैं; <code>*.example.com</code> जैसा वाइल्डकार्ड सबडोमेन का एक स्तर कवर करता है।
Key Usage और Extended Key Usage
की क्या कर सकती है: साइन करना, कीज़ एन्क्रिप्ट करना, सर्टिफ़िकेट साइन करना; और किस उद्देश्य के लिए, जैसे TLS सर्वर प्रमाणीकरण या कोड साइनिंग।
Basic Constraints
क्या यह एक सर्टिफ़िकेट अथॉरिटी (<code>CA:TRUE</code>) है जो अन्य सर्टिफ़िकेट साइन कर सकती है, और इसके नीचे कितने मध्यवर्ती स्तर आ सकते हैं (पाथ लेंथ)।
Authority Information Access और CRL Distribution Points
जारीकर्ता का सर्टिफ़िकेट कहाँ से डाउनलोड करें, उसका OCSP रिस्पॉन्डर कहाँ है, और उसकी सर्टिफ़िकेट रिवोकेशन लिस्ट कहाँ स्थित है।
Certificate Policies
CA ने किस वैलिडेशन स्तर का उपयोग किया: डोमेन वैलिडेटेड (DV), ऑर्गनाइज़ेशन वैलिडेटेड (OV) या एक्सटेंडेड वैलिडेशन (EV)।
Signed Certificate Timestamps
इस बात का प्रमाण कि सर्टिफ़िकेट को सार्वजनिक Certificate Transparency लॉग में दर्ज किया गया था, जो ब्राउज़र सार्वजनिक रूप से विश्वसनीय TLS सर्टिफ़िकेट के लिए आवश्यक मानते हैं।

PEM, DER, CRT और CER

DER सर्टिफ़िकेट की बाइनरी एन्कोडिंग है (ASN.1 डिस्टिंग्विश्ड एन्कोडिंग रूल्स)। PEM वही बाइट्स हैं जो -----BEGIN CERTIFICATE----- लाइनों के बीच Base64 में होते हैं, ताकि उन्हें टेक्स्ट फ़ाइलों और ईमेल में पेस्ट किया जा सके; एक फ़ाइल में कई PEM ब्लॉक एक चेन बनाते हैं। एक्सटेंशन .crt और .cer यह नहीं बताते कि अंदर कौन-सी एन्कोडिंग है — दोनों ही आम हैं — और यह डिकोडर दोनों को स्वीकार करता है। .p7b फ़ाइल एक PKCS#7 बंडल है जिसमें कई सर्टिफ़िकेट होते हैं, यह उसे भी खोलता है।

कमांड लाइन पर बदलने के लिए, openssl x509 -in cert.der -inform der -out cert.pem DER को PEM में बदलता है, और openssl x509 -in cert.pem -noout -text लगभग वही जानकारी प्रिंट करता है जो यह पेज दिखाता है।

चेन, सेल्फ़-साइंड सर्टिफ़िकेट और फ़िंगरप्रिंट

सर्वर को अपना सर्टिफ़िकेट भेजना चाहिए और उसके बाद वे इंटरमीडिएट सर्टिफ़िकेट जो किसी विश्वसनीय रूट तक ले जाते हैं। जब आप यहाँ कोई चेन पेस्ट करते हैं, तो प्रत्येक सर्टिफ़िकेट के सिग्नेचर को उसके बाद वाले सर्टिफ़िकेट की पब्लिक की से जाँचा जाता है, ताकि आप एक नज़र में देख सकें कि क्रम सही है या कोई लिंक गायब है। ऐसा सर्टिफ़िकेट जिसका सब्जेक्ट और जारीकर्ता एक ही हो, और जिसका सिग्नेचर अपनी ही की से सत्यापित हो, सेल्फ़-साइंड होता है: या तो रूट CA या परीक्षण के लिए बनाया गया सर्टिफ़िकेट।

फ़िंगरप्रिंट पूरे सर्टिफ़िकेट का हैश होता है। SHA-256 फ़िंगरप्रिंट सर्टिफ़िकेट को पिन करने या तुलना करने का मानक तरीका है; SHA-1 फ़िंगरप्रिंट अभी भी Windows सर्टिफ़िकेट व्यूअर जैसे पुराने टूल्स द्वारा दिखाए जाते हैं। SPKI SHA-256 हैश केवल पब्लिक की को कवर करता है, और उसी की के साथ सर्टिफ़िकेट रिन्यू होने पर भी नहीं बदलता। नए सर्टिफ़िकेट के लिए की पेयर बनाने हेतु की पेयर जनरेटर देखें।

अक्सर पूछे जाने वाले सवाल

मैं कैसे चेक करूँ कि SSL सर्टिफ़िकेट कब एक्सपायर होगा?
सर्टिफ़िकेट पेस्ट करें और 'वैधता' देखें: इसके बाद नहीं की तारीख वह समय है जब यह एक्सपायर होगा, और बैज दिखाता है कि कितने दिन बचे हैं। किसी साइट का सर्टिफ़िकेट पाने के लिए, उसे अपने ब्राउज़र के सर्टिफ़िकेट व्यूअर में खोलकर एक्सपोर्ट करें, या openssl s_client -connect example.com:443 -showcerts चलाएँ।
PEM और DER में क्या अंतर है?
दोनों में एक ही सर्टिफ़िकेट होता है। DER बाइनरी है; PEM वही बाइनरी डेटा है जो BEGIN और END लाइनों के साथ Base64 में लिखा होता है। यह टूल दोनों पढ़ता है।
मेरा ब्राउज़र क्यों कह रहा है कि नाम मेल नहीं खाता?
होस्टनेम Subject Alternative Name एक्सटेंशन में होना चाहिए। ब्राउज़र अब Common Name नहीं देखते, इसलिए जिस सर्टिफ़िकेट का नाम केवल CN में होता है उसे अस्वीकार कर दिया जाता है।
क्या मैं पूरी सर्टिफ़िकेट चेन डिकोड कर सकता हूँ?
हाँ। सभी PEM ब्लॉक एक साथ पेस्ट करें, या .pem या .p7b बंडल ड्रॉप करें। प्रत्येक सर्टिफ़िकेट क्रम में दिखाया जाता है, और प्रत्येक सिग्नेचर की जाँच अगले सर्टिफ़िकेट की की से की जाती है।
सेल्फ़-साइंड का क्या मतलब है?
सर्टिफ़िकेट पर किसी स्वतंत्र CA के बजाय उसकी अपनी की से हस्ताक्षर किए गए थे। रूट CA सर्टिफ़िकेट स्वभाव से ही सेल्फ़-साइंड होते हैं; किसी वेबसाइट के लिए, सेल्फ़-साइंड सर्टिफ़िकेट केवल वहीं विश्वसनीय होता है जहाँ इसे मैन्युअल रूप से इंस्टॉल किया गया हो।
क्या यह किसी प्राइवेट की या CSR को डिकोड कर सकता है?
नहीं। यह केवल सर्टिफ़िकेट पढ़ता है, और यदि आप इसके बजाय प्राइवेट की, पब्लिक की या सर्टिफ़िकेट साइनिंग रिक्वेस्ट पेस्ट करते हैं तो यह आपको सूचित करता है।
क्या यहाँ अपना सर्टिफ़िकेट पेस्ट करना सुरक्षित है?
सर्टिफ़िकेट सार्वजनिक होते हैं — सर्वर उन्हें हर विज़िटर को भेजते हैं — और डिकोडिंग पूरी तरह से आपके ब्राउज़र में ही होती है। कभी भी किसी भी वेबसाइट पर प्राइवेट की पेस्ट न करें।