# CAcert

CAcert ist eine gemeinschaftsbetriebene, nichtkommerzielle Zertifizierungsstelle (Certification Authority, kurz CA), die von der in Genf domizilierten, vormals in Australien eingetragenen, Non-Profit-Organisation CAcert Incorporated betrieben wird. CAcert stellt für jedermann kostenfrei X.509-Zertifikate für verschiedene Einsatzzwecke aus und soll eine Alternative zu den kommerziellen Zertifizierungsstellen sein, die zum Teil recht hohe Gebühren für ihre Zertifikate erheben.

## Organisation

Träger von CAcert ist CAcert Incorporated, eine im australischen Bundesstaat New South Wales unter der Nummer INC9880170 gegründeten nichtkommerzielle Organisation, die in der Form eines Vereins organisiert ist. Dementsprechend gibt es einen Vorstand, der aus sieben Personen besteht. Die Mitgliedschaft im Verein kann allerdings nur erlangt werden, wenn zwei Mitglieder den Anwärter unterstützen und der Vorstand zustimmt.
Die CAcert-Zertifizierungsstelle wird auf mehreren Servern betrieben, deren Betrieb seit August 2013 an den gemeinnützigen Verein secure-u e. V. übertragen wurde. Abgewickelt wird die Zertifikatserstellung über die Website von CAcert im geschützten Mitgliederbereich.
Die Prozesse und Bedingungen zur Nutzung von CAcert werden durch eine Reihe von Richtlinien (Policies) geregelt, von denen das CAcert Community Agreement die wichtigste ist, da jeder Nutzer diese Vereinbarung akzeptieren muss und bei einer Identitätsbestätigung auch unterschreibt. Weitere Richtlinien regeln u. a. das Vorgehen bei der Bestätigung von Personen- oder Organisationsdaten.

### Vertrauensnetzwerk

Für das Ausstellen von Zertifikaten ist keine Mitgliedschaft im Verein erforderlich. Stattdessen sind die Nutzer von CAcert-Zertifikaten in einem Vertrauensnetzwerk (Web of Trust) organisiert. Jeder Nutzer unterhält dazu ein Benutzerkonto mit vollständigem Namen, Geburtsdatum und E-Mail-Adresse. Neben einem Zugangskennwort müssen die Nutzer zusätzlich fünf Sicherheitsfragen festlegen, deren korrekte Antworten nur sie selbst kennen. Bei einem Verlust des Passwortes müssen diese Fragen korrekt beantwortet werden, um den Zugang zum Benutzerkonto zu erhalten.
Jedem Konto ist ein Punktestand zugeordnet. Die Anzahl der Punkte reicht von anfangs 0 bis zu maximal 150 Punkten und repräsentiert die Vertrauenswürdigkeit der in den Zertifikaten enthaltenen Personendaten. Punkte können hinzugewonnen werden, indem sich die Mitglieder des Web of Trust persönlich treffen, ihre Identität prüfen, diese gegenüber CAcert bestätigen und dadurch eine gewisse Zahl von Punkten erhalten.
Die Zahl der geprüften CAcert-Mitglieder lag am 10. September 2014 bei ca. 287.000 Nutzern mit knapp 78.500 gültigen Zertifikaten.

### Schlichtungsstelle

Zu CAcert gehört auch eine Schlichtungsstelle (Arbitration), die auf Basis des privatrechtlichen Schlichtungsrechts arbeitet und bei Verstößen gegen die Nutzungsbedingungen oder missbräuchliche Nutzung von Zertifikaten auf Antrag tätig wird und auch Geldbußen bis zu einer Höhe von 1.000 Euro verhängen kann. Die Schlichtungsstelle soll CAcert-Nutzer im Falle von drohenden zivilrechtlichen Streitigkeiten vor kostspieligen Gerichtsprozessen bewahren. Auch die Änderung oder Korrektur der Identitätsdaten wird über den Schlichtungsweg bearbeitet. Die Vorgehensweise im Schlichtungsverfahren wird durch eine eigene Policy geregelt.

## Zertifikate

Direkt nach der Registrierung des Benutzerkontos lassen sich sofort beliebig viele Zertifikate ausstellen. Diese enthalten nur die durch eine automatische Test-E-Mail überprüfte E-Mail-Adresse, als Name (Common Name) wird „CAcert WoT User“ eingetragen. Nach dem Erhalt von mindestens 50 Punkten lassen sich auch personalisierte Zertifikate mit eingetragenem Namen ausstellen.
Neben der Ausstellung von Zertifikaten können auch PGP- oder OpenPGP-Schlüssel von der CA signiert werden.

### Client-Zertifikate

Neben der primären E-Mail-Adresse des Benutzerkontos können weitere E-Mail-Adressen eingetragen werden. Für jede E-Mail-Adresse oder mehrere in Kombination können Zertifikate ausgestellt werden. Sie dienen zum Beispiel zum Verschlüsseln und Signieren von E-Mails und anderen Daten und können zur passwortlosen Authentifizierung an Servern verwendet werden – die CAcert-Website selbst unterstützt diese Anmeldung mit Zertifikat.
Ab einem Punktestand von 100 können auf Anfrage auch Zertifikate ausgestellt werden, die zum Signieren von Software verwendet werden können (Code-Signing).

### Server-Zertifikate

Server-Zertifikate sollen die Zugehörigkeit eines Servers zu einer Person oder einem Unternehmen bestätigen und dienen als Basis für verschlüsselte SSL/TLS-Verbindungen. Es gibt verschiedene Dienste, bei denen Server-Zertifikate zum Einsatz kommen. Dazu gehören u. a. HTTPS, SFTP, SMTPS, POP3S und IMAPS. CAcert bietet auch solche Zertifikate an, allerdings enthalten diese zunächst nur den Domainnamen und keine Angaben zur Person oder Organisation, wodurch zwar Verschlüsselung möglich ist, aber keine Identitätsbestätigung. Mit der Organisation Assurance besteht aber auch die Möglichkeit für Organisationen, deren Identität von besonders geschulten CAcert-Mitglieder prüfen zu lassen. Anschließend können die Organisationsdaten in Server-Zertifikate aufgenommen werden.

## Identitätsprüfung

Die Überprüfung der Identität findet bei kommerziellen Zertifikatsausstellern in der Regel zentralisiert beim Aussteller statt. CAcert delegiert diese Aufgabe (Assurance) an das Vertrauensnetz: Ein erfahrener Nutzer, der mindestens 100 Punkte und eine Online-„Assurerprüfung“ erfolgreich bestanden hat (Assurer), überprüft anhand amtlich ausgestellter Lichtbildausweise (z. B. Personalausweis, Reisepass, Führerschein o. ä.) bei einem persönlichen Treffen die Identität eines anderen Nutzers (Assuree) und darf im Erfolgsfall bis zu 35 Punkte vergeben, welche über die CAcert-Website dem Assuree zugeordnet werden. Der Bestätigungsvorgang wird schriftlich dokumentiert und vom Assurer und Assuree unterschrieben; dieses „Identitätsüberprüfungs-Formular“ (auch „CAP-Formular“ genannt) wird anschließend vom Assurer für mindestens sieben Jahre aufbewahrt. Um einen Stand von 50 Punkten zu erreichen, sind mindestens zwei Bestätigungen durch unterschiedliche Assurer erforderlich (Mehr-Augen-Prinzip).
Als Alternative existiert das „Trusted Third Party-Programm“ (TTP), durch das eine Prüfung mittels vertrauenswürdiger Dritter (Notare, Banken etc.) möglich ist. Dieses Programm soll die Assurance in Regionen ermöglichen, in denen die Assurerdichte noch gering ist, hiermit lassen sich zurzeit jedoch nur maximal 70 Punkte erreichen. Im September 2013 gab es diese Möglichkeit für die USA, Puerto Rico, Virgin Islands und Australien; für Brasilien, Norwegen, das Vereinigte Königreich, Neuseeland, Indien und Südafrika befindet sich das TTP in Vorbereitung. Nicht mehr angeboten wird die Prüfung durch Dritte in Deutschland, Österreich, der Schweiz und den Niederlanden, da hier flächendeckend genügend Assurer vorhanden sind.
Bei einem Stand von 100 Punkten kann ein Mitglied durch andere Assurer keine weiteren Punkte erhalten. Für jede selbst durchgeführte Assurance werden jedoch 2 Punkte gutgeschrieben. Nach der Bestätigung von 25 Personen ist die Höchstpunktzahl von 150 Punkten erreicht; zusätzliche Assurances erhöhen den Punktestand nicht weiter, werden aber trotzdem gezählt und registriert, da eine fehlerhafte Assurance prinzipiell durch eine Schlichtungsentscheidung nichtig werden kann.
Die Punktzahl eines Kontos bestimmt den Status des Mitglieds/Assurers und beeinflusst die Zertifikatseigenschaften wie folgt:
| Punkte | Status | Voraussetzung | Bedeutung |
| 000–049 | Unbestätigtes Mitglied | Verifikation der E-Mail-Adresse bzw. Domain | Anonyme Client- und Server-Zertifikate (6 Monate gültig) können ausgestellt werden. |
| 050–099 | Bestätigtes Mitglied | Verifikation der E-Mail-Adresse bzw. Domain | Der Name des Mitglieds wird ins Zertifikat aufgenommen, Client- und Server-Zertifikate sind 24 Monate gültig, PGP-Schlüssel können signiert werden. |
| 100 | Potentieller Assurer | Verifikation der E-Mail-Adresse bzw. Domain | Maximale Punktanzahl, die durch andere Assurer erreichbar ist. |
| 100–109 | Assurer | Bestandene Assurerprüfung | Dritte können verifiziert werden. Für jede Assurance gibt es 2 Punkte. Erstellung von Code-Signing-Zertifikaten (12 Monate gültig) nach manueller Beantragung möglich. Kann Organisations-Admin werden. 10 Punkte können vergeben werden. |
| 110–119 | Assurer | 5 Mitglieder Assured | 15 Punkte können vergeben werden. |
| 120–129 | Assurer | 10 Mitglieder Assured | 20 Punkte können vergeben werden. |
| 130–139 | Assurer | 15 Mitglieder Assured | 25 Punkte können vergeben werden. |
| 140–149 | Assurer | 20 Mitglieder Assured | 30 Punkte können vergeben werden. |
| 150 | Assurer | 25 Mitglieder Assured | Höchstpunktzahl erreicht. 35 Punkte können vergeben werden. Kann Organisations-Assurer werden. |
Ausnahme: Minderjährige Assurer können unabhängig von ihrem Punktestand maximal 10 Punkte vergeben.
Am 1. Dezember 2013 waren 5.700 Mitglieder geprüfte Assurer, ca. 10.300 Personen hatten den Status eines potentiellen Assurers.

## Vertrauenswürdigkeit

Bei kommerziellen Anbietern können keine Zertifikate kostenfrei beantragt werden, bei denen der Name des Anwenders ins Zertifikat aufgenommen wird. CAcert ermöglicht dies, jedoch ist CAcert im Gegensatz zu kommerziellen CAs in vielen E-Mail-Clients und Webbrowsern nicht in der Zertifikatsdatenbank als vertrauenswürdige Zertifizierungsstelle eingetragen. Ein Benutzer, der eine Verbindung zu einem Server mit CAcert-Zertifikat aufbaut, wird daher eine Meldung erhalten, dass die Herkunft des Zertifikats nicht überprüft werden konnte. Analog kann man die E-Mail-Signatur eines Client-Zertifikats nicht prüfen. Der Anwender kann jedoch die Root-Zertifikate von CAcert manuell importieren und damit als vertrauenswürdig einstufen, wonach alle von CAcert herausgegebenen gültigen Zertifikate ohne Warnung angenommen werden.
Bestrebungen seitens CAcert, in freier Software der Mozilla-Familie (Firefox, Thunderbird) als vertrauenswürdiger Herausgeber für ein Root-Zertifikat integriert zu werden, waren bisher erfolglos. Die Mozilla Foundation hat zudem die Kriterien für die Aufnahme neuer Root-Certs öffentlich diskutiert und im Ergebnis verschärft, wobei alte Certs aber aus praktischen Erwägungen erhalten bleiben. Verlangt wird nun ein Audit, das Organisation, Prozesse und Technik prüft; CAcert selbst habe auf die Entwicklung dieser Kriterien Einfluss gehabt.
Wegen Umstrukturierungen in der Leitung von CAcert hat die Organisation Ende April 2007, nach 3 $^1$⁄$_2$ Jahren Diskussion mit der Mozilla Foundation, kurzzeitig den Antrag auf Aufnahme in die Root Chain der Mozilla-Produkte zurückgestellt. Seitdem wird an dem Audit, welches zur Aufnahme notwendig ist, und an anderen Qualitätssicherungsmaßnahmen weiter gearbeitet.
Eine Reihe von anderen Softwareprodukten sowie Open-Source-Distributionen haben das CAcert-Root-Zertifikat jedoch integriert.