Alle SSL-Artikel SSL & Zertifikate

Was ist das ACME-Protokoll?

ACME (Automated Certificate Management Environment) ist das Protokoll, das kostenlose, automatisierte SSL-Zertifikate ermoeglicht. Es ist die Art und Weise, wie Let’s Encrypt — und Ihr ACME-Client (GetHTTPS, Certbot, acme.sh) — tatsaechlich mit der Zertifizierungsstelle kommuniziert.

Definiert in RFC 8555, ersetzte ACME den alten manuellen Prozess (CSRs per E-Mail an eine CA senden, auf manuelle Pruefung warten) durch ein vollstaendig automatisiertes, kryptografisch sicheres Protokoll.

Wie ACME funktioniert — die 5 Schritte

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

Schritt 1: Kontoregistrierung

Der Client erzeugt ein ACME-Kontoschlüsselpaar und registriert den öffentlichen Schlüssel bei der CA. Dieser Schlüssel identifiziert Sie bei zukünftigen Anfragen — jede ACME-Nachricht wird damit signiert.

Keine E-Mail, kein Passwort, keine persönlichen Daten erforderlich.

Schritt 2: Neue Bestellung

Der Client übermittelt eine Liste von Domainnamen, für die ein Zertifikat gewünscht wird. Die CA erstellt eine „Bestellung” und gibt eine Reihe von „Autorisierungen” zurück — eine pro Domain — jeweils mit zu erledigenden Challenges.

Schritt 3: Challenges abschliessen

Für jede Domain muss der Client die Kontrolle nachweisen. Die CA bietet verschiedene Challenge-Typen an:

ChallengeFunktionsweiseAnwendungsfall
HTTP-01Eine Datei unter /.well-known/acme-challenge/ ablegenAm häufigsten, am einfachsten
DNS-01Einen TXT-Eintrag bei _acme-challenge.domain hinzufügenWildcards, kein Port 80
TLS-ALPN-01Auf Port 443 mit einem speziellen TLS-Zertifikat antwortenWenn Port 80 blockiert ist, kein DNS-Zugriff

Der Client schliesst die Challenge ab und fordert die CA zur Überprüfung auf. Die CA prüft von ihren Servern aus — wenn die Challenge bestanden ist, wird die Autorisierung als gültig markiert.

Schritt 4: Finalisierung (CSR senden)

Nachdem alle Domains autorisiert sind, sendet der Client einen CSR (Certificate Signing Request) mit dem öffentlichen Schlüssel für das Zertifikat. Die CA signiert ihn und erstellt das Zertifikat.

Schritt 5: Zertifikat herunterladen

Der Client lädt die signierte Zertifikatskette herunter — Ihr Zertifikat + das Zwischenzertifikat der CA. Fertig.

ACME-Sicherheitsmodell

Jede ACME-Anfrage wird mit JWS (JSON Web Signature) unter Verwendung des Kontoschlüssels signiert. Dies verhindert:

  • Replay-Angriffe — jede Anfrage hat eine eindeutige Nonce
  • Manipulation — die Signatur deckt den gesamten Anfragekörper ab
  • Identitätsdiebstahl — nur der Inhaber des Kontoschlüssels kann Anfragen stellen

Der Kontoschlüssel verlässt niemals den Client. Bei GetHTTPS wird er in Ihrem Browser über die Web Crypto API generiert.

Wie GetHTTPS ACME nutzt

GetHTTPS implementiert das vollständige ACME-Protokoll in JavaScript, das in Ihrem Browser läuft:

  1. Kontoschlüssel wird mit crypto.subtle.generateKey() (Web Crypto API) generiert
  2. Zertifikatsschlüssel wird auf die gleiche Weise generiert
  3. ACME-Nachrichten werden mit crypto.subtle.sign() signiert
  4. CSR wird mit der pkijs-Bibliothek erstellt
  5. Direkte HTTPS-Kommunikation mit acme-v02.api.letsencrypt.org

Kein serverseitiger Proxy, keine Middleware. Ihr Browser kommuniziert direkt mit der ACME-API von Let’s Encrypt. Das ist einzigartig — die meisten ACME-Clients laufen auf einem Server.

ACME-Clients im Vergleich

ClientLäuft inACME v2Automatische ErneuerungSprache
GetHTTPSBrowser❌ ManuellJavaScript
CertbotServer CLIPython
acme.shServer CLIShell
CaddyWebserverGo
TraefikReverse ProxyGo
LegoCLI-BibliothekGo

Vollständiger Vergleich →

CAs, die ACME unterstützen

ACME wurde von Let’s Encrypt entwickelt, ist aber mittlerweile ein offener Standard, der von mehreren CAs verwendet wird:

CAACME Directory URLKostenlos?
Let’s Encryptacme-v02.api.letsencrypt.org/directory
ZeroSSLacme.zerossl.com/v2/DV90Begrenzt kostenlos
Buypassapi.buypass.com/acme/directory
Google Trust ServicesVia Google Cloud ACME
DigiCertEnterprise ACME EndpointKostenpflichtig
SectigoEnterprise ACME EndpointKostenpflichtig

Häufig gestellte Fragen

Ist ACME dasselbe wie Let’s Encrypt?

Nein. ACME ist das Protokoll (RFC 8555). Let’s Encrypt ist eine Zertifizierungsstelle, die ACME verwendet. Auch andere CAs (ZeroSSL, Buypass, Google) unterstützen ACME. Stellen Sie es sich vor wie HTTP vs. Google — HTTP ist das Protokoll, Google ist ein Dienst, der es nutzt.

Kann ich meinen eigenen ACME-Client implementieren?

Ja. Das Protokoll ist vollständig in RFC 8555 spezifiziert. GetHTTPS ist ein Beispiel für eine browserbasierte Implementierung. Bibliotheken existieren für die meisten Programmiersprachen (certbot für Python, lego für Go, acme.js für JavaScript).

Was ist ACME v2?

ACME v2 ist die aktuelle Version (RFC 8555), die Wildcard-Zertifikatsunterstützung hinzufügte und das Entwurfs-v1-Protokoll ersetzte. Alle modernen ACME-Clients verwenden v2. Let’s Encrypt hat den v1-Endpunkt 2021 abgeschaltet.

Was passiert, wenn der ACME-Server ausfällt?

Bestehende Zertifikate funktionieren weiterhin (sie kontaktieren nicht den Server). Sie können lediglich keine neuen Zertifikate ausstellen oder erneuern, bis der Server wiederhergestellt ist. Let’s Encrypt hat eine hohe Verfügbarkeit und eine redundante Infrastruktur.

Verwandte Artikel

SSL & Zertifikate 2026-05-07
Was ist Let's Encrypt?
Let's Encrypt ist eine kostenlose, gemeinnuetzige Zertifizierungsstelle, die ueber 1 Milliarde SSL-Zertifikate ausgestellt hat. Erfahren Sie, wie es funktioniert, welche Rate Limits gelten und wie Sie es mit GetHTTPS verwenden.
Erste Schritte 2026-05-08
HTTP-01-Challenge: Funktionsweise und Durchführung
HTTP-01 ist der einfachste Weg, die Domain-Inhaberschaft für ein SSL-Zertifikat nachzuweisen. Legen Sie eine Datei auf Ihrem Server ab, Let's Encrypt verifiziert sie, und Ihr Zertifikat wird ausgestellt.
Erste Schritte 2026-05-08
DNS-01-Challenge: Funktionsweise und Durchführung
Die DNS-01-Validierung beweist die Domain-Inhaberschaft durch Hinzufügen eines TXT-Eintrags in Ihrem DNS. Erforderlich für Wildcard-Zertifikate. Einrichtung für Cloudflare, Route 53, GoDaddy, Namecheap und mehr.
SSL & Zertifikate 2026-05-07
Wie SSL/TLS funktioniert: Der TLS-Handshake erklärt
Ein visueller Durchgang durch den TLS-Handshake — wie Ihr Browser und ein Server in Millisekunden eine verschlüsselte Verbindung aufbauen. Behandelt TLS 1.2, TLS 1.3, Sitzungswiederaufnahme und Forward Secrecy.
Kostenloses SSL-Zertifikat im Browser erhalten
Keine Installation, kein Konto. Ihr privater Schlüssel verlässt nie Ihr Gerät.
Zertifikat erhalten