KR20140002780A - 정보 기록 장치, 및 정보 기록 장치의 처리 방법 - Google Patents

정보 기록 장치, 및 정보 기록 장치의 처리 방법 Download PDF

Info

Publication number
KR20140002780A
KR20140002780A KR1020137028259A KR20137028259A KR20140002780A KR 20140002780 A KR20140002780 A KR 20140002780A KR 1020137028259 A KR1020137028259 A KR 1020137028259A KR 20137028259 A KR20137028259 A KR 20137028259A KR 20140002780 A KR20140002780 A KR 20140002780A
Authority
KR
South Korea
Prior art keywords
key
controller
identification information
media device
controller identification
Prior art date
Application number
KR1020137028259A
Other languages
English (en)
Other versions
KR101554801B1 (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 KR20140002780A publication Critical patent/KR20140002780A/ko
Application granted granted Critical
Publication of KR101554801B1 publication Critical patent/KR101554801B1/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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • 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/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • 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/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • 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/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Abstract

컨트롤러에는, 컨트롤러 키와 컨트롤러 고유의 제1 컨트롤러 식별 정보가 제공된다. 컨트롤러는 컨트롤러 키와 제1 컨트롤러 식별 정보에 기초하여 컨트롤러마다 고유한 컨트롤러 고유 키를, 그리고 제1 컨트롤러 식별 정보에 기초하여 제2 컨트롤러 식별 정보를 생성한다. 복호화기는 컨트롤러 고유 키를 이용해 암호화 매체 디바이스 키를 복호화하여 매체 디바이스 키를 얻는다. 인증/키 교환 프로세스 유닛은 매체 디바이스 키, 매체 디바이스 키 증명서, 및 제2 컨트롤러 식별 정보를 이용해, 인터페이스 유닛을 통해 호스트 장치와 인증/키 교환 프로세스를 실행하여, 보안 채널을 확립한다.

Description

정보 기록 장치, 및 정보 기록 장치의 처리 방법{DATA RECORDING DEVICE, AND METHOD OF PROCESSING DATA RECORDING DEVICE}
본 출원은 2011년 4월 28일에 출원한 일본 특허 출원 제2011-102436호에 기초하여 우선권을 주장하며, 이 문헌의 전체 내용은 본 명세서에 참조용으로 포함된다.
본 명세서에 기재하는 실시형태는 정보 기록 장치, 및 정보 기록 장치의 처리 방법에 관한 것이다.
최근에, 정보화 사회의 발전으로, 콘텐츠 데이터 배신 시스템이 넓게 이용되고 있다. 콘텐츠 데이터 배신 시스템은 책, 신문, 음악이나 동화상 등의 디지털 콘텐츠 데이터를 전달하여, 사용자 단말에 또는 사용자 단말을 통해 저장 매체에 저장된 콘텐츠 데이터를 사용자 단말이나 PC(개인용 컴퓨터) 환경에서 보는 것/듣는 것을 가능하게 한다.
도 1은 제1 실시형태에 따른 정보 기록 시스템에 이용되는 메모리 카드(1000)의 구성을 도시하는 블록도이다.
도 2는 도 1의 메모리(100)(NAND형 플래시 메모리)의 구성을 도시하는 등가 회로도이다.
도 3은 제1 실시형태에 있어서, 메모리 카드(1000)에 암호화 매체 디바이스 키와 매체 디바이스 키 증명서를 기록하는 방법을 설명하는 개략도이다.
도 4는 제1 실시형태에 따른 정보 기록 시스템에 포함되는 메모리 카드(1000) 및 호스트 장치(2000)의 구성 및 동작을 도시하는 블록도이다.
도 5는 제1 실시형태에 따른 정보 기록 시스템에 포함되는 메모리 카드(1000) 및 호스트 장치(2000)의 구성 및 동작을 도시하는 블록도이다.
도 6은 제2 실시형태에 따른 정보 기록 시스템에 포함되는 메모리 카드(1000) 및 호스트 장치(2000)의 구성 및 동작을 도시하는 블록도이다.
도 7은 제2 실시형태에 따른 정보 기록 시스템의 동작을 도시하는 흐름도이다.
실시형태에 따른 정보 기록 장치는, 각종의 데이터를 저장하도록 구성된 메모리 유닛과, 상기 메모리 유닛을 제어하도록 구성된 컨트롤러와, 보안 채널을 통해 호스트 장치와 데이터 통신을 수행하도록 구성된 인터페이스 유닛을 포함한다. 컨트롤러는 컨트롤러 키와 컨트롤러 고유의 제1 컨트롤러 식별 정보를 유지한다.
컨트롤러는, 컨트롤러 키와 제1 컨트롤러 식별 정보에 기초하여 컨트롤러마다 고유한 컨트롤러 고유 키를 생성하도록 구성된 컨트롤러 고유 키 생성 유닛과, 제1 컨트롤러 식별 정보에 기초하여 제2 컨트롤러 식별 정보를 생성하도록 구성된 컨트롤러 식별 정보 생성 유닛과, 복호화기와, 호스트 장치와 인증/키 교환 프로세스를 실행하도록 구성된 인증/키 교환 프로세스 유닛을 포함한다.
메모리 유닛은 적어도, 외부로부터 자유롭게 액세스 가능한 통상 기록 영역과, 시스템 정보 기록 영역과, 비밀 기록 영역을 포함한다. 비밀 기록 영역은 정해진 인증 프로세스의 완료를 조건으로 하여 액세스 가능하다. 시스템 정보 기록 영역은 암호화 매체 디바이스 키와 매체 디바이스 키 증명서를 저장한다. 암호화 매체 디바이스 키는 컨트롤러 고유 키로 암호화된 매체 디바이스 키이다. 매체 디바이스 키는 공개 키 암호방식의 비밀 키로서 기능한다. 매체 디바이스 키 증명서는 공개 키 암호방식의 공개 키로서 기능한다.
복호화기는 컨트롤러 고유 키를 이용해 암호화 매체 디바이스 키를 복호화하여 매체 디바이스 키를 얻도록 구성된다. 또한, 인증/키 교환 프로세스 유닛은 매체 디바이스 키, 매체 디바이스 키 증명서, 및 제2 컨트롤러 식별 정보를 이용해, 인터페이스 유닛을 통해 호스트 장치와 인증/키 교환 프로세스를 실행하도록 구성된다. 보안 채널의 확립 후에, 매체 디바이스 키, 매체 디바이스 키 증명서, 및 제2 컨트롤러 식별 정보는 보안 채널 및 인터페이스 유닛을 통해 호스트 장치에 전송된다.
이하에 기재하는 실시형태에 따른 정보 기록 장치의 처리 방법은, 정보 기록 장치와 호스트 장치 사이에서 인증 프로세스를 실행하는 방법이다. 정보 기록 장치는 메모리 유닛과, 이 메모리 유닛을 제어하도록 구성된 컨트롤러를 포함한다.
정보 기록 장치는 메모리 유닛과 이 메모리 유닛을 제어하도록 구성된 컨트롤러를 포함한다. 정보 기록 장치는 컨트롤러 키와 제1 컨트롤러 식별 정보가 제공된다. 또한, 정보 기록 장치는 공개 키 암호방식의 비밀 키로서 기능하는 매체 디바이스 키와, 공개 키 암호방식의 공개 키로서 기능하는 매체 디바이스 키 증명서를, 메모리 유닛의 시스템 정보 기록 영역에 저장한다.
매체 디바이스 키는 컨트롤러 키와 제1 컨트롤러 식별 정보에 기초하여 생성된 컨트롤러 고유 키로 암호화되어 암호화 매체 디바이스 키로서 시스템 정보 기록 영역에 저장된다.
호스트 장치는 공개 키 암호 방식의 비밀 키로서 기능하는 호스트 디바이스 키와, 공개 키 암호 방식의 공개 키로서 기능하는 호스트 디바이스 증명서를 유지한다.
본 방법은 이하의 단계를 포함한다.
(1) 제1 컨트롤러 식별 정보에 기초하여 제2 컨트롤러 식별 정보를 생성하는 단계
(2) 암호화 매체 디바이스 키, 매체 디바이스 키 증명서, 제2 컨트롤러 식별 정보, 호스트 디바이스 키, 및 호스트 디바이스 증명서를 이용해 인증/키 교환 프로세스를 실행하여, 호스트 장치에서, 매체 디바이스 키 증명서에 포함된 매체 디바이스 키 증명서 ID와, 제2 컨트롤러 식별 정보를 얻는 단계
(3) 호스트 장치에서 수신된 매체 디바이스 키 증명서 ID와 제2 컨트롤러 식별 정보에 기초하여 정보 기록 장치 식별 정보를 생성하는 단계
이하, 도면을 참조하면서 본 발명의 실시형태에 대해 설명한다.
전자 콘텐츠 데이터(이하, 단순히 "콘텐츠"라고 함)는 용이하게 복제될 수 있기 때문에, 콘텐츠에 관한 저작권을 무시하는 부정 행위가 일어나기 쉽다. 이러한 부정 행위로부터 콘텐츠를 보호하는 관점에서, 콘텐츠는 통상 암호화되고, 정당한 장치에서 재생되기 전에 복호화된다.
콘텐츠를 암호화하기 위한 콘텐츠 키를 2개 키로 이중 암호화하는 이중 키 방식의 암호화가 제안되고 있다. 2개의 암호화 키 중에, 저장 매체 고유의 키(예컨대, 매체 고유 키)는 저장 매체의 은닉 영역에 보안 기록되어, 저장 매체 외부로부터는 액세스될 수 없다. 이 때문에, 예컨대 암호화 콘텐츠 키 데이터만이 부정하게 복사되었다고 해도, 암호화 콘텐츠 키 데이터를 복호화하는데 필요한 매체 고유 키가 없다면 콘텐츠를 이용(복호화)할 수 없다.
그러나, 이러한 매체 고유 키가 어떤 수법으로 부정하게 판독되어 부정 저장 매체(메모리 카드)의 제조업자로부터 건네진 경우, 승인된 저장 매체(메모리 카드)의 복사품인 클론 카드가 유포되게 된다. 이것은 곧 콘텐츠 데이터가 부정하게 이용되는 것을 의미한다.
[제1 실시형태]
도 1은 제1 실시형태에 따른 정보 기록 시스템에 이용되는 메모리 카드(비휘발성 메모리 시스템)(1000)의 구성을 도시한다. 이 메모리 카드(1000)는 콘텐츠 데이터를 암호화하여 저장하는 것이 가능하다. 비휘발성 메모리 시스템은 반드시 메모리 카드의 형상일 필요는 없다. 메모리 카드(1000)는 호스트 장치(2000)로부터 착탈 불가능하게 실장될 수도 있다.
또한, 이 메모리 카드(1000)는 호스트 장치(2000)(도 1에는 도시하지 않음)에 접속 가능하게 구성되고, 이 호스트 장치(2000)와 정해진 인증/키 교환 프로세스를 실행하는 것이 가능하다. 인증/키 교환 프로세스가 완료되면, 호스트 장치(2000)로부터 메모리 카드(1000)의 시스템 정보 기록 영역 및 비밀 기록 영역에 대한 데이터의 기록 및 판독이 가능하게 된다. 또한, 호스트 장치(2000)에 의해 또는 이 호스트 장치(2000)에 접속된 재생 장치에 의해, 메모리 카드(1000)에 저장되어 있는 암호화 콘텐츠 데이터의 복호화에 필요한 데이터의 판독이 가능해진다. 이에, 콘텐츠 데이터의 재생이 가능하게 된다.
그리고, 본 실시형태에 따른 메모리 카드(1000)는 호스트 장치(2000)와 인증/키 교환 프로세스를 실행하기 위해, 공개 키 암호방식의 비밀 키인 매체 디바이스 키(Kmd_i)와, 공개 키 암호방식의 공개 키를 포함하는 매체 디바이스 키 증명서(Certmedia)를 저장하도록 구성되어 있다. 이것에 대해서는 뒤에서 상세하게 설명한다.
이 메모리 카드(1000)는 NAND형 플래시 메모리(100)[이하, 메모리(100)라고 함]와, 그 메모리(100)에서의 판독 동작/기록 동작을 제어하는 컨트롤러(200)로 구성된다. 여기서는, 메모리(100)의 일례로서 NAND형 플래시 메모리를 채용하는 경우에 관해서 설명하지만, 데이터를 비휘발적으로 저장할 수 있는 다른 메모리 유닛(자기 디스크 드라이브 장치, 저항 변화 메모리, 강유전체 메모리, 자기 저항 메모리, 상변화 메모리)를 메모리(100)로서 채용하는 것도 가능하다.
컨트롤러(200)는 메모리(100)와 데이터 전송을 실행하기 위한 NAND 플래시 인터페이스(201), 호스트 장치(2000) 등의 외부 장치와 데이터 전송을 수행하기 위한 호스트 인터페이스(202), 판독 데이터와 기록 데이터를 일시 유지하기 위한 버퍼 RAM(203), 데이터 전송을 제어하기 위한 MPU(204), NAND형 플래시 메모리(21) 내의 펌웨어(FW)의 판독/기록의 순차 제어에 이용되는 하드웨어 시퀀서(205), 복호화기(206), 암호화기(207), 및 퓨즈 회로(208)를 포함한다.
NAND 플래시 인터페이스(201)는 오류 정정 회로(ECC)를 포함한다. NAND 플래시 인터페이스(201)는, NAND 플래시 메모리에 데이터를 기록할 때에, 에러 정정 회로를 이용하여 에러 정정 코드를 계산하고, 데이터 및 에러 정정 코드를 NAND 플래시 메모리(21)에 기록한다.
또한, NAND 플래시 인터페이스(201)는, NAND 플래시 메모리로부터 데이터를 판독할 때에, 데이터 및 에러 정정 코드로부터 신드롬을 계산하여, 정해진 오류 정정 능력 범위 내에서 데이터의 오류를 정정한다.
컨트롤러(200)에 필요한 펌웨어(FW)는 전원 투입후 자동적으로 실행되는 초기화 동작(파워온 초기 셋업 동작)시에 메모리(100)로부터 자동적으로 판독되어, 데이터 레지스터(버퍼 RAM)(203)에 전송된다. 이 판독 제어는 하드웨어 시퀀서(205)에 의해 수행된다. 펌웨어는 컨트롤러(200) 내의 ROM에 저장될 수도 있다. 본 실시형태에서의 펌웨어는 후술하는 바와 같이, 일방향성(one-way) 컨버터(211), ID 생성기(212), 및 인증/키 교환 프로세스 유닛(213) 등을 포함한다.
퓨즈 회로(208)는 컨트롤러 키(Kc)와, 컨트롤러(20)를 식별하기 위한 컨트롤러 고유 ID(IDcu)를 저장한다. 컨트롤러 키(Kc)와 컨트롤러 고유 ID(IDcu)는 후술하는 바와 같이 컨트롤러 고유 키(Kcu)를 생성하는데 이용된다. 전술한 매체 디바이스 키(Kmd_i)가 메모리 카드(1000)의 시스템 정보 기록 영역(103)에 저장되어 있을 때, 매체 디바이스 키(Kmd_i)는 컨트롤러 고유 키(Kcu)를 이용하여 암호화된다. 컨트롤러 고유 키(Kcu)는 일방향성 컨버터(211)에 대해, 컨트롤러 키(Kc)와 컨트롤러 고유 ID(IDcu)을 이용하여 입력 값으로서 생성된다. 즉, 일방향성 컨버터(211)는 컨트롤러 고유 키를 생성하기 위한 컨트롤러 고유 키 생성 유닛의 일례이다.
또한, ID 생성기(212)(컨트롤러 식별 정보 생성 유닛)는, 컨트롤러 키(Kc)와 컨트롤러 고유 ID(IDcu)를 입력 값으로서 이용하여, 외부에 전송되는 공개 컨트롤러 고유 ID(IDcntr)를 생성한다.
인증/키 교환 프로세스 유닛(213)은 매체 디바이스 키(Kmd_i)와 매체 디바이스 키 증명서(Certmedia)에 기초하여 호스트 장치(2000)와 인증/키 교환 프로세스를 실행한다.
메모리(100)는 도 2에 도시하는 바와 같이, 전기적으로 재기록 가능한 복수의 비휘발성 메모리 셀(도면의 예에서는 32개의 메모리 셀)(M0-M31)이 직렬로 접속되어 있는 각각의 NAND 셀 유닛(NU)(NAND 스트링)을 배열하여 구성된다.
NAND 셀 유닛(NU)의 일단은 선택 게이트 트랜지스터(S1)를 통해 비트선(BLo, BLe)에 접속되고, 타단은 선택 게이트 트랜지스터(S2)를 통해 공통 소스선(CELSRC)에 접속된다. 메모리 셀(M0-M31)의 제어 게이트는 각각 워드선(WL0-WL31)에 접속되고, 선택 게이트 트랜지스터(S1, S2)의 게이트는 선택 게이트선(SGD, SGS)에 접속된다.
워드선 방향으로 배열되는 NAND 셀 유닛의 그룹이 데이터 소거의 최소 단위가 되는 블록을 포함한다. 도시하는 바와 같이, 비트선의 방향으로 복수의 블록(BLK0-BLKn-1)이 배열된다. 복수의 블록(BLK) 중 일부는 사용자가 특별한 인증 프로세스 없이도 자유롭게 액세스 가능한 통상 기록 영역(101)으로서 설정되고, 다른 부분은 미리 정해진 인증/키 교환 프로세스후에 액세스 가능하게 되는 비밀 기록 영역(102)으로서 설정된다. 추가로, 또 다른 부분은 미리 결정된 정보를 메모리 카드 제조시에 기록해 두는 시스템 정보 기록 영역(103)으로서 설정된다.
통상 기록 영역(101), 비밀 기록 영역(102), 및 시스템 정보 기록 영역(103)은 각각 논리 어드레스가 할당되어 있다.
비밀 기록 영역(102)의 논리 어드레스의 지정은 후술하는 인증/키 교환 프로세스가 완료된 경우에만 허용된다.
통상 기록 영역(101)은 하나의 메모리 셀에 2비트 이상의 데이터를 저장할 수 있다. 한편, 비밀 기록 영역(102) 및 시스템 정보 기록 영역(103)은 데이터 신뢰성을 확보한다는 관점에서 하나의 메모리 셀에 1비트의 데이터만 저장할 수 있다.
또한, 통상 기록 영역(101)에서는, 논리 어드레스와 물리 어드레스 사이의 대응관계가 데이터 갱신에 따라 동적으로 변하지만, 비밀 기록 영역(102)과 시스템 정보 기록 영역(103)에서는, 데이터 신뢰성을 확보한다는 관점에서, 논리 어드레스와 물리 어드레스 사이의 대응관계를 정적으로 고정하도록 제어하는 것이 가능하다.
비트선(BLe 또는 BLo)의 일단에, 셀 데이터의 판독 및 기록에 이용되는 센스 앰프 회로(3)가 배치된다. 또한, 워드선의 일단에는 워드선 및 선택 게이트선을 선택 구동하는 로우(row) 디코더(2)가 배치된다. 도 2는 서로 인접한 짝수번 비트선(BLe)과 홀수번 비트선(BLo)이 비트선 선택 회로에 의해 선택적으로 센스 앰프 회로(3)의 각 센스 앰프(SA)에 접속되는 경우를 도시하고 있다.
이제, 도 3을 참조하여, 메모리 카드(1000)를 제조하는 방법, 및 매체 디바이스 키(Kmd_i)와 매체 디바이스 키 증명서(Certmedia)를 기록하는 방법에 대해 설명한다. 메모리 카드(1000)에 기록될 매체 디바이스 키(Kmd_i)와 매체 디바이스 키 증명서(Certmedia)는 키 발행/관리 센터(3000)로부터 메모리 카드 제조업자(C)에 제공되고, 컨트롤러(200)를 통해 메모리 카드(1000)에 포함된 메모리(100)의 시스템 정보 기록 영역(103)에 기록된다. 도 1에는 생략되어 있지만, 메모리 카드(1000)는 소정의 통신 기능을 갖는 기기(PC, 휴대 전화 단말, 또는 공중 단말)에 접속된다. 이러한 통신 기능을 갖는 기기를 통해, 키 발행/관리 센터(3000)로부터 발행된 데이터가 메모리 카드(1000)에 기록된다.
전술한 바와 같이, 매체 디바이스 키(Kmd_i)는 공개 키 암호방식의 비밀 키이며, 매체 디바이스 키 증명서(Certmedia)는 비밀 키로서 매체 디바이스 키(Kmd_i)에 대응한 공개 키를 포함하는 데이터이다. 매체 디바이스 키 증명서(Certmedia)에는, 증명서 고유의 식별 정보인 매체 디바이스 키 증명서 ID(IDm_cert)가 포함되어 있다.
메모리 카드(1000)의 제조시에, 컨트롤러(200)는 컨트롤러 제조업자(A)로부터 제공되고, 메모리(100)는 메모리 제조업자(B)로부터 메모리 카드 제조업자(C)에 제공된다. 또, 제조업자(A, B, C) 중 2 또는 모두는 동일 기업일 수도 있다. 메모리 카드(1000)가 동작 가능 상태가 되기 위해서 메모리 카드 제조업자(C)는 메모리(100)에 필요한 정보를 기록한다.
컨트롤러 제조업자(A)는 컨트롤러(200)를 제조할 때에, 컨트롤러(200)의 내부에, 은닉 정보로서 컨트롤러 키(Kc)와 컨트롤러 고유 ID(IDcu)를 기록한다. 컨트롤러 키(Kc)는 제조 공정상의 이유로 복수의 컨트롤러(200) 사이에 공통 키로서 설정될 수 있다. 한편, 컨트롤러 고유 ID는 컨트롤러(200)마다 다르다. 즉, 어느 한 컨트롤러(200) 내에서 생성되는 컨트롤러 고유 키와, 다른 컨트롤러(200) 내에서 생성되는 컨트롤러 고유 키는 항상 다르다.
컨트롤러 제조업자(A)는 컨트롤러(200)에 부여된 컨트롤러 키(Kc)의 데이터를 키 발행/관리 센터(3000)에 개시한다. 컨트롤러 키(Kc)는 PGP 암호방식 등을 이용하여, 컨트롤러 제조업자(A)로부터 키 발행/관리 센터(3000)에 전송될 수 있다. 컨트롤러 키(Kc)는 키 발행/관리 센터(3000)가 발행한 매체 디바이스 키(Kmd_i)를, 컨트롤러 제조업자(A)가 제조한 컨트롤러에 용이하게 기록하기 위해 준비된 비밀 정보이다. 일부 경우에는, 컨트롤러 키(Kc)가 키 발행/관리 센터(3000)에서 생성된 다음 컨트롤러 제조업자(A)에 개시되는 순서를 취하는 것도 가능하다.
키 발행/관리 센터(3000)는 매체 디바이스 키(Kmd_i)와 매체 디바이스 키 증명서(Certmedia)를 생성하는 키 생성기(3002)와, 생성된 매체 디바이스 키(Kmd_i)와 매체 디바이스 키 증명서(Certmedia)를 관리하는 디바이스 키 데이터베이스(3001)와, 컨트롤러 제조업자(A)로부터 수신된 컨트롤러 키(Kc)를 이용하여 매체 디바이스 키(Kmd_i)를 암호화하는 암호화 유닛(3003)을 포함한다.
컨트롤러 키(Kc)는 키 발행/관리 센터(3000)에서 매체 디바이스 키(Kmd_i)를 암호화하는데 이용된다. 매체 디바이스 키(Kmd_i)는 키 생성기(3002)에서 생성된 다음, 디바이스 키 데이터베이스(3001)에 저장된다. 암호화 유닛(3003)은 디바이스 키 데이터베이스(3001)로부터 대응하는 매체 디바이스 키(Kmd_i)를 공급받아 그것을 컨트롤러 키(Kc)를 이용해 암호화하여 암호화 매체 디바이스 키[Enc(Kc, Kmd_i)]를 생성한다.
컨트롤러 키(Kc)는 컨트롤러 제조업자(A)와 키 발행/관리 센터(3000)만이 취득할 수 있는 정보이다. 그러나, 사고나 사정에 의해 컨트롤러 키(Kc)의 정보가 외부에 누설될 때의 피해를 줄이기 위해서는, 예컨대 생산 로트 단위마다 일정수의 컨트롤러를 포함하는 상이한 그룹들 간에 상이한 컨트롤러 키(Kc)를 이용하는 것이 바람직하다.
또, 키 생성기(3002)와 디바이스 키 데이터베이스(3001)에서는, 메모리 카드(1000)에 대한 매체 디바이스 키(Kmd_i)와 매체 디바이스 키 증명서(Certmedia)뿐만 아니라, 후술하는 호스트 장치(2000)에 대한 호스트 디바이스 키(Khd_i)나 호스트 디바이스 증명서(Certhost)도 마찬가지로 생성되어 관리된다.
메모리 카드 제조업자(C)는 컨트롤러 제조업자(A)로부터 컨트롤러(200)를 공급받고, 그 컨트롤러(200)에 대해 암호화된 매체 디바이스 키(암호화 매체 디바이스 키[Enc(Kc, Kmd_i)]), 및 그 매체 디바이스 키에 대응하는 매체 디바이스 키 증명서(Certmedia)를 키 발행/관리 센터(3000)로부터 수신한다. 원하는 암호화 매체 디바이스 키[Enc(Kc, Kmd_i)]를 수신하기 위해서, 컨트롤러(200)의 모델 번호나 제조 로트 번호가 제공될 수 있다. 이에, 정확한 컨트롤러 키(Kc)에 의해 암호화된 매체 디바이스 키가 수신될 수 있다.
암호화 매체 디바이스 키[Enc(Kc, Kmd_i)]는 컨트롤러(200)의 버퍼 RAM(203)에 일시 기록된다. 그러면, 컨트롤러(200)는 그 암호화 매체 디바이스 키[Enc(Kc, Kmd_i)]를, 복호화기(206)에 소유하고 있는 컨트롤러 키(Kc)를 이용하여 복호화한다. 이에, 컨트롤러(200)에서 매체 디바이스 키(Kmd_i)가 제공된다.
한편, 일방향성 컨버터(211)는 컨트롤러(200)에 유지되어 있는 컨트롤러 키(Kc)와 컨트롤러 고유 ID(IDcu)를 입력 값으로서 이용해 일방향성 함수를 연산하여, 컨트롤러 고유 키(Kcu)를 생성한다. 이 새롭게 생성된 컨트롤러 고유 키(Kcu)를 이용해 매체 디바이스 키(Kmd_i)를 다시 암호화기(207)에서 암호화하여, 암호화 매체 디바이스 키[Enc(Kcu, Kmd_i)]를 생성한다.
이 암호화 매체 디바이스 키[Enc(Kcu, Kmd_i)]는 메모리 제조업자(B)로부터 공급된 메모리(100)의 시스템 정보 기록 영역(103)에 저장된다. 이 경우, 시스템 정보 기록 영역(103)에 기록된 암호화 매체 디바이스 키[Enc(Kcu, Kmd_i)]에 대응하는 매체 디바이스 키 증명서(Certmedia)도 마찬가지로 시스템 정보 기록 영역(103)에 저장된다.
컨트롤러 고유 키(Kcu)는 컨트롤러(200) 내에 은닉되어 있는 컨트롤러 키(Kc) 및 컨트롤러 고유 ID(IDcu)를 이용하여 생성된다. 따라서, 암호화 매체 디바이스 키[Enc(Kcu, Kmd_i)]의 복호화에 필요한 정보가 외부에 누설될 위험이 적다. 일단 메모리(100)에 기록된 암호화 매체 디바이스 키[Enc(Kcu, Kmd_i)]를 별개의 컨트롤러(200)에서 이용할 수 있는 상태로 하기 위해서, 부정하게 재암호화[원래의 컨트롤러 고유 키(Kcu1)로 복호화한 후에, 다른 컨트롤러 고유 키(Kcu2)로 암호화]하는 것은 매우 곤란하다.
제1 실시형태에서는, 컨트롤러 키(Kc)와 컨트롤러 고유 ID(IDcu)로부터 컨트롤러 고유 키(Kcu)를 생성하는데 일방향성 함수를 이용한다. 하지만, 2개의 입력 데이터로부터 하나의 출력 데이터를 생성할 수 있는 함수를 채용하는 것도 가능하다. 이 함수는 일방향성 함수에 한정되지 않는다.
다음에, 이제 도 4를 참조하여, 제1 실시형태에 따른 정보 기록 시스템의 전체 구성 및 동작을 설명한다.
전술한 바와 같이, 메모리 카드(1000)에는 암호화 매체 디바이스 키[Enc(Kcu, Kmd_i)] 및 매체 디바이스 키 증명서(Certmedia)가 제공된다. 이 메모리 카드(1000)는 호스트 장치(2000)에 접속된다. 이에, 도 4에 도시하는 바와 같이 메모리 카드(1000)는 호스트 장치(2000)로부터 제공된 콘텐츠 데이터(C)가 기록될 수 있거나, 취입한 콘텐츠 데이터(C)를 호스트 장치(2000)에 출력할 수 있다. 메모리 카드(1000)와 호스트 장치(2000)는 함께 정보 기록 시스템을 구성한다.
여기서, 호스트 장치(2000)의 구성에 관해서 설명한다. 호스트 장치(2000)는, 유지 유닛(401), 인증/키 교환 프로세스 유닛(402), ID 결합 유닛(403), 일방향성 컨버터(404), 난수 생성기(405), 암호화기/복호화기(406), 및 암호화기/복호화기(407)를 포함한다.
유지 유닛(401)은 전술한 호스트 디바이스 키(Khd_j)와 호스트 디바이스 증명서(Certhost)를 저장한다. 호스트 디바이스 키(Khd_j)는 공개 키 암호방식의 비밀 키이며, 호스트 디바이스 증명서(Certhost)는 호스트 디바이스 키(Khd_j)와 쌍을 이루는 공개 키를 포함하는 데이터이다. 인증/키 교환 프로세스 유닛(402)은 인터페이스 유닛(500, 202) 및 보안 채널을 통해, 메모리 카드(1000)의 인증/키 교환 프로세스 유닛(213)과 인증/키 교환 프로세스를 실행하여 매체 디바이스 키 증명서 ID(IDm_cert)를 출력하는 기능을 갖는다. 또한, ID 결합 유닛(403)은 공개 컨트롤러 고유 ID(IDcntr)와 매체 디바이스 키 증명서 ID(IDm_cert)에 기초하여 메모리 카드 고유 ID(IDmc)를 생성하도록 구성되어 있다. 이 ID 결합 유닛(403)은 컨트롤러 고유 ID(IDcntr)와 매체 디바이스 키 증명서 ID(IDm_cert)에 기초하여 메모리 카드 고유 ID(IDmc)를 생성하는 식별 정보 생성 유닛으로서 기능한다. 이 ID 결합 유닛(403)은 단순히 2개의 ID를 결합함으로써 다른 신규 ID를 생성하는 것이다. 이러한 단순한 결합 대신에, 예컨대 일방향성 함수나 암호 알고리즘을 이용하여 새로운 ID를 생성하는 것도 가능하다.
일방향성 컨버터(404)는 이 메모리 카드 고유 ID(IDmc)와, 난수 생성기(405)에서 생성된 매체 키(Km)를 입력으로 한 일방향성 함수를 이용하여 매체 고유 키(Kmu)를 생성한다. 난수 생성기(405)는 난수를 발생시켜, 취득된 난수에 기초하여 매체 키(Km)와 타이틀 키(Kt)를 생성한다. 암호화기/복호화기(406)는 전술한 매체 고유 키(Kmu)에 의해 타이틀 키(Kt)를 암호화한다. 또한, 암호화기/복호화기(407)는 타이틀 키(Kt)에 의해 콘텐츠 데이터(C)를 암호화한다(암호화 콘텐츠 데이터[Enc(Kt, C)]를 취득한다).
본 실시형태에서는, 매체 고유 키(Kmu)가 호스트 장치(2000)에 의해서 생성되어 그 매체 고유 키(Kmu)를 타이틀 키(Kt)를 암호화하기 위한 암호화 키로서 이용한다. 종래의 콘텐츠 데이터 보호 기술과 마찬가지로, 비밀 기록 영역(102)에 저장된 매체 고유 키(Kmu)를 콘텐츠 데이터(C)의 암호화에 직접 이용하는 방식을 채용하는 것도 가능하다.
또한, 매체 고유 키(Kmu)에 의해 사용자 고유의 사용자 키(Ku)를 암호화하고, 사용자 키(Ku)로 콘텐츠 키(Kct)를 암호화하며, 추가로 콘텐츠 키(Kct)로 콘텐츠 데이터를 암호화하는 이중 암호 키 방식도 이용 가능하다. 또한, 매체 키(Km)와 타이틀 키(Kt)는 호스트 장치 내에서 생성되는 것뿐만 아니라, 미리 메모리 카드에 기록되어 있는 경우나 외부 장치(도시하지 않음)로부터 제공되는 경우도 있을 수 있다.
다음에, 이러한 호스트 장치(2000)로부터 메모리 카드(1000)에 대하여 콘텐츠 데이터(C)가 기록되는 경우의 동작을, 도 4를 참조하여 설명한다. 처음에, 메모리 카드(1000)는 일방향성 컨버터(211)를 이용하여, 컨트롤러 키(Kc)와 컨트롤러 고유 ID(IDcu)로부터 컨트롤러 고유 키(Kcu)를 생성한다. 그리고, 이 컨트롤러 고유 키(Kcu)를 이용하여, 암호화 매체 디바이스 키[Enc(Kcu, Kmd_i)]가 복호화되어 매체 디바이스 키(Kmd_i)가 얻어진다. 이 매체 디바이스 키(Kmd_i)와 매체 디바이스 키 증명서(Certmedia)는 인증/키 교환 프로세스 유닛(213)에 전송된다.
한편, 호스트 장치(2000)는 호스트 디바이스 키(Khd_j)와 호스트 디바이스 증명서(Certhost)를 인증/키 교환 프로세스 유닛(402)에 전송한다. 이에 따라, 인증/키 교환 프로세스 유닛(213, 402)에서 인증/키 교환 프로세스가 수행된다. 프로세스가 완료되면, 메모리 카드(1000)와 호스트 장치(2000) 사이에 보안 채널이 확립된다. 보안 채널이 확립되면, ID 생성기(212)는 자신이 생성한 공개 컨트롤러 고유 ID(IDcntr)를 인터페이스 유닛을 통해 그리고 보안 채널을 통해 출력할 수 있다.
보안 채널이 확립되면, ID 생성기(403)는 공개 컨트롤러 고유 ID(IDcntr)와 매체 디바이스 키 증명서 ID(IDm_cert)를 결합하여 메모리 카드 고유 ID(IDmc)를 생성한다.
호스트 장치(2000)는 난수 생성기(405)를 이용하여 매체 키(Km)를 생성하고, 생성된 매체 키(Km)를 보안 채널 및 인터페이스 유닛(500, 202)을 경유해 메모리 카드(1000)의 비밀 기록 영역(102)에 저장한다.
호스트 장치(2000)는 일방향성 컨버터(404)를 이용하여 매체 키(Km)와 메모리 카드 고유 ID(IDmc)로부터 매체 고유 키(Kmu)를 생성한다.
호스트 장치(2000)는 난수 생성기(405)를 이용하여 타이틀 키(Kt)를 생성하고, 타이틀 키(Kt)는 암호화기/복호화기(406)를 이용하여 매체 고유 키(Kmu)로 추가 암호화된다. 암호화 타이틀 키[Kte=Enc(Kmu, Kt)]가 메모리 카드(100)의 통상 기록 영역(101)에 저장된다.
호스트 장치(2000)는 타이틀 키(Kt)를 이용하여 콘텐츠 데이터(C)를 암호화하고, 암호화 콘텐츠 데이터[Ce=Enc(Kt, C)]가 메모리 카드(1000)의 통상 기록 영역(101)에 저장된다. 전술한 프로세스로, 콘텐츠 데이터(C)의 기록 동작이 완료된다.
다음에, 메모리 카드(1000)로부터 호스트 장치(2000)에 대하여, 콘텐츠 데이터(C)를 판독하는 경우의 동작을, 도 5를 참조하여 설명한다. 인증/키 교환 프로세스 유닛(213, 402)에서의 인증/키 교환 프로세스, 및 ID 결합 유닛(403)에서의 동작은 기록 동작의 경우(도 4)와 대체로 같다.
인증/키 교환 프로세스가 완료되어 보안 채널이 확립되면, 비밀 기록 영역(102) 및 시스템 정보 기록 영역(103)에의 액세스가 가능하게 된다[즉, 비밀 기록 영역(102) 및 시스템 정보 기록 영역(103)의 논리 어드레스의 지정이 가능하게 된다]. 또한, 메모리 카드(1000)의 비밀 기록 영역(102)에 저장되어 있는 매체 키(Km)가 보안 채널을 통해 호스트 장치(2000)의 일방향성 컨버터(404)에 제공된다. 일방향성 컨버터(404)는 이 매체 키(Km)와 전술한 메모리 카드 고유 ID(IDmc)를 이용하여 매체 고유 키(Kmu)를 생성한다. 암호화기/복호화기(407)는 이 매체 고유 키(Kmu)를 이용해, 메모리 카드(100)에 저장되어 있는 암호화 타이틀 키[Enc(Kmu, Kt)]를 복호화하여 타이틀 키(Kt)를 얻는다. 그리고, 이 얻어진 타이틀 키(Kt)를 이용하여, 메모리 카드(100)에 저장되어 있는 암호화 콘텐츠 데이터[Enc(Kt, C)]를 복호화하여 콘텐츠 데이터(C)를 얻는다.
이상 설명한 바와 같이, 본 실시형태에서는, 공개 키 암호방식에 따른 매체 디바이스 키(Kmd_i) 및 매체 디바이스 키 증명서(Certmedia)가 인증/키 교환 프로세스에 이용된다. 그러나, 컨트롤러(200)의 컨트롤러 키(Kc) 및 컨트롤러 고유 키(Kcu)에 기초해 컨트롤러 고유 ID(IDcntr)가 생성되어, 보안 채널을 통해 호스트 장치(2000)에 공급된다. 보안 채널을 통해 전송되기 때문에, 컨트롤러 고유 ID(IDcntr)가 외부에 누설되지 않고 변조(falsification)가 방지된다. 또한, 이 컨트롤러 고유 ID(IDcntr)와 매체 디바이스 키 증명서 ID(IDm_cert)에 기초하여, ID 결합 유닛(403)에 의해, 메모리 카드 고유 ID(IDmc)가 생성된다. 이 메모리 카드 고유 ID(IDmc)에 기초하여, 메모리 카드(1000) 내의 메모리(100)의 매체 고유 키(Kmu)가 생성된다.
이와 같이, 본 실시형태에 따르면, 공개 키 암호방식을 이용한 인증/키 교환 프로세스가 실행될 경우에도, 컨트롤러(200) 고유의 컨트롤러 고유 ID(IDcntr)를 공개 키와 비밀 키의 쌍과 상호 관련시킬 수 있어, 클론 카드의 만연을 방지할 수 있다.
[제2 실시형태]
도 6은 제2 실시형태에 따른 정보 기록 시스템의 구성을 도시하는 블록도이다. 하드웨어 구성은 도 1과 도 2에 도시한 것과 동일하기 때문에, 이하에서는 그에 대한 설명은 생략한다. 본 실시형태에서는, 도 6에 도시하는 바와 같이, 인증/키 교환 프로세스 유닛(213)의 동작이 다르다. 즉, 본 실시형태에서의 ID 생성기(212)는 ID 생성기(212)에서 생성된 컨트롤러 고유 ID(IDcntr)를, 직접 호스트 장치(2000)에 전송하는 것이 아니라, 컨트롤러(200) 내의 인증/키 교환 프로세스 유닛(213)에 전송한다. 그리고, 컨트롤러 고유 ID(IDcntr)는 인증/키 교환 프로세스의 파라미터 중 하나로서 이용된다.
인증/키 교환 프로세스가 완료되면, 컨트롤러 고유 ID(IDcntr)는 매체 디바이스 키 증명서 ID(IDm_cert)와 함께 ID 결합 유닛(403)에 전송된다. 이후의 동작은 제1 실시형태와 대체로 동일하다.
도 7은 타원 곡선 암호에 기초한 표준 인증 키 교환을 이용하는 경우의 동작 순서를 설명하고 있다.
호스트 장치는 난수(RNh)를 생성하고(단계 S1), 그것을 호스트 디바이스 증명서(Certhost)와 같이 메모리 카드(1000)에 전송한다(단계 S2). 메모리 카드(1000)는 수신된 호스트 디바이스 증명서(Certhost)에 포함된 디지털 서명을 검증하여 난수(RNm)를 생성한다(단계 S3).
계속해서, 메모리 카드(1000)는 난수(RNm)와 매체 디바이스 키 증명서(Certmedia)를 호스트 장치에 전송한다(단계 S4). 이것에 응답하여, 호스트 장치(2000)는 수신된 매체 디바이스 키 증명서(Certmedia)에 포함된 디지털 서명을 검증한다. 단계 S4와 동시에, 메모리 카드(1000)는 타원 곡선 암호에 있어서의 디피-헬먼법(Diffie-Hellman) 키 교환 프로세스에 필요한 난수(Mk)를 생성한다. 또한 메모리 카드는 타원 곡선의 베이스 포인트 G를 이용하여 챌린지용 값[Mv(=Mk*G)]을 계산한다. ID 생성기(212)에서 IDcntr가 생성된다. 또한, 매체 디바이스 키(Kmd_i)를 이용하여 챌린지용 값(Mv), 단계 S2에서 수신된 난수(RNh), 및 컨트롤러 고유 ID(IDcntr)에 대한 디지털 서명을 생성한다(단계 S6). 메모리 카드(1000)는 단계 S6에서 생성된 챌린지용 값(Mv), 단계 S6에서 생성된 컨트롤러 고유 ID(IDcntr) 및 디지털 서명을 호스트 장치(2000)에 전송한다(단계 S7).
호스트 장치(2000)는 단계 S7에서 수신된 서명을 검증하고, 타원 곡선 암호에 있어서의 디피-헬머법 키 교환 프로세스에 필요한 난수(Hk)를 생성하며, 타원 곡선의 베이스 포인트 G를 이용하여 챌린지용 값[Hv(=Hk*G)]을 계산한다. 그리고, 호스트 장치는 호스트 디바이스 키(Khd_j)를 이용하여 챌린지용 값(Hv)과 단계 S4에서 수신된 난수(RNm)에 대한 디지털 서명을 생성하며, 인증/키 교환 프로세스에 의해서 공유되는 공유 키[Ks(=Hk*Mv)]를 계산한다(단계 S8).
호스트 장치(2000)는 단계 S8에서 생성된 챌린지용 값(Hv) 및 디지털 서명을 메모리 카드(1000)에 전송한다(단계 S9). 이것에 응답하여, 메모리 카드(1000)는 단계 S9에서 수신된 디지털 서명을 검증하여, 공유 키[Ks(=Mk*Hv)]를 계산한다.
전술한 프로세스 중 디지털 서명 검증 처리에서 서명이 제대로 검증될 수 없다면, 그 이후의 프로세스는 모든 단계에서 중지된다.
전술한 인증/키 교환 프로세스를 실행함으로써, 메모리 카드와 호스트 장치는 공유 키를 비밀리에 공유할 수 있다. 인증/키 교환 프로세스에서는, 호스트 장치와 메모리 카드에 의해 생성된 챌린지를 이용하여 공유 키를 계산한다. 그렇기 때문에, 공유 키의 값은 인증/키 교환 프로세스 때마다 다르다.
본 발명의 소정의 실시형태들에 대해서 설명하였지만, 이들 실시형태들은 일례로 제시된 것뿐이며, 본 발명의 범주를 한정하는 것이 아니다. 사실상, 본 명세서에 기재한 신규한 방법 및 시스템은 다양한 형태로 구현될 수 있고, 더불어 본 발명의 사상에서 이탈하지 않으면서 방법 및 시스템의 형태에 있어서 다양한 생략, 치환 및 변화가 이루어질 수 있다. 이하의 특허청구범위 및 그 동류는 본 발명의 범주 및 사상 내에 있는 그러한 형태 또는 변형예를 포함하는 것이다.
예를 들어, 전술한 실시형태에 있어서, ID 생성기(212)에서는 컨트롤러 키(Kc)와 컨트롤러 고유 ID(IDcu)의 쌍에 기초하여 컨트롤러 고유 ID(IDcntr)를 생성한다. 그러나, 이것 대신에, 컨트롤러 고유 ID(IDcu)에만 기초하여 컨트롤러 고유 ID(IDcntr)를 생성할 수도 있다. 컨트롤러(200)에 은닉하고 있는 컨트롤러 고유 ID(IDcu)를 은닉 상태로 유지하면서, 외부에 개시 가능한 다른 고유 정보를 생성할 수 있다면, 여기에 이용하는 파라미터로서는 요건이 없다. 다만, 생성에 이용하는 함수는 일방향성 함수와 같은 불가역적인 것이다. 얻어진 컨트롤러 고유 ID(IDcntr)에 기초한 역계산으로 원래의 컨트롤러 고유 ID(IDcu)를 구할 수 없는 함수를 선택해야 한다.

Claims (20)

  1. 정보 기록 장치에 있어서,
    각종의 데이터를 저장하도록 구성된 메모리 유닛과,
    컨트롤러 키와 컨트롤러 고유의 제1 컨트롤러 식별 정보가 제공되며, 상기 메모리 유닛을 제어하도록 구성된 컨트롤러와,
    보안 채널을 통해 호스트 장치와 데이터 통신을 실행하도록 구성된 인터페이스 유닛
    을 포함하고,
    상기 컨트롤러는,
    상기 컨트롤러 키와 제1 컨트롤러 식별 정보에 기초하여 컨트롤러마다 고유의 컨트롤러 고유 키를 생성하도록 구성된 컨트롤러 고유 키 생성 유닛과,
    상기 제1 컨트롤러 식별 정보에 기초하여 제2 컨트롤러 식별 정보를 생성하도록 구성된 컨트롤러 식별 정보 생성 유닛과,
    복호화기와,
    상기 호스트 장치와 인증/키 교환 프로세스를 실행하도록 구성된 인증/키 교환 프로세스 유닛
    을 더 포함하고,
    상기 메모리 유닛은,
    외부로부터 자유롭게 액세스 가능한 통상 기록 영역과,
    암호화 매체 디바이스 키와 매체 디바이스 키 증명서를 저장하는 시스템 정보 기록 영역으로서, 상기 암호화 매체 디바이스 키는 상기 컨트롤러 고유 키로 암호화된 매체 디바이스 키이고, 상기 매체 디바이스 키는 공개 키 암호방식의 비밀 키로서 기능하며, 상기 매체 디바이스 키 증명서는 공개 키 암호방식의 공개 키로서 기능하는 것인 시스템 정보 기록 영역과,
    정해진 인증 프로세스의 완료를 조건으로 하여 액세스 가능한 비밀 기록 영역
    을 더 포함하며,
    상기 복호화기는 상기 컨트롤러 고유 키를 이용해 암호화 매체 디바이스 키를 복호화하여 매체 디바이스 키를 얻도록 구성되고,
    상기 인증/키 교환 프로세스 유닛은 매체 디바이스 키와 매체 디바이스 키 증명서를 이용해 인터페이스 유닛을 통해 상기 호스트 장치와 인증/키 교환 프로세스를 실행하여, 보안 채널의 확립 후에, 상기 보안 채널 및 인터페이스 유닛을 통해 제2 컨트롤러 식별 정보를 상기 호스트 장치에 전송하도록 구성되는 것인 정보 기록 장치.
  2. 제1항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 제2 컨트롤러 식별 정보를 상기 인증/키 교환 프로세스 유닛에 전송하도록 구성되는 것인 정보 기록 장치.
  3. 제1항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 일방향 컨버터를 포함하는 것인 정보 기록 장치.
  4. 제1항에 있어서, 상기 보안 채널이 확립될 경우, 상기 컨트롤러는 상기 시스템 정보 기록 영역에의 액세스를 허용하는 것인 정보 기록 장치.
  5. 제4항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 일방향 컨버터를 포함하는 것인 정보 기록 장치.
  6. 제1항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 컨트롤러 키와 제1 컨트롤러 식별 정보에 기초하여 제2 컨트롤러 식별 정보를 생성하는 것인 정보 기록 장치.
  7. 제6항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 제2 컨트롤러 식별 정보를 상기 인증/키 교환 프로세스 유닛에 전송하도록 구성되는 것인 정보 기록 장치.
  8. 제1항에 있어서, 상기 보안 채널이 확립될 경우, 상기 컨트롤러는 상기 시스템 정보 기록 영역에의 액세스를 허용하고,
    상기 컨트롤러 식별 정보 생성 유닛은 컨트롤러 키와 제1 컨트롤러 식별 정보에 기초하여 제2 컨트롤러 식별 정보를 생성하는 것인 정보 기록 장치.
  9. 제8항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 제2 컨트롤러 식별 정보를 상기 인증/키 교환 프로세스 유닛에 전송하도록 구성되는 것인 정보 기록 장치.
  10. 제8항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 일방향 컨버터를 포함하는 것인 정보 기록 장치.
  11. 제1항에 있어서, 상기 인증/키 교환 프로세스 유닛은, 상기 호스트 장치에 의해 유지되며 공개 키 암호방식의 공개 키로서 기능하는 호스트 디바이스 증명서를 수신하도록 구성되는 것인 정보 기록 장치.
  12. 제11항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 일방향 컨버터를 포함하는 것인 정보 기록 장치.
  13. 제12항에 있어서, 상기 컨트롤러 식별 정보 생성 유닛은 제2 컨트롤러 식별 정보를 상기 인증/키 교환 프로세스 유닛에 전송하도록 구성되는 것인 정보 기록 장치.
  14. 정보 기록 장치와 호스트 장치 사이에서 인증 프로세스를 실행하는 방법에 있어서,
    상기 정보 기록 장치는 메모리 유닛과, 이 메모리 유닛을 제어하도록 구성되며 컨트롤러 키와 제1 컨트롤러 식별 정보가 제공되는 컨트롤러를 포함하고,
    공개 키 암호방식의 비밀 키로서 기능하는 매체 디바이스 키와, 공개 키 암호 방식의 공개 키로서 기능하는 매체 디바이스 키 증명서가 상기 메모리 유닛의 시스템 정보 기록 영역에 유지되어 있으며,
    상기 매체 디바이스 키는 상기 컨트롤러 키와 제1 컨트롤러 식별 정보에 기초하여 생성되는 컨트롤러 고유 키로 암호화되어 암호화 매체 디바이스 키로서 상기 시스템 정보 기록 영역에 저장되어 있고,
    상기 호스트 장치는 공개 키 암호방식의 비밀 키로서 기능하는 호스트 디바이스 키와, 공개 키 암호방식의 공개 키로서 기능하는 호스트 디바이스 증명서를 유지하고 있으며,
    상기 방법은,
    제1 컨트롤러 식별 정보에 기초하여 제2 컨트롤러 식별 정보를 생성하는 단계와,
    암호화 매체 디바이스 키, 매체 디바이스 키 증명서, 제2 컨트롤러 식별 정보, 호스트 디바이스 키, 및 호스트 디바이스 증명서를 이용해 인증/키 교환 프로세스를 실행하여, 호스트 장치에서, 매체 디바이스 키 증명서에 포함된 매체 디바이스 키 증명서 ID와, 제2 컨트롤러 식별 정보를 얻는 단계와,
    호스트 장치에서 수신된 매체 디바이스 키 증명서 ID와 제2 컨트롤러 식별 정보에 기초하여 정보 기록 장치 식별 정보를 생성하는 단계
    를 포함하는 것인 인증 프로세스 실행 방법.
  15. 제14항에 있어서, 상기 제2 컨트롤러 식별 정보는 상기 정보 기록 장치에 설치된 인증 프로세스 교환 처리 유닛에 전송되는 것인 인증 프로세스 실행 방법.
  16. 제14항에 있어서, 상기 제2 컨트롤러 식별 정보는 상기 제1 컨트롤러 식별 정보를 일방향 함수에 입력함으로써 생성된 출력 값인 것인 인증 프로세스 실행 방법.
  17. 제14항에 있어서, 상기 제2 컨트롤러 식별 정보는 상기 컨트롤러 키와 제1 컨트롤러 식별 정보에 기초하여 생성되는 것인 인증 프로세스 실행 방법.
  18. 제17항에 있어서, 상기 제2 컨트롤러 식별 정보는 상기 정보 기록 장치에 설치된 인증 프로세스 교환 처리 유닛에 전송되는 것인 인증 프로세스 실행 방법.
  19. 제17항에 있어서, 상기 제2 컨트롤러 식별 정보는 상기 제1 컨트롤러 식별 정보를 일방향 함수에 입력함으로써 생성된 출력 값인 것인 인증 프로세스 실행 방법.
  20. 제14항에 있어서, 매체 고유 키는 상기 정보 기록 장치 식별 정보를 일방향 함수에 입력함으로써 생성된 출력 값인 것인 인증 프로세스 실행 방법.
KR1020137028259A 2011-04-28 2012-03-22 정보 기록 장치, 및 정보 기록 장치의 처리 방법 KR101554801B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2011-102436 2011-04-28
JP2011102436A JP5159916B2 (ja) 2011-04-28 2011-04-28 ホスト
PCT/JP2012/058281 WO2012147445A1 (en) 2011-04-28 2012-03-22 Data recording device, and method of processing data recording device

Publications (2)

Publication Number Publication Date
KR20140002780A true KR20140002780A (ko) 2014-01-08
KR101554801B1 KR101554801B1 (ko) 2015-09-21

Family

ID=47071971

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137028259A KR101554801B1 (ko) 2011-04-28 2012-03-22 정보 기록 장치, 및 정보 기록 장치의 처리 방법

Country Status (7)

Country Link
US (2) US8850207B2 (ko)
EP (1) EP2702722A4 (ko)
JP (1) JP5159916B2 (ko)
KR (1) KR101554801B1 (ko)
CN (1) CN103493431A (ko)
TW (1) TWI461951B (ko)
WO (1) WO2012147445A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5050114B1 (ja) 2011-04-28 2012-10-17 株式会社東芝 情報記録装置
US8661527B2 (en) 2011-08-31 2014-02-25 Kabushiki Kaisha Toshiba Authenticator, authenticatee and authentication method
CN102634017B (zh) * 2012-04-13 2013-09-25 浙江华亿工程设计有限公司 含有机硅的磷氮系阻燃剂及其制备方法
CN102737185B (zh) * 2012-06-08 2015-07-01 杭州华澜微科技有限公司 数字版权保护方法
US10528357B2 (en) * 2014-01-17 2020-01-07 L3 Technologies, Inc. Web-based recorder configuration utility
CN104410705A (zh) * 2014-12-10 2015-03-11 成都实唯物联网科技有限公司 一种安全的多外设远程群控网络、组网方法及通信方法
US9413754B2 (en) * 2014-12-23 2016-08-09 Airwatch Llc Authenticator device facilitating file security
DE102015225651A1 (de) * 2015-12-17 2017-06-22 Robert Bosch Gmbh Verfahren und Vorrichtung zum Übertragen einer Software
US10680810B2 (en) * 2016-10-26 2020-06-09 Nxp B.V. Method of generating an elliptic curve cryptographic key pair
US10373528B2 (en) 2016-12-14 2019-08-06 Western Digital Technologies, Inc. Cell-level realization of burn after reading for NAND flash
JP7089622B1 (ja) * 2021-06-18 2022-06-22 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW329518B (en) 1995-12-08 1998-04-11 Sony Co Ltd Information data recording-replaying device
EP1363282B1 (en) * 1998-07-22 2009-01-07 Panasonic Corporation Digital data recording apparatus and a method for protecting copyrights that facilitate reproduction of encrypted digital data recorded on recording media, and a computer-readable recording medium that records a program of the method
JP2000196582A (ja) * 1998-12-25 2000-07-14 Nippon Telegr & Teleph Corp <Ntt> 記憶メディア識別子を利用した不正利用防止のための情報記録、利用および配送方法
JP2001066989A (ja) * 1999-08-31 2001-03-16 Fuji Xerox Co Ltd 一方向性関数生成方法,一方向性関数値生成装置,証明装置,認証方法および認証装置
US7706531B2 (en) * 1999-12-28 2010-04-27 Panasonic Corporation Recording apparatus, reproduction apparatus, data processing apparatus, recording and reproduction apparatus and data transmission apparatus and corresponding methods
DE60132962T2 (de) * 2000-01-21 2009-02-26 Sony Corp. Datenverarbeitungsvorrichtung und datenverarbeitungsverfahren
JP2001256318A (ja) * 2000-03-14 2001-09-21 Sony Corp コンテンツ取り引きシステムおよびコンテンツ取り引き方法、並びにプログラム提供媒体
US7921290B2 (en) * 2001-04-18 2011-04-05 Ipass Inc. Method and system for securely authenticating network access credentials for users
CN100452699C (zh) * 2001-09-27 2009-01-14 松下电器产业株式会社 加密装置、解密装置、密钥生成装置、版权保护系统和密码通信装置
JP3898114B2 (ja) 2002-11-01 2007-03-28 本田技研工業株式会社 内燃機関の吸入空気量推定方法、推定装置、吸入空気量制御方法および制御装置
KR100555554B1 (ko) * 2004-02-10 2006-03-03 삼성전자주식회사 기록 장치를 구비하는 데이터 처리 장치의 인증 방법 및 이에 적합한 장치
JP4686138B2 (ja) * 2004-05-26 2011-05-18 株式会社東芝 記憶媒体変換方法、プログラム及び機器
US20080072072A1 (en) * 2004-06-09 2008-03-20 Kenji Muraki Recording Device and Recording Method
US8238554B2 (en) * 2004-07-22 2012-08-07 Sanyo Electric Co., Ltd. Method for transmission/reception of contents usage right information in encrypted form, and device thereof
PT1854263E (pt) * 2005-02-04 2011-07-05 Qualcomm Inc Técnica de bootstrapping para protecção de comunicações sem fios
KR20060104268A (ko) 2005-03-30 2006-10-09 주식회사 네이비 유에스비를 이용한 개인 인증 및 저장 장치
JP4715278B2 (ja) 2005-04-11 2011-07-06 ソニー株式会社 情報処理装置および情報処理方法、プログラム格納媒体、プログラム、並びに提供装置
JP4156615B2 (ja) * 2005-08-22 2008-09-24 ソニー・エリクソン・モバイルコミュニケーションズ株式会社 携帯電話機、通信端末、通話方法及び通話プログラム
KR101366243B1 (ko) * 2006-12-04 2014-02-20 삼성전자주식회사 인증을 통한 데이터 전송 방법 및 그 장치
JP2008269088A (ja) * 2007-04-17 2008-11-06 Toshiba Corp プログラム情報提供システム、プログラム情報提供方法、プログラム情報提供方法に用いられる記録媒体
FR2923627B1 (fr) 2007-11-08 2013-08-30 Siemens Vdo Automotive Procede de deverrouillage d'un calculateur de controle moteur.
JP5145985B2 (ja) 2008-02-05 2013-02-20 セイコーエプソン株式会社 ノズル基板及びノズル基板の製造方法
US9183357B2 (en) * 2008-09-24 2015-11-10 Panasonic Intellectual Property Management Co., Ltd. Recording/reproducing system, recording medium device, and recording/reproducing device
JP5407482B2 (ja) 2009-03-27 2014-02-05 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
JP2010267240A (ja) * 2009-04-16 2010-11-25 Toshiba Corp 記録装置
JP2010268417A (ja) * 2009-04-16 2010-11-25 Toshiba Corp 記録装置及びコンテンツデータ再生システム
EP2544121B1 (en) 2010-03-03 2020-07-29 Panasonic Intellectual Property Management Co., Ltd. Controller embedded in recording medium device, recording medium device, recording medium device manufacturing system, and recording medium device manufacturing method
EP2546775A1 (en) * 2010-03-11 2013-01-16 Panasonic Corporation Recording system, reproduction system, key distribution server, recording device, recording medium device, reproduction device, recording method, and reproduction method
WO2011152065A1 (ja) * 2010-06-04 2011-12-08 パナソニック株式会社 コントローラ、制御方法、コンピュータプログラム、プログラム記録媒体、記録装置及び記録装置の製造方法
WO2012011254A1 (ja) * 2010-07-23 2012-01-26 パナソニック株式会社 情報処理装置、コントローラ、鍵発行局、無効化リスト有効性判定方法および鍵発行方法
WO2013031124A1 (ja) * 2011-08-26 2013-03-07 パナソニック株式会社 端末装置、検証装置、鍵配信装置、コンテンツ再生方法、鍵配信方法及びコンピュータプログラム
CN103098072B (zh) * 2011-09-06 2016-04-27 松下电器产业株式会社 记录介质装置以及记录介质装置的控制方法
US20130086385A1 (en) * 2011-09-30 2013-04-04 Yuri Poeluev System and Method for Providing Hardware-Based Security
JP5443552B2 (ja) 2012-07-20 2014-03-19 株式会社東芝 メディア

Also Published As

Publication number Publication date
JP5159916B2 (ja) 2013-03-13
TW201250511A (en) 2012-12-16
KR101554801B1 (ko) 2015-09-21
US20140281551A1 (en) 2014-09-18
EP2702722A1 (en) 2014-03-05
JP2012235312A (ja) 2012-11-29
US8850207B2 (en) 2014-09-30
US20140047240A1 (en) 2014-02-13
WO2012147445A1 (en) 2012-11-01
TWI461951B (zh) 2014-11-21
CN103493431A (zh) 2014-01-01
EP2702722A4 (en) 2014-11-19
US9319389B2 (en) 2016-04-19

Similar Documents

Publication Publication Date Title
US10361850B2 (en) Authenticator, authenticatee and authentication method
KR101554801B1 (ko) 정보 기록 장치, 및 정보 기록 장치의 처리 방법
KR101501398B1 (ko) 정보 기록 장치, 호스트 장치, 및 정보 기록 장치의 처리 방법
US8971529B2 (en) Information recording device
US9294285B2 (en) Information recording device
US20140281570A1 (en) Method of performing an authentication process between data recording device and host device
US20140281543A1 (en) Host device configured for authentication with memory device
US20130336477A1 (en) Medium
JP5499145B2 (ja) 認証システム、及びメディア
JP5443552B2 (ja) メディア
US8948400B2 (en) Host 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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180816

Year of fee payment: 4