-
Die Erfindung betrifft eine Lösung zur zugriffsgesicherten Ablage von elektronisch codierten Informationen in einem intelligenten elektronischen Speichermodul. Sie bezieht sich auf ein entsprechendes Verfahren und auf ein zur Durchführung des Verfahrens ausgebildetes elektronisches Speichermodul. Ziel der vorgestellten Lösung ist die zuverlässige und sichere Aufbewahrung von Geheimnissen, welche mit den zugriffssicher in dem Speichermodul abzulegenden Informationen assoziiert sind. Bei den entsprechenden Informationen muss es sich nicht zwangsläufig um durch einen Menschen lesbare Informationen handeln. Es kann sich vielmehr um Informationen beliebigster Art handeln, welche zur Ablage und Verarbeitung durch elektronische Systeme elektronisch codiert und digitalisiert sind.
-
Selbstverständlich kann es sich insoweit bei den Informationen auch um unmittelbar durch einen Menschen erfassbare beziehungsweise interpretierbare Aussagen, wie beispielsweise um einen Text oder um eine Konstruktionszeichnung oder eine andere graphische Darstellung, handeln. Unter einer zugriffsgesicherten Ablage derartiger Informationen wird dabei eine Ablage der Informationen in der Weise verstanden, dass diese nur durch dazu berechtigte Personen oder auch Systeme wieder aus dem entsprechenden, sie zugriffsgesichert aufbewahrenden Speichermodul auslesbar sind. Hierbei ist jedoch die erfindungsgemäße Lösung so gestaltet, dass die Informationen als solches beispielsweise auch für eine Person, welche die sie codierenden Daten vermeintlich berechtigterweise aus dem Speichermodul ausliest, nicht unmittelbar, das heißt bezogen auf das bereits zitierte Beispiel eines Textes, als Klartext, zugänglich sind.
-
Wie bereits vorstehend angedeutet, kann ein berechtigter Zugriff auf eine die geheim zu haltenden Informationen codierende, in dem Speichermodul abgelegte Datenmenge, also das Auslesen der betreffenden Datenmenge unmittelbar durch eine Person, aber auch durch ein technisches System erfolgen. In Bezug auf letzteres ist es beispielsweise im Hinblick auf eine mögliche Ausbildungsform der Erfindung, wonach der Zugriff auf diese Datenmenge zu einem bestimmten Zeitpunkt mittels diesen Zeitpunkt im Sinne eines Authentisierungsmerkmals repräsentierender Zeitdaten möglich ist, denkbar, dass die Datenmenge beim Eintritt des entsprechenden Zeitereignisses durch ein bereits zuvor mit dem Speichermodul gekoppeltes automatisiertes System selbsttätig ausgelesen wird. Im Kontext der nachstehenden Erläuterungen zur Erfindung wird zwar ausschließlich auf Zugriffsversuche beziehungsweise einen berechtigten Zugriff einer Person auf das Speichermodul und auf die an dieses ursprünglich übergebene Datenmenge Bezug genommen. Jedoch sind von der Erfindung auch Zugriffe beziehungsweise Zugriffsversuche durch automatisierte technische Systeme in jedem Falle mitumfasst.
-
Informationen, welche Geheimnisse darstellen, werden im Zusammenhang mit unterschiedlichsten praktischen Anwendungsfällen im großen Umfang in elektronischen Speichern abgelegt. Nicht selten geschieht dabei die Ablage derartiger Informationen auch in Speichermodulen, die Bestandteil mobiler und damit auch von Personen mitzuführender Systeme sind. Zu denken ist hierbei beispielsweise an elektronische Geräte wie Smartphones, aber auch an Speichermedien wie mobile Festplatten, Speichersticks oder Smartcards. Zum Beispiel auf Chipkarten, wie auf im Zahlungsverkehr eingesetzten EC-Karten, werden dabei Daten gehalten, die nicht für jedermann zugänglich sein sollen. Daher werden die Daten, welche unterschiedliche Informationen codieren, häufig verschlüsselt in den Speichermodulen der zuvor bespielhaft genannten Art gespeichert.
-
Zum Einsatz kommen hierbei ausgereifte Verschlüsselungsverfahren, welche es einer unberechtigt in den Besitz eines entsprechenden Speichers gelangenden Person weitgehend unmöglich machen sollen, an die in den verschlüsselten Daten codierten Informationen zu gelangen. Zur Entschlüsselung der betreffenden Daten ist daher beispielsweise ein Kennwort, ein Passwort oder eine PIN oder aber die Präsentation eines eine Person oder ein technisches System (das heißt eine berechtigte Entität als Oberbegriff für Person oder System) als berechtigt kennzeichnenden Authentisierungsmerkmals, wie beispielsweise eines Fingerabdrucks oder dergleichen, gegenüber dem Speichermodul erforderlich.
-
Im Grunde alle bisher entwickelten Verschlüsselungsverfahren konnten jedoch im Laufe der Zeit gebrochen werden. Soweit dies für aktuell verwendete Verschlüsselungsverfahren nicht gilt, muss aber erfahrungsgemäß davon ausgegangen werden, dass es nur eine Frage der Zeit ist, wann auch diese gebrochen werden. Ursprünglich waren die von unberechtigten Personen zum Brechen eines Verschlüsselungsverfahrens beziehungsweise zum unberechtigten Auslesen einer verschlüsselten Information genutzten Verfahren rein mathematische Verfahren. Hierbei wurde versucht, den jeweils zur Verschlüsselung verwendeten Schlüssel in aufwendigen Verfahren zu berechnen oder durch sukzessives Durchprobieren aller theoretisch gegebenen Möglichkeiten zu ermitteln. Jedoch sind zeitaktuelle Verschlüsselungsverfahren zwischenzeitlich im Allgemeinen derart stark, dass die widerrechtliche Berechnung beziehungsweise Ermittlung eines die Entschlüsselung entsprechend verschlüsselter Informationen ermöglichenden Schlüssels auch bei Einsatz modernster Rechentechnik und paralleler Bearbeitung des Problems mittels einer Vielzahl von Computern sehr viel Zeit erfordert.
-
Bereits seit Längerem sind daher Angriffe, das heißt also Versuche eines unberechtigten Zugriffs auf Informationen, bekannt, bei denen entsprechende mathematische Methoden kombiniert werden mit sogenannten Seitenkanal-Angriffen. Hierbei wird versucht, durch Erfassung physikalischer Größen beziehungsweise Phänomene beim Versuch des Auslesens der verschlüsselten Daten auf den zu ihrer Verschlüsselung verwendeten Schlüssel zu schlussfolgern. So ist es beispielsweise möglich, bei einer Bank-Chipkarte, auf welcher Informationen codierende Daten in verschlüsselter Form gespeichert sind, an der Schnittstelle zwischen der Chip-Karte und der Leseeinheit eines Bankautomaten, die beim Datenaustausch zwischen den Systemen und bei den dabei erfolgenden Verschlüsselungs- und Entschlüsselungsvorgängen jeweils auftretenden Ströme zu messen und ausgehend von diesen auf die verwendeten Schlüssel zu schlussfolgern. Ein solcher Angriff unter Nutzung eines Seitenkanals – hier der Strommesswerte – wird beispielsweise als "Differential Power Analysis" (DPA) bezeichnet.
-
Aufgabe der Erfindung ist es, eine Lösung für eine zuverlässige und sichere Speicherung von Informationen in einem elektronischen Speichermodul zur Verfügung zu stellen, durch welche die in dem Speichermodul abgelegten Informationen gegen einen unberechtigten Zugriff, auch unter Zuhilfenahme von Seitenkanal-Angriffen, zuverlässig geschützt werden. Hierzu sind ein Verfahren anzugeben und ein zu dessen Durchführung geeignetes elektronisches Speichermodul bereitzustellen.
-
Die Aufgabe wird durch ein Verfahren mit den Merkmalen des Patentanspruchs 1 gelöst. Ein die Aufgabe lösendes elektronisches Speichermodul ist durch den ersten Sachanspruch charakterisiert. Vorteilhafte Aus- beziehungsweise Weiterbildungen der Erfindung sind durch die Unteransprüche gegeben.
-
Das zur Lösung der Aufgabe vorgeschlagene Verfahren für eine zugriffsgesicherte Ablage von elektronisch codierten Informationen in einem Speichermodul geht davon aus, dass die betreffenden Informationen in einem intelligenten Speichermodul abgelegt werden. Ein solches Speichermodul weist dabei insbesondere eine Verarbeitungseinheit und eine von dieser zur Durchführung des Verfahrens verarbeitete Programmanwendung auf. Genauere Ausführungen zur Beschaffenheit eines solchen Speichermoduls sollen später erfolgen. Die Formulierung „elektronisch codierte Informationen“ bezieht sich im Kontext der Darstellungen zur Erfindung darauf, dass jedwede Information, unabhängig davon, ob es sich beispielsweise um einen für Menschen lesbaren Text, um graphische Darstellungen, um Audio- und/oder Videosignale oder etwa um physikalische Messwerte oder Zustandsangaben handelt, zunächst in eine elektronische Form überführt wird, um sie speichern zu können. Zudem geht die Erfindung davon aus, dass eine entsprechende Information im Zuge der Überführung in die elektronische Form zum Zweck der Speicherung digitalisiert, das heißt in elektronische Daten umgewandelt wird. Unter diesen Prämissen gestaltet sich der Ablauf des vorgeschlagenen Verfahrens gemäß den nachfolgend dargestellten Verfahrensschritten.
- a) Zunächst wird die die abzulegenden Informationen codierende, aus digitalen elektronischen Daten bestehende Datenmenge in spezieller Weise vorbehandelt. Ziel ist es dabei gewissermaßen, die ursprüngliche Struktur der die Informationen codierenden elektronischen Datenmenge „zu verwischen“. Die betreffende Datenmenge soll im Ergebnis möglichst wenige oder bestenfalls keine Strukturen mehr aufweisen, welche für eine Kryptoanalyse hilfreich sein könnten. Dazu wird in einem eindeutig umkehrbaren elektronischen Verarbeitungsgang die Entropie der durch die Datenmenge repräsentierten Informationen gezielt erhöht.
Codiert die Datenmenge beispielsweise eine textliche Aussage, so kommen typischerweise in einem solchen Text, je nach Sprache, bestimmte Buchstaben häufiger vor als andere. So kommt beispielsweise das „e“ in deutschen Texten mit einer durchschnittlichen Häufigkeit von 17,4 % vor, wohingegen die durchschnittliche Häufigkeit des Buchstabens „p“ nur 0,79 % beträgt. Dieses Wissen kann aber hilfreich sein, um im Wege der Kryptoanalyse aus einem verschlüsselten Text auf den Klartext zu schließen. Um potentiellen Angreifern auf einen codierten und/oder verschlüsselten Text die insoweit durch die Sprache gegebene Unterstützung zu entziehen beziehungsweise diesen Einfluss deutlich zu verringern, wird gezielt die Entropie der elektronisch codierten Informationen erhöht. Analoges gilt für andere Formen von Informationen und eine diese codierende Datenmenge. Gewissermaßen wird hierdurch der Informationsgehalt der betreffenden Daten unscharf, da aus ihnen die Information nicht mehr unmittelbar zu entnehmen ist oder sich eine Mehrdeutigkeit des Aussagegehalts ergibt. Auf zur Vorbehandlung der die Informationen codierenden Datenmenge mit dem Ziel einer Erhöhung der Entropie mögliche Vorgehensweisen soll später eingegangen werden. An dieser Stelle sei jedoch ausdrücklich darauf hingewiesen, dass die entsprechende Vorbehandlung gemäß dem hier vorgeschlagenen Verfahren außerhalb des elektronischen Speichermoduls erfolgt, in welchem die Informationen zugriffssicher abgelegt werden sollen.
- b) Erst in dem der zuvor erläuterten Vorbehandlung nachfolgenden Verfahrensschritt wird die bezüglich der Entropie der von ihr codierten Informationen vorbehandelte Datenmenge in das elektronische Speichermodul übertragen. Entsprechendes erfolgt beispielsweise durch eine temporäre, leitungsgebundene Verbindung des Speichermoduls mit einem für die Vorbehandlung der die Informationen codierenden Datenmenge verwendeten System. Darüber hinaus kommen hierfür selbstverständlich auch andere aus dem Stand der Technik bekannte Übertragungsverfahren in Betracht, wie insbesondere eine Übertragung per Funk.
- c) Vorzugsweise unmittelbar nach dem Abschluss der Übertragung der vorbehandelten Datenmenge in das elektronische Speichermodul erfolgt eine Umcodierung dieser Datenmenge mittels eines durch einen Zufallszahlengenerator gesteuerten deterministischen Algorithmus. Alternativ zu einem unmittelbaren Start nach der Übertragung der Datenmenge kann die Umcodierung aber auch durch eine Bedienhandlung an einem gegebenenfalls vorhandenen Bedienelement des Speichermoduls oder durch ein sonstiges Triggersignal (beispielsweise eines temporär mit dem Speichermodul gekoppelten technischen Systems) gestartet werden.
- d) Der vorhergehende Verfahrensschritt c), also das Umcodieren der jeweils aktuell in dem elektronischen Speichermodul gehaltenen Datenmenge, wird kontinuierlich wiederholt. Die Wiederholung dieses Verfahrensschritts in vorzugsweise sehr kurzen zeitlichen Abständen (beispielsweise von einigen Millisekunden) erfolgt so lange, bis dem Speichermodul ein zur Kenntnisnahme der in ihm abgelegten Informationen, genauer gesagt ein zum Auslesen der diese Informationen codierenden Datenmenge berechtigendes Authentisierungsmerkmal präsentiert wird. Auch zur Beschaffenheit eines solchen Authentisierungsmerkmals sollen Ausführungen an späterer Stelle erfolgen.
- e) Sofern dem Speichermodul gemäß Verfahrensschritt d) das zulässige Authentisierungsmerkmal präsentiert wurde, wird die durch den Zufallszahlengenerator gesteuerte kontinuierliche Umcodierung gestoppt. Ferner wird durch die bereits erwähnte Verarbeitungseinheit des Speichermoduls unter Verwendung der ebenfalls schon genannten Programmanwendung aus der aktuell in dem Speichermodul vorliegenden Datenmenge wieder die ursprünglich in das Speichermodul übertragene Datenmenge berechnet. Dies ist aufgrund dessen, dass die vorangegangene Umcodierung mittels eines deterministischen Algorithmus erfolgte, je nach konkreter Ausgestaltung des Algorithmus vorzugsweise sogar ohne Umkehrung aller zuvor erfolgten Umcodierungsvorgänge auf direktem Wege möglich.
- f) Die wiederberechnete, ursprünglich in das Speichermodul übertragene Datenmenge wird dann schließlich von diesem ausgegeben. An dieser Stelle sei angemerkt, dass eine Ausgabe von Daten durch das Speichermodul beziehungsweise das Auslesen von Daten aus dem Speichermodul gegebenenfalls, nämlich beispielsweise unter Anwendung von Seitenkanalangriffen, auch dann möglich sein kann, wenn nicht das zur Kenntnisnahme der abgelegten Informationen beziehungsweise das zum Auslesen der diese Informationen codierenden Datenmenge berechtigende Authentisierungsmerkmal dem Speichermodul präsentiert wurde. Allerdings wird es sich in diesem Falle dann nicht um die ursprünglich an das Modul übergebene Datenmenge handeln. Vielmehr ergeben die solchermaßen ausgelesenen Daten für einen Angreifer keinen Sinn, so dass er nicht auf die ursprüngliche Datenmenge schließen kann. Aus dem eventuell beobachtbaren Datenstrom kann der Angreifer außerdem nicht erkennen, ob ein von ihm präsentiertes Authentisierungsmerkmal korrekt war und sich somit eine nähere Analyse der Datenmenge lohnt, oder ob das Authentisierungsmerkmal nicht korrekt war und der Datenstrom daher nicht sinnvoll ausgewertet werden kann.
- g) Schließlich erfolgt noch eine Nachbehandlung der nach der Präsentation des zulässigen Authentisierungsmerkmals durch das Speichermodul ausgegebenen beziehungsweise aus diesem ausgelesenen Datenmenge durch Umkehrung des zur Entropieerhöhung gemäß Verfahrensschritt a) durchlaufenen Verarbeitungsgangs. Auch die Ausführung dieses Verfahrensschrittes erfolgt wiederum außerhalb des die Informationen in codierter Form aufnehmenden elektronischen Speichermoduls.
-
Wie bereits angesprochen, sind zur Vorbehandlung der in dem Speichermodul abzulegenden Datenmenge durch Erhöhung der Entropie der durch diese Datenmenge codierten Information oder Informationen unterschiedliche Vorgehensweisen möglich. Entsprechend einer ersten möglichen Ausgestaltung des erfindungsgemäßen Verfahrens ist es dabei vorgesehen, die Datenmenge verlustfrei zu komprimieren. Dies ist gleichzeitig mit dem Vorteil einer Reduzierung des zur Speicherung der Datenmenge erforderlichen Speicherplatzbedarfs verbunden.
-
Eine andere Möglichkeit besteht darin, eine Verschlüsselung der Daten vorzunehmen. Auch hierdurch wird erreicht, dass die ursprünglich in ihnen codierte Information (oder die Informationen) nicht mehr unmittelbar aus der vorbehandelten Datenmenge entnehmbar ist (sind). In diesem Zusammenhang sei nochmals ausdrücklich darauf hingewiesen, dass der erste Verfahrensschritt der Vorbehandlung der die Information codierenden Datenmengen nicht innerhalb des elektronischen Speichermoduls erfolgt, in welchem letztlich die geheim zu haltenden Information abgelegt wird beziehungsweise die Informationen abgelegt werden. Entsprechend einer vorteilhaften Variante wird für die Vorbehandlung der Datenmenge ein deterministischer Verschlüsselungsalgorithmus verwendet.
-
Auch die ständige permanente Umcodierung der ursprünglich an das Speichermodul übergebenen Datenmenge beziehungsweise der jeweils einem solchen Umcodierungsvorgang entstehenden veränderten Datenmenge sowie das Stoppen dieses fortgesetzten Umcodierungsvorgangs können nach ganz unterschiedlichen Kriterien und Gesichtspunkten erfolgen. Grundsätzlich erfolgt aber die wiederholte beziehungsweise fortgesetzte, das heißt kontinuierliche Umcodierung der Datenmenge in jedem Falle unter Verwendung eines deterministischen Algorithmus, welcher durch einen Zufallszahlengenerator gesteuert wird. Darüber hinaus kann die Umcodierung noch unter Heranziehung des mindestens einen, zum Stoppen der fortgesetzten Umcodierung repräsentierenden Authentisierungsmerkmals parametrisiert werden. Das heißt, das oder die betreffenden Merkmale fließen in den eigentlichen Umcodierungsvorgang ein.
-
Bei dem Authentisierungsmerkmal kann es sich beispielsweise um eine PIN handeln, welche mittels eines dafür an dem Speichermodul vorzusehenden Tastenfeldes einzugeben ist. Hierbei schließt die die fortwährende/kontinuierliche Umcodierung bewirkende Programmanwendung Programmschritte ein, welche die Eingabe und Auswertung einer entsprechenden PIN zwischen zwei Umcodierungsvorgängen ermöglichen. Vorzugsweise werden diese Programmschritte – also insbesondere das Auswerten einer versuchten PIN-Eingabe – jedoch nur ausgeführt, wenn der Versuch unternommen wird, die in dem Speichermodul abgelegte Datenmenge auszulesen.
-
Insoweit vergleichbar mit der PIN-Eingabe ist die Möglichkeit, dem Speichermodul biometrische Merkmale beziehungsweise deren digitale Abbilder zu präsentieren. So kann das Speichermodul beispielsweise über einen Fingerabdrucksensor verfügen und das Verfahren in diesem Zusammenhang so ausgebildet sein, dass der Vorgang der ständigen Umcodierung gestoppt wird, sofern auf diesen der Finger einer berechtigten Person aufgelegt wird. Je nach Aufwand und Einsatzweck kann als ein solches biometrisches Merkmal aber auch die mittels eines optischen Sensors des Speichermoduls zu erfassende Iris des Auges einer zum Auslesen der die Informationen codierenden Datenmenge berechtigten Person dienen. Selbstverständlich können darüber hinaus weitere biometrische Merkmale für die Umsetzung des Verfahrens verwendet werden.
-
Hinsichtlich der schon angesprochenen Möglichkeit, das Verfahren so auszulegen, dass ein Stoppen des Umcodierungsvorgangs nur durch eine Kombination mehrerer Authentisierungsmerkmale erreicht wird, können gegebenenfalls mehrere derartige biometrische Merkmale beziehungsweise deren digitale Abbilder Berücksichtigung finden. So ist es denkbar, dass das Auslesen des Speichermoduls nur möglich ist, sofern sich zwei oder mehr Personen gegenüber diesen mittels entsprechender biometrischer Merkmale authentifizieren. Denkbar ist es aber auch, dass sich eine berechtigte Person beispielsweise sowohl mittels ihres Fingerabdrucks als auch durch eine optische Erfassung ihrer Iris authentifizieren muss. Grundsätzlich sei darauf hingewiesen, dass im Zusammenhang mit der Authentifizierung zum Stoppen des Umcodierungsvorgangs jegliche Kombination der bereits genannten Authentisierungsmerkmale und nachfolgend noch genannter in das Verfahren einbezogen werden kann.
-
Neben oder ergänzend zu den vorgenannten Authentisierungsmerkmalen kommen außerdem noch folgende nachfolgend beispielhaft genannte Merkmale in Betracht. So ist es möglich, den lokalen augenblicklichen Aufenthaltsort des Speichermoduls durch die Auswertung von Daten eines in diesem Falle in dem Speichermodul vorgesehenen GPS-Empfängers als Authentisierungsmerkmal zu verwenden. Hierdurch ergibt sich die Möglichkeit, den Zugriff auf die in dem Speichermodul gehaltene, die Information/Informationen codierende Datenmenge nur an einem oder mehreren zuvor festgelegten, dem Speichermodul im Zusammenhang mit der Übertragung der Datenmenge in das Speichermodul zur Kenntnis gegebenen Orten zu ermöglichen. Eine andere Möglichkeit besteht in der Berücksichtigung von Zeitdaten. So kann es vorgesehen sein, dass das Auslesen des Speichermoduls nur zu bestimmten Zeiten beziehungsweise nur oder erst nach dem Verstreichen einer festgelegten Zeitspanne nach der Übertragung der Datenmenge in das Speichermodul möglich ist.
-
Eine ebenfalls praxisrelevante Ausgestaltungsform besteht darin, dass dem Speichermodul zur Ermöglichung des Zugriffs auf die ursprünglich übergebene Datenmenge ein Token präsentiert werden muss. Bei einem solchen Token kann es sich beispielsweise um eine Chipkarte oder einen Stick mit einem passiven Transponder handeln, aus welchem durch einen dafür in oder an dem Speichermodul vorgesehenen NFC-Reader berührungslos und ohne das Erfordernis einer leitungsgebundenen Kopplung über Funk eine als Authentisierungsmerkmal dienende ID ausgelesen werden kann. Ein entsprechendes Token kann aber je nach Ausprägung des Tokens und Gestaltung des Speichermoduls gegebenenfalls auch durch Herstellen eines direkten galvanischen Kontaktes mittels eines Steckers des Tokens oder leitungsgebunden mit dem Speichermodul verbunden werden. Selbst der Schutz der in dem Speichermodul gehaltenen Datenmenge durch einen mechanischen Schlüssel, welcher in diesem Falle das Authentisierungsmerkmal darstellt, kommt grundsätzlich in Betracht.
-
Sehr unterschiedlich kann auch das nach außen hin in Erscheinung tretende Verhalten des Speichermoduls im Falle des Ausbleibens einer Präsentation eines oder mehrerer den Zugriff auf die Datenmenge ermöglichender Authentisierungsmerkmale oder eines unberechtigten Ausleseversuchs sein. Gemäß einer hierfür vorgesehenen Möglichkeit werden durch das Speichermodul an einem die Ausgabe der die geheim zu haltende Information (beziehungsweise die Informationen) codierenden Datenmenge ermöglichenden Ausgang in ständig wechselnder Folge Daten ohne jeglichen Informationsinhalt und mit gegebenenfalls wechselnder Länge und Form ausgegeben. Nur im Falle der Präsentation eines oder mehrerer zulässiger Authentisierungsmerkmale wird demgemäß stattdessen die ursprünglich an das Speichermodul übergebene Datenmenge an dem betreffenden Ausgang ausgegeben.
-
Hieraus ergibt sich der Vorteil, dass möglicherweise selbst einer Person, welche sich in unberechtigter Weise Zugriff auf ein Authentisierungsmerkmal, wie beispielsweise eine PIN, verschafft hat, nicht an die eigentliche, in dem Speichermodul abgelegte Information unmittelbar herankommt, weil diese in dem Speichermodul nicht in einfach codierter Form, sondern in der Form einer vorbehandelten Datenmenge abgelegt ist, welche für eine sich illegal Zugriff auf die Daten verschaffende Person von den bis dahin fortwährend ausgegebenen Daten ohne jeglichen Informationsinhalt nicht unterscheidbar ist. Das heißt, für eine solche sich einen illegalen Zugriff verschaffende Person wird im Moment der Präsentation des sich widerrechtlich angeeigneten Authentisierungsmerkmals nicht erkennbar, dass durch das Speichermodul eine Datenmenge ausgegeben wird, welche zum Erlangen der darin codierten Information lediglich noch zur Umkehrung des Vorbehandlungsvorgangs nachbehandelt werden muss. Neben der zuvor ausführlich beschriebenen Möglichkeit ist es aber auch denkbar, dass Daten durch das Speichermodul überhaupt nur ausgegeben werden, wenn das zutreffende beziehungsweise das zulässige Authentisierungsmerkmal präsentiert wird.
-
Ein zur Lösung der Aufgabe und zur Durchführung des zuvor beschriebenen Verfahrens ausgebildetes intelligentes Speichermodul verfügt zumindest über eine Verarbeitungseinheit zur Ausführung von Programmanwendungen und über eine eigene Spannungsversorgung. Erfindungsgemäß ist das Speichermodul zudem mit einer durch die vorgenannte Verarbeitungseinheit ausführbaren Programmanwendung ausgestattet, durch welche eine ständige Umcodierung der augenblicklich in dem Speichermodul gehaltenen Datenmenge unter Anwendung eines deterministischen Algorithmus bis zur Präsentation eines oder mehrerer dies stoppender, ebenfalls durch die Programmanwendung ausgewerteter Authentisierungsmerkmale erfolgt und welche darüber hinaus dazu ausgebildet ist, aus der nach dem Stoppen des Umcodierungsvorgangs vorliegenden Datenmenge wieder die ursprünglich an das Speichermodul übergebene Datenmenge zu berechnen. Hierbei wird die vorgenannte unabhängige Spannungsversorgung dazu benötigt, den fortgesetzten Ablauf der Programmanwendung und damit die ständige Umcodierung der in dem Speichermodul gehaltenen Datenmenge zu ermöglichen.
-
Je nachdem, wie das erfindungsgemäße Verfahren in Abhängigkeit des jeweiligen Einsatzzweckes umgesetzt wird, kann das zuvor bezüglich seiner grundsätzlichen Merkmale beschriebene Speichermodul noch durch unterschiedliche Einheiten ergänzt sein. Das Vorhandensein solcher nachfolgend beispielhaft genannten ergänzenden Einheiten korrespondiert dabei insbesondere damit, welches Authentisierungsmerkmal für das Stoppen des Prozesses der fortwährenden Umcodierung der durch das Speichermodul gehaltenen Datenmenge vorgesehen wird. Demgemäß kann das Speichermodul unter Bezug auf die im Zusammenhang mit dem Verfahren bereits genannten möglichen Authentisierungsmerkmale beispielsweise um einen GPS-Empfänger, einen Fingerabdrucksensor, eine elektronische Uhr, um einen NFC-Reader oder um einen Steckverbinder (zum Beispiel USB, Mini- oder Micro-USB) ergänzt sein. Sicherlich weniger praxisrelevant, grundsätzlich aber ebenfalls denkbar, ist es auch, das Speichermodul mit einem Drucksensor auszustatten. Insoweit wäre es denkbar, dass die ursprünglich in das Speichermodul übertragene Datenmenge im Sinne eines Auslesens nur an einem Ort zugänglich ist, welcher sich durch seine Höhenlage und damit durch einen besonders niedrigen Luftdruck auszeichnet. In diesem Spezialfall könnte gegebenenfalls auf ein GPS-Modul zur genauen Ortsbestimmung verzichtet werden. Das vorgegebene Beispiel sei jedoch nur genannt, um die mögliche Breite der Art der in Betracht kommenden Authentisierungsmerkmale anzudeuten.
-
Anhand der 1 soll nachfolgend ein Beispiel für die Erfindung gegeben werden. Bei der Figur handelt es sich um eine schematische Darstellung, welche im Grunde gleichermaßen sowohl einen möglichen Verfahrensablauf als auch die Einbeziehung eines entsprechend gestalteten Speichermoduls in diesen Verfahrensablauf beispielhaft verdeutlicht. Demgemäß bildet den Ausgangspunkt eine Geheimnisse beinhaltende, elektronisch codierte Information, welche in der 1 als Klartext bezeichnet ist. In einem ersten Schritt wird die die betreffende geheim zu haltende Information codierende Datenmenge einer Vorbehandlung unterzogen, um die Entropie der in ihr gehaltenen Information gezielt zu erhöhen.
-
Die entsprechende Datenmenge mit der elektronisch codierten Information wird dazu beispielsweise mittels eines Kompressionsverfahrens behandelt oder einer Verschlüsselung unterzogen. Im letztgenannten Fall ist selbstverständlich für denjenigen, welcher über einen entsprechenden Schlüssel verfügt, die Entschlüsselung der vorbehandelten Datenmenge und somit die Wiedererlangung des Klartextes möglich. Dieser erste Verfahrensschritt der Vorbehandlung erfolgt mittels eines Systems, welches nicht Bestandteil des demgegenüber unabhängigen Speichermoduls ist. Das Speichermodul wird allenfalls für die sich im zweiten Verfahrensschritt anschließende Übertragung der vorbehandelten Datenmenge in das Speichermodul temporär mit dem die Vorbehandlung vornehmenden System verbunden.
-
In dem gezeigten Beispiel verfügt das Speichermodul über eine Zugriffskontrolle. Die Zugriffskontrolle ist dabei derartig, dass auch zum Zweck des Übertragens der vorbehandelten Datenmenge in das Speichermodul eine Authentifizierung gegenüber dem Speichermodul erforderlich ist. Dies kann zum Beispiel zweckmäßig sein, um ein ungewolltes Übereschreiben eines üblicherweise bereits zuvor in dem Speichermodul abgelegten Inhalts oder zum Zweck des Verhinderns einer unberechtigten Vernichtung der in dem Speichermodul abgelegten Information. Nach dem Empfang der vorbehandelten Datenmenge durch das Speichermodul wird diese innerhalb des Speichermoduls, vorzugsweise in sehr kurzen zeitlichen Abständen, einer ständigen Umcodierung durch Einsatz eines von einem Zufallszahlengenerator gesteuerten deterministischen Algorithmus unterzogen. Hierbei ist es lediglich eine Frage der Auslegung, ob die von dem Speichermodul empfangene Datenmenge gleich unmittelbar im Moment ihres Eingangs, vor einem erstmaligen Speichern im Speichermodul umcodiert wird oder ob sie zunächst in der vorbehandelten Form zwischengespeichert und dann, beispielsweise beginnend mit einem zum Beispiel durch eine Bedienhandlung an einem dafür an dem Speichermodul vorgesehenen (hier nicht gezeigten) Bedienelement ausgelösten Startsignal, der wiederholten Umcodierung unterworfen wird.
-
Die fortwährende Umcodierung der in das Speichermodul übertragenen Datenmenge beziehungsweise der in einem jeweiligen Umcodierungsvorgang entstehenden veränderten Datenmenge erfolgt, bis dem Speichermodul ein den Zugriff auf diese Datenmenge ermöglichendes Authentisierungsmerkmal (oder eine Kombination mehrerer solcher Merkmale), nämlich ein Verifikationsauthentisierungsmerkmal, präsentiert wird, welches mit den Zugriff auf die codierten Informationen ermöglichenden Authentisierungsmerkmal, dem Referenzauthentisierungsmerkmal, übereinstimmt. Letzteres kann sich beispielsweise wie folgt gestalten. Eine sich im Besitz des Speichermoduls befindende Person versucht, dessen Inhalt, genauer gesagt die ursprünglich an das Speichermodul übergebene, die geheim zu haltende Information codierende Datenmenge auszulesen. Im Moment des Versuchs dies zu tun, wird die betreffende Person beispielsweise über ein (hier nicht dargestelltes) Display des Speichermoduls aufgefordert, eine PIN als Authentisierungsmerkmal einzugeben. Bis zur erfolgreichen Eingabe der betreffenden PIN mittels eines (ebenfalls nicht dargestellten) Tastenfeldes an dem Speichermodul wird der Umcodierungsvorgang weiter fortgesetzt. Der den Zugang zu der ursprünglich in das Speichermodul übertragenen Datenmenge wünschenden Person werden während dieser Zeit ständig Daten präsentiert, welche zumindest für diese Person ohne jeglichen Informationsgehalt sind. Bei diesen bis zu Präsentation eines gültigen Authentisierungsmerkmals ausgegebenen Daten, welche über einen Ausgang des Speichermoduls, wie beispielsweise das schon angesprochene, nicht dargestellte Display und/oder einen Anschluss zur Verbindung des Speichermoduls mit einem anderen technischen System ausgegeben werden, kann es sich beispielsweise um die jeweils aktuell in dem Speichermodul gespeicherte, das Ergebnis der mehrfachen andauernden Umcodierung darstellende Datenmenge oder aber auch um eine hiervon völlig unabhängige zufällige Datenmenge handeln.
-
Erst wenn die betreffende Person das den Zugriff gestattende Authentisierungsmerkmal präsentiert hat, also die erforderliche PIN eingegeben hat, wird der Einfluss des Zufallszahlengenerators des Speichermoduls gewissermaßen ausgeschaltet und der Umcodierungsvorgang gestoppt. Darüber hinaus wird aus der aktuell in dem Speichermodul gehaltenen Datenmenge die ursprünglich an das Speichermodul übergebene vorbehandelte Datenmenge berechnet.
-
Die sich Zugriff auf die Informationen verschaffende Person erhält demnach also zunächst lediglich Zugang auf die zur Erhöhung der Entropie der von ihr aufgenommenen Informationen vorbehandelte Datenmenge. Aus dieser Datenmenge kann sie dann durch Nachbehandlung, nämlich unter Umkehrung des Vorbehandlungsvorgangs, wieder die die ursprüngliche Information codierende Datenmenge erzeugen. Dies geschieht wiederum mit Hilfe eines von dem Speichermodul unabhängigen Systems entweder durch Dekomprimierung oder Entschlüsselung der aus dem Speichermodul ausgelesenen Datenmenge, je nach Art der vor der kontinuierlichen Umcodierung erfolgten Vorbehandlung. Im Ergebnis dessen wird dann wiederum der ursprüngliche Klartext erhalten.
-
Nachfolgend soll noch ein etwas konkreteres Beispiel für eine zugriffsgesichert in dem Speichermodul zu speichernde Information gegeben werden. Es sei angenommen bei der Information handele es sich um eine geometrische Figur, zum Beispiel um die Abbildung eines Tetraeders im dreidimensionalen Raum, welche elektronisch codiert wird. Dafür gibt es verschiedenste Verfahren, zum Beispiel kartesische Koordinaten, polare oder zylindrische Koordinaten. Durch die Figur könnte aber auch ein deutlich komplexer Gegenstand abgebildet werden. Demgemäß könnte es sich dabei zum Beispiel um eine CAD-Darstellung eines Motors handeln.
-
Einige Punkte (zum Beispiel drei Punkte im dreidimensionalen Raum) der Figur (beispielsweise des Tetraeders) sind ausgezeichnet. Der eine Punkt legt zum Beispiel fest, dass eine Ecke des Tetraeders im „Klartext“-Zustand genau im Ursprung des Koordinatensystems steht. Der zweite und dritte Punkt legen fest, wie der Tetraeder im „Klartext“-Zustand im Raum ausgerichtet ist, etwa indem der zweite Punkt auf der x-Achse liegt (y- und z-Koordinate sind 0) und indem der dritte Punkt genau auf der y-Achse liegt.
-
Eine die Entropie erhöhende Vorbehandlung kann dabei beispielsweise darin bestehen, die die Informationen codierende Datenmenge in die Tetraeder-Darstellung zu transformieren. Beispielsweise könnte die Codierung der zu speichernden Informationen (des Geheimnisses) so vorgenommen werden, dass die Koordinaten sehr viel Entropie (zum Beispiel viele Ziffern oder viele Nachkommastellen) haben. Wenn zum Beispiel das Geheimnis ein Passwort ist, kann das Passwort als Folge der ASCII-Codes seiner Buchstaben dargestellt werden. Diese ASCII-Codes können wiederum durch eine Gödelisierungsvorschrift in eine einzige große Zahl transformiert und dann gegebenenfalls noch in einen Bruch verwandelt werden, so dass schließlich beispielsweise anstelle der Zahl "12345678" der Bruch "1,2345678" als eine Koordinate des Tetraeders verwendet werden könnte. Die sich anschließende Umcodierung besteht dann darin, dass der Tetraeder gesteuert durch einen Zufallszahlengenerator gewissermaßen ständig im Raum verschoben und verdreht wird, ohne aber dabei seine Größe oder seine Form zu ändern.
-
Durch die drei ausgezeichneten Punkte (Koordinaten) kann der Tetraeder immer wieder an seine ursprüngliche Position zurück bewegt werden (in seinen „Klartext“-Zustand), ohne dass ein Zähler für die Umcodierungen erforderlich wäre. Es muss auch nicht exakt die einmal vorwärts vollzogene Bewegung rückwärts durchgeführt werden, sondern der Tetraeder kann auf direktem Wege in den Ursprung des Koordinatensystems verschoben und dort dann (mit festgehaltenem erstem Punkt) so gedreht und orientiert werden, wie es die anderen Punkte vorgeben.
-
Das geschützte Geheimnis kann nun zum Beispiel darin bestehen, wo sich ein optionaler vierter oder fünfter ausgezeichneter Punkt der Figur befinden, nachdem die Figur wieder in ihren „Klartext“-Zustand gebracht (verschoben und gedreht) wurde. Oder es kann darin bestehen, in welche Richtung ein Teil der Figur (zum Beispiel die Kurbelwelle im Motor) im Klartext-Zustand zeigt.
-
Die Ausgabe besteht darin, dass das aktuelle „Bild“ (eine Projektion der Figur im Raum) auf einem Bildschirm in codierter Form ausgegeben wird. Es wird immer etwas gesendet (beispielsweise ein Videosignal), aber für einen Angreifer ist nicht erkennbar, wann das Videosignal geeignet ist, das Geheimnis abzulesen. Dazu müsste der Empfänger der Nachricht zunächst erst die Umcodierung (die Figur wird im Raum bewegt und dreht sich dabei zufällig) stoppen.