सभी SSL articles SSL और Certificates

ACME Protocol क्या है?

ACME (Automated Certificate Management Environment) वो protocol है जो free, automated SSL certificates possible बनाता है। इसी तरह Let’s Encrypt — और आपका ACME client (GetHTTPS, Certbot, acme.sh) — actually Certificate Authority के साथ communicate करता है।

RFC 8555 में defined, ACME ने old manual process (CA को CSRs email करना, human review wait करना) को fully automated, cryptographically secure protocol से replace कर दिया।

ACME कैसे काम करता है — 5 steps

┌──────────┐                              ┌──────────────┐
│  Client   │  ① Account Registration     │  CA Server   │
│ (GetHTTPS)│ ──────────────────────────→  │ (Let's Encrypt)
│           │  ② New Order (domains)       │              │
│           │ ──────────────────────────→  │              │
│           │  ③ Complete Challenges       │              │
│           │ ←─────────────────────────── │              │
│           │ ──────────────────────────→  │              │
│           │  ④ Finalize (send CSR)       │              │
│           │ ──────────────────────────→  │              │
│           │  ⑤ Download Certificate      │              │
│           │ ←─────────────────────────── │              │
└──────────┘                              └──────────────┘

Step 1: Account registration

Client एक ACME account key pair create करता है और public key CA के साथ register करता है। यह key future requests में आपकी identity होती है — हर ACME message इसके साथ signed होता है।

कोई email, कोई password, कोई personal info जरूरी नहीं।

Step 2: New order

Client उन domain names की list submit करता है जिनके लिए certificate चाहिए। CA एक “order” create करता है और “authorizations” का set return करता है — per domain एक — हर एक में complete करने के लिए challenges।

Step 3: Challenges complete करें

हर domain के लिए, client को control prove करना होगा। CA challenge types provide करता है:

Challengeकैसे काम करता हैUse case
HTTP-01/.well-known/acme-challenge/ पर एक file place करेंसबसे common, simplest
DNS-01_acme-challenge.domain पर TXT record add करेंWildcards, no port 80
TLS-ALPN-01Port 443 पर special TLS certificate से respond करेंजब port 80 blocked, no DNS access

Client challenge complete करता है, फिर CA से verify करने को कहता है। CA अपने servers से check करता है — अगर challenge pass होता है, authorization valid mark हो जाता है।

Step 4: Finalize (CSR भेजें)

सभी domains authorized होने के बाद, client certificate के लिए public key वाला CSR (Certificate Signing Request) भेजता है। CA इसे sign करता है और certificate create करता है।

Step 5: Certificate download करें

Client signed certificate chain download करता है — आपका certificate + intermediate CA certificate। Done।

ACME security model

हर ACME request account key use करके JWS (JSON Web Signature) के साथ signed होता है। यह prevent करता है:

  • Replay attacks — हर request का unique nonce होता है
  • Tampering — Signature पूरी request body cover करता है
  • Impersonation — सिर्फ account key holder requests कर सकता है

Account key कभी client से बाहर नहीं जाती। GetHTTPS के साथ, यह Web Crypto API के through आपके browser में create होती है।

GetHTTPS ACME कैसे use करता है

GetHTTPS full ACME protocol आपके browser में run होने वाली JavaScript में implement करता है:

  1. crypto.subtle.generateKey() (Web Crypto API) से Account key create होती है
  2. Same तरह Certificate key create होती है
  3. crypto.subtle.sign() से ACME messages signed होते हैं
  4. pkijs library से CSR create होता है
  5. acme-v02.api.letsencrypt.org के साथ direct HTTPS communication

कोई server-side proxy नहीं, कोई middleware नहीं। आपका browser directly Let’s Encrypt के ACME API से बात करता है। यह unique है — ज्यादातर ACME clients server पर run होते हैं।

ACME clients comparison

Clientकहाँ run होता हैACME v2Auto-renewalLanguage
GetHTTPSBrowser❌ ManualJavaScript
CertbotServer CLIPython
acme.shServer CLIShell
CaddyWeb serverGo
TraefikReverse proxyGo
LegoCLI libraryGo

Full comparison →

ACME support करने वाले CAs

ACME Let’s Encrypt ने create किया लेकिन अब कई CAs use करते हैं — open standard है:

CAACME directory URLFree?
Let’s Encryptacme-v02.api.letsencrypt.org/directory
ZeroSSLacme.zerossl.com/v2/DV90Limited free
Buypassapi.buypass.com/acme/directory
Google Trust ServicesGoogle Cloud ACME के through
DigiCertEnterprise ACME endpointPaid
SectigoEnterprise ACME endpointPaid

FAQ

क्या ACME और Let’s Encrypt same हैं?

नहीं। ACME protocol है (RFC 8555)। Let’s Encrypt एक Certificate Authority है जो ACME use करता है। Other CAs (ZeroSSL, Buypass, Google) भी ACME support करते हैं। ऐसे समझें जैसे HTTP vs Google — HTTP protocol है, Google एक service है जो इसे use करती है।

क्या अपना ACME client बना सकते हैं?

हाँ। Protocol RFC 8555 में fully specified है। GetHTTPS browser-based implementation का example है। ज्यादातर languages के लिए libraries available हैं (Python के लिए certbot, Go के लिए lego, JavaScript के लिए acme.js)।

ACME v2 क्या है?

ACME v2 current version है (RFC 8555), जिसने wildcard certificate support add किया और draft v1 protocol replace किया। सभी modern ACME clients v2 use करते हैं। Let’s Encrypt ने 2021 में v1 endpoint retire किया।

ACME server down होने पर क्या होता है?

Existing certificates काम करते रहते हैं (ये phone home नहीं करते)। बस server ठीक होने तक issue या renew नहीं कर सकते। Let’s Encrypt का high uptime और redundant infrastructure है।

संबंधित लेख

SSL और Certificates 2026-05-07
Let's Encrypt क्या है?
Let's Encrypt एक free, non-profit Certificate Authority है जिसने 1 billion से ज्यादा SSL certificates issue किए हैं। जानें यह कैसे काम करता है, rate limits, और GetHTTPS के साथ कैसे use करें।
शुरुआत करें 2026-05-08
HTTP-01 Challenge: यह कैसे काम करता है और कैसे पूरा करें
HTTP-01 SSL certificate के लिए domain ownership prove करने का सबसे simple तरीका है। अपने server पर एक file रखें, Let's Encrypt verify करता है, और आपका certificate issue हो जाता है।
शुरुआत करें 2026-05-08
DNS-01 Challenge: यह कैसे काम करता है और कैसे पूरा करें
DNS-01 validation आपके DNS में TXT record जोड़कर domain ownership prove करता है। Wildcard certificates के लिए ज़रूरी। Cloudflare, Route 53, GoDaddy, Namecheap और बाकी providers के लिए setup शामिल है।
SSL और Certificates 2026-05-07
SSL/TLS कैसे काम करता है: TLS Handshake explained
TLS handshake का visual walkthrough — आपका browser और server milliseconds में encrypted connection कैसे establish करते हैं। TLS 1.2, TLS 1.3, session resumption, और forward secrecy covered है।
अपने browser में मुफ़्त SSL certificate पाएँ
कोई installation नहीं, कोई account नहीं। आपकी private key कभी आपका device नहीं छोड़ती।
अपना certificate पाएँ