In den letzten Jahren hat das World Wide Web ein exponentielles Wachstum von Hackern, Malware, Lösegeld und anderer bösartiger Software oder Parteien erlebt, die ständig versuchen, einen Weg zu finden, unsere persönlichen Daten zu stehlen: Angesichts dieses Szenarios ist es selbstverständlich, dass die Sicherung Ihrer Daten zu einer der wichtigsten Aufgaben wurde, die wir priorisieren sollten, unabhängig von der Rolle, die wir normalerweise spielen. Die allgemeine (und dringende) Notwendigkeit, den unbefugten Zugriff auf persönliche, sensible und / oder anderweitig kritische Informationen zu verhindern, sollte von allen anerkannt werden – Endbenutzern, Servicebesitzern, Serveradministratoren usw.: Die Unterschiede hängen hauptsächlich damit zusammen, was wir schützen müssen und wie wir das tun sollten.

Es versteht sich von selbst, dass die Wahl der richtigen Art und Weise, unsere Daten zu schützen, oft auf eine gut durchgeführte Risikobewertung folgt, gefolgt von einer Kosten-Nutzen-Analyse, die uns dabei hilft, die geeigneten technischen und organisatorischen Maßnahmen zu finden, die in unserem spezifischen Szenario implementiert werden können. Dies ist auch der richtige Weg, um gemäß der Datenschutz-Grundverordnung (DSGVO) zu handeln, wie in der Art. 32 – Sicherheit der Verarbeitung:

Unter Berücksichtigung des Stands der Technik, der Implementierungskosten und der Art, des Umfangs, des Kontexts und der Zwecke der Verarbeitung sowie des Risikos unterschiedlicher Wahrscheinlichkeit und Schwere für die Rechte und Freiheiten natürlicher Personen treffen der Verantwortliche und der Auftragsverarbeiter geeignete technische und organisatorische Maßnahmen, um ein dem Risiko angemessenes Sicherheitsniveau zu gewährleisten

Hier finden Sie eine Liste der häufigsten technischen und organisatorischen Maßnahmen, um den Schutz und die Sicherheit der Daten zu gewährleisten.:

  • Zugangskontrolle: Schützen Sie alle physischen Zugriffe auf Ihre Server-, Client- und / oder Datenräume mit Schlüsseln, Chipkarten, Wänden, Schließfächern, Alarmen und ähnlichem.
  • Minimierung: Stellen Sie sicher, dass alle autorisierten Parteien nur auf die Daten zugreifen können, die sich speziell auf ihre spezifischen Aufgaben und / oder Autorisierungen beziehen, ohne etwas anderes sehen zu dürfen.
  • Integrität: Schützen Sie Ihre Daten vor versehentlichem Verlust, Zerstörung oder Beschädigung durch geeignete Gegenmaßnahmen (Brand- /Hochwassersensoren, Disaster Recovery und dergleichen).
  • Pseudonymisierung: Ersetzen Sie benutzerbezogene Daten durch zufällige, anonyme Textblöcke, damit der Eigentümer die Einträge weiterhin (für statistische Zwecke) speichern und gleichzeitig alle persönlichen Daten entfernen kann.
  • Verschlüsselung während der Übertragung: Stellen Sie sicher, dass die Daten immer mit starken Verschlüsselungsstandards während der Übertragung (SSL / TLS-Zertifikate) und über sichere Verbindungen übertragen werden: Dies gilt auch für jede Art von Website und webbasiertem Dienst, der Formulare, Anmeldebildschirme, Upload- / Download-Funktionen usw. enthält.
  • Verschlüsselung im Ruhezustand: Schützen Sie Ihre lokalen Datenspeichereinheiten (einschließlich der von Servern und Desktop- & -Mobilclients verwendeten) mit einem starken Verschlüsselungsstandard im Ruhezustand; Stellen Sie sicher, dass die in SaaS- und Cloud-basierten Diensten gespeicherten Daten auch im Ruhezustand verschlüsselt werden.
  • Vertraulichkeit: Verhindern Sie eine unbefugte oder rechtswidrige Verarbeitung, indem Sie Konzepte wie die Trennung von Belangen implementieren & Aufgabentrennung, Durchsetzung von Passwortrichtlinien usw.
  • Wiederherstellbarkeit: Stellen Sie sicher, dass alle relevanten Daten regelmäßig gesichert werden, und überprüfen Sie sie regelmäßig, um sicherzustellen, dass die Daten erfolgreich abgerufen werden können.
  • Evaluierung: Unterziehen Sie das gesamte System regelmäßigen technischen Überprüfungen, Audits durch Dritte, nehmen Sie einen effektiven Satz von Sicherheitsindikatoren an und so weiter.

In diesem Beitrag werden wir über zwei dieser technischen Maßnahmen sprechen: Verschlüsselung während der Übertragung und Verschlüsselung im Ruhezustand.

Einführung: die drei Stufen der digitalen Daten

Das erste, was wir tun sollten, ist aufzuzählen, wie viele „Zustände“ digitale Daten tatsächlich haben können, und sicher zu sein, jeden von ihnen zu verstehen:

  • In Ruhe: Dies ist der Anfangszustand aller digitalen Daten: In sehr kurzer Zeit bezeichnet dies die Daten, die irgendwo gespeichert sind, ohne von irgendjemandem (einschließlich Software, Dritten, Menschen usw.) verwendet und / oder übertragen zu werden. Von lokalen Festplatten bis hin zu Netzwerkspeichern, von USB-Sticks bis hin zu mobilen Geräten, von Systemordnern bis hin zu Datenbankservern – jedes physische und logische Speichersystem, jede Einheit oder jedes Gerät soll verwendet werden, um ruhende Daten zu enthalten … zumindest für eine Weile.
  • Unterwegs: auch bekannt als „in Bewegung“. Dies ist relativ zu den Daten, die irgendwo an einen anderen Ort übertragen werden. Es ist erwähnenswert, dass das Konzept der „Datenübertragung“ zwischen einer beliebigen Anzahl von Parteien stattfinden kann, nicht nur auf zwei zu begrenzen (der Sender und ein Empfänger): wenn wir beispielsweise eine Datei über unser LAN von unserem Desktop-PC auf unseren Laptop übertragen, führen wir im Grunde eine Datenübertragung durch, an der eine einzelne Partei (wir) beteiligt ist. Umgekehrt erzwingen wir beim Senden einer Transaktion an eine verteilte Datenbank, z. B. eine Blockchain, eine Datenübertragung zwischen einer unbestimmten Anzahl von Parteien (den gesamten Blockchain-Knoten).
  • Im Einsatz: wann immer die Daten nicht nur passiv auf einer Festplatte oder einem externen Speichermedium gespeichert werden, sondern von einer oder mehreren Anwendungen verarbeitet werden – und daher generiert, angezeigt, aktualisiert, angehängt, gelöscht usw. werden – sollen sie „verwendet“ werden. Es versteht sich von selbst, dass verwendete Daten anfällig für verschiedene Arten von Bedrohungen sind, je nachdem, wo sie sich im System befinden und wer darauf zugreifen und / oder sie verwenden kann. Die Verschlüsselung der verwendeten Daten ist jedoch ziemlich schwierig, da sie höchstwahrscheinlich die Anwendung, die tatsächlich darauf zugreift, verkrüppeln, behindern oder zum Absturz bringen würde: Aus diesem Grund ist der beste Weg, um die verwendeten Daten zu schützen, sicherzustellen, dass die Anwendung sich um diese Aufgabe kümmert, indem sie die sichersten Entwicklungs- und Implementierungsmuster in ihrem Quellcode verwendet.

Die Summe der drei oben erläuterten Aussagen heißt „die drei Stufen der digitalen Daten“: Jetzt, da wir den Kern von ihnen haben, sind wir bereit, tief in die Verschlüsselungsthemen einzutauchen.

Datenverschlüsselung im Ruhezustand

Aus der oben angegebenen Definition von „im Ruhezustand“ können wir leicht verstehen, wie sich diese Art von Daten normalerweise in einem stabilen Zustand befindet: Sie werden nicht innerhalb des Systems oder Netzwerks übertragen und es wird nicht von einer Anwendung oder einem Drittanbieter darauf reagiert. Es ist etwas, das ein Ziel erreicht hat, zumindest vorübergehend.

Gründe für die Verwendung

Warum sollten wir diese Daten dann überhaupt verschlüsseln? Nun, es gibt eine Reihe guter Gründe dafür: Schauen wir uns die wichtigsten an.

Physischer Diebstahl

Wenn unser Gerät gestohlen wird, verhindert die Verschlüsselung im Ruhezustand, dass der Dieb sofort auf unsere Daten zugreifen kann. Sicher, Es kann immer noch versuchen, es mit Brute-Force- oder anderen Verschlüsselungsmethoden zu entschlüsseln, Dies wird jedoch eine angemessene Zeit in Anspruch nehmen: Wir sollten auf jeden Fall in der Lage sein, die Adeguate-Gegenmaßnahmen zu ergreifen, bevor dies geschieht, sowie: Ändern der Kontoinformationen, die er möglicherweise über vorhandene Browser sehen oder verwenden kann Passwort-Manager, Login-Cookies, E-Mail-Clients Konten und so weiter; verfolgen Sie unser Gerät und / oder geben Sie ein „Alle Daten löschen“ mit unseren Google- oder Apple-Remote-Geräteverwaltungsdiensten aus. und so weiter.

Logischer Diebstahl

Wenn unser PC, unsere Website oder unser E-Mail-Konto von einem böswilligen Benutzer oder einer böswilligen Software gehackt wird, kann der Täter durch die Verschlüsselung im Ruhezustand nicht auf unsere Daten zugreifen – selbst wenn sie gestohlen oder heruntergeladen werden: Es ist im Grunde das gleiche Szenario eines physischen Diebstahls, außer dass es viel subtiler ist, weil die meisten Benutzer (oder Administratoren) sich dessen nicht einmal bewusst sind.

Hier ist eine weitere gute Gelegenheit, sich an die großartigen Worte von John T zu erinnern. Chambers, ehemaliger CEO von Cisco, Inc.:

Es gibt zwei Arten von Unternehmen: diejenigen, die gehackt wurden, und diejenigen, die nicht wissen, dass sie gehackt wurden.

In Anbetracht des aktuellen Zustands des Internets und der Überfülle an Malware und messbaren Hacking-Versuchen kann für jeden Endbenutzer, der ein webfähiges Gerät besitzt, die gleiche Aussage getroffen werden: 100% garantiert.

Menschliche Fehler

Ganz zu schweigen von den physischen und / oder logischen Diebstählen, es gibt viele andere Szenarien, in denen die Datenverschlüsselung im Ruhezustand ein Lebensretter sein könnte: zum Beispiel, wenn wir unser Smartphone verloren haben (und jemand es findet); oder wenn wir beim Zuweisen von Berechtigungen einen Fehler machen und unbefugten Benutzern (oder Kunden) Zugriff auf Dateien / Ordner / Daten gewähren, die sie nicht sehen sollten; oder wenn wir unseren lokalen PC oder unser E-Mail-Passwort in Sichtweite vergessen, sodass jeder, der keine Lust hat, unsere Privatsphäre zu respektieren, sich unsere Sachen ansehen kann; und die Liste könnte noch eine Weile weitergehen.

Wie kann es uns helfen?

Um all das zusammenzufassen, könnten wir unsere vorherigen Fragen mit einer einzigen Zeile beantworten, indem wir sagen, dass die Verschlüsselung unserer ruhenden Daten uns helfen könnte, besser mit einer möglichen Datenverletzung umzugehen.

Es wird uns nicht helfen, dies zu verhindern – was hauptsächlich eine Aufgabe für Firewalls, Antivirenprogramme, bewährte Verfahren und Sicherheitsprotokolle ist -, aber es wird uns definitiv die Chance (und die Zeit) geben, die entsprechenden Gegenmaßnahmen einzurichten und hoffentlich den Gesamtschaden durch ein mögliches Leck zu minimieren.

Implementierung

Die Implementierung eines Datenverschlüsselungs-At-Rest-Sicherheitsprotokolls kann abhängig von den folgenden Faktoren entweder einfach oder schwierig sein:

  • welche physischen und logischen Datenquellen / -speicher wir schützen möchten (oder haben): Physische Quellen umfassen Festplatten, NAS-Elemente, Smartphones, USB-Sticks usw., während logische Quellen lokale oder Remote-Datenbanken, Cloud-basierte Assets, virtualisierte Geräte usw. umfassen;
  • Wer muss Zugriff auf diese Daten haben: menschen (lokale oder entfernte Benutzer oder andere Dritte, die sich mit uns verbinden), von Menschen gesteuerte Software (wie MS Word) oder automatische Prozesse oder Dienste (wie eine nächtliche Sicherungsaufgabe);
  • Wie viel wir bereit sind, in Bezug auf die Gesamtleistung und / oder den einfachen Zugriff zu opfern, um die Sicherheit zu erhöhen: Können wir alle unsere lokalen (und entfernten) Benutzer bitten, diese Daten zu entschlüsseln, bevor wir auf sie zugreifen können? Sollten wir ein Passwort, ein physisches Token oder einen OTP-Code verwenden? Können wir die Verschlüsselung transparent genug machen, um unsere externen Benutzer nicht zu behindern und unseren Software-Apps und -Tools zu ermöglichen, mit den verschlüsselten Daten umzugehen, wann immer sie damit umgehen müssen?

Glücklicherweise sind diese Faktoren den meisten Verschlüsselungstools im Ruhezustand bekannt, die zum Schutz unserer Daten entwickelt wurden, ohne die Gesamtfunktionalität unserer Umgebung zu beeinträchtigen:

  • wenn wir physische (oder logische) Festplatten verschlüsseln möchten, können wir großartige Softwaretools wie VeraCrypt (100% kostenlos) oder AxCrypt (kostenlose Version verfügbar) verwenden;
  • Wenn wir unsere USB-Sticks schützen müssen, können wir entweder die oben genannten Tools verwenden oder ein hardwareverschlüsseltes Flash-Laufwerk kaufen, das fingerabdruckbasierte oder kennwortbasierte Entsperrmechanismen implementiert (ab 20 ~ 30 Dollar);
  • Wenn wir die in einem Datenbankverwaltungssystem gespeicherten Daten verschlüsseln möchten, bieten die meisten heute verfügbaren DBMS native Verschlüsselungstechniken (InnoDB Tablespace-Verschlüsselung für MySQL und MariaDB, Transparente Datenverschlüsselung für MSSQL usw.);
  • Wenn wir nach einer Möglichkeit suchen, unsere E-Mail-Nachrichten sicher zu speichern, können wir leicht einen sicheren E-Mail-Verschlüsselungsstandard wie S / MIME oder PGP übernehmen (beide sind kostenlos): Obwohl diese Protokolle hauptsächlich mit der Verschlüsselung während der Übertragung zusammenhängen, da sie Daten schützen, die hauptsächlich an entfernte Parteien übertragen werden sollen, werden sie in der Tat häufig verwendet, um eine clientseitige Verschlüsselung durchzuführen, was bedeutet, dass sie die E-Mail-Nachrichten schützen, während sie sich noch im Ruhezustand befinden. Da diese Nachrichten höchstwahrscheinlich gesendet werden, müssen unsere Zielorte natürlich auch denselben Standard verwenden, um sie lesen zu können.

Datenverschlüsselung während der Übertragung

Wie der Name schon sagt, sollten Daten während der Übertragung wie ein Übertragungsstrom gesehen werden: Ein gutes Beispiel für Daten während der Übertragung ist eine typische Webseite, die wir aus dem Internet erhalten, wenn wir im Internet surfen. Hier ist, was unter der Haube in aller Kürze passiert:

  1. Wir senden eine HTTP- (oder HTTPS-) Anfrage an den Server, der die von uns besuchte Website hostet.
  2. Der Webserver akzeptiert unsere Anfrage, verarbeitet sie, indem er den (statischen oder dynamischen) Inhalt findet, nach dem wir gefragt haben, und sendet sie dann als HTTP- (oder HTTPS-) Antwort über einen bestimmten TCP-Port an uns (normalerweise 80 für HTTP und 443 für HTTPS).
  3. Unser Client, in der Regel ein Webbrowser wie Google Chrome, Firefox oder Edge, empfängt die HTTP (s) -Antwort, speichert sie in seinem internen Cache und zeigt sie uns an.

Wie wir sehen können, gibt es eindeutig eine Datenübertragung zwischen dem Server und dem Client: während dieser Übertragung werden die angeforderten Daten (der HTML-Code der Webseite) zu einem Fluss, der mindestens fünf verschiedene Zustände durchläuft:

  1. es beginnt bei-rest (Serverspeicher),
  2. wechselt dann zu in-use (Webserverspeicher),
  3. dann zu in-transit (unter Verwendung des HyperText Transfer Protocol auf einem bestimmten TCP-Port),
  4. dann wieder zu in-use (Webbrowser),
  5. und schließlich zu at-Rest (Client-Cache).

Gründe für die Verwendung

Nehmen wir nun an, dass sowohl der Server als auch der Client eine starke Datenverschlüsselung im Ruhezustand implementiert haben: Dies bedeutet, dass der erste und der fünfte Zustand intern sicher sind, da jeder Einbruchsversuch gegen verschlüsselte Daten unternommen würde. Der dritte Zustand – in dem sich die Daten befinden – kann jedoch verschlüsselt sein oder nicht, abhängig von dem Protokoll, das der Server und der Client tatsächlich verwenden, um die Daten zu übertragen.

Folgendes passiert normalerweise unter der Haube, wenn das HTTP-Protokoll verwendet wird:

Verschlüsselung während der Übertragung und Verschlüsselung im Ruhezustand - Definitionen und Best Practices

Wie wir sehen können, ist das Sicherheitsproblem ziemlich offensichtlich: Wenn der Webserver die eingehende Anforderung verarbeitet und die angeforderten Daten transparent entschlüsselt, ist der Kanal, über den sie an den Webclient (HTTP) übertragen werden, nicht verschlüsselt: Daher kann jede beleidigende Partei, die es schafft, einen geeigneten Angriff erfolgreich durchzuführen (siehe unten), sofort auf unsere unverschlüsselten Daten zugreifen.

Wie kann es uns helfen

Wenn Sie neugierig sind, welche Art von Angriffen gegen ein unverschlüsseltes TCP-basiertes Übertragungsprotokoll wie HTTP verwendet werden können, finden Sie hier einige Bedrohungen, die Sie kennen sollten:

  • Abhören: Ein Angriff auf Netzwerkebene, der sich darauf konzentriert, kleine Pakete aus dem Netzwerk zu erfassen, die von anderen Computern übertragen werden, und den Dateninhalt auf der Suche nach Informationen jeglicher Art zu lesen (weitere Informationen hier).
  • Mann in der Mitte: ein manipulationsbasierter Angriff, bei dem der Angreifer die Kommunikation zwischen zwei Parteien heimlich weiterleitet und / oder ändert, um sie glauben zu lassen, dass sie direkt miteinander kommunizieren (weitere Informationen hier).

Die Implementierung geeigneter Verschlüsselungsprotokolle während der Übertragung zur Sicherung unserer kritischen Datenübertragungsendpunkte wird uns definitiv dabei helfen, diese Art von Bedrohungen zu verhindern.

Wie man es implementiert

Bei der Implementierung eines effektiven Verschlüsselungsmusters während der Übertragung müssen Sie sich beim Entwerfen der eigentlichen Datenübertragung an eine Reihe bekannter Empfehlungen und Best Practices halten: Welche Protokolle (nicht) verwendet werden sollen, welche Software (nicht) übernommen werden soll und so weiter. Zum Beispiel:

  • Wenn das sendende Gerät über eine Webschnittstelle erreichbar ist, sollte der Webverkehr nur über Secure Sockets Layer (SSL) mit starken Sicherheitsprotokollen wie Transport Layer Security (TLS) übertragen werden: dies gilt für jede Website und / oder jeden WAN-erreichbaren Dienst, einschließlich E-Mail-Servern und dergleichen. Ab heute ist der beste (und einfachste) Weg, TLS-Sicherheit zu implementieren und die Verschlüsselung während der Übertragung für jede Website zu implementieren, der Erhalt eines SSL / TLS-HTTPS-Zertifikats: Diese können entweder von registrierten Zertifizierungsstellen (Comodo, GlobalSign, GoDaddy, DigiCert) erworben werden und ihre riesige Reseller / Subseller-Liste) oder automatisch durch einen Selbstsignierungsprozess generiert, wie wir in diesem Beitrag kurz erklärt haben. Obwohl selbstsignierte Zertifikate die gleiche Verschlüsselungsstufe wie ihre CA-signierten Gegenstücke gewähren, werden sie von den Benutzern im Allgemeinen nicht als vertrauenswürdig eingestuft, da ihre Browser-Clients nicht in der Lage sind, den guten Glauben der Identität des Ausstellers (Sie) zu überprüfen und Ihre Website als „nicht vertrauenswürdig“ zu kennzeichnen: Aus diesem Grund sollten sie nur auf nicht-produktiven (oder nicht öffentlich zugänglichen) Servern / Diensten verwendet werden.
  • Alle über E-Mail übertragenen Daten sollten mit kryptografisch starken E-Mail-Verschlüsselungstools wie S / MIME oder PGP gesichert werden, die wir bereits behandelt haben, als wir über Datenverschlüsselung im Ruhezustand sprachen: Obwohl diese Protokolle ihre Verschlüsselung auf Clientebene (und damit im Ruhezustand) durchführen, eignen sie sich auch hervorragend zum Schutz des asynchronen Transitflusses einer E-Mail-Nachricht.
  • Alle binären Daten sollten mit geeigneten Dateiverschlüsselungstools verschlüsselt werden, bevor sie an E-Mails angehängt und / oder auf andere Weise übertragen werden. Die meisten Komprimierungsprotokolle, einschließlich ZIP, RAR und 7Z, unterstützen heutzutage ein angemessenes Maß an kennwortgeschützter Verschlüsselung: Ihre Verwendung ist häufig eine großartige Möglichkeit, um ein zusätzliches Sicherheitsniveau hinzuzufügen und gleichzeitig die Größe der Anhänge zu reduzieren
  • Die Übertragung von Text- und / oder Binärdaten außerhalb des Webs sollte ebenfalls über eine Verschlüsselung auf Anwendungsebene verschlüsselt werden, wobei die folgenden Szenarien zu berücksichtigen sind:
    • Wenn sich die Anwendungsdatenbank außerhalb des Anwendungsservers befindet, sollte die Verbindung zwischen der Datenbank und der Anwendung mit FIPS-kompatiblen kryptografischen Algorithmen verschlüsselt werden.
    • Wenn keine Verschlüsselung auf Anwendungsebene verfügbar ist, implementieren Sie eine Verschlüsselung auf Netzwerkebene wie IPSec- oder SSH-Tunneling und / oder stellen Sie sicher, dass die Übertragung selbst mit autorisierten Geräten ausgeführt wird, die in geschützten Subnetzen mit starken Firewall-Steuerelementen (VPN und dergleichen) arbeiten.

Die folgende Tabelle zeigt einige Beispiele für unsichere Netzwerkprotokolle, die Sie vermeiden sollten, und ihre sicheren Gegenstücke, die Sie stattdessen verwenden sollten:

Transfer Type What to avoid (insecure) What to use (secure)
Web Access HTTP HTTPS
E-Mail Servers POP3, SMTP, IMAP POP3S, IMAPS, SMTPS
File Transfer FTP, RCP FTPS, SFTP, SCP, WebDAV over HTTPS
Remote Shell telnet SSH2
Remote Desktop VNC radmin, RDP

Ende-zu-Ende-Verschlüsselung

Verschlüsselung während der Übertragung ist sehr hilfreich, hat jedoch eine wesentliche Einschränkung: Sie garantiert nicht, dass die Daten am Startpunkt verschlüsselt und erst entschlüsselt werden, wenn sie verwendet werden. Mit anderen Worten, unsere Daten könnten immer noch von gelegentlichen und / oder böswilligen Lauschern, einschließlich Internetprovidern, Kommunikationsdienstanbietern und allen, die auf die kryptografischen Schlüssel zugreifen könnten, die zur Entschlüsselung der Daten während der Übertragung erforderlich sind, älter sein.

Die Überwindung dieser Einschränkung ist dank der Ende-zu-Ende–Verschlüsselung (E2EE) möglich, einem Kommunikationsparadigma, bei dem nur die kommunizierenden Endparteien – beispielsweise die Benutzer – die Nachrichten entschlüsseln und daher lesen können. Ende-zu-Ende-verschlüsselte Daten werden vor der Übertragung verschlüsselt und bleiben verschlüsselt, bis sie vom Endnutzer empfangen werden.

Gründe für die Verwendung

Um besser zu verstehen, wie die End-to-End-Verschlüsselung die Verschlüsselung während des Transports in Bezug auf die Widerstandsfähigkeit gegen Lauscher überlagert, stellen wir uns die folgenden Szenarien vor.

  1. Angenommen, ein Dritter schafft es, sein eigenes Stammzertifikat auf einer vertrauenswürdigen Zertifizierungsstelle zu platzieren: Eine solche Aktion könnte theoretisch von einem staatlichen Akteur, einem Polizeidienst oder sogar einem böswilligen / beschädigten Betreiber einer Zertifizierungsstelle durchgeführt werden. Jeder, der dazu in der Lage ist, könnte erfolgreich einen Man-in-the-Middle-Angriff auf die TLS-Verbindung selbst durchführen, das Gespräch belauschen und möglicherweise sogar manipulieren. Ende-zu-Ende-verschlüsselte Daten sind nativ resistent gegen diese Art von Angriff, da die Verschlüsselung nicht auf Serverebene durchgeführt wird.
  2. End-to-End-Verschlüsselung kann auch das Schutzniveau zwischen den Benutzerprozessen erhöhen, die von einem Betriebssystem erzeugt werden. Erinnern Sie sich an die jüngsten CPU-Fehler namens SPECTRE und MELTDOWN? Beide erlaubten einem böswilligen Drittanbieter (z. B. einem bösartigen Prozess), Speicherdaten zu lesen, ohne dazu autorisiert zu sein. Die End-to-End-Verschlüsselung könnte ein solches Szenario vermeiden, solange die Verschlüsselung zwischen Benutzerprozessen (im Gegensatz zum Kernel) durchgeführt wird, wodurch verhindert wird, dass unverschlüsselte Daten in den Speicher abgelegt werden.

Wie es uns helfen kann

Ende-zu-Ende-Verschlüsselung ist die sicherste Form der Kommunikation, die heutzutage verwendet werden kann, da sie sicherstellt, dass nur Sie und die Person, mit der Sie kommunizieren, lesen können, was gesendet wird, und niemand dazwischen, nicht einmal der Dienst, der die Übertragung zwischen Peers tatsächlich durchführt. Verschiedene Ende-zu-Ende-Verschlüsselungsimplementierungen sind bereits bei den meisten Messaging-Apps und -Diensten (einschließlich WhatsApp, LINE, Telegram und dergleichen) wirksam. In einem typischen „Kommunikations-App“ -Szenario sind die Nachrichten mit einem Schloss gesichert, und nur der Absender und der Empfänger haben den speziellen Schlüssel, um sie zu entsperren und zu lesen: Für zusätzlichen Schutz wird jede Nachricht automatisch mit einem eigenen Schloss und Schlüssel gesendet.

Wie man es implementiert

Mit der End-to-End-Verschlüsselung kann alles geschützt werden: von Chat-Nachrichten, Dateien, Fotos, sensorischen Daten auf IoT-Geräten bis hin zu permanenten oder temporären Daten. Wir können wählen, welche Daten wir Ende-zu-Ende verschlüsseln möchten. Beispielsweise möchten wir möglicherweise alle Informationen zu einer Chat-App (z. B. Zeitstempel) im Klartext behalten, den Nachrichteninhalt jedoch Ende-zu-Ende verschlüsseln.

  • Jeder Benutzer hat einen privaten & öffentlichen Schlüssel, den die Software bei der Anmeldung oder beim nächsten Login auf dem Gerät des Benutzers generieren muss.
  • Der öffentliche Schlüssel des Benutzers wird an einem öffentlichen Ort veröffentlicht (z. B. einem REST-basierten Schlüsselverwaltungsdienst): Dies ist erforderlich, damit Benutzer die öffentlichen Schlüssel des anderen finden und Daten miteinander verschlüsseln können.
  • Der private Schlüssel des Benutzers verbleibt auf dem Gerät des Benutzers, geschützt durch den nativen Schlüsselspeicher des Betriebssystems (oder andere sichere Speicher).
  • Bevor Sie eine Chatnachricht senden oder ein Dokument freigeben, verschlüsselt die App den Inhalt mit dem öffentlichen Schlüssel des Empfängers (clientseitig).

Fazit

Unsere Reise durch die verschiedenen Verschlüsselungsparadigmen ist abgeschlossen: Wir hoffen aufrichtig, dass diese Übersicht Benutzern und Systemadministratoren hilft, ihr Bewusstsein für die verschiedenen heute verfügbaren Verschlüsselungsarten zu schärfen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

lg