DE112020000180T5 - Mehrvorrichtungsentsperrung einer datenspeichervorrichtung - Google Patents
Mehrvorrichtungsentsperrung einer datenspeichervorrichtung Download PDFInfo
- Publication number
- DE112020000180T5 DE112020000180T5 DE112020000180.6T DE112020000180T DE112020000180T5 DE 112020000180 T5 DE112020000180 T5 DE 112020000180T5 DE 112020000180 T DE112020000180 T DE 112020000180T DE 112020000180 T5 DE112020000180 T5 DE 112020000180T5
- Authority
- DE
- Germany
- Prior art keywords
- data
- key
- authorized
- storage device
- data storage
- 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.)
- Pending
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 83
- 238000013475 authorization Methods 0.000 claims abstract description 80
- 238000012546 transfer Methods 0.000 claims abstract description 4
- 230000004044 response Effects 0.000 claims description 38
- 238000004806 packaging method and process Methods 0.000 claims description 36
- 238000000034 method Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 10
- 238000009795 derivation Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 16
- 238000004891 communication Methods 0.000 description 12
- 238000011084 recovery Methods 0.000 description 8
- 241000465502 Tobacco latent virus Species 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 150000003839 salts Chemical class 0.000 description 4
- 238000010200 validation analysis Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 238000012856 packing Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 239000011022 opal Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004313 glare Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2103—Challenge-response
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
Description
- TECHNISCHES GEBIET
- Diese Offenbarung betrifft eine Datenspeichervorrichtung, die gesperrt und entsperrt werden kann.
- HINTERGRUND
- Die Verschlüsselung von Daten ermöglicht eine relativ sichere Speicherung in Datenspeichervorrichtungen, wie Blockdatenspeichervorrichtungen, die über ein Universal Serial Bus-Kabel, USB-Kabel, verbunden werden können. Die Benutzererfahrung ist jedoch oft enttäuschend, da die Einrichtung von Passwörtern, Schlüsseln und dergleichen für technisch nicht versierte Benutzer umständlich und kompliziert ist. Bei Verwendung einer Verschlüsselung werden die Schlüssel und Passwörter zu oft unsicher gespeichert. Infolgedessen lassen viele Benutzer bestehende Verschlüsselungstechnologien effektiv ungenutzt, was zu exponierten vertraulichen Daten führt.
- KURZDARSTELLUNG
- Diese Offenbarung betrifft eine Datenspeichervorrichtung, wie beispielsweise, aber nicht beschränkt auf, eine Blockdatenspeichervorrichtung, die über ein USB-Kabel mit einem Host-Computersystem verbunden werden kann, sodass sich die Datenspeichervorrichtung als Massendatenspeichervorrichtung bei dem Betriebssystem des Host-Computersystems registriert. Die Datenspeichervorrichtung ist gesperrt, sodass das Host-Computersystem nicht auf Daten zugreifen kann, die in der Datenspeichervorrichtung gespeichert sind. Ein Benutzer kann jedoch die Datenspeichervorrichtung entsperren, indem er eine autorisierte Vorrichtung verwendet, die zum Entsperren der Datenspeichervorrichtung eingerichtet ist.
- Hierin offenbart ist eine Datenspeichervorrichtung, die einen Datenpfad und eine Zugriffssteuerung aufweist. Der Datenpfad weist einen Datenport, der eingerichtet ist, um Daten zwischen einem Host-Computersystem und der Datenspeichervorrichtung zu übertragen, wobei die Datenspeichervorrichtung eingerichtet ist, um sich bei dem Host-Computersystem als eine Blockdatenspeichervorrichtung zu registrieren; ein nichtflüchtiges Speichermedium, das dazu konfiguriert ist, verschlüsselte Benutzerinhaltsdaten zu speichern; eine Kryptographiemaschine, die zwischen den Datenanschluss und das Speichermedium geschaltet ist und dazu konfiguriert ist, einen kryptographischen Schlüssel zu verwenden, um die verschlüsselten Benutzerinhaltsdaten, die in dem Speichermedium gespeichert sind, als Antwort auf eine Anforderung von dem Host-Computersystem zu entschlüsseln; und einen Datenspeicher auf, der eingerichtet ist, um mehrere Einträge zu speichern, die Autorisierungsdaten aufweisen, die jeweiligen mehreren autorisierten Vorrichtungen zugeordnet sind. Die Zugriffssteuerung ist eingerichtet zum Empfangen, von einer Managervorrichtung, eines öffentlichen Schlüssels, wobei der öffentliche Schlüssel einem privaten Schlüssel zugeordnet ist, der in einer zu autorisierenden Vorrichtung gespeichert ist; Erstellen der Autorisierungsdaten; und Speichern der Autorisierungsdaten unter Zuordnung zu dem öffentlichen Schlüssel in dem Datenspeicher, wodurch die zu autorisierende Vorrichtung als eine der mehreren autorisierten Vorrichtungen registriert wird.
- In einigen Ausführungsformen ist die Zugriffssteuerung weiterhin eingerichtet zum Empfangen einer Angabe des öffentlichen Schlüssels von der einen der mehreren autorisierten Vorrichtungen; Generieren einer Abfrage basierend auf den Autorisierungsdaten; Senden der Abfrage an die eine der mehreren autorisierten Vorrichtungen; Empfangen einer Antwort auf die Abfrage von der einen der mehreren autorisierten Vorrichtungen; und bei Validierung der Antwort Aktualisieren der auf dem Datenspeicher gespeicherten Autorisierungsdaten, wodurch es der einen der mehreren autorisierten Vorrichtungen erlaubt wird, die verschlüsselten Benutzerinhaltsdaten zu entschlüsseln.
- In einigen Ausführungsformen weist das Speichern der Autorisierungsdaten das Generieren eines Index der Autorisierungsdaten basierend auf dem öffentlichen Schlüssel auf.
- In einigen Ausführungsformen basiert der Index der Autorisierungsdaten auf einem privaten Schlüssel, der in dem Datenspeicher gespeichert ist.
- In einigen Ausführungsformen ist der private Schlüssel, der in dem Datenspeicher gespeichert ist, für jede der mehreren autorisierten Vorrichtungen identisch.
- In einigen Ausführungsformen geben die Autorisierungsdaten für jede der mehreren autorisierten Vorrichtungen einen öffentlichen Transportschlüssel zum Transportieren von Daten zwischen der Zugriffssteuerung und dieser autorisierten Vorrichtung und einen öffentlichen Entsperrschlüssel zum Generieren der Abfrage für diese autorisierte Vorrichtung an.
- In einigen Ausführungsformen geben die Autorisierungsdaten einen ersten öffentlichen Schlüssel und einen zweiten öffentlichen Schlüssel an; und die Zugriffssteuerung ist dazu eingerichtet, die Autorisierungsdaten basierend darauf, dass der erste öffentliche Schlüssel mit dem zweiten öffentlichen Schlüssel identisch ist, selektiv zu aktualisieren.
- In einigen Ausführungsformen weisen die mehreren autorisierten Vorrichtungen eines oder mehrere von einer Benutzervorrichtung mit einer Benutzerschnittstelle, einem Beacon ohne Benutzerschnittstelle und einem Schlüsselanhänger ohne Benutzerschnittstelle auf.
- In einigen Ausführungsformen wird der öffentliche Schlüssel von der zu autorisierenden Vorrichtung an die Managervorrichtung übermittelt.
- In einigen Ausführungsformen erfolgt die Übermittlung des öffentlichen Schlüssels von der zu autorisierenden Vorrichtung an die Managervorrichtung über einen unsicheren Kanal.
- In einigen Ausführungsformen geben die Autorisierungsdaten für jede der mehreren autorisierten Vorrichtungen den kryptografischen Schlüssel an; und der kryptographische Schlüssel für jede der mehreren autorisierten Vorrichtungen ist identisch.
- In einigen Ausführungsformen wird der kryptografische Schlüssel unter Verwendung eines Entsperrgeheimnisses, das für jede der mehreren autorisierten Vorrichtungen spezifisch ist, verschlüsselt.
- In einigen Ausführungsformen ist die Zugriffssteuerung dazu konfiguriert, das Entsperrgeheimnis basierend auf einer Antwort von einer der mehreren autorisierten Vorrichtungen auf eine Abfrage zu berechnen, die basierend auf dem öffentlichen Schlüssel generiert wird, der der einen der mehreren autorisierten Vorrichtungen zugeordnet ist.
- In einigen Ausführungsformen weisen die Autorisierungsdaten Metadaten der autorisierten Vorrichtung auf, die durch einen vorautorisierten Metadaten-Verpackungsschlüssel verschlüsselt sind, der aus dem öffentlichen Schlüssel abgeleitet werden kann.
- In einigen Ausführungsformen kann der vorautorisierte Metadaten-Verpackungsschlüssel aus dem öffentlichen Schlüssel über eine Schlüsselableitungsfunktion unter Verwendung eines privaten Schlüssels abgeleitet werden, der in dem Datenspeicher gespeichert ist.
- In einigen Ausführungsformen umfassen die Autorisierungsdaten einen Metadaten-Verpackungsschlüssel, um Metadaten der autorisierten Vorrichtung zu verschlüsseln.
- In einigen Ausführungsformen ist der Metadaten-Verpackungsschlüssel ein symmetrischer Schlüssel.
- Weiterhin wird hierin ein Verfahren zum Autorisieren einer Benutzervorrichtung in Bezug auf eine Datenspeichervorrichtung offenbart. Das Verfahren umfasst das Empfangen eines öffentlichen Schlüssels von einer Managervorrichtung, wobei der öffentliche Schlüssel einem privaten Schlüssel zugeordnet ist, der in einer zu autorisierenden Vorrichtung gespeichert ist; das Erstellen von Autorisierungsdaten; und das Speichern der Autorisierungsdaten, die dem öffentlichen Schlüssel zugeordnet sind, in einem Datenspeicher, der in die Datenspeichervorrichtung integriert ist, wodurch die zu autorisierende Vorrichtung als eine von mehreren autorisierten Vorrichtungen registriert wird.
- In einigen Ausführungsformen umfasst das Verfahren ferner das Empfangen einer Angabe des öffentlichen Schlüssels von der einen der mehreren autorisierten Vorrichtungen; das Generieren einer Abfrage basierend auf den Autorisierungsdaten; das Senden der Abfrage an die eine der mehreren autorisierten Vorrichtungen; das Empfangen einer Antwort auf die Abfrage von der einen der mehreren autorisierten Vorrichtungen; und bei Validierung der Antwort das Aktualisieren der auf dem Datenspeicher gespeicherten Autorisierungsdaten, wodurch es der einen der mehreren autorisierten Vorrichtungen erlaubt wird, verschlüsselte Benutzerinhaltsdaten zu entschlüsseln, die auf der Datenspeichervorrichtung gespeichert sind.
- Weiterhin wird hierin eine Datenspeichervorrichtung offenbart, die Mittel zum Empfangen eines öffentlichen Schlüssels von einer Managervorrichtung, wobei der öffentliche Schlüssel einem privaten Schlüssel zugeordnet ist, der in einer zu autorisierenden Vorrichtung gespeichert ist; Mittel zum Erstellen von Autorisierungsdaten; und Mittel zum Speichern der Autorisierungsdaten unter Zuordnung zu dem öffentlichen Schlüssel in einem Datenspeicher aufweist, der mit der Datenspeichervorrichtung integriert ist, wodurch die zu autorisierende Vorrichtung als eine von mehreren autorisierten Vorrichtungen registriert wird.
- Figurenliste
- Ein nicht einschränkendes Beispiel wird nun unter Bezugnahme auf die folgenden Zeichnungen beschrieben:
-
1 veranschaulicht eine Datenspeichervorrichtung gemäß einer Ausführungsform. -
2 veranschaulicht einen Abschnitt des Konfigurationsspeichers der Datenspeichervorrichtung von1 gemäß einer Ausführungsform. -
3 veranschaulicht einen Steuerungsablauf zwischen der autorisierten Vorrichtung und der Zugriffssteuerung von1 gemäß einer Ausführungsform. -
4 veranschaulicht ein Zertifikat, das von der Datenspeichervorrichtung ausgegeben und von der autorisierten Vorrichtung an die Datenspeichervorrichtung gesendet wird, um die Datenspeichervorrichtung zu entsperren, gemäß einer Ausführungsform. -
5 veranschaulicht ein Verfahren zum Autorisieren einer Benutzervorrichtung in Bezug auf eine Datenspeichervorrichtung gemäß einer Ausführungsform. - BESCHREIBUNG VON AUSFÜHRUNGSFORMEN
-
1 veranschaulicht eine Datenspeichervorrichtung (DSD)100 , die einen Datenpfad101 und eine Zugriffssteuerung102 gemäß einer Ausführungsform aufweist. Der Datenpfad101 weist einen drahtgebundenen Datenanschluss103 auf, der in1 durch eine USB-Brücke bereitgestellt wird, zur Übertragung von Daten zwischen einem Host-Computersystem104 und der DSD100 . In anderen Ausführungsformen weist der Datenpfad101 einen drahtlosen Datenanschluss (nicht gezeigt) zur drahtlosen Übertragung von Daten zwischen dem Host-Computersystem104 und der DSD100 auf. Die DSD100 registriert sich bei dem Host-Computersystem104 als Massendatenspeicher, der für das Betriebssystem die Funktionalität des Host-Computersystems104 eines Blockdatenspeichers bereitstellt. Die DSD100 weist weiterhin ein nicht-transitorisches Speichermedium105 zum Speichern verschlüsselter Benutzerinhaltsdaten auf, wobei angemerkt wird, dass die Benutzerinhaltsdaten die Daten sind, die ein Benutzer in der Regel in einer DSD speichern möchte, wie Dateien, einschließlich Bilddateien, Dokumenten, Videodateien usw. Das Speichermedium kann ein Solid-State-Laufwerk (SSD), ein Festplattenlaufwerk (HDD) mit einer rotierenden Magnetplatte oder ein anderes nichtflüchtiges Speichermedium sein. Weiterhin kann das Speichermedium eine Blockdatenspeichervorrichtung sein, was bedeutet, dass die Benutzerinhaltsdaten blockweise auf das Speichermedium105 geschrieben und blockweise aus dem Speichermedium105 gelesen werden. - Befehlssatz
- In einem Beispiel weist das Speichermedium
105 eine Kryptographiemaschine106 in Form einer dedizierten und/oder programmierbaren integrierten Schaltung auf, die in dem Speichermedium105 zu speichernde Daten verschlüsselt und aus dem Speichermedium105 auszulesende Daten entschlüsselt. In solchen Beispielen kann das Speichermedium einen Small Computer System Interface-Befehlssatz (SCSI-Befehlssatz) oder Advanced Technology Attachment-Befehlssatz (ATA-Befehlssatz) gemäß der Opal-Spezifikation durch die Trusted Computing Group (TCG) bereitstellen. - Programmcode, der in der Kryptographiemaschine
106 gespeichert ist, ermöglicht es der Kryptographiemaschine106 , vom Host-Computersystem104 empfangene Befehle zu empfangen, zu interpretieren und auszuführen. Zum Beispiel kann die Kryptographiemaschine106 dazu konfiguriert sein, den Standard-ATA-Befehlssatz oder seriellen ATA-Befehlssatz (SATA-Befehlssatz) und/oder ATA-Paketschnittstellen-Befehlssatz (ATAPI-Befehlssatz) zu implementieren, der vom Technischen AusschussT13 erhältlich ist, wobei darauf hingewiesen wird, dass identische Funktionalitäten innerhalb von TCG Opal, SCSI und anderen proprietären Architekturen implementiert werden können. Der Befehlssatz weist einen Sektorlese-Befehl, READ SECTORS-Befehl, mit einem Befehlseingang des Sektorzählers und des Startsektors auf (es ist anzumerken, dass „Sektor“ hier synonym mit „Block“ verwendet wird). Dementsprechend liegt ein entsprechender Schreibbefehl vor. Es sei angemerkt, dass ein Datenspeichervorrichtungstreiber in dem Host-Computersystem104 installiert ist. Der Datenspeichervorrichtungstreiber (nicht gezeigt) verwendet den Befehlssatz, um dem Betriebssystem hochentwickelte Dienste bereitzustellen, wie Dateilesefunktionalitäten. In manchen Beispielen ist der Datenspeichervorrichtungstreiber ein generischer Treiber, der als Teil des Betriebssystems ohne Unterstützung für vorrichtungsspezifische Verschlüsselungsbefehle geliefert wird, da die Verschlüsselungsfunktionalität vor dem Host-Computersystem104 verborgen ist und intern innerhalb des DSD100 gehandhabt wird, wie nachstehend beschrieben. Dies bedeutet, dass keine zusätzlichen Treiber installiert werden müssen, um die hierin offenbarte volle Funktionalität zu nutzen. - Der Befehlssatz, der von der Kryptographiemaschine
106 an den Datenanschluss103 bereitgestellt wird (aber nicht an das Host-Computersystem104 weitergeleitet wird), kann einen Befehlssatz aus dem ATA-SECURITY-Merkmalssatz einschließen. Insbesondere kann der Befehlssatz das SECURITY SET PASSWORD oder einen entsprechenden Befehl von TCG Opal einschließen, um ein Passwort zum Lesen und Schreiben von Benutzerinhaltsdaten auf das Speichermedium105 einzustellen. - In diesem Sinne ist die Kryptographiemaschine
106 zwischen den Datenanschluss103 und das Speichermedium105 geschaltet und dazu konfiguriert, mittels eines kryptographischen Schlüssels in dem Speichermedium105 zu speichernde Benutzerinhaltsdaten zu verschlüsseln und die in dem Speichermedium105 gespeicherten verschlüsselten Benutzerinhaltsdaten als Antwort auf eine Anforderung des Host-Computersystems104 zu entschlüsseln. In einigen Beispielen wird der ATA SECURITY-Merkmalssatz nur vom Datenanschluss103 und nicht vom Host104 verwendet. Das heißt, die Zugriffssteuerung102 stellt den notwendigen Eingang für den Datenanschluss103 bereit, um die ATA SECURITY-Befehle an die Kryptographiemaschine106 auszugeben. Beispielsweise kann die Zugriffssteuerung102 dem Datenanschluss103 einen Schlüssel bereitstellen, den der Datenanschluss103 dann über den SECURITY SET PASSWORD-Befehl an die Kryptographiemaschine106 weiterleitet. Die Schnittstelle zwischen der Zugriffssteuerung102 und dem Datenanschluss103 kann ein Inter-Integrated Circuit, l2C, -Bus sein, was insbesondere in den Fällen nützlich ist, in denen dieser Bus bereits in vorhandenen Chips implementiert ist. Es ist jedoch möglich, viele andere Kommunikationsarchitekturen zu verwenden, einschließlich Bus-, Punkt-zu-Punkt-, serielle, parallele, speicherbasierte und andere Architekturen. - Es ist zu beachten, dass die Trennung von Funktionalitäten in dedizierten Chips, wie in
1 gezeigt, nur eine mögliche beispielhafte Implementierung ist. Es ist daher möglich, Funktionalitäten zusammenzufassen oder die Funktionalitäten weiter aufzuteilen. Beispielsweise kann der Datenanschluss103 in einen einzigen Chip mit einem einzigen Kern in die Zugriffssteuerung102 integriert sein. In anderen Fällen können der Datenanschluss103 und die Zugriffssteuerung102 in einen einzigen dedizierten Chip mit einem einzigen Kern in die Kryptographiemaschine106 integriert sein. Selbstverständlich können alle Chips mehrere Kerne aufweisen. - In einem Beispiel werden die folgenden Komponenten verwendet:
- Datenanschluss
103 : Schnittstelle USB 3.1 Gen 2 mit 10 Gigabit pro Sekunde (Gb/s) - Zugriffssteuerung
102 : nRF52840 System-on-Chip (SoC) von Nordic Semiconductor - Es sei angemerkt, dass für die hierin offenbarte Funktionalität die Zugriffssteuerung
102 die maßgebliche Rolle spielt und nachstehend ausführlicher beschrieben wird, wobei nochmals angemerkt wird, dass die Aufgaben in anderen Beispielen in separate Chips getrennt werden können. Wenn darauf hingewiesen wird, dass eine Konfiguration' der Zugriffssteuerung102 oder die Zugriffssteuerung102 dazu ,eingerichtet' ist, einen bestimmten Schritt durchzuführen, ist dies so zu verstehen, dass es sich auf einen Programmcode bezieht, der in einem nichtflüchtigen Speicher in der DSD100 im Programmspeicher (aus Gründen der Übersichtlichkeit nicht dargestellt) gespeichert ist und von der Zugriffssteuerung102 ausgeführt wird. - In anderen Beispielen können einige oder alle hierin offenbarten Schritte durch eine Hardwareschaltung ohne Programmcode durchgeführt werden. Insbesondere können Verschlüsselungs-Stammfunktionen aus Leistungs- und Sicherheitsgründen durch eine dedizierte Hardwareschaltung implementiert werden. Zum Beispiel können Befehle, die besonders rechenaufwendig sind, wie Multiplikation oder Exponentierung mit elliptischen Kurven, durch eine spezifisch für diese Berechnung konzipierte Recheneinheit (ALU) implementiert werden, sodass die Berechnung in einem einzigen oder einer geringeren Anzahl von Prozessorzyklen durchgeführt werden kann, verglichen mit der Verwendung eines sequentiellen Programms in einem Universal-Mikrocontroller. Es sei weiterhin angemerkt, dass es sich bei den in der DSD
100 enthaltenen Chips um Mikrocontroller handelt, was in diesem Zusammenhang bedeutet, dass sie nicht unter einem Betriebssystem laufen, das eine Hardware-Abstraktionsschicht bereitstellt, sondern dass der Programmcode direkt auf die Hardware-Schaltung einwirkt. Obwohl hierin die Kryptografie mit elliptischen Kurven aus Gründen der Recheneffizienz und Sicherheit als Beispiel verwendet wird, sei angemerkt, dass andere Kryptosysteme mit öffentlichem Schlüssel, wie das Rivest-Shamir-Adelman-Kryptosystem (RSA-Kryptosystem) ebenso verwendet werden könnten. - Zurück zu
1 , gibt es zusätzlich zu dem Host-Computersystem104 eine Anzahl von Vorrichtungen, die sich außerhalb der DSD100 befinden und die im Prozess des Entsperrens der DSD100 und des Bereitstellens eines Schlüssels für die Kryptographiemaschine106 wirken, sodass dem Host-Computersystem104 letztlich entschlüsselte Daten im Klartext bereitgestellt werden können. - Insbesondere gibt es eine erste Managervorrichtung
110 , die in den meisten Beispielen ein Mobiltelefon ist. Auf der Managervorrichtung110 ist eine Anwendung (,App') installiert, um die folgenden Schritte durchzuführen. Auf diese Weise können die folgenden Schritte softwaremäßig vom Hersteller der DSD100 implementiert und über einen allgemein zugänglichen App Store, wie den App Store von Apple, oder Google Play, an die Managervorrichtung110 verteilt werden. Die auf der Managervorrichtung110 installierte App führt Schritte zur Inbesitznahme der DSD100 durch, wobei an dieser Stelle alle Daten auf der DSD100 gelöscht oder anderweitig unzugänglich gemacht werden. Zum Beispiel können Daten durch sicheres Löschen aller in der DSD100 gespeicherten kryptografischen Schlüssel kryptografisch gelöscht werden. - Der Einfachheit halber beschreibt diese Offenbarung, dass Schritte einfach von der Managervorrichtung
110 ausgeführt werden, wenn sie von der App implementiert werden. Die Managervorrichtung110 richtet die DSD100 ein, was bedeutet, dass die vielfältigen verschiedenen Schlüssel generiert werden, um den hierin offenbarten Prozess zu unterstützen. Die Managervorrichtung110 registriert eine Benutzervorrichtung111 bei der DSD, sodass die Benutzervorrichtung111 dann als „autorisierte Vorrichtung“111 bezeichnet wird. In den meisten Beispielen ist die autorisierte Vorrichtung111 auch ein Mobiltelefon mit einer installierten App, die die Schritte implementiert, die als von der autorisierten Vorrichtung111 ausgeführt beschrieben werden. Als autorisierte Vorrichtungen können jedoch auch andere Arten von Vorrichtungen verwendet werden, die nachfolgend anhand von Beacons und Schlüsselanhänger erläutert werden. - Inbesitznahme
- Der erste Schritt bei der Verwendung der DSD
100 nach dem Kauf, Entpacken und Hochfahren besteht darin, die App auf der Managervorrichtung110 zu installieren und eine Vorrichtung als die Managervorrichtung110 zu registrieren. Hierzu erhält die Managervorrichtung110 eine eindeutige Kennung der DSD von der DSD. Diese eindeutige Kennung wird als Identitätsschlüssel (IDK) bezeichnet. In dem in1 veranschaulichten Beispiel ist der Identitätsschlüssel in einem Quick Response-Code (QR-Code)112 codiert, der an einer Außenfläche der DSD100 angebracht ist. Die auf der Managervorrichtung110 installierte App hat Zugriff auf eine Kamera und verfügt über ein Softwaremodul, das die codierten Informationen aus einem Bild des QR-Codes112 extrahiert. Die Managervorrichtung110 erfasst ein Bild des QR-Codes112 unter Verwendung der Kamera und decodiert den Identitätsschlüssel der DSD100 aus dem QR-Code. In einem Beispiel codiert der QR-Code einen einheitlichen Ressourcenverweis, Uniform Resource Locator, URL. In diesem Fall kann eine generische App den QR-Code erfassen, der dann das Telefon automatisch zu einem Application Store leitet, aus dem die App heruntergeladen werden kann. Die URL schließt auch den Identitätsschlüssel ein, sodass die App diese Kennung decodieren kann, nachdem die App installiert ist. - In einem anderen Beispiel kann die Managervorrichtung
110 ein anderes Tag oder einen NFC-Chip lesen, das/der mit DSD100 verbunden oder in sie integriert ist, um den Identitätsschlüssel zu erhalten. Mit Hilfe dieses Identitätsschlüssels kann die Managervorrichtung110 dann eine Kommunikation, beispielsweise drahtlos (z. B. über Bluetooth), mit der DSD100 und insbesondere mit der Zugriffssteuerung102 initiieren. - Wiederherstellunasschlüssel
- Nach Inbesitznahme der DSD
100 generiert die Zugriffssteuerung102 einen Wiederherstellungsschlüssel und stellt den Wiederherstellungsschlüssel für die Managervorrichtung110 bereit. Der Wiederherstellungsschlüssel kann dann in einem sicheren Speicher113 gespeichert oder gedruckt und unter Verschluss gebracht werden. Schließlich kann der Wiederherstellungsschlüssel von einer Backup-Managervorrichtung114 verwendet werden, um die Managerrolle zu übernehmen, die die Managervorrichtung110 zuvor hatte. - Registrierung einer autorisierten Vorrichtung
- Nachdem die DSD
100 während des Inbesitznahmeprozesses erstmalig konfiguriert wurde, registriert die Managervorrichtung110 die autorisierte Vorrichtung111 . In der Regel kann es mehrere autorisierte Vorrichtungen geben, die bei einer einzigen DSD100 registriert sind, sodass die Managervorrichtung110 die autorisierte Vorrichtung als eine von mehreren autorisierten Vorrichtungen registriert. Genauer empfängt die Zugriffssteuerung102 von der Managervorrichtung110 einen öffentlichen Schlüssel, der einem privaten Schlüssel zugeordnet ist, der in der Benutzervorrichtung111 gespeichert ist. Die Managervorrichtung110 selbst hat den öffentlichen Schlüssel unter Umständen von der Benutzervorrichtung111 per E-Mail empfangen, indem sie einen auf der Benutzervorrichtung111 angezeigten QR-Code abtastet, oder auf eine andere Art und Weise. Zu diesem Zeitpunkt ist die Vorrichtung111 noch nicht autorisiert und wird daher einfach als „Benutzervorrichtung 111“ bezeichnet. Nachdem die Benutzervorrichtung111 autorisiert ist, wird sie als „autorisierte Vorrichtung 111“ bezeichnet. Die Zugriffssteuerung102 erstellt Autorisierungsdaten und speichert die Autorisierungsdaten, die angeben, dass die Benutzervorrichtung111 eine autorisierte Vorrichtung ist (wie nachstehend beschrieben), unter Zuordnung zu dem öffentlichen Schlüssel in dem Konfigurationsspeicher115 , um die Benutzervorrichtung111 als eine der mehreren autorisierten Vorrichtungen zu registrieren. Dies bedeutet, dass Schlüssel und andere der autorisierten Vorrichtung111 zugeordnete Daten, wie nachstehend beschrieben erstellt und gespeichert werden. Ein Benutzer kann dann die autorisierte Vorrichtung111 verwenden, um die DSD100 zu entsperren, indem er die autorisierte Vorrichtung111 einfach in den drahtlosen Kommunikationsbereich, wie beispielsweise innerhalb des Bluetooth-Bereichs, bringt. Wiederum werden die von der autorisierten Vorrichtung111 durchgeführten Schritte in einer auf der autorisierten Vorrichtung111 installierten App codiert. Abhängig von Konfigurationsparametern muss der Benutzer möglicherweise die autorisierte Vorrichtung111 entsperren, bevor die DSD100 entsperrt werden kann. - Insbesondere hat die Zugriffssteuerung
102 Zugriff auf einen nichtflüchtigen Konfigurationsdatenspeicher, wie den Konfigurationsspeicher115 , der ein Flash-Speicher sein kann, der sich außerhalb der Zugriffssteuerung102 befindet (aber ebenso in die Zugriffssteuerung102 integriert sein kann). Der Konfigurationsspeicher115 kann auch den Programmcode speichern, der die hierin beschriebenen Schritte als von der Zugriffssteuerung102 ausgeführt implementiert. Es sei angemerkt, dass manche Beispiele hierin unter der Annahme konfiguriert sind, dass ein Angreifer den Konfigurationsspeicher115 leicht ablöten und seinen Inhalt auslesen kann, aber nicht in der Lage sein sollte, die Benutzerinhaltsdaten mit diesen Informationen zu entschlüsseln. Das heißt, in diesen Beispielen werden keine Schlüssel dauerhaft im Klartext in dem Konfigurationsspeicher115 oder anderswo in der DSD100 in dem nichtflüchtigen Speicher gespeichert. - Nachdem die kryptographischen Schlüssel im Klartext vorliegen, werden sie nur noch im flüchtigen Speicher (nicht dargestellt) gespeichert. Dies bedeutet, dass ein Abschalten der DSD
100 alle im Klartext gespeicherten kryptographischen Schlüssel löscht. Es kann eine zusätzliche Schaltung bereitgestellt werden, um alle verbleibenden Ladungen beim Herunterfahren, Hochfahren oder externen Zurücksetzen zurückzusetzen, sodass es in der Praxis physisch unmöglich ist, Informationen aus dem flüchtigen Speicher wiederherzustellen. In vielen Fällen kommt es dadurch zum Abschalten und Löschen aller flüchtigen Speicher, dass der Benutzer das USB-Kabel vom Host-Computersystem104 trennt. In anderen Beispielen wird eine sekundäre Stromversorgung verwendet, die zum Herunterfahren der DSD100 getrennt werden muss, um den flüchtigen Speicher zu löschen. - Abfrage-Antwort
- Im Konfigurationsspeicher
115 sind Daten gespeichert, die für die registrierte autorisierte Vorrichtung111 spezifisch sind. Diese Daten können als Kennung der autorisierten Vorrichtung111 oder als öffentlicher Schlüssel bezeichnet werden, der einem entsprechenden privaten Schlüssel zugeordnet ist, der in der autorisierten Vorrichtung111 gespeichert ist. Der öffentliche Schlüssel kann ein öffentlicher Transportschlüssel (TPK) sein und wird von der autorisierten Vorrichtung111 beim ersten Start der App durch Ausführen der Primitive ECC-Pub({transport private key}) der Kryptographie mit elliptischen Kurven (ECC) generiert. (Es wird daran erinnert, dass, obwohl hierin aus Gründen der Recheneffizienz und -sicherheit Kryptographie mit elliptischen Kurven beispielhaft verwendet wird, angemerkt wird, andere kryptografische Techniken ebenfalls verwendet werden könnten.) Der entsprechende private Schlüssel wird in der autorisierten Vorrichtung111 gespeichert. Die Zugriffssteuerung102 ist dazu konfiguriert, die Kennung (z. B. den öffentlichen Transportschlüssel) zu verwenden oder einen weiteren öffentlichen Schlüssel zu generieren und zu speichern, um eine Abfrage der autorisierten Vorrichtung111 zu generieren. An dieser Stelle sei angemerkt, dass die Abfrage eindeutig ist in dem Sinn, dass jede Abfrage unterschiedlich ist, sodass sich eine nachfolgende Abfrage von allen vorherigen Abfragen unterscheidet. Dies wird, wie nachfolgend beschrieben, durch Multiplizieren der gespeicherten Daten mit einem zufallsbasierten Blendungsfaktor erreicht. Dann sendet die Zugriffssteuerung102 die Abfrage über einen vom Datenpfad verschiedenen Kommunikationskanal an die autorisierte Vorrichtung111 . Zum Beispiel kann der Datenpfad eine drahtgebundene USB-Verbindung einschließen, während der Kommunikationskanal zwischen der Zugriffssteuerung102 und der autorisierten Vorrichtung111 eine drahtlose Verbindung (z. B. Bluetooth) ist. - In einem Beispiel findet ein Neuanmeldungsprozess als Antwort darauf statt, dass sich die autorisierte Vorrichtung erstmalig mit der DSD
100 verbindet, nachdem die Autorisierungsdaten erstellt und in dem Konfigurationsspeicher115 gespeichert wurden, der dem von der Managervorrichtung110 empfangenen öffentlichen Transportschlüssel der autorisierten Vorrichtung111 zugeordnet ist. Während der Neuanmeldung aktualisiert die DSD100 die Autorisierungsdaten und fordert, wie nachstehend ausgeführt, die autorisierte Vorrichtung111 auf, zusätzlich zu dem öffentlicher Transportschlüssel einen öffentlichen Entsperrschlüssel (und einen entsprechenden privaten Entsperrschlüssel) zu generieren. Die autorisierte Vorrichtung111 stellt dann der Zugriffssteuerung102 den öffentlichen Entsperrschlüssel zur Verfügung. - Dies hat den Vorteil, dass die beiden entsprechenden privaten Schlüssel (privater Transportschlüssel und privater Entsperrschlüssel) getrennt auf der autorisierten Vorrichtung gespeichert werden können und beide Schlüssel unterschiedliche Zugriffsrichtlinien aufweisen können. Zum Beispiel kann der private Transportschlüssel jederzeit zugänglich sein, selbst wenn die autorisierte Vorrichtung
111 gesperrt ist (z. B. durch eine Bildschirmsperre oder eine Zeitüberschreitung), um eine kontinuierliche Kommunikation zwischen der autorisierten Vorrichtung111 und der DSD100 zu ermöglichen. Um die DSD100 zu entsperren, erfordert es jedoch die Zugriffsrichtlinie des entsperrenden privaten Schlüssels unter Umständen, dass der Benutzer die autorisierte Vorrichtung111 entsperrt, eine persönliche Identifikationsnummer (PIN) eingibt, eine biometrische oder sonstige Authentifizierung bereitstellt. Auf diese Weise kann die DSD100 von einer gestohlenen autorisierten Vorrichtung nicht entsperrt werden. Da das Entsperren der DSD100 nur einmal durchgeführt wird, während DSD100 eingeschaltet ist, verringert die erhöhte Sicherheit den Benutzerkomfort nicht wesentlich. - Die autorisierte Vorrichtung
111 kann eine Antwort auf die Abfrage berechnen, die von keiner anderen Vorrichtung berechnet werden kann, die nicht bei der DSD registriert ist. Genauer gesagt kann die korrekte Antwort nicht von einer Vorrichtung berechnet werden, die keinen Zugriff auf Daten hat, die der in dem Konfigurationsspeicher115 gespeicherten Kennung entsprechen. Zum Beispiel verwendet die autorisierte Vorrichtung111 den gespeicherten privaten Entsperrschlüssel, der dem entsprechenden öffentlichen Entsperrschlüssel zugeordnet ist, der in dem Konfigurationsspeicher115 gespeichert ist, um die Antwort auf die Abfrage zu berechnen. - Die Zugriffssteuerung
102 empfängt die Antwort auf die Abfrage von der autorisierten Vorrichtung111 über den Kommunikationskanal. Dabei sei angemerkt, dass, wenn die Zugriffssteuerung102 die Antwort auf die Abfrage einfach validiert und bei Erfolg den kryptographischen Schlüssel aus dem Konfigurationsspeicher115 ausliest, der kryptographische Schlüssel im Klartext gespeichert würde, was unerwünscht ist, da dies einem Angreifer ermöglichen würde, die DSD100 zu demontieren und den Schlüssel aus dem Konfigurationsspeicher115 zu lesen, um auf die in dem Speichermedium105 gespeicherten Benutzerinhaltsdaten zuzugreifen. - Schlüssel berechnen
- Stattdessen berechnet die Zugriffssteuerung
102 den kryptographischen Schlüssel zumindest teilweise basierend auf der Antwort von der autorisierten Vorrichtung111 . Dies bedeutet, dass der kryptographische Schlüssel nicht eine reine Funktion der Antwort ist, sondern andere Werte einbezieht, wie sie weiter unten näher beschrieben werden. Zusammenfassend wird der kryptographische Schlüssel verschlüsselt in dem Konfigurationsspeicher115 gespeichert und die Antwort, die in dem in der autorisierten Vorrichtung gespeicherten privaten Schlüssel basiert, ermöglicht die Berechnung des Geheimnisses, womit der kryptographische Schlüssel entschlüsselt wird. - In dieser Offenbarung kann auf das ,Verpacken' von Schlüsseln verwiesen werden, was einfach bedeutet, dass der Schlüssel durch einen anderen Schlüssel (d. h. durch das „Geheimnis“) verschlüsselt wird. In vielen Fällen des ,Verpackens' ist die Verschlüsselung symmetrisch, sodass ein einziges Geheimnis (Schlüssel) existiert, das den verschlüsselten Schlüssel (ohne einen dem Geheimnis zugeordneten öffentlichen Schlüssel) entschlüsseln kann. In einem Beispiel verwendet symmetrische Verschlüsselung die Stammfunktion Advanced Encryption Standard, AES.
- Schließlich stellt die Zugriffssteuerung
102 der Kryptographiemaschine106 (in diesem Beispiel über den Datenanschluss103 ) den kryptographischen Schlüssel bereit, um die in dem Speichermedium105 der DSD100 gespeicherten verschlüsselten Benutzerinhaltsdaten zu entschlüsseln. Wie vorstehend erwähnt, stellt die Zugriffssteuerung102 , nachdem die Zugriffssteuerung102 den kryptographischen Schlüssel berechnet hat, den kryptographischen Schlüssel dem Datenanschluss103 im Klartext bereit, und der Datenanschluss103 gibt den SECURITY SET PASSWORD-Befehl an die Kryptographiemaschine106 einschließlich des kryptographischen Schlüssels aus. - Es sei angemerkt, dass, wenn auf das Entsperren der Vorrichtung Bezug genommen wird, sich dies auf den gesamten vorstehend beschriebenen Prozess beziehen kann, einschließlich der Abfrage, der Antwort auf die Abfrage und des Sendens des kryptographischen Schlüssels an die Kryptographiemaschine
106 , um Klartext-Lesebefehle zu ermöglichen, die von dem Host-Computersystem ausgegeben werden. In anderen Beispielen werden die Abfrage und die Antwort auf die Abfrage als Teil eines separaten ,Verbinden'-Schritts betrachtet. In dem folgenden Schritt ,Entsperren' sendet die Zugriffssteuerung102 dann den kryptographischen Schlüssel an den Datenanschluss103 , um Zugriff auf die Benutzerinhaltsdaten zu ermöglichen. - Abgesehen davon sei angemerkt, dass es einem Angreifer möglich sein kann, die Schlüsselübertragung von der Zugriffssteuerung
102 zum Datenanschluss103 und dann zur Kryptographiemaschine106 abzuhören. Die Übertragung des Schlüssels erfolgt jedoch nicht über ein öffentliches Netz, sodass es für dieses Abhören erforderlich wäre, Zugriff auf die entsperrte DSD zu erhalten und diese zu demontieren, ohne die DSD100 stromlos zu machen. Dieses Szenario kann als Bedrohung verworfen werden, da die Benutzerinhaltsdaten in diesem Szenario ohnehin in dem Host-Computersystem104 verfügbar sind. Mit anderen Worten, während die DSD100 verbunden und entsperrt ist, stehen Daten dem rechtmäßigen Benutzer und dem Angreifer zur Verfügung. Nachdem der Benutzer jedoch die DSD vom Host-Computersystem104 trennt, ist dieser Abhörangriff nicht mehr möglich. Dieser Angriff wird daher nicht weiter in Betracht gezogen. - Der Vollständigkeit halber sei angemerkt, dass, nachdem die Kryptographiemaschine
106 den kryptographischen Schlüssel empfangen hat, das Host-Computersystem104 gewöhnliche READ SEGMENT-Befehle ausgeben und transparent auf die verschlüsselten Daten zugreifen kann, ohne dass ein wahrnehmbarer Unterschied zum Zugreifen auf eine unverschlüsselten Vorrichtung besteht. Dies ist insbesondere dann der Fall, wenn die Kryptographiemaschine Hardware-Kryptographiemodule aufweist, um eine Verschlüsselung und Entschlüsselung mit oder oberhalb der Lese- und Schreibgeschwindigkeit des Speichermediums105 und/oder des Datenanschlusses103 zu ermöglichen. Der Benutzer kann jedoch die DSD100 trennen, um sie zu sperren. Auf diese Weise kann die DSD100 durch den Benutzer an unsichere Stellen getragen werden, an denen die DSD100 verloren gehen oder gestohlen werden kann; es ist jedoch für eine andere Person sehr schwierig, die verschlüsselten Benutzerinhaltsdaten, die in dem Speichermedium105 gespeichert sind, zu entschlüsseln. Wenn der Benutzer im Besitz der DSD bleibt, kann der Benutzer diese mit einem zweiten Host-Computersystem116 verbinden, die DSD100 bequem mit seiner autorisierten Vorrichtung111 (z. B. Telefon) entsperren und ohne weiteres auf die verschlüsselten Benutzerinhaltsdaten zugreifen, die in dem Speichermedium105 gespeichert sind. - Aus Gründen der Benutzerfreundlichkeit kann der Datenanschluss
103 so konfiguriert sein, dass, wenn die DSD gesperrt ist, sie sich bei dem Host-Computersystem104 als Massendatenspeicher mit nicht vorhandenem Speichermedium registriert, ähnlich einem SSD-Kartenleser ohne eingesteckte Karte. Nachdem die autorisierte Vorrichtung111 mit der DSD100 verbunden und die DSD100 entsperrt ist, schaltet der Datenanschluss103 auf das vorhandene Speichermedium um, ähnlich einem Kartenleser, in den eine SSD-Karte eingeführt wurde. Bei einer solchen Konfiguration würde vermieden, dass durch das Betriebssystem des Host-Computersystems104 Warnungen darüber generiert werden, dass die Daten nicht zugänglich sind oder der Zugriff verweigert wird. Vielmehr würde die gesamte Benutzerinteraktion von der auf der autorisierten Vorrichtung installierten App durchgeführt, die vollständig vom Hersteller der DSD gesteuert wird, sodass die Benutzererfahrung optimiert werden kann. Wie in1 gezeigt, können weitere Mobiltelefone vorhanden sein, die als autorisierte Vorrichtungen117 und118 fungieren. - Beacons und Schlüsselanhänger
- Unter erneuter Betrachtung von
1 ist zu erkennen, dass es weitere Vorrichtungen gibt, wie die Beacons120 und den Schlüsselanhänger121 . Diese Vorrichtungen können auch als „autorisierte Vorrichtungen“ angesehen werden, da sie im Wesentlichen wie die autorisierte Vorrichtung111 arbeiten können. Vor der erstmaligen Registrierung durch die Managervorrichtung110 werden diese Vorrichtungen als „zu autorisierende Vorrichtung“ bezeichnet. Wenn hierin auf eine „Benutzervorrichtung“ Bezug genommen wird (womit hauptsächlich das Mobiltelefon111 vor der erstmaligen Registrierung beschrieben wird), gilt dies auch für die Beacons120 und den Schlüsselanhänger121 , sofern nichts anderes angegeben ist, wie in Fällen, in denen eine Benutzereingabe erforderlich ist. Für die Beacons120 und den Schlüsselanhänger121 ist auch deren eigener privater Schlüssel sicher gespeichert, sodass sie auf eine Abfrage antworten können, die für einen Beacon oder einen Schlüsselanhänger spezifisch ist. Da jedoch die Beacons120 und der Schlüsselanhänger121 keinen Benutzereingang haben, kann sich die Einleitung der Kommunikation etwas anders gestalten. Insbesondere können der Beacon120 und der Schlüsselanhänger121 periodisch Advertisements senden, um ihre Existenz auszustrahlen, und die DSD100 initiiert dann die Kommunikation mit dem Beacon120 und/oder dem Schlüsselanhänger121 , wodurch diese aufgefordert werden, ihren öffentlichen Transportschlüssel zu senden. Dies steht im Gegensatz zu der autorisierten Vorrichtung111 , die den öffentlichen Transportschlüssel an die DSD100 sendet, um die Kommunikation zu initiieren. - In weiteren Beispielen sind die Beacons
120 deaktiviert, wenn sie eingeschaltet werden, und müssen von einer Managervorrichtung110 oder einer autorisierten Vorrichtung111 aktiviert werden. Diese Aktivierung kann einem ähnlichen Prozess folgen wie das Entsperren der DSD100 . Das heißt, die Managervorrichtung110 oder die autorisierte Vorrichtung111 oder beide werden bei jedem Beacon120 mit ihren öffentlichen Transportschlüsseln registriert und antworten auf eine Abfrage, wie hierin beschrieben. Somit kann eine Vorrichtung als Managervorrichtung oder autorisierte Vorrichtung bei einem von den Beacons102 und/oder dem Schlüsselanhänger121 registriert sein, ohne bei der DSD100 selbst registriert zu sein. Wenn die Antwort auf die Abfrage gültig ist, entsperren dann die Beacons120 die DSD100 . In noch einem weiteren Beispiel werden die Beacons120 bei einander registriert, sodass die Managervorrichtung110 und/oder die autorisierte Vorrichtung111 nur einen der Beacons120 aktivieren muss und die übrigen Beacons automatisch aktiviert werden. Mit anderen Worten verbreitet' sich die Aktivierung über das Beacon-Netzwerk, solange sich die Beacons innerhalb ihrer gegenseitigen Reichweite befinden. - Es sei angemerkt, dass die einzige Information, die die autorisierten Vorrichtungen
111 ,117 ,118 ,120 und121 der Managervorrichtung110 zum Registrieren zur Verfügung stellen, ein öffentlicher Schlüssel für jede Vorrichtung ist. Mit anderen Worten stellt jede Vorrichtung ihren eigenen öffentlichen Schlüssel bereit, der einem privaten Schlüssel entspricht, der sicher in dieser Vorrichtung gespeichert ist. Wenn daher ein Angreifer die anfängliche Kommunikation zwischen einer der Vorrichtungen111 ,117 ,118 ,120 und121 und der Managervorrichtung110 abfängt, ist die einzige Information, die der Angreifer erhalten kann, der öffentliche Schlüssel. Wie der Name sagt, ist der öffentliche Schlüssel nicht geheim und kann allgemein bekannt sein. Der Angreifer hat daher keinen Vorteil erlangt. Weiterhin kann die Managervorrichtung110 den öffentlichen Schlüssel nicht verwenden, um Zugriff auf irgendetwas anderes im Zusammenhang mit den autorisierten Vorrichtungen zu erlangen. Beispielsweise kann die Managervorrichtung keine anderen Datenspeichervorrichtungen entschlüsseln oder entsperren, bei denen die autorisierte Vorrichtung von anderen Managervorrichtungen registriert wurde. - Die Zugriffssteuerung
102 empfängt die öffentlichen Schlüssel der autorisierten Vorrichtungen von der Managervorrichtung110 und generiert Autorisierungsdaten. Die Zugriffssteuerung102 speichert die Autorisierungsdaten in dem Speicher115 , während sie darauf wartet, dass sich die autorisierte Vorrichtung erstmalig verbindet. Beim ersten Verbinden führt die Zugriffssteuerung102 eine Abfrage-Antwort für die autorisierte Vorrichtung durch und aktualisiert bei Erfolg die Autorisierungsdaten, um darzustellen, dass die autorisierte Vorrichtung nun vollständig registriert ist. Dieser erste Verbindungsprozess wird hierin als „Neuanmeldung“ bezeichnet, und Details zum Generieren der Autorisierungsdaten und der Neuanmeldung werden im Folgenden bereitgestellt. - Kryptographie mit elliptischen Kurven
- In einem Beispiel basiert die durch die DSD
100 generierte und an die autorisierte Vorrichtung111 gesendete Abfrage auf Kryptographie mit elliptischen Kurven. Dies bietet die Vorteile kürzerer Schlüssel, was zu einer effizienteren Kommunikation und Speicherung führt. Weiterhin stellen eine große Anzahl von derzeit auf dem Markt befindlichen Telefonen eine dedizierte Funktionalität der Kryptographie mit elliptischen Kurven innerhalb eines sicheren Hardwaremoduls bereit. Das sichere Hardwaremodul speichert die privaten Schlüssel des Benutzers sicher und führt kryptographische Stammfunktionen innerhalb des sicheren Hardwaremoduls durch, ohne dass der Schlüssel das sichere Hardwaremodul verlässt und an einen Universal-Prozessorkern gesendet wird, wo der Schlüssel einem Angriff wegen unbefugten Abrufs ausgesetzt sein kann. In einer Ausführungsform schließt das sichere Hardwaremodul einen separaten Prozessor ein, der seinen eigenen Mikrokernel ausführt, auf den das Betriebssystem oder Programme, die auf dem Telefon laufen, nicht direkt zugreifen können. Das sichere Hardwaremodul kann auch einen nichtflüchtigen Speicher einschließen, der verwendet wird, um private 256-Bit-Schlüssel mit elliptischer Kurve zu speichern. In einer Ausführungsform ist das sichere Hardwaremodul ein Secure Enclave-Coprozessor, der auf einigen Apple-Vorrichtungen verfügbar ist. - Autorisierter Vorrichtungsdatensatz
-
2 veranschaulicht einen Abschnitt des Konfigurationsspeichers115 gemäß einer Ausführungsform. Genauer veranschaulicht2 einen Datensatz201 im Konfigurationsspeicher115 , der einer von mehreren autorisierten Vorrichtungen zugeordnet ist und hierin als „Autorisierungsdaten“ bezeichnet wird. Weitere Datensätze für weitere autorisierte Vorrichtungen sind schematisch als gestrichelte Zellen angegeben, werden jedoch nicht näher betrachtet, da sie ähnlich wie der Datensatz201 arbeiten. Insbesondere weist jeder weitere Datensatz Autorisierungsdaten, die von der Zugriffssteuerung102 als Antwort auf das Empfangen eines öffentlichen Schlüssels einer Benutzervorrichtung von der Managervorrichtung110 generiert werden, und dann die aktualisierten Autorisierungsdaten auf, die während des ersten Verbindens der Benutzervorrichtung aktualisiert werden (dann „autorisierte Vorrichtung“). Der Einfachheit halber wird die Datenstruktur des Konfigurationsspeichers115 als eine ,Tabelle' bezeichnet, die einen oder mehrere ,Datensätze' aufweist, wobei sich jeder Datensatz auf eine registrierte autorisierte Vorrichtung bezieht und jeder Datensatz mehrere Felder aufweist. Es wird jedoch angemerkt, dass andere Datenstrukturen verwendet werden können, wie JavaScript Object Notation (JSON), Extensible Markup Language (XML), binäre Formate usw. In einem Beispiel hat jeder Eintrag eine feste Länge und die Tabelle hat eine feste Anzahl von Zeilen (d. h. Einträgen). Innerhalb dieser Offenbarung kann ein ,Datensatz' auch als eine ,Zeile' oder ein ,Eintrag' bekannt sein. - Der Datensatz
201 weist ein Feld für einen Vorautorisierungsschlüssel202 auf, der als Antwort darauf verwendet wird, dass sich die autorisierte Vorrichtung111 erstmals mit der DSD100 verbindet. Während dieses ersten Verbindens führt die Zugriffssteuerung102 eine Anzahl von Schritten durch, die als „Neuanmeldung“ bezeichnet werden, wie nachfolgend näher beschrieben wird. Der Vorautorisierungsschlüssel202 wird aus der Kennung (z. B. dem öffentlichen Transportschlüssel) der autorisierten Vorrichtung111 generiert. Zum Beispiel kann die Zugriffssteuerung102 den Vorautorisierungsschlüssel202 durch Anwenden einer Schlüsselableitungsfunktion unter Verwendung der x-Koordinate des öffentlichen Transportschlüssels als Eingangsparameter zusammen mit einem Slot-Schlüssel der autorisierten Vorrichtung als Salt-Wert auf die Ableitungsfunktion generieren. Der Slot-Schlüssel der autorisierten Vorrichtung kann eine Pseudozufallszahl (z. B. mit 16 Bytes) sein, die in dem Konfigurationsspeicher115 gespeichert ist, und kann verwendet werden, um Daten in Zertifikaten der autorisierten Vorrichtung zu verschlüsseln, sodass nur die ausgebende DSD100 die Informationen wiederherstellen kann. - An dieser Stelle kann gesagt werden, dass die in dem Konfigurationsspeicher
115 gespeicherten Datensätze durch den Vorautorisierungsschlüssel202 basierend auf einer Kennung der autorisierten Vorrichtung (z. B. dem öffentlichen Transportschlüssel) indiziert werden. Wie nachstehend unter Bezugnahme auf4 beschrieben, kann der Index des Datensatzes201 während der Neuanmeldung in einem Zertifikat als Slot-Nummer gespeichert werden, und an diesem Punkt kann der Vorautorisierungsschlüssel202 durch einen Zufallswert ersetzt werden, um die konfigurierte DSD selbst bei Besitz des öffentlichen Transportschlüssels von einem neuen Gerät aus der Fabrik ununterscheidbar zu machen. - Der Datensatz
201 weist weiterhin ein Feld für eine erste Kopie eines Metadaten-Verpackungsschlüssels (MWK)203 und eines Vorautorisierungs-Metadaten-Verpackungsschlüssels (PMWK)214 , auf. Einige Felder im Datensatz201 sind verschlüsselt, was durch doppelt umrandete Zellen angegeben wird, wobei die Zellen mit einfachen Blocklinien innerhalb der doppelt umrandeten Zellen die ,Nutzdaten' wie beispielsweise den Metadaten-Verpackung-Schlüssel203 und den Vorautorisierungs-Metadaten-Verpackung-Schlüssel214 angeben. Der entsprechende Verschlüsselungsschlüssel, mit dem die Nutzdaten verschlüsselt werden, ist unten an der doppelt umrandeten Zelle vermerkt. So ist zum Beispiel der Metadaten-Verpackungsschlüssel203 durch einen Metadatenschlüssel der autorisierten Vorrichtung (ADMK)204 verschlüsselt. Es sollte angemerkt werden, dass jede Verschlüsselungszelle eine zusätzliche Nonce aufweisen kann, die mit den Nutzdaten verkettet ist. Dadurch ist gewährleistet, dass der verschlüsselte Eintrag auch bei Besitz der verschlüsselten Daten, wie beispielsweise des öffentlichen Transportschlüssels der autorisierten Vorrichtung, nicht von Zufallsdaten unterschieden werden kann. - Der Datensatz
201 weist weiterhin ein Feld für Metadaten der autorisierten Vorrichtung (ADM)205 auf, die eine Verkettung eines Vorrichtungstyps206 (z. B. Wiederherstellungsschlüssel, Schlüsselanhänger, Beacon, Telefon, Computer, Uhr usw.), eine Rolle der Vorrichtung207 (z. B. Manager oder Benutzer), ein Name der Vorrichtung208 (z. B. „Johns Telefon“), ein öffentlicher Transportschlüssel209 , Entsperrschlüsselmetadaten210 (z. B. Schlüsselbeschränkungen, ob Fingerabdruck, PIN oder keine Entsperrung erforderlich ist), ein kurzlebiger öffentlicher Schlüssel211 und ein öffentlicher Entsperrschlüssel212 sind. In einer Ausführungsform ist der kurzlebige öffentliche Schlüssel211 ein öffentlicher Schlüssel mit elliptischer Kurve, der aus einem zufallsbasierten kurzlebigen privaten Schlüssel mit elliptischer Kurve (EPK) unter Verwendung einer Primitive ECC-PUB (EUK) der Kryptographie mit elliptischer Kurve (ECC) generiert wird. Der kurzlebige private Schlüssel wird nicht in dem Konfigurationsspeicher115 oder in der autorisierten Vorrichtung111 gespeichert, sondern nach dem Erstellen des kurzlebigen öffentlichen Schlüssels verworfen. Dies bedeutet, dass der kurzlebige private Schlüssel nicht in dem nichtflüchtigen Speicher, sondern nur in dem flüchtigen Speicher gespeichert wird. Dadurch führt ein Herunterfahren des Speichers zu einem vollständigen und nicht wiederherstellbaren Verlust (z. B. Zerstörung) des kurzlebigen privaten Schlüssels. Der öffentliche Entsperrschlüssel212 entspricht einem privaten Entsperrschlüssel, der in der autorisierten Vorrichtung111 gespeichert ist und von der autorisierten Vorrichtung111 generiert und der Zugriffssteuerung102 bereitgestellt wird. - Die Metadaten der autorisierten Vorrichtung (verkettet mit einer weiteren Nonce) werden durch den Metadaten-Verpackungsschlüssel (MWK)
213 verschlüsselt, der ebenfalls unter 203 in verschlüsselter Form gespeichert ist. Der Hauptzweck des Speicherns des verschlüsselten Metadaten-Verpackungsschlüssels203 im Eintrag201 besteht darin, es einem Managerbenutzer, der Zugriff auf den Metadatenschlüssel der autorisierten Vorrichtung204 hat, zu ermöglichen, auf die verschlüsselten Metadaten205 der autorisierten Vorrichtung zuzugreifen. Wenn der Metadaten-Verpackungsschlüssel für den Manager nicht zugänglich wäre, wäre der Manager nicht in der Lage, von der DSD100 Informationen darüber abzurufen, welche autorisierten Vorrichtungen derzeit registriert sind. In einem Beispiel ist der Metadatenschlüssel204 der autorisierten Vorrichtung ein einzelner Schlüssel für alle autorisierten Vorrichtungen und wird durch einen Managerschlüssel verschlüsselt gespeichert. Der Managerschlüssel kann ein Pseudozufallswert (z. B. 32 Bytes) sein und von der Zugriffssteuerung102 generiert werden, wenn das Speichermedium105 gelöscht wird. Der Managerschlüssel wird für jede gepaarte Managervorrichtung110 /114 verschlüsselt und gespeichert. Der Managerschlüssel kann ein Pseudozufallswert (z. B. 32 Bytes) sein und von der Zugriffssteuerung102 generiert werden, wenn das Speichermedium105 gelöscht wird. Der Managerschlüssel wird für jede gepaarte Managervorrichtung110 /114 verschlüsselt und gespeichert. - Der Datensatz
201 weist weiterhin ein Feld für eine zweite Kopie der Rolle220 der Vorrichtung auf, die mit einem Benutzerschlüssel221 und einer zweiten Kopie des Metadaten-Verpackungsschlüssels222 verkettet ist. Es ist anzumerken, dass sowohl die Rolle207 /220 als auch der Metadaten-Verpackungsschlüssel203 /222 in zwei Kopien gespeichert sind, die identisch sind, jedoch mit unterschiedlichen Schlüsseln verschlüsselt sind. Der Zweck des Speicherns von zwei Kopien der Rolle207 /220 besteht darin, es der Zugriffssteuerung102 zu ermöglichen, die Rolle sowohl während des Verbindens (als Antwort darauf, dass die Metadaten der autorisierten Vorrichtung entschlüsselt werden) als auch während des Entsperrens (als Antwort darauf, dass der Benutzerschlüssel221 entschlüsselt wird) zu verifizieren. Der Zweck des Speicherns der ersten Kopie des Metadaten-Verpackungsschlüssels203 besteht darin, sie einer Managervorrichtung bereitzustellen, die Zugriff auf den Metadatenschlüssel der autorisierten Vorrichtung hat. Der Zweck der zweiten Kopie des Metadaten-Verpackungsschlüssels222 besteht darin, ihn während des ersten Verbindens einer vorautorisierten Vorrichtung bereitzustellen. Die verketteten Werte220 ,221 ,222 werden zusammen durch ein kurzlebiges Entsperrgeheimnis (Ephemeral Unlock Secret, EUS)223 verschlüsselt, das ursprünglich durch ein Diffie-Hellman-Verfahren unter Verwendung des kurzlebigen privaten Schlüssels entsprechend dem kurzlebigen öffentlichen Schlüssel211 und dem entsperrenden öffentlichen Schlüssel212 generiert wurde. Das kurzlebige Entsperrgeheimnis223 kann unter Verwendung des kurzlebigen öffentlichen Schlüssels211 und eines zugeordneten privaten Entsperrschlüssels, der in der autorisierten Vorrichtung111 gespeichert ist und dem öffentlichen Entsperrschlüssel212 entspricht, wiederhergestellt werden. Mit anderen Worten kann das kurzlebige Entsperrgeheimnis223 beim ersten Verbinden der autorisierten Vorrichtung111 mit der DSD100 unter Verwendung des kurzlebigen privaten Schlüssels und des öffentlichen Entsperrschlüssels212 generiert werden. Es sei angemerkt, dass der kurzlebige private Schlüssel selbst nicht gespeichert ist, aber dennoch das kurzlebige Entsperrgeheimnis223 wie vorstehend beschrieben wiederhergestellt werden kann. Das bedeutet, der Benutzerschlüssel221 ist basierend auf der Antwort von der autorisierten Vorrichtung entschlüsselbar. Es sei angemerkt, dass der Benutzerschlüssel221 für alle autorisierten Vorrichtungen identisch ist und zum Entschlüsseln von Benutzerinhaltsdaten verwendet werden kann. Dies bedeutet nicht notwendigerweise, dass der Benutzerschlüssel selbst die Benutzerinhaltsdaten entschlüsselt. Es können weitere Schlüssel vorhanden sein, die der Benutzerschlüssel entschlüsselt, und der finale Schlüssel entschlüsselt die Benutzerinhaltsdaten. Die Formulierungen „Verwenden eines Schlüssels zum Entschlüsseln von Benutzerinhaltsdaten“ und „Ermöglichen einer Entschlüsselung der Benutzerinhaltsdaten“ beziehen sich auf eine indirekte Verschlüsselung über mehrere Schlüssel in einer Kette. Im Gegensatz dazu bezieht sich die Formulierung „der Schlüssel entschlüsselt die Daten“ auf eine direkte Entschlüsselung der Daten mit dem Schlüssel, wie Modulo-Multiplikation der verschlüsselten Daten durch den Schlüssel. Hier wird der Benutzerschlüssel221 zur indirekten Entschlüsselung der Daten verwendet und kann Ausgangspunkt einer Kette von Schlüsseln sein, die sequentiell entschlüsselt werden, bis schließlich die Kette bei dem Schlüssel endet, der die Benutzerinhaltsdaten entschlüsselt. Während in den meisten hierin offenbarten Beispielen das kurzlebige Entsperrgeheimnis223 den Benutzerschlüssel221 entschlüsselt, ist es auch möglich, dass der kryptographische Schlüssel auf andere Weise aus der Antwort auf die Abfrage abgeleitet wird. Zum Beispiel kann die Antwort auf die Abfrage direkt als kryptographischer Schlüssel verwendet werden, der die Benutzerinhaltsdaten entschlüsselt. - Diese Zuordnung von Schlüsseln und Metadaten ermöglicht eine Konfiguration, bei der die gesamten Konfigurationsinformationen über autorisierte Vorrichtungen, Managervorrichtungen und andere Aspekte in der DSD
100 selbst gespeichert sind. Die autorisierten Vorrichtungen benötigen jedoch einen in der jeweiligen autorisierten Vorrichtung gespeicherten Schlüssel, um die DSD100 zu entsperren. Wenn ein nicht registrierter Benutzer ohne Zugriff auf Schlüssel auf die gesamte Konfiguration der Vorrichtung zugreifen möchte, wie beispielsweise eine Liste registrierter Vorrichtungen abrufen möchte, muss der nicht registrierte Benutzer nur den Wiederherstellungsschlüssel als Managervorrichtung registrieren, um Zugriff zu erhalten. Die DSD100 kann dann den gesamten Inhalt des Konfigurationsspeichers115 unter Verwendung des Managerschlüssels der neuen Managervorrichtung zur Verfügung stellen. Weiterhin können zwei Managervorrichtungen vorhanden sein, und beide können autorisierte Vorrichtungen registrieren oder entfernen. Die andere Managervorrichtung wäre in der Lage, Konfigurationsaktualisierungen zu erhalten, indem sie eigene Datensätze mit den in dem Konfigurationsspeicher115 gespeicherten Daten synchronisiert. In einigen Beispielen ist die DSD100 dazu konfiguriert, Datensätze201 aller autorisierten Vorrichtungen zu löschen (aber nicht die Benutzerinhaltsdaten oder den Benutzerschlüssel221 zu löschen, die als eine weitere Kopie in verschlüsselter Form in dem Konfigurationsspeicher115 getrennt von dem Eintrag201 und Einträgen gespeichert sein können), wenn der Wiederherstellungsschlüssel verwendet wird, um Zugriff zu erhalten, was aber eine Richtlinienentscheidung ist. -
3 veranschaulicht den Steuerungsablauf300 zwischen einer autorisierten Vorrichtung111 und einer Zugriffssteuerung102 gemäß einer Ausführungsform. Zuerst initiiert die autorisierte Vorrichtung111 ein Verbindungsverfahren, indem es ihren öffentlichen Transportschlüssel sendet 301. Dieser Schritt kann von einem Angreifer leicht erneut ausgeführt werden. Die Zugriffssteuerung102 antwortet 302 dann mit einer Anforderung eines Zertifikats, und als Antwort auf diese Anforderung sendet 303 die autorisierte Vorrichtung111 ein Zertifikat, das zuvor von der Zugriffssteuerung102 durch den Neuanmeldungsprozess erhalten wurde. - Zertifikat
-
4 veranschaulicht ein Zertifikat400 , das von der Datenspeichervorrichtung100 ausgegeben und von der autorisierten Vorrichtung111 an die Datenspeichervorrichtung gesendet wird, um die Datenspeichervorrichtung zu entsperren, gemäß einer Ausführungsform. In diesem Beispiel weist das Zertifikat400 mehrere Typ-Längen-Wert-Felder (TLV-Felder) auf, wobei der Typ-Wert die Art des Felds angibt, das Teil des Zertifikats ist, Länge die Größe des Wert-Felds (in der Regel in Bytes) ist und Wert eine Serie von Bytes variabler Größe ist, die Daten für diesen Teil des Zertifikats enthält. - Das Zertifikat
400 beginnt mit einem TLV-Atom, das den Typ des folgenden Zertifikats angibt. Dies wird als Zertifikatsrolle401 bezeichnet und weist einen 2 Byte-Wert auf, um anzugeben, dass es sich um ein Zertifikat der autorisierten Vorrichtung handelt. - Das Zertifikat
400 gehört zu einer Zertifikatskette. Die Zugriffssteuerung102 verwendet die Kette, um das Zertifikat400 zu validieren und zu authentifizieren. Um anzugeben, zu welcher Kette das Zertifikat400 gehört, verfügt das Zertifikat400 über eine 4 Byte Stamm-Zertifikatskennung (ID)402 . Die Zertifikatskennung jedes Zertifikats in der Zertifikatskette ist gleich. Zertifikatskennungen, die nicht übereinstimmen, geben ein ungültiges Zertifikat an. In einem Beispiel gibt eine Stamm-Zertifikatskennung an, ob die Zertifikatskette eine Produktions- oder eine Entwicklungszertifizierungskette ist. In anderen Beispielen können andere Gruppen durch jeweilige Zertifikatskennungen angegeben werden. - Das Zertifikat
400 weist weiterhin einen 1-Byte-Indikator für die Zertifikatstiefe403 auf. Die Tiefe eines Zertifikats ist definiert als sein Abstand von dem Stammzertifikat innerhalb seiner Zertifikatskette. Das Stammzertifikat ist so definiert, dass es eine Tiefe von Null aufweist. Wenn eine gegebene Zertifikatskette verarbeitet wird, werden die Tiefenfelder validiert, um die Integrität der Kette sicherzustellen. - Das Zertifikat
400 weist auch einen öffentlichen Transportschlüssel404 auf (z. B. gemäß der elliptischen Kurve des National Institute of Standards and Technology (NIST) P-256) für das 64 Byte-Zertifikat). Jedes Zertifikat wird über einen öffentlichen Transportschlüssel bezeichnet/indiziert. Jeder Typ von öffentlichem Schlüssel weist seinen dedizierten Tag-Typ auf. Das heißt, der Tag-Typ bezeichnet die Chiffrier-Abfolge, die zum Generieren des öffentlichen Transportschlüssels verwendet wird, wie beispielsweise die Chiffrier-Abfolge P-256. - Das Zertifikat
400 weist weiterhin ein Datenfeld405 auf (nachstehend erläutert) und wird über eine Signatur406 authentifiziert. Die Zugriffssteuerung102 empfängt das Zertifikat400 und validiert die Signatur, bevor sie einem der Inhalte des Zertifikats vertraut oder diesen verwendet. Um die Signaturvalidierung zu ermöglichen, wird der öffentliche Schlüssel407 des 64 Byte-Unterzeichners als Teil des Zertifikats bereitgestellt. Die Signatur406 selbst hat eine Länge von 64 Bytes und wird über alle früheren TLVs401-405 ,407 berechnet, die sich innerhalb des Zertifikats befinden, unabhängig davon, ob sie von der Implementierung erkannt werden oder nicht. Insbesondere wird die Signatur406 aus einem Hash der Zertifikatdaten abgeleitet. Die spezifischen Daten, die signiert werden, sind zertifikatabhängig, enthalten jedoch alle TLVs, die verwendet werden, um das Zertifikat darzustellen, einschließlich TLVs, die nicht erkannt werden. Der zur Generierung der Signatur verwendete Schlüssel ist ein logischer Identitätsschlüssel und ist dem öffentlichen Signierschlüssel407 zugeordnet. - Das Datenfeld
405 weist die Slot-Nummer410 auf, die den Index des Datensatzes201 im Konfigurationsspeicher115 bezeichnet. Das Datenfeld405 weist auch eine weitere Kopie des Metadaten-Verpackungsschlüssels411 auf (zusätzlich zu den beiden in2 gezeigten Kopien). Das Datenfeld405 wird mit dem Slot-Schlüssel der autorisierten Vorrichtung (ADSK)412 , der ein im Konfigurationsspeicher115 gespeicherter 16 Byte Pseudozufallswert ist, verschlüsselt und zur Verschlüsselung von Daten in Zertifikaten der autorisierten Vorrichtung verwendet, sodass nur die ausgebende DSD100 die Informationen wiederherstellen kann. - Entsperren der Datenspeichervorrichtung
- Wenn wiederum in Bezug auf
3 die autorisierte Vorrichtung111 die DSD100 entsperren möchte, sendet 303 die autorisierte Vorrichtung111 das Zertifikat400 , das den verschlüsselten Metadaten-Verpackungsschlüssel (MWK)213 /411 enthält, an die Zugriffssteuerung102 . Das Zertifikat400 enthält auch die Slot-Nummer410 , die ein Index des Datensatzes201 im Speicher115 ist. - Die Zugriffssteuerung
102 verwendet den Slot-Schlüssel der autorisierten Vorrichtung, der im Konfigurationsspeicher115 gespeichert ist, um das Datenfeld405 zu entschlüsseln 304 und die Slot-Nummer und den Metadaten-Verpackungsschlüssel zu extrahieren. Die Zugriffssteuerung102 fragt dann den Konfigurationsspeicher115 ab, um den entsprechenden Datensatz201 aus dem Konfigurationsspeicher115 zu lesen 305, und entschlüsselt 306 die Metadaten der autorisierten Vorrichtung205 unter Verwendung des Metadaten-Verpackungsschlüssels. Daraus ergibt sich der kurzlebige öffentliche Schlüssel211 , der auch als Kennung der autorisierten Vorrichtung bezeichnet werden kann, da er die autorisierte Vorrichtung eindeutig identifiziert, da der kurzlebige öffentliche Schlüssel211 einem nur in der autorisierten Vorrichtung111 gespeicherten privaten Entsperrschlüssel kryptographisch zugeordnet ist. Die Zugriffssteuerung102 kann zusätzliche Prüfungen307 durchführen, wie Validieren, dass der öffentliche Transportschlüssel209 , der in den Metadaten der autorisierten Vorrichtung205 enthalten ist, mit dem öffentlichen Transportschlüssel404 übereinstimmt, der im Zertifikat400 präsentiert wird. Weiterhin validiert die Zugriffssteuerung102 die Rolle401 gegenüber dem gültigen Satz von Werten und ordnet die Rolle der Verbindung zu. Dies bedeutet, dass die Zugriffssteuerung102 während der Verbindungsdauer die aktuelle Rolle (autorisierte Vorrichtung oder Managervorrichtung) kennt. Zum Beispiel speichert die Zugriffssteuerung102 einen Parameterwert in einem flüchtigen Speicher, der die Rolle401 angibt, die in dem Zertifikat bereitgestellt wird. Wenn eine der vorangegangenen Überprüfungen fehlschlägt, gilt die autorisierte Vorrichtung als widerrufen und es wird ein diesbezüglicher Fehler ausgegeben. Andernfalls gelingt der Verbindungsversuch und die Zugriffssteuerung102 sendet 308 eine Verbindungsbestätigungsnachricht an die autorisierte Vorrichtung111 . - In diesem Stadium ist die autorisierte Vorrichtung
111 verbunden und der Entsperrprozess beginnt, indem die autorisierte Vorrichtung111 eine Entsperranforderung an die Zugriffssteuerung102 sendet320 . Die Entsperranforderung schließt den öffentlichen Entsperrschlüssel ein, der dem privaten Entsperrschlüssel zugeordnet ist, der in dem sicheren Hardwaremodul der autorisierten Vorrichtung gespeichert ist. Die Zugriffssteuerung102 stimmt den empfangenen öffentlichen Entsperrschlüssel mit dem öffentlichen Entsperrschlüssel212 ab321 , der in dem Metadatensatz205 der autorisierten Vorrichtung gespeichert ist. Als Nächstes generiert322 die Zugriffssteuerung102 einen neuen Verblendungswert (auch Entsperr-Verblendungsschlüssel (Unlock Blending Key, UBK) genannt), der im Wesentlichen ein kurzlebiger privater Skalar ist und zufallsbasiert generiert wird. - Der Zugriffssteuerung
102 generiert dann die Abfrage basierend auf der Kennung der autorisierten Vorrichtung (z. B. kurzlebiger öffentlicher Schlüssel211 ) multipliziert mit dem Entsperr-Verblendungsschlüssel (UBK). Insbesondere multipliziert 323 die Zugriffssteuerung102 den kurzlebigen öffentlichen Schlüssel211 mit dem Entsperr-Verblendungsschlüssel, wobei die vollen X- und Y-Koordinaten des Ergebnisses zurückgegeben werden, wobei angemerkt wird, dass diese Operation auf einer elliptischen Kurve durchgeführt wird. Die Zugriffssteuerung102 sendet324 dann die X- und Y-Koordinaten als Abfrage an die autorisierte Vorrichtung111 . An dieser Stelle sei angemerkt, dass diese Abfrage auf der Kennung der autorisierten Vorrichtung111 basiert, da der kurzlebige öffentliche Schlüssel ein Faktor bei der Multiplikation ist, die zu der Abfrage führt. Es sei weiterhin angemerkt, dass für jede Entsperranforderung (d. h.320 ) ein anderer Entsperr-Verblendungsschlüssel generiert wird, um „Man-in-the-middle“-Angriffe zu vermeiden. - Weiterhin berechnet
325 die Zugriffssteuerung102 das Inverse des Entsperr-Verblendungsschlüssels (UBK-1). Die Zugriffssteuerung102 kann das Inverse des Entsperr-Verblendungsschlüssels berechnen, während sie auf eine Antwort von der autorisierten Vorrichtung111 wartet. - Die autorisierte Vorrichtung
111 berechnet eine Antwort auf die Abfrage, indem die Abfrage mit dem privaten Entsperrschlüssel multipliziert 326 wird, der in dem sicheren Hardwaremodul der autorisierten Vorrichtung gespeichert ist und dem öffentlichen Entsperrschlüssel212b entspricht, der in dem Konfigurationsspeicher115 gespeichert ist. Dabei kann es sich um die Ausführung einer kryptographischen Stammfunktion handeln, die vollständig innerhalb des sicheren Hardwaremoduls innerhalb der autorisierten Vorrichtung111 ausgeführt werden kann. Die autorisierte Vorrichtung111 sendet dann das Ergebnis in einer Antwortnachricht zurück327 . Die Zugriffssteuerung102 multipliziert328 das zurückgegebene Ergebnis mit dem Inversen des Entsperr-Verblendungsschlüssels, um das kurzlebige Entsperrgeheimnis (EUS) zu berechnen223 . - In mathematischer Notation stellt P den kurzlebigen öffentlichen Schlüssel dar, und k stellt den Entsperr-Verblendungsschlüssel k dar, der in Schritt
322 in3 erstellt wurde. Die Zugriffssteuerung102 berechnet 323 das Produkt k*P und sendet324 es an die autorisierte Vorrichtung111 . Die autorisierte Vorrichtung111 multipliziert 326 die Abfrage mit dem privaten Entsperrschlüssel j, um j*k*P zu berechnen, und gibt das Ergebnis an die Zugriffssteuerung102 zurück327 . Die Zugriffssteuerung102 multipliziert 238 diese Antwort mit dem Inversen des Entsperr-Verblendungsschlüssels k-1, um
was aufgrund des kommutativen Charakters elliptischer Kurven gleich j*P ist - Die Zugriffssteuerung
102 verwendet dann j*P als kurzlebiges Entsperrgeheimnis (d. h. Schlüssel), um den Benutzerschlüssel221 zu entschlüsseln 329. Das heißt, die Zugriffssteuerung102 verwendet das kurzlebige Entsperrgeheimnis, um den in der DSD100 gespeicherten Benutzerschlüssel221 zu entschlüsseln, der mit dem kurzlebigen Entsperrgeheimnis verschlüsselt ist. Insbesondere entschlüsselt 329 die Zugriffssteuerung102 den Benutzerschlüssel, der dann einen „User Drive Key“, Benutzerlaufwerkschlüssel, entschlüsselt 330, der dann schließlich über TCG-Befehle an die Kryptographiemaschine106 gesendet 331 wird. Das heißt, der Benutzerlaufwerkschlüssel kann von der Zugriffssteuerung102 unter Verwendung einer Schlüsselableitungsfunktion basierend auf dem Benutzerschlüssel generiert werden. Der Benutzerlaufwerkschlüssel ist der TCG-Autorisierungsnachweis, der verwendet wird, um die DSD100 zu entsperren, und kann mit dem hierin beschriebenen „kryptografischen Schlüssel“ gleichgesetzt werden. Im Falle von Opal ist dies der Benutzer2-Autorisierungsnachweis. - Es sei angemerkt, dass das kurzlebige Entsperrgeheimnis bei der Neuanmeldung generiert wird, indem aus dem Ergebnis eines Elliptic Curve Diffie-Hellman Prozesses unter Verwendung des in der autorisierten Vorrichtung
111 gespeicherten privaten Entsperrschlüssels und des öffentlichen Entsperrschlüssels212 ein symmetrischer Schlüssel abgeleitet wird. Der resultierende Schlüssel wird verwendet, um den Benutzerschlüssel221 zu verschlüsseln, aber nicht in der DSD100 gespeichert. Stattdessen wird er jedes Mal neu generiert, wenn eine autorisierte Vorrichtung die Entsperrung der DSD100 anfordert, wie oben beschrieben. - In einem weiteren Beispiel kann der private Entsperrschlüssel j in den vorstehenden Gleichungen durch ein Produkt des privaten Entsperrschlüssels durch einen aus einer Passphrase abgeleiteten Wert ersetzt werden. Der private Entsperrschlüssel wäre zwar noch im sicheren Hardwaremodul der autorisierten Vorrichtung gespeichert, der private Entsperrschlüssel allein wäre jedoch nicht in der Lage, die in der DSD
100 gespeicherten Benutzerinhaltsdaten zu entschlüsseln. Stattdessen muss der Benutzer die Passphrase eingeben, um die Antwort auf die Abfrage zu berechnen und diese Antwort zu senden327 . Dies würde einfach das vorstehende j durch das Produkt von j multipliziert mit dem Passphrasenwert ersetzen. Die DSD würde von dieser Änderung nichts mitbekommen, da das kurzlebige Entsperrgeheimnis223 aus Sicht der Zugriffssteuerung102 in gleicher Weise wie vorstehend generiert würde. - Registrierung und Neuanmeldung
- Es sei angemerkt, dass der in
2 gezeigte Datensatz201 gezeigt wird, nachdem die autorisierte Vorrichtung111 den Neuanmeldungsprozess abgeschlossen hat und die verschlüsselten Benutzerinhaltsdaten entschlüsseln darf. Wiederum gibt es insgesamt drei Schritte: Zuerst registriert die Managervorrichtung110 eine Benutzervorrichtung111 einmal als eine von mehreren autorisierten Vorrichtungen. Zweitens meldet sich die autorisierte Vorrichtung111 einmal erneut beim ersten Verbinden mit der Zugriffssteuerung102 an, um die Generierung der beteiligten Schlüssel abzuschließen. Drittens verbindet sich die autorisierte Vorrichtung111 anschließend mehrmals mit der Zugriffssteuerung102 , um die DSD100 zu entsperren. - Während des (ersten) Registrierungsszenarios, das von der Managervorrichtung
110 initiiert wird, empfängt die Zugriffssteuerung102 von der Managervorrichtung110 einen öffentlichen Schlüssel, der einem privaten Schlüssel entspricht, der in der Benutzervorrichtung111 gespeichert ist. Daraufhin erstellt die Zugriffssteuerung102 Autorisierungsdaten, die ähnlich dem Datensatz201 in2 sind, mit der Ausnahme, dass das Feld „Öffentlicher Entsperrschlüssel 212“ den öffentlichen Transportschlüssel209 (wie von der Managervorrichtung110 empfangen) enthält, da der öffentliche Entsperrschlüssel noch nicht generiert wurde. Die Zugriffssteuerung102 generiert den Vorautorisierungsschlüssel202 , der im Wesentlichen ein Index zum Auffinden des Datensatzes201 ist. Der Vorautorisierungsschlüssel202 wird durch eine Schlüsselgenerierungsfunktion unter Verwendung der x-Koordinate des empfangenen öffentlichen Transportschlüssels209 und eines Salt-Wertes generiert. Der Salt-Wert kann ein Slot-Schlüssel der autorisierten Vorrichtung sein, der ein 16-Byte-Pseudozufallswert sein kann, der während des „Inbesitznahme“-Prozesses generiert wird, in dem Konfigurationsspeicher115 gespeichert ist, und nicht mit der autorisierten Vorrichtung geteilt wird. Auf diese Weise kann der Salt nach jedem „Factory Reset“, Rücksetzen auf die Werkseinstellung, unterschiedlich sein, wie jedes Mal, wenn eine Managervorrichtung die DSD100 in Besitz nimmt. - Das Erstellen der Autorisierungsdaten, die im Datensatz
201 gespeichert sind, weist weiterhin das Generieren des Metadaten-Verpackungsschlüssels222 auf, beispielsweise durch Generieren eines 16-Byte-Pseudozufallswerts. Die Zugriffssteuerung102 speichert den Metadaten-Verpackungsschlüssel in Feld222 . Weiterhin generiert die Zugriffssteuerung102 das kurzlebige Entsperrgeheimnis223 und verschlüsselt die Rolle220 (z. B. „autorisierte Vorrichtung“), den Benutzerschlüssel221 und den neuen Metadaten-Verpackungsschlüssel222 mit dem kurzlebigen Entsperrgeheimnis223 . Dann generiert die Zugriffssteuerung102 aus dem kurzlebigen Entsperrgeheimnis223 einen kurzlebigen öffentlichen Schlüssel211 und verwirft das kurzlebige Entsperrgeheimnis223 . - Im Gegensatz zu
2 sind die Metadaten der autorisierten Vorrichtung205 nicht durch den neuen Metadaten-Verpackungsschlüssel verschlüsselt, sondern durch einen vorautorisierten Metadaten-Verpackungsschlüssel, da der tatsächliche Metadaten-Verpackungsschlüssel222 für die autorisierte Vorrichtung111 noch nicht verfügbar ist. Der vorautorisierte Metadaten-Verpackungsschlüssel kann auf dieser Stufe mit dem Vorautorisierungsschlüssel202 identisch sein oder separat generiert werden. Es sei angemerkt, dass der vorautorisierte Metadaten-Verpackungsschlüssel, der nun die Metadaten der autorisierten Vorrichtung205 verschlüsselt, nur durch die Zugriffssteuerung102 generiert und nicht durch die autorisierte Vorrichtung111 bereitgestellt werden kann, da die autorisierte Vorrichtung111 keinen Zugriff auf den Slot-Schlüssel der autorisierten Vorrichtung hat, der verwendet wird, um den vorautorisierten Metadaten-Verpackungsschlüssel zu generieren. - Wenn sich die autorisierte Vorrichtung
111 erstmals mit der Zugriffssteuerung102 verbindet, sendet die autorisierte Vorrichtung111 ihren öffentlichen Transportschlüssel somit an die Zugriffssteuerung102 . Die Zugriffssteuerung102 verwendet den öffentlichen Transportschlüssel und den gespeicherten Slot-Schlüssel der autorisierten Vorrichtung, um den Vorautorisierungsschlüssel202 zu generieren. Die Zugriffssteuerung102 kann dann im Konfigurationsspeicher115 nach dem Vorautorisierungsschlüssel202 suchen, um den Datensatz201 abzurufen. Die Zugriffssteuerung102 kann auch den Vorautorisierungsschlüssel als den Vorautorisierungs-Metadaten-Verpackungsschlüssel verwenden, um die Metadaten der autorisierten Vorrichtung205 zu entschlüsseln. - Wie oben beschrieben, generiert die Zugriffssteuerung
102 eine Abfrage unter Verwendung des öffentlichen Schlüssels211 und eines Entsperr-Verblendungsschlüssels. Die Zugriffssteuerung102 erstellt dann aus der Antwort das kurzlebige Entsperrgeheimnis223 . Es sei angemerkt, dass nur die autorisierte Vorrichtung111 mit dem privaten Schlüssel, der dem öffentlichen Transportschlüssel209 entspricht, eine gültige Antwort erstellen kann. Dies bedeutet, dass selbst wenn ein Angreifer den Konfigurationsspeicher115 demontiert und den Slot-Schlüssel der autorisierten Vorrichtung liest, um den Vorautorisierungs-Metadaten-Verpackungsschlüssel zu generieren, um den kurzlebigen öffentlichen Schlüssel211 zu entschlüsseln, der Angreifer noch immer nicht in der Lage wäre, das kurzlebige Entsperrgeheimnis223 zu generieren. - Die Zugriffssteuerung
102 validiert die Antwort, indem sie prüft, ob die Antwort als kurzlebiges Entsperrgeheimnis223 funktioniert, und aktualisiert als Antwort die Autorisierungsdaten im Datensatz201 . Insbesondere überprüft die Zugriffssteuerung102 , ob das Feld212b für den öffentlichen Entsperrschlüssel identisch mit dem öffentlichen Transportschlüssel209 ist. Als Reaktion darauf, dass beide identisch sind (wie oben ausgeführt), fordert die Zugriffssteuerung102 einen neuen öffentlichen Entsperrschlüssel von der autorisierten Vorrichtung111 an und speichert den zurückgegebenen Schlüssel als öffentlichen Entsperrschlüssel212 . - Die Zugriffssteuerung entschlüsselt weiterhin den Metadaten-Verpackungsschlüssel
222 , der während der Registrierung durch die Managervorrichtung110 generiert wurde. In diesem Stadium kann die Zugriffssteuerung102 das kurzlebige Entsperrgeheimnis223 regenerieren, die Rolle220 verschlüsseln, den Benutzerschlüssel221 und den Metadaten-Verpackungsschlüssel222 verschlüsseln, den kurzlebigen öffentlichen Schlüssel211 regenerieren und speichern und das kurzlebige Entsperrgeheimnis223 verwerfen. Schließlich verschlüsselt die Zugriffssteuerung die Metadaten der autorisierten Vorrichtung205 mit dem Metadaten-Verpackungschlüssel222 und überschreibt den Vorautorisierungsschlüssel202 mit Zufallswerten, um den Konfigurationsspeicher115 auch bei Besitz des öffentlichen Transportschlüssels und/oder des öffentlichen Entsperrschlüssels von Zufallsdaten ununterscheidbar zu machen. Damit sind die Aktualisierung der im Datensatz201 gespeicherten Autorisierungsdaten und der Registrierungsprozess abgeschlossen. Dadurch wird es der autorisierten Vorrichtung111 als einer von mehreren autorisierten Vorrichtungen erlaubt, die verschlüsselten Benutzerinhaltsdaten durch die vorstehend dargelegten Entsperrschritte zu entschlüsseln. - Der vorstehend beschriebene Prozess, der das Erstellen und Aktualisieren von Autorisierungsdaten beinhaltet, ermöglichen die Registrierung mehrerer autorisierter Vorrichtungen unter Verwendung nur ihrer öffentlichen Schlüssel während des ersten Schritts der Registrierung durch die Managervorrichtung
110 . Auf diese Weise müssen keine geheimen Informationen geteilt werden, die möglicherweise abgefangen und zum böswilligen Entsperren anderer Vorrichtungen des Benutzers verwendet werden könnten. -
5 veranschaulicht ein Verfahren500 zum Autorisieren einer Benutzervorrichtung111 mit einer Datenspeichervorrichtung100 , wie es von der Zugriffssteuerung102 oder einem anderen Chip (Software, Firmware, Hardware oder einer Kombination davon), der in die DSD100 integriert ist, gemäß einer Ausführungsform durchgeführt wird. Die Zugriffssteuerung102 empfängt 501 von der Managervorrichtung110 einen öffentlichen Schlüssel, der einem privaten Schlüssel zugeordnet ist, der auf der Benutzervorrichtung111 gespeichert ist, die autorisiert werden soll. Die Zugriffssteuerung102 erstellt 502 Autorisierungsdaten und speichert 503 die Autorisierungsdaten unter Zuordnung zu dem öffentlichen Schlüssel im Konfigurationsspeicher115 , wodurch die Benutzervorrichtung111 als eine der mehreren autorisierten Vorrichtungen registriert wird. Es kann auch ein Neuanmeldungsprozess vorliegen, bei dem die DSD100 eine Angabe des öffentlichen Schlüssels von der einen der mehreren autorisierten Vorrichtungen111 empfängt, eine Abfrage für die eine der mehreren autorisierten Vorrichtungen basierend auf den Autorisierungsdaten generiert und die Abfrage an die eine der mehreren autorisierten Vorrichtungen sendet. Die Zugriffssteuerung102 empfängt dann eine Antwort auf die Abfrage von der einen der mehreren autorisierten Vorrichtungen und aktualisiert bei Validierung der Antwort die Autorisierungsdaten, die in dem Konfigurationsspeicher115 gespeichert sind, wodurch es der einen der mehreren autorisierten Vorrichtungen erlaubt wird, die verschlüsselten Benutzerinhaltsdaten zu entschlüsseln. - Registrieren der Datenspeichervorrichtung
- Der Datenanschluss
103 registriert sich bei dem Host-Computersystem104 als Blockdatenspeichervorrichtung. Zum Beispiel stellen Universal Serial Bus-Vorrichtungen (USB-Vorrichtungen) Informationen in Form eines USB-Vorrichtungsdeskriptors bereit. Der USB-Vorrichtungsdeskriptor enthält relevante Informationen über die Vorrichtung. Dementsprechend registriert sich in Ausführungsformen, in denen die Datenspeichervorrichtung über eine USB-Verbindung mit einem Host-Computersystem verbunden ist, die Datenspeichervorrichtung bei dem Host-Computersystem als Blockdatenspeichervorrichtung durch Konfigurieren ihres USB-Vorrichtungsdeskriptors, um anzugeben, dass die Datenspeichervorrichtung eine Blockdatenspeichervorrichtung ist. - Der USB-Vorrichtungsdeskriptor stellt strukturierte Informationen in Bezug auf die USB-Vorrichtung, wie beispielsweise die Klasse der Vorrichtung, unterstützte Protokolle, Art der Vorrichtung, Hersteller und andere Konfigurationsparameter, bereit. Ein Betriebssystem eines Host-Computers kann den USB-Vorrichtungsdeskriptor der Datenspeichervorrichtung durch Senden verschiedener Standardsteueranforderungen (z. B. GET_DESCRIPTOR-Anforderungen) an die Datenspeichervorrichtung erhalten. Als Antwort auf das Empfangen dieser Anforderungen stellt die Datenspeichervorrichtung dem Host-Computersystem den USB_DEVICE_DESCRIPTOR für USB-Vorrichtung, bereit, wodurch die Datenspeichervorrichtung bei dem Host-Computersystem als Blockdatenspeichervorrichtung registriert wird. Der Host-Computer interpretiert den USB_DEVICE_DESCRIPTOR, um die Konfiguration und Fähigkeiten der Datenspeichervorrichtung zu bestimmen. Das Host-Computersystem kann dann Informationen bezüglich der Datenspeichervorrichtung in den Registern des Betriebssystems des Host-Computersystems speichern.
- Für Fachleute ist erkennbar, dass zahlreiche Variationen und/oder Modifikationen an den vorstehend beschriebenen Ausführungsformen vorgenommen werden können, ohne vom weitgefassten allgemeinen Umfang der vorliegenden Offenbarung abzuweichen. Die vorliegenden Ausführungsformen sind daher in jeder Hinsicht nur als veranschaulichend und nicht als einschränkend zu betrachten.
Claims (20)
- Datenspeichervorrichtung, die einen Datenpfad und eine Zugriffssteuerung aufweist, wobei: der Datenpfad aufweist: einen Datenport, der eingerichtet ist, um Daten zwischen einem Host-Computersystem und der Datenspeichervorrichtung zu übertragen, wobei die Datenspeichervorrichtung eingerichtet ist, um sich bei dem Host-Computersystem als eine Blockdatenspeichervorrichtung zu registrieren; ein nichtflüchtiges Speichermedium, das dazu konfiguriert ist, verschlüsselte Benutzerinhaltsdaten zu speichern; eine Kryptographiemaschine, die zwischen den Datenanschluss und das Speichermedium geschaltet ist und dazu konfiguriert ist, einen kryptographischen Schlüssel zu verwenden, um die verschlüsselten Benutzerinhaltsdaten, die in dem Speichermedium gespeichert sind, als Antwort auf eine Anforderung von dem Host-Computersystem zu entschlüsseln; und einen Datenspeicher, der eingerichtet ist, um mehrere Einträge zu speichern, die Autorisierungsdaten aufweisen, die jeweiligen mehreren autorisierten Vorrichtungen zugeordnet sind; und die Steuerung konfiguriert ist zum: Empfangen eines öffentlichen Schlüssels von einer Managervorrichtung, wobei der öffentliche Schlüssel einem privaten Schlüssel zugeordnet ist, der in einer zu autorisierenden Vorrichtung gespeichert ist; Erstellen der Autorisierungsdaten; und Speichern der Autorisierungsdaten unter Zuordnung zu dem öffentlichen Schlüssel in dem Datenspeicher, wodurch die zu autorisierende Vorrichtung als eine der mehreren autorisierten Vorrichtungen registriert wird.
- Datenspeichervorrichtung gemäß
Anspruch 1 , wobei die Zugriffssteuerung weiterhin eingerichtet ist zum: Empfangen einer Angabe des öffentlichen Schlüssels von der einen der mehreren autorisierten Vorrichtungen; Generieren einer Abfrage basierend auf den Autorisierungsdaten; Senden der Abfrage an die eine der mehreren autorisierten Vorrichtungen; Empfangen einer Antwort auf die Abfrage von der einen der mehreren autorisierten Vorrichtungen; und nach Validierung der Antwort Aktualisieren der Autorisierungsdaten, die im Datenspeicher gespeichert sind, wodurch es der einen der mehreren autorisierten Vorrichtungen erlaubt wird, die verschlüsselten Benutzerinhaltsdaten zu entschlüsseln. - Datenspeichervorrichtung gemäß
Anspruch 1 , wobei das Speichern der Autorisierungsdaten das Generieren eines Index der Autorisierungsdaten basierend auf dem öffentlichen Schlüssel aufweist. - Datenspeichervorrichtung gemäß
Anspruch 3 , wobei der Index der Autorisierungsdaten auf einem privaten Schlüssel basiert, der im Datenspeicher gespeichert ist. - Datenspeichervorrichtung gemäß
Anspruch 4 , wobei der private Schlüssel, der in dem Datenspeicher gespeichert ist, für jede der mehreren autorisierten Vorrichtungen identisch ist. - Datenspeichervorrichtung gemäß
Anspruch 1 , wobei die Autorisierungsdaten für jede der mehreren autorisierten Vorrichtungen angeben: einen öffentlichen Transportschlüssel zum Transportieren von Daten zwischen der Zugriffssteuerung und der autorisierten Vorrichtung; und einen öffentlichen Entsperrschlüssel zum Generieren der Abfrage für diese autorisierte Vorrichtung. - Datenspeichervorrichtung gemäß
Anspruch 1 , wobei: die Autorisierungsdaten einen ersten öffentlichen Schlüssel und einen zweiten öffentlichen Schlüssel angeben; und die Zugriffssteuerung dazu eingerichtet ist, die Autorisierungsdaten basierend darauf, dass der erste öffentliche Schlüssel mit dem zweiten öffentlichen Schlüssel identisch ist, selektiv zu aktualisieren. - Datenspeichervorrichtung gemäß
Anspruch 1 , wobei die mehreren autorisierten Vorrichtungen eines oder mehrere von einer Benutzervorrichtung mit einer Benutzerschnittstelle, einem Beacon ohne Benutzerschnittstelle und einem Schlüsselanhänger ohne Benutzerschnittstelle aufweisen. - Datenspeichervorrichtung gemäß
Anspruch 1 , wobei der öffentliche Schlüssel von der Vorrichtung, die autorisiert werden soll, an die Managervorrichtung übermittelt wird. - Datenspeichervorrichtung gemäß
Anspruch 9 , wobei die Übermittlung des öffentlichen Schlüssels von der Vorrichtung, die autorisiert werden soll, an die Managervorrichtung über einen unsicheren Kanal erfolgt. - Datenspeichervorrichtung gemäß
Anspruch 1 , wobei: die Autorisierungsdaten für jede der mehreren autorisierten Vorrichtungen den kryptografischen Schlüssel angeben; und der kryptographische Schlüssel für jede der mehreren autorisierten Vorrichtungen identisch ist. - Datenspeichervorrichtung gemäß
Anspruch 11 , wobei der kryptografische Schlüssel unter Verwendung eines Entsperrgeheimnisses, das für jede der mehreren autorisierten Vorrichtungen spezifisch ist, verschlüsselt wird. - Datenspeichervorrichtung gemäß
Anspruch 12 , wobei die Zugriffssteuerung dazu eingerichtet ist, das Entsperrgeheimnis basierend auf einer Antwort von einer der mehreren autorisierten Vorrichtungen auf eine Abfrage zu berechnen, die basierend auf dem öffentlichen Schlüssel generiert wird, der der einen der mehreren autorisierten Vorrichtungen zugeordnet ist. - Datenspeichervorrichtung gemäß
Anspruch 1 , wobei die Autorisierungsdaten Metadaten der autorisierten Vorrichtung aufweisen, die durch einen vorautorisierten Metadaten-Verpackungsschlüssel verschlüsselt sind, der von dem öffentlichen Schlüssel abgeleitet werden kann. - Datenspeichervorrichtung gemäß
Anspruch 14 , wobei der vorautorisierte Metadaten-Verpackungsschlüssel aus dem öffentlichen Schlüssel über eine Schlüsselableitungsfunktion unter Verwendung eines privaten Schlüssels ableitbar ist, der in dem Datenspeicher gespeichert ist. - Datenspeichervorrichtung gemäß
Anspruch 1 , wobei die Autorisierungsdaten einen Metadaten-Verpackungsschlüssel zum Verschlüsseln der Metadaten der autorisierten Vorrichtung umfassen. - Datenspeichervorrichtung gemäß
Anspruch 16 , wobei der vorautorisierte Metadaten-Verpackungsschlüssel ein symmetrischer Schlüssel ist. - Verfahren zum Autorisieren einer Benutzervorrichtung in Bezug auf eine Datenspeichervorrichtung, wobei das Verfahren aufweist: Empfangen eines öffentlichen Schlüssels von einer Managervorrichtung, wobei der öffentliche Schlüssel einem privaten Schlüssel zugeordnet ist, der in einer zu autorisierenden Vorrichtung gespeichert ist; Erstellen von Autorisierungsdaten; und Speichern der Autorisierungsdaten, die dem öffentlichen Schlüssel zugeordnet sind, in einem Datenspeicher, der in die Datenspeichervorrichtung integriert ist, wodurch die Vorrichtung, die autorisiert werden soll, als eine von mehreren autorisierten Vorrichtungen registriert wird.
- Verfahren gemäß
Anspruch 18 , weiterhin aufweisend: Empfangen einer Angabe des öffentlichen Schlüssels von der einen der mehreren autorisierten Vorrichtungen; Generieren einer Abfrage basierend auf den Autorisierungsdaten; Senden der Abfrage an die eine der mehreren autorisierten Vorrichtungen; Empfangen einer Antwort auf die Abfrage von der einen der mehreren autorisierten Vorrichtungen; und nach Validierung der Antwort Aktualisieren der Autorisierungsdaten, die in dem Datenspeicher gespeichert sind, wodurch es der einen der mehreren autorisierten Vorrichtungen erlaubt wird, verschlüsselte Benutzerinhaltsdaten, die auf der Datenspeichervorrichtung gespeichert sind, zu entschlüsseln. - Datenspeichervorrichtung, aufweisend: Mittel zum Empfangen eines öffentlichen Schlüssels von einer Managervorrichtung, wobei der öffentliche Schlüssel einem privaten Schlüssel zugeordnet ist, der in einer zu autorisierenden Vorrichtung gespeichert ist; Mittel zum Erstellen von Autorisierungsdaten; und Mittel zum Speichern der Autorisierungsdaten unter Zuordnung zu dem öffentlichen Schlüssel in einem Datenspeicher, der in die Datenspeichervorrichtung integriert ist, wodurch die zu autorisierende Vorrichtung als eine von mehreren autorisierten Vorrichtungen registriert wird.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/706,797 | 2019-12-08 | ||
US16/706,797 US11366933B2 (en) | 2019-12-08 | 2019-12-08 | Multi-device unlocking of a data storage device |
PCT/US2020/039715 WO2021118642A1 (en) | 2019-12-08 | 2020-06-26 | Multi-device unlocking of a data storage device |
Publications (1)
Publication Number | Publication Date |
---|---|
DE112020000180T5 true DE112020000180T5 (de) | 2021-09-02 |
Family
ID=76209715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112020000180.6T Pending DE112020000180T5 (de) | 2019-12-08 | 2020-06-26 | Mehrvorrichtungsentsperrung einer datenspeichervorrichtung |
Country Status (4)
Country | Link |
---|---|
US (1) | US11366933B2 (de) |
CN (1) | CN113260992B (de) |
DE (1) | DE112020000180T5 (de) |
WO (1) | WO2021118642A1 (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI763294B (zh) * | 2021-02-03 | 2022-05-01 | 宜鼎國際股份有限公司 | 可數位簽章的資料儲存裝置、數位簽章系統及數位簽章方法 |
US12069060B2 (en) * | 2021-06-28 | 2024-08-20 | SanDisk Technologies, Inc. | Remote registration of a data storage device with biometric authentication |
US11741214B2 (en) * | 2021-06-29 | 2023-08-29 | Western Digital Technologies, Inc. | Passcode authentication based data storage device |
US12118103B2 (en) | 2022-03-08 | 2024-10-15 | SanDisk Technologies, Inc. | Certificates in data storage devices |
US12101418B2 (en) * | 2022-03-08 | 2024-09-24 | SanDisk Technologies, Inc. | Cryptographic keys for authorization requests from a data storage device |
Family Cites Families (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6131090A (en) | 1997-03-04 | 2000-10-10 | Pitney Bowes Inc. | Method and system for providing controlled access to information stored on a portable recording medium |
US5978475A (en) | 1997-07-18 | 1999-11-02 | Counterpane Internet Security, Inc. | Event auditing system |
US20020023213A1 (en) | 2000-06-12 | 2002-02-21 | Tia Walker | Encryption system that dynamically locates keys |
US6901512B2 (en) | 2000-12-12 | 2005-05-31 | Hewlett-Packard Development Company, L.P. | Centralized cryptographic key administration scheme for enabling secure context-free application operation |
US7380120B1 (en) | 2001-12-12 | 2008-05-27 | Guardian Data Storage, Llc | Secured data format for access control |
US6820176B2 (en) * | 2002-05-02 | 2004-11-16 | International Business Machines Corporation | System, method, and computer program product for reducing overhead associated with software lock monitoring |
US20040054901A1 (en) | 2002-09-17 | 2004-03-18 | Microsoft Corporation | Creating and verifying a sequence of consecutive data |
JP2004201038A (ja) | 2002-12-18 | 2004-07-15 | Internatl Business Mach Corp <Ibm> | データ記憶装置、これを搭載した情報処理装置及びそのデータ処理方法並びにプログラム |
US7215778B2 (en) | 2003-03-31 | 2007-05-08 | Intel Corporation | Encrypted content recovery |
US20050114686A1 (en) | 2003-11-21 | 2005-05-26 | International Business Machines Corporation | System and method for multiple users to securely access encrypted data on computer system |
US20050210247A1 (en) | 2004-03-18 | 2005-09-22 | Ong Peng T | Method of virtual challenge response authentication |
US8166296B2 (en) | 2004-10-20 | 2012-04-24 | Broadcom Corporation | User authentication system |
US8335920B2 (en) * | 2005-07-14 | 2012-12-18 | Imation Corp. | Recovery of data access for a locked secure storage device |
CN101233469B (zh) * | 2005-07-21 | 2013-06-05 | 克莱夫公司 | 存储器加锁系统 |
WO2007087340A1 (en) | 2006-01-24 | 2007-08-02 | Clevx, Llc | Data security system |
US7877603B2 (en) | 2006-09-07 | 2011-01-25 | International Business Machines Corporation | Configuring a storage drive to communicate with encryption and key managers |
US7762553B2 (en) | 2006-11-25 | 2010-07-27 | Harris Curtis J | Form-fitting electronic game controller cover |
US20080219449A1 (en) | 2007-03-09 | 2008-09-11 | Ball Matthew V | Cryptographic key management for stored data |
US8111828B2 (en) | 2007-07-31 | 2012-02-07 | Hewlett-Packard Development Company, L.P. | Management of cryptographic keys for securing stored data |
US10783232B2 (en) | 2007-09-27 | 2020-09-22 | Clevx, Llc | Management system for self-encrypting managed devices with embedded wireless user authentication |
US10778417B2 (en) | 2007-09-27 | 2020-09-15 | Clevx, Llc | Self-encrypting module with embedded wireless user authentication |
US10181055B2 (en) | 2007-09-27 | 2019-01-15 | Clevx, Llc | Data security system with encryption |
TWI537732B (zh) | 2007-09-27 | 2016-06-11 | 克萊夫公司 | 加密之資料保全系統 |
US8312269B2 (en) | 2007-11-28 | 2012-11-13 | Hitachi Global Storage Technologies Netherlands, B.V. | Challenge and response access control providing data security in data storage devices |
US20090296926A1 (en) | 2008-06-02 | 2009-12-03 | Sun Microsystems, Inc. | Key management using derived keys |
US20100122327A1 (en) | 2008-11-10 | 2010-05-13 | Apple Inc. | Secure authentication for accessing remote resources |
US20100174913A1 (en) | 2009-01-03 | 2010-07-08 | Johnson Simon B | Multi-factor authentication system for encryption key storage and method of operation therefor |
US9286493B2 (en) | 2009-01-07 | 2016-03-15 | Clevx, Llc | Encryption bridge system and method of operation thereof |
US9734356B2 (en) | 2009-06-29 | 2017-08-15 | Clevx, Llc | Encrypting portable media system and method of operation thereof |
US8949566B2 (en) * | 2010-12-02 | 2015-02-03 | International Business Machines Corporation | Locking access to data storage shared by a plurality of compute nodes |
US9881301B2 (en) | 2012-04-27 | 2018-01-30 | Google Llc | Conversion tracking of a user across multiple devices |
US8712044B2 (en) | 2012-06-29 | 2014-04-29 | Dark Matter Labs Inc. | Key management system |
US10079678B2 (en) | 2012-07-24 | 2018-09-18 | Intel Corporation | Providing access to encrypted data |
US9106412B2 (en) | 2013-03-08 | 2015-08-11 | Mcafee, Inc. | Data protection using programmatically generated key pairs from a master key and a descriptor |
US9690916B2 (en) | 2013-11-05 | 2017-06-27 | Sunasic Technologies Inc. | Multi-function identification system and operation method thereof |
EP4027576B1 (de) * | 2014-01-13 | 2023-11-22 | Visa International Service Association | Effizientes verfahren zum schutz der identität in authentifizierten übertragungen |
US9998914B2 (en) | 2014-04-16 | 2018-06-12 | Jamf Software, Llc | Using a mobile device to restrict focus and perform operations at another mobile device |
CN106797311B (zh) * | 2014-08-29 | 2020-07-14 | 维萨国际服务协会 | 用于安全密码生成的系统、方法和存储介质 |
DE102014113430A1 (de) | 2014-09-17 | 2016-03-17 | Bundesdruckerei Gmbh | Verteilte Datenspeicherung mittels Berechtigungstoken |
US20160142387A1 (en) * | 2014-11-14 | 2016-05-19 | Microsoft Technology Licensing, Llc. | Storage for encrypted data with enhanced security |
US20160149711A1 (en) | 2014-11-24 | 2016-05-26 | Wyzr Limited | Distributed identification system for peer to peer message transmission |
US9455963B1 (en) | 2014-12-18 | 2016-09-27 | Amazon Technologies, Inc. | Long term encrypted storage and key management |
SG10201601937TA (en) | 2015-03-12 | 2016-10-28 | 18 Degrees Lab Pte Ltd | Method and system for facilitating authentication |
US9762548B2 (en) | 2015-03-13 | 2017-09-12 | Western Digital Technologies, Inc. | Controlling encrypted data stored on a remote storage device |
US10826712B2 (en) | 2015-06-30 | 2020-11-03 | Visa International Service Association | Confidential authentication and provisioning |
US10154020B1 (en) | 2015-07-08 | 2018-12-11 | Clevx, Llc | Referral identity system and method of operation thereof |
US9864878B2 (en) | 2015-07-27 | 2018-01-09 | International Business Machines Corporation | Event log tamper detection |
US10318193B2 (en) | 2015-09-14 | 2019-06-11 | Sandisk Technologies Llc | Systems and methods of command authorization |
US9852300B2 (en) | 2015-09-25 | 2017-12-26 | Saife, Inc. | Secure audit logging |
US10355858B2 (en) | 2016-03-30 | 2019-07-16 | Intel Corporation | Authenticating a system to enable access to a diagnostic interface in a storage device |
CN110166246B (zh) | 2016-03-30 | 2022-07-08 | 创新先进技术有限公司 | 基于生物特征的身份注册、认证的方法和装置 |
US10776502B2 (en) | 2016-06-12 | 2020-09-15 | Apple Inc. | Diversification of public keys |
US10574648B2 (en) | 2016-12-22 | 2020-02-25 | Dashlane SAS | Methods and systems for user authentication |
US10965474B1 (en) | 2017-02-27 | 2021-03-30 | Apple Inc. | Modifying security state with highly secured devices |
US12111944B2 (en) * | 2017-03-16 | 2024-10-08 | Jun Yu | Method and system for policy based real time data file access control |
US10432397B2 (en) | 2017-05-03 | 2019-10-01 | Dashlane SAS | Master password reset in a zero-knowledge architecture |
AU2018340671B2 (en) | 2017-09-29 | 2023-12-21 | Workjam Inc. | Access to secured information |
US10439812B2 (en) | 2018-02-02 | 2019-10-08 | SquareLink, Inc. | Technologies for private key recovery in distributed ledger systems |
US11700117B2 (en) | 2018-03-27 | 2023-07-11 | Workday, Inc. | System for credential storage and verification |
US20190303603A1 (en) | 2018-04-03 | 2019-10-03 | Seagate Technology Llc | Location-based security of storage drives |
US10785028B2 (en) | 2018-06-29 | 2020-09-22 | Intel Corporation | Protection of keys and sensitive data from attack within microprocessor architecture |
US20200320622A1 (en) | 2019-04-05 | 2020-10-08 | Secude Ag | Method and system for processing and documenting digital transactions |
US11271751B2 (en) | 2019-06-21 | 2022-03-08 | Oracle International Corporation | Distributed data records |
US11153100B2 (en) | 2019-11-18 | 2021-10-19 | Microsoft Technology Licensing, Llc | Achieving certificate pinning security in reduced trust networks |
-
2019
- 2019-12-08 US US16/706,797 patent/US11366933B2/en active Active
-
2020
- 2020-06-26 WO PCT/US2020/039715 patent/WO2021118642A1/en active Application Filing
- 2020-06-26 CN CN202080007095.3A patent/CN113260992B/zh active Active
- 2020-06-26 DE DE112020000180.6T patent/DE112020000180T5/de active Pending
Also Published As
Publication number | Publication date |
---|---|
CN113260992B (zh) | 2024-09-27 |
WO2021118642A1 (en) | 2021-06-17 |
CN113260992A (zh) | 2021-08-13 |
US20210173944A1 (en) | 2021-06-10 |
US11366933B2 (en) | 2022-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112020000269T5 (de) | Ferngewährung des zugangs zu einer gesperrten datenspeichervorrichtung | |
DE112020000238T5 (de) | Wiederherstellungsschlüssel zum entriegeln einer datenspeicherungsvorrichtung | |
DE112020000180T5 (de) | Mehrvorrichtungsentsperrung einer datenspeichervorrichtung | |
DE112020000236T5 (de) | Mehrrollenentsperrung einer datenspeicherungsvorrichtung | |
DE112020000244T5 (de) | Initialisierung einer Datenspeicherungsvorrichtung mit einer Managervorrichtung | |
DE112020000179T5 (de) | Entsperren einer datenspeicherungsvorrichtung | |
DE102014204713A1 (de) | Erzeugung von Schlüsseln unter Verwendung sicherer Hardware | |
DE102016226311A1 (de) | Authentifizierung eines lokalen gerätes | |
DE102017205948A1 (de) | Nachrichtenauthentifizierung mit sicherer Codeverifikation | |
DE112008001436T5 (de) | Sichere Kommunikation | |
DE112020000235T5 (de) | Anmeldung einer vorautorisierten vorrichtung | |
DE112020000234T5 (de) | Drahtlos-sicherheitsprotokoll | |
DE112008003931T5 (de) | Systeme und Verfahren für Datensicherheit | |
CN103561034A (zh) | 一种安全文件共享系统 | |
DE112020000268T5 (de) | Sichere protokollierung von ereignissen der datenspeicherungsvorrichtungen | |
CN106575342A (zh) | 包括关系数据库的内核程序、以及用于执行所述程序的方法和装置 | |
DE102012219618A1 (de) | Verfahren zur Erzeugung eines Soft-Tokens, Computerprogrammprodukt und Dienst-Computersystem | |
CN109379360B (zh) | 审计方法、电子装置及计算机可读存储介质 | |
EP3699791A1 (de) | Zugangskontrolle mit einem mobilfunkgerät | |
DE102016200003A1 (de) | Zugriffskontrolle mittels Authentisierungsserver | |
EP3321832B1 (de) | Verteilen zum lesen von attributen aus einem id-token | |
WO2015074745A1 (de) | Verfahren, vorrichtungen und system zur online-datensicherung | |
DE112021000149T5 (de) | Verschlüsselung einer datenspeicherungsvorrichtung | |
DE102016207339A1 (de) | Verfahren zur sicheren Interaktion eines Nutzers mit einem mobilen Endgerät und einer weiteren Instanz | |
EP2880810B1 (de) | Authentifizierung eines dokuments gegenüber einem lesegerät |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R082 | Change of representative |
Representative=s name: MURGITROYD GERMANY PATENTANWALTSGESELLSCHAFT M, DE Representative=s name: MEWBURN ELLIS LLP, DE |
|
R082 | Change of representative |
Representative=s name: MURGITROYD GERMANY PATENTANWALTSGESELLSCHAFT M, DE |
|
R081 | Change of applicant/patentee |
Owner name: SANDISK TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US Free format text: FORMER OWNER: WESTERN DIGITAL TECHNOLOGIES, INC., SAN JOSE, CA, US Owner name: SANDISK TECHNOLOGIES, INC. (N.D.GES. D. STAATE, US Free format text: FORMER OWNER: WESTERN DIGITAL TECHNOLOGIES, INC., SAN JOSE, CA, US |
|
R081 | Change of applicant/patentee |
Owner name: SANDISK TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US Free format text: FORMER OWNER: SANDISK TECHNOLOGIES, INC. (N.D.GES. D. STAATES DELAWARE), MILPITAS, CA, US |