Sicherheitsbetrachtungen

Eine absolute Sicherheit gibt es nicht. Spätestens wenn jemand Sie mit einer Waffe bedroht und die Herausgabe der Daten fordert, erübrigt sich jede Diskussion.
 
Ihre Sicherheit hängt davon ab, wieviel Aufwand Sie dem Angreifer wert sind. Ihr Computer kann verwanzt oder mit Spionageprogrammen versehen werden. Selbst ohne Internetanschluss können Ihre Daten per Funk versendet werden. Kameras können Sie und Ihren Bildschirm hochauflösend übertragen. Selbstverständlich können auch Ihre Mitarbeiter oder Freunde bestochen oder erpresst werden. Wenn Sie so sehr im Fokus Ihres Gegners stehen, kann Ihnen kaum einer helfen.
 
Wir beschränken uns hier auf normale Situationen wie Werksspionage, allgemeines Abhören aller Kommunikation durch diverse Dienste, neugierige Mitmenschen und Cyber-Angriffe durch Viren und Trojaner.
 
Sobald Sie Ihren PC mit einem Internetanschluss versehen, ist es mit der Sicherheit vorbei. Moderne Virenscanner sind sehr leistungsfähig. Neue, noch unbekannte oder sehr hochwertige Angriffe werden aber möglicherweise nicht erkannt.
 
Wenn Sie annehmen, dass Sie nicht über das Internet ausspioniert werden, und nur Daten für andere unlesbar versenden wollen, brauchen Sie nichts weiter zu beachten. Verschlüsseln Sie die Daten mit dem CompLoc-Stick und senden Sie sie an den Empfänger - mit absoluter Sicherheit.
 
Wollen Sie auch die Daten auf ihrem PC schützen, müssen Sie einige Regeln beachten: Nachdem Sie eine Datei verschlüsselt haben, müssen Sie das Original komplett löschen. Verschieben in den Papierkorb bringt sicherheitstechnisch gar nichts. Selbst wenn Sie den Papierkorb gelöscht haben, bleiben die Daten auf Ihrer Festplatte, bis sie irgendwann überschrieben werden. Ganz sicher sind Sie, wenn Sie ein Programm verwenden, welches die gelöschten Bereiche Ihrer Festplatte neu überschreibt. Solche Programme gibt es im Internet zu erwerben oder auch gratis herunterzuladen. Achten Sie darauf, auch alte Versionen, Backups und temporäre Dateien sicher zu löschen. Sind alle unverschlüsselten Originaldateien nachhaltig gelöscht, sind Ihre Dateien bei Entwendung des PCs oder unerlaubtem Zugriff sicher. Dieses gilt nicht bei Verwendung von Cloud-Laufwerken. Falls Sie jemals die unverschlüsselte Originaldatei in der Cloud gespeichert hatten, besteht keine sichere Methode mehr, sie endgültig zu löschen. Achten Sie darauf, nur die verschlüsselten Dateien in der Cloud zu speichern.
 
Schwieriger wird es, wenn Sie befürchten müssen, Angriffen aus dem Internet ausgesetzt zu sein. Grundsätzlich ist die Datei verwundbar, wenn Sie sie ansehen oder bearbeiten. Dann liegt sie unverschlüsselt im Arbeitsspeicher oder auf Ihrem Bildschirm. Z.B. Keylogger, die auch Bilder ihres Bildschirms speichern und evtl. übertragen, können sie so kopieren.
 
Trojaner können vielfältige Aufgaben übernehmen. Theoretisch könnte man ihnen vorgaukeln, dass Sie den CompLoc-Stick benutzen, aber die Daten werden anders verschlüsselt, so dass der Angreifer sie später lesen kann. Ebenso könnten Trojaner versuchen, bekannte Daten mit dem CompLoc-Stick von Ihnen unbemerkt zu verschlüsseln oder zu entschlüsseln und damit einen Teil des OTP Codes zu berechnen. Wie sinnvoll so ein Angriff ist, darüber wird im nachfolgenden Kapitel diskutiert. Schlussendlich könnte man Ihnen eine früher von ihnen verschlüsselte und versendete Datei über das Internet zusenden, während Sie den CompLoc-Stick aktiviert haben, diese unbemerkt entschlüsseln lassen und wieder versenden. Dies wäre ebenfalls möglich mit Dateien, die verschlüsselt auf Ihrer Festplatte gespeichert sind. Bei den zuletzt genannten Möglichkeiten bewegen wir uns aber schon wieder auf Geheimdienstniveau. Aufgrund dieser theoretischen Möglichkeiten planen wir für Neuauflagen zwei zusätzliche Funktionen: Eine LED, die jedes mal leuchtet, wenn der CompLoc-Stick Dateien ver- oder entschlüsselt. Dies würde unbefugten Zugriff sichtbar machen. Einen Taster am Stick, der (konfigurierbar) gedrückt werden muss, um eine Datei zu ver- oder entschlüsseln. Damit wäre ein unbefugter Zugriff unmöglich.
 
Die Sicherung des CompLoc-Sticks selber geschieht durch ein Passwort. Bei der Erstinstallation geben Sie das Passwort ein und bestimmen, wieviele aufeinanderfolgende falsche Eingaben erlaubt sind (3-10). Geben Sie oder ein unbefugter Nutzer öfter als angegeben ein falsches Passwort ein, löscht sich der Stick selber und zwar sowohl der Schlüssel als auch das gesamte Programm des Prozessors. Der Stick ist dann unwiederbringlich zerstört. Diese Funktionen können auch abgewählt werden, das ist aber nicht zu empfehlen. Für das Passwort gelten die selben Sicherheitsregeln wie für alle Passwörter. Verwenden Sie keine Passwörter die in Zusammenhang mit Ihrer Person leicht erraten werden können. Verwenden Sie ein möglichst komplexes Passwort aus ungeordneten Buchstaben, Zahlen und Sonderzeichen, welches Sie noch nie für etwas anderes verwendet haben. Auf keinen Fall sollten Sie das Passwort auf dem PC speichern!
 
Bei allem, was Sie tun, sollten Sie eines bedenken: Der CompLoc-Stick ist ein elektronisches Bauteil wie jedes andere auch. Es kann durch Wasser oder mechanische Einwirkungen zerstört werden, oder auch ganz einfach von alleine kaputt gehen. Möglicherweise müssen Sie ihn im Notfall auch schnell selbst zerstören. Sie sollten entweder einen Reservestick oder eine Sicherheitskopie der unverschlüsselten Daten an einem gut versteckten und sicheren Ort aufbewahren (z.B. Bankschließfach). Für den Fall, dass Sie tatsächlich das Passwort vergessen haben und Ihr CompLoc-Stick gelöscht wurde, empfiehlt es sich, den Reservestick ohne Passwort zu konfigurieren. Beachten Sie, dass eine Haftung für Verluste durch verlorene Daten vollständig ausgeschlossen ist.
 

Technische Sicherheit des CompLoc-Sticks

Falls Ihnen der CompLoc-Stick entwendet wird, muss der Angreifer erst einmal das Passwort überwinden. Schon diese Hürde ist fast nicht überwindbar. Ein Brute-Force-Angriff (Ausprobieren aller möglichen Passwörter) ist nicht möglich. Das Passwort wird durch den internen Prozessor geprüft. Dies ist unumgehbar. Nach der eingestellten Anzahl (maximal 10) von vergeblichen Versuchen, löscht sich der Stick selbst. Wenn also Ihr Passwort nicht extrem einfach gewählt, verraten oder gefunden wurde, wird der Stick nie für jemanden anderes arbeiten.
 
Falls Passwort und CompLoc-Stick entwendet wurden, kann der unbefugte Nutzer ihn natürlich verwenden, soweit er auch Zugriff auf Ihre verschlüsselten Dateien hat.
 
Eine weitere Variante ist, dass der Angreifer Ihnen den Stick und das Passwort entwendet, und dann versucht, den Schlüssel auszulesen, um ihn Ihnen danach unbemerkt zurück zu geben. Sie würden den Stick dann weiterhin verwenden und der Angreifer könnte alles entschlüsseln.
 
Diese Variante wollen wir mathematisch untersuchen: Der CompLoc-Stick verwendet einen OTP-Schlüssel mit einer Länge von ca. 4.600.000.000 Gigabytes. Dieser Schlüssel kann natürlich nicht in Klartext auf dem Stick gespeichert sein. Die OTP Matrix berechnet sich aus aus 2 Zufallsfolgen von 2,15 Gigabytes. Diese Zufallsfolgen wurden mit dem eingebauten echten Zufallsgenerator (hardware random number generator mit einer Entropiequelle) der Intel Prozessoren ab Baureihe IVY BRIDGE erzeugt. Die Zufallseigenschaften dieses Generators sind nachgewiesen. Aufgrund von Spekulationen über eingebaute Hintertüren der NSA in Intel Prozessoren, ist eine eigener HF-Hardwarezufallsgenerator im Aufbau. Obwohl der Schlüssel sich nie wiederholt, entsteht er aus der Verknüpfung zweier kürzerer Folgen und ist damit nicht unkorreliert. Theoretisch wäre es möglich, bei perfekter Kenntnis der inneren Vorgänge einen Teil des Schlüssels auszulesen und dann den kompletten Schlüssel zu berechnen. Dies ist eine Frage des Aufwandes und der Menge der ausgelesenen Daten. Um diese Möglichkeit auszuschließen, wird in den Daten sowohl blockweise wie byteweise gesprungen, so dass eine Zuordnung der ausgelesenen Daten zur Matrixzelle nicht mehr möglich ist. Diese Sprünge werden individuell für jeden Schlüssel mit Zufallszahlen festgelegt. Ebenso ist die Länge der Datenblöcke zufällig variabel. Dies erhöht die Menge der Möglichkeiten ins astronomische. Alle Sprungvariablen befinden sich im Microcontroller und sind nicht auslesbar.
 
Ohne weiter auf die innere Architektur eingehen zu wollen, hier eine Berechnung: Es gibt bei der aktuellen Architektur ca. (4096 x 512144 x 1920)2 = 1,622208 x 1025 Möglichkeiten, durch die ohnehin schon zufällige Matrix mit 4,6 x 1018 Bytes zu springen. Bei genauer Kenntnis der Zuordnungen könnte man mit 4,3 Gigabyte ununterbrochen ausgelesenen Daten 256 mögliche Schlüssel berechnen, die man dann ausprobieren müsste. Aufgrund der Architektur sind es aber nun 256 x 1,622208 x 1025 mögliche Schlüssel. Je mehr Daten des Schlüssels man liest, desto überbestimmter wird das Gleichungssystem und immer mehr der 256 x 1,622208 x 1025 theoretisch möglichen Schlüssel können als falsch verworfen werden. Dennoch müssen immer alle 256 x 1,622208 x 1025 möglichen Fälle berechnet werden. Selbst wenn die Berechnung die unwahrscheinliche Zeit von nur 1 ms pro Berechnung (bei 4.300.000.000 Rechenoperationen) dauern würde, wären das immer noch 1,3 x 1017 Jahre. Etwa 28.000.000 mal länger als das Sonnensystem existiert. Abgesehen von der Rechenleistung, die benötigt würde, alle theoretisch möglichen Schlüssel zu berechnen, müssen alle als tatsächlich möglich übrig gebliebenen Schlüssel auf die Datei angewendet werden, und es muss geprüft werden, ob etwas Sinnvolles dabei herauskommt. Will man den gesamten Schlüssel auslesen, dauert es bei ununterbrochenem Betrieb mehr als 10.000 Jahre. Dieses kann auch nicht schneller werden, da die Auslesegeschwindigkeit durch den internen Microcontroller begrenzt ist.
 
Würde man den CompLoc-Stick zerlegen, den Speicher auslöten, in eine Testplatine einlöten und dann auslesen, hätte man die Werte, die die Matrix erzeugen. Dennoch gibt es weiterhin 1,622208 x 1025 Möglichkeiten, durch diese Matrix zu springen. Die Zufallswerte, die die Sprünge festlegen, sind im Microcontroller gespeichert und können nicht ausgelesen werden. Selbst wenn man auch den Prozessor auslöten und ein JTAG Interface anschließen würde, sind diese Werte nicht auslesbar. Man kann nur den Microcontroller komplett löschen, wodurch auch diese Werte verloren gehen würden. Ob es tatsächlich technisch möglich ist, den Die (Halbleiterchip) des Prozessors auf die inneren Schichten abzuschleifen und dann mit dem Elektronenmikroskop alles auszulesen, kann hier nicht beurteilt werden. Und selbst wenn man es täte, hätte man nur die Daten dieses einen Schlüssels. Jeder andere CompLoc-Stick hat andere Daten und Sprungwerte. Mit Sicherheit ist es dann aber schon wieder einfacher, Sie zu überfallen und zur Herausgabe der Daten zu zwingen.