- nur zu 10% hängt der Schutz von der eingesetzten Technik ab
- zu 60% beeinflusst das Wissen der Anwender über Möglichkeiten und Grenzen den wirkungsvollen Einsatz kryptografischer Verfahren
- zu 30% hängt die Wirksamkeit von der Disziplin der Anwender ab
In God you may trust.
If you want to use strong crypto, you have to be sure about the keys.
Die meisten Protokolle zur verschlüsselten Kommunikation verwenden Public Key Verfahren (SSL/TLS, OpenPGP, OTR, SSH). Wenn man für hohe Anforderungen wirklich sicher sein will, dass nur der Kommunikationspartner (oder der Server bei SSL) die gesendeten Daten entschlüsseln kann, dann muss man den öffentliche Schlüssel der Gegenseite über einen sicheren, unabhängigen Kanal verifizieren.
Ein universelles Verfahren für die Verifizierung von kryptografischen Schlüsseln ist der Vergleich der Fingerprints der verwendeten Schlüssel. Über einen sicheren Kanal (z.B. persönliches Treffen) tauscht man die Fingerprints der public Keys aus und vergleicht sie später am eigenen Rechner mit den Fingerprints der tatsächlich verwendeten Schlüssel. Man kann die Fingerprints der eigenen Schlüssel auch veröffentlichen, um den Partnern die Verifikation zu ermöglichen.
Krypto-Messenger wie Signal App, Matrix/Riot oder Threema bieten die Möglichkeit, die Schlüssel des Gegenüber anhand der Fingerprints zu verifizieren und unterstützen diese Verifikation bei persönlichen Treffen durch QR-Codes, die man gegeseitig scannen kann ohne lange Zahlenkolonnen vergleichen zu müssen.