KR20110032249A - 암호키 선택장치를 구비하는 스토리지 시스템 및 암호 키 선택방법 - Google Patents

암호키 선택장치를 구비하는 스토리지 시스템 및 암호 키 선택방법 Download PDF

Info

Publication number
KR20110032249A
KR20110032249A KR1020090089644A KR20090089644A KR20110032249A KR 20110032249 A KR20110032249 A KR 20110032249A KR 1020090089644 A KR1020090089644 A KR 1020090089644A KR 20090089644 A KR20090089644 A KR 20090089644A KR 20110032249 A KR20110032249 A KR 20110032249A
Authority
KR
South Korea
Prior art keywords
key
lba
encryption
command
storage system
Prior art date
Application number
KR1020090089644A
Other languages
English (en)
Other versions
KR101601790B1 (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 삼성전자주식회사
Priority to KR1020090089644A priority Critical patent/KR101601790B1/ko
Priority to US12/728,325 priority patent/US8886956B2/en
Priority to DE102010037291A priority patent/DE102010037291A1/de
Priority to JP2010209051A priority patent/JP5648209B2/ja
Priority to TW099131827A priority patent/TWI525471B/zh
Priority to CN2010102976462A priority patent/CN102023935A/zh
Publication of KR20110032249A publication Critical patent/KR20110032249A/ko
Application granted granted Critical
Publication of KR101601790B1 publication Critical patent/KR101601790B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • 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
    • 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/80Protecting 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 storage media based on magnetic or optical technology, e.g. disks with sectors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00246Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a local device, e.g. device key initially stored by the player or by the recorder
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00507Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein consecutive physical data units of the record carrier are encrypted with separate encryption keys, e.g. the key changes on a cluster or sector basis
    • 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
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

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

Abstract

본 발명은 시스템의 중앙연산처리장치를 효율적으로 사용하고 암호화 및 복호화에 필요한 키 선택시간을 최소한으로 하는 암호기 선택장치를 구비하는 스토리지 시스템 및 암호키 선택방법을 개시한다. 상기 스토리지 시스템은, CPU, 암호블록 및 저장장치를 구비하며, 수신된 명령어에 포함된 LBA(Logic Block Address) 범위에 대응하는 암호키를 선택하여 상기 암호블록에 전달하는 암호키 선택장치를 더 구비한다. 상기 암호키 선택방법은, CPU, 암호블록, 저장장치 및 외부로부터 입력되는 명령어에 포함된 LBA 범위를 추출하는 명령어 해석기 및 상기 LBA 범위에 대응되는 암호키를 선택하는 키 선택장치를 구비하는 암호키 선택장치를 구비하는 스토리지 시스템에서 수행되며, 상기 명령어 해석기에서, 상기 명령어에 포함된 LBA 범위를 추출하는 단계 및 상기 키 선택장치에서, 상기 LBA 범위가 새로운 것인 경우에 새로운 LBA 범위에 대응되는 암호키를 선택하는 키 생성단계를 구비한다
암호키, LBA,

Description

암호키 선택장치를 구비하는 스토리지 시스템 및 암호 키 선택방법{Storage system including cryptography key selection device and selection method for cryptography key}
본 발명은 암호화 장치를 구비하는 스토리지 시스템(storage system)에 관한 것으로, 특히 외부로부터 입력되는 명령어(command)에 포함된LBA(Logic Block Address) 정보에 대응되는 암호키를 생성시키는 암호키 선택장치를 구비하는 스토리지 시스템 및 암호키 선택방법에 관한 것이다.
최근에는 휴대가 간편하면서도 저장 용량이 크고 데이터의 처리 속도가 향상된 노트북 컴퓨터(notebook computer) 및 랩 탑 컴퓨터(lap top computer)의 사용이 보편화되었다. 성능이 우수한 노트북 컴퓨터 및 랩 탑 컴퓨터는 일반인은 물론 중요한 정보를 담당하는 전문가들도 사용하고 있는데, 특히 전문가들이 사용하는 컴퓨터가 분실되었을 때 저장된 데이터의 유실은 큰 문제가 아닐 수 없다. 이러한 경우를 방지하기 위하여, 분실되었을 때 권한이 없는 사용자가 저장된 데이터를 읽을 수 없도록 노트북 컴퓨터 및 랩 탑 컴퓨터에도 암호화방법을 적용하여 사용하고 있다. 암호화방법이 적용된 컴퓨터로부터 사용권한이 인정되어야만 저장장치에 데 이터를 기록하거나 기록된 데이터를 읽을 수 있도록 하여, 컴퓨터의 분실 시에도 일정한 정보가 사용권한이 없는 이에게 누출되는 것을 방지할 수 있다.
암호화장치는 128비트(bit), 192비트, 256비트 또는 512비트의 키(key)를 암호화하여 사용하는 것이 일반적이다. 중앙연산처리장치(CPU)가 하나의 클럭 사이클(clock cycle)에 처리할 수 있는 데이터의 크기는 32비트가 되므로, 128비트의 데이터를 처리하기 위해서는 4개의 클럭 사이클이 필요하다. 따라서 암호화장치를 구비하는 시스템의 경우 중앙연산처리장치를 이용하여 암호화 및 복호화를 하는 경우, 사용되는 키의 크기에 따라 암호화 및 복호화에 필요한 시간이 상당하게 된다.
종래에는 메모리 장치를 하나의 공간으로 보고 비어 있는 공간에 순서대로 데이터를 저장하는 방식을 사용하였으나, 최근에는 메모리 장치의 저장영역을 복수 개의 블록으로 구분하여 사용하는 방식이 사용되고 있다. 메모리 장치의 저장 공간을 복수 개의 블록으로 구분하여 사용함으로써 데이터의 저장 및 저장된 데이터를 읽을 때 의 효율이 증가되는 장점이 있다.
데이터의 저장 공간을 복수 개의 블록으로 구분하는 방식과 각각의 블록을 액세스 할 때 사용권한을 부여하는 암호화 방법을 결합하는 경우, 사용권한이 없는 사용자가 중요한 데이터에 액세스 하는 것을 보다 강력하게 방지할 수 있다. 즉, 각 블록에 데이터를 저장할 때 사용하는 키를 서로 다르게 함으로써 복수 개의 저장 공간 즉 복수 개의 블록들 각각에 액세스 할 수 있는 권한을 해당 블록 별로 따로 부여하는 경우 저장된 데이터를 보다 확실하게 보호할 수 있을 것이다.
분할 된 저장 블록 마다 키 값이 다르게 설정되기 때문에, 해당 블록에 데이 터를 저장하고자 하는 경우 또는 해당 블록에 저장된 데이터를 읽으려고 하는 경우, 암호화장치에는 암호화에 사용될 키가 전달되어야 한다. 상술한 바와 같이 중앙연산처리장치를 이용하여 암호화에 사용되는 키를 전달하는 것은 시간이 많이 들게 될 뿐만 아니라, 이 시간 동안에는 중앙연산처리장치가 다른 일을 병렬로 할 수 도 없으므로 시스템의 효율이 저하되는 문제점도 같이 발생하게 된다.
본 발명이 해결하고자 하는 기술적과제는, 시스템의 중앙연산처리장치를 효율적으로 사용하고 암호화 및 복호화에 필요한 키 선택시간을 최소한으로 하는 암호기 선택장치를 구비하는 스토리지 시스템을 제공하는데 있다.
본 발명이 해결하고자 하는 다른 기술적과제는, 암호화 및 복호화에 필요한 키를 선택하는 시간을 최소한으로 하는 암호키 선택방법을 제공하는데 있다.
상기 기술적과제를 이루기 위한 본 발명에 따른 스토리지 시스템은, CPU, 암호블록 및 저장장치를 구비하며, 수신된 명령어에 포함된LBA(Logic Block Address) 범위에 대응하는 암호키를 선택하여 상기 암호블록에 전달하는 암호키 선택장치를 더 구비한다.
상기 다른 기술적과제를 이루기 위한 본 발명에 따른 암호키 선택방법은, CPU, 암호블록, 저장장치 및 외부로부터 입력되는 명령어에 포함된 LBA 범위를 추출하는 명령어 해석기 및 상기LBA 범위에 대응되는 암호키를 선택하는 키 선택장치 를 구비하는 암호키 선택장치를 구비하는 스토리지 시스템에서 수행되며, 상기 명령어 해석기에서, 상기 명령어에 포함된 LBA 범위를 추출하는 단계 및 상기 키 선택장치에서, 상기 LBA 범위가 새로운 것인 경우에 새로운 LBA 범위에 대응되는 암호키를 선택하는 키 생성단계를 구비한다.
본 발명은 시스템의 중앙연산처리장치를 보다 효율적으로 사용할 수 있을 뿐만 아니라 암호화 및 복호화에 필요한 시간을 최소한으로 할 수 있는 장점이 있다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 예시적인 실시 예를 설명하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명에 따른 암호키 선택장치를 구비하는 스토리지 시스템의 블록 다이어그램이다.
도 1을 참조하면, 스토리지 시스템(100)은, 중앙연산처리장치(110), 암호블록(120), 메모리 장치(130) 및 암호키 선택장치(140)를 구비한다.
중앙연산처리장치(110)는 암호블록(120)으로부터 사용자의 권한이 확인 되었을 때, 인가되는 명령어(COMMAND)에 응답하여 메모리장치(130)에 데이터를 저장하 거나 저장된 데이터를 읽는다. 암호블록(120)은 암호키 선택장치(140)로부터 출력되는 암호키(S_KEY)를 이용하여 사용자의 권한을 확인한다.
암호키 선택장치(140)는 명령어(COMMAND)에 포함된LBA(Logic Block Address) 범위(LBA_R)에 대응하는 암호키(S_KEY)를 출력한다. 여기서 LBA의 범위는 복수 개의 저장블록으로 임의로 구분된 메모리장치(130)의 저장블록의 위치에 대한 정보를 의미한다. 암호키 선택장치(140)는 정보를 통해 해당 저장블록에 할당된 암호키(S_KEY)를 선택한다.
상기 기능을 수행하기 위하여 암호키 선택장치(140)는, 명령어 해석기(150, Command Parser) 및 키 선택장치(160)를 구비한다. 명령어 해석기(150)는 명령어(COMMAND)에 포함된 LBA 범위(LBA_R)를 추출한다. 키 선택장치(160)는 추출된 LBA 범위(LBA_R)에 대응되는 암호키(S_KEY)를 선택한다.
여기서 입력되는 명령어에 포함된 데이터를 이용하여 LBA를 추출할 수 있으며, 이 때 F/W(Firm Ware)를 사용하지 않더라고 추출이 가능하다.
도 2는 키 선택장치의 내부 블록 다이어그램이다.
도 2를 참조하면, 키 선택장치(160)는 LBA 디코더(210) 및 키 저장장치(220)를 구비한다.
LBA 디코더(210)는 LBA 범위(LBA_R)를 디코딩 하여 복수(N은 정수)개의 선택신호(SEL_N)를 생성하며, 생성된 복수 개의 선택신호 중 하나의 신호만 활성화시킨다. 키 저장장치(220)는 복수 개의 구분된 저장블록에 사용될 암호키를 저장하며, 각각의 암호키는 활성화되는 선택신호(SEL_N)에 응답하여 암호키(S_KEY)로서 출력 된다.
도 3은 키 저장장치의 내부 블록을 나타낸다.
도 3을 참조하면, 키 저장장치(220)는, 복수 개의 저장블록에 각각의 암호키(KEY1~KEYN, N은 정수)를 저장하고 있으며, 저장된 암호키들(KEY1~KEYN)은 복수 개의 선택신호(SEL1~SEL_N) 중 활성화된 선택신호에 연결된 저장블록에 포함된 키가 암호키(S_KEY)로서 출력된다.
도 4는 본 발명에 따른 암호키 선택방법을 나타내는 신호 흐름도이다.
도 4를 참조하면, 암호키 선택방법(400)은, LBA 범위를 추출하는 단계(410, 420) 및 키 생성단계(430-450)를 구비한다.
LBA 범위를 추출하는 단계(410, 420)에서는, 명령어(COMMAND)를 수신(410)하고, 수신된 명령어(COMMAND)에 포함된 LBA 범위(LBA_R)를 추출한다(420).
키 생성단계(430-450)에서는, 추출된 LBA 범위(LBA_R)에 포함된 정보가 새로운 저장블록을 지시하는 가를 판단하고(430), 새로운 저장블록을 지시한다고 판단된 경우(YES)에는 추출된 LBA 범위(LBA_R)에 대응되는 키 플래그(KEY FLAG)를 생성한다(440). 생성된 키 플래그(KEY FLAG)에 따라 해당 저장블록에 할당된 암호키(KEY)를 선택한다(450). 추출된 LBA 범위(LBA_R)에 포함된 정보가 현재 사용하고 있는 저장블록을 지시하고 있는 경우(NO)에는 새로운 암호키(KEY)를 선택할 필요가 없게 된다.
도 1 내지 도 4를 기초로, 본 발명의 동작 특성에 대하여 설명한다.
스토리지 시스템을 사용하고자 하는 사용자는, 스토리지 시스템에 ID 및 패 스워드(password)를 입력하여 스토리지 시스템으로부터 사용권한을 허여 받은 후 사용한다고 가정한다.
사용권한이 인정된 후, 데이터를 메모리 장치(130)에 저장시키고자 하는 경우, 데이터는 저장되는 위치 즉 구분된 저장블록에 대응되는 암호키(S_KEY)를 이용하여 암호화가 이루어진 후 저장된다. 암호화 과정은 본 발명의 내용이 아니므로 여기서는 그 과정을 설명하지 않는다. 암호화되어 저장되었기 때문에, 사용권한이 없는 이가 저장된 데이터만을 추출하는 경우 추출된 데이터만으로는 저장된 정보를 인식한다는 것을 불가능하다.
본 발명에 따른 키 선택장치를 구비하는 스토리지 시스템을 습득한 이가 강제로 저장된 데이터를 확인하기 위해서는 사용권한이 있는 사용자의 ID 및 패스워드를 알아야 한다. 메모리에 저장된 데이터를 강제로 추출한다고 하더라도 암호화된 데이터에 포함된 정보를 용이하게 인식할 수는 없게 된다. 특히 암호화할 때, 하나의 암호키를 사용하는 것이 아니라 복수 개의 암호키들 중 하나를 선택하여 사용하는 경우 보안의 효과는 더욱 더 확실하게 될 것이다.
도 5는 종래의 스토리지 시스템의 블록 다이어그램이다.
도 5 를 참조하면, SATA 인터페이스(510)를 통해 입력된 명령어는 버스 브릿지(530)를 경유하여 ARM 프로세서(540)으로 전달되고, CPU(미도시)로부터 LBA 주소를 알아 낸 후 암호화 엔진(550)을 통해 키 레지스터(560)에 저장된 암호키를 선택한다.
도 6은 본 발명에 따른 스토리지 시스템의 블록 다이어그램이다.
도 6을 참조하면, SATA 인터페이스(610)를 통해 입력된 명령어는 본 발명에서 제안하는 명령어 해석기(621) 및 LBA 디코더(622)를 경유하여 암호화 엔진(650)에 직접 전달된다. 여기서 명령어 해석기(621) 및 LBA 디코더(622)는 도 1에 도시된 암호키 선택장치(140)에 대응된다. 도 2에 도시된 키 저장장치(220)는 도 6에서의 키 레지스터(660)와 대응된다. 실시 예에 따라 키 레지스터(660)는 도 6에서와 같이 독립적으로 존재할 수도 있고 도 2에서와 같이 다른 기능블록에 포함되는 것도 가능하다.
도 6에 도시된 본 발명에 따른 스토리지 시스템에서 채택하는 명령어의 전달 경로가 종래의 신호 경로와 다른 점은, 버스 브릿지(630) 및 ARM 프로세서(640)을 거치지 않는다는 점이다. CPU는 일반 명령어에 대한 본래의 작업을 수행하게 하고, 사용권한과 관계되는 명령어의 처리는 CPU를 거치지 않고 암호화 엔진(650)에서 직접 처리할 수 있도록 함으로써, 사용자에게 더 빠른 명령처리 결과를 보낼 수 있다.
SATA(Serial Advanced Technology Attchment) 인터페이스를 통해 입력되는 명령어의 경우, 명령어에 포함된 일정 부분의 데이터를 이용하여 LBA를 추출하는 것은 F/W(firm ware)의 도움이 없이도 가능하다.
이상에서는 SATA(Serial ATA) 인터페이스에 대해서만 설명하였지만 본 발명이 적용되는 분야는 이에 한정되는 것은 아니며, SAS(Serial Attached SCSI) 인터페이스 PCIe(PCI express) 인터페이스를 통해 입력되는 명령어에 대해서도 LBA 주소를 알 수 있다면 적용이 가능하다. 본 발명은 메모리 카드 인터페이스에도 적용 이 가능하고, 저장장치로는 SSD(Solid State Disc) 이외에도, ODD(Optical Disc Driver), HDD(Hard Disc Driver), MMC(Multi-Media Card) 및 SD(Super Digital) 카드에도 적용 가능하다.
도 7은 본 발명에 따른 스토리지 시스템이 ODD에 적용된 블록 다이어그램이다.
도 8은 본 발명에 따른 스토리지 시스템이 HHD에 적용된 블록 다이어그램이다.
도 9는 본 발명에 따른 스토리지 시스템이 MMC 카드에 적용된 블록 다이어그램이다.
도 10은 본 발명에 따른 스토리지 시스템이 SD 카드에 적용된 블록 다이어그램이다.
이상에서는 본 발명에 대한 기술사상을 첨부 도면과 함께 서술하였지만 이는 본 발명의 바람직한 실시 예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 이라면 누구나 본 발명의 기술적 사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.
도 1은 본 발명에 따른 암호키 선택장치를 구비하는 스토리지 시스템의 블록 다이어그램이다.
도 2는 키 선택장치의 내부 블록 다이어그램이다.
도 3은 키 저장장치의 내부 블록을 나타낸다.
도 4는 본 발명에 따른 암호키 선택방법을 나타내는 신호 흐름도이다.
도 5는 종래의 스토리지 시스템의 블록 다이어그램이다.
도 6은 본 발명에 따른 스토리지 시스템의 블록 다이어그램이다.
도 7은 본 발명에 따른 스토리지 시스템이 ODD에 적용된 블록 다이어그램이다.
도 8은 본 발명에 따른 스토리지 시스템이 HHD에 적용된 블록 다이어그램이다.
도 9은 본 발명에 따른 스토리지 시스템이 MMC 카드에 적용된 블록 다이어그램이다.
도 10은 본 발명에 따른 스토리지 시스템이 SD 카드에 적용된 블록 다이어그램이다.

Claims (13)

  1. CPU(110), 암호블록(120) 및 저장장치(130)를 구비하는 스토리지 시스템에 있어서,
    수신된 명령어(COMMAND)에 포함된 LBA(Logic Block Address) 범위(LBA_R)에 대응하는 암호키(S_KEY)를 선택하여 상기 암호블록(120)에 전달하는 암호키 선택장치(140)를 더 구비하는 스토리지 시스템.
  2. 제1항에 있어서, 상기 암호키 선택장치(140)는,
    상기 명령어(COMMAND)에 포함된 LBA 범위(LBA_R)를 추출하는 명령어 해석기(150); 및
    상기 LBA 범위(LBA_R)에 대응되는 상기 암호키(S_KEY)를 선택하는 키 선택장치(160)를 구비하는 스토리지 시스템.
  3. 제2항에 있어서, 상기 키 선택장치(160)는,
    상기 LBA 범위(LBA_R)에 대응되는 선택신호(SEL_N)를 활성화시키는 LBA 디코더(210); 및
    상기 선택신호(SEL_N)에 대응되는 상기 암호키(S_KEY)를 선택하는 키 저장장치(220)를 구비하는 스토리지 시스템.
  4. 제3항에 있어서, 상기 키 저장장치(220)는,
    LBA 범위에 대응되는 암호키들을 저장하여, 상기 선택신호(SEL_N)에 따라 저장된 암호키(S_KEY)를 출력하는 복수 개의 키 저장블록을 구비하는 스토리지 시스템.
  5. 제1항에 있어서,
    상기 CPU(110)는 상기 명령어(COMMAND)를 입력한 사용자가 상기 스토리지 시스템을 사용할 권한이 있다는 사용허락신호를 상기 암호블록(130)으로부터 전달받은 경우에만, 상기 사용자가 상기 저장장치(130)에 데이터를 기록하게 하거나 상기 저장장치(130)에 기록된 데이터를 읽을 수 있도록 하는 스토리지 시스템.
  6. 제1항에 있어서, 상기 LBA는,
    복수 개의 저장블록으로 구분된 상기 저장장치(130)의 각 구분된 저장블록에 해당하는 주소에 대한 정보를 포함하고 있는 스토리지 시스템.
  7. 제6항에 있어서,
    복수 개의 저장블록에 데이터를 저장할 때 또는 복수 개의 블록에 저장된 데이터를 읽을 때 서로 다른 암호키(S_KEY)를 사용하는 스토리지 시스템.
  8. 제1항에 있어서, 상기 저장장치(130)는,
    SSD(Solid State Disc), ODD(Optical Disc Driver), HDD(Hard Disc Driver), MMC(Multi-Media Card) 및 SD(Super Digital) 카드 중 하나인 스토리지 시스템.
  9. CPU (110);
    암호블록(120);
    저장장치(130); 및
    외부로부터 입력되는 명령어(COMMAND)에 포함된 LBA 범위(LBA_R)를 추출하는 명령어 해석기(150) 및 상기 LBA 범위(LBA_R)에 대응되는 암호키(S_KEY)를 선택하는 키 선택장치(160)를 포함한 암호키 선택장치(140)를 구비하는 스토리지 시스템의 암호키(S_KEY)선택 방법에 있어서,
    상기 명령어 해석기(150)에서, 상기 명령어(COMMAND)에 포함된 LBA 범위(LBA_R)를 추출하는 단계(410, 420); 및
    상기 키 선택장치(160)에서, 상기 LBA 범위(LBA_R)가 새로운 것인 경우에 새로운 LBA 범위(LBA_R)에 대응되는 암호키(S_KEY)를 선택하는 키 생성단계(430-450)를 구비하는 암호키 선택방법.
  10. 제9항에 있어서, 상기 키 생성단계(430-450)는,
    상기 LBA 범위(LBA_R)가 새로운 것인가를 판단하는 단계(430);
    상기 LBA 범위(LBA_R)가 새로운 것일 경우에는 상기 LBA 범위(LBA_R)에 대응되는 키 플래그(KEY FLAG)를 생성하는 단계(440); 및
    상기 키 플래그(KEY FLAG)에 대응되는 암호키(S_KEY)를 선택하는 단계(450)를 구비하는 암호키 선택방법.
  11. 제9항에 있어서,
    상기 CPU(110)는 상기 명령어(COMMAND)를 입력한 사용자가 상기 스토리지 시스템을 사용할 권한이 있다는 사용허락신호를 상기 암호블록(130)으로부터 전달받은 경우에만, 상기 사용자가 상기 저장장치(130)에 데이터를 기록하게 하거나 상기 저장장치(130)에 기록된 데이터를 읽을 수 있도록 하는 스토리지 시스템.
  12. 제9항에 있어서, 상기 LBA는,
    복수 개의 저장블록으로 구분된 상기 저장장치(130)의 각 구분된 저장블록에 해당하는 주소에 대한 정보를 포함하고 있는 스토리지 시스템.
  13. 제12항에 있어서,
    복수 개의 저장블록에 데이터를 저장할 때 또는 복수 개의 블록에 저장된 데이터를 읽을 때 서로 다른 암호키(S_KEY)를 사용하는 스토리지 시스템.
KR1020090089644A 2009-09-22 2009-09-22 암호키 선택장치를 구비하는 스토리지 시스템 및 암호 키 선택방법 KR101601790B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020090089644A KR101601790B1 (ko) 2009-09-22 2009-09-22 암호키 선택장치를 구비하는 스토리지 시스템 및 암호 키 선택방법
US12/728,325 US8886956B2 (en) 2009-09-22 2010-03-22 Data storage apparatus having cryption and method thereof
DE102010037291A DE102010037291A1 (de) 2009-09-22 2010-09-02 Datenspeichervorrichtung mit Verschlüsselung und Verfahren dafür
JP2010209051A JP5648209B2 (ja) 2009-09-22 2010-09-17 暗号キー選択装置を具備するストレージ・システム及び暗号キー選択方法
TW099131827A TWI525471B (zh) 2009-09-22 2010-09-20 具有加密之資料儲存裝置及其方法以及運用該裝置之系統、固態磁碟機、電腦可讀媒體
CN2010102976462A CN102023935A (zh) 2009-09-22 2010-09-21 具有密钥的数据存储设备及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090089644A KR101601790B1 (ko) 2009-09-22 2009-09-22 암호키 선택장치를 구비하는 스토리지 시스템 및 암호 키 선택방법

Publications (2)

Publication Number Publication Date
KR20110032249A true KR20110032249A (ko) 2011-03-30
KR101601790B1 KR101601790B1 (ko) 2016-03-21

Family

ID=43757646

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090089644A KR101601790B1 (ko) 2009-09-22 2009-09-22 암호키 선택장치를 구비하는 스토리지 시스템 및 암호 키 선택방법

Country Status (6)

Country Link
US (1) US8886956B2 (ko)
JP (1) JP5648209B2 (ko)
KR (1) KR101601790B1 (ko)
CN (1) CN102023935A (ko)
DE (1) DE102010037291A1 (ko)
TW (1) TWI525471B (ko)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5488134B2 (ja) * 2010-04-01 2014-05-14 セイコーエプソン株式会社 通信システム及び通信方法
US8966201B2 (en) * 2010-12-10 2015-02-24 Sandisk Technologies Inc. Method and system for hijacking writes to a non-volatile memory
US9235532B2 (en) * 2011-06-03 2016-01-12 Apple Inc. Secure storage of full disk encryption keys
CN102955747B (zh) * 2011-08-24 2015-05-20 群联电子股份有限公司 金钥传送方法、存储器控制器与存储器储存装置
US9286241B2 (en) * 2012-02-21 2016-03-15 Microchip Technology Incorporated Cryptographic transmission system
US9684593B1 (en) * 2012-11-30 2017-06-20 EMC IP Holding Company LLC Techniques using an encryption tier property with application hinting and I/O tagging
US20140310536A1 (en) * 2013-04-16 2014-10-16 Qualcomm Incorporated Storage device assisted inline encryption and decryption
CN104182362B (zh) * 2013-05-24 2019-07-26 联想(北京)有限公司 一种数据使用控制方法及移动存储设备
US9208105B2 (en) 2013-05-30 2015-12-08 Dell Products, Lp System and method for intercept of UEFI block I/O protocol services for BIOS based hard drive encryption support
US9665501B1 (en) * 2013-06-18 2017-05-30 Western Digital Technologies, Inc. Self-encrypting data storage device supporting object-level encryption
US9245140B2 (en) 2013-11-15 2016-01-26 Kabushiki Kaisha Toshiba Secure data encryption in shared storage using namespaces
KR102078853B1 (ko) 2013-11-27 2020-02-18 삼성전자 주식회사 메모리 시스템, 호스트 시스템 및 메모리 시스템에서의 라이트 동작 수행 방법
CN103777904B (zh) * 2014-02-12 2017-07-21 威盛电子股份有限公司 数据储存装置以及数据加扰与解扰方法
US20150242640A1 (en) * 2014-02-24 2015-08-27 Western Digital Technologies, Inc. Encryption key selection
KR102263880B1 (ko) * 2014-06-19 2021-06-11 삼성전자주식회사 호스트 컨트롤러 및 시스템-온-칩
IL234956A (en) * 2014-10-02 2017-10-31 Kaluzhny Uri Data bus protection with enhanced key entropy
US10002257B2 (en) 2015-08-04 2018-06-19 Ge Aviation Systems Llc Cryptographic key loader embedded in removable data cartridge
US10116446B2 (en) 2015-08-04 2018-10-30 Ge Aviation Systems Llc Cryptographic ignition key (CIK) embedded in removable data cartridge
US9990503B2 (en) 2015-08-04 2018-06-05 Ge Aviation Systems, Llc Cryptographic key server embedded in data transfer system
US10255420B2 (en) 2015-08-04 2019-04-09 Ge Aviation Systems, Llc Configuring cryptographic systems
CN105243344B (zh) 2015-11-02 2020-09-01 上海兆芯集成电路有限公司 具有硬盘加密功能的芯片组以及主机控制器
CN105354503B (zh) * 2015-11-02 2020-11-17 上海兆芯集成电路有限公司 储存装置数据加解密方法
CN105577661A (zh) * 2015-12-23 2016-05-11 浪潮集团有限公司 一种分步式加密存储系统及方法
US10157153B2 (en) * 2016-02-03 2018-12-18 Qualcomm Incorporated Inline cryptographic engine (ICE) for peripheral component interconnect express (PCIe) systems
CN106790221B (zh) * 2017-01-11 2020-11-03 京信通信系统(中国)有限公司 一种英特网协议安全IPSec协议加密方法和网络设备
KR20190075363A (ko) 2017-12-21 2019-07-01 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 모듈
KR102570581B1 (ko) 2018-06-07 2023-08-24 삼성전자 주식회사 스토리지 장치와 재구성 가능 로직 칩을 포함하는 스토리지 장치 세트 및 이를 포함하는 스토리지 시스템
CN109492384B (zh) * 2018-09-26 2021-07-20 成都卫士通信息产业股份有限公司 接收实体访问、访问密码设备的方法、密码设备和实体
CN109951275B (zh) * 2019-02-22 2021-08-17 记忆科技(深圳)有限公司 密钥生成方法、装置、计算机设备及存储介质
US11563570B2 (en) * 2020-05-19 2023-01-24 Western Digital Technologies, Inc. Storage system and method for command execution ordering by security key
US20220269437A1 (en) * 2021-02-19 2022-08-25 Western Digital Technologies, Inc. Data Storage Device and Method for Predetermined Transformations for Faster Retrieval

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63211049A (ja) 1987-02-27 1988-09-01 Toshiba Corp 携帯可能電子装置
JPH04182885A (ja) 1990-11-19 1992-06-30 Nippon Telegr & Teleph Corp <Ntt> 機密保護機能付きicカード
JP3982530B2 (ja) * 1996-01-17 2007-09-26 富士ゼロックス株式会社 ソフトウェアの保護機能付き情報処理装置およびソフトウェアの保護機能付き情報処理方法
JP3627384B2 (ja) 1996-01-17 2005-03-09 富士ゼロックス株式会社 ソフトウェアの保護機能付き情報処理装置及びソフトウェアの保護機能付き情報処理方法
US7006634B1 (en) * 2000-09-28 2006-02-28 Cisco Technology, Inc. Hardware-based encryption/decryption employing dual ported key storage
CN100428751C (zh) * 2000-12-25 2008-10-22 松下电器产业株式会社 安全通信包处理装置及其方法
JP4188673B2 (ja) 2002-12-02 2008-11-26 ヒタチグローバルストレージテクノロジーズネザーランドビーブイ 記録再生装置、コンテンツ再生装置、ディスク装置、その制御方法及びプログラム
JP2004199229A (ja) 2002-12-17 2004-07-15 Sakura K C S:Kk 記憶装置に記憶されたデータを解読不能にする方法及びコンピュータプログラム。
JP4891521B2 (ja) * 2003-03-28 2012-03-07 三洋電機株式会社 データ入出力方法、およびその方法を利用可能な記憶装置およびホスト装置
DE10341618A1 (de) 2003-09-10 2005-05-04 Hyperstone Ag Verwaltung gelöschter Blöcke in Flash-Speichern
US20050086471A1 (en) * 2003-10-20 2005-04-21 Spencer Andrew M. Removable information storage device that includes a master encryption key and encryption keys
JP2005140823A (ja) 2003-11-04 2005-06-02 Sony Corp 情報処理装置、制御方法、プログラム、並びに記録媒体
JP2005185605A (ja) 2003-12-26 2005-07-14 Sankyo Kk 遊技球を用いたスロットマシン
JP4566668B2 (ja) 2004-09-21 2010-10-20 株式会社日立製作所 記憶階層を有する計算機システムにおける暗号復号管理方法
WO2006126686A1 (ja) * 2005-05-26 2006-11-30 Matsushita Electric Industrial Co., Ltd. データ処理装置
JP4728060B2 (ja) 2005-07-21 2011-07-20 株式会社日立製作所 ストレージ装置
JP2007336446A (ja) 2006-06-19 2007-12-27 Canon Inc データ暗号化装置
JP2008060653A (ja) * 2006-08-29 2008-03-13 Matsushita Electric Ind Co Ltd 制御装置
JP4877962B2 (ja) * 2006-10-25 2012-02-15 株式会社日立製作所 暗号化機能を備えたストレージサブシステム
JP2008299448A (ja) 2007-05-29 2008-12-11 Hitachi Global Storage Technologies Netherlands Bv データ記憶装置及び暗号鍵に関する情報の更新方法
CN201060649Y (zh) * 2007-07-26 2008-05-14 北京华大恒泰科技有限责任公司 移动硬盘加密控制装置
KR100946400B1 (ko) 2008-02-19 2010-03-08 넥스타테크놀로지 주식회사 위상천이방식을 이용한 양방향 모아레 투영장치
US8176295B2 (en) * 2009-04-20 2012-05-08 Imation Corp. Logical-to-physical address translation for a removable data storage device
JP5488134B2 (ja) 2010-04-01 2014-05-14 セイコーエプソン株式会社 通信システム及び通信方法

Also Published As

Publication number Publication date
US8886956B2 (en) 2014-11-11
CN102023935A (zh) 2011-04-20
US20110072276A1 (en) 2011-03-24
JP2011070664A (ja) 2011-04-07
TWI525471B (zh) 2016-03-11
TW201118639A (en) 2011-06-01
JP5648209B2 (ja) 2015-01-07
KR101601790B1 (ko) 2016-03-21
DE102010037291A1 (de) 2011-04-21

Similar Documents

Publication Publication Date Title
KR101601790B1 (ko) 암호키 선택장치를 구비하는 스토리지 시스템 및 암호 키 선택방법
CN1592877B (zh) 用于对大容量存储设备上数据加密/解密的方法和装置
US10503934B2 (en) Secure subsystem
US11030119B2 (en) Storage data encryption and decryption apparatus and method
EP2803012B1 (en) Using storage controller bus interfaces to secure data transfer between storage devices and hosts
US20160204931A1 (en) Self-encrypting flash drive
KR20140067180A (ko) 보안 관리 유닛, 상기 보안 관리 유닛을 포함하는 호스트 컨트롤러 인터페이스, 상기 호스트 컨트롤러 인터페이스의 동작 방법, 및 상기 호스트 컨트롤러 인터페이스를 포함하는 장치들
CN111131130B (zh) 密钥管理方法及系统
KR101496975B1 (ko) 고체 상태 디스크 및 이에 대한 입출력방법
CN103617127B (zh) 带分区的存储装置及存储器分区的方法
US20100241870A1 (en) Control device, storage device, data leakage preventing method
JP2007310601A (ja) マイクロコンピュータおよびそのソフトウェア保護方法
CN104951407B (zh) 一种可加密u盘及其加密方法
CN112468300B (zh) 具有旁通通道的金钥管理装置及处理器芯片
CN110837627A (zh) 一种基于硬盘序列号的软件版权认证方法、系统和设备
CN101727408A (zh) 一种基于硬盘接口控制器的数据加密方法
JPH10340232A (ja) ファイル複写防止装置及びファイル読込装置
CN101763485A (zh) 数据保护方法
KR20170001221A (ko) 화상형성장치, 그의 데이터 기록 방법 및 비일시적 컴퓨터 판독가능 기록매체
TW202036349A (zh) 電腦系統及其虛擬硬碟的加解密方法
JP2001166997A (ja) ディジタルデータの不正コピー防止システム

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
FPAY Annual fee payment

Payment date: 20190228

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200228

Year of fee payment: 5