Certificate Transparency (CT) एक ऐसी system है जो हर publicly issued SSL certificate को public, append-only logs में record करती है। इसका मतलब है कि कोई भी देख सकता है कि किसी भी domain के लिए कौन से certificates issue किए गए हैं — और unauthorized या fraudulent certificates को catch कर सकता है।
CT को Google ने 2013 में उन incidents के बाद बनाया था जहाँ CAs ने ऐसे domains के लिए certificates issue किए जो उन्हें नहीं करने चाहिए थे (खासकर 2011 में DigiNotar breach, जिसने fraudulent Google certificates को जन्म दिया)। 2018 से, सभी publicly trusted CAs को हर certificate CT logs में submit करना mandatory है।
CT क्यों important है
CT के बिना (2018 से पहले)
एक CA किसी ऐसे person के लिए google.com का certificate issue कर सकता था जो इसका owner नहीं है। जब तक certificate किसी attack में actively use नहीं किया जाता, तब तक किसी को पता नहीं चलता। CAs सिर्फ trust पर काम करते थे।
CT के साथ
हर certificate publicly log होता है। अगर कोई CA google.com के लिए certificate issue करता है, तो यह hours के भीतर CT logs में show होता है। Google (या monitoring करने वाला कोई भी) इसे तुरंत catch कर सकता है।
अपने domain के लिए CT logs कैसे check करें
crt.sh — सबसे popular CT search tool
crt.sh पर जाएँ और अपना domain enter करें। आप उस domain के लिए issue किए गए हर certificate को देख पाएँगे:
- Issuer — किस CA ने इसे issue किया
- Not Before / Not After — validity period
- SAN — certificate किन domain names को cover करता है
Example results for example.com:
2026-05-08 Let's Encrypt R10 example.com, www.example.com
2026-02-15 Let's Encrypt R10 example.com
2025-11-20 Let's Encrypt R3 example.com, www.example.com
...
Command-line search
curl -s "https://crt.sh/?q=yourdomain.com&output=json" | jq '.[] | {issuer_name, not_before, not_after, common_name}'
क्या देखना चाहिए
- ऐसे certificates जो आपने request नहीं किए — यह sign हो सकता है कि कोई आपके domain को impersonate कर रहा है
- Unexpected CAs — अगर आप सिर्फ Let’s Encrypt use करते हैं लेकिन DigiCert certificate दिखता है, तो investigate करें
- Wildcard certificates जो आपने नहीं बनाए — किसी unknown source से
*.yourdomain.com - ऐसे subdomains जिन्हें आप recognize नहीं करते — किसी ऐसे certificate में
secret.yourdomain.comजो आपने request नहीं किया
CT technically कैसे काम करता है
- CA एक certificate issue करता है और इसे एक या ज़्यादा CT logs में submit करता है
- CT log एक SCT return करता है (Signed Certificate Timestamp) — certificate log होने का proof
- SCT certificate में embed किया जाता है (या TLS handshake के दौरान provide किया जाता है)
- Browsers SCT verify करते हैं — Chrome को कम से कम 2-3 CT logs से valid SCTs चाहिए
- कोई भी अपने domain के लिए issue किए गए certificates के लिए logs monitor कर सकता है
CT logs append-only हैं — certificates add किए जा सकते हैं लेकिन कभी remove या modify नहीं किए जा सकते। यह एक auditable history बनाता है।
CT monitoring कैसे setup करें
Automatic monitoring के लिए, ऐसी service use करें जो आपके domain के लिए नए certificates issue होने पर आपको notify करे:
| Tool | कैसे | Cost |
|---|---|---|
| crt.sh (manual) | समय-समय पर search करें | free |
| Cert Spotter (SSLMate) | नए certs पर email alerts | free tier |
| Facebook CT Monitor | Facebook के tool से alerts | free |
| Google Certificate Transparency | Google के CT logs में search करें | free |
CT और GetHTTPS
जब आप GetHTTPS से certificate लेते हैं, तो Let’s Encrypt automatically इसे कई CT logs में submit करता है। आप issue होने के बाद crt.sh पर अपने domain की search करके verify कर सकते हैं — आपका certificate minutes में show होगा।
यह intentional है — सभी certificates की public logging एक security feature है, privacy concern नहीं। Certificate खुद (domain name, public key, CA) TLS handshake के दौरान हर visitor को पहले से भेजा जाता है।
FAQ
क्या मैं Certificate Transparency से opt-out कर सकता हूँ?
नहीं, publicly trusted certificates के लिए। 2018 से, सभी CAs को CT logs में certificates submit करने होते हैं। Browsers (Chrome, Safari) valid SCTs के बिना certificates reject करते हैं। Private/internal CAs exempt हैं — वे public CT logs में submit नहीं करते।
क्या CT मेरे server का IP address reveal करता है?
नहीं। CT logs में certificate (domain name, public key, CA, validity) होता है लेकिन server का IP address नहीं। DNS records IP reveal करते हैं — CT logs कोई नई information add नहीं करते।
मुझे अपने domain के लिए एक ऐसा certificate मिला जो मैंने request नहीं किया। मैं क्या करूँ?
- Issuer check करें — क्या यह आपके hosting provider का AutoSSL हो सकता है?
- SAN check करें — क्या इसमें ऐसे domains हैं जिन्हें आप recognize करते हैं?
- अगर really unauthorized है, तो revocation के लिए issuer CA से contact करें
- अपने DNS में unauthorized changes check करें — हो सकता है किसी ने आपके domain को अपने server की तरफ point कर दिया हो
कितने CT logs exist करते हैं?
दर्जनों। Major operators में Google (Argon, Xenon), Cloudflare (Nimbus), DigiCert, Sectigo, और Let’s Encrypt शामिल हैं। Browsers को कई independent logs से SCTs चाहिए ताकि एक ही compromised log fraudulent certificate को hide न कर सके।