DE102013210837A1 - Startanwendung kryptographischer Schlüsselspeicher - Google Patents

Startanwendung kryptographischer Schlüsselspeicher Download PDF

Info

Publication number
DE102013210837A1
DE102013210837A1 DE102013210837.0A DE102013210837A DE102013210837A1 DE 102013210837 A1 DE102013210837 A1 DE 102013210837A1 DE 102013210837 A DE102013210837 A DE 102013210837A DE 102013210837 A1 DE102013210837 A1 DE 102013210837A1
Authority
DE
Germany
Prior art keywords
key
application
hash code
protected
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE102013210837.0A
Other languages
English (en)
Other versions
DE102013210837B4 (de
Inventor
Shawn P. Mullen
Jessica C. Murillo
Johnny M. Shieh
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE102013210837A1 publication Critical patent/DE102013210837A1/de
Application granted granted Critical
Publication of DE102013210837B4 publication Critical patent/DE102013210837B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Abstract

Es werden Techniken bereitgestellt zum Verschlüsseln einer Ressource, die zu einer Anwendung gehört, mit einem ersten Schlüssel; zu einem Installationszeitpunkt Erzeugen eines ersten Hash-Codes für einen ausführbaren Daemon, der zu der Anwendung gehört; Verschlüsseln des ersten Schlüssels mit dem ersten Hash-Code, um einen geschützten ersten Schlüssel zu erzeugen; zu einem Ladezeitpunkt einer Anwendung Erzeugen eines zweiten Hash-Codes für den ausführbaren Daemon; Ableiten des ersten Schlüssels durch Entschlüsseln des geschützten ersten Schlüssels unter Verwendung des zweiten Hash-Codes, um einen abgeleiteten ersten Schlüssel zu erzeugen; und Zugreifen auf die Ressource durch den ausführbaren Daemon durch Verwenden des abgeleiteten ersten Schlüssels. Zu Beispielen für geschützte Ressourcen gehören Datenbanken, Datenübertragungseinheiten und ein Lightweight Directory Access Protocol Server, ohne jedoch darauf beschränkt zu sein.

Description

  • QUERVERWEISE AUF VERWANDTE ANMELDUNGEN
  • Die vorliegende Anmeldung ist eine Fortsetzung und beansprucht den Vorteil des Einreichungsdatums einer eigenen Anmeldung mit dem Titel „Start Method for Application Cryptographic Keystores”, Seriennummer 13/539,325, die am 30. Juni 2012 eingereicht wurde und durch Verweis darauf als hier mit aufgenommen gilt.
  • GEBIET DER OFFENBARUNG
  • Der beanspruchte Gegenstand bezieht sich allgemein auf die Computersicherheit und insbesondere auf Techniken zum Sicherstellen, dass auf eine verschlüsselte Einheit, einen verschlüsselten Dienst oder verschlüsselte Daten lediglich durch eine ausführbare Datei eines berechtigten Computers zugegriffen werden kann.
  • KURZDARSTELLUNG
  • Es werden Techniken bereitgestellt, die sicherstellen, dass auf eine verschlüsselte Einheit, einen verschlüsselten Dienst oder verschlüsselte Daten lediglich durch eine ausführbare Datei eines berechtigten Computers zugegriffen werden kann. Eine übliche Forderung bei Systemen der Informationstechnologie (IT-Systemen) besteht darin, dass bei Systemen und Anwendungen häufig die Fähigkeit zum Booten oder Neubooten ohne Bedienereingriff gefordert wird. Ein Datenbankserver, der auf verschlüsselte Daten zugreift, kann z. B. mitten in der Nacht eine Netzstörung erleiden. Üblicherweise muss ein Systemadministrator zur Verfügung stehen, um ein Passwort oder einen Schlüssel einzugeben, damit der Server auf die Daten zugreifen kann. Diese Forderung ist bei geschäftskritischen Computersystemen und Anwendungen üblich. Bei einem weiteren Beispiel verwendet ein AIX-Lightweight-Directory-Access-Protocol (LDAP) ein Passwort oder einen Schüssel zum Berechtigen bei einem sicheren LDAP-Server, und AIX stellt eine Datei bereit, in der der unverschlüsselte Schüssel gespeichert ist, bis er beim Booten oder Neustart des LDAP-Client-Daemon erforderlich ist. Um ein sicheres System bereitzustellen, sollte jedoch die Datei mit dem unverschlüsselten Schlüssel durch eine starke Verschlüsselung gesichert sein. Dabei handelt es sich um ein Henne-oder-Ei-Problem.
  • Es werden Techniken bereitgestellt zum Verschlüsseln einer Ressource, die zu einer Anwendung gehört, mit einem ersten Schlüssel; zu einem Installationszeitpunkt der Anwendung Erzeugen eines ersten Hash-Codes für einen ausführbaren Daemon, der zu der Anwendung gehört; Verschlüsseln des ersten Schlüssels mit dem ersten Hash-Code, um einen geschützten ersten Schlüssel zu erzeugen; zu einem Ladezeitpunkt einer Anwendung Erzeugen eines zweiten Hash-Codes für den ausführbaren Daemon; Ableiten des ersten Schlüssels durch Entschlüsseln des geschützten ersten Schlüssels unter Verwendung des zweiten Hash-Codes, um einen abgeleiteten ersten Schlüssel zu erzeugen; und Zugreifen auf die Ressource durch den ausführbaren Daemon durch Verwenden des ersten abgeleiteten Schlüssels.
  • Diese Zusammenfassung ist nicht als umfassende Beschreibung des beanspruchten Gegenstands gedacht, sondern soll einen kurzen Überblick über einige der damit verbundenen Funktionen bereitstellen. Weitere Systeme, Verfahren, Funktionen, Merkmale und Vorteile des beanspruchten Gegenstands werden für einen Fachmann bei einer Prüfung der folgenden Figuren und der genauen Beschreibung erkennbar.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Ein besseres Verständnis des beanspruchten Gegenstands kann erreicht werden, wenn die folgende genaue Beschreibung der offenbarten Ausführungsformen in Verbindung mit den nachfolgenden Figuren betrachtet wird.
  • 1 ist ein Beispiel für eine Architektur eines Datenverarbeitungssystems, bei der der beanspruchte Gegenstand umgesetzt sein kann.
  • 2 ist ein Blockschaubild eines sicheren Anwendungsstartladeprogramms (SASL – Secure Application Startup Loader), das zuerst in 1 eingeführt wurde.
  • 3 ist ein Ablaufplan eines Prozesses „installiere Anwendung”, der Aspekte des beanspruchten Gegenstands umsetzen kann.
  • 4 ist ein Ablaufplan eines Prozesses „Starte Anwendung”, der Aspekte des beanspruchten Gegenstands umsetzen kann.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Wie dem Fachmann klar sein wird, können Aspekte der vorliegenden Erfindung als System, Verfahren oder Computerprogrammprodukt ausgeführt werden. Dementsprechend können Aspekte der vorliegenden Erfindung die Form einer reinen Hardware Ausführungsform, einer reinen Software-Ausführungsform (darunter Firmware, residente Software, Mikrocode usw.) oder einer Ausführungsform, die Software- und Hardware-Aspekte kombiniert, annehmen, die hier alle allgemein als ”Schaltung”, ”Modul” oder ”System” bezeichnet werden können. Des Weiteren können Aspekte der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das in einem oder mehreren computerlesbaren Medien verkörpert ist, auf denen sich computerlesbarer Programmcode befindet.
  • Jede Kombination aus einem oder mehreren computerlesbaren Medien kann verwendet werden. Das computerlesbare Medium kann ein computerlesbares Signalmedium oder ein computerlesbares Speichermedium sein. Ein computerlesbares Speichermedium kann z. B. ein elektronisches, magnetisches, optisches, elektromagnetisches, infrarot- oder Halbleitersystem, eine solche Vorrichtung oder Einheit oder jede geeignete Kombination daraus sein, ist jedoch nicht darauf beschränkt. Zu spezifischeren Beispielen (einer unvollständigen Liste) für das computerlesbare Speichermedium würde Folgendes gehören: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Festwertspeicher (ROM), ein löschbarer programmierbarer Festwertspeicher (EPROM oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Compactdisk-Festwertspeicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder jede geeignete Kombination davon. Im Kontext dieses Dokuments kann ein computerlesbares Speichermedium jedes materielle Medium sein, das ein Programm zur Verwendung durch oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Befehlsausführung enthalten oder speichern kann.
  • Ein computerlesbares Signalmedium kann ein verbreitetes Datensignal mit computerlesbarem Programmcode, der darin z. B. im Basisband oder als Teil einer Trägerwelle verkörpert ist, enthalten. Ein derartiges verbreitetes Signal kann jede von einer Vielfalt von Formen annehmen, zu denen elektromagnetische, optische Formen oder jede geeignete Kombination hiervon gehören, ohne jedoch auf diese beschränkt zu sein. Ein computerlesbares Signalmedium kann jedes computerlesbare Medium sein, das kein computerlesbares Speichermedium ist und ein Programm zur Verwendung durch oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Befehlsausführung übertragen, verbreiten oder transportieren kann.
  • Programmcode, der auf einem computerlesbaren Medium verkörpert ist, kann unter Verwendung jedes geeigneten Mediums übertragen werden, wozu drahtlose, leitungsgestützte, Lichtwellenleiterkabel-, HF-Medien usw. oder jede geeignete Kombination davon gehören, ohne jedoch darauf beschränkt zu sein.
  • Computerprogrammcode zum Ausführen von Operationen für Aspekte der vorliegenden Erfindung kann in jeder Kombination aus einer oder mehreren Programmiersprachen geschrieben sein, darunter eine objektorientierte Programmiersprache wie Java, Smalltalk, C++ oder dergleichen und herkömmliche prozedurale Programmiersprachen wie etwa die Programmiersprache ”C” oder ähnliche Programmiersprachen. Der Programmcode kann nur auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder nur auf dem fernen Computer oder Server ausgeführt werden. Bei dem zuletzt genannten Szenario kann der ferne Computer mit dem Computer des Benutzers über einen beliebigen Netzwerktyp verbunden sein, einschließlich eines Lokalbereichsnetzwerks (LAN) oder eines Weitbereichsnetzwerks (WAN), oder die Verbindung kann zu einem externen Computer (z. B. über das Internet unter Verwendung eines Internet-Dienstanbieters) hergestellt werden.
  • Aspekte der vorliegenden Erfindung sind hier unter Bezugnahme auf Ablaufplandarstellungen und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es ist klar, dass jeder Block der Ablaufplandarstellungen und/oder Blockschaubilder und Kombinationen von Blöcken in den Ablaufplandarstellungen und/oder Blockschaubildern durch Computerprogrammbefehle umgesetzt werden können. Diese Computerprogrammbefehle können für einen Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine solche Maschine zu bilden, dass Befehle, die über den Prozessor des Computers oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zum Umsetzen der Funktionen/Handlungen, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaubilds spezifiziert sind, erzeugen.
  • Diese Computerprogrammbefehle können außerdem in einem computerlesbaren Medium gespeichert sein, das einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten anleiten kann, in einer bestimmten Weise zu funktionieren, so dass die in dem computerlesbaren Medium gespeicherten Befehle einen Herstellungsgegenstand produzieren, wozu Befehle gehören, die die Funktion/Handlung umsetzen, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaubilds spezifiziert sind.
  • Die Computerprogrammbefehle können außerdem in einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten geladen werden, um zu bewirken, dass eine Reihe von Operationsschritten auf dem Computer, der anderen programmierbaren Datenverarbeitungsvorrichtung oder anderen Einheiten ausgeführt werden und ein mittels Computer umgesetzter Prozess erzeugt wird, so dass die Befehle, die auf dem Computer oder der anderen programmierbaren Vorrichtung ausgeführt werden, Prozesse zum Umsetzen der Funktionen/Handlungen, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaubilds spezifiziert sind, bereitstellen.
  • Obwohl die offenbarte Technologie auf viele Typen von Anwendungen und Ressourcen angewendet werden kann, verwendet die folgende Beschreibung für Erläuterungszwecke eine Datenbankanwendung und geschützte Daten, auf die die Anwendung zugreift. Bei dem anderen Beispiel, das oben verwendet wurde, handelt es sich um LDAP-Clients und -Server. Für einen Fachmann sollten die vielen Szenarien klar sein, bei denen der beanspruchte Gegenstand verwendet werden kann.
  • Wie die Erfinder in diesem Zusammenhang erkannt haben, besteht bei vielen Benutzern einer Anwendung wie DB2, einem Datenbank-Managementsystem (DBMS) von der International Business Machines Corporation in Armonk, New York, die Konformitätsanforderung, die Daten zu verschlüsseln. Heutige Systeme speichern häufig Passwörter in einer EFS-Datei (Encrypted File Systems – Systeme mit verschlüsselten Dateien), so dass ein DB2-Daemon ohne Bedienereingriff booten oder neu starten kann. Diese Anforderung ist bei geschäftskritischen Computersystemen und Anwendungen üblich. Das Speichern von Passwörtern in einer Datei ist jedoch grundsätzlich unsicher, es sei denn, die Datei ist mit einer starken Verschlüsselung geschützt. Die offenbarten Techniken stellen eine zusätzliche Sicherheitsschicht bereit.
  • In den Figuren handelt es sich bei 1 um ein Beispiel für eine Architektur 100 eines Datenverarbeitungssystems, in der der beanspruchte Gegenstand umgesetzt sein kann. Ein Datenverarbeitungssystem 102 enthält eine Zentraleinheit (CPU) 104, die mit einem Monitor 106, einer Tastatur 108 und einer Zeigevorrichtung oder „Maus” 110 verbunden ist, die gemeinsam ein menschliches Interagieren mit dem Datenverarbeitungssystem 102 und anderen Komponenten der Architektur 100 des Datenverarbeitungssystems ermöglichen. In dem Datenverarbeitungssystem 102 ist außerdem ein computerlesbares Speichermedium (CRSM) 112 enthalten, das an die CPU 104 angeschlossen und entweder im Datenverarbeitungssystem 102 enthalten (d. h. eine interne Einheit) oder extern an die CPU 104 mittels verschiedener handelsüblicher Verbindungseinheiten angeschlossen ist, zu denen ein (nicht gezeigter) USB-Port (Universal Serial Bus – universeller serieller Bus) gehört, ohne jedoch darauf beschränkt zu sein. Das CRSM 112 ist so dargestellt, dass es ein Betriebssystem (OS) 114, ein Beispiel für einen Anwendungs-Daemon 116, der in diesem Beispiel ein DB2-Daemon ist, ein sicheres Anwendungsstartladeprogramm (SASL) 118 und ein System verschlüsselter Dateien (EFS) 120 speichert, das einen Schlüssel oder „PKey” 122 enthält, der gemäß dem beanspruchten Gegenstand geschützt ist. Die Komponenten 116, 118, 120 und 122 und ihre Interaktion werden nachfolgend in Verbindung mit den 2 bis 5 genauer beschrieben.
  • Das Datenverarbeitungssystem 102 und die CPU 104 sind mit dem Internet 130 verbunden, das außerdem mit einem Server-Computer 132 verbunden ist. Obwohl in diesem Beispiel das Datenverarbeitungssystem 102 und der Server 231 über das Internet 130 für einen Datenaustausch verbunden sind, könnten sie auch über eine beliebige Anzahl von Datenübertragungsmedien verbunden sein, wie etwa ein (nicht gezeigtes) Lokalbereichsnetzwerk (LAN), ohne jedoch darauf beschränkt zu sein. An den Server 132 angeschlossen ist ein CRSM 134, das so dargestellt ist, dass es eine Ressource R_1 136 speichert, die in diesem Beispiel Daten entspricht, die gespeichert sind und auf die vom DB2-Daemon 116 zugegriffen wird. Es sollte angemerkt werden, dass es viele mögliche Konfigurationen des Datenverarbeitungssystems gibt, für die die Architektur 100 des Datenverarbeitungssystems lediglich ein einfaches Beispiel darstellt, und dass R_1 136 lediglich ein Beispiel für eine Ressource darstellt, die gemäß dem beanspruchten Gegenstand geschützt sein kann. Zu weiteren Beispielen für geschützte Ressourcen könnten der Zugriff auf ein verschlüsseltes Netzwerk-Datenübertragungsprotokoll und der Zugriff auf einen sicheren LDAP-Server gehören, ohne jedoch darauf beschränkt zu sein.
  • 2 ist ein genaueres Blockschaubild des SASL 118, das zuerst in 1 eingeführt wurde. Das SASL 118 enthält ein Eingabe/Ausgabemodul (E/A-Modul) 140, ein Datenmodul 142, ein Verschlüsselungsmodul 144, ein Entschlüsselungsmodul 146, ein Hash-Modul 148, ein Installationsmodul 150 und ein Startmodul 152. Für die Zwecke der folgenden Beispiele wird angenommen, dass Logik, die zu dem SASL 118 gehört, im Datenverarbeitungssystem 102 (1) ausgeführt wird und im CRSM 112 (1) gespeichert ist. Es sollte klar sein, dass der beanspruchte Gegenstand in vielen Typen von Datenverarbeitungssystemen und Datenspeicherstrukturen umgesetzt werden kann, der Einfachheit halber wird er jedoch lediglich in Bezug auf ein Datenverarbeitungssystem 102 und eine Systemarchitektur 100 (1) beschrieben. Des Weiteren handelt es sich bei der Darstellung des SASL 118 in 2 um ein logisches Modell. Mit anderen Worten können die Komponenten 140, 142, 144, 146, 148, 150 und 152 in derselben oder in separaten Dateien gespeichert sein und im System 100 entweder als ein einzelnes System oder als separate Prozesse, die über beliebige verfügbare Interprozesskommunikationstechniken (IPC-Techniken) interagieren, geladen und/oder ausgeführt werden.
  • Das E/A-Modul 140 bewältigt den Datenaustausch, den das SASL 118 mit anderen Komponenten des Datenverarbeitungssystems 102 und der Architektur 100 hat. Bei dem Datenmodul 142 handelt es sich um eine Datenablage für Informationen, die das SASL 118 während des normalen Betriebs benötigt. Zu Beispielen für die Typen von Informationen, die im Datenmodul 142 gespeichert sind, gehören Anwendungsdaten 152, Systemdaten 154, Optionsdaten 156 und ein Arbeitszwischenspeicher 158. Anwendungsdaten 152 speichern Informationen über eine mögliche Anwendung, wie etwa Bezeichnung, genutzte Ressourcen und Lage von Ressourcen, auf die zugegriffen werden soll. In dem nachfolgenden Beispiel speichern Anwendungsdaten 152 Informationen über den Anwendungs-Daemon 116 (1), R_1 136 (1) und die Tatsache, dass auf R_1 136 über den Server 132 (1) zugegriffen wird. Systemdaten 154 speichern Informationen über andere Komponenten der Architektur 100. Bei Systemdaten 154 kann es sich z. B. um Daten handeln, die einen Datenaustausch mit dem Server 132 ermöglichen. Zu Optionsdaten 156 gehören Informationen zu verschiedenen Benutzer- und administrativen Präferenzen. Der Arbeitszwischenspeicher 158 speichert die Ergebnisse laufender Berechnungen.
  • Das Verschlüsselungsmodul 144 führt unter Verwendung von Standard-Verschlüsselungstechniken einen Passwortschutz für verschiedene Datenelemente für das SASL 118 aus. Die Datenverschlüsselungsfunktion wird durch die folgende Formel dargestellt: PD (geschützte Daten) = Verschlüsseln (Schlüssel, Daten). Das Entschlüsselungsmodul 146 entschlüsselt zuvor geschützte Daten. Die Datenentschlüsselung wird durch die folgende Formel dargestellt: Daten = Entschlüsseln (Schlüssel, PD). Das Hash-Modul 148 erzeugt Hash-Codes, die von den Verschlüsselungs- und Entschlüsselungsmodulen 144 und 146 verwendet werden, um Daten zu verschlüsseln und zu entschlüsseln, insbesondere Schlüssel für verschiedene Ressourcen wie etwa R_1 136.
  • Das Installationsmodul 150 ermöglicht die Installation von Anwendungen bei diesem Beispiel in dem Datenverarbeitungssystem 102 (siehe 200, 3). Das Startmodul 152 ist zuständig für die automatische Ausführung von Anwendungs-Daemons im Datenverarbeitungssystem 102 (siehe 240, 4). Wie nachfolgend in Verbindung mit 4 dargestellt, können einige Anwendungen wie in jedem üblichen System gestartet werden. Andere Anwendungen wie etwa der Anwendungs-Daemon 116, die auf geschützte Ressourcen zugreifen, werden gemäß der offenbarten Technologie geladen. Eine Feststellung, ob eine Anwendung in üblicher Weise oder gemäß dem beanspruchten Gegenstand geladen wird, erfolgt anhand von Informationen, die in den Anwendungsdaten 152 gespeichert sind. Die Funktionen und Interaktionen von Modulen 140, 142, 144, 146, 148, 150 und 152 werden nachfolgend in Verbindung mit den 3 bis 4 genauer beschrieben.
  • 3 ist ein Ablaufplan eines Prozesses 200 „Installiere Anwendung”, der Aspekte des beanspruchten Gegenstands umsetzen kann. Bei diesem Beispiel ist Logik, die zu dem Prozess 200 gehört, im CRSM 112 (1) in Verbindung mit dem SASL 118 (1 und 2) gespeichert und wird in einem oder mehreren Prozessoren (nicht gezeigt) der CPU 104 (1) und im Datenverarbeitungssystem 102 (1) ausgeführt.
  • Der Prozess 200 beginnt in einem Block 202 „Beginne mit Installieren der Anwendung” und geht sofort zu einem Block 204 „Empfange Anwendung” über. Während der Verarbeitung, die zu dem Block 204 gehört, wird die Anwendung für eine Installation im Datenverarbeitungssystem 102 empfangen. Es werden keine Annahmen gemacht, wie die Anwendung empfangen wird. Mit anderen Worten kann die Anwendung heruntergeladen, auf einem tragbaren Speichermedium (nicht gezeigt) oder auf jede andere bekannte oder noch nicht bekannte Weise empfangen werden. Einem Fachmann sollten die vielen unterschiedlichen Arten bekannt sein, wie eine Anwendung für eine Installation in einem Datenverarbeitungssystem empfangen werden kann.
  • Während der Verarbeitung, die zu einem Block 206 „Speichere Anwendung” gehört, wird Logik, die zu einer ausführbaren Version der Anwendung gehört, die während der zu dem Block 204 gehörenden Verarbeitung empfangen wird und bei der es sich in diesem Beispiel um einen Anwendungs-Daemon 116 (1) handelt, im CRSM 112 gespeichert. Während der Verarbeitung, die zu einem Block 208 „Abrufen eines ersten Schlüssels und eines ersten Hash-Werts” gehört, werden ein Zugangsschlüssel, der einer Ressource entspricht, bei der es sich in diesem Beispiel um R_1 136 (1) handelt, und ein Hash-Code, der auf der ausführbaren Datei beruht und erzeugt wird, wenn die Anwendung kompiliert wird, abgerufen. Der Hash-Code wird üblicherweise in Verbindung mit der Anwendung übertragen. Ein Administrator, der die Anwendung installiert, würde üblicherweise Zugriff auf diese Informationen haben.
  • Während einer Verarbeitung, die zu einem Block 210 „Verschlüssele ersten Schlüssel mit erstem Hash-Wert” gehört, wird ein geschützter Schlüssel, bei dem es sich in diesem Beispiel um pkey 122 (1) handelt, gemäß der folgenden Formel erzeugt: pkey = Verschlüsseln (erster Hash-Wert, erster Schlüssel). Mit anderen Worten wird pkey 122 erzeugt, indem der Schlüssel mit dem Hash-Code, der beim Kompilieren des Anwendungs-Daemon 116 erzeugt wird, zu R_1 136 verschlüsselt wird. Während einer Verarbeitung, die zu einem Block 212 „Speichere geschützten Schlüssel” gehört, wird pkey 122, der während einer zu dem Block 210 gehörenden Verarbeitung erzeugt wurde, in der EFS-Datei 120 (1) gespeichert. Es sollte angemerkt werden, dass üblicherweise weder der ursprüngliche Schlüssel für R_1 136 noch der Hash-Code, der mit dem Anwendungs-Daemon 116 übertragen wird, gespeichert werden. Auf diese Weise muss jeder Teilnehmer, der den Anwendungs-Daemon 116 zur Ausführung in die CPU 104 lädt, in der Lage sein, pkey 122 zu entschlüsseln, um auf R_1 136 zugreifen zu können.
  • Während einer Verarbeitung, die zu dem Block 214 „Speichere Anwendungsinformationen” gehört, werden Informationen über den Anwendungs-Daemon 116 in Anwendungsdaten 152 gespeichert, zu denen Daten, die ermöglichen, dass das SASL 118 den Anwendungs-Daemon 116 mit dem pkey 122 korreliert, und eine Angabe, dass der Anwendungs-Daemon 116 gemäß dem beanspruchten Gegenstand geschützt ist, gehören, ohne jedoch darauf beschränkt zu sein. Die Steuerung geht schließlich zu einem Block 219 „Beende installieren der Anwendung” über, in dem der Prozess 200 endet.
  • 4 ist ein Ablaufplan eines Prozesses 240 „Beginne Anwendung”, der Aspekte des beanspruchten Gegenstands umsetzen kann. Bei diesem Beispiel wird Logik, die zu dem Prozess 240 gehört, im CRSM 112 (1) in Verbindung mit dem SASL 118 (1 und 2) gespeichert und in einem oder mehreren Prozessoren (nicht gezeigt) der CPU 104 (1) und im Datenverarbeitungssystem 102 (1) ausgeführt. Der Prozess 240 kann nach einem Neubooten oder einem automatischen Neubooten des Datenverarbeitungssystems 102 ausgelöst werden oder nachdem ein bestimmtes Ereignis entweder beabsichtigt oder unbeabsichtigt bewirkt hat, dass eine vorher ausgelöste ausführbare Datei des Anwendungs-Daemon 116 (1) angehalten wird. Im Allgemeinen vermeidet der Prozess 240 die Notwendigkeit eines manuellen Eingriffs, wenn der Anwendungs-Daemon 116 ausgelöst ist, und eliminiert insbesondere die Notwendigkeit, dass ein Bediener ein Passwort eingeben muss, damit die Anwendung mit Zugriff auf erforderliche verschlüsselte Dateien und Ressourcen gestartet werden kann. Die offenbarte Technologie eliminiert außerdem die Notwendigkeit, dass ungeschützte Schlüssel für derartige erforderliche Dateien und Ressourcen in dem System gespeichert werden müssen.
  • Der Prozess 240 beginnt in einem Block 242 „Beginne mit Starten der Anwendung” und geht sofort zu einem Block 244 „Empfange Startanforderung” über. Während der zu dem Block 244 gehörenden Verarbeitung wird eine Anforderung zum Starten einer Anwendung empfangen, bei der es sich in diesem Beispiel um den Anwendungs-Daemon 116 handelt. Wie oben erläutert kann eine derartige Anforderung von dem Datenverarbeitungssystem 102 im Fall eines Neubootens oder der Erfassung, dass eine zuvor ausgelöste Kopie des Anwendungs-Daemon 116 angehalten wurde, automatisch erzeugt werden. Während einer Verarbeitung, die zu einem Block 246 „Lade Anwendung” gehört, wird der Anwendungs-Daemon 116 zur Ausführung in die CPU 104 geladen.
  • Während einer Verarbeitung, die zu einem Block 248 „Ressource(n) geschützt?” gehört, erfolgt eine Feststellung, ob der Anwendungs-Daemon 116 einen Zugriff auf verschlüsselte Dateien oder Ressourcen gemäß dem beanspruchten Gegenstand fordert. Eine derartige Feststellung erfolgt anhand von Informationen, die in Verbindung mit Anwendungsdaten 152 (2) gespeichert sind. Wenn festgestellt wird, dass der Anwendungs-Daemon 116 einen Zugriff auf verschlüsselte Dateien oder Ressourcen gemäß dem beanspruchten Gegenstand fordert, geht die Steuerung zum Block 250 „Erzeuge zweiten Hash-Schlüssel” über. Während der Verarbeitung, die zu dem Block 250 gehört, wird ein zweiter Hash-Code (SH) (siehe 148, 2) anhand des Abbilds des Anwendungs-Daemon 116 erzeugt, das während der zu dem Block 246 gehörenden Verarbeitung geladen wurde.
  • Während der Verarbeitung, die zu dem Block 252 „Leite ersten Schlüssel ab” gehört, wird der Hash-Code, der während der zu dem Block 250 gehörenden Verarbeitung erzeugt wurde, als Schlüssel zum Entschlüsseln (siehe 146, 2) von pkey 122 (siehe 210, 212, 3) verwendet, um anhand der folgenden Formel: SK = Entschlüsseln (SH, pkey 122) einen zweiten Schlüssel (SK) zu erzeugen. Während der Verarbeitung, die zu einem Block 254 „Greife auf Ressource zu” gehört, wird der während der zu dem Block 252 gehörenden Verarbeitung erzeugte zweite Schlüssel verwendet, um auf R_1 136 zuzugreifen. Es sollte angemerkt werden, dass, wenn der zweite Hash-Code mit dem ersten Hash-Code übereinstimmt (siehe 208, 3) pkey 122 entschlüsselt und der ursprüngliche Schlüssel (siehe 208, 3) für die entsprechenden geschützten Dateien oder Ressourcen erzeugt werden kann. Es sollte außerdem angemerkt werden, dass, wenn der Anwendungs-Daemon 116 modifiziert wurde, der zweite Hash-Code nicht mit dem ersten Hash-Code übereinstimmen und die Entschlüsselung während der zu dem Block 252 gehörenden Verarbeitung nicht den richtigen Schlüssel für die verschlüsselte Datei oder Ressource erzeugen wird.
  • Während der Verarbeitung, die zu einem Block 256 „Zugriff gestattet?” gehört, wird festgestellt, ob auf die geschützten Dateien oder Ressourcen zugegriffen werden konnte. Wenn das nicht der Fall ist, geht die Steuerung zu einem Block 258 „Löse Ausnahme aus” über. Während der zu dem Block 258 gehörenden Verarbeitung werden geeignete Maßnahmen getroffen. Zu derartigen Maßnahmen gehören das Übertragen einer Benachrichtigung zu einem Administrator des Datenverarbeitungssystems 102 oder dem Anwendungs-Daemon 116, ohne jedoch darauf beschränkt zu sein. Nachdem festgestellt wurde, dass keine geschützten Dateien oder Ressourcen an der zu dem Block 248 gehörenden Verarbeitung beteiligt sind, geht die Steuerung, nachdem festgestellt wurde, dass während der zu dem Block 256 gehörenden Verarbeitung ein Zugriff gestattet oder während der zu dem Block 258 gehörenden Verarbeitung eine Ausnahme ausgelöst wurde, schließlich zu einem Block 259 „Beende Starten der Anwendung” über, in dem der Prozess 240 endet.
  • Die in diesem Zusammenhang verwendete Terminologie dient lediglich dem Zweck des Beschreibens bestimmter Ausführungsformen und soll die Erfindung nicht einschränken. Die hier verwendeten Singularformen „ein/e” und „der/die/das” sollen ebenfalls die Pluralformen einschließen, falls im Kontext nicht ausdrücklich anders angegeben. Es ist ferner klar, dass die Ausdrücke „aufweist” und/oder „aufweisend” bei Verwendung in dieser Patentschrift das Vorhandensein von genannten Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen und/oder Komponenten angeben, jedoch nicht das Vorhandensein oder Hinzufügen eines oder mehrerer weiterer Merkmale, Ganzzahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen hiervon ausschließen.
  • Die entsprechenden Strukturen, Materialien, Handlungen und Entsprechungen aller Mittel oder Schritt-plus-Funktion-Elemente in den nachfolgenden Ansprüchen sollen jede Struktur, jedes Material oder jede Handlung zum Ausführen der Funktion in Kombination mit anderen beanspruchten Elementen, wie speziell beansprucht, enthalten. Die Beschreibung der vorliegenden Erfindung wird für Zwecke der Erläuterung und Beschreibung präsentiert und soll nicht vollständig sein oder die Erfindung auf die offenbarte Form einschränken. Viele Modifikationen und Variationen werden für Fachleute ersichtlich sein, ohne vom Schutzumfang und Gedanken der Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um die Grundgedanken der Erfindung und die praktische Anwendung bestmöglich zu erklären und andere Fachleute zu befähigen, die Erfindung zu verstehen und auf verschiedene Ausführungsformen mit diversen Modifikationen, die für die speziell vorgesehene Verwendung geeignet sind, anzuwenden.
  • Der Ablaufplan und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb von möglichen Umsetzungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in dem Ablaufplan oder den Blockschaubildern ein Modul, ein Segment oder einen Abschnitt von Code darstellen, der einen oder mehrere ausführbare Befehle zum Umsetzen der spezifizierten logischen Funktion(en) aufweist. Es sollte außerdem angemerkt werden, dass bei einigen alternativen Umsetzungen die in dem Block angegebenen Funktionen nicht in der in den Figuren angegebenen Reihenfolge auftreten können. Zum Beispiel können zwei Blöcke, die nacheinander gezeigt sind, tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können gelegentlich in Abhängigkeit von der beteiligten Funktionalität in der umgekehrten Reihenfolge ausgeführt werden. Es wird außerdem angemerkt, dass jeder Block der Blockschaubilder und/oder der Ablaufplandarstellung und Kombinationen von Blöcken in den Blockschaubildern und/oder der Ablaufplandarstellung durch auf spezielle Hardware gestützte Systeme, die die spezifizierten Funktionen oder Handlungen ausführen, oder Kombinationen aus spezieller Hardware und Computerbefehlen umgesetzt werden können.

Claims (10)

  1. Verfahren, das aufweist: Verschlüsseln einer Ressource, die zu einer Anwendung gehört, mit einem ersten Schlüssel; zu einem Installationszeitpunkt der Anwendung Erzeugen eines ersten Hash-Codes für einen ausführbaren Daemon, der zu der Anwendung gehört; Verschlüsseln des ersten Schlüssels mit dem ersten Hash-Code, um einen geschützten ersten Schlüssel zu erzeugen; zu einem Ladezeitpunkt einer Anwendung Erzeugen eines zweiten Hash-Codes für den ausführbaren Daemon; Ableiten des ersten Schlüssels durch Entschlüsseln des geschützten ersten Schlüssels unter Verwendung des zweiten Hash-Codes, um einen abgeleiteten ersten Schlüssel zu erzeugen; und Zugreifen auf die Ressource durch den ausführbaren Daemon durch Verwenden des abgeleiteten ersten Schlüssels.
  2. Verfahren nach Anspruch 1, das ferner das Speichern des geschützten ersten Schlüssels in einer Datei von Systemen verschlüsselter Dateien (EFS) aufweist.
  3. Verfahren nach Anspruch 1, das ferner aufweist: Vergleichen des ersten Hash-Codes mit dem zweiten Hash-Code; und Verhindern eines Ladens der Anwendung als Reaktion auf eine fehlende Übereinstimmung zwischen dem ersten Hash-Code und dem zweiten Hash-Code.
  4. Verfahren nach Anspruch 1, wobei es sich bei der Anwendung um einen Datenbank-Server und bei der Ressource um eine passwortgeschützte Datenbank handelt.
  5. Verfahren nach Anspruch 1, wobei es sich bei der Ressource um eine passwortgeschützte Netzwerk-Datenübertragungseinheit handelt.
  6. Verfahren nach Anspruch 1, wobei es sich bei der Ressource um einen LDAP-Server (Lightweight Directory Access Protocol) handelt.
  7. Verfahren nach Anspruch 1, das ferner aufweist: Erfassen, dass eine Abschaltung der Anwendung aufgetreten ist; und Auslösen des Erzeugens des zweiten Hash-Codes, des Ableitens des ersten Schlüssels und des Zugreifens auf die Ressource als Reaktion auf das Erfassen.
  8. Vorrichtung, die aufweist: einen Prozessor; eine computerlesbare Speichereinheit; und Logik, die in dem computerlesbaren Medium gespeichert ist und in dem Prozessor ausgeführt wird, zum: Verschlüsseln einer Ressource, die zu einer Anwendung gehört, mit einem ersten Schlüssel; zu einem Installationszeitpunkt der Anwendung Erzeugen eines ersten Hash-Codes für einen ausführbaren Daemon, der zu der Anwendung gehört; Verschlüsseln des ersten Schlüssels mit dem ersten Hash-Code, um einen geschützten ersten Schlüssel zu erzeugen; zu einem Ladezeitpunkt einer Anwendung Erzeugen eines zweiten Hash-Codes für den ausführbaren Daemon; Ableiten des ersten Schlüssels durch Entschlüsseln des geschützten ersten Schlüssels unter Verwendung des zweiten Hash-Codes, um einen abgeleiteten ersten Schlüssel zu erzeugen; und Zugreifen auf die Ressource durch den ausführbaren Daemon durch Verwenden des abgeleiteten ersten Schlüssels.
  9. Computerprogrammprodukt, das aufweist: eine computerlesbare Speichereinheit; und Logik, die zum Ausführen in einem Prozessor in dem computerlesbaren Medium gespeichert ist, zum: Verschlüsseln einer Ressource, die zu einer Anwendung gehört, mit einem ersten Schlüssel; zu einem Installationszeitpunkt der Anwendung Erzeugen eines ersten Hash-Codes für einen ausführbaren Daemon, der zu der Anwendung gehört; Verschlüsseln des ersten Schlüssels mit dem ersten Hash-Code, um einen geschützten ersten Schlüssel zu erzeugen; zu einem Ladezeitpunkt einer Anwendung Erzeugen eines zweiten Hash-Codes für den ausführbaren Daemon; Ableiten des ersten Schlüssels durch Entschlüsseln des geschützten ersten Schlüssels unter Verwendung des zweiten Hash-Codes, um einen abgeleiteten ersten Schlüssel zu erzeugen; und Zugreifen auf die Ressource durch den ausführbaren Daemon durch Verwenden des abgeleiteten ersten Schlüssels.
  10. Automatisierte Anwendungsstarteinheit, die aufweist: einen Prozessor; eine computerlesbare Speichereinheit, die mit dem Prozessor verbunden ist; und Logik, die in dem computerlesbaren Medium gespeichert ist und in dem Prozessor ausgeführt wird, zum: Verschlüsseln einer Ressource, die zu einer Anwendung gehört, mit einem ersten Schlüssel; zu einem Installationszeitpunkt der Anwendung Erzeugen eines ersten Hash-Codes für einen ausführbaren Daemon, der zu der Anwendung gehört; Verschlüsseln des ersten Schlüssels mit dem ersten Hash-Code, um einen geschützten ersten Schlüssel zu erzeugen; zum Ladezeitpunkt einer Anwendung Erzeugen eines zweiten Hash-Codes für den ausführbaren Daemon; Ableiten des ersten Schlüssels durch Entschlüsseln des geschützten ersten Schlüssels unter Verwendung des zweiten Hash-Codes, um einen abgeleiteten ersten Schlüssel zu erzeugen; und Zugreifen auf die Ressource durch den ausführbaren Daemon durch Verwenden des abgeleiteten ersten Schlüssels.
DE102013210837.0A 2012-06-30 2013-06-11 Startanwendung kryptographischer Schlüsselspeicher Active DE102013210837B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201213539325A 2012-06-30 2012-06-30
US13/539,325 2012-06-30
US13/869,179 US8856519B2 (en) 2012-06-30 2013-04-24 Start method for application cryptographic keystores
US13/869,179 2013-04-24

Publications (2)

Publication Number Publication Date
DE102013210837A1 true DE102013210837A1 (de) 2014-01-02
DE102013210837B4 DE102013210837B4 (de) 2022-02-24

Family

ID=49754304

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013210837.0A Active DE102013210837B4 (de) 2012-06-30 2013-06-11 Startanwendung kryptographischer Schlüsselspeicher

Country Status (2)

Country Link
US (1) US8856519B2 (de)
DE (1) DE102013210837B4 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10050780B2 (en) 2015-05-01 2018-08-14 Microsoft Technology Licensing, Llc Securely storing data in a data storage system
CN106156607B (zh) * 2016-07-11 2020-01-17 青岛海信智能商用系统股份有限公司 一种SElinux安全访问方法和POS终端
FR3068498B1 (fr) * 2017-06-29 2019-07-19 Sagemcom Energy & Telecom Sas Procedes de partage et d'utilisation d'un secret

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757915A (en) 1995-08-25 1998-05-26 Intel Corporation Parameterized hash functions for access control
US7457411B2 (en) 2003-03-13 2008-11-25 New Mexico Technical Research Foundation Information security via dynamic encryption with hash function
GB2404065B (en) 2003-07-16 2005-06-29 Temporal S Secured identification
DE60317498T2 (de) 2003-07-23 2008-11-06 Eisst Ltd. Verfahren und System zur Schlüsseldistribution mit einem Authentifizierungschritt und einem Schlüsseldistributionsschritt unter Verwendung von KEK (key encryption key)
US20070180509A1 (en) 2005-12-07 2007-08-02 Swartz Alon R Practical platform for high risk applications
US20090249492A1 (en) 2006-09-21 2009-10-01 Hans Martin Boesgaard Sorensen Fabrication of computer executable program files from source code
US20100027785A1 (en) 2006-11-03 2010-02-04 Lasercard Corporation Device and method for security handshaking using mixed media
US9275512B2 (en) 2006-11-10 2016-03-01 Bally Gaming, Inc. Secure communications in gaming system
US20080181399A1 (en) 2007-01-29 2008-07-31 Sun Microsystems, Inc. Composite cryptographic accelerator and hardware security module
US8418174B2 (en) * 2008-02-14 2013-04-09 International Business Machines Corporation Enhancing the scalability of network caching capability in virtualized environment
US8391495B2 (en) 2008-05-08 2013-03-05 International Business Machines Corporation Secure shell used to open a user's encrypted file system keystore
US8074049B2 (en) * 2008-08-26 2011-12-06 Nine Technology, Llc Online backup system with global two staged deduplication without using an indexing database
AU2010217154A1 (en) * 2009-02-27 2011-09-15 Certicom Corp. System and method for securely communicating with electronic meters

Also Published As

Publication number Publication date
DE102013210837B4 (de) 2022-02-24
US8856519B2 (en) 2014-10-07
US20140006801A1 (en) 2014-01-02

Similar Documents

Publication Publication Date Title
DE112015004555B4 (de) Verarbeiten eines Gast-Ereignisses in einem von einem Hypervisor gesteuerten System
DE112010004930B4 (de) Sicherer kerberisierter Zugriff auf ein verschlüsseltes Dateisystem
DE102008006759B4 (de) Prozessor-Anordnung und Verfahren zum Betreiben der Prozessor-Anordnung ohne Verringerung der Gesamtsicherheit
US20170163419A1 (en) Encrypted File Storage
DE112018003077T5 (de) Ein cluster von sicheren ausführungsplattformen
DE102011077218B4 (de) Zugriff auf in einer Cloud gespeicherte Daten
DE202016107487U1 (de) Authentifizierung eines lokalen Gerätes
DE112014000584T5 (de) Erreichen von Speichereffizienz bei durchgängiger Verschlüsselung unter Verwendung von nachgelagerten (Downstream-)Decryptern
CH709936A2 (de) System und Verfahren für das kryptographische Suite-Management.
DE112016000576T5 (de) Sicheres Booten eines Computers von einer für den Benutzer vertrauenswürdigen Einheit aus
DE112011103580B4 (de) Verfahren, sichere Einheit, System und Computerprogrammprodukt für das sichere Verwalten des Benutzerzugriffs auf ein Dateisystem
CN103763313A (zh) 一种文档保护方法和系统
DE102012210887A1 (de) Verfahren zum Einrichten einer sicher verwalteten Ausführungsumgebung für eine virtuelle Maschine, Programm und Computervorrichtung
DE202014011089U1 (de) System zum Kopieren von Dateien zwischen verschlüsselten und unverschlüsselten Datenspeichereinrichtungen
EP3876127A1 (de) Gerätefernwartung auf basis verteilter datenspeicherung
DE112018002954T5 (de) Bereitstellen eines konfigurationsabhängigen arbeitsablaufs
DE112019006676T5 (de) Blockchaintechnologie zur Regelung der Datenintegrität und zum Existenzbeweis bei Datenschutzsystemen
DE102021105949A1 (de) Freischaltung des zugriffs auf informationen in abhängigkeit von der validierung von programmcodes virtueller entitäten
DE102009054128A1 (de) Verfahren und Vorrichtung zum Zugriff auf Dateien eines sicheren Fileservers
DE102013210837B4 (de) Startanwendung kryptographischer Schlüsselspeicher
DE112019003808B4 (de) Zweckspezifische Zugriffssteuerung auf Grundlage einer Datenverschlüsselung
EP3105899B1 (de) Verfahren zum hochfahren eines produktions-computersystems
CN114372040A (zh) 动态数据源管理方法及系统、客户端、设备和存储介质
DE102021129179A1 (de) Sichere intelligente container zum steuern des zugriffs auf daten
DE102021108961A1 (de) Verschlüsselungsschlüssel von speichersystemen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final