Daten verschlüsseln und persistent speichern

Auch in ihrer ursprünglichen Funktion als reiner Datenspeicher gewinnt eine Flash-Karte durch ergänzende Sicherheitsfunktionen zusätzliche Anwendungsmöglichkeiten. So benötigen etwa Audit Trails einen vertrauenswürdigen Logging-Mechanismus. Jedes Ereignis, das sicher protokolliert werden muss, wird persistent und unveränderlich gespeichert. Hash-Ketten von Datensätzen in einmalig beschreibbaren Speichern (WORM) stellen sicher, dass jede Manipulation oder Löschung von Datenelementen erkennbar ist.

Exportierte Daten werden durch digitale Signatur versiegelt, die eine perfekte Lösung zur Absicherung von fiskalischen Anwendungen in Registrierkassen darstellt. Asymmetrische Verschlüsselung unter Verwendung des Secure-Elementes kann auch schlicht dem Datenschutz dienen. Die Applikation speichert passwortgeschützt Daten, damit diese nur von autorisiertem Personal oder einem entsprechenden System ausgelesen werden können wie beispielsweise Bilder von Überwachungskameras oder Bodycams.

Bild 2: Das steckbare TPM (Trusted-Platform-Modul) besteht aus SD Memory Cards mit entsprechenden Secure Elementen.

Bild 2: Das steckbare TPM (Trusted-Platform-Modul) besteht aus SD Memory Cards mit entsprechenden Secure-Elementen. Swissbit

Dingen einen Ausweis geben

Gibt das Speichermedium den Anwendungen und Systemen eine eindeutige Identität, kann diese auch auf andere Weise genutzt werden. Im Industrial Internet of Things werden immer mehr Geräte vernetzt und sind aus dem Internet erreichbar. Systeme wie industrielle Steuerungen, die per Remote gewartet werden sollen, sind somit jedoch angreifbar. Vernetzte Systeme müssen daher künftig einen Schutz vor Missbrauch und Identitätsdiebstahl enthalten. Auch der Zugriff auf Daten muss eingeschränkt werden. Eine Verschlüsselung von Daten und die eindeutige Identifizierbarkeit von M2M-Kommunikationsteilnehmern sind die saubersten Lösungen.

Analog zur Absicherung von Internetkommunikation in der IT, wo sich Anwender für eine Zwei-Faktor-Authentisierung mit einem Smartcard Token ausweisen, bieten Speichermodule mit Secure-Element die Möglichkeit, den Teilnehmern in der M2M-Kommunikation einen Ausweis zu geben. So weiß ein Gerät, dass die empfangenen Daten oder Datenabfragen von einem anderen Gerät korrekt sind und die Quelle einer Nachricht wirklich die Systemkomponente ist, die sie vorgibt zu sein. Mit auf Memory Cards integrierten Smartcards erhalten Systeme eine nicht klonbare Identität. Solche Systeme können sich authentisieren und Daten kryptografisch stark gesichert senden und empfangen.

Firmware realisiert vielfältige Sicherheitsfunktionen

Die sicheren Flash-Medien, die Swissbit für die beschriebenen Aufgaben anbietet, sind Erweiterungen bewährter SD und microSD Memory Cards für industrielle Anforderungen. Diese gibt es mit extrem langlebigem SLC-Flash oder mit dem kostengünstigeren Durabit-MLC. Hinter diesem Markenbegriff des Herstellers verbergen sich spezielle Firmware-Funktionen, welche Endurance (Lebensdauer des Mediums) und Retention (Lebensdauer der Daten) von MLC-NAND-Chips weit über das sonst mögliche Maß verlängern.

In der Firmware sitzt dann auch ein großer Teil der Sicherheitsfunktionen wie ein integrierter AES-Enkryptor oder die Möglichkeit, das Medium in einen WORM-Modus zu versetzen. Für Anwendungen, die eine eindeutige, nicht fälschbare Identität verlangen, enthält die Speicherkarte dann zusätzlich eine Smartcard als Secure-Element. Dieses übernimmt die Funktion eines Trusted-Platform-Moduls (TPM, Bild 2). Diese Sicherheitsvarianten bewähren sich bereits im breiten Praxiseinsatz wie etwa in abhörsicheren Handys, in Bodycams für Sicherheitsbehörden oder in betrugssicheren Registrierkassen. Die Integration der Karten und ihrer Sicherheitsfunktionen ist denkbar einfach (siehe Kasten).

So funktioniert die Integration

Die Delegierung von Kryptografieaufgaben an diese Memory Cards mit Secure Element erfolgt über PKCS#11-Programmierung (Public-Key Cryptography Standard). Um die API der sicheren Speicherkarten zu nutzen, bietet Swissbit eine PKCS#11-Library. Die API definiert Funktionen, die zum Erstellen, Ändern, Verwenden und Löschen von kryptografischen Objekten auf sicheren Flash-Karten benötigt werden. Diese Objekte können X.509-Zertifikate, RSA-Private-/Public-Key-Paare, elliptische Schlüsselpaare, symmetrische Schlüssel oder Datenobjekte sein.

Mitgeliefert wird ein PKCS#11-Applikationsprogramm, mit dem alle Sicherheitsfunktionen leicht nachvollzogen werden können. Es verwendet die PKCS#11-API und implementiert eine Befehlszeilenschnittstelle (CLI) zur PKCS#11-Bibliothek. Als Schlüssel- und Zertifikatmanagementprogramm kann ein vorhandenes PKCS#11-kompatibles Tool oder auch das Open Source Tool xca zum Einsatz kommen, eine Applikation mit GUI für den Umgang mit X509-Zertifikaten. Mit xca werden über die PKCS#11-API Anfragen zur Zertifikatssignierung auf Basis von geschütztem Schlüsselmaterial auf der Swissbit-Karte erstellt und Zertifikate auf die Karte kopiert. Zusätzlich lassen sich RSA- und ECDSA-Schlüsselpaare auf der Karte erzeugen.

Ein überaus praktischer Aspekt der PKCS#11-Nutzung: Auch Mozilla Firefox nutzt die PKCS#11-API. Die Swissbit-PKCS#11-Bibliothek integriert sich in Firefox und verwendet dabei die X509-Zertifikate zur SSL-Client-Authentisierung. Diese sind auf der Swissbit-Flash-Karte gespeichert und sichern so den Zugang zu und die Kommunikation mit Webseiten. Die PKCS#11-API bietet zudem einen OpenSSL-Engine-Support, sodass OpenSSL direkt auf die Objekte auf der Karte zugreifen kann. Auf diesem Weg sind alltäglich genutzte Sicherheitsmechanismen hochsicher mit den Memory Cards realisierbar. Die Integration in eine Vielzahl von Open-Source-Applikationen zeigt die Standardkonformität der PKCS#11 Schnittstelle.

Seite 2 von 3123