KR20200063948A - 데이터 암호화 키를 암호화된 상태로 공유하는 스토리지 장치 및 스토리지 장치의 동작 방법 - Google Patents

데이터 암호화 키를 암호화된 상태로 공유하는 스토리지 장치 및 스토리지 장치의 동작 방법 Download PDF

Info

Publication number
KR20200063948A
KR20200063948A KR1020190039623A KR20190039623A KR20200063948A KR 20200063948 A KR20200063948 A KR 20200063948A KR 1020190039623 A KR1020190039623 A KR 1020190039623A KR 20190039623 A KR20190039623 A KR 20190039623A KR 20200063948 A KR20200063948 A KR 20200063948A
Authority
KR
South Korea
Prior art keywords
user
dek
encrypted
password
key
Prior art date
Application number
KR1020190039623A
Other languages
English (en)
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 삼성전자주식회사
Priority to US16/674,413 priority Critical patent/US11381388B2/en
Publication of KR20200063948A publication Critical patent/KR20200063948A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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/604Tools and structures for managing or administering access control systems
    • 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
    • G06F21/79Protecting 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 in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 스토리지 장치에 관한 것이다. 본 발명의 스토리지 장치는 불휘발성 메모리 장치, 그리고 제1 사용자에 의해 불휘발성 메모리 장치의 저장 공간에 기입되는 데이터를 암호화하고 그리고 저장 공간으로부터 읽혀지는 데이터를 복호화하는 데에 사용되는 데이터 암호화 키를 관리하도록 구성되는 제어기를 포함한다. 제어기는 디피-헬먼 알고리즘에 기반하여 데이터 암호화 키를 암호화하고, 제2 사용자에게 암호화된 데이터 암호화 키의 권한을 부여하고, 그리고 디피-헬먼 알고리즘에 기반하여 암호화된 데이터 암호화 키를 복호화하여 제2 사용자에게 저장 공간의 권한을 부여하도록 더 구성된다.

Description

데이터 암호화 키를 암호화된 상태로 공유하는 스토리지 장치 및 스토리지 장치의 동작 방법{STORAGE DEVICE SHARING DATA ENCRYPTION KEY AS ENCRYPTED AND OPERATING METHOD OF STORAGE DEVICE}
본 발명은 반도체 장치에 관한 것으로, 더 상세하게는 스토리지 장치를 이용하는 다수의 사용자들의 암호화 키들을 암호화하여 공유하는 것을 지원하는 스토리지 장치 및 스토리지 장치의 동작 방법에 관한 것이다.
스토리지 장치는 컴퓨터, 스마트폰, 스마트 패드 등과 같은 호스트 장치의 제어에 따라 데이터를 저장하는 장치이다. 스토리지 장치는 하드 디스크 드라이브(HDD, Hard Disk Drive)와 같이 자기 디스크에 데이터를 저장하는 장치, 솔리드 스테이트 드라이브(SSD, Solid State Drive), 메모리 카드 등과 같이 반도체 메모리, 특히 불휘발성 메모리에 데이터를 저장하는 장치를 포함한다.
불휘발성 메모리는 읽기 전용 메모리(Read Only Memory, ROM)), 프로그램 가능한 ROM(Programmable ROM, PROM), 전기적으로 프로그램 가능한 ROM (Electrically Programmable ROM, EPROM), 전기적으로 소거 및 프로그램 가능한 ROM (Electrically Erasable and Programmable ROM, EEPROM), 플래시 메모리, 상 변화 랜덤 액세스 메모리(Phase-change Random Access Memory, PRAM), 자기 RAM (Magnetic RAM, MRAM), 저항성 RAM (Resistive RAM, RRAM), 강유전체 RAM (Ferroelectric RAM, FRAM) 등을 포함한다.
스토리지 장치에 저장되는 데이터의 보안성을 향상하기 위하여, 데이터는 암호화 되어 저장되어야만 하며, 데이터 암호화 키는 안전하게 보호되고 공유 되어야만 한다. 이러한 상황에서 스토리지 장치에 접근하는 다수 사용자들의 서로 다른 스토리지 접근권한을 안전하게 관리하기 위해, 다수의 사용자들 사이에서 암호화 키를 안전하게 공유하는 기술이 요구되고 있다.
본 발명의 목적은 다수의 사용자들 사이에서 보안성을 유지하면서 암호화 키를 공유하는 스토리지 장치 및 스토리지 장치의 동작 방법을 제공하는 데에 있다.
본 발명의 실시 예에 따른 스토리지 장치는 불휘발성 메모리 장치, 그리고 제1 사용자에 의해 불휘발성 메모리 장치의 저장 공간에 기입되는 데이터를 암호화하고 그리고 저장 공간으로부터 읽혀지는 데이터를 복호화하는 데에 사용되는 데이터 암호화 키(Data Encryption Key)(이하, DEK)를 관리하도록 구성되는 제어기를 포함한다. 제어기는 디피-헬먼(Diffie-Hellman)(이하, DH) 알고리즘에 기반하여 DEK를 암호화하고, 제2 사용자에게 암호화된 DEK의 권한을 부여(authorize)하고, 그리고 DH 알고리즘에 기반하여 암호화된 DEK를 복호화하여 제2 사용자에게 저장 공간의 권한을 부여(authorize)하도록 더 구성된다.
본 발명의 실시 예에 따른 스토리지 장치는 불휘발성 메모리 장치, 그리고 제1 사용자에 의해 불휘발성 메모리 장치의 저장 공간에 기입되는 데이터를 암호화하고 그리고 저장 공간으로부터 읽혀지는 데이터를 복호화하는 데에 사용되는 데이터 암호화 키(Data Encryption Key)(이하, DEK)를 관리하도록 구성되는 제어기를 포함한다. 제어기는 DEK를 불휘발성 메모리 장치의 제1 사용자의 영역에 저장할 때에 DEK를 제1 방식으로 암호화하고, 그리고 DEK를 불휘발성 메모리 장치의 제2 사용자의 영역에 저장할 때에 DEK를 제2 방식으로 암호화하도록 더 구성된다.
데이터를 저장하도록 구성되는 범위들, 그리고 범위들에 각각 대응하는 슬롯들을 포함하는 본 발명의 실시 예에 따른 스토리지 장치의 동작 방법은 제1 사용자가 접속함에 따라, 범위들에 각각 대응하는 데이터 암호화 키들(Data Encryption Keys)(이하, DEK들)을 제1 방식으로 암호화하여 슬롯들 중 제1 슬롯에 저장하는 단계, 제2 사용자가 접속함에 따라, 슬롯들 중 제2 슬롯을 제2 사용자에게 할당하는 단계, 그리고 범위들 중 하나의 범위에 대응하는 DEK를 제2 방식으로 암호화하여 제2 슬롯에 저장하는 단계를 포함한다.
본 발명에 따르면, 스토리지 장치는 다수의 사용자들 사이에서 암호화 키를 암호화한 상태로 공유하는 것을 지원한다. 공유를 위해 암호화된 키는 사용자들에 의해 공통으로 복호화가 가능하도록 암호화된다. 따라서, 암호화 키의 보안성을 유지하면서 암호화 키를 공유하는 것을 지원하는 스토리지 장치 및 스토리지 장치의 동작 방법이 제공된다.
도 1은 다수의 사용자들이 스토리지 장치를 액세스하는 예를 보여준다.
도 2는 본 발명의 실시 예에 따라, 스토리지 장치가 제1 데이터 암호화 키를 암호화한 상태로 제2 사용자에게 제공하는 예를 보여주는 순서도이다.
도 3은 본 발명의 실시 예에 따라 다수의 사용자들이 스토리지 장치를 액세스하는 예를 더 상세히 보여준다.
도 4는 제1 사용자가 스토리지 장치의 관리자로 등록되는 과정을 보여준다.
도 5는 도 4의 과정에서 스토리지 장치에서 정보가 생성되고 교환되는 예를 보여준다.
도 6은 제2 사용자의 스토리지 장치의 저장 공간의 권한의 요청을 생성하는 과정을 보여준다.
도 7은 도 6의 과정에서 스토리지 장치에서 정보가 생성되고 교환되는 예를 보여준다.
도 8은 제1 사용자가 제2 사용자에게 데이터 암호화 키를 암호화하여 공유하는 과정을 보여준다.
도 9는 도 8의 과정에서 스토리지 장치에서 정보가 생성되고 교환되는 예를 보여준다.
도 10은 제2 사용자가 제1 사용자로부터 접근 권한을 부여 받은 이후 제3 데이터 암호화 키를 획득하는 과정을 보여준다.
도 11은 도 10의 과정에서 스토리지 장치에서 정보가 생성되고 교환되는 예를 보여준다.
도 12는 스토리지 장치가 데이터 암호화 키를 암호화하는 방법들의 예를 보여준다.
이하에서, 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있을 정도로, 본 발명의 실시 예들이 명확하고 상세하게 기재될 것이다.
도 1은 다수의 사용자들이 스토리지 장치(100)를 액세스하는 예를 보여준다. 도 1을 참조하면, 초기에 스토리지 장치(100)의 내부 저장 공간(또는 내부의 일부 저장 공간)은 잠금 상태일 수 있다. 잠금 상태(100)의 스토리지 장치(100)는 내부 저장 공간의 권한을 갖는 사용자의 액세스를 허용하고, 권한을 갖지 않는 사용자의 액세스를 허용하지 않을 수 있다.
예를 들어, 제1 사용자(U1)는 스토리지 장치(100)를 액세스하기 위한 권한(authority)을 가질 수 있다. 제1 사용자(U1)는 자신의 권한으로 스토리지 장치(100)에 대한 인증을 수행할 수 있다. 스토리지 장치(100)의 내부 저장 공간의 접근 권한을 갖는 제1 사용자(U1)가 스토리지 장치(100)에 대한 인증을 수행하면, 제1 사용자(U1)의 스토리지 장치(100)의 접근 권한(authority)에 따라 스토리지 장치(100)의 내부 저장 공간의 잠금 상태(lock state)가 해제되어 잠금 해제 상태(unlock state)가 될 수 있다. 예를 들어, 스토리지 장치(100)의 내부 저장 공간 중에서 제1 사용자(U1)에게 권한이 부여된 일부 저장 공간의 잠금 상태가 해제될 수 있다.
제1 사용자(U1)에게 권한이 부여된 일부 저장 공간이 잠금 해제 상태가 되면, 스토리지 장치(100)는 제1 사용자(U1)에게 일부 저장 공간의 데이터 암호화 키, 예를 들어 제1 데이터 암호화 키(DEK1)를 허용할 수 있다. 제1 사용자(U1)는 제1 데이터 암호화 키(DEK1)를 통해 스토리지 장치(100)일부 저장 공간에 데이터를 기입하거나 데이터를 읽을 수 있다.
예를 들어, 제1 사용자(U1)의 제1 데이터 암호화 키(DEK1)는 제1 사용자(U1)가 제공하는 패스워드로 암호화되고, 패스워드로 암호화된 제1 데이터 암호화 키(DEK1_EPW)는 스토리지 장치(100)에 보관될 수 있다. 스토리지 장치(100)가 잠금 상태일 때에, 스토리지 장치(100)는 제1 데이터 암호화 키(DEK1)에 대한 사용자의 접근을 금지할 수 있다.
제1 사용자(U1)가 자신의 권한으로 스토리지 장치(100)를 잠금 해제 상태로 전환하고자 할 때, 제1 사용자(U1)는 스토리지 장치(100)에 패스워드를 입력할 수 있다. 입력된 패스워드의 인증이 성공하면, 스토리지 장치(100)는 입력된 패스워드를 이용하여, 패스워드로 암호화된 제1 데이터 암호화 키(DEK1_EPW)를 복호화할 수 있다. 제1 화살표(A1)로 표시된 바와 같이, 제1 사용자(U1)는 복호화된 제1 데이터 암호화 키(DEK1)를 통해 스토리지 장치(100)를 액세스할 수 있다.
예를 들어, 제1 사용자(U1)가 스토리지 장치(100)에 데이터를 기입할 때, 데이터는 제1 데이터 암호화 키(DEK1)를 이용하여 암호화되고, 제1 데이터 암호화 키(DEK1)로 암호화된 데이터가 스토리지 장치(100)에 기입될 수 있다. 제1 사용자(U1)가 스토리지 장치(100)로부터 데이터를 읽을 때, 데이터는 제1 데이터 암호화 키(DEK1)를 이용하여 복호화되고, 제1 데이터 암호화 키(DEK1)로 복호화된 데이터가 제1 사용자(U1)에게 제공될 수 있다.
제2 사용자(U2)는 스토리지 장치(100)를 액세스하기 위해 자신의 권한(authority)을 생성할 수 있다. 제2 사용자(U2)가 액세스하고자 하는 스토리지 장치(100)의 저장 공간이 제1 사용자(U1)가 액세스하는 스토리지 장치(100)의 저장 공간과 중복될 때, 제2 화살표(A2)로 표시된 바와 같이, 제2 사용자(U2)는 제1 사용자(U1)가 사용하는 것과 동일한 제1 데이터 암호화 키(DEK1)를 획득하여야 한다.
제1 데이터 암호화 키(DEK1)를 암호화하지 않은 상태로 제2 사용자(U2)에게 전달할 때, 전달하는 과정에서 제1 데이터 암호화 키(DEK1)가 유출되면 스토리지 장치(100)의 보안성이 붕괴될 수 있다. 제1 사용자(U1)의 패스워드로 암호화된 제1 데이터 암호화 키(DEK1_EPW)를 제2 사용자(U2)에게 제공하면, 제1 데이터 암호화 키(DEK1)가 유출되는 것은 방지될 수 있다.
그러나 제2 사용자(U2)가 제1 사용자(U1)의 패스워드로 암호화된 제1 데이터 암호화 키(DEK1_EPW)를 복호화하기 위해, 제2 사용자(U2)는 제1 사용자(U1)의 패스워드를 알아야 한다. 이는 제1 사용자(U1)의 비밀 정보가 제2 사용자(U2)에게 유출되는 것을 의미하며, 제1 사용자(U1)와 제2 사용자(U2)에게 서로 다른 권한들을 부여하는 것의 의미를 퇴색시킨다.
예시적으로, 특정한 사용자가 스토리지 장치(100)에 대한 인증을 수행하는 것은, 스토리지 장치(100)가 잠금 해제 상태가 되는 것을 의미하지 않을 수 있다. 예를 들어, 스토리지 장치(100)의 사용자 목록에 등록된 사용자들 중에서, 스토리지 장치(100)의 저장 공간의 권한이 부여되지 않은 사용자가 존재할 수 있다. 해당 사용자가 스토리지 장치(100)에 대한 인증을 수행하여도, 스토리지 장치(100)의 내부 저장 공간은 잠금 상태를 유지할 수 있다. 이하에서, 본 발명의 기술적 사상을 용이하게 전달하기 위하여, 스토리지 장치(100)의 내부 저장 공간의 권한이 부여되는 사용자들의 예가 설명된다.
도 2는 본 발명의 실시 예에 따라, 스토리지 장치(100)가 제1 데이터 암호화 키(DEK1)를 암호화한 상태로 제2 사용자(U2)에게 제공하는 예를 보여주는 순서도이다. 도 1 및 도 2를 참조하면, S110 단계에서, 스토리지 장치(100)는 디피-헬먼(Diffie-Hellman)(DH) 알고리즘(또는 DH 키 교환 알고리즘)에 기반하여 스토리지 장치(100)의 저장 공간의 제1 데이터 암호화 키(DEK1)를 암호화할 수 있다. 예를 들어, 스토리지 장치(100)는 DH 키 교환 알고리즘에 기반하여 공통키를 생성하고, 그리고 공통키를 이용하여 제1 데이터 암호화 키(DEK1)를 암호화할 수 있다.
예를 들어, DH 알고리즘에 기반한 제1 데이터 암호화 키(DEK1)의 암호화는 제1 데이터 암호화 키(DEK1)를 보유한 제1 사용자(U1)가 자신의 권한으로 스토리지 장치(100)에 대한 인증을 수행하여 스토리지 장치(100)를 잠금 해제 상태로 전환한 상태에서 수행될 수 있다.
S120 단계에서, 스토리지 장치(100)는 제2 사용자(U2)에게 DH 알고리즘에 기반하여 암호화된 제1 데이터 암호화 키(예를 들어, DEK1_ECK)의 권한을 부여할 수 있다. 예를 들어, DH 알고리즘에 기반하여 암호화된 제1 데이터 암호화 키(DEK1_ECK)의 권한을 부여하는 것은 제1 사용자(U1)가 자신의 권한으로 스토리지 장치(100)를 잠금 해제한 상태에서 수행될 수 있다.
S130 단계에서, 스토리지 장치(100)는 DH 알고리즘에 기반하여 암호화된 데이터 암호화 키(DEK1_ECK)를 DH 알고리즘에 기반하여 복호화하여, 제2 사용자(U2)에게 스토리지 장치(100)의 저장 공간의 권한을 부여(authorize)할 수 있다. 예를 들어, 복호화는 제2 사용자(U2)가 스토리지 장치(100)에 접속한 상태에서 수행되며, 제2 사용자(U2)가 권한을 획득하는 과정의 일부일 수 있다.
DH 알고리즘은 제1 사용자(U1) 및 제2 사용자(U2) 사이에서 외부로 유출되지 않는 공통의 비밀키(예를 들어, 공통키(예를 들어, CK12))를 공유할 수 있게 한다. DH 알고리즘에 기반하여, 스토리지 장치(100)는 공통키(CK12)를 이용하여 제1 데이터 암호화 키(DEK1)를 암호화 및 복호화를 수행할 수 있다.
제1 데이터 암호화 키(DEK1)가 암호화된 상태로 제1 사용자(U1) 및 제2 사용자(U2)에 의해 공유되므로, 공유 과정에서 제1 데이터 암호화 키(DEK1)가 유출되는 것이 방지될 수 있다. 또한, 제1 사용자(U1) 및 제2 사용자(U2)는 공통키(CK12)를 이용하여 각각 암호화 및 복호화를 수행하므로, 제1 사용자(U1)의 비밀 정보가 제2 사용자(U2)에게 알려지는 것이 방지될 수 있다.
도 3은 본 발명의 실시 예에 따라 다수의 사용자들이 스토리지 장치(100)를 액세스하는 예를 더 상세히 보여준다. 도 3을 참조하면, 스토리지 장치(100)는 컴퓨팅 장치(10)와 결합될 수 있다. 컴퓨팅 장치(10)는 컴퓨터, 노트북, 스마트폰, 스마트 패드, 서버, 워크스테이션 등과 같은 스토리지 장치(100)를 액세스할 수 있는 다양한 장치들을 포함할 수 있으며, 한정되지 않는다.
제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U3)는 컴퓨팅 장치(10)를 통해 스토리지 장치(100)를 액세스할 수 있다. 제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U3)는 스토리지 장치(100)에 대한 자신의 권한들(authorities)을 가질 수 있다. 제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U3)는 자신의 패스워드들을 통해 스토리지 장치(100)를 잠금 해제 상태로 전환할 수 있다.
스토리지 장치(100)는 불휘발성 메모리 장치(110) 및 제어기(120)를 포함할 수 있다. 불휘발성 메모리 장치(110)는 플래시 메모리, 상 변화 메모리, 자기 메모리, 저항성 메모리 등과 같은 다양한 메모리들을 포함할 수 있다. 불휘발성 메모리 장치(110)의 저장 공간은 메타 영역(111) 및 사용자 영역(112)으로 분할될 수 있다.
메타 영역(111)은 스토리지 장치(100)를 관리하기 위한 메타 데이터를 저장하는 데에 사용될 수 있다. 예를 들어, 메타 영역(111)은 불휘발성 메모리 장치(110)의 물리 주소들과 컴퓨팅 장치(10)가 스토리지 장치(100)에 부여하는 논리 주소들 사이의 관계 정보를 저장할 수 있다. 또한, 메타 영역(111)은 제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U3)의 스토리지 장치(100)에 대한 권한들의 정보를 저장할 수 있다. 예시적으로, 제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U2)의 권한들은 서로 다를 수 있다.
사용자 영역(112)은 컴퓨팅 장치(10)가 쓰기를 요청하는 데이터(예를 들어, 암호화된 데이터)를 저장하는 데에 사용될 수 있다. 메타 영역(111)의 저장 공간은 컴퓨팅 장치(10)에 의해 스토리지 장치(100)의 저장 공간으로 식별되지 않을 수 있다. 컴퓨팅 장치(10)는 사용자 영역(112)의 저장 공간만을 스토리지 장치(100)의 저장 공간으로 식별할 수 있다.
제어기(120)는 불휘발성 메모리 장치(110)에 대한 쓰기 동작, 읽기 동작 및 소거 동작을 제어할 수 있다. 제어기(120)는 제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U3)의 권한들에 대한 정보를 관리하고, 제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U3)가 사용자 영역(112)을 액세스하는 것을 제어할 수 있다.
제어기(120)는 인터페이스 블록(121), 디피-헬먼(DH) 블록(122), 암호화 및 복호화 블록(123), 그리고 데이터 암호화 키(DEK) 생성 블록(124)을 포함할 수 있다. 인터페이스 블록(121)은 제어기(120)가 다른 장치들과 통신하는 것을 지원할 수 있다. 예를 들어, 인터페이스 블록(121)은 컴퓨팅 장치(10)와 통신하기 위한 PCIe(Peripheral Component Interconnect express) 또는 NVMe(NonVolatile Memory express)에 기반한 통신 구성 요소들을 포함할 수 있다.
또한, 인터페이스 블록(121)은 불휘발성 메모리 장치(110)와 통신하기 위한 통신 구성 요소들을 포함할 수 있다. 예시적으로, 간결한 설명을 위하여 컴퓨팅 장치(10)를 위한 통신 구성 요소들과 불휘발성 메모리 장치(110)를 위한 통신 구성 요소들이 하나의 인터페이스 블록(121)으로 설명되지만, 이들은 둘 또는 그보다 많은 블록들로 분할될 수 있다.
DH 블록(122)은 DH 알고리즘에 기반한 연산들을 수행하도록 구성될 수 있다. 암호화 및 복호화 블록(123)은 암호화 및 복호화를 수행하도록 구성될 수 있다. 예를 암호화 및 복호화 블록(123)은 AES(Advanced Encryption Standard), DES(Data Encryption Standard) 등과 같은 대칭키 암호화 알고리즘들, 그리고 RSA(Rivest, Sharmir, Adleman), ECC(Elliptic Curve Cryptography) 등과 같은 비대칭키 알고리즘들 중 적어도 하나에 기반하여 암호화 및 복호화를 수행할 수 있다.
데이터 암호화 키 생성 블록(124)은 데이터 암호화 키들을 생성할 수 있다. 예를 들어, 데이터 암호화 키 생성 블록(124)은 위에서 언급된 또는 언급되지 않은 다양한 암호화 알고리즘들 중 적어도 하나에 기반하여 데이터 암호화 키들을 생성할 수 있다. 예를 들어, 데이터 암호화 키 생성 블록(124)은 암호화 및 복호화 블록(123)과 하나의 블록으로 통합될 수 있다.
제어기(120)는 사용자 영역(112)을 둘 이상의 범위들(ranges)로 분할할 수 있다. 제어기(120)는 사용자 영역(112)의 범위들에 서로 다른 데이터 암호화 키들을 할당할 수 있다. 제어기(120)는 제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U3)에게 범위들을 액세스하는 서로 다른 권한들을 부여할 수 있다.
제어기(120)는 제1 사용자(U1), 제2 사용자(U2), 또는 제3 사용자(U3)에게 권한이 부여된 범위의 액세스를 허용하고, 권한이 부여되지 않은 범위의 액세스를 허용하지 않을 수 있다. 제1 사용자(U1), 제2 사용자(U2), 그리고 제3 사용자(U3) 중 하나는 관리자(administrator)일 수 있다. 관리자는 사용자 영역의 모든 범위들에 대한 권한을 가질 수 있다.
또한, 관리자는 다른 사용자의 권한에 허용되는 범위(들)를 지정(또는 변경)할 수 있다. 관리자의 권한은 모든 범위들에 대한 데이터 암호화 키들을 가질 수 있다. 스토리지 장치(100)가 잠금 해제 상태일 때에, 제어기(120)는 잠금 해제된 권한의 데이터 암호화 키들 중에서 다른 사용자에게 권한을 부여할 범위의 데이터 암호화 키를 DH 알고리즘에 기반하여 암호화하고, 다른 사용자의 권한에 제공할 수 있다. DH 알고리즘에 기반하여 암호화된 데이터 암호화 키를 제공함으로써, 다른 사용자의 권한이 변경될 수 있다.
다른 사용자가 스토리지 장치(100)를 잠금 해제 상태로 전환한 때에, 즉 다른 사용자의 권한에서, 제어기(120)는 DH 알고리즘에 기반하여 암호화된(예를 들어, DH 알고리즘에 기반하여 생성된 공통 키를 이용하여 암호화된) 데이터암호화 키를 DH 알고리즘에 기반하여 복호화(예를 들어, DH 알고리즘에 기반하여 다시 생성된 공통 키를 이용하여 복호화)할 수 있다. DH 알고리즘에 기반하여 복호화된 데이터 암호화 키를 이용하여, 다른 사용자는 권한이 부여된 범위를 액세스할 수 있다.
도 4는 제1 사용자(U1)가 스토리지 장치(100)의 관리자로 등록되는 과정을 보여준다. 도 5는 도 4의 과정에서 스토리지 장치(100)에서 정보가 생성되고 교환되는 예를 보여준다. 예를 들어, 도 4 및 도 5의 절차들은 스토리지 장치(100)를 컴퓨팅 장치(10)에 설치할 때, 또는 컴퓨팅 장치(10)에 설치된 스토리지 장치(100)를 암호화된 스토리지 장치로 설정할 때에 수행될 수 있다.
도 3, 도 4 및 도 5를 참조하면, S210 단계에서, 제어기(120)의 인터페이스 블록(121)은 제1 사용자(U1)의 제1 패스워드(PW1), 사용자 영역(112)의 범위들의 수를 가리키는 제1 값, 그리고 사용자들의 수를 가리키는 제2 값을 수신할 수 있다.
제1 패스워드(PW1)는 제1 사용자(U1)로부터 입력되거나 또는 제1 사용자(U1)를 가리키는 고유한 정보로서 컴퓨팅 장치(10)에 의해 생성될 수 있다. 제1 값 및 제2 값 또한 제1 사용자(U1)로부터 입력되거나 컴퓨팅 장치(10)에 의해 자율적으로 생성되는 고유한 정보를 포함할 수 있다.
예를 들어, 범위들의 수를 가리키는 제1 값은 '3'일 수 있다. 사용자들의 수를 가리키는 제2 값은 '3'일 수 있다. 제1 값과 제2 값은 서로 다를 수 있다. S220 단계에서, 제어기(120)는 제1 값에 따라 사용자 영역(112)을 제1 내지 제3 범위들(R1~R3)로 분할할 수 있다.
S230 단계에서, 제어기(120)는 제2 값에 따라 메타 영역(111)에 제1 내지 제3 슬롯들(S1~S3)을 생성할 수 있다. 제1 내지 제3 슬롯들(S1~S3)은 각각 제1 내지 제3 사용자들에 할당될 수 있다. 제1 내지 제3 슬롯들(S1~S3)의 각각은 대응하는 사용자와 연관된 키들을 저장하는데 사용될 수 있다.
S240 단계에서, 데이터 암호화 키 생성 블록(124)은 범위들의 수를 가리키는 제1 값에 따라 데이터 암호화 키들을 생성할 수 있다. 예를 들어, 데이터 암호화 키 생성 블록(124)은 제1 내지 제3 범위들(R1~R3)에 각각 대응하는 제1 내지 제3 데이터 암호화 키들(DEK1~DEK3)을 생성할 수 있다.
S250 단계에서, DH 블록(122)은 제1 공개키(PK1) 및 제1 비밀키(SK1)를 생성할 수 있다. 제1 공개키(PK1) 및 제1 비밀키(SK1)는 DH 알고리즘에 기반하여 생성될 수 있다. 제1 공개키(PK1)는 인터페이스 블록(121)에 전달될 수 있다. 제1 비밀키(SK1)는 암호화 및 복호화 블록(123)에 전달될 수 있다.
S260 단계에서, 암호화 및 복호화 블록(123)은 제1 패스워드(PW1)를 이용하여 제1 비밀키(SK1), 그리고 제1 내지 제3 데이터 암호화 키들(DEK1~DEK3)을 암호화할 수 있다. 제1 패스워드(PW1)로 암호화된 제1 비밀키(SK1_EPW), 제1 패스워드(PW1)로 암호화된 제1 내지 제3 데이터 암호화 키들(DEK1_EPW~DEK3_EPW)은 인터페이스 블록(121)에 전달될 수 있다.
S270 단계에서, 인터페이스 블록(121)은 제1 공개키(PK1), 제1 패스워드(PW1)로 암호화된 제1 비밀키(SK1_EPW), 그리고 제1 패스워드(PW1)로 암호화된 제1 내지 제3 데이터 암호화 키들(DEK1_EPW~DEK3_EPW)을 제1 사용자(U1)에게 할당된 메타 영역(111)의 제1 슬롯(S1)에 저장할 수 있다.
제1 사용자(U1)가 스토리지 장치(100)의 잠금 해제 상태를 유지하면, 제어기(120)는 제1 내지 제3 데이터 암호화 키들(DEK1~DEK3)을 이용하여 제1 내지 제3 범위들(R1~R3)을 각각 액세스할 수 있다.
예를 들어, 제어기(120)는 제1 내지 제3 데이터 호화 키들(DEK1~DEK3)을 암호화 및 복호화 블록(123)의 내부에서 관리할 수 있다. 암호화 및 복호화 블록(123)은 불휘발성 메모리 장치(110)에 기입되는 데이터를 암호화하는데 사용되고, 그리고 불휘발성 메모리 장치(110)로부터 읽혀지는 데이터를 복호화하는데 사용될 수 있다.
암호화 및 복호화 블록(123)은 제1 내지 제3 데이터 암호화 키들(DEK1~DEK3)을 유출하지 않을 수 있다. 예를 들어, 제1 사용자(U1)가 스토리지 장치(100)의 자신의 권한을 종료하여 스토리지 장치(100)가 잠금 상태가 되면, 암호화 및 복호화 블록(123)은 제1 내지 제3 데이터 암호화 키들(DEK1~DEK3)을 폐기할 수 있다. 제1 패스워드(PW1)로 암호화된 제1 내지 제3 데이터 암호화 키들(DEK1_EPW~DEK3_EPW)이 제1 슬롯(S1)에 보관되므로, 제1 사용자(U1)의 권한은 기억될 수 있다.
이후에 제1 사용자(U1)가 스토리지 장치(100)의 자신의 권한을 다시 잠금 해제 하면, 제어기(120)는 제1 슬롯(S1)으로부터 제1 패스워드(PW1)로 암호화된 제1 내지 제3 데이터 암호화 키들(DEK1_EPW~DEK3_EPW) 중 필요한 것을 읽고, 그리고 읽혀진 결과를 복호화하여 필요한 데이터 암호화 키를 획득할 수 있다.
예를 들어, 제1 사용자(U1)가 스토리지 장치(100)의 자신의 권한을 종료하는 것은 스토리지 장치(100)의 전원을 차단하거나, 권한 종료의 메시지를 스토리지 장치(100)에 제공하거나, 또는 스토리지 장치(100)를 유휴 상태로 특정 시간 이상 방치하는 것을 포함할 수 있다.
도 4 및 도 5를 참조하여 설명된 바와 같이, 제어기(120)와 불휘발성 메모리 장치(110) 사이에서 교환되는 데이터 중에서, 암호화되지 않고 교환되는 데이터는 제1 공개키(PK1)뿐이다. 제1 비밀키(SK1) 및 제1 내지 제3 데이터 암호화 키들(DEK1~DEK3)은 모두 암호화된 상태로 교환되며, 따라서 스토리지 장치(100)의 보안성이 향상된다.
도 6은 제2 사용자(U2)의 스토리지 장치(100)의 저장 공간의 권한의 요청을 생성하는 과정을 보여준다. 도 7은 도 6의 과정에서 스토리지 장치(100)에서 정보가 생성되고 교환되는 예를 보여준다. 예를 들어, 도 6 및 도 7의 절차들은 스토리지 장치(100)가 잠금 상태일 때 또는 다른 사용자에 의해 잠금 해제된 상태일 때에 수행될 수 있다.
도 3, 도 6 및 도 7을 참조하면, S310 단계에서, 제어기(120)의 인터페이스 블록(121)은 제2 사용자(U2)의 제2 패스워드(PW2)를 수신할 수 있다. 제2 패스워드(PW2)는 제2 사용자(U2)로부터 입력되거나 또는 제2 사용자(U2)를 가리키는 고유한 정보로서 컴퓨팅 장치(10)에 의해 생성될 수 있다.
S320 단계에서, DH 블록(122)은 제2 공개키(PK2) 및 제2 비밀키(SK2)를 생성할 수 있다. 제2 공개키(PK2) 및 제2 비밀키(SK2)는 제2 패스워드(PW2)로부터 DH 알고리즘에 기반하여 생성될 수 있다. 제2 공개키(PK2)는 인터페이스 블록(121)에 전달될 수 있다. 제2 비밀키(SK2)는 암호화 및 복호화 블록(123)에 전달될 수 있다.
S330 단계에서, 암호화 및 복호화 블록(123)은 제2 패스워드(PW2)를 이용하여 제2 비밀키(SK2)를 암호화할 수 있다. 제2 패스워드(PW2)로 암호화된 제2 비밀키(SK2_EPW)는 인터페이스 블록(121)에 전달될 수 있다.
S340 단계에서, 인터페이스 블록(121)은 제1 공개키(PK1) 및 제2 패스워드(PW2)로 암호화된 제2 비밀키(SK2_EPW)를 제2 사용자(U2)에게 할당된 메타 영역(111)의 제2 슬롯(S2)에 저장할 수 있다. 제1 공개키(PK1) 및 제2 패스워드(PW2)로 암호화된 제2 비밀키(SK2_EPW)를 제2 슬롯(S2)에 저장하는 것은, 제2 사용자(U2)가 관리자인 제1 사용자(U1)에게 범위의 권한의 부여를 요청하는 것으로 여겨질 수 있다.
도 6 및 도 7을 참조하여 설명된 바와 같이, 제어기(120)와 불휘발성 메모리 장치(110) 사이에서 교환되는 데이터 중에서, 암호화되지 않고 교환되는 데이터는 제2 공개키(PK2)뿐이다. 제2 비밀키(SK2)는 암호화된 상태로 교환되며, 따라서 스토리지 장치(100)의 보안성이 향상된다.
도 8은 제1 사용자(U1)가 제2 사용자에게 데이터 암호화 키를 암호화하여 공유하는 과정을 보여준다. 도 9는 도 8의 과정에서 스토리지 장치(100)에서 정보가 생성되고 교환되는 예를 보여준다. 도 8 및 도 9의 절차들은 관리자인 제1 사용자(U1)가 스토리지 장치(100)를 잠금 해제 한 상태에서 수행될 수 있다.
도 3, 도 8 및 도 9를 참조하면, S410 단계에서, 제어기(120)의 인터페이스 블록(121)은 제1 사용자(U1)의 제1 패스워드(PW1)를 수신할 수 있다.
제2 슬롯(S2)에 제2 공개키(PK2) 및 제2 패스워드(PW2)로 암호화된 제2 비밀키(SK2_EPW)가 존재함에 따라, 제1 사용자(U1)는 제2 사용자(U2)의 범위 요청이 있음을 알 수 있다. 제어기(120)는 제2 사용자(U2)의 범위 요청이 있음을 컴퓨팅 장치(10)(도 3 참조)에 알릴 수 있다. 컴퓨팅 장치(10)는 제1 사용자(U1)에게 제2 사용자(U2)의 범위 요청이 있음을 표시할 수 있다.
S420 단계에서, 제1 사용자(U1)는(또는 컴퓨팅 장치(10)가 자율적으로) 제2 사용자(U2)에게 제3 범위(R3)를 할당할 수 있다. 범위를 할당하는 할당 알고리즘은 다양하게 구성될 수 있으며, 한정되지 않는다. 제3 범위(R3)가 선택되었음을 알리는 정보는 컴퓨팅 장치(10)를 통해 제어기(120)로 전달될 수 있다.
S430 단계에서, 인터페이스 블록(121)은 제1 슬롯(S1)으로부터 제1 공개키(PK1), 제1 패스워드(PW1)로 암호화된 제1 비밀키(SK1_EPW), 그리고 제2 사용자(U2)에게 할당된 제3 범위(R3)에 대응하는 제1 패스워드(PW1)로 암호화된 제1 데이터 암호화 키(DEK1_EPW)를 읽을 수 있다. 또한, 인터페이스 블록(121)은 제2 슬롯(S2)으로부터 제2 공개키(PK2)를 읽을 수 있다.
S440 단계에서, 제1 패스워드(PW1)로 암호화된 제1 비밀키(SK1_EPW)가 암호화 및 복호화 블록(123)으로 전달될 수 있다. 암호화 및 복호화 블록(123)은 제1 패스워드(PW1)로 암호화된 제1 비밀키(SK1_EPW)를 복호화하여, 제1 비밀키(SK1)를 복원할 수 있다.
S450 단계에서, 제2 공개키(PK2) 및 제1 비밀키(SK1)가 DH 블록(122)에 전달될 수 있다. DH 블록(122)은 DH 알고리즘에 기반하여 제2 공개키(PK2) 및 제1 비밀키(SK1)로부터 공통키(CK12)를 생성할 수 있다. 공통키(CK12)는 암호화 및 복호화 블록(123)에 전달될 수 있다.
S460 단계에서, 제1 패스워드(PW1)로 암호화된 제3 데이터 암호화 키(DEK3_EPW)가 암호화 및 복호화 블록(123)으로 전달될 수 있다. 암호화 및 복호화 블록(123)은 제1 패스워드(PW1)를 이용하여 복호화를 수행하여, 제3 데이터 암호화 키(DEK3)를 복원할 수 있다. 암호화 및 복호화 블록(123)은 공통키(CK12)를 이용하여 제3 데이터 암호화 키(DEK3)를 암호화될 수 있다. 공통키(CK12)로 암호화된 제3 데이터 암호화 키(DEK3_ECK)는 인터페이스 블록(121)으로 전달될 수 있다.
S470 단계에서, 인터페이스 블록(121)은 제1 공개키(PK1), 그리고 공통키(CK12)로 암호화된 제3 데이터 암호화 키(DEK3_ECK)를 메타 영역(111)의 제2 슬롯(S2)에 저장할 수 있다. 공통키(CK12)로 암호화된 제3 데이터 암호화 키(DEK3_ECK)를 제2 슬롯(S2)에 저장함으로써, 제2 사용자에게 제3 데이터 암호화 키(DEK3)에 대한 권한이 부여될 수 있다.
예를 들어, 제1 사용자(U1)가 제1 패스워드(PW1)를 변경하면, 제1 공개키(PK1) 및 제1 비밀키(SK1)가 모두 변경될 수 있다. 따라서, 공통키(CK12)와 함께 제1 공개키(PK1)를 제2 슬롯(S2)에 저장함으로써, 제1 패스워드(PW1)가 변경되어도 제2 사용자(U2)가 공통키(CK12)가 생성된 시점의 제1 공개키(PK1)를 사용할 수 있다.
도 8 및 도 9를 참조하여 설명된 바와 같이, 제어기(120)와 불휘발성 메모리 장치(110) 사이에서 교환되는 데이터 중에서, 암호화되지 않고 교환되는 데이터는 제1 공개키(PK1) 및 제2 공개키(PK2)뿐이다. 제3 데이터 암호화 키(DEK3)는 암호화된 상태로 교환되며, 따라서 스토리지 장치(100)의 보안성이 향상된다.
도 10은 접근 권한이 없던 제2 사용자(U2)가 접근 권한을 부여 받은 이후 제3 데이터 암호화 키(DEK3)를 획득하는 과정을 보여준다. 도 11은 도 10의 과정에서 스토리지 장치(100)에서 정보가 생성되고 교환되는 예를 보여준다. 도 10 및 도 11의 절차들은 제2 사용자(U2)가 스토리지 장치(100)를 잠금 해제 할 때에 발생할 수 있다.
도 3, 도 10 및 도 11을 참조하면, S510 단계에서, 제어기(120)의 인터페이스 블록(121)은 제2 사용자(U2)의 제2 패스워드(PW2)를 수신할 수 있다.
S520 단계에서, 인터페이스 블록(121)은 메타 영역(111)의 제2 슬롯(S2)으로부터 제1 공개키(PK1), 제2 패스워드(PW2)로 암호화된 제2 비밀키(SK2_EPW), 그리고 공통키(CK12)로 암호화된 제3 데이터 암호화 키(DEK3_ECK)를 읽을 수 있다.
S530 단계에서, 제2 패스워드(PW2)로 암호화된 제2 비밀키(SK2_EPW)가 암호화 및 복호화 블록(123)으로 전달될 수 있다. 암호화 및 복호화 블록(123)은 제2 패스워드(PW2)를 이용하여 복호화를 수행하여, 제2 비밀키(SK2)를 복원할 수 있다.
S540 단계에서, 제1 공개키(PK1) 및 제2 비밀키(SK2)가 DH 블록(122)으로 전달될 수 있다. DH 블록(122)은 DH 알고리즘에 기반하여 제1 공개키(PK1) 및 제2 비밀키(SK2)로부터 공통키(CK12)를 생성할 수 있다. DH 알고리즘에 따라, S540 단계에서 생성된 공통키(CK12)는 S450 단계에서 생성된 공통키(CK12)와 동일할 수 있다. 공통키(CK12)는 암호화 및 복호화 블록(123)으로 전달될 수 있다.
S550 단계에서, 공통키(CK12)로 암호화된 제3 데이터 암호화 키(DEK3_ECK)가 암호화 및 복호화 블록(123)으로 전달될 수 있다. 암호화 및 복호화 블록(123)은 공통키(CK12)를 이용하여 복호화를 수행하여, 제3 데이터 암호화 키(DEK3)를 복원할 수 있다. 제3 데이터 암호화 키(DEK3)를 획득함으로써, 제2 사용자(U2)에게 제3 범위(R3)의 권한이 부여될 수 있다.
제3 범위(R3)의 권한이 부여됨에 따라, 제어기(120)는 제3 범위(R3)의 권한의 부여가 완료되었음을 알리는 메시지를 출력할 수 있다. 제2 사용자(U2)는 메시지를 통해 제3 범위(R3)의 권한이 부여되었음을 인식하고, 제3 범위(R3)를 액세스할 수 있다
암호화 및 복호화 블록(123)은 제2 패스워드(PW2)를 이용하여 제3 데이터 암호화 키(DEK3)를 암호화하여, 제2 패스워드(PW2)로 암호화된 제3 데이터 암호화 키(DEK3_EPW)를 생성할 수 있다. 제2 패스워드(PW2)로 암호화된 제3 데이터 암호화 키(DEK3_EPW)는 인터페이스 블록(121)으로 전달될 수 있다.
S560 단계에서, 인터페이스 블록(121)은 제2 패스워드(PW2)로 암호화된 제3 데이터 암호화 키(DEK3_EPW)를 제2 슬롯(S2)에 저장할 수 있다. 제2 사용자(U2)가 스토리지 장치(100)의 자신의 권한에서 잠금 해제 상태를 유지하면, 제어기(120)는 제3 데이터 암호화 키(DEK3)를 이용하여 제3 범위(R3)를 액세스할 수 있다.
제2 사용자(U2)가 스토리지 장치(100)의 자신의 권한을 종료하여 스토리지 장치(100)를 잠금 상태로 전환 하면, 제3 데이터 암호화 키(DEK3)는 폐기될 수 있다. 제2 패스워드(PW2)로 암호화된 제3 데이터 암호화 키(DEK3_EPW)가 제2 슬롯(S2)에 저장되므로, 제2 사용자(U2)의 권한은 기억될 수 있다.
이후에 제2 사용자(U2)가 스토리지 장치(100)를 자신의 권한으로 다시 잠금 해제 하면, 제어기(120)는 제2 슬롯(S2)으로부터 제2 패스워드(PW2)로 암호화된 제3 데이터 암호화 키(DEK3_EPW)를 읽고, 그리고 읽혀진 결과를 복호화하여 제3 데이터 암호화 키(DEK3)를 획득할 수 있다.
S570 단계에서, 인터페이스 블록(121)은 메타 영역(111)의 제2 슬롯(S2)으로부터 제1 공개키(PK1) 및 공통키(CK12)로 암호화된 제3 데이터 암호화 키(DEK3_ECK)를 삭제할 수 있다.
도 10 및 도 11을 참조하여 설명된 바와 같이, 제어기(120)와 불휘발성 메모리 장치(110) 사이에서 교환되는 데이터 중에서, 암호화되지 않고 교환되는 데이터는 제1 공개키(PK1)뿐이다. 제2 비밀키(SK2) 및 제3 데이터 암호화 키(DEK3)는 모두 암호화된 상태로 교환되며, 따라서 스토리지 장치(100)의 보안성이 향상된다.
스토리지 장치(100)는 제1 내지 제3 사용자들(U1~U3)에게 교대 접속 또는 동시 접속을 허용할 수 있다. 교대 접속이 허용된 경우, 한 번에 하나의 사용자만이 스토리지 장치(100)를 액세스할 수 있다. 제1 사용자(U1)가 도 4 및 도 5를 참조하여 설명된 과정을 수행한 후에, 제1 사용자(U1)는 자신의 권한을 종료하여 스토리지 장치(100)를 잠금 상태로 전환할 수 있다. 이후에, 제2 사용자(U2)가 스토리지 장치(100)에 접속하여, 도 6 및 도 7을 참조하여 설명된 과정을 수행할 수 있다.
이후에, 제2 사용자(U2)가 권한을 종료한 후에, 제1 사용자(U1)가 스토리지 장치(100)를 잠금 해제 하여 도 8 및 도 9를 참조하여 설명된 과정을 수행할 수 있다. 이후에, 제1 사용자(U1)가 권한을 종료한 후에, 제2 사용자(U2)가 스토리지 장치(100)를 잠금 해제 하여 도 10 및 도 11을 참조하여 설명된 과정을 수행할 수 있다.
다른 예로서, 제1 사용자(U1)가 도 4 및 도 5를 참조하여 설명된 과정을 수행한 후에, 제1 사용자(U1)가 스토리지 장치(100)를 잠금 해제한 상태에서 도 6 및 도 7을 참조하여 설명된 과정이 수행될 수 있다. 이후에, 제1 사용자(U1)가 스토리지 장치(100)를 잠금 해제한 상태에서, 도 8 및 도 9를 참조하여 설명된 과정이 수행될 수 있다.
즉, 제2 사용자(U2)에게 권한을 부여하는 것은 제1 사용자(U1)가 스토리지 장치(100)를 잠금 해제한 상태에서, 제1 사용자(U1에 의해 주도적으로 수행될 수 있다. 이때, 도 8 및 도 9에서 제1 패스워드(PW1)를 수신하는 과정은 생략될 수 있다.
동시 접속이 허용된 경우, 제1 및 제2 사용자들(U1, U2)이 동시에 스토리지 장치(100)를 액세스할 수 있다. 제1 사용자(U1)가 도 4 및 도 5를 참조하여 설명된 과정을 수행한 후에, 제1 사용자(U1)가 권한을 종료하지 않아도 제2 사용자(U2)가 자신의 권한으로 스토리지 장치(100)에 접속하여 도 6 및 도 7을 참조하여 설명된 과정이 수행될 수 있다.
제1 사용자(U1)가 스토리지 장치(100)를 잠금 해제한 상태에서 도 6 및 도 7의 과정이 수행되면, 제2 사용자(U2)의 범위 요청이 발생하였음을 알리는 메시지가 제1 사용자(U1)에게 실시간으로 전달될 수 있다. 제1 사용자(U1)는 잠금 해제 상태를 유지하며 도 8 및 도 9를 참조하여 설명된 과정을 수행할 수 있다. 이때, 제1 패스워드(PW1)를 수신하는 S410 단계는 생략될 수 있다.
제2 사용자(U2)가 잠금 해제 상태에서 도 8 및 도 9의 과정이 수행되면, 도 10 및 도 11을 참조하여 설명된 과정이 이어서 수행될 수 있다. 이때, 제2 패스워드(PW2)를 수신하는 S510 단계는 생략될 수 있다.
상술된 실시 예들에서, 패스워드 및 공통키가 암호화 및 복호화를 위해 사용되는 것으로 설명되었다. 그러나 패스워드 및 공통키는 가공된 후에 암호화 및 복호화를 위해 사용될 수 있다. 예를 들어, 패스워드 또는 공통키에 랜덤수를 추가하고, 랜덤수가 추가된 패스워드 또는 공통키에 연속 해쉬 함수(예를 들어, PBKDF(Password-Based Key Derivation Function)를 적용할 수 있다. 연속 해쉬 함수의 결과값이 암호화 또는 복호화에 사용될 수 있다.
상술된 실시 예들에서, 데이터 암호화 키는 사용자의 패스워드를 이용하여 암호화 및 복호화 되는 것으로 설명되었다. 그러나, 패스워드와 데이터 암호화 키 사이에 적어도 하나의 다른 키, 예를 들어 키 암호화 키가 사용될 수 있다.
예를 들어, 데이터 암호화 키 스토리지 장치(100)의 대응하는 범위의 데이터를 암호화 및 복호화 하는 데에 고유하게 사용될 수 있다. 스토리지 장치(100)의 각 범위의 데이터 암호화 키는 고유한 키 암호화 키를 통해 암호화될 수 있다. 각 범위의 키 암호화 키는 해당 범위의 권한을 갖는 사용자의 패스워드로 암호화되고, 해당 범위의 권한을 갖는 사용자의 슬롯에 저장될 수 있다.
즉, 사용자는 스토리지 장치(100)에 패스워드를 제공함으로써 키 암호화 키의 권한을 획득하고, 그리고 키 암호화 키를 이용하여 데이터 암호화 키의 권한을 획득할 수 있다.
예를 들어, 두 개의 키 암호화 키가 사용될 때, 데이터 암호화 키는 제1 키 암호화 키를 이용하여 암호화 및 복호화될 수 있다. 제1 키 암호화 키는 제2 키 암호화 키를 이용하여 암호화 및 복호화될 수 있다. 제2 키 암호와 키는 패스워드를 이용하여 암호화 및 복호화될 수 있다. 키 암호화 키는 암호화(예를 들어, 다른 키 암호화 키 또는 패스워드를 이용하여)된 상태로 권한을 갖는 사용자의 슬롯에 저장될 수 있다.
상술된 실시 예들에서, 관리자인 제1 사용자(U1)가 사용자들의 수를 미리 설정하는 것으로 설명되었다. 그러나 제1 사용자(U1)는 사용자들의 수를 미리 설정하지 않을 수 있다. 예를 들어, 도 4 및 도 5를 참조하여 설명된 과정에서, 제1 사용자(U1)를 위한 제1 슬롯(S1)이 메타 영역(111)에 생성될 수 있다.
도 6 및 도 7을 참조하여 설명된 과정에서, 제2 사용자(U2)를 위한 제2 슬롯(S2)이 메타 영역(111)에 생성될 수 있다. 즉, 스토리지 장치(100)의 사용자가 추가될 때에, 해당 사용자를 위한 슬롯이 메타 영역(111)에 생성될 수 있다. 관리자인 제1 사용자(U1)는 사용자들의 최대 수를 설정할 수 있다.
도 12는 스토리지 장치(100)가 데이터 암호화 키(DEK)를 암호화하는 방법들의 예를 보여준다. 도 3 및 도 12를 참조하면, S610 단계에서, 데이터 암호화 키(DEK)를 데이터 암호화 키(DEK)의 소유자의 영역, 예를 들어 슬롯에 저장할 때, 스토리지 장치(100)의 제어기(120)의 암호화 및 복호화 블록(123)은 데이터 암호화 키(DEK)를 제1 방식으로 암호화할 수 있다. 예를 들어, 제1 방식은 사용자의 패스워드를 이용한 암호화를 포함할 수 있다.
S620 단계에서, 데이터 암호화 키(DEK)를 데이터 암호화 키(DEK)의 소유자가 아닌 다른 사용자의 영역, 예를 들어 슬롯에 저장할 때, 스토리지 장치(100)의 제어기(120)의 암호화 및 복호화 블록(123)은 데이터 암호화 키(DEK)를 제2 방식으로 암호화할 수 있다. 예를 들어, 제2 방식은 DH 알고리즘에 기반한 암호화를 포함할 수 있다.
DH 블록(122)은 스토리지 장치(100)의 인증을 수행하여 스토리지 장치(100)를 잠금 해제한 사용자의 비밀키, 그리고 다른 사용자의 공개키를 이용하여 공통키를 생성할 수 있다. 암호화 및 복호화 블록(123)은 공통키를 이용하여 데이터 암호화 키(DEK)를 암호화할 수 있다.
DH 알고리즘에 기반하여 암호화된 데이터 암호화 키가 제공된 다른 사용자가 스토리지 장치(100)를 잠금 해제한 때에, DH 블록(122)은 다른 사용자의 비밀키 및 공통키로 암호화된 데이터 암호화 키(DEK)를 제공한 사용자의 공개키를 이용하여 공통키를 다시 생성할 수 있다. 암호화 및 복호화 블록(123)은 제2 방식으로 암호화된 데이터 암호화 키를 공통키를 이용하여 복호화할 수 있다.
상술된 바와 같이, 본 발명의 실시 예에 따른 스토리지 장치(100)는 데이터 암호화 키(DEK)를 보관할 때에, 각 사용자에게 특화된 암호화 및 복호화 기법을 제공할 수 있다. 또한, 본 발명의 실시 예에 따른 스토리지 장치(100)는 데이터 암호화 키(DEK)를 교환할 때에, 키 교환에 특화된 암호화 및 복호화 기법을 제공할 수 있다. 따라서, 데이터 암호화 키를 유출하지 않고 보안성을 향상시키면서, 데이터 암호화 키의 보관 및 교환이 용이한 스토리지 장치(100) 및 스토리지 장치(100)의 동작 방법이 제공된다.
상술된 바와 같이, 제1, 제2, 제3 등의 용어들을 사용하여 스토리지 장치(100)의 구성 요소들 및 스토리지 장치(100)의 동작 방법이 설명되었다. 그러나 제1, 제2, 제3 등과 같은 용어들은 구성 요소들을 서로 구별하기 위해 사용되며, 본 발명을 한정하지 않는다. 예를 들어, 제1, 제2, 제3 등과 같은 용어들은 순서 또는 임의의 형태의 수치적 의미를 내포하지 않는다.
상술된 실시 예들에서, 블록들을 사용하여 본 발명의 실시 예들에 따른 구성 요소들이 참조되었다. 블록들은 IC (Integrated Circuit), ASIC (Application Specific IC), FPGA (Field Programmable Gate Array), CPLD (Complex Programmable Logic Device) 등과 같은 다양한 하드웨어 장치들, 하드웨어 장치들에서 구동되는 펌웨어, 응용과 같은 소프트웨어, 또는 하드웨어 장치와 소프트웨어가 조합된 형태로 구현될 수 있다. 또한, 블록들은 IC 내의 반도체 소자들로 구성되는 회로들 또는 IP(Intellectual Property)로 등록된 회로들을 포함할 수 있다.
상술된 내용은 본 발명을 실시하기 위한 구체적인 실시 예들이다. 본 발명은 상술된 실시 예들뿐만 아니라, 단순하게 설계 변경되거나 용이하게 변경할 수 있는 실시 예들 또한 포함할 것이다. 또한, 본 발명은 실시 예들을 이용하여 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다. 따라서, 본 발명의 범위는 상술된 실시 예들에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 할 것이다.
100: 스토리지 장치
110: 불휘발성 메모리 장치
111: 메타 영역
112: 사용자 영역
120: 제어기
121: 인터페이스 블록
122: 디피-헬먼 블록
123: 암호화 및 복호화 블록
124: 데이터 암호화 키 생성 블록
R1, R2, R3: 범위들
S1, S2, S3: 슬롯들
PK1, PK2: 공개키
SK1, SK2: 비밀키
SK1_EPW, SK2_EPW: 패스워드로 암호화된 비밀키
CK12: 공통키
DEK1, DEK2, DEK3: 데이터 암호화 키
DEK1_EPW, DEK2_EPW, DEK3_EPW: 패스워드로 암호화된 데이터 암호화 키
DEK1_ECK, DEK2_ECK, DEK3_ECK: 공통키로 암호화된 데이터 암호화 키

Claims (20)

  1. 불휘발성 메모리 장치; 그리고
    제1 사용자에 의해 상기 불휘발성 메모리 장치의 저장 공간에 기입되는 데이터를 암호화하고 그리고 상기 저장 공간으로부터 읽혀지는 데이터를 복호화하는 데에 사용되는 데이터 암호화 키(Data Encryption Key)(이하, DEK)를 관리하도록 구성되는 제어기를 포함하고,
    상기 제어기는 디피-헬먼(Diffie-Hellman)(이하, DH) 알고리즘에 기반하여 상기 DEK를 암호화하고, 제2 사용자에게 상기 암호화된 DEK의 권한을 부여(authorize)하고, 그리고 상기 DH 알고리즘에 기반하여 상기 암호화된 DEK를 복호화하여 상기 제2 사용자에게 상기 저장 공간의 권한을 부여(authorize)하도록 더 구성되는 스토리지 장치.
  2. 제1항에 있어서,
    상기 제어기는 상기 불휘발성 메모리 장치를 상기 저장 공간을 포함하는 사용자 영역 및 메타 영역으로 분할하여 관리하도록 더 구성되고, 그리고
    상기 제어기는 상기 암호화된 DEK를 상기 메타 영역에 저장하는 스토리지 장치.
  3. 제1항에 있어서,
    상기 제어기는 범위들(ranges)의 수를 가리키는 제1 값을 수신하고, 상기 수신된 제1 값에 따라 상기 사용자 영역을 상기 범위들로 분할하고, 사용자들의 수를 가리키는 제2 값을 수신하고, 상기 수신된 제2 값에 따라 상기 메타 영역을 슬롯들로 분할하고, 그리고 상기 슬롯들을 상기 사용자들에 각각 할당하도록 더 구성되는 스토리지 장치.
  4. 제3항에 있어서,
    상기 제2 사용자에게 상기 암호화된 DEK의 상기 권한을 부여하는 것은, 상기 제어기가 상기 슬롯들 중 상기 제2 사용자에게 할당된 슬롯에 상기 암호화된 DEK를 저장하는 것을 포함하는 스토리지 장치.
  5. 제3항에 있어서,
    상기 제어기는 상기 제2 사용자로부터 패스워드를 수신하고, 상기 패스워드를 이용하여 상기 복호화된 DEK를 암호화하고, 그리고 상기 패스워드로 암호화된 상기 DEK를 상기 슬롯들 중 상기 제2 사용자에게 할당된 슬롯에 저장하도록 더 구성되는 스토리지 장치.
  6. 제3항에 있어서,
    상기 저장 공간은 상기 범위들 중 하나의 범위이고,
    상기 제2 사용자의 요청에 따라, 상기 제어기는 상기 복호화된 DEK를 이용하여 상기 저장 공간에 기입되는 상기 데이터를 암호화하고 그리고 상기 저장 공간으로부터 읽혀지는 상기 데이터를 복호화하는 스토리지 장치.
  7. 제3항에 있어서,
    상기 제어기는 상기 제1 사용자로부터 제1 패스워드를 수신하고, 상기 DH 알고리즘에 기반하여 제1 공개키 및 제1 비밀키를 생성하고, 상기 제1 패스워드를 이용하여 상기 DEK의 상기 암호화를 수행하고, 상기 제1 패스워드를 이용하여 상기 제1 비밀키를 암호화하고, 그리고 상기 제1 패스워드로 암호화된 상기 제1 비밀키, 상기 제1 패스워드로 암호화된 상기 DEK, 그리고 상기 제1 공개키를 상기 슬롯들 중 상기 제1 사용자에게 할당된 제1 슬롯에 저장하도록 더 구성되는 스토리지 장치.
  8. 제7항에 있어서,
    상기 제어기는 상기 제2 사용자로부터 제2 패스워드를 수신하고, 상기 DH 알고리즘에 기반하여 제2 공개키 및 제2 비밀키를 생성하고, 상기 제2 패스워드를 이용하여 상기 제2 비밀키를 암호화하고, 그리고 상기 제2 패스워드로 암호화된 상기 제2 비밀키 및 상기 제2 공개키를 상기 슬롯들 중 상기 제2 사용자에게 할당된 제2 슬롯에 저장하도록 더 구성되는 스토리지 장치.
  9. 제8항에 있어서,
    상기 제어기는 상기 제1 사용자로부터 상기 제1 패스워드를 수신하고, 상기 제2 슬롯에서 상기 제2 공개키 및 상기 제2 패스워드로 암호화된 상기 제2 비밀키가 식별됨에 따라 상기 제1 슬롯으로부터 상기 제1 패스워드로 암호화된 상기 DEK, 상기 제1 패스워드로 암호화된 상기 제1 비밀키, 그리고 상기 제1 공개키를 읽고, 상기 제1 패스워드를 이용하여 상기 제1 패스워드로 암호화된 상기 DEK 및 상기 제1 패스워드로 암호화된 상기 제1 비밀키를 복호화하도록 더 구성되고,
    상기 DH 알고리즘에 기반하여 상기 DEK를 암호화하는 것은, 상기 제어기가 상기 제1 공개키 및 상기 제1 패스워드로 복호화된 상기 제1 비밀키를 이용하여 공통키를 생성하는 것을 포함하는 스토리지 장치.
  10. 제9항에 있어서,
    상기 제2 사용자에게 상기 암호화된 DEK의 상기 권한을 부여하는 것은, 상기 제어기가 상기 공통키를 이용하여 상기 제1 패스워드로 복호화된 상기 DEK를 암호화하고, 상기 제1 공개키 및 상기 공통키로 암호화된 상기 DEK를 상기 제2 슬롯에 저장하는 것을 포함하는 스토리지 장치.
  11. 제10항에 있어서,
    상기 암호화된 DEK를 복호화하여 상기 제2 사용자에게 상기 저장 공간의 상기 권한을 부여하는 것은, 상기 제어기가 상기 제2 사용자로부터 상기 제2 패스워드를 수신하고, 상기 제2 슬롯으로부터 상기 제1 공개키, 상기 공통키로 암호화된 상기 DEK, 그리고 상기 제2 패스워드로 암호화된 상기 제2 비밀키를 읽고, 상기 제2 패스워드를 이용하여 상기 제2 패스워드로 암호화된 상기 제2 비밀키를 복호화하고, 상기 제1 공개키 및 상기 제2 패스워드로 복호화된 상기 제2 비밀키를 이용하여 상기 공통키를 생성하고, 상기 공통키를 이용하여 상기 공통키로 암호화된 상기 DEK를 복호화하는 것을 포함하는 스토리지 장치.
  12. 제11항에 있어서,
    상기 제어기는 상기 제2 패스워드를 이용하여 상기 공통키로 복호화된 상기 DEK를 암호화하고, 그리고 상기 제2 패스워드로 암호화된 상기 DEK를 상기 제2 슬롯에 저장하도록 더 구성되는 스토리지 장치.
  13. 제1항에 있어서,
    상기 암호화된 DEK가 복호화되어 상기 제2 사용자에게 상기 저장 공간의 상기 권한이 부여될 때까지, 상기 제어기는 상기 제2 사용자가 상기 저장 공간을 액세스하는 것을 금지하도록 더 구성되는 스토리지 장치.
  14. 불휘발성 메모리 장치; 그리고
    제1 사용자에 의해 상기 불휘발성 메모리 장치의 저장 공간에 기입되는 데이터를 암호화하고 그리고 상기 저장 공간으로부터 읽혀지는 데이터를 복호화하는 데에 사용되는 데이터 암호화 키(Data Encryption Key)(이하, DEK)를 관리하도록 구성되는 제어기를 포함하고,
    상기 제어기는 상기 DEK를 상기 불휘발성 메모리 장치의 상기 제1 사용자의 영역에 저장할 때에 상기 DEK를 제1 방식으로 암호화하고, 그리고 상기 DEK를 상기 불휘발성 메모리 장치의 제2 사용자의 영역에 저장할 때에 상기 DEK를 제2 방식으로 암호화하도록 더 구성되는 스토리지 장치.
  15. 제14항에 있어서,
    상기 DEK를 상기 제1 방식으로 암호화하는 것은 상기 제1 사용자로부터 제공되는 패스워드를 이용하여 상기 DEK를 암호화하는 것을 포함하는 스토리지 장치.
  16. 제14항에 있어서,
    상기 DEK를 상기 제2 방식으로 암호화하는 것은 디피-헬먼(Diffie-Hellman)(이하, DH) 알고리즘에 기반하여 상기 DEK를 암호화하는 것을 포함하는 스토리지 장치.
  17. 제14항에 있어서,
    상기 제2 방식으로 암호화된 상기 DEK를 상기 제2 사용자의 상기 영역에 저장함에 따라, 상기 저장 공간에 대한 상기 제2 사용자의 액세스가 허용되는 스토리지 장치.
  18. 데이터를 저장하도록 구성되는 범위들, 그리고 상기 범위들에 각각 대응하는 슬롯들을 포함하는 스토리지 장치의 동작 방법에 있어서:
    제1 사용자가 접속함에 따라, 상기 범위들에 각각 대응하는 데이터 암호화 키들(Data Encryption Keys)(이하, DEK들)을 제1 방식으로 암호화하여 상기 슬롯들 중 제1 슬롯에 저장하는 단계;
    제2 사용자가 접속함에 따라, 상기 슬롯들 중 제2 슬롯을 상기 제2 사용자에게 할당하는 단계; 그리고
    상기 범위들 중 하나의 범위에 대응하는 DEK를 제2 방식으로 암호화하여 상기 제2 슬롯에 저장하는 단계를 포함하는 동작 방법.
  19. 제18항에 있어서,
    상기 DEK들을 상기 제1 방식으로 암호화하여 상기 슬롯들 중 상기 제1 슬롯에 저장하는 단계는:
    디피-헬먼(Diffie-Hellman)(이하, DH) 알고리즘에 기반하여 상기 제1 사용자의 제1 공개키 및 제1 비밀키를 생성하는 단계;
    상기 제1 방식으로 상기 DEK들 및 상기 제1 비밀키를 암호화하는 단계; 그리고
    상기 제1 방식으로 암호화된 상기 DEK들, 상기 제1 방식으로 암호화된 상기 제1 비밀키, 그리고 상기 제1 공개키를 상기 제1 슬롯에 저장하는 단계를 포함하고,
    상기 제2 사용자가 접속함에 따라, 상기 슬롯들 중 제2 슬롯을 상기 제2 사용자에게 할당하는 단계는:
    상기 DH 알고리즘에 기반하여 상기 제2 사용자의 제2 공개키 및 제2 비밀키를 생성하는 단계;
    상기 제1 방식으로 상기 제2 비밀키를 암호화하는 단계; 그리고
    상기 제1 방식으로 암호화된 상기 제2 비밀키 및 상기 제2 공개키를 상기 제2 슬롯에 저장하는 단계를 포함하는 동작 방법.
  20. 제19항에 있어서,
    상기 범위들 중 상기 하나의 범위에 대응하는 상기 DEK를 상기 제2 방식으로 암호화하여 상기 제2 슬롯에 저장하는 단계는:
    상기 제1 사용자가 접속함에 따라, 상기 제1 슬롯으로부터 상기 제1 방식으로 암호화된 상기 DEK, 상기 제1 방식으로 암호화된 상기 제1 비밀키, 그리고 상기 제1 공개키를 읽는 단계;
    상기 제1 방식으로 암호화된 상기 DEK들 중에서 상기 하나의 범위에 대응하는 상기 DEK 및 상기 제1 방식으로 암호화된 상기 제1 비밀키를 상기 제1 방식으로 복호화하는 단계;
    상기 제1 방식으로 복호화된 상기 제1 비밀키 및 상기 제1 공개키를 이용하여, 상기 DH 알고리즘에 기반하여 공통키를 생성하는 단계;
    상기 공통키를 이용하여 상기 제1 방식으로 복호화된 상기 DEK를 상기 제2 방식으로 암호화하는 단계; 그리고
    상기 제2 방식으로 암호화된 상기 DEK 및 상기 제1 공개키를 상기 제2 슬롯에 저장하는 단계를 포함하는 동작 방법.
KR1020190039623A 2018-11-27 2019-04-04 데이터 암호화 키를 암호화된 상태로 공유하는 스토리지 장치 및 스토리지 장치의 동작 방법 KR20200063948A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/674,413 US11381388B2 (en) 2018-11-27 2019-11-05 Storage device sharing data encryption key as encrypted and operating method of storage device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180148502 2018-11-27
KR20180148502 2018-11-27

Publications (1)

Publication Number Publication Date
KR20200063948A true KR20200063948A (ko) 2020-06-05

Family

ID=71089263

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190039623A KR20200063948A (ko) 2018-11-27 2019-04-04 데이터 암호화 키를 암호화된 상태로 공유하는 스토리지 장치 및 스토리지 장치의 동작 방법

Country Status (1)

Country Link
KR (1) KR20200063948A (ko)

Similar Documents

Publication Publication Date Title
JP4847967B2 (ja) 多目的コンテンツ制御を備えたメモリシステム
CN102257483B (zh) 管理对存储器件中的地址范围的访问
JP4857283B2 (ja) パーティション化による多目的コンテンツ制御
JP4857284B2 (ja) 多目的コンテンツ制御をするコントロール構造の生成システム
US8966580B2 (en) System and method for copying protected data from one secured storage device to another via a third party
JP2008524753A5 (ko)
JP2008524755A5 (ko)
US20090276474A1 (en) Method for copying protected data from one secured storage device to another via a third party
JP2008524758A5 (ko)
KR20110055510A (ko) 보안 저장 장치에 저장된 디지털 컨텐츠의 백업
CN104090853A (zh) 一种固态盘加密方法和系统
US11381388B2 (en) Storage device sharing data encryption key as encrypted and operating method of storage device
US20090296937A1 (en) Data protection system, data protection method, and memory card
KR20150032970A (ko) 보안 기능을 제공하는 저장 매체 및 그 보안 방법
JP2008524757A (ja) 多目的コンテンツ制御をするコントロール構造及びコントロール構造を用いる方法
KR20210078437A (ko) 안전한 중복 제거를 위한 방법, 장치, 및 시스템
KR20210132721A (ko) 네트워크에 액세스 시의 보안 통신
CN111191217A (zh) 一种密码管理方法及相关装置
CN116226945A (zh) 存储设备和操作电子系统的方法
TWI728355B (zh) 密碼保護的資料儲存裝置以及非揮發式記憶體控制方法
TWM540328U (zh) 內建智慧安全行動裝置
KR102695289B1 (ko) 저장 디바이스와 호스트 디바이스 사이의 데이터 전송을 인증하는 모듈 및 방법
KR20200063948A (ko) 데이터 암호화 키를 암호화된 상태로 공유하는 스토리지 장치 및 스토리지 장치의 동작 방법
KR20050096036A (ko) 휴대형 저장장치 및 휴대형 저장장치의 파일 관리 방법
US20230177173A1 (en) Electronic device and method for performing permission management of storage device

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