KR20150026915A - 자기 암호화 드라이브를 위한 가상 밴드 집중 - Google Patents

자기 암호화 드라이브를 위한 가상 밴드 집중 Download PDF

Info

Publication number
KR20150026915A
KR20150026915A KR20140112388A KR20140112388A KR20150026915A KR 20150026915 A KR20150026915 A KR 20150026915A KR 20140112388 A KR20140112388 A KR 20140112388A KR 20140112388 A KR20140112388 A KR 20140112388A KR 20150026915 A KR20150026915 A KR 20150026915A
Authority
KR
South Korea
Prior art keywords
virtual
bands
band
key
actual
Prior art date
Application number
KR20140112388A
Other languages
English (en)
Other versions
KR102223819B1 (ko
Inventor
제레미 워너
레오니드 배리우딘
Original Assignee
엘에스아이 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘에스아이 코포레이션 filed Critical 엘에스아이 코포레이션
Publication of KR20150026915A publication Critical patent/KR20150026915A/ko
Application granted granted Critical
Publication of KR102223819B1 publication Critical patent/KR102223819B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

장치는 저장 장치 및 호스트 장치를 포함한다. 저장 장치는 기록 및 판독 동작 중에 각각 사용자 데이터를 암호화 및 복호화하도록 구성될 수 있다. 호스트 장치는 저장 장치에 통신 가능하게 결합된다. 호스트 장치는 제1 개수의 가상 밴드를 제2 개수의 실제 밴드로 집중시킴으로써 기록 및 판독 동작을 실행하도록 구성될 수 있으며, 여기에서 상기 제2 개수는 상기 제1 개수보다 작다.

Description

자기 암호화 드라이브를 위한 가상 밴드 집중{VIRTUAL BANDS CONCENTRATION FOR SELF ENCRYPTING DRIVES}
본 출원은 2013년 8월 28일자로 출원된 미국 가출원 제61/870,936호에 관한 것으로서, 이 출원은 이로써 전체적으로 참조로서 통합된다.
본 발명의 분야
본 발명은 일반적으로 저장 시스템에 관한 것으로서, 특히 자기 암호화 드라이브를 위한 가상 밴드 집중을 구현하기 위한 방법 및/또는 장치에 관한 것이다.
자기 암호화 드라이브는 종종 기록 및 판독 동작 중에 각각 사용자 데이터를 암호화 및 복호화하기 위해 하드웨어를 이용한다. 암호화 및 복호화는 매체 암호화 키를 사용하여 달성된다. 매체 암호화 키는 통상 논리 블록 주소(logical block address(LBA))의 함수이며, 여기에서 전체 LBA 공간은 몇 개의 LBA 범위("데이터 밴드" 또는 간단히 "밴드"로 지칭되는)로 세분되어 각각의 밴드에 대해 고유한 매체 암호화 키가 주어진다. 하드웨어적인 제약 때문에, 자기 암호화 드라이브가 심각한 성능 저하 없이 지원할 수 있는 밴드의 수는 제한된다(16이 상당이 큰 개수일 것이다). 하드웨어에 의해 지원되는 LBA 범위의 개수보다 많은 액티브 밴드를 갖게 되면, 끊임없는 키 교환으로 인해 성능에 부정적인 효과를 미치게 될 것이다. 전통적인 구현의 호스트의 관점에서, 호스트가 단일 인증 키 하에서 접근 제어를 가지는 사용자 데이터는 단일 LBA 범위에 근접하게 저장된다. 단일 LBA 범위 또는 밴드 제한은 특정 유형의 애플리케이션들(가상 머신(Virtual Machine(VM))과 같은)이 자기 암호화 드라이브 배치로부터 충분하게 혜택을 누리는 것을 어렵게 하며, 그 이유는 가상 머신(VM)이 저장 장치의 더 유연하고 효율적인 사용을 가능하게 하기 위해 많은 (아마, 수천 개의) 밴드를 필요로 할 것이기 때문이다.
자기 암호화 드라이브를 위한 가상 밴드 집중을 가지는 것이 바람직할 것이다.
본 발명은 저장 장치 및 호스트 장치를 포함하는 장치에 관한 것이다. 저장 장치는 기록 및 판독 동작 중에 각각 사용자 데이터를 암호화 및 복호화하도록 구성될 수 있다. 호스트 장치는 저장 장치에 통신 가능하게 결합된다. 호스트 장치는 제1 개수의 가상 밴드를 제2 개수의 실제 밴드로 집중시킴으로써 기록 및 판독 동작을 실행하도록 구성될 수 있으며, 여기에서 상기 제2 개수는 상기 제1 개수보다 작다.
본 발명의 실시예는 이하의 상세한 설명 및 첨부 청구범위와 도면으로부터 명백해질 것이다:
도 1은 본 발명의 실시예에 따른 시스템을 예시하는 도면이다.
도 2는 본 발명의 실시예에 따른 가상 밴드 집중기의 호스트 부분을 예시하는 도면이다.
도 3은 본 발명의 실시예에 따른 가상 밴드 집중기의 저장 장치 부분을 예시하는 도면이다.
도 4는 본 발명의 실시예에 따른 프로세스를 예시하는 도면이다.
도 5는 본 발명의 실시예에 따른 복수의 밴드를 가진 가상 밴드 매니저를 예시하는 도면이다.
도 6은 본 발명의 실시예에 따른 하나 이상의 밴드를 가진 복수의 가상 밴드 매니저를 구비한 호스트를 예시하는 도면이다.
본 발명의 실시예는 자기 암호화 드라이브에 대한 가상 밴드 집중을 제공하는 것을 포함하고 이는 (i) 가상 머신 매니저(VMM)의 일부로서 가상 밴드 매니저(VBN)를 구현하고, (ii) 입/출력 단위로 매체 암호화 키를 생성하고, (iii) 하드웨어 암호화/복호화로 수천 개의 가상 데이터 밴드를 지원하고, (iv) 가상 머신의 이주를 용이하게 하고, (v) 데이터 밴드 단위로 암호키 삭제(crypto erase)를 가능하게 하고, (vi) 호스트 측에서 여전히 복수 가상 밴드를 지원하면서 자기 암호화 드라이브가 지원할 필요가 있는 밴드의 개수를 줄이고, (vii) 제1 개수의 가상 밴드를 매우 작은 제2 개수의 실제 밴드로 집중시키고/시키거나 (viii) 각각의 판독/기록 동작에게 인증 데이터가 호스트에 의해 공급되도록 할 수 있다.
다양한 실시예에서, 복수의 데이터 밴드에 대해 고유한 매체 데이터 암호화 키를 동적으로 생성하는 방법 및/또는 장치가 제공된다. "데이터 밴드" (또는 간단히 "밴드")라는 용어는 일반적으로 논리 블록 주소(logical block address(LBA))의 범위를 지칭한다. 전체 LBA 공간은 몇 개의 LBA 범위로 세분된다. 각각의 밴드는 고유한 매체 암호화 키와 연관된다. 매체 암호화 키는 (예를 들어, 사용자 인증 동작과 연관된 "메타 데이터"의 일부로서) 호스트에 의해 동적으로 제공되는 인증 정보에 기초한다. 매체 암호화 키를 동적으로 생성하는 것은 일반적으로 각각의 입/출력 동작마다 새로운 키를 생성하는 공정을 지칭한다. 매체 암호화 키의 동적 생성은 일반적으로 "즉시(on the fly)"인 것으로 설명된다. 다양한 실시예에서, 공통 인증 키의 사용이 복수의 밴드에 걸쳐 허용되어 단일 인증 키를 사용하여 관리되는 것이 필요한 호스트 데이터를 위한 비인접 밴드의 논리 블록 주소(LBA) 공간을 시뮬레이션한다. 키 자료(예를 들어, 인증 데이터)가 각각의 판독/기록 동작에 대해 호스트(예를 들어, 가상 머신 플레이어 또는 가상 머신 매니저(VM Manager-VMM) 등)에 의해 공급되며, 이는 수천 개 (또는 그 이상)의 밴드를 가능하게 하는 안전한 방법을 제공한다.
도 1을 참조하면, 본 발명의 실시예에 따른 가상 밴드 집중을 구현하는 시스템(100)의 도면이 도시된다. 다양한 실시예에서, 시스템(100)이 자기 암호화 저장 시스템으로 구현될 수 있다. 일부 실시예에서, 시스템(100)은 블록(101), 블록(103) 및 블록(105)을 포함한다. 블록(101)은 본 발명의 실시예에 따라 밴드 매니저와 암호화/복호화 회로를 구현하는 저장 제어기를 포함한다. 블록(103)은 저장 매체를 구현한다. 일부 실시예에서, 블록(103)은 비휘발성 메모리(non-volatile memory(NVM))(예를 들어, 자기 메모리, 플래시 메모리 등)을 포함한다. 그러나, 다른 유형의 매체(예를 들어, 배터리 지원이 있는 또는 없는 휘발성 메모리)가 특정 애플리케이션의 설계 기준을 충족시키도록 적절하게 구현될 수 있다. 하지만, 휘발성 메모리를 사용하면, 보안(및 데이터)이 전력 상실 시에 상실될 수 있다. 블록(105)은 본 발명의 실시예에 따라 가상 메모리 매니저를 구현하는 호스트를 포함한다. 블록(101 및 103)은 동작 가능하게 결합되어 저장 장치(storage device(SD)(102)를 형성한다. 저장 장치(102)와 호스트(105)는 서로 통신 가능하게 결합되도록 구성된다.
제어기(101)는 하나 이상의 개별적인 메모리 채널을 제어하도록 구성될 수 있다. 일부 실시예에서, 제어기(101)는 복수의 메모리 채널을 제어하기 위해 복수의 메모리 채널 제어기 인스턴스를 구현할 수 있다. 제어기(101)는 제어기(101)를 저장 매체(103)에 결합하도록 구성된 매체 인터페이스를 구비한다. 비휘발성 메모리(NVM) 실시예에서, 저장 매체(103)는 하나 이상의 비휘발성 메모리 장치(107)를 포함할 수 있다. 비휘발성 메모리 장치(107)는 일부 실시예에서 하나 이상의 메모리 타겟(예를 들어, 다이, 디스크 플래터 등)(109)을 구비한다. 비휘발성 메모리 장치(107)의 일 유형의 특정 메모리 장치에 따르면, 특정 비휘발성 메모리 장치(107)의 복수의 비휘발성 메모리 타겟(109)은 임의로 그리고/또는 선택적으로 병렬로 접근 가능하다. 비휘발성 메모리 장치(107)는 일반적으로 제어기(101)에 통신 가능하게 결합되는 것이 가능하게 되어 있는 일 유형의 저장 장치를 대표한다. 그러나, 다양한 실시예에서, 자기 저장 장치, 광학 저장 장치, SLC(single level cell) NAND 플래시 메모리, MLC(multi-level cell) NAND 플래시 메모리, TLC(triple level cell) NAND 플래시 메모리, NOR 플래시 메모리, EPROM(electrically programmable read-only memory), SRAM(static random access memory), DRAM(dynamic random access memory), MRAM(magneto-resistive random-access memory), 강자성 메모리(예를 들어, FeRAM, F-RAM, FRAM 등), 상 변화 메모리(예를 들어, PRAM, PCRAM 등), 레이스트랙 메모리(또는 도메인 월 메모리(domain-wall memory(DWM)) 또는 임의의 다른 유형의 메모리 장치 또는 저장 장치와 같은 임의 유형의 저장 장치가 사용 가능하다.
일부 실시예에서, 제어기(101)와 비휘발성 메모리 매체(103)는 별개의 집적 회로(또는 장치) 상에 구현된다. 제어기(101)와 비휘발성 메모리 매체(103)가 별개의 집적 회로(또는 장치) 상에 구현될 때, 제어기(101)의 매체 인터페이스는 일반적으로 복수의 데이터 입/출력(input/output(1/O)) 핀과 복수의 제어 I/O 핀을 관리할 수 있게 된다. 데이터 I/O 핀과 제어 I/O 핀은 제어기(101)를 포함하는 장치를 비휘발성 메모리 매체(103)를 형성하는 외부 장치로 연결하도록 구성될 수 있다. 다양한 실시예에서, 제어기(101)는 내장형 제어기로서 구현된다. 다양한 실시예에서, 제어기(101)와 비휘발성 메모리 매체(103)는 SSHD(solid state hybrid hard disk drive), 하드 디스크 드라이브 또는 SSD(solid-state drive/disk)를 구현한다.
제어기(101)는 또한 명령을 수신하고 호스트(105)로 응답을 전송하도록 구성된 명령 인터페이스를 구비한다. 복수의 비휘발성 메모리 장치를 구현하는 실시예에서, 제어기(101)는 독자 공정을 통해 비휘발성 메모리 장치를 관리하는 적어도 하나의 비휘발성 메모리 제어 프로세서, 및 다른 공정에 따라 호스트 인터페이스를 관리하는 호스트 프로세서를 포함한다. 비휘발성 메모리 제어 프로세서와 호스트 프로세서는 미리 정의된 인터페이스를 통해 통신한다. 호스트 프로세서는 비휘발성 메모리 제어 프로세서로 호스트 명령을 전달하며, 이 비휘발성 메모리 제어 프로세서는 미리 정의된 통신 인터페이스(또는 프로토콜)에 따라 명령을 처리한다. 제어기(101)는 또한 본 발명의 실시예에 따라 가상 밴드 집중 방안을 구현하도록 구성된 밴드 매니저(BM)(110)와 암호화/복호화(E/D) 블록(또는 회로)(112)을 포함한다. 밴드 매니저(110)는 저장 장치(102)에 의해 사용되는 키 자료(KM)를 저장하는 키 저장소(KS)(114)를 포함한다. 일부 실시예에서, 키 저장소(114)는 또한 호스트(105)에 의해 사용되는 가상 키 자료(VKM)를 저장할 수 있다.
호스트(105)는 가상 머신 매니저(VMM) 블록(120)을 포함한다. 가상 머신 매니저(120)는 본 발명의 실시예에 따라 가상 밴드 집중 방안을 구현하도록 구성된다. 가상 머신 매니저(120)는 하나 이상의 가상 밴드 매니저(VBM)(122)를 포함한다. 일부 실시예에서, 가상 머신 매니저(120)는 각각의 실제 밴드에 대해 별개의 가상 밴드 매니저(122) 인스턴스를 실행한다. 각각의 가상 밴드 매니저(122)는 가상 키 자료(VKM)를 저장하는 가상 키 저장소(VKS)(124)를 포함한다. 각각의 가상 밴드 매니저(122)는 저장 장치(102)에 저장하기 위해 복수의 가상 밴드(VB)를 실제 밴드(130)로 집중시킨다. 각각의 가상 밴드 매니저(122)에 의해 수신된 복수의 가상 밴드는 가상 머신 매니저(120)에 의해 각각의 가상 밴드 매니저(122)와 연관되고 호스트(105) 상에서 실행되고 있는 복수의 가상 머신(VM)으로부터 기원한다. 단일 가상 밴드 매니저(122)는 하나 이상의 실제 밴드를 관리할 수 있다. 각각의 가상 밴드 매니저(122)는 각각의 인증 키(AK)(104)를 제공함으로써 그 자신을 저장 장치(102)에 인증한다.
도 2를 참조하면, 본 발명의 실시예에 따른 가상 밴드 집중기의 호스트 부분을 예시하는 호스트(105)의 다이어그램이 도시되어 있다. TCG Enterprise SSC, TCG Opal 및 ATA security를 포함하지만 이에 한정되지는 않는 몇몇 보안 프로토콜에 사용될 수 있는 일반적인 보안 패러다임을 사용하는 본 발명의 실시예가 이하에 설명된다. 다양한 실시예에서, 자기 암호화 드라이브(SED)는 논리 블록 주소(logical block address(LBA)) 범위(또는 데이터 밴드) 상에서 동작한다. 예를 들어, LBA1.1 내지 LBA1.2의 LBA 범위를 가진 밴드(130)가 도 2 및 3에 도시되어 있다. 다양한 실시예에서, 호스트(105)는 인증 키(AK)(104)를 사용하여 그 자신을 저장 장치(SD)(102)에 인증하는 일부 유형의 보안 애플리케이션(AP)을 실행할 수 있다.
종래의 자기 암호화 장치에서 밴드의 수는 제한되며, 그 이유는 데이터 전송 속도를 유지하기 위해 LBA 범위 검색이 종종 하드웨어로 구현되고 하드웨어 테이블은 크기가 제한되기 때문이다. 따라서, 종래의 자기 암호화 드라이브는 성능 영향 없이 16개의 LBA 범위 이상을 좀처럼 지원하지 않는다. 이러한 수치는 대부분의 애플리케이션에 대해 아주 충분하지만(예를 들어, TCG Opal 2.0은 단지 8개의 밴드를 요구한다), 이는 매우 대중적인 가상 머신 환경에 대해 어려움을 발생시킨다.
일부 실시예에서, 단일 컴퓨터가 복수의 소위 가상 머신을 호스팅할 수 있으며, 이들 각각은 개별적인 동작을 위해 어느 범위의 LBA를 필요로 한다(예를 들어, 도 2는 호스트(105)에서 실행하는 세 개의 가상 머신(VM)(311, 312, 313)을 도시한다). 각각의 가상 머신(311-313)(예를 들어, VM-x, x=1, 2, ...로 표시된)의 관점에서, 각각의 VM-x는 0에서 LBA_MAX(x)까지의 LBA를 사용할 수 있으며, 이때 x는 가상 머신의 개수이다. 가상 머신에 의해 사용되는 LBA는 그들을 저장 장치(102)에 알려진 실제 LBA와 구별하기 위해 "가상 LBA"로 지칭된다. 가상 머신 매니저(VMM)(120)는 가상 LBA를 저장 장치(102)가 이해할 수 있는 실제 LBA로 매핑하는 역할을 담당한다.
가상 머신은 항상 생성되고 삭제되기 때문에, 각각의 가상 머신에 인접한 실제 LBA를 할당하는 것이 항상 가능하지는 않다. 대신에, 저장 장치(102)의 실제 LBA 공간으로부터 임의로 잘라낸 한 세트의 밴드가 할당된다. 따라서, 도 2의 예에 도시된 바와 같이, 가상 머신(VM-1)의 두 개의 가상 밴드가 단일 실제 LBA 밴드(130)로 매핑된다. 일반적으로, 실제 밴드의 개수는 가상 밴드의 개수보다 적고, 많은 경우에 실제 밴드의 개수는 가상 밴드의 개수보다 상당히 적다. 예를 들어, 10개 및 20개의 실제 밴드 사이가 적절하게 많은 개수의 실제 밴드로 간주되는 반면에, 특정 애플리케이션에 의해 필요로 하는 가상 밴드의 개수는 수백, 수천 또는 더욱 큰 개수일 수 있다. 따라서, 실제 데이터 밴드의 개수와 가상 데이터 밴드의 개수는 예를 들어 하나 이상의 자릿수만큼 차이가 있을 수 있다. 거의 개별적인 호스트의 역할을 하는 각각의 가상 머신(311-313)은 가상 밴드 매니저(122)의 도움으로 저장 장치(102)와 그 자신을 인증할 수 있으며, 가상 밴드 매니저(122)는 가상 LBA와 실제 LBA 간의 변환 및 그 역을 수행한다. 가상 밴드 매니저(122)의 구현은 특히 가상 키 저장소 유자 및 접근에 관련하여 저장 장치(102)의 밴드 매니저(110)의 구현과 같은 보안 표준에 따른다.
가상 밴드 매니저(122)는 가상 머신(311-313)을 인증하고, 저장 장치(SD)(102)에 인증 키(AK)(104)와 보안 프로토콜(예를 들어, TCG 또는 임의의 다른) 종단을 제공한다. 호스트 측에서, 가상 밴드 매니저(122)는 위에서 설명한 바와 같이 가상 밴드 매니저(122)가 복수의 가상 밴드를 통합하거나 집중시키는 단지 어느 정도의 실제 데이터 밴드를 지원할 수 있다. 저장 장치 측에서, 가상 밴드 매니저(122)는 아래 설명되는 바와 같이 몇몇 실제의 데이터만을 지원할 수 있는데, 여기서, 가상 밴드 매니저(122)는 몇몇 실제의 데이터로 통합하거나 복수의 가상 밴드를 집중시킨다. 많은 실시예에서, 가상 밴드 매니저(122)는 도 2에 도시된 바와 같이 단지 하나의 저장 장치 측 (실제) 데이터 밴드(130)를 지원하도록 구성된다.
일부 실시예에서, 가상 밴드 매니저(122)는 예를 들어 별도의 플래시 장치 또는 EEPROM 상에 가상 키 저장소 (VKS)(124) 자체를 지속적으로 저장한다. 가상 키 저장소(124)는 각각의 가상 밴드에 대해 가상 키 자료(VKM)를 저장한다(예를 들어, 가상 키 자료 VKM1.1 381 및 VKM1.2 382가 VB1,1 및 VB1.2에 대해 도 2에 도시된다). 다른 실시예에서, 저장 장치(102)가 가상 키 자료를 저장하기 위해 (도 3에 도시된) 소위 불투명 키 저장소를 제공한다. 불투명 저장소(362)는 저장 장치(102)가 가상 밴드에 대한 지식을 가지고 있지 않기 때문에 "불투명"으로 지칭되고, 그 결과 불투명 키 저장소(362)가 어떤 키 자료를 포함하고 있는지를 알지 못한다. 저장 장치(102)에 관한 한 불투명 키 저장소(362)는 단지 또 다른 데이터 블록이다.
저장 장치(102)에 위치한 불투명 키 저장소(362)에 가상 키 자료를 저장하면 하나의 호스트로부터 다른 호스트로 가상 머신이 이주하는 것이 용이해진다. 가상 매체 매니저 증명(예를 들어, 인증 키(104))을 알려진 한, 가상 매체 매니저(120)는 불투명 키 저장소(362)로부터의 컨텐츠(389)를 사용해서 다른 호스트 상에서 각각의 가상 키 저장소(124)를 복구할 수 있다. 저장 장치(102)는 불투명 키 저장소(362)에 저장된 정보의 유형에 대해 알지 못한다. 가상 밴드 매니저(122)가 가상 키 자료(예를 들어, VKM1.1 381, VKM1.2 382 등) 중 임의의 것을 바꿀 때, 전체 불투명 키 저장소(362)는 재기록되고 오래된 사본은 제로화된다(예를 들어, 저장 장치(102)는 호스트 요청 시 이런 유형의 서비스를 제공하는 것이 필요하다).
도 3을 참조하면, 본 발명의 실시예에 따른 가상 밴드 집중기의 저장 장치 부분을 예시하는 저장 장치(102)의 다이어그램이 도시된다. 다양한 실시예에서, 저장 장치(102)는 키 저장소(KS)(114)를 포함하는 밴드 매니저 (BM) 애플리케이션(110)을 실행한다. 키 저장소(114)에 겹쳐 쓸 때, 키 저장소(114)의 모든 오래된 사본이 삭제되거나 제로화되는 것이 필요하다는 것을 기억하는 것이 중요하다(예를 들어, 삭제 절차는 저장 매체(103)의 유형에 의존하고 자기 매체를 소자하는 것, 플래시 장치를 지우는 것 등을 포함할 수 있지만 이에 한정되지는 않는다). 일부 실시예에서, 키 저장소(114)는 각각의 실제 데이터 밴드에 대한 키 자료(KM)(361)의 하나의 샘플을 포함한다. 밴드(130)에 대한 키 자료(361)의 단일 샘플이 도 3에 도시되어 있다.
각각의 실제 데이터 밴드에 대한 매체 암호화 키(MEK)(341)는 인증 키(104)를 해당 키 자료를 사용해서 "래핑함(wrapping)"으로써 생성된다. 인증 키(104)와 키 자료(KM1)를 래핑함으로써 매체 암호화 키(MEK1)를 생성하는 예가 도 3에 도시되어 있다. 래핑 동작은 승수(351)에 의해 예시된다. 래핑은 여기에서 매우 포괄적인 의미로 사용된다. 일부 실시예에서, 키 자료(361)는 단순히 인증 키(104)에 의해 암호화된 해당 매체 암호화 키이고(예를 들어, 인증 키(104)는 키 암호화 키(KEK)로서 사용된다), 따라서 "래핑"(351)은 암호화 동작에 해당한다. 암호화/복호화는 일부 버전의 AES 또는 XTS를 포함하지만, 이에 한정되지는 않는다. 일부 실시예에서, 래핑은 인증 키(104)와 키 자료(361)(예를 들어, 도 1의 KM1) 간에 XOR 수행하는 것을 포함하지만, 이에 한정되지는 않는다. 그러나, 키 자료(361)의 임의성을 감소시키지 않는 임의의 동작이 특정 애플리케이션의 설계 기준을 충족시키기 위해 적절하게 구현될 수 있다. 멀티 밴드 실시예에서, 각각의 매체 암호화 키(예를 들어, MEK1, MEK2, ..., MEKn)가 인증 키(104)를 각각의 키 자료(361)(예를 들어, KM1, KM2, ..., KMn)를 사용해서 래핑함으로써 n개의 밴드 각각에 대해 형성될 수 있다.
다양한 실시예에서, 암호화기/복호화기(ED)(112)는 하드웨어(HW) 모듈로 구현된다. 암호화기/복호화기(112)는 각각의 밴드(예를 들어, 도 3에 도시된 밴드(130)에 대한 LBA1.1-LBA1.2)의 경계가 정의되는 테이블을 유지한다. 각각의 밴드에 대한 매체 암호화 키(341)는 인증 키(104)와 해당 키 자료(361)에 기초해서 래핑 동작(351)에 의해 계산되고, 그 후 암호화기/복호화기(112)로 로딩된다. 이러한 실시예에서, 판독/기록 데이터 요청(311)이 호스트(105)에서 도달하면, 암호화기/복호화기(112)는 요청의 LBA를 데이터 밴드로 분류하고 적절한 매체 암호화 키(341)를 선택하기 위해 검색을 실시한다. 종래의 자기 암호화 드라이브에서, 판독 데이터는 선택된 매체 암호화 키로 복호화될 수 있는 반면에 기록 데이터는 선택된 매체 암호화 키로 암호화될 수 있다. 가상 밴드 집중 실시예에서, 선택된 매체 암호화 키(341)는 데이터를 암호화/복호화하기 위해 사용되지 않고, 오히려 선택된 매체 암호화 키(341)는 래핑 동작(342-348)에 의해 각각의 입/출력 요청의 암호화/복호화를 위해 사용되는 실제 매체 암호화 키(예를 들어, MEK1.1 344, MEK1.2 345, MEK3.1 347, MEK3.2 349 등)를 계산하기 위해 사용된다. 래핑 동작(342-348)은 래핑 동작(351)(아래에서 설명되는)과 유사하게 구현될 수 있다.
다양한 실시예에서, 매체 암호화 키(341)는 호스트(105)로 전달되지 않고 (바람직한 실시로서) 분명한 형태로 매체(103)에 저장되지 않는다. 그 대신, 키 자료(KM)(361)만이 저장되고 인증 키(AK)(104)가 매체 암호화 키(341)를 복구하기 위해 필요하다. 저장 장치(102)가 적절하게 구성된다면, 매체(103)로부터 데이터를 판독하거나 매체(103)에 데이터를 기록하는 것은 정확한 증명을 알지 못하는 어느 누구에게도 가능하지 않다.
일부 실시예에서, 각각의 개별 밴드에 대한 암호화 삭제가 허용된다. 예를 들어, 사용자는 특정 밴드에 대한 키 자료(361) 또는 가상 키 자료(381, 382)를 교환하고 키 자료(361) 또는 가상 키 자료(381, 382)의 모든 오래된 사본이 특정 매체 삭제 규칙(예를 들어, 자기 매체에 대한 소자, 플래시에 대한 삭제 등)에 따라 삭제될 때, 특정 밴드의 데이터는 정확한 증명을 알고 있는 임의의 자를 포함하는 어느 누구에 의해서도 더 이상 판독될 수 없다. 소위 "Crypto_Erase" 기능은 데이터 제거를 위한 신속하고 신뢰성 있는 정밀한 방법을 제공하고 안전한 저장 장치 재사용을 허용한다.
가상 밴드 집중 실시예에서, 가상 밴드 매니저(122)는 저장 장치 밴드 매니저(BM)(110)와 인증 키(104)를 사용해서 그 자신을 인증한다. 인증 후에, 가상 밴드 매니저(122)는 각각의 가상 키 저장소(124)를 다른 장치 또는 불투명 키 저장소(362)로부터 로딩한다. 가상 머신(311-313)의 각각은 각각의 인증 키를 사용하여 그 자신을 인증할 필요가 있을 것이다(예를 들어, VM-1(311)은 AK1을 사용해서 그 자신을 인증하고 VM-3(313)은 AK3(305)를 사용해서 그 자신을 인증하는 등등이다). 각각의 가상 매체 암호화 키(VMEK)(384, 386, 387, 388)는 각각의 인증 키(AKx)를 적절한 가상 키 자료(예를 들어, VKM1.1 381, VKM1.2 382 등)를 사용해서 래핑함(예를 들어, 각각의 래핑 동작(383, 385 등)으로써 각각의 가상 밴드(VB)에 대해 생성된다. 해당 가상 매체 암호화 키는 저장 장치(102)에 전송되는 각각의 입/출력 요청에 첨부된다. 암호화기/복호화기(ED)(112)는 데이터 밴드에 대해 각각의 입/출력 요청에 첨부된 가상 매체 암호화 키를 매체 암호화 키(341)를 사용해서 래핑하여(예를 들어, MEK1은 도 2 및 3에 도시된 데이터 밴드(130)에 대해 사용된다), 특정 데이터 동작에 대해 개별적인 매체 암호화 키(예를 들어, MEK1.1, MEK1.2, MEK3.1, MEK3.2 등)를 형성한다.
NVM Express(NVME) 호스트 프로토콜 실시예에서, 특정 SGL(Scatter-Gather List)이 제공되는 판매자 특정 판독/기록이 정의될 수 있다. SGL은 각각의 입/출력 동작에 대한 가상 매체 암호화 키 정보를 포함한다. SATA 프로토콜에서, 호스트는 판독에서 섹터의 개수를 연장하고 키가 제공되는 곳을 표시함으로써 또는 큰 섹터(예를 들어, 520 바이트 센터)를 전달하고 키 자료를 큰 섹터 자체에 투입함으로써 기록 명령에 가상 매체 암호화 키를 단순하게 첨부한다. 판독은 기존의 SATA(ACS) 프로토콜에 적합하기 어렵다. 하나의 예에서, 판독될 LBA를 가진 가상 매체 암호화 키를 전달하도록 허용하는 판매자 고유 명령이 정의될 수 있다. 다른 실시예에서, 호스트는 저장 장치에 상주하는 버퍼로 가상 매체 암호화 키의 테이블을 전송할 수 있고, 전송 시 가상 매체 암호화 키를 신속하게 검색하기 위해 저장 장치에 대한 테이블을 색인하도록 예비 비트(총 7개)를 사용한다. 이 실시예는 제어기에서 기존 SATA HW 자동화를 가능하게 한다.
도 4를 참조하면, 발명의 실시예에 따른 예시적 프로세스(400)를 예시하는 도면이 도시되어 있다. 일부 실시예에서, 프로세스(또는 방법)(400)는 단계(또는 상태)(402), 단계(또는 상태)(404), 단계(또는 상태)(406), 단계(또는 상태)(408), 단계(또는 상태)(410), 및 단계(또는 상태)(412)를 포함한다. 단계(402)에서, 호스트(105)에 있는 가상 밴드 매니저(VBM)는 저장 장치(102)에 있는 밴드 매니저(BM)(110)와 인증 키(AK)를 사용해서 그 자신을 인증한다. 단계(404)에서, 가상 밴드 매니저(122)는 가상 키 저장소(VKS)를 다른 장치 또는 불투명 키 저장소(OKS)(362)로부터 저장 장치(102)로 로딩한다. 단계(406)에서, 각각의 가상 머신(VMx)은 각각의 인증 키(AKs)를 사용해서 그 자신을 인증한다. 단계(408)에서, 가상 매체 암호화 키(VMEK)는 가상 키 저장소(124)로부터의 각각의 가상 키 자료(예를 들어, VKMx)를 사용해서 각각의 인증 키(AKx)를 래핑함으로써 각각의 가상 밴드(VB)에 대해 생성된다. 단계(410)에서, 적절한 가상 매체 암호화 키가 저장 장치(102)에 전송되는 각각의 입/출력 요청에 첨부된다. 단계(412)에서, 저장 장치(102)의 암호화/복호화 하드웨어(112)는 해당 데이터 밴드에 대해 저장 장치(102)에서 생성된 매체 암호화 키(MEK)로 각각의 입/출력 요청에 첨부된 가상 매체 암호화 키를 래핑하여, 특정 데이터 동작에 대한 개별 매체 암호화 키를 생성한다.
도 5를 참조하면, 본 발명의 실시예에 따른 복수의 실제 밴드를 가진 가상 밴드 매니저를 구현하는 시스템(500)을 예시하는 다이어그램이 도시되어 있다. 시스템(500)은 저장 매체(503)를 가진 저장 장치(502) 및 호스트(505)를 포함한다. 저장 장치(502)는 본 발명의 실시예에 따른 가상 밴드 집중 방안을 구현하도록 구현된 밴드 매니저(BM)(510)와 암호화/복호화(E/D) 블록(또는 회로)(512)을 또한 포함한다(도 2 및 3과 관련하여 위에서 설명된). 암호화/복호화(E/D) 블록(512)은 복수의 실제 밴드(130-1 내지 130-N)를 처리하도록 구성된다. 밴드 매니저(510)는 키 자료(예를 들어, KM1(561) 내지 KMN(562))를 저장하는 키 저장소(KS)(514)를 포함한다. 키 자료는 실제 밴드(130-1 내지 130-N)의 암호화/복호화와 관련하여 저장 장치(502)에 의해 사용된다(예를 들어, 동작(551 내지 552)을 래핑함으로써 형성된 각각의 매체 암호화 키를 사용하여). 래핑 동작(551 내지 552)은 도 2 및 3과 관련하여 위에서 설명된 래핑 동작(351, 383 및 385)과 유사하게 구현될 수 있다.
호스트(505)는 본 발명의 실시예에 따른 가상 밴드 집중 방안을 구현하도록 구성된 가상 머신 매니저(VMM)를 포함한다. 가상 머신 매니저는 가상 밴드 매니저(VBM)(522)를 포함한다. 가상 밴드 매니저(522)는 복수의 실제 밴드(130-1 내지 130-N)를 관리하도록 구성된다. 가상 밴드 매니저(522)는 도 2의 가상 밴드 매니저(122)와 유사하게 동작하도록 구성될 수 있다. 가상 밴드 매니저(522)는 저장 장치(502)에 저장하기 위해 실제 밴드(130-1 내지 130-N)로 복수의 가상 밴드(VB)를 집중시킨다. 가상 밴드 매니저(522)에 의해 수신된 복수의 가상 밴드는 호스트(505)에서 실행되는 복수의 가상 머신(VM)에서 유래할 수 있다.
도 6을 참조하면, 본 발명의 실시예에 따른 복수의 가상 밴드 매니저를 가진 호스트를 구현하는 시스템(600)을 예시하는 다이어그램이 도시되어 있다. 시스템(600)은 저장 매체(603)를 가진 저장 장치(602) 및 호스트(605)를 포함한다. 저장 장치(602)는 본 발명의 실시예에 따른 가상 밴드 집중 방안을 구현하도록 구현된 밴드 매니저(BM)(610)와 암호화/복호화(E/D) 블록(또는 회로)(612)을 또한 포함한다(도 2 및 3과 관련하여 위에서 설명된). 암호화/복호화(E/D) 블록(612)은 복수의 실제 밴드(130-1 내지 130-N)를 처리하도록 구성된다. 밴드 매니저(610)는 키 자료(예를 들어, KM1(661) 내지 KMN(662))를 저장하는 키 저장소(KS)(614)를 포함한다. 키 자료는 실제 밴드(130-1 내지 130-N)의 암호화/복호화와 관련하여 저장 장치(602)에 의해 사용된다(예를 들어, 동작(651 내지 652)을 래핑함으로써 형성된 각각의 매체 암호화 키를 사용하여). 래핑 동작(651 내지 652)은 도 2 및 3과 관련하여 위에서 설명된 래핑 동작(351, 383 및 385)과 유사하게 구현될 수 있다.
호스트(605)는 본 발명의 실시예에 따른 가상 밴드 집중 방안을 구현하도록 구성된 가상 머신 매니저(VMM)를 포함한다. 가상 머신 매니저는 복수의 가상 밴드 매니저(VBM)(622-1 내지 622-N)를 포함한다. 가상 밴드 매니저(622-1 내지 622-N)는 복수의 실제 밴드(130-1 내지 130-N)를 관리하도록 구성된다. 가상 밴드 매니저(622-1 내지 622-N)는 도 2의 가상 밴드 매니저(122)와 유사하게 동작하도록 구성될 수 있다. 가상 밴드 매니저(622-1 내지 622-N)는 저장 장치(602)에 저장하기 위해 실제 밴드(130-1 내지 130-N)로 복수의 가상 밴드(VB)를 집중시킨다. 가상 밴드 매니저(622-1 내지 622-N)에 의해 수신된 복수의 가상 밴드는 호스트(605)에서 실행되는 복수의 가상 머신(VM)에서 유래할 수 있다.
가상 밴드 매니저(622-1 내지 622-N)는 복수의 가상 밴드를 실제 밴드(130-1 내지 130-N) 중 하나 이상으로 집중시킬 수 있다. 가상 밴드 매니저(622-1 내지 622-N) 각각은 각각의 인증 키(AK1 내지 AKN)를 사용해서 그 자신을 인증한다. 저장 장치(602)의 밴드 매니저(610)는 각각의 인증 키(AK1 내지 AKN)와 각각의 키 자료(KM1(661) 내지 KMN(662))를 래핑함으로써 밴드(130-1 내지 130-N)에 대해 각각의 매체 암호화 키를 생성한다.
"이다(is(are))" 및 동사와 연계하여 본 명세서에 사용될 때 용어 "할 수 있다(may)" 및 "일반적으로(generally)"는 설명이 예시적이라는 의도를 전달하도록 의도되고 본 개시에 제시된 구체적인 예뿐만 아니나 본 개시에 기초하여 유도될 수 있는 대안 예 둘 다를 포괄할 만큼 충분히 넓은 것으로 믿어진다. 본 명세서에 사용되는 바와 같은 용어 "할 수 있다(may)" 및 "일반적으로(generally)"는 반드시 상응하는 요소를 생략하는 것의 바람직함 또는 가능성을 의미하도록 해석되어야 하는 것은 아니다. "상당히 작은(significantly smaller)"이라는 용어는 일반적으로 비교되는 항목이 예를 들어 하나 이상의 자릿수만큼 다를 수 있다는 의도를 전달하도록 의도된다.
본 발명이 그 실시예를 참조하여 특별히 도시되고 설명되었지만, 형태 및 상세의 다양한 변경이 본 발명의 범위로부터 벗어나지 않으면서 이루어질 수 있다는 점은 당업자에 의해 이해될 것이다.

Claims (15)

  1. 기록 및 판독 동작 중에 사용자 데이터를 각각 암호화 및 복호화하도록 구성된 저장 장치와,
    상기 저장 장치에 통신 가능하게 결합하도록 구성된 호스트 장치 - 상기 호스트 장치는 제1 개수의 가상 밴드(virtual band)를 제2 개수의 실제 밴드(real band)로 집중시킴으로써 상기 기록 및 판독 동작을 실행하도록 더 구성되고, 상기 제2 개수는 상기 제1 개수보다 작음 - 를 포함하는
    장치.
  2. 제1항에 있어서,
    상기 호스트 장치는 상기 제1 개수의 가상 밴드를 상기 제2 개수의 실제 밴드로 매핑하도록 구성된 가상 머신 매니저를 포함하는
    장치.
  3. 제1항에 있어서,
    상기 가상 머신 매니저는 상기 제1 개수의 가상 밴드를 상기 제2 개수의 실제 밴드로 매핑하도록 구성된 하나 이상의 가상 밴드 매니저를 포함하는
    장치.
  4. 제3항에 있어서,
    상기 하나 이상의 가상 밴드 매니저의 각각은 복수의 상기 가상 밴드를 상기 제2 개수의 실제 밴드 중 하나 이상으로 매핑하도록 구성되는
    장치.
  5. 제1항에 있어서,
    상기 저장 장치는 키 자료를 저장하도록 구성된 밴드 매니저를 포함하는
    장치.
  6. 제3항에 있어서,
    상기 밴드 매니저는 불투명 키 저장소(an opaque key storage)를 포함하는
    장치.
  7. 제1항에 있어서,
    상기 저장 장치는 암호화 및 복호화 모듈을 포함하는
    장치.
  8. 제1항에 있어서,
    상기 암호화 및 복호화 모듈은 하드웨어로 구현되는
    장치.
  9. 제1항에 있어서,
    각각의 가상 밴드는 고유의 인증 및 암호화 키를 사용해서 보안 관점에서 여전히 충분히 보호되는
    장치.
  10. 제1항에 있어서,
    상기 제2 개수는 상기 제1 개수보다 상당히 작은
    장치.
  11. 자기 암호화 저장 장치에 저장하기 위해 복수의 가상 밴드를 실제 밴드로 집중시키는 방법으로서,
    상기 복수의 가상 밴드의 각각의 가상 논리 블록 어드레스 범위의 하나 이상의 부분을 상기 실제 밴드의 논리 블록 어드레스 범위의 부분과 연관시키는 단계와,
    가상 머신의 인증 키 및 상기 가상 머신을 실행하는 호스트 장치에 저장된 가상 키 자료에 기초해서, 상기 복수의 가상 밴드의 각각에 대해 각각의 가상 매체 암호화 키를 생성하는 단계와,
    상기 복수의 가상 밴드 중 특정한 하나에 대한 상기 각각의 가상 매체 암호화 키를, 상기 복수의 가상 밴드 중 상기 특정한 하나와 연관된 상기 실제 밴드의 상기 논리 블록 어드레스 범위의 부분을 포함하는 입/출력 요청과 연관시키는 단계를 포함하는
    복수의 가상 밴드를 실제 밴드로 집중시키는 방법.
  12. 제11항에 있어서,
    상기 호스트 장치의 인증 키 및 상기 자기 암호화 저장 장치에 저장된 키 자료에 기초해서 상기 실제 밴드에 대해 제 1 매체 암호화 키를 생성하는 단계와,
    상기 제1 매체 암호화 키 및 상기 입/출력 요청과 연관된 각각의 가상 매체 암호화 키의 각각에 기초해서 상기 복수의 가상 밴드 중 상기 특정한 하나와 연관된 상기 실제 밴드의 상기 논리 블록 어드레스 범위의 부분을 포함하는 상기 입/출력 요청에 대해 복수의 제2 매체 암호화 키를 형성하는 단계를 더 포함하는
    복수의 가상 밴드를 실제 밴드로 집중시키는 방법.
  13. 제12항에 있어서,
    저장 매체에 데이터를 기록하기 전에 상기 제2 매체 암호화 키를 사용해서 기록 입/출력 요청과 연관된 데이터를 암호화하는 단계와,
    상기 저장 매체로부터 상기 데이터를 판독한 후에 상기 제2 매체 암호화 키를 사용해서 판독 입/출력 요청과 연관된 데이터를 복호화하는 단계를 더 포함하는
    복수의 가상 밴드를 실제 밴드로 집중시키는 방법.
  14. 제11항에 있어서,
    제1 개수의 가상 밴드는 제2 개수의 실제 밴드로 집중되고, 상기 제2 개수는 상기 제1 개수보다 작은
    복수의 가상 밴드를 실제 밴드로 집중시키는 방법.
  15. 제14항에 있어서,
    상기 제2 개수는 상기 제1 개수보다 상당히 작은
    복수의 가상 밴드를 실제 밴드로 집중시키는 방법.
KR1020140112388A 2013-08-28 2014-08-27 자기 암호화 드라이브를 위한 가상 밴드 집중 KR102223819B1 (ko)

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 US9117086B2 (en) 2013-08-28 2013-09-23 Virtual bands concentration for self encrypting drives
US14/033,753 2013-09-23

Publications (2)

Publication Number Publication Date
KR20150026915A true KR20150026915A (ko) 2015-03-11
KR102223819B1 KR102223819B1 (ko) 2021-03-04

Family

ID=52584957

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140112388A KR102223819B1 (ko) 2013-08-28 2014-08-27 자기 암호화 드라이브를 위한 가상 밴드 집중

Country Status (4)

Country Link
US (2) US9117086B2 (ko)
KR (1) KR102223819B1 (ko)
CN (1) CN104424016B (ko)
TW (1) TWI673989B (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9231923B1 (en) * 2013-11-12 2016-01-05 Amazon Technologies, Inc. Secure data destruction in a distributed environment using key protection mechanisms
US10069625B2 (en) * 2015-09-22 2018-09-04 Quanta Computer Inc. System and method for automatic key generation for self-encrypting drives
CN105243344B (zh) * 2015-11-02 2020-09-01 上海兆芯集成电路有限公司 具有硬盘加密功能的芯片组以及主机控制器
WO2018008123A1 (ja) 2016-07-07 2018-01-11 株式会社日立製作所 計算機システム
US10929572B2 (en) * 2017-04-10 2021-02-23 Nyquist Semiconductor Limited Secure data storage device with security function implemented in a data security bridge
US10824367B2 (en) * 2017-10-19 2020-11-03 Seagate Technology Llc Adaptive intrusion detection based on monitored data transfer commands
US11693792B2 (en) * 2018-01-04 2023-07-04 Google Llc Infernal storage in cloud disk to support encrypted hard drive and other stateful features
US11599479B2 (en) * 2018-05-09 2023-03-07 Intel Corporation Technology for fine-grain encryption and secure key injection on self-encrypting drives
JP7288045B2 (ja) 2018-05-11 2023-06-06 サイジェント テクノロジー インコーポレイテッド 改良されたデータ制御及びアクセスの方法及びシステム
JP2020030527A (ja) * 2018-08-21 2020-02-27 キオクシア株式会社 記憶装置及びプログラム
CN109951275B (zh) * 2019-02-22 2021-08-17 记忆科技(深圳)有限公司 密钥生成方法、装置、计算机设备及存储介质
US11720715B2 (en) * 2021-03-21 2023-08-08 Western Digital Technologies, Inc. Secure data storage device and method of encryption

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090327582A1 (en) * 2008-06-30 2009-12-31 Brent Chartrand Banded Indirection for Nonvolatile Memory Devices
JP2012198711A (ja) * 2011-03-18 2012-10-18 Fujitsu Ltd ストレージシステム、ストレージ制御装置およびストレージ制御方法
US20130290668A1 (en) * 2012-04-27 2013-10-31 Seagate Technology Llc Method and apparatus for adjustable virtual addressing for data storage

Family Cites Families (19)

* 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
US20080141039A1 (en) * 2006-12-11 2008-06-12 Matze John E G System for using a virtual tape encryption format
TWI573079B (zh) * 2007-01-08 2017-03-01 精品科技股份有限公司 電子文件資訊安全控管系統及其方法
TWI393007B (zh) * 2008-01-04 2013-04-11 Fineart Technology Co Ltd 可控制存取之資訊儲存裝置、資訊存取控制方法與資訊保護方法
TWI354910B (en) * 2008-01-25 2011-12-21 Fineart Technology Co Ltd Storage device or enterprise computer and equipmen
US8364983B2 (en) 2008-05-08 2013-01-29 Microsoft Corporation Corralling virtual machines with encryption keys
US9286493B2 (en) 2009-01-07 2016-03-15 Clevx, Llc Encryption bridge system and method of operation thereof
US8286004B2 (en) * 2009-10-09 2012-10-09 Lsi Corporation Saving encryption keys in one-time programmable memory
JP2010282281A (ja) * 2009-06-02 2010-12-16 Hitachi Ltd ディスクアレイ装置、及びその制御方法、並びにプログラム
US8442235B2 (en) * 2010-04-14 2013-05-14 Microsoft Corporation Extensible management of self-encrypting storage devices
CN101854243B (zh) * 2010-04-30 2012-12-12 株洲南车时代电气股份有限公司 一种电路系统设计加密电路及其加密方法
JP5691418B2 (ja) * 2010-11-11 2015-04-01 富士通株式会社 ストレージ装置、記憶装置、制御装置および記憶装置制御方法
US8732485B2 (en) 2010-12-01 2014-05-20 International Business Machines Corporation Methods for process key rollover/re-encryption and systems thereof
KR101854200B1 (ko) 2011-04-27 2018-06-20 시게이트 테크놀로지 엘엘씨 데이터 라이트 방법 및 이를 적용한 저장 장치
US8856553B2 (en) 2011-09-12 2014-10-07 Microsoft Corporation Managing self-encrypting drives in decentralized environments
JP5938997B2 (ja) * 2012-03-30 2016-06-22 富士通株式会社 情報記憶装置、情報記憶装置制御プログラム、情報記憶装置制御方法
JP2014052899A (ja) * 2012-09-07 2014-03-20 Toshiba Corp メモリシステムとその制御方法
US9009490B2 (en) * 2012-10-08 2015-04-14 International Business Machines Corporation Implementing dynamic banding of self encrypting drive
US9176896B2 (en) * 2013-10-30 2015-11-03 Seagate Technology Llc Method of managing aligned and unaligned data bands in a self encrypting solid state drive

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090327582A1 (en) * 2008-06-30 2009-12-31 Brent Chartrand Banded Indirection for Nonvolatile Memory Devices
JP2012198711A (ja) * 2011-03-18 2012-10-18 Fujitsu Ltd ストレージシステム、ストレージ制御装置およびストレージ制御方法
US20130290668A1 (en) * 2012-04-27 2013-10-31 Seagate Technology Llc Method and apparatus for adjustable virtual addressing for data storage

Also Published As

Publication number Publication date
CN104424016B (zh) 2020-04-21
TWI673989B (zh) 2019-10-01
US9117086B2 (en) 2015-08-25
TW201521413A (zh) 2015-06-01
US20150067349A1 (en) 2015-03-05
US9614674B2 (en) 2017-04-04
US20150341171A1 (en) 2015-11-26
CN104424016A (zh) 2015-03-18
KR102223819B1 (ko) 2021-03-04

Similar Documents

Publication Publication Date Title
KR102223819B1 (ko) 자기 암호화 드라이브를 위한 가상 밴드 집중
US8862902B2 (en) Cascaded data encryption dependent on attributes of physical memory
JP5662037B2 (ja) 不揮発性メモリに対してデータの読み出しおよび書き込みを行うためのデータホワイトニング
KR102176612B1 (ko) 보안 서브시스템
US20140032935A1 (en) Memory system and encryption method in memory system
US11416417B2 (en) Method and apparatus to generate zero content over garbage data when encryption parameters are changed
US8996933B2 (en) Memory management method, controller, and storage system
TWI679554B (zh) 資料儲存裝置以及其操作方法
KR102292641B1 (ko) 메모리 컨트롤러, 그 동작 방법 및 이를 포함하는 메모리 시스템
CN101169971A (zh) 电子硬盘
US9176896B2 (en) Method of managing aligned and unaligned data bands in a self encrypting solid state drive
US20190377693A1 (en) Method to generate pattern data over garbage data when encryption parameters are changed
US11349643B2 (en) Techniques for using local key management in a data storage system
US20220393859A1 (en) Secure Data Storage with a Dynamically Generated Key
US20220123932A1 (en) Data storage device encryption
TW201830284A (zh) 資料儲存系統、資料儲存方法及資料讀取方法
TW202011248A (zh) 資料儲存裝置以及其操作方法
JP5978260B2 (ja) 自己暗号化ドライブ用の仮想バンド集信
Jin et al. An encryption approach to secure modification and deletion for flash-based storage
GB2520113A (en) Virtual bands concentration for self encrypting drives
Lee et al. Secure Deletion for Flash-Based Self-Encrypting Drives

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant