Beschreibung
Schlüsselmanagementeinrichtung und Verfahren zur verschlüsselten Ablage von digitalen Datenwörtern.
Die Erfindung betrifft eine Schlüsselmanagementeinrichtung für elektronische Speicher und ein Verfahren zur verschlüsselten Ablage von digitalen Datenwörtern in elektronischen Speichern.
Bei elektronischen Speichern werden grundsätzlich zwei verschiedene Speichertypen unterschieden. Zum einem sind dies flüchtige Speicher wie RAM und Speicher mit kurzen Zugriffszeiten, die oftmals als Zwischenspeicher verwendet werden wie Cash-Speicher, zum anderen sind dies nichtflüchtige Speicher wie ROM oder EEPROM. All diesen Speichern ist gemeinsam, daß sie aus regulären, regelmäßigen Strukturen aufgebaut sind und daher leicht analysierbar oder manipulierbar sind.
Bei sicherheitskritischen Anwendungen werden aus diesem
Grund, die elektronisch in den Speichern abgelegten Daten, durch geeignete kryptographische Verschlüsselungsmethoden geschützt, das heißt, die Daten werden verschlüsselt abgespeichert .
Der Zugriff auf verschlüsselte Informationen in den Speichern, ist zwangsläufig von höheren Zugriffszeiten zu den Daten begleitet, da die Daten beim Einlesen in den Speicher verschlüsselt werden müssen und beim Auslesen aus dem Spei- eher entschlüsselt werden müssen. Bei externen Speichermedien wie Chipkarten ist dies unumgänglich und wird in Kauf genommen. Speicher aber, deren Aufgabe es ist, Daten zwischenzu- speichern und schnell wieder zur Verfügung zu stellen, wie Zwischenspeicher, Caches oder ähnliche, können aufgrund ihrer Aufgabe keine aufwendigen und zeitraubenden Verschlüsselungsverfahren anwenden.
Die Offenlegungsschriften WO 01/54083 AI und WO 01/53931 A3 schlagen für solche Speicheranwendungen temporär gültige Schlüsselworte vor, mit denen alle Datenworte mittels eines einfachen Verfahrens verschlüsselt werden und so verschlüs- seit in diesem Speicher abgelegt sind. Dabei kann, je nach Sicherheitsanforderung, der Schlüssel mit höherer oder niedrigerer Frequenz gewechselt bzw. erneuert werden.
Nach der Aktualisierung eines Schlüsselwortes ist der sich im Speicher befindliche und mit dem vorhergehenden Schlüsselwort verschlüsselte Dateninhalt nicht entschlüsselbar. Um dies zu vermeiden, muß der Speicherinhalt bei einem Wechsel des Schlüsselwortes neu verschlüsselt und wieder in den Speicher geladen werden. Sind die Sicherheitsanforderungen hoch und wird aus diesem Grund der Schlüssel häufig gewechselt, führt dies zu spürbaren Performance-Einbrüchen. Es ergibt sich also ein Konflikt zwischen Sicherheit und Performance.
Der Erfindung liegt die Aufgabe zugrunde, auch bei häufigem Schlüsselwechsel, aufgrund eines hohen Sicherheitsbedarfs, eine hohe Performance und damit einhergehend kurze Zugriffszeiten zu den Daten sicherzustellen.
Diese Aufgabe wird durch die in Patentanspruch 1 und 8 vorge- schlagenen Maßnahmen gelöst.
Dabei stehen zeitgleich eine Vielzahl von Schlüsselworten zur Verschlüsselung sensibler Daten zur Verfügung. Beim Einlesen eines Datenwortes in einen Speicher, wählt eine Schlüsselaus- wahleinrichtung nach einem vorgegebenen Algorithmus einen aktiven Schlüssel aus einem Schlüsselwortspeicher aus. Dieser wird dann ebenso, wie ein damit verschlüsseltes Datenwort mit einer eindeutigen Markierung versehen. Das Datenwort wird mittels einer Verschlüsselungseinrichtung verschlüsselt und in dem Speicher abgelegt. Parallel zu der Ablage des verschlüsselten Datenwortes erfolgt die Ablage der Markierung. Die Markierung stellt dabei eine eindeutige Verbindung zwi-
sehen verschlüsseltem Datenwort und dem zugehörigen Schlüsselwort her. Für jeden weiteren Speichervorgang kann nun ein anderes Schlüsselwort gewählt werden. Vorteilhaft an diesem Verfahren ist, daß für jedem Speichervorgang ein neues Schlüsselwort gewählt werden kann und damit eine höchste sinnvolle Frequenz zur Schlüsselworterneuerung erreicht ist.
Soll nun ein bestimmtes Datenwort ausgelesen werden, so ermittelt eine erste Vergleichseinrichtung über die Markierung des verschlüsselten Datenwortes das geeignete Schlüsselwort im Schlüsselwortspeicher und führt dieses Schlüsselwort einer Entschlüsselungseinrichtung zu. Dies hat zur Folge, daß die Speicherinhalte mit jeweils unterschiedlichen Schlüsselworten verschlüsselt sind und diese Schlüsselworte bei einem Ent- schlüsselungsvorgang stets zur Verfügung stehen. Bei einer
Erneuerung eines Schlüsselwortes, muß nicht der gesamte Speicher neu eingelesen und verschlüsselt werden, sondern bleibt stets entschlüsselbar.
Eine vorteilhafte Erweiterung der Erfindung stellt die in Patentanspruch 8 dargestellte und beschriebene Umsetzung einer Gültigkeitsdauer der einzelnen Schlüsselworte dar. Dabei werden Schlüsselworte, die bereits eine definierte Zeit in dem Schlüsselwortspeicher bereitstehen, nicht mehr für neue Ver- schlusselungsvorgänge herangezogen. Diese Schlüsselworte werden erst dann gelöscht, wenn alle mit ihnen verschlüsselte Datenworte aus dem Speicher ausgelesen, bzw. entfernt wurden.
In weiteren vorteilhaften Ausgestaltungen der Erfindung wer- den die Verschlüsselungseinheit und die Entschlüsselungseinheit zu einer gemeinsamen Ver- und Entschlüsselungseinheit zusammengefaßt .
Des weiteren ist es vorteilhaft, den Eingang der Schlüsselma- nagementeinrichtung und den Ausgang der Schlüsselmanagementeinrichtung durch einen bidirektionalen Datenbus zu realisieren.
Eine weitere vorteilhafte Ausgestaltung der Erfindung sieht für einen Zwischenspeicher, dessen Inhalte mit der zentralen Speichereinheit korrespondieren, eine weitere bzw. eine zwei- te Vergleichseinrichtung vor. Diese prüft den Speicherinhalt des Zwischenspeichers auf die Existenz verschlüsselter Datenworte mit Markierungen bereits aus dem Pool entfernter Schlüsselwörter. Wird die Existenz eines solchen verschlüsselten Datenwortes festgestellt, wird es aus dem Zwischen- Speicher entfernt.
Eine weitere vorteilhafte Ausgestaltung sieht vor, alle diejenigen verschlüsselten Datenworte des Zwischenspeichers für den Fall in den Hauptspeicher zurückzuschreiben und neu zu verschlüsseln, bei dem die Markierungen der verschlüsselten Datenworte auf Schlüssel verweisen, die nicht mehr für neue Verschlüsselungsvorgänge herangezogen werden und aus diesem Grund bald nicht mehr im Schlüsselspeicher zur Entschlüsselung zur Verfügung stehen werden. Vorteilhaft ist dabei, daß Inhalte des Zwischenspeichers nicht allein durch ein unge- prüftes Löschen der Schlüsselworte ihre Gültigkeit verlieren.
Im Weiteren sei die Erfindung anhand eines Ausführungsbeispiels, unter Bezugnahme auf die Figur näher beschrieben.
Die Figur zeigt eine erfindungsgemäße Schlüsselmanagementeinrichtung für elektronische Speicher mit ihren einzelnen Komponenten und deren Verbindungen zueinander als Prinzipdarstellung.
Ein Schlüsselwortspeicher 1 enthält alle zur Verfügung stehenden Schlüsselworte ti bis tn. Die Versorgung des Schlüsselwortspeichers 1 mit neuen Schlüsselworten wird über einen zweiten Eingang 11, sichergestellt.
Eine Schlüsselauswahleinrichtung 2 wählt bei einem Speichervorgang einen aktiven Schlüssel, aus dem sich im Schlüssel-
wortspeicher 1 befindlichen Schlüsselwortpool aus, woraufhin dieser in der Verschlüsselungseinheit 5 zur Verschlüsselung des Datenworts herangezogen wird. Dabei wird ein verschlüsseltes Datenwort mit der Markierung seines Schlüssels in ei- ner zentralen Speichereinheit 4 abgelegt . Es erfolgt dabei die Ablage des verschlüsselten Datenwortes in einer zweiten Speicherzelle, und die Ablage der Markierung des verschlüsselten Datenwortes in einer ersten Speicherzelle der zentralen Speichereinheit 4. Zur Adressierung der Speicherzellen wird eine Adressiereinheit 3 herangezogen.
Ein Auslesevorgang aus dem Speicher erfolgt in umgekehrter Weise. Dabei wird aus der ersten Speicherzelle 9 der zentralen Speichereinheit 4 die Markierung des verschlüsselten Da- tenwortes ausgelesen und mit einer ersten Vergleichseinrichtung 12 das passende Schlüsselwort aus dem Schlüsselwortspeicher ermittelt. Eine Entschlüsselungseinheit 6, entschlüsselt dann mit dem ausgewählten Schlüsselwort die gespeicherte Information.
Ein weiteres Beispiel beschreibt die Anwendung der Erfindung bei Zwischenspeichern, sogenannten Cache-Speichern. Bei Cache-Speichern müssen alle verschlüsselten Datenworte aus dem Speicher entfernt werden, deren Markierung auf einen Schlüssel verweist, der zum Entschlüsseln nicht mehr zur Verfügung steht. Um dies durchzuführen, kann ein Löschmechanismus implementiert werden, der diese im Cache-Speicher eingetragenen verschlüsselten Datenworte als ungültig markiert. Zur Realisierung eines solchen Löschmechanismus werden die Speicherfelder, in denen die Markierungen der verschlüsselten Datenworte abgelegt sind, als "content addressable memory" ausgelegt. Bevor ein Schlüsselwort aus dem Schlüsselwortspeicher gelöscht wird, wird dann in diesem "content addressable memory" nach der Markierung dieses Schlüssels gesucht . Dabei sorgt eine Schaltung dafür, daß jedes Datenwort mit der Markierung des Schlüssels, als ungültig markiert wird.
Es ist auch möglich, die Dateneinträge des Cache-Speichers in den zugrundeliegenden Hauptspeicher zurückzuschreiben. Damit kann die Konsistenz zwischen Cache- und Hauptspeicher sichergestellt werden.
Es ist zweckmäßig, die Suche nach der Markierung so auszulegen, daß bei der Suche die gefundenen Markierungen und die dazugehörigen verschlüsselten Datenworte gesucht werden und der Schlüssel aus dem Schlüsselwortspeicher erst dann ge- löscht wird, wenn kein dazugehöriges Datenwort mehr in dem Cache-Speicher vorhanden ist.
Zur Steuerung der beschriebenen Abläufe kann ein Register an die erfindungsgemäße Schlüsselmanagementeinrichtung ange- schlössen werden, welches die Informationen für jede einzelne erforderliche Aktion enthält. Dazu gehören:
a) der Vergleich bzw. die Suche nach einer bestimmten Markierung eines bestimmten Schlüsselwortes,
b) im Falle der Verwendung der Erfindung bei einem Cache- Speicher, das Ungültigsetzen von verschlüsselten Datenworten mit der Markierung eines nicht mehr gültigen Schlüsselwortes ,
c) eine Funktion, mit der das Zurückschreiben aus dem Cache-Speicher in den Hauptspeicher angestoßen werden kann,
d) eine Angabe darüber, ob und wenn ja, wie viele verschlüsselte Datenworte mit Markierungen, die auf nicht gültige oder nicht mehr gültige Schlüsselworte verweisen, existieren und
e) die In ormationen zur Verfügung zu stellen, die zum Zurückschreiben aus einem Cache erforderlich sind.