DE102014112329A1 - Concentration of virtual tapes for self-encrypting drive facilities - Google Patents

Concentration of virtual tapes for self-encrypting drive facilities Download PDF

Info

Publication number
DE102014112329A1
DE102014112329A1 DE102014112329.8A DE102014112329A DE102014112329A1 DE 102014112329 A1 DE102014112329 A1 DE 102014112329A1 DE 102014112329 A DE102014112329 A DE 102014112329A DE 102014112329 A1 DE102014112329 A1 DE 102014112329A1
Authority
DE
Germany
Prior art keywords
virtual
bands
real
key
tapes
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.)
Withdrawn
Application number
DE102014112329.8A
Other languages
German (de)
Inventor
Jeremy Werner
Leonid Baryudin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LSI Corp
Original Assignee
LSI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US14/033,753 external-priority patent/US9117086B2/en
Application filed by LSI Corp filed Critical LSI Corp
Publication of DE102014112329A1 publication Critical patent/DE102014112329A1/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • G06F12/1475Key-lock mechanism in a virtual system, e.g. with translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)

Abstract

Eine Vorrichtung umfasst eine Speichereinrichtung und eine Hosteinrichtung. Die Speichereinrichtung kann dazu ausgelegt sein, Nutzerdaten während Schreibe- und Lesevorgängen zu verschlüsseln und zu entschlüsseln, respektive. Die Hosteinrichtung ist mit der Speichereinrichtung kommunikativ gekoppelt. Die Hosteinrichtung kann dazu ausgelegt sein, die Schreibe- und Lesevorgänge durch Konzentrieren einer ersten Anzahl von virtuellen Bändern in eine zweite Anzahl von realen Bändern auszuführen, wobei die zweite Anzahl kleiner als die erste Anzahl ist.An apparatus comprises a memory device and a host device. The storage device may be configured to encrypt and decrypt user data during write and read operations, respectively. The host device is communicatively coupled to the memory device. The host device may be configured to perform the write and read operations by concentrating a first number of virtual bands into a second number of real bands, the second number being less than the first number.

Description

Diese Anmeldung bezieht sich auf die am 28. August 2013 eingereichte US-Provisional Anmeldung Nr. 61/870,936, die hiermit in ihrer Gesamtheit durch Verweis aufgenommen ist.This application is related to U.S. Provisional Application No. 61 / 870,936, filed Aug. 28, 2013, which is hereby incorporated by reference in its entirety.

TECHNISCHES GEBIET DER ERFINDUNGTECHNICAL FIELD OF THE INVENTION

Die Erfindung bezieht sich auf Speichersysteme im Allgemeinen und insbesondere auf ein Verfahren und/oder eine Vorrichtung zum Implementieren einer Konzentrierung von virtuellen Bändern für selbstverschlüsselnde Laufwerk-Einrichtungen.The invention relates to memory systems in general, and more particularly to a method and / or apparatus for implementing a concentration of virtual tapes for self-encrypting drive devices.

HINTERGRUNDBACKGROUND

Selbst-verschlüsselnde Laufwerke (SEDs, self encrypting drives) verwenden normalerweise Hardware, um Nutzerdaten während Schreib- und Lesevorgängen zu verschlüsseln und zu entschlüsseln, respektive. Die Verschlüsselung und Entschlüsselung werden unter Verwendung eines Medien-Kodierungsschlüssels (MEK, media encryption key) durchgeführt. Der MEK ist normalerweise eine Funktion von einer logischen Blockadresse (LBA, logical block address), wobei ein gesamter LBA-Raum in mehrere LBA-Bereiche (die als „Datenbänder“ oder einfach „Bänder“ bezeichnet werden), mit einem einzigartigen MEK für jedes Band unterteilt wird. Aufgrund von Hardwarebeschränkungen ist die Anzahl der Bänder, die eine SED ohne ernsthafte Degradation der Leistungsfähigkeit bzw. Performanz unterstützen kann, begrenzt (16 wäre eine sinnvoll hohe Anzahl). Wenn man mehr aktive Bänder als die Anzahl der durch Hardware unterstützten LBA-Bereiche hat, so hat dies aufgrund von fortwährendem Schlüsseltausch (key swapping) einen negativen Einfluss auf die Performanz. Aus einer Perspektive eines Hosts in einer traditionellen Implementierung müssen Nutzerdaten, auf die der Host eine Zugangssteuerung unter einem einzigen Authentifizierungsschlüssel (AK, authentication key) hat, in einem einzigen LBA-Bereich zusammenhängend gespeichert werden. Der einzige LBA-Bereich oder Band-Begrenzungen machen es für einige Arten von Anwendungen (wie virtuelle Maschinen (VMs, virtual machines)) schwierig, um von dem Einsatz von SEDs in vollem Umfang zu profitieren, weil VMs viele (möglicherweise tausende) Bänder benötigen könnten, um eine flexiblere und effizientere Nutzung der Speichereinrichtung zu ermöglichen. Self-encrypting drives (SEDs) typically use hardware to encrypt and decrypt user data during read-write operations. Encryption and decryption are performed using a media encryption key (MEK). The MEK is normally a function of a logical block address (LBA), with an entire LBA space in several LBA areas (referred to as "data bands" or simply "bands"), with a unique MEK for each Band is divided. Due to hardware limitations, the number of tapes an SED can support without serious degradation in performance is limited (16 would be a reasonably high number). Having more active bands than the number of hardware supported LBA areas has a negative impact on performance due to continued key swapping. From a host perspective, in a traditional implementation, user data that the host has access control under a single authentication key (AK) must be contiguously stored in a single LBA area. The only LBA range or band limitations make it difficult for some types of applications (such as virtual machines (VMs)) to take full advantage of the use of SEDs because VMs require many (potentially thousands) bands could allow a more flexible and efficient use of the storage device.

Es wäre wünschenswert, eine Konzentration von virtuellen Bändern für selbst-verschlüsselnde Laufwerke zu haben. It would be desirable to have a concentration of virtual tapes for self-encrypting drives.

ZUSAMMENFASSUNGSUMMARY

Die Erfindung betrifft eine Vorrichtung, die eine Speichereinrichtung und eine Hosteinrichtung umfasst. Die Speichereinrichtung kann dazu ausgelegt werden, Nutzerdaten während Schreib- und Lesevorgängen zu verschlüsseln und zu entschlüsseln, respektive. Die Hosteinrichtung ist mit der Speichereinrichtung kommunikativ gekoppelt. Die Hosteinrichtung kann dazu ausgelegt werden, die Schreib- und Lesevorgänge durch Konzentrieren von einer erste Anzahl von virtuellen Bändern in eine zweite Anzahl von realen Bändern auszuführen, wobei die zweite Anzahl kleiner als die erste Anzahl sein kann.The invention relates to a device comprising a memory device and a host device. The memory device can be designed to encrypt and decrypt user data during read and write operations, respectively. The host device is communicatively coupled to the memory device. The host device may be configured to perform the writing and reading operations by concentrating from a first number of virtual bands to a second number of real volumes, the second number may be less than the first number.

KURZE BESCHREIBUNG DER FIGURENBRIEF DESCRIPTION OF THE FIGURES

Ausführungsformen der Erfindung werden offensichtlich aus der nachfolgenden ausführlichen Beschreibung und der beigefügten Patentansprüche und der Zeichnungen, für die gilt:Embodiments of the invention will become apparent from the following detailed description and the appended claims and the drawings, in which:

1 ist eine Darstellung, die ein System gemäß einer Ausführungsform der Erfindung veranschaulicht; 1 Fig. 10 is a diagram illustrating a system according to an embodiment of the invention;

2 ist eine Darstellung, die eine Hosteinrichtung einer Konzentrierungseinrichtung für virtuelle Bänder gemäß einer Ausführungsform der Erfindung veranschaulicht; 2 Fig. 12 is a diagram illustrating a host device of a virtual tape concentrator according to an embodiment of the invention;

3 ist eine Darstellung, die eine Speichereinrichtung der Konzentrierungseinrichtung für virtuelle Bänder gemäß einer Ausführungsform der Erfindung veranschaulicht; 3 Fig. 12 is a diagram illustrating a storage device of the virtual tape concentrator according to an embodiment of the invention;

4 ist eine Darstellung, die einen Prozess gemäß einer Ausführungsform der Erfindung veranschaulicht; 4 Fig. 12 is a diagram illustrating a process according to an embodiment of the invention;

5 ist eine Darstellung, die einen Manager von virtuellen Bändern mit mehreren Bändern gemäß einer Ausführungsform der Erfindung veranschaulicht; und 5 Fig. 12 is a diagram illustrating a manager of virtual tapes with multiple tapes according to an embodiment of the invention; and

6 ist eine Darstellung, die einen Host zeigt, der mehrere Manager von virtuellen Bändern mit einem oder mehreren Bändern aufweist, gemäß einer Ausführungsform der Erfindung. 6 FIG. 12 is a diagram showing a host having multiple virtual tape managers with one or more tapes according to an embodiment of the invention. FIG.

AUSFÜHRLICHE BESCHREIBUNG DER AUSFÜHRUNGSFORMENDETAILED DESCRIPTION OF THE EMBODIMENTS

Ausführungsformen der Erfindung umfassen das Bereitstellen einer Konzentrierung von virtuellen Bändern (VBC, virtual bands concentration) für selbst-verschlüsselnde Laufwerk-Einrichtungen, die (i) einen Manager von virtuellen Bändern (VBM, virtual band manager) als Teil eines Managers von virtuellen Maschinen (VMM, virtual machine manager) implementieren kann, (ii) Medien-Kodierungsschlüssel auf einer Basis pro Eingabe/Ausgabe (I/O) erzeugen kann, (iii) tausende von Bändern mit virtuellen Daten mit Hardware-Verschlüsselung/Entschlüsselung unterstützen kann, (iv) Migrationen von virtuellen Maschinen ermöglichen kann, (v) eine Krypto-Löschung (crypto erase) auf einer Basis pro Datenband ermöglichen kann, (vi) die Anzahl der Bänder, die ein SED unterstützen muss, verringern kann, während immer noch mehrere virtuelle Bänder auf einer Host-Seite unterstützt werden, (vii) eine erste Anzahl von virtuellen Bändern in eine signifikant kleinere zweite Anzahl von realen Bändern konzentrieren kann und/oder (viii) erlauben kann, dass von einem Host Authentifizierungsdaten für jeden Lese-/Schreib-Vorgang zugeführt werden.Embodiments of the invention include providing virtual band concentration (VBC) for self-encrypting drive devices that include (i) a virtual band manager (VBM) as part of a virtual machine manager (FIG. VMM, virtual machine manager) (ii) can generate media coding keys on a per input / output (I / O) basis, (iii) can support thousands of virtual data volumes with hardware encryption / decryption, (iv) enable virtual machine migrations can (v) enable crypto erase on a per-data-band basis, (vi) can reduce the number of tapes an SED must support while still supporting multiple virtual tapes on a host page (vii) (vii) a first number of virtual tapes may concentrate into a significantly smaller second number of real tapes and / or (viii) may allow authentication data to be provided by a host for each read / write operation.

In verschiedenen Ausführungsformen werden ein Verfahren und/oder eine Vorrichtung bereitgestellt, um einzigartige Medien-Kodierungsschlüssel (MEKs, media encryption keys) für eine Mehrzahl von Datenbändern dynamisch zu erzeugen. Der Ausdruck „Datenbänder“ (oder einfach „Bänder“) bezieht sich allgemein auf einen Bereich von logischen Blockadressen (LBAs, logical block addresses). Ein gesamter LBA-Raum wird in mehrere LBA-Bereiche (Bänder) unterteilt. Jedem Band ist ein einzigartiger MEK zugeordnet. Die MEKs beruhen auf Authentifizierungsinformation, die von einem Host (z.B. als Teil von einem Benutzerauthentifizierungsvorgang zugeordneten „Meta-Daten“) dynamisch bereitgestellt werden. Dynamisches Erzeugen der MEKs bezieht sich allgemein auf einen Vorgang des Erzeugens von einem neuen Schlüssel für jeden I/O-Vorgang. Die dynamische Erzeugung von MEKs wird allgemein als „on the fly“ (etwa: „in Eile“) bezeichnet. In verschiedenen Ausführungsformen ist die Verwendung eines gemeinsamen Authentifizierungsschlüssels (AK, authentication key) über mehrere Bänder erlaubt, um ein nicht-zusammenhängendes Band eines logischen Blockadress (LBA)-Raums für Host-Daten, die mit einem einzigen Authentifizierungsschlüssel gemanaged werden müssen, zu simulieren. Das Schlüsselmaterial (z.B. Authentifizierungsdaten) wird von dem Host (z.B. ein VM-Player oder VM-Manager-VMM, usw.) für jeden Lese-/Schreibvorgang zugeführt, was ein sicheres Verfahren zum Ermöglichen von tausenden (oder mehr) von Bändern bereitstellt. In various embodiments, a method and / or apparatus is provided for dynamically generating unique media encryption keys (MEKs) for a plurality of data bands. The term "data tapes" (or simply "tapes") generally refers to a range of logical block addresses (LBAs). An entire LBA space is divided into several LBA areas (bands). Each volume is assigned a unique MEK. The MEKs are based on authentication information dynamically provided by a host (e.g., as part of a "metadata" associated with a user authentication process). Dynamic generation of the MEKs generally refers to a process of generating a new key for each I / O operation. Dynamic generation of MEKs is commonly referred to as "on the fly". In various embodiments, the use of an authentication key (AK) across multiple bands is allowed to simulate a non-contiguous logical block address (LBA) space band for host data that must be managed with a single authentication key , The key material (e.g., authentication data) is supplied by the host (e.g., a VM player or VM manager VMM, etc.) for each read / write operation, providing a secure method of enabling thousands (or more) of tapes.

Mit Verweis auf 1 wird eine Darstellung eines Systems 100 gezeigt, dass ein Schema einer Konzentrierung von virtuellen Bändern gemäß einer Ausführungsform der Erfindung implementiert. In verschiedenen Ausführungsformen kann das System 100 als ein selbst-verschlüsselndes Speichersystem implementiert werden. In einigen Ausführungsformen umfasst das System 100 einen Block 101, einen Block 103 und einen Block 105. Der Block 101 umfasst eine Speichersteuereinrichtung, die einen Band-Manager und einen Verschlüsselungs-/Entschlüsselungsschaltkreis implementiert, gemäß einer Ausführungsform der Erfindung. Der Block 103 implementiert ein Speichermedium. In einigen Ausführungsformen umfasst der Block 103 ein nicht-flüchtiges Speicher (NVM, non-volatile memory)-Medium (z.B. einen magnetischen Speicher, einen FLASH-Speicher, usw.). Jedoch können andere Arten von Medien (z.B. ein flüchtiger Speicher mit oder ohne Batterieunterstützung) derart implementiert werden, dass die Entwurfskriterien einer bestimmten Anwendung erfüllt werden. Jedoch würden bei einem flüchtigen Speicher bei einem Leistungsausfall Sicherheit (und Daten) verloren gehen. Der Block 105 umfasst einen Host, der einen Manager von virtuellem Speicher (VMM, virtual memory manager) implementiert, gemäß einer Ausführungsform der Erfindung. Die Blöcke 101 und 103 sind operativ gekoppelt, um eine Speichereinrichtung (SD, storage device) 102 auszubilden. Die SD 102 und der Host 105 sind dazu ausgelegt, kommunikativ miteinander gekoppelt zu sein. With reference to 1 becomes a representation of a system 100 shown a scheme of concentrating virtual bands implemented according to an embodiment of the invention. In various embodiments, the system 100 be implemented as a self-encrypting storage system. In some embodiments, the system includes 100 a block 101 , a block 103 and a block 105 , The block 101 includes a memory controller implementing a band manager and an encryption / decryption circuit according to an embodiment of the invention. The block 103 implements a storage medium. In some embodiments, the block comprises 103 a non-volatile memory (NVM) medium (eg, a magnetic memory, a FLASH memory, etc.). However, other types of media (eg, volatile memory with or without battery support) may be implemented to meet the design criteria of a particular application. However, in the case of a volatile memory, security (and data) would be lost in the event of a power failure. The block 105 includes a host implementing a virtual memory manager (VMM) according to an embodiment of the invention. The blocks 101 and 103 are operatively coupled to a storage device (SD) 102 train. The SD 102 and the host 105 are designed to be communicatively coupled with each other.

Die Steuereinrichtung 101 kann dazu ausgelegt sein, einen oder mehrere individuelle Speicherkanäle zu steuern. In einigen Ausführungsformen kann die Steuereinrichtung 101 mehrere Instanzen von Speicherkanal-Steuereinrichtungen implementieren, um eine Mehrzahl von Speicherkanälen zu steuern. Die Steuereinrichtung 101 hat eine Medienschnittstelle, die dazu ausgelegt ist, die Steuereinrichtung 101 mit dem Speichermedium 103 zu koppeln. In Ausführungsformen mit nicht-flüchtigem Speicher (NVM) kann das Speichermedium 103 ein oder mehrere nicht-flüchtige Speichereinrichtungen 107 umfassen. Die nicht-flüchtigen Speichereinrichtungen 107 haben, in einigen Ausführungsformen, ein oder mehrere nicht-flüchtige Speicherziele (z.B. Chip (die), Scheiben-Platte (disk platter), usw.) 109. Gemäß einer Art eines bestimmten Einen aus den nicht-flüchtigen Speichereinrichtungen 107 ist eine Mehrzahl von nicht-flüchtigen Speicherzielen 109 in der bestimmten Einen aus den nicht-flüchtigen Speichereinrichtungen 107 optional und/oder selektiv parallel zugänglich bzw. zugreifbar. Die nicht-flüchtigen Speichereinrichtungen 107 sind allgemein repräsentativ für eine Art von Speichereinrichtungen, die in der Lage sind, an bzw. mit der Steuereinrichtung 101 kommunikativ anzukoppeln bzw. zu koppeln. In vielen Ausführungsformen ist jedoch jegliche Art von Speichereinrichtungen verwendbar, wie etwa ein magnetischer Speicher, ein optischer Speicher, ein SLC (single level cell, einzel-niveau-zelliger)-NAND-Flash-Speicher, ein MLC (multi-level cell, mehr-niveau-zelliger)-NAND-Flash-Speicher, ein TLC (tripple-level cell, tripel-niveau-zelligiger)-NAND-Flash-Speicher, ein NOR-Flash-Speicher, ein elektrisch programmierbarer Nurlesespeicher (EPROM, electrically programmable read-only memory), ein statischer Direktzugriffsspeicher (SRAM, static random access memory), ein dynamischer Direktzugriffsspeicher (DRAM, dynamic random access memory), ein magneto-resistiver Direktzugriffsspeicher (MRAM, magneto-resistive random-access memory), ein ferromagnetischer Speicher (z.B. FeRAM, F-RAM, FRAM, usw.), ein Phasenwechselspeicher (z.B. PRAM, PCRAM, usw., phase-change memory), ein Racetrack-Speicher (oder Domänenwandspeicher (DWM, domain-wall memory)), ein resistiver Direktzugriffsspeicher (RRAM oder ReRAM, resistive random access memory) oder irgendeine andere Art einer Speichereinrichtung oder eines Speichermediums. The control device 101 may be configured to control one or more individual memory channels. In some embodiments, the controller may 101 implement multiple instances of memory channel controllers to control a plurality of memory channels. The control device 101 has a media interface that is adapted to the controller 101 with the storage medium 103 to pair. In non-volatile memory (NVM) embodiments, the storage medium 103 one or more non-volatile memory devices 107 include. The non-volatile memory devices 107 have, in some embodiments, one or more non-volatile storage destinations (eg, chip (s), disk platter, etc.) 109 , In accordance with a kind of a particular one of the non-volatile memory devices 107 is a plurality of non-volatile storage destinations 109 in the particular one of the non-volatile memory devices 107 optionally and / or selectively accessible or accessible in parallel. The non-volatile memory devices 107 are generally representative of one type of memory device capable of being connected to the controller 101 communicatively couple or couple. However, in many embodiments, any type of memory device is usable, such as magnetic memory, optical memory, single level cell (SLC) flash memory (SLC), multi-level cell (MLC), and more level-cell) NAND flash memory, a TLC (triple-level cell) NAND flash memory, a NOR flash memory, an electrically programmable read only memory (EPROM, electrically programmable read -only memory), a static random access memory Static random access memory (SRAM), dynamic random access memory (DRAM), magneto-resistive random-access memory (MRAM), ferromagnetic memory (eg FeRAM, F-RAM, FRAM , etc.), a phase change memory (eg PRAM, PCRAM, etc., phase-change memory), a racetrack memory (or domain wall memory (DWM)), a resistive random access memory (RRAM or ReRAM, resistive random access memory) or any other type of memory device or storage medium.

In einigen Ausführungsformen sind die Steuereinrichtung 101 und das nicht-flüchtige Speicher-Medium 103 in gesonderten integrierten Schaltkreisen (oder Einrichtungen) implementiert. Wenn die Steuereinrichtung 101 und das nicht-flüchtige Speichermedium 103 als gesonderte integrierte Schaltkreise (oder Einrichtungen) implementiert sind, ist die Medienschnittstelle der Steuereinrichtung 101 im Allgemeinen dazu ausgelegt, eine Mehrzahl von Daten-Eingabe/Ausgabe-(I/O)-Pins und eine Mehrzahl von Steuer-I/O-Pins zu managen. Die Daten-I/O-Pins und die Steuer-I/O-Pins können dazu ausgelegt sein, die die Steuereinrichtung 101 enthaltende Einrichtung mit den externen, das nicht-flüchtige Speicher-Medium 103 ausbildenden Einrichtungen zu verbinden. In verschiedenen Ausführungsformen ist die Steuereinrichtung 101 als eine eingebettete Steuereinrichtung (embedded controller) implementiert. In verschiedenen Ausführungsformen implementieren die Steuereinrichtung 101 und das NVM-Medium 103 ein Festkörper-Hybrid-Festplatten-Laufwerk (SSHD, solid state hybrid hard disk drive), ein Festplatten-Laufwerk (HDD, hard disk drive), oder ein/e Festkörper-Laufwerk/-Scheibe (SSD, solid-state drive/disk).In some embodiments, the controller is 101 and the non-volatile storage medium 103 implemented in separate integrated circuits (or devices). When the controller 101 and the non-volatile storage medium 103 implemented as separate integrated circuits (or devices), the media interface is the controller 101 generally configured to manage a plurality of data input / output (I / O) pins and a plurality of control I / O pins. The data I / O pins and the control I / O pins may be adapted to the controller 101 containing means with the external, the non-volatile storage medium 103 training facilities. In various embodiments, the controller is 101 implemented as an embedded controller. In various embodiments, the controller implement 101 and the NVM medium 103 a solid state hybrid hard disk drive (SSHD), a hard disk drive (HDD, hard disk drive), or a solid state drive disk (SSD, solid-state drive / disk ).

Die Steuereinrichtung 101 weist auch eine Befehlsschnittstelle auf, die dazu ausgelegt ist, Befehle zu empfangen und Antworten an den Host 105 zu senden. In Ausführungsformen, die eine Mehrzahl von nicht-flüchtigen Speichereinrichtungen implementieren, umfasst die Steuereinrichtung 101 mindestens einen NVM-Steuerprozessor, der die nicht-flüchtigen Speichereinrichtungen über proprietäre Prozesse managed, und einen Host-Prozessor, der die Host-Schnittstelle gemäß anderer Prozesse managed. Der/die NVM-Steuerprozessor(en) und der Host-Prozessor kommunizieren über vordefinierte Schnittstellen. Der Host-Prozessor kommuniziert Host-Befehle an den NVM-Steuerprozessor, der die Befehle gemäß vorbestimmter Kommunikationsschnittstellen (oder -protokollen) verarbeitet. Die Steuereinrichtung 101 umfasst auch einen Band-Manager (BM, band manager) 110 und einen Verschlüsselungs-/Entschlüsselungs (E/D, encryption/decrpytion)-Block oder -Schaltkreis 112, der dazu ausgelegt ist, ein Schema der Konzentrierung von virtuellen Bändern gemäß einer Ausführungsform der Erfindung zu implementieren. Der Band-Manager 110 umfasst einen Schlüsselspeicher (KS, key storage) 114, der von der Speichereinrichtung 102 verwendetes Schlüsselmaterial (KM, key material) speichert. In einigen Ausführungsformen kann der Schlüssel-Speicher 114 auch virtuelles Schlüsselmaterial (VKM, virtual key material), das von dem Host 105 verwendet wird, speichern.The control device 101 also has a command interface configured to receive commands and responses to the host 105 to send. In embodiments implementing a plurality of non-volatile memory devices, the controller includes 101 at least one NVM control processor that manages the non-volatile memory devices through proprietary processes, and a host processor that manages the host interface according to other processes. The NVM control processor (s) and the host processor communicate via predefined interfaces. The host processor communicates host commands to the NVM control processor which processes the instructions according to predetermined communication interfaces (or protocols). The control device 101 also includes a band manager (BM, band manager) 110 and an encryption / decryption (E / D, encryption / decrypytion) block or circuit 112 which is adapted to implement a virtual band concentration scheme according to an embodiment of the invention. The band manager 110 includes a keystore (KS, key storage) 114 from the storage device 102 used key material (KM, key material) stores. In some embodiments, the key memory may 114 also virtual key material (VKM, virtual key material) that is hosted by the host 105 is used to save.

Der Host 105 umfasst einen Block 120 mit einem Manager von virtuellen Maschinen (VMM, virtual machine manager). Der VMM 120 ist dazu ausgelegt, ein Schema einer Konzentrierung von virtuellen Bändern gemäß einer Ausführungsform der Erfindung zu implementieren. Der VMM 120 umfasst einen oder mehrere Manager von virtuellen Bändern (VBMs) 122. In einigen Ausführungsformen lässt der VMM 120 eine gesonderte VBM 122-Instanz für jedes reale Band laufen. Jeder VBM 122 umfasst einen Speicher für virtuelle Schlüssel (VKS, virtual key storage) 124, der das Material der virtuellen Schlüssel (VKM, virtual key material) speichert. Jeder VBM 122 konzentriert eine Mehrzahl von virtuellen Bändern (VB) in ein reales Band 130 zur Speicherung in der SD 102. Die Mehrzahl der von jedem VBM 122 empfangenen, virtuellen Bänder sind bzw. stammen von einer Anzahl von virtuellen Maschinen (VM), die auf dem Host 105 laufen und die jedem VBM 122 über den VMM 120 zugeordnet sind. Ein einzelner VBM 122 kann ein oder mehrere reale Bänder managen. Jeder VBM 122 authentifiziert sich selbst bei der Speichereinrichtung 102, indem er einen entsprechenden Authentifizierungsschlüssel (AK, authentication key) 104 bereitstellt. The host 105 includes a block 120 with a virtual machine manager (VMM). The VMM 120 is designed to implement a virtual band concentration scheme according to an embodiment of the invention. The VMM 120 includes one or more virtual tape managers (VBMs) 122 , In some embodiments, the VMM leaves 120 a separate VBM 122 -Instance for every real band run. Every VBM 122 includes a virtual key storage (VKS) 124 storing the virtual key material (VKM). Every VBM 122 concentrates a plurality of virtual tapes (VB) into a real band 130 for storage in the SD 102 , The majority of each VBM 122 received virtual tapes are from a number of virtual machines (VMs) residing on the host 105 run and the every VBM 122 over the VMM 120 assigned. A single VBM 122 can manage one or more real bands. Every VBM 122 authenticates itself to the storage device 102 by using a corresponding authentication key (AK, authentication key) 104 provides.

Mit Verweis auf 2 wird eine Darstellung des Host 105 gezeigt, die einen Host-Abschnitt einer Konzentrierungseinrichtung für virtuelle Bänder gemäß einer Ausführungsform der Erfindung veranschaulicht. Ausführungsformen der Erfindung sind unten beschrieben unter Verwendung eines generischen Sicherheitsparadigmas, das in mehreren Sicherheitsprotokollen verwendet werden kann, einschließlich, jedoch nicht beschränkt auf TCG Enterprise SSC, TCG Opal und ATA Security. In verschiedenen Ausführungsformen arbeiten selbst-verschlüsselnde Laufwerke (SEDs, self encrypting drives) auf logischen Blockadress (LBA, logical block address)-Bereichen (oder Datenbändern). Beispielsweise ist in den 2 und 3 ein Band 130 gezeigt, dass einen LBA-Bereich von LBA1.1 bis LBA1.2 hat. In verschiedenen Ausführungsformen kann der Host 105 eine bestimmte Art Sicherheitsanwendung (AP, application) laufen lassen, die sich bei der Speichereinrichtung (SD, storage device) 102 unter Verwendung eines Authentifizierungsschlüssels (AK, authentication key) 104 selbst authentifiziert.With reference to 2 will be a representation of the host 105 which illustrates a host portion of a virtual tape concentrator according to an embodiment of the invention. Embodiments of the invention are described below using a generic security paradigm that may be used in multiple security protocols, including, but not limited to, TCG Enterprise SSC, TCG Opal, and ATA Security. In various embodiments, self-encrypting drives (SEDs) operate on logical block address (LBA) arrays (or data bands). For example, in the 2 and 3 a band 130 shown to have an LBA range from LBA1.1 to LBA1.2. In various embodiments, the host may 105 run a certain type of security application (AP) that resides in the storage device (SD) 102 using an authentication key (AK, authentication key) 104 self-authenticated.

In einem herkömmlichen SED ist die Anzahl der Bänder begrenzt, weil zum Aufrechterhalten von Datenraten häufig ein Nachschlagen von LBA-Bereichen in Hardware implementiert ist und Hardware-Tabellen hinsichtlich ihrer Größe begrenzt sind. Daher unterstützen herkömmliche SEDs kaum bzw. selten mehr als 16 LBA-Bereiche ohne Einfluss auf die Performanz. Weil diese Zahl für die meisten Anwendungen ziemlich ausreichend ist (z.B. TCG Opal 2.0 fragt nur nach 8 Bändern), erzeugt dies Schwierigkeiten für die sehr populäre Umgebung mit virtuellen Maschinen (VM). In a conventional SED, the number of bands is limited because data rates are often maintained by looking up LBA areas in hardware and hardware tables are limited in size. Therefore, conventional SEDs rarely support more than 16 LBA areas without any impact on performance. Because this number is quite sufficient for most applications (eg TCG Opal 2.0 only asks for 8 bands), this creates difficulties for the very popular virtual machine (VM) environment.

In einigen Ausführungsformen kann ein einzelner Computer mehrere sogenannte virtuelle Maschinen (VMs) hosten, von denen jede einen gewissen Bereich von LBAs für entsprechende Vorgänge benötigt (z.B. 2 zeigt drei virtuelle Maschinen, VMs 311, 312 und 313, die auf dem Host 105 laufen). Aus dem Blickwinkel von jeder virtuellen Maschine 311 bis 313 (z.B. VM-x bezeichnet, wobei x = 1, 2, ...) könnte jede VM-x die LBAs von 0 bis LBA_MAX(x) verwenden, wobei x die Anzahl der VM ist. Die von den VMs verwendeten LBAs werden „virtuelle LBAs“ (VLBAs) genannt, um diese von den realen LBAs, die der Speichereinrichtung 102 bekannt sind, zu unterscheiden. Der VM-Manager (VMM) 120 ist dafür verantwortlich, die VLBAs auf die realen LBAs, die die Speichereinrichtung 102 verstehen kann, abzubilden.In some embodiments, a single computer may host multiple so-called virtual machines (VMs), each of which may require a certain range of LBAs for appropriate operations (eg 2 shows three virtual machines, VMs 311 . 312 and 313 that on the host 105 to run). From the perspective of every virtual machine 311 to 313 (eg, VM-x, where x = 1, 2, ...), each VM-x could use the LBAs from 0 to LBA_MAX (x), where x is the number of VM's. The LBAs used by the VMs are called "virtual LBAs" (VLBAs) in order to extract them from the real LBAs of the memory device 102 are known to be distinguished. The VM Manager (VMM) 120 It is the responsibility of the VLBAs on the real LBAs that make up the storage device 102 can understand.

Weil die VMs die ganze Zeit über erzeugt und gelöscht werden, ist das Bereitstellen eines zusammenhängenden realen LBA-Bereichs für jede VM nicht immer möglich. Stattdessen wird willkürlich ein Satz von Bändern allokiert, „herausgeschnitten“ („sliced“) aus dem realen LBA-Raum der Speichereinrichtung 102. Somit, und wie in dem Beispiel der 2 gezeigt, werden zwei virtuelle Bänder (VBs) 320 und 321 der virtuellen Maschine VM-1 auf das einzige reale LBA-Band 130 abgebildet. Im Allgemeinen ist die Anzahl der realen Bänder kleiner als die Anzahl der virtuellen Bänder, und in vielen Fällen kann die Anzahl der realen Bänder signifikant kleiner als die Anzahl der virtuellen Bänder sein. Beispielsweise würde zwischen 10 und 20 reale Bänder als eine angemessen hohe Anzahl von realen Bänder angesehen, während die Anzahl der virtuellen Bänder, die von einer bestimmten Anwendung benötigt werden, in den hunderten, den tausenden oder sogar noch größeren Anzahlen sein könnte. Somit könnten sich die Anzahl der realen Datenbänder und die reale Anzahl der virtuellen Datenbänder unterscheiden, beispielsweise um eine oder mehrere Größenordnungen. Jede VM 311313, die nahezu als ein individueller Host agiert, kann sich selbst bei der Speichereinrichtung 102 mit der Hilfe der VBM 122, die die Übersetzung zwischen den virtuellen LBAs und den realen LBAs und umgekehrt ausführt, authentifizieren. Eine Implementierung der VBM 122 ist konform mit denselben Sicherheitsstandards wie die Implementierung der BM 110 der Speichereinrichtung 102, insbesondere im Hinblick auf VKS-Wartung und -Zugriff.Because the VMs are being created and deleted all the time, providing a contiguous real LBA range for each VM is not always possible. Instead, a set of bands is arbitrarily allocated, "sliced" out of the real LBA space of the storage device 102 , Thus, and as in the example of 2 shown, two virtual tapes (VBs) 320 and 321 virtual machine VM-1 on the only real LBA tape 130 displayed. In general, the number of real bands is smaller than the number of virtual bands, and in many cases, the number of real bands may be significantly smaller than the number of virtual bands. For example, between 10 and 20 real bands would be considered as a reasonably high number of real tapes, while the number of virtual tapes needed by a particular application could be in the hundreds, thousands or even larger numbers. Thus, the number of real data bands and the real number of virtual data bands could differ, for example by one or more orders of magnitude. Every VM 311 - 313 , which acts almost as an individual host, can itself at the storage device 102 with the help of the VBM 122 that authenticates the translation between the virtual LBAs and the real LBAs and vice versa. An implementation of the VBM 122 is compliant with the same security standards as the BM implementation 110 the storage device 102 especially with regard to VKS maintenance and access.

Die VBM 122 authentifiziert die VMs 311313 und stellt den Authentifizierungsschlüssel (AK) 104 und einen Sicherheitsprotokoll (z.B. TCG oder irgendein anderes)-Abschluss für die Speichereinrichtung (SD, storage device) 102 bereit. Auf der Seite des Hosts kann die VBM 122 dazu ausgelegt sein, jede beliebige Anzahl von virtuellen Bändern (VBs) zu unterstützen. Auf der Seite der Speichereinrichtung kann der VBM 122 nur einige reale Datenbänder unterstützen, in die der VBM 122 mehrere virtuelle Bänder konsolidiert oder konzentriert, wie dies unten beschrieben wird. In einigen Ausführungsformen ist der VBM 122 dazu ausgelegt, nur ein speichereinrichtungsseitiges (reales) Datenband 130 zu unterstützen, wie dies in der 2 gezeigt ist. The VBM 122 authenticates the VMs 311 - 313 and provides the authentication key (AK) 104 and a security protocol (eg TCG or any other) termination for the storage device (SD) 102 ready. On the side of the host, the VBM 122 be designed to support any number of virtual tapes (VBs). On the side of the memory device, the VBM 122 support only some real data tapes into which the VBM 122 Consolidate or concentrate multiple virtual tapes, as described below. In some embodiments, the VBM is 122 designed only one storage device side (real) data tape 130 to support, as in the 2 is shown.

In einigen Ausführungsformen speichert der VBM 122 beständig den Speicher mit den virtuellen Schlüsseln (VKS, virtual key storage) 124 als solchen, beispielsweise in einer gesonderten Flash-Einrichtung oder einem EEPROM. Der VKS 124 speichert Virtuell-Schlüssel-Material (VKM, virtual key material) für jedes virtuelle Band (z.B. ist Virtuell-Schlüssel-Material VKM 1.1 381 und VKM1.2 382 in 2 für VB1.1 und VB1.2, respektive, gezeigt). In anderen Ausführungsformen stellt die Speichereinrichtung 102 einen sogenannten opaken bzw. undurchsichtigen Schlüsselspeicher (OKS, opaque key storage) 362 (in 3 dargestellt) bereit, um das Virtuell-Schlüssel-Material zu speichern. Der OKS 362 wird als „opak“ bezeichnet, weil die SD 102 keine Kenntnis der virtuellen Bänder hat, und daher nicht weiß, dass der OKS 362 irgendwelches Schlüsselmaterial enthält. Was die SD 102 betrifft, ist der OKS 362 nur ein anderer Datenblock.In some embodiments, the VBM stores 122 Resist the memory with virtual keys (VKS, virtual key storage) 124 as such, for example in a separate flash device or EEPROM. The VKS 124 stores virtual key material (VKM) for each virtual tape (for example, virtual key material is VKM 1.1 381 and VKM1.2 382 in 2 for VB1.1 and VB1.2, respectively). In other embodiments, the storage device 102 a so-called opaque or opaque key memory (OKS, opaque key storage) 362 (in 3 shown) ready to store the virtual key material. The OKS 362 is called "opaque" because the SD 102 has no knowledge of the virtual tapes, and therefore does not know that the OKS 362 contains any key material. What the SD 102 concerns, is the OKS 362 just another data block.

Das Speichern des Virtuell-Schlüssel-Materials in dem in der SD 102 angeordneten OKS 362 erleichtert die Migration von VM von einem Host zu einem anderen Host. Solange die VMM-Berechtigungsnachweise (z.B. der AK 104) bekannt sind, kann der VMM 120 die entsprechende VKS 124 unter Verwendung des Inhalts 389 aus dem OKS 362 in einem anderen Host wiederherstellen. Die SD 102 ist hinsichtlich der Art der in dem OKS 362 gespeicherten Informationen vergesslich. Wenn die VBM 122 irgendwelches von dem Virtuell-Schlüssel-Material (z.B. VKM1.1 381, VKM1.2 382, usw.) verändert, wird der gesamte OKS 362 erneut beschrieben und die alte Kopie wird mit Nullen überschrieben bzw. gelöscht (z.B. muss die SD 102 diese Art von Dienstleistung auf eine Host-Anforderung bereitstellen). Storing the virtual key material in the SD 102 arranged OKS 362 facilitates VM migration from one host to another. As long as the VMM credentials (eg the AK 104 ), the VMM 120 the corresponding VKS 124 using the content 389 from the OKS 362 restore to another host. The SD 102 is in terms of the nature of the OKS 362 stored information forgetful. If the VBM 122 any of the virtual key material (eg VKM1.1 381 , VKM1.2 382 , etc.) changed, the entire OKS 362 described again and the old copy is overwritten with zeros or deleted (eg the SD 102 provide this type of service on a host request).

Mit Verweis auf 3 wird eine Darstellung der Speichereinrichtung 102 gezeigt, die einen Abschnitt einer Speichereinrichtung einer Konzentrierungseinrichtung für virtuelle Bänder gemäß einer Ausführungsform der Erfindung veranschaulicht. In verschiedenen Ausführungsformen lässt die SD 102 die Band-Manager (BM)-Anwendung 110, die den Schlüsselspeicher (KS, key storage) 114 enthält, laufen. Es ist wichtig, im Gedächtnis zu behalten, dass, wenn der KS 114 überschrieben wird, alle älteren Kopien des KS 114 gereinigt oder auf null gesetzt bzw. gelöscht werden müssen (z.B. hängt die Reinigungs-Prozedur von der Art des Speichermediums 103 ab und kann umfassen, ist jedoch nicht beschränkt auf das Entgaussen (Degaussing) des magnetischen Mediums, das Löschen der Flash-Einrichtung, usw). In einigen Ausführungsformen umfasst der KS 114 einen Abtastwert bzw. eine Ausführung von Schlüsselmaterial (KM, key material) 361 für jedes reale Datenband. Eine einzelne Ausführung von Schlüsselmaterial 361 (KM1) für das Band 130 ist in 3 gezeigt.With reference to 3 is an illustration of the memory device 102 shown the one Section of a storage device of a virtual tape concentrator according to an embodiment of the invention illustrated. In various embodiments, the SD leaves 102 the Band Manager (BM) application 110 storing the key store (KS, key storage) 114 contains, run. It is important to keep in mind that if the KS 114 is overwritten, all older copies of the KS 114 cleaned or set to zero or deleted (eg, the cleaning procedure depends on the type of storage medium 103 and may include, but is not limited to degaussing (degaussing) the magnetic media, erasing the flash device, etc.). In some embodiments, the KS includes 114 a sample or an execution of key material (KM, key material) 361 for every real data band. A single version of key material 361 (KM1) for the band 130 is in 3 shown.

Ein Medien-Kodierungsschlüssel (MEK, media encryption key) 341 für jedes reale Datenband wird erzeugt durch „Umpacken“ („wrapping“) des AK 104 mit dem entsprechenden KM. Ein Beispiel des Erzeugens eines Medien-Kodierungsschlüssels MEK1 durch Umpacken von AK 104 und Schlüsselmaterial KM1 ist in 3 gezeigt. Der Umpackungsvorgang ist durch einen Multiplizierer 351 veranschaulicht. Umpacken wird hier in einem sehr generischen Sinn verwendet. In einigen Ausführungsformen ist der KM 361 lediglich der korrespondierende MEK, verschlüsselt mit dem AK 104 (z.B. wird der AK 104 als ein Schlüssel-Kodierungsschlüssel (KEK, key encryption key) verwendet, daher ist das „Umpacken“ 351 äquivalent zu einem Kodierungsvorgang). Eine Verschlüsselung/Entschlüsselung kann umfassen, ist jedoch nicht beschränkt auf bestimmte Versionen von AES oder XTS. In einigen Ausführungsformen kann das Umpacken umfassen, ist jedoch nicht beschränkt auf das Ausführen eines XOR zwischen dem AK 104 und dem Schlüsselmaterial 361 (z.B. KM1 in 3). Jedoch kann jeder Vorgang, der die Zufälligkeit des Schlüsselmaterials 361 nicht verringert, entsprechend implementiert werden, um die Entwurfskriterien einer bestimmten Anwendung zu erfüllen. In Mehr-Band-Ausführungsformen werden entsprechende MEKs (z.B. MEK1, MEK2, ..., MEKn) für ein jedes von n Bändern erzeugt durch Umpacken des AK 104 mit dem entsprechenden Schlüsselmaterial 361 (z.B. KM1, KM2, ..., KMn, KM = key material). A media encryption key (MEK) 341 for each real data band is generated by "wrapping" the AK 104 with the corresponding KM. An example of generating a media encryption key MEK1 by repacking AK 104 and key material KM1 is in 3 shown. The repacking process is by a multiplier 351 illustrated. Repackaging is used here in a very generic sense. In some embodiments, the KM 361 only the corresponding MEK, encrypted with the AK 104 (eg the AK 104 used as a key encryption key (KEK), therefore the "repackaging" 351 equivalent to a coding process). Encryption / decryption may include, but is not limited to, certain versions of AES or XTS. In some embodiments, the repackaging may include, but is not limited to, performing an XOR between the AK 104 and the key material 361 (eg KM1 in 3 ). However, any process that involves the randomness of the key material 361 not be reduced, implemented accordingly to meet the design criteria of a particular application. In multi-band embodiments, corresponding MEKs (eg, MEK1, MEK2, ..., MEKn) are generated for each of n bands by repackaging the AK 104 with the corresponding key material 361 (eg KM1, KM2, ..., KMn, KM = key material).

In verschiedenen Ausführungsformen ist die Verschlüsselungs-/Entschlüsselungs (ED, encryptor/decryptor)-Einrichtung 112 als ein Hardware-(HW)-Modul implementiert. Der ED 112 pflegt eine Tabelle, in der die Grenzen eines jeden Bandes (z.B. LBA1.1-LBA1.2 für das in 3 gezeigte Band 130) definiert sind. Der MEK 341 für jedes Band wird durch den Umpackungsvorgang 351 berechnet, basierend auf dem AK 104 und entsprechendem Schlüsselmaterial 361, und dann in den ED 112 geladen. In diesen Ausführungsformen führt, wenn Lese-/Schreib-Daten-Anforderungen 311 aus dem Host 105 eintreffen, die ED 112 einen Nachschlag-Vorgang aus, um die LBAs der Anfragen auf ein Datenband zu klassifizieren und die zugeordneten MEK 341 (z.B. MEK1 für das reale Band 130) auszuwählen. In einem herkömmlichen SED würden Lese-Daten mit dem ausgewählten MEK entschlüsselt, während Schreib-Daten mit dem ausgewählten MEK verschlüsselt würden. In Ausführungsformen mit einer Konzentrierung von virtuellen Bändern wird der ausgewählte MEK 341 nicht zum Verschlüsseln/Entschlüsseln von Daten verwendet, sondern stattdessen wird die ausgewählte MEK 341 dazu verwendet, einen aktuellen MEK (z.B. MEK1.1 344, MEK1.2 345, MEK1.3 347, MEK3.2 349, usw.), der zum Verschlüsseln/Entschlüsseln von jeder I/O-Anforderung durch die Umpackungsvorgänge bzw. -operationen 342348 verwendet wird, zu berechnen. Die Umpackungsvorgänge 342348 können in ähnlicher Weise wie der Umpackungsvorgang 351 (unten beschrieben) implementiert werden. In various embodiments, the encryption / decryption (ED, encryptor / decryptor) device is 112 implemented as a hardware (HW) module. The ED 112 maintains a table in which the boundaries of each band (eg LBA1.1-LBA1.2 for the in 3 shown band 130 ) are defined. The MEK 341 for each band is through the repacking process 351 calculated based on the AK 104 and corresponding key material 361 , and then into the ED 112 loaded. In these embodiments, if read / write data requests 311 from the host 105 arrive, the ED 112 a lookup operation to classify the LBAs of the requests on a data tape and the associated MEK 341 (eg MEK1 for the real band 130 ). In a conventional SED, read data would be decrypted with the selected MEK while write data would be encrypted with the selected MEK. In embodiments having a concentration of virtual bands, the selected MEK becomes 341 not used to encrypt / decrypt data, but instead the selected MEK 341 used to create a current MEK (eg MEK1.1 344 , MEK1.2 345 , MEK1.3 347 , MEK3.2 349 etc.) for encrypting / decrypting each I / O request by the wrapping operations 342 - 348 is used to calculate. The repacking operations 342 - 348 can be done in a similar way as the repacking process 351 (described below).

In verschiedenen Ausführungsformen wird der MEK 341 nicht an den Host 105 gesendet und wird (als eine gute Praxis) nicht in offener Form in dem Speicher 103 gespeichert. Stattdessen wird nur Schlüsselmaterial KM 361 gespeichert und der Authentifizierungsschlüssel (AK) 104 wird benötigt, um den MEK 341 zurückzugewinnen. Vorausgesetzt, dass die SD 102 richtig konfiguriert ist, ist ein Lesen oder Schreiben von Daten aus/in das Medium 103 nicht für jedermann, der nicht die richtigen Berechtigungsnachweise kennt, möglich.In various embodiments, the MEK 341 not to the host 105 is sent and (as a good practice) not in open form in memory 103 saved. Instead, only key material is KM 361 saved and the authentication key (AK) 104 is needed to the MEK 341 recover. Provided that the SD 102 is configured correctly, is reading or writing data from / to the medium 103 not for anyone who does not know the correct credentials possible.

In einigen Ausführungsformen ist eine Krypto-Löschung (crypto erase) von jedem individuellen Band erlaubt. Wenn beispielsweise ein Nutzer das KM 361 oder das VKM 381, 382 für ein bestimmtes Band ändert und alle alten Kopien des KM 361 oder des VKM 381, 382 (sogar verschlüsselte Ausführungen) gemäß den bestimmten Reinigungsregeln des Mediums (z.B. Entgaussen für magnetische Medien, Löschen für Flash, usw.) gereinigt werden, können die Daten in dem bestimmten Band nicht mehr von jedermann gelesen werden, einschließlich jedem, der die richtigen Berechtigungsnachweise kennt. Eine sogenannte „Krypto-Lösch („Crypto_Erase“)-Funktion stellt ein schnelles, zuverlässiges und präzises Verfahren zum Entfernen von Daten bereit und ermöglicht eine sichere Wiederverwendung der Speichereinrichtung. In some embodiments, crypto erase is allowed by each individual band. For example, if a user uses the KM 361 or the VKM 381 . 382 for a particular band changes and all old copies of the KM 361 or the VKM 381 . 382 (even encrypted executions) are cleaned according to the specific cleaning rules of the medium (eg magnetic media deaerating, erasing flash, etc.), the data in the particular tape can no longer be read by anyone, including anyone who knows the proper credentials , A so-called "Crypto_Erase" function provides a fast, reliable and accurate method of removing data and allowing safe reuse of the storage device.

In Ausführungsformen mit einer Konzentrierung von virtuellen Bändern authentifiziert der VBM 122 sich unter Verwendung des AK 104 selbst bei dem SD-Band-Manager (BM) 110. Nach der Authentifizierung lädt der VBM 122 die entsprechenden VKS 124 entweder von einer anderen Einrichtung oder aus dem OKS 362. Jede der VMs 311313 wird sich unter Verwendung eines entsprechenden Authentifizierungsschlüssels selbst authentifizieren müssen (z.B. VM-1 311 authentifiziert sich selbst unter Verwendung von AK1 304, VM-3 313 authentifiziert sich selbst unter Verwendung von AK3 305, usw.). Entsprechende virtuelle MEKs (VMEKs) 384, 386, 387, 388 werden für jedes virtuelle Band (VB) erzeugt durch Umpacken der entsprechenden Authentifizierungsschlüssel AKx mit dem entsprechenden Virtuell-Schlüssel-Material (z.B. VKM1.1 381, VKM1.2 382, usw.). Der entsprechende VMEK wird jeder I/O-Anforderung, die zu der SD 102 geschickt wird, angehängt. Die ED 112 umpackt den jeder I/O-Anforderung angehängten VMEK mit dem MEK 341 für das Datenband (z.B. wird MEK1 für das in den 2 und 3 gezeigte Datenband 130 verwendet), wodurch individuelle MEKs (z.B. MEK1.1, MEK1.2, MEK3.1, MEK3.2, usw.) für die bestimmten Datenvorgängen bzw. -operationen erzeugt werden.In embodiments with a concentration of virtual bands, the VBM authenticates 122 yourself using the AK 104 even with the SD band manager (BM) 110 , After authentication, the VBM loads 122 the corresponding VKS 124 either from another facility or from the OKS 362. Each of the VMs 311 - 313 will have to authenticate itself using a corresponding authentication key (eg VM-1 311 authenticates itself using AK1 304 , VM-3 313 authenticates itself using AK3 305 , etc.). Corresponding virtual MEKs (VMEKs) 384 . 386 . 387 . 388 are generated for each virtual band (VB) by repackaging the corresponding authentication key AKx with the corresponding virtual key material (eg VKM1.1 381 , VKM1.2 382 , etc.). The corresponding VMEK will handle any I / O request that comes to the SD 102 is sent, attached. The ED 112 repackages the VMEK attached to each I / O request with the MEK 341 for the data tape (eg MEK1 will be used in the 2 and 3 shown data band 130 whereby individual MEKs (eg, MEK1.1, MEK1.2, MEK3.1, MEK3.2, etc.) are generated for the particular data operations.

In Ausführungsformen mit dem NVM Express (NVME)-Host-Protokoll könnte ein händlerspezifisches Lesen/Schreiben definiert werden, in dem eine spezielle SGL (Scatter-Gather-List, etwa Verstreuungs-Einsammluns-Liste) bereitgestellt wird. Die SGL enthält die VMEK-Information für jeden I/O-Vorgang. In dem SATA-Protokoll könnte der Host einfach den VMEK an einen Schreib-Befehl anhängen, entweder durch Erweitern der Anzahl der Sektoren bei einem Schreiben und Angeben, wo der Schlüssel bereitgestellt ist, oder Übertragen von größeren Sektoren (z.B. 520 Byte-Sektoren) und Einsetzen des Schlüsselmaterials in die größeren Sektoren selbst. Das Lesen ist schwieriger in das bestehende SATA (ACS)-Protokoll einzupassen. In einem Beispiel kann ein händlerspezifischer Befehl definiert werden, der es erlaubt, den VMEK mit dem zu lesenden LBA zu übertragen. In einem anderen Beispiel kann der Host eine Tabelle von MEK in einen in der Speichereinrichtung residenten Puffer übertragen und die reservierten Bits (insgesamt 7) verwenden, um die Tabelle für die Speichereinrichtung zu indexieren, um den VMEK während einer Übertragung schnell nachzuschlagen. Diese Ausführungsform ermöglicht die Verwendung von bestehender SATA HW-Automatisierung in den Steuereinrichtungen.In embodiments with the NVM Express (NVME) host protocol, a vendor-specific read / write could be defined by providing a special SGL (Scatter-Gather-List). The SGL contains the VMEK information for each I / O operation. In the SATA protocol, the host could simply append the VMEK to a write command, either by expanding the number of sectors in a write and indicating where the key is provided, or transmitting larger sectors (eg, 520 byte sectors) and Inserting the key material into the larger sectors themselves. Reading is more difficult to fit into the existing SATA (ACS) protocol. In one example, a vendor-specific command may be defined that allows the VMEK to be transferred with the LBA to be read. In another example, the host may transfer a table of MEK to a buffer resident in the storage device and use the reserved bits (7 in total) to index the table for the storage device to quickly look up the VMEK during a transfer. This embodiment allows the use of existing SATA HW automation in the controllers.

Mit Verweis auf 4 wird eine Darstellung gezeigt, die einen beispielhaften Prozess 400 gemäß einer Ausführungsform der Erfindung veranschaulicht. In einigen Ausführungsformen kann der Prozess (oder das Verfahren) 400 einen Schritt (oder Zustand) 402, einen Schritt (oder Zustand 404), einen Schritt (oder Zustand) 406, einen Schritt (oder Zustand) 408, einen Schritt (oder Zustand) 410 und einen Schritt (oder Zustand) 412 umfassen. Im Schritt 402 authentifiziert der virtuelle Band-Manager (VBM) 122 sich in dem Host 105 selbst bei dem Band-Manager (BM) 110 in der Speichereinrichtung 102 unter Verwendung des Authentifizierungsschlüssels (AK) 104. Im Schritt 404 lädt der VBM 122 den Virtuell-Schlüssel-Speicher (VKS) 124 entweder aus einer anderen Einrichtung oder aus dem opaken Schlüsselspeicher (OKS) 362 in der Speichereinrichtung 102. Im Schritt 406 authentifiziert jede virtuelle Maschine (VMx) sich selbst unter Verwendung eines entsprechenden Authentifizierungsschlüssels (AKx). Im Schritt 408 werden Virtuell-Medien-Kodierungsschlüssel (VMEKs, virtual media encryption keys) für jedes virtuelle Band (VB) erzeugt durch Umpacken der entsprechenden Authentifizierungsschlüssel AKx mit dem entsprechenden, virtuellen Schlüsselmaterial (z.B. VKMx) aus dem VKS 124. Im Schritt 410 wird jeder I/O-Anforderung, die zu der Speichereinrichtung 102 geschickt wird, der geeignete VMEK angehängt. Im Schritt 412 umpackt die Verschlüsselungs-/Entschlüsselungs-Hardware 112 in der Speichereinrichtung 102 den jeder I/O-Anforderung angehängten VMEK mit dem Medien-Kodierungsschlüssel (MEK), der in der Speichereinrichtung 102 für das entsprechende Datenband erzeugt worden ist, wodurch ein individueller MEK für den bestimmten Datenvorgang erzeugt wird.With reference to 4 an illustration is shown that illustrates an exemplary process 400 illustrated according to an embodiment of the invention. In some embodiments, the process (or method) may be 400 a step (or state) 402 , a step (or state 404 ), a step (or state) 406 , a step (or state) 408 , a step (or state) 410 and a step (or state) 412 include. In step 402 Authenticates the Virtual Tape Manager (VBM) 122 yourself in the host 105 even with the band manager (BM) 110 in the storage device 102 using the authentication key (AK) 104 , In step 404 invites the VBM 122 the virtual key memory (VKS) 124 either from another institution or from the opaque keystore (OKS) 362 in the storage device 102 , In step 406 each virtual machine (VMx) authenticates itself using a corresponding authentication key (AKx). In step 408 Virtual Media Encryption Keys (VMEKs) are generated for each virtual volume (VB) by repackaging the corresponding authentication key AKx with the corresponding virtual key material (eg VKMx) from the VKS 124 , In step 410 Any I / O request will be sent to the storage device 102 sent the appropriate VMEK attached. In step 412 repackages the encryption / decryption hardware 112 in the storage device 102 the VMEK attached to each I / O request with the Media Encoding Key (MEK) stored in the storage device 102 has been generated for the corresponding data band, whereby an individual MEK is generated for the particular data operation.

Mit Verweis auf 5 wird eine Darstellung gezeigt, die ein System 500 veranschaulicht, das einen Virtuell-Band-Manager mit mehreren realen Bändern gemäß einer Ausführungsform der Erfindung implementiert. Das System 500 umfasst eine Speichereinrichtung 502 mit einem Speicher-Medium 503 und einen Host 505. Die Speichereinrichtung 502 umfasst auch einen Band-Manager (BM) 510 und einen Verschlüsselungs-/Entschlüsselungs-(E/D, encryption/decryption)-Block (oder -Schaltkreis) 512, der dazu ausgelegt ist, ein Schema zur Konzentrierung von virtuellen Bändern gemäß einer Ausführungsform der Erfindung (die oben im Zusammenhang mit den 2 und 3 beschrieben ist) zu implementieren. Der Verschlüsselungs-/Entschlüsselungs (E/D)-Block 512 ist dazu ausgelegt, eine Anzahl von realen Bändern 130-1 bis 130-N zu verarbeiten bzw. zu handeln. Der Band-Manager 510 umfasst einen Schlüsselspeicher (KS, key storage) 514, der Schlüsselmaterial (z.B. KM1 561 bis KMN 562) speichert. Das Schlüsselmaterial wird von der Speichereinrichtung 502 im Zusammenhang mit der Verschlüsselung/Entschlüsselung der realen Bänder 130-1 bis 130-N verwendet (z.B. unter Verwendung von entsprechenden Medien-Kodierungsschlüsseln, die durch Umpackungsoperationen 551 bis 552 erzeugt werden). Die Umpackungsoperationen 551552 können ähnlich wie die Umpackungsoperationen 351, 383 und 385, die oben im Zusammenhang mit den 2 und 3 beschrieben worden sind, implementiert werden. With reference to 5 an illustration is shown showing a system 500 illustrating a virtual band manager with multiple real bands according to an embodiment of the invention. The system 500 comprises a memory device 502 with a storage medium 503 and a host 505 , The storage device 502 also includes a Band Manager (BM) 510 and an encryption / decryption (E / D, encryption / decryption) block (or circuit) 512 designed to provide a scheme for concentrating virtual tapes according to an embodiment of the invention (discussed above in connection with FIGS 2 and 3 described). The encryption / decryption (E / D) block 512 is designed to be a number of real bands 130-1 to 130-N to process or act. The band manager 510 includes a keystore (KS, key storage) 514 , the key material (eg KM1 561 to KMN 562 ) stores. The key material is from the storage device 502 in connection with the encryption / decryption of the real tapes 130-1 to 130-N used (eg, using appropriate media encoding keys generated by repacking operations 551 to 552 be generated). The repacking operations 551 - 552 can be similar to the repacking operations 351 . 383 and 385 related to the above 2 and 3 have been described.

Der Host 505 umfasst einen Manager von virtuellen Maschinen (VMM, virtual machine manager), der dazu ausgelegt ist, ein Schema der Konzentrierung von virtuellen Bändern gemäß einer Ausführungsform der Erfindung zu implementieren. Der VMM umfasst einen Virtuell-Band-Manager (VBM) 522. Der VBM 522 ist dazu ausgelegt, die Mehrzahl der realen Bänder 130-1 bis 130-N zu managen. Der VBM 522 kann dazu ausgelegt sein, ähnlich wie der VBM 122 aus der 2 zu arbeiten. Der VBM 522 konzentriert eine Mehrzahl von virtuellen Bändern (VB) in die realen Bänder 130-1 bis 130-N zur Speicherung in der SD 502. Die Mehrzahl der von dem VBM 522 empfangenen virtuellen Bänder kann von einer Anzahl von auf dem Host 505 laufenden virtuellen Maschinen (VMs) kommen.The host 505 comprises a virtual machine manager (VMM) adapted to implement a virtual band concentration scheme according to an embodiment of the invention. The VMM includes a Virtual Tape Manager (VBM) 522 , The VBM 522 is designed to be the majority of real tapes 130-1 to 130-N to manage. The VBM 522 can be designed to be similar to the VBM 122 from the 2 to work. The VBM 522 concentrates a plurality of virtual tapes (VB) into the real tapes 130-1 to 130-N for storage in the SD 502 , The majority of the VBM 522 received virtual tapes can be from a number of on the host 505 running virtual machines (VMs) come.

Mit Verweis auf 6 wird eine Darstellung gezeigt, die ein System 600 veranschaulicht, das einen Host mit mehreren Virtuell-Band-Managern gemäß einer Ausführungsform der Erfindung implementiert. Das System 600 umfasst eine Speichereinrichtung 602 mit einem Speichermedium 603 und einem Host 605. Die Speichereinrichtung 602 umfasst auch einen Band-Manager (BM) 610 und einen Verschlüsselungs-/Entschlüsselungs (E/D)-Block (oder -Schaltkreis) 612, der dazu ausgelegt ist, ein Schema einer Konzentrierung von virtuellen Bändern gemäß einer Ausführungsform der Erfindung (wie oben im Zusammenhang mit den 2 und 3 beschrieben) zu implementieren. Der Verschlüsselungs-/Entschlüsselungs-(E/D)-Block 612 ist dazu ausgelegt, eine Anzahl von realen Bändern 130-1 bis 130-N zu verarbeiten. Der Band-Manager 610 umfasst einen Schlüsselspeicher (KS) 614, der Schlüsselmaterial (z.B. KM1 661 bis KMN 662) speichert. Das Schlüsselmaterial wird von der Speichereinrichtung 602 im Zusammenhang mit der Verschlüsselung bzw. Entschlüsselung der realen Bänder 130-1 bis 130-N verwendet (z.B. unter Verwendung entsprechender Medien-Kodierungsschlüssel, die durch die Umpackungsoperationen 651652 erzeugt worden sind). Die Umpackungsoperationen 651652 können ähnlich wie die Umpackungsoperationen 351, 383 und 385 (die oben im Zusammenhang mit den 2 und 3 beschrieben worden sind) implementiert werden.With reference to 6 an illustration is shown showing a system 600 illustrating implementing a host with multiple virtual tape managers according to an embodiment of the invention. The system 600 comprises a memory device 602 with a storage medium 603 and a host 605 , The storage device 602 also includes a Band Manager (BM) 610 and an encryption / decryption (E / D) block (or circuit) 612 which is adapted to a virtual band concentration scheme according to an embodiment of the invention (as discussed above in connection with FIGS 2 and 3 described). The encryption / decryption (E / D) block 612 is designed to be a number of real bands 130-1 to 130-N to process. The band manager 610 includes a keystore (KS) 614 , the key material (eg KM1 661 to KMN 662 ) stores. The key material is from the storage device 602 in connection with the encryption or decryption of the real tapes 130-1 to 130-N used (eg, using appropriate media encryption keys generated by the repacking operations 651 - 652 have been generated). The repacking operations 651 - 652 can be similar to the repacking operations 351 . 383 and 385 (the above related to the 2 and 3 have been described).

Der Host 605 umfasst einen Manager von virtuellen Maschinen (VMM, virtual machine manager), der dazu ausgelegt ist, ein Schema einer Konzentrierung von virtuellen Bändern gemäß einer Ausführungsform der Erfindung zu implementieren. Der VMM umfasst eine Mehrzahl von Virtuell-Band-Managern (VBMs) 622-1 bis 622-N. Die VBM 622-1 bis 622-N sind dazu ausgelegt, die Mehrzahl der realen Bänder 130-1 bis 130-N zu managen. Die VBMs 622-1 bis 622-N können dazu ausgelegt sein, ähnlich wie der VBM 122 aus der 2 zu arbeiten. Die VBM 622-1 bis 622-N konzentrieren eine Mehrzahl von virtuellen Bändern (VB) in die realen Bänder 130-1 bis 130-N zur Speicherung in der SD 602. Die Mehrzahl der von dem VBMs 622-1 bis 622-N empfangenen virtuellen Bänder können von einer Anzahl von auf dem Host 605 laufenden virtuellen Maschinen (VM) kommen.The host 605 comprises a virtual machine manager (VMM) adapted to implement a virtual band concentration scheme according to an embodiment of the invention. The VMM includes a plurality of Virtual Band Managers (VBMs) 622-1 to 622-N , The VBM 622-1 to 622-N are designed to be the majority of real tapes 130-1 to 130-N to manage. The VBMs 622-1 to 622-N can be designed to be similar to the VBM 122 from the 2 to work. The VBM 622-1 to 622-N concentrate a plurality of virtual tapes (VB) into the real tapes 130-1 to 130-N for storage in the SD 602 , The majority of the VBMs 622-1 to 622-N received virtual tapes can be from a number of on the host 605 running virtual machines (VM) come.

Jeder der VBMs 622-1 bis 622-N kann eine Anzahl von virtuellen Bändern in eines oder mehrere der realen Bänder 130-1 bis 130-N konzentrieren. Jeder der VBMs 622-1 bis 622-N authentifiziert sich selbst mit einem entsprechenden Authentifizierungsschlüssel AK1 bis AKN. Der Band-Manager 610 der Speichereinrichtung 602 erzeugt die entsprechenden Medien-Kodierungsschlüssel für die Bänder 130-1 bis 130-N durch Umpacken der entsprechenden Authentifizierungsschlüssel AK1 bis AKN und des entsprechenden Schlüsselmaterial KM1 661 bis KMN 662.Each of the VBMs 622-1 to 622-N can be a number of virtual tapes in one or more of the real tapes 130-1 to 130-N focus. Each of the VBMs 622-1 to 622-N authenticates itself with a corresponding authentication key AK1 to AKN. The band manager 610 the storage device 602 Generates the appropriate media encoding keys for the tapes 130-1 to 130-N by repacking the corresponding authentication key AK1 to AKN and the corresponding key material KM1 661 to KMN 662 ,

Die Ausdrücke „kann“ und „allgemein“, wenn sie hierin im Zusammenhang mit „ist/sind“ und Verben verwendet werden, sind dazu gedacht, die Absicht zu kommunizieren, dass die Beschreibung beispielhaft ist und die Ansicht vertreten wird, dass diese breit genug ist, um sowohl die in der Offenbarung dargestellten, spezifischen Beispiele als auch alternative Beispiele, die auf der Grundlage der Offenbarung abgeleitet werden könnten, zu umfassen. Die Ausdrücke „kann“ und „allgemein“, so wie diese hierin verwendet werden, sollten nicht dahingehend ausgelegt werden, als dass sie notwendigerweise die Wünschbarkeit oder Möglichkeit des Auslassens eines entsprechenden Elementes implizieren. Der Ausdruck „signifikant kleiner“ ist allgemein dazu gedacht, die Absicht zu kommunizieren, dass die verglichenen Elemente sich beispielsweise um eine oder mehrere der Größenordnungen unterscheiden können. The terms "may" and "general", when used herein in conjunction with "verbs" and verbs, are intended to communicate the intent that the description is exemplary and is believed to be wide enough to encompass both the specific examples presented in the disclosure and alternative examples that might be derived based on the disclosure. The terms "may" and "general" as used herein should not be construed as necessarily implying the desirability or possibility of omitting a corresponding element. The term "significantly smaller" is generally intended to communicate the intention that the compared elements may, for example, differ by one or more orders of magnitude.

Während die Erfindung insbesondere mit Verweis auf die Ausführungsformen derselben gezeigt und beschrieben worden ist, so wird von Fachleuten in dem technischen Gebiet verstanden werden, dass vielfältige Änderungen hinsichtlich der Form und Einzelheiten ausgeführt werden können, ohne vom Schutzumfang der Erfindung abzuweichen.While the invention has been particularly shown and described with reference to the embodiments thereof, it will be understood by those skilled in the art that various changes in form and detail may be made without departing from the scope of the invention.

Claims (15)

Eine Vorrichtung, aufweisend: eine Speichereinrichtung, die dazu ausgelegt ist, Nutzerdaten während Schreib- und Lesevorgängen zu verschlüsseln und zu entschlüsseln, respektive; und eine Hosteinrichtung, die dazu ausgelegt ist, an die Speichereinrichtung kommunikativ anzukoppeln, wobei die Hosteinrichtung ferner dazu ausgelegt ist, die Schreib- und Lesevorgänge durch Konzentrieren einer ersten Anzahl von virtuellen Bändern in eine zweite Anzahl von realen Bändern auszuführen, wobei die zweite Anzahl kleiner als die erste Anzahl ist. An apparatus comprising: a storage device configured to encrypt and decrypt user data during writes and reads, respectively; and a host device configured to communicatively couple to the memory device, wherein the host device is further configured to combine the writing and reading operations by concentrating a first number of virtual bands into one second number of real bands, the second number being smaller than the first number. Die Vorrichtung gemäß Anspruch 1, wobei die Hosteinrichtung einen Manager von virtuellen Maschinen aufweist, der dazu ausgebildet ist, die erste Anzahl der virtuellen Bänder auf die zweite Anzahl der realen Bänder abzubilden.The apparatus of claim 1, wherein the host device comprises a virtual machine manager configured to map the first number of virtual bands to the second number of real bands. Das Verfahren gemäß Anspruch 2, wobei der Manager von virtuellen Maschinen einen oder mehrere Manager von virtuellen Bändern aufweist, die dazu ausgelegt sind, die erste Anzahl der virtuellen Bänder auf die zweite Anzahl der realen Bänder abzubilden.The method of claim 2, wherein the virtual machine manager comprises one or more virtual tape managers configured to map the first number of the virtual bands to the second number of the real bands. Die Vorrichtung gemäß Anspruch 3, wobei jeder aus dem einen oder den mehreren Managern von virtuellen Bändern dazu ausgelegt ist, eine Anzahl der virtuellen Bänder auf eines oder mehrere aus der zweiten Anzahl von realen Bänder abzubilden.The apparatus of claim 3, wherein each of the one or more virtual tape managers is configured to map a number of the virtual tapes to one or more of the second number of real tapes. Die Vorrichtung gemäß einem der Ansprüche 1 bis 4, wobei die Speichereinrichtung einen Band-Manager aufweist, der dazu ausgebildet ist, Schlüsselmaterial zu speichern. The apparatus according to one of claims 1 to 4, wherein the storage means comprises a tape manager adapted to store key material. Die Vorrichtung gemäß Anspruch 5, wobei der Band-Manager einen opaken oder undurchsichtigen Schlüsselspeicher aufweist. The apparatus of claim 5, wherein the tape manager comprises an opaque or opaque keystore. Die Vorrichtung gemäß einem der Ansprüche 1 bis 6, wobei die Speichereinrichtung ein Verschlüsselungs- und Entschlüsselungsmodul aufweist.The apparatus of any one of claims 1 to 6, wherein the storage means comprises an encryption and decryption module. Die Vorrichtung gemäß Anspruch 7, wobei das Verschlüsselungs- und Entschlüsselungsmodul in Hardware implementiert ist.The device of claim 7, wherein the encryption and decryption module is implemented in hardware. Die Vorrichtung gemäß einem der Ansprüche 1 bis 8, wobei jedes virtuelle Band aus einem Blickwinkel der Sicherheit immer noch mit einzigartigen Authentifizierungs- und Verschlüsselungsschlüsseln vollständig geschützt ist.The apparatus of any one of claims 1 to 8, wherein each virtual band is still fully protected from a security perspective with unique authentication and encryption keys. Die Vorrichtung gemäß einem der Ansprüche 1 bis 9, wobei die zweite Anzahl signifikant kleiner als die erste Anzahl ist. The apparatus of any one of claims 1 to 9, wherein the second number is significantly less than the first number. Ein Verfahren des Konzentrierens einer Anzahl von virtuellen Bändern in ein reales Band zur Speicherung in einer selbst-verschlüsselnden Speichereinrichtung, wobei das Verfahren aufweist: Zuordnen von einem oder mehreren Abschnitten eines virtuellen logischen Blockadressbereichs von jedem aus der Anzahl der virtuellen Bänder mit Abschnitten eines logischen Blockadressbereichs des realen Bands; Erzeugen eines entsprechenden virtuellen Medien-Kodierungsschlüssels für jedes aus der Anzahl der virtuellen Bänder, basierend auf einem Authentifizierungsschlüssel einer virtuellen Maschine und virtuellem Schlüsselmaterial, das in einer Hosteinrichtung, auf der die virtuelle Maschine läuft, gespeichert ist; und Zuordnen des entsprechenden virtuellen Medien-Kodierungsschlüssels für ein bestimmtes aus der Anzahl der virtuellen Bänder mit Eingabe/Ausgabe-Anforderungen, unter Einbeziehen von Abschnitten des logischen Blockadressbereichs des realen Bands, zugeordnet dem bestimmten aus der Anzahl der virtuellen Bänder.A method of concentrating a number of virtual tapes into a real tape for storage in a self-encrypting storage device, the method comprising: Associating one or more portions of a virtual logical block address range of each of the number of virtual bands with portions of a logical block address range of the real band; Generating a corresponding virtual media encryption key for each of the number of virtual bands based on a virtual machine authentication key and virtual key material stored in a host device on which the virtual machine is running; and Associating the corresponding virtual media encryption key for a particular one of the number of virtual bands with input / output requests, including portions of the logical block address range of the real band associated with the determined one of the number of virtual bands. Das Verfahren gemäß Anspruch 11, ferner aufweisend: Erzeugen eines ersten Medien-Kodierungsschlüssels für das reale Band, basierend auf einem Authentifizierungsschlüssel der Hosteinrichtung und in der selbst-verschlüsselnden Speichereinrichtung gespeichertem Schlüsselmaterial; und Erzeugen einer Anzahl von zweiten Medien-Kodierungsschlüsseln für die Eingabe/Ausgabe-Anforderungen, einbeziehend Abschnitte des logischen Blockadressbereichs des realen Bandes, zugeordnet dem bestimmten aus der Anzahl der virtuellen Bänder, basierend auf dem ersten Medien-Kodierungsschlüssel und jedem der entsprechenden, den Eingabe/Ausgabe-Anforderungen zugeordneten, virtuellen Medien-Kodierungsschlüssel. The method of claim 11, further comprising: Generating a first real-volume media encoding key based on an authentication key of the host device and key material stored in the self-encrypting storage device; and Generating a number of second media encoding keys for the input / output requests, including portions of the logical block address range of the real band associated with the one of the number of virtual bands based on the first media encoding key and each of the corresponding ones, the input / Associated with output requests, virtual media encryption keys. Das Verfahren gemäß Anspruch 12, ferner aufweisend: Verschlüsseln von Daten, die Schreib-Eingabe/Ausgabe-Anforderungen zugeordnet sind, unter Verwendung der zweiten Medien-Kodierungsschlüssel vor dem Schreiben der Daten in ein Speichermedium; und Entschlüsseln von Daten, die Lese-Eingabe/Ausgabe-Anforderungen zugeordnet sind, unter Verwendung der zweiten Medien-Kodierungsschlüssel nach dem Lesen der Daten aus dem Speichermedium.The method of claim 12, further comprising: Encrypting data associated with write I / O requests using the second media encryption keys prior to writing the data to a storage medium; and Decrypting data associated with read input / output requests using the second media encryption keys after reading the data from the storage medium. Das Verfahren gemäß einem der Ansprüche 11 bis 13, wobei eine erste Anzahl von virtuellen Bändern in eine zweite Anzahl von realen Bändern konzentriert wird, wobei die zweite Anzahl kleiner als die erste Anzahl ist. The method of one of claims 11 to 13, wherein a first number of virtual bands is concentrated into a second number of real bands, the second number being less than the first number. Das Verfahren gemäß Anspruch 14, wobei die zweite Anzahl signifikant kleiner als die erste Anzahl ist.The method of claim 14, wherein the second number is significantly less than the first number.
DE102014112329.8A 2013-08-28 2014-08-27 Concentration of virtual tapes for self-encrypting drive facilities Withdrawn DE102014112329A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361870936P 2013-08-28 2013-08-28
US61/870,936 2013-08-28
US14/033,753 2013-09-23
US14/033,753 US9117086B2 (en) 2013-08-28 2013-09-23 Virtual bands concentration for self encrypting drives

Publications (1)

Publication Number Publication Date
DE102014112329A1 true DE102014112329A1 (en) 2015-03-05

Family

ID=51727110

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014112329.8A Withdrawn DE102014112329A1 (en) 2013-08-28 2014-08-27 Concentration of virtual tapes for self-encrypting drive facilities

Country Status (2)

Country Link
DE (1) DE102014112329A1 (en)
GB (1) GB2520113A (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040117590A1 (en) * 2002-12-12 2004-06-17 International Business Machines Corp. Aliasing support for a data processing system having no system memory
US8364983B2 (en) * 2008-05-08 2013-01-29 Microsoft Corporation Corralling virtual machines with encryption keys
JP5640845B2 (en) * 2011-03-18 2014-12-17 富士通株式会社 Storage system, storage control device, and storage control method
KR101854200B1 (en) * 2011-04-27 2018-06-20 시게이트 테크놀로지 엘엘씨 Method for writing data on storage medium and storage apparatus applying the same
US8856553B2 (en) * 2011-09-12 2014-10-07 Microsoft Corporation Managing self-encrypting drives in decentralized environments

Also Published As

Publication number Publication date
GB2520113A (en) 2015-05-13
GB201415160D0 (en) 2014-10-08

Similar Documents

Publication Publication Date Title
US9614674B2 (en) Virtual bands concentration for self encrypting drives
DE102012219155B4 (en) Encrypt data objects for data backup
DE112014005266B4 (en) Method and system for forward reference logging in a persistent data store
DE112018003077T5 (en) A CLUSTER OF SAFE DESIGN PLATFORMS
DE112017006699T5 (en) METHOD AND DEVICE FOR AREA-BASED TEST POINTS IN A MEMORY DEVICE
DE102012110692A1 (en) A data storage device that stores a partitioned file in various storage media, and data management methods
DE112014000584T5 (en) Achieving storage efficiency with end-to-end encryption using downstream (downstream) decryptors
DE112020005459T5 (en) DELEGATION OF A CRYPTOGRAPHIC KEY TO A STORAGE SUBSYSTEM
DE102013111339A1 (en) A security management unit, host controller interface with the same, methods of operating a host controller interface, and devices having a host controller interface
Reardon et al. Secure data deletion
DE19803218A1 (en) Computer memory protector
EP2488986B1 (en) Method and device for operating a virtual machine in accordance with an associated information on assignment of rights
DE112013000900T5 (en) Preservation of redundancy in data deduplication systems using an indicator
DE112021000215T5 (en) Storage system with encrypted telemetry data of a data storage device
EP1883906B1 (en) Portable data carrier featuring secure data processing
DE102018114266A1 (en) NON-VOLATILE MEMORY DEVICE WITH SAFE READING
DE112021005968T5 (en) CRYPTO DELETION OF DATA STORED IN A “KEY PER IO” ENABLED DEVICE VIA AN INTERNAL ACTION
DE112020001061T5 (en) ENCRYPTED GEAR PROGRAMMING
DE112019007230T5 (en) Multi-mode protected storage
WO2006010347A1 (en) Rapid archivable worm memory system based on a hard disc
CN105279458A (en) Storage apparatus, communication apparatus, and storage control system
DE102020103846A1 (en) Method for operating a storage system with countermeasures against replay attacks and storage system that performs the same
DE112021000149T5 (en) ENCRYPTION OF A DATA STORAGE DEVICE
DE102014112329A1 (en) Concentration of virtual tapes for self-encrypting drive facilities
DE102004019681A1 (en) Data writing method involves enciphering one portion or entire portion of file system data with predetermined algorithm based on password set by user and recording enciphered data in preset portion of recording medium

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: DILG HAEUSLER SCHINDELMANN PATENTANWALTSGESELL, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee