Verwendete Technologie

Laut öffentlicher Meinung ist es wichtig, dass der Sicherheitsstandard auf bekannten und öffentlich angewandten Methoden basiert. Um eine effektive Sicherheit zu erzielen, muss diese durch Verheimlichung von Verschlüsselungscodes geschehen und nicht durch Verheimlichung der Art und Weise wie das System funktioniert. Das sog. "security-through-obscurity" Verfahren führt oft zu Fehlern, die durch den Angreifer entdeckt und ausgenutzt werden kann.

Aus diesem Grund nutzen wir für unsere Produkte ausschließlich moderne Verschlüsselungsprotokolle und Methoden, die durch Experten gründlich geprüft worden sind.


Kommunikation innerhalb des Netzwerks

Die gesamte Kommunikation mittels der CryptoCult Software läuft übers Internet. Der Betrieb, d.h. der Aufbau und das Beenden der Verbindung, der Status der Kontakte sowie der SMS-Versand, wird mittels der SIP-Protokollierung (Session Initiation Protocol) geregelt. Das TLS-Protokoll kümmert sich um die Verbindung mit dem SIP-Server, der wie eine Telefonzentrale funktioniert.


Voice-Calls (Anrufe durch Stimmenübetragung)

Das SRTP-Protokoll schützt Sie gegen Lauschangriffe und Änderungen und Missbrauch der entwendeten Informationen. Daten werden durch die AES-256 Verschlüsselungstechnologie abgeschirmt und ihre Integrität kann lediglich durch die HMAC-SHA1 Kodierung verifiziert werden. Weiterhin wird zum Austausch des primären Schlüssels, von dem die eigentlichen Verschlüsselungscodes und Integritätsverifizierung nach dem SRTP-Standard abgeleitet werden, das ZRTP-Protokoll verwendet.

Der Hauptvorteil des ZRTP-Protokolls ist, dass es von den kommunizierenden Seiten keine Geheiminformationen vorab fordert, die folgend als Ausweis eigener Identifikation – sog. Authentifizierung – ausgenutzt werden könnte. Der erste Schritt innerhalb der ZRTP-Protokollierung ist der Austausch des Diffie-Helmann Codes, der beiden kommunizierenden Seiten die Möglichkeit einräumt, ihren Code unverschlüsselt auszutauschen.

Um sich vor einem aktiven Angreifer, der sich als Ihr Kommunikationspartner (man-in-the-middle) ausgibt, zu schützen, wird nach dem Codeaustausch verifiziert, ob beide Seiten den gleichen Code erhalten haben. Im Falle, dass sich unter die kommunizierenden Seiten ein Angreifer einschleicht, werden die Codes, die den beiden Seiten mitgeteilt worden sind, nicht übereinstimmen.

Der Code wird mittels eines 4-stelligen Zeichencodes verifiziert, der aus dem Verschlüsselungscode abgeleitet wird (Short Authentication String). Diesen Code sollten sich die kommunizierenden Seiten gegenseitig vorlesen, um sicher zu gehen, dass er übereinstimmt. Falls die kommunizierenden Seiten bereits in der Vergangenheit miteinander Kontakt hatten, wird bei der Verifizierung zudem die Information aus dem letzten Kontakt hinzugezogen.

Nach der Beendigung des Gesprächs werden die beiden Codes vernichtet, sodass keine Entschlüsselung mehr möglich ist – auch nicht im Falle, wenn eine der beiden kommunizierenden Parteien durch den Angreifer dazu gezwungen werden sollte.


Textnachrichten

Das Versenden der Textnachrichten wird nach dem OpenPGP-Standard geschützt. SMS Nachrichten werden durch die asymetrische Kryptografie geschützt, indem jeder Anwender über zwei Codes verfügt – einen öffentlichen und einen privaten Verschlüsselungscode. Der öffentliche Verschlüsselungscode, wie schon der Name sagt, wird veröffentlicht. Mit seiner Hilfe können externe Anwender Nachrichten verschlüsseln; das Entschlüsseln kann jedoch nur der Anwender mit dem privaten Code.

Die Implementation des Open PGPs, als Bestandteil der CryptoCult Applikation, unterstützt die asymetrischen Codes RSA für die Zwecke der Verschlüsselung, Entschlüsselung, das Unterschreiben der Nachrichten, EIGamal für die Verschlüsselung sowie DSA zum Unterschreiben der Nachrichten. Von allen verfügbaren Codes, die für die Verschlüsselung des eigentlichen Nachrichteninhalts verwendet werden, nutzt die CryptoCult Software die 128-, 192- sowie 256-bit Variante des AES Codes sowie die CAST5 Kodierung. Außerdem können hiermit auch die Nachrichten, die mittels 3DES und TwoFish verschlüsselt wurden, entschlüsselt werden.

Der eigene PGP-Code (RSA) wird sicher direkt durch die Software generiert. Dadurch sind Sie nicht von Produkten eines Dritten abhängig. Es besteht allerdings auch die Möglichkeit aus anderen Applikationen, wie z.B. GnuPG bzw. PGP-Desktop, generierte Codes zu importieren und zu nutzen.


E-Mail

E-Mails werden nach dem OpenPGP-Standard, genauso wie Textnachrichten, verschlüsselt. Der in der CryptoCult Software integrierte E-Mail-Client unterstützt für das Empfangen sowie Versenden von Nachrichten die Standardprotokolle (POP3, IMAP und SMTP). Die Verbindung mit dem E-Mail Server wird mittels SSL abgesichert. Außerdem unterstützt die Applikation den Aufbau von abgesicherten Verbindungen mittels des STARTTLS-Protokolls.


Datenschutz innerhalb der Applikation

Im Tresor gespeicherte Informationen und Daten der Applikation werden mit Hilfe des AES-256 Verfahrens verschlüsselt. Der Verschlüsselungscode wird vom Benutzerpasswort mit der PBKDF2 Funktion mit 4096 Iterationen der Hashfunktion HMAC-SHA-256 und 160-bit Salt abgeleitet. Diese Methode der Codeerstellung gewährleistet erhöhten Schutz gegen Angriffe auf das Passwort als schwächstes Kettenglied der Sicherung.


Zufallsdatenquelle

Eine sichere Funktionsfähigkeit egal welcher kryptographischen Software kommt ohne eine qualitative Zufallsdatenquelle nicht aus. Selbst der beste Code kann die Daten nicht schützen, wenn der Angreifer den Code erraten kann. Aus diesem Grund haben wir uns insbesondere auf das Generieren von Zufallsdaten fokussiert.

Da in Wirklichkeit gesammelte Zufallsdaten kaum redundant vorhanden sind, werden in der Praxis Generatoren von sogenannten Pseudozufallsdaten verwendet. Diese sind in der Lage – ausgegangen von einem wirklich zufälligen Input – eine größere Menge an Daten zu erzeugen, wobei im Falle eines kryptographisch sicheren Generators es nicht möglich ist, diese Daten von den wirklich Zufallsdaten zu unterscheiden. Unsere Software verwendet für die Generierung der Pseudozufallszahlen den kryptographisch sicheren Generator Fortuna von Bruce Schneider; als Quelle für das Sammeln der Zufallsdaten dient eine im Smartphone eingebaute Kamera, die Geräusche während des Gesprächs sowie verschiedene Benutzeraktionen sammelt.

Das Design der Fortuna stellt sicher, dass die Qualität der resultierenden Pseudozufallsdaten nicht gefährdet wird, auch wenn eine der Zufallsdatenquellen ausgeschaltet bzw. manipuliert wird.