KR20140063863A - 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법 - Google Patents

호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법 Download PDF

Info

Publication number
KR20140063863A
KR20140063863A KR1020147010629A KR20147010629A KR20140063863A KR 20140063863 A KR20140063863 A KR 20140063863A KR 1020147010629 A KR1020147010629 A KR 1020147010629A KR 20147010629 A KR20147010629 A KR 20147010629A KR 20140063863 A KR20140063863 A KR 20140063863A
Authority
KR
South Korea
Prior art keywords
key
information
secret
encrypted
host device
Prior art date
Application number
KR1020147010629A
Other languages
English (en)
Other versions
KR101546204B1 (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 KR20140063863A publication Critical patent/KR20140063863A/ko
Application granted granted Critical
Publication of KR101546204B1 publication Critical patent/KR101546204B1/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
    • 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
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • 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/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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
    • 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/3234Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement
    • 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
    • H04L2209/601Broadcast encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Read Only Memory (AREA)

Abstract

일 실시예에 따르면, 메모리 디바이스로부터 암호화된 비밀 식별 정보(E-SecretID) 및 키 관리 정보(FKB)가 판독된다. 암호화된 관리 키(E-FKey)는 키 관리 정보(FKB) 및 인덱스 정보(k)를 사용하여 획득된다. 인덱스 정보(k) 및 암호화된 관리 키(E-FKey)는 반도체 메모리 디바이스에 송신된다. 인덱스 키(INK)는 제1 키 정보(NKey) 및 수신된 인덱스 정보(k)를 사용하여 생성된다. 암호화된 관리 키(E-FKey)가 인덱스 키(INK)를 사용해서 암호 해독됨으로써 관리 키(FKey)가 획득되어 호스트 디바이스에 송신된다.

Description

호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법{HOST DEVICE, SEMICONDUCTOR MEMORY DEVICE, AND AUTHENTICATION METHOD}
본 출원은 2012년 1월 16일에 출원된 일본 특허출원 제2012-005839호를 기초로 우선권을 주장하며, 그 내용은 여기에 참조로서 원용된다.
여기에 설명된 실시예들은 일반적으로 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 관한 것이다.
일반적으로, 정보 보안 분야에서, 자기 정당성(authenticity)을 증명하기 위한 수단으로서 상호 공유 정보 및 암호화기(encryptor)를 사용하는 방법이 채택된다.
예를 들어, 전자 결제에 사용되는 IC 카드(스마트카드) 등에서, IC 카드를 개별화하기 위한 ID 및 비밀 정보가 카드의 IC에 저장된다. 또한, IC 카드는 ID 및 비밀 정보에 기반하여 인증을 실행하기 위한 암호 처리 기능을 갖는다.
다른 예시에서, 저작권 보호 컨텐츠의 보호에서 SD(등록 상표) 카드의 정당성을 증명하기 위한 수단으로서 CPRM(Content Protection for Recordable Media)이라는 인증 방법이 특정되어 있다.
도 1은 제1 실시예에 따른 메모리 시스템의 구성예를 도시한 블록도이다.
도 2는 데이터 저장 위치의 다른 예들을 도시하는 도면이다.
도 3은 FKB 프로세서의 구성예의 블록도이다.
도 4는 제1 실시예에 따른 메모리 시스템의 인증 플로우를 도시한 흐름도이다.
도 5은 제1 실시예에 따른 암호화된 FKey 팩(FKB)의 구성예를 도시한 도면이다.
도 6은 제1 변형예에 따른 메모리 시스템의 구성예를 도시한 블록도이다.
도 7은 제1 변형예에 따른 메모리 시스템의 인증 플로우를 도시한 흐름도이다.
도 8은 제1 변형예에 따른 암호화된 FKey 팩(FKB)의 구성예를 도시한 도면이다.
도 9는 제2 실시예에 따른 메모리 시스템의 구성예를 도시한 블록도이다.
도 10은 제2 실시예에 따른 메모리 시스템의 인증 플로우를 도시한 흐름도이다.
도 11은 제2 실시예에 따른 암호화된 FKey 팩(FKB)의 구성예를 도시한 도면이다.
도 12는 제2 실시예에 따른 메모리 시스템의 구성예를 도시한 블록도이다.
도 13은 제2 실시예에 따른 메모리 시스템의 인증 플로우를 도시한 흐름도이다.
도 14는 제2 실시예에 따른 암호화된 FKey 팩(FKB)의 구성예를 도시한 도면이다.
도 15는 제3 실시예에 따른 메모리 시스템의 구성예를 도시한 블록도이다.
도 16은 제3 실시예에 따른 메모리 시스템의 인증 플로우를 도시한 흐름도이다.
도 17은 제3 실시예에 따른 메모리 시스템의 구성예를 도시한 블록도이다.
도 18은 제3 변형예에 따른 메모리 시스템의 인증 플로우를 도시한 흐름도이다.
도 19는 제4 실시예에 따른 NAND 제조자에 의한 비밀 정보의 기입 프로세스를 예시한 도면이다.
도 20은 제4 실시예에 따른 카드 제조자에 의한 FKB의 기입 프로세스를 예시한 도면이다.
도 21은 판매 시에 FKB를 기록하지 않은 카드를 예시한 도면이다.
도 22는 제4 실시예에 따른 FKB를 다운로드하는 시스템을 도시한 블록도이다.
도 23은 제4 실시예에 따른 FKB를 다운로드하는 플로우를 도시한 흐름도이다.
도 24는 제5 실시예에 따른 메모리 시스템의 구성예를 도시한 블록도이다.
도 25은 제5 실시예에 따른 메모리 시스템의 인증 플로우를 도시한 흐름도이다.
도 26은 제4 실시예에 따른 NAND 제조자에 의한 비밀 정보의 기입 프로세스를 예시한 도면이다.
도 27은 제6 실시예에 따른 NAND 플래시 메모리의 구성예를 도시한 블록도이다.
도 28은 도 27의 NAND 플래시 메모리의 하나의 블록의 구성예를 도시한 등가 회로도이다.
일반적으로, 일 실시예에 따르면, 호스트 디바이스에 의해 반도체 메모리 디바이스를 인증하는 방법이 개시된다. 반도체 메모리 디바이스는 은닉된 제1 키 정보(NKey), 디바이스 고유의 은닉된 비밀 인증 정보(SecretID), 암호화된 비밀 인증 정보(E-SecretID), 및 공통 부가된 키 관리 정보[패밀리 키 블록(FKB)]를 저장한다. 호스트 디바이스는 은닉된 식별 키 정보(IDKey) 및 인덱스 정보(k)를 저장한다. 호스트 디바이스는 반도체 메모리 디바이스로부터 암호화된 비밀 식별 정보(E-SecretID) 및 키 관리 정보(FKB)를 판독한다. 호스트 디바이스는 인덱스 정보(k)를 사용함으로써 키 관리 정보(FKB)로부터 특정의 암호화된 관리 키(E-FKey)를 획득한다. 암호화된 관리 키(E-FKey)는 식별 키 정보(IDKey)를 사용하여 암호 해독될 수 있다. 호스트 디바이스는 키 관리 정보(FKB)에서 암호화된 관리 키(E-FKey)의 선택된 저장 위치 및 암호화된 관리 키(E-FKey)를 나타내는 인덱스 정보(k)를 반도체 메모리 디바이스에 송신한다. 반도체 메모리 디바이스는 제1 키 정보(NKey) 및 수신된 인덱스 정보(k)를 사용하여 인덱스 키(INK)를 생성한다. 반도체 메모리 디바이스는 인덱스 키(INK)를 사용하여 암호화된 관리 키(E-FKey)를 암호 해독함으로써 관리 키(FKey)를 획득하고 호스트 디바이스에 송신한다.
복수의 실시예들에 대해 도면을 참조하여 후술한다. 이하의 설명에서, 메모리 시스템은 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법의 일례로서 취급되지만, 실시예들은 이러한 예시로 제한되지 않는다. 다음 설명에서, 공통 부분들은 도면 전반에 동일한 도면 부호로 표시되어 있다.
[제1 실시예]
제1 실시예에 따른 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 대해 설명한다.
<1. 구성예(메모리 시스템)>
도 1을 사용하여, 제1 실시예에 따른 메모리 시스템의 구성예를 설명한다.
도 1에 도시된 바와 같이, 제1 실시예에 따른 메모리 시스템은 피인증장치(authenticatee)로서 NAND 플래시 메모리(10), 인증장치(authenticator)로서 호스트 디바이스(20), 및 이들 사이를 중재하는 컨트롤러(19)를 포함한다. 호스트 디바이스(20)는 컨트롤러(19)를 통해 NAND 플래시 메모리(10)에 액세스한다. 여기에, NAND 플래시 메모리(10)와 같은 반도체 제품의 제조 프로세스를 간략히 설명한다. 반도체 제품의 제조 프로세스는 크게 기판 웨이퍼 상에 회로를 형성하기 위한 사전 처리와, 웨이터를 개편화한 다음 배선 및 수지 패키지 밀봉을 수행하는 사후 처리로 크게 나눌 수 있다. 컨트롤러(19)는, 사전 처리에서 NAND 플래시 메모리(10)에 포함되도록 구성되고, 사전 처리에는 포함되지 않더라도 사후 처리에서 동일한 패키지에 포함되도록 구성되며, NAND 플래시 메모리(10)와 상이한 칩으로서 제공되도록 식으로 다양하게 구성될 수 있다. 도 1을 포함하는 이하의 설명은, 컨트롤러(19)가 NAND 플래시 메모리(10)와 상이한 칩으로서 제공되는 경우를 일례로 하여 제공된다. 이하 구체적으로 언급되지 않으면, 다수의 경우에 있어서 컨트롤러(19)가 호스트 디바이스(20)와 NAND 플래시 메모리(10) 사이를 중재하여 이들 사이에 데이터 및 명령어들을 교환한다. 이러한 경우에도, 컨트롤러(19)는 전술한 데이터 및 명령어들의 본질적인 내용을 변경하지 않기 때문에, 상세 설명이 요약 설명으로서 이하에 제공될 수 있다. NAND 플래시 메모리(10) 및 컨트롤러(19)의 구성예의 세부사항들은 나중에 제공될 것이다.
호스트 디바이스(20)가 소비자 디바이스(consumer device)와 같은 전용 하드웨어로서 구성된다면, 디바이스가 전용 하드웨어를 펌웨어와 결합하여 전용 하드웨어를 동작시키도록 구성되는 경우뿐만 아니라 디바이스의 모든 기능들이 PC에서 동작하는 소프트웨어에 의해 실현되는 경우도 상정할 수 있다. 본 실시예는 호스트 디바이스(20)가 어느 구성을 채택하는 지와 무관하게 기본적으로 적용될 수 있다.
이하, 도 1에 도시된 각각의 컴포넌트 및 데이터 처리에 대해 설명한다. 본 실시예는, 제3자로부터 은닉된 상태에서 피인증장치인 NAND 타입 플래시 메모리(10)에 기록된 비밀 식별 정보(SecretID)를 판독하고, 데이터가 정당한 피인증장치로부터 판독되었음을 확실하게 검증하는 방법, 및 이 방법이 NAND 플래시 메모리(10)를 사용하여 메모리 시스템에 적용되는 구성예를 나타낸다.
1-1. NAND 플래시 메모리
본 실시예에서, NAND 플래시 메모리(10)는 전술한 바와 같이 피인증장치이다. 도 1에 도시된 바와 같이, 본 실시예에 따른 NAND 플래시 메모리(10)는 셀 어레이(11)의 주변 영역에 배치된 셀 어레이(11), 데이터 캐시(12A, 12B, 및 12C), 및 인증 회로(17)를 포함한다.
셀 어레이(11)는 외부로부터 판독 및 기입이 허용된 판독/기입 영역(11-1), 외부로부터 판독 및 기입이 금지된 은닉 영역(11-2), 및 외부로부터 기입이 금지된 ROM 영역(11-3)을 포함한다.
판독/기입 영역(11-1)은 데이터가 기입될 수 있고, 데이터가 NAND 플래시 메모리(10) 외부로부터 판독될 수 있는 영역이다. 판독/기입 영역(11-1)에서, 다중 암호화된 FKey 팩인 키 관리 정보(패밀리 키 블록; FKBv) 및 FKeyv를 은닉하기 위해 준비된 비밀 정보(제1 키 정보)(NKeyi)를 나타내기 위한 인덱스 정보(NKey의 인덱스)가 저장된다. NAND 플래시 메모리(10)에 기록된 다른 데이터와 달리, NAND 플래시 메모리(10)가 제조될 때에, 또는 NAND 플래시 메모리(10)에 컨트롤러를 연결시킴으로써 일반 사용자를 위한 SD 카드(등록 상표)와 같은 저장 매체가 제조될 때에 키 관리 정보(FKBv)가 기록될 수 있다. 대안으로서, FKBv는 판매 이후 사용자의 요청에 따라 서버로부터 다운로드될 수 있다. 이하, 세부사항에 대해 설명한다.
키 관리 정보(FKBv)는 호스트(20)에 의해 보유되는 비밀 정보인 식별 키 정보(이하, IDKeyk라고 함) 및 호스트(20)의 식별 정보 또는 이러한 식별 키 정보(IDKeyk)의 인덱스 정보(k)를 사용하여 제1 스테이지 암호 해독 프로세스를 수행하고, NAND 플래시 메모리에 의해 보유되는 비밀 키 정보(제1 키 정보)(NKey)를 사용하여 제2 스테이지 암호 해독 프로세스를 수행함으로써 은닉 정보(FKeyv)를 암호 해독하도록 준비된 암호화 데이터이다. 인덱스 정보(k)가 FKB를 암호 해독하는데 사용되는 경우, 인덱스 정보(k)의 구성에 따라, 전체 인덱스 정보(k)뿐 아니라 그 일부가 사용될 수 있다. 키 관리 정보(FKBv)는 또한 NAND 플래시 메모리(10)마다 고유하게 준비될 뿐 아니라, 제조 프로세스에 따라 NAND 플래시 메모리(10)의 제조 로트(lot) 단위 또는 웨이퍼 단위 등의 복수의 NAND 플래시 메모리(10)에 공통 부가될 수 있는 정보이다. 키 관리 정보(FKBv)의 인덱스 정보(v)는 키 관리 정보(FKBv)의 식별 정보 또는 버전 번호 정보일 수 있다.
은닉 영역(11-2)은 NAND 플래시 메모리(10) 외부로부터의 판독 및 기입이 모두 금지되는 영역이다. 은닉 영역(11-2)에서, 인증 프로세스를 위한 NAND 플래시 메모리(10)에 의해 사용되는 비밀 정보(제1 키 정보)(NKeyi) 및 NAND 플래시 메모리(10)의 비밀 식별 정보(SecretID)가 기록된다.
ROM 영역(11-3)은 외부로부터의 기입은 금지되지만 그로부터의 데이터 판독이 허용되는 영역이다. 본 실시예에 따른 ROM 영역(11-3)에서, 인덱스 정보(v)(FKey의 인덱스) 및 인덱스 정보(v)(FKey의 인덱스)에 의해 특정된 FKeyv에 의해 암호화된 암호화된 비밀 식별 정보(E-SecretID)가 기록된다. 인덱스 정보(v)(FKey의 인덱스)는 판독/기입 영역(11-1)에 저장된 키 관리 정보(FKBv)에 의해 은닉된 FKeyv를 나타내는 인덱스이다. 본 실시예에서, 인덱스 정보(i) 또는 인덱스 정보(v)가 기록될 때에 데이터에 오류가 발생하더라도 정정 식별 정보가 판독될 수 있도록 부가된 오류 정정 코드 이후에, 일반적으로 데이터가 기록된다. 그러나, 설명을 간략하게 하기 위해, 오류 정정 인코딩 및 디코딩 프로세스들은 생략하며 구체적으로 예시하지 않았다.
E-SecretID는 NAND 플래시 메모리(10) 각각에 고유하게 부가된 SecretID를 암호화함으로써 획득된 데이터이다. 한편, 대개는 동일한 암호화된 비밀 식별 정보가 복수의 NAND 플래시 메모리에 기록될 수 있다. 예를 들어, 미리 콘텐츠 배포를 기록하는 경우에는, 동일한 콘텐츠 데이터가 NAND 플래시 메모리를 판매하기 전에 NAND 플래시 메모리에 기록되며, 암호화된 비밀 식별 정보인 동일한 E-SecretID가 콘텐츠를 저장한 NAND 플래시 메모리에 기록된다.
기입/판독 영역(11-1) 및 ROM 영역(11-3)에 저장된 정보는 실시예에 대한 설명의 편의상 도면에서 특정 위치에 저장되지만, NAND의 제조, 호스트 디바이스로부터의 판독, 또는 외부로부터의 재기입 방지 필요성이 있을 때의 편의를 고려하여 필요에 따라 이들을 어느 영역에 기입할 지를 결정할 수 있다. 이하, 세부사항을 설명한다.
데이터 캐시(12A, 12B, 및 12C)는 셀 어레이(11)로부터 판독된 데이터를 임시 저장한다.
인증 회로(17)는 데이터 생성기(생성; 13, 14, 및 16), 암호화기(암호화; 101), 암호 해독기(암호 해독; 100 및 103), 및 일방향성 컨버터(일방향성; 15)를 포함한다.
데이터 생성기(생성; 13, 14, 및 16)는 입력 데이터 아이템들에 대해 미리 정해진 동작을 수행하여 출력 데이터를 생성하는 회로이다.
데이터 생성기(13)는 상기 비밀 정보(제1 키 정보)(NKeyi)를 사용하여 호스트 디바이스(20)로부터 수신된 기본 정보(HCj)를 변환하여 제2 키 정보(HKeyi,j)를 생성한다.
데이터 생성기(14)는 HKeyi,j를 사용하여 호스트 디바이스(20)로부터 수신된 난수(RNh)를 변환하여 세션 키(SKeyi,j)를 생성한다.
데이터 생성기(생성2; 16)는 비밀 정보(제1 키 정보)(NKeyi)를 사용하여 호스트 디바이스(20)에 의해 FKB로부터 선택된 다중 암호화된(이중 암호화된) 관리 키(EE-FKey)의 레코드를 나타내는 인덱스 정보(k)를 변환하여 인덱스 키(INKk)를 생성한다.
데이터 생성기(13, 14, 및 16)로서, 후술하는 일방향성 컨버터(15)와 동일한 회로, 일방향성 컨버터를 유용하는 회로, 또는 AES(Advanced Encryption Standard) 암호화기는 전반적으로 회로 사이즈를 더 작게 만드는데 사용될 수 있다. 마찬가지로, 데이터 처리 절차를 더 쉽게 이해할 수 있도록, 상이한 구조적 요소로서 설명하는 2개의 데이터 생성기(13 및 14)에 동일한 회로를 반복해서 이용할 수 있다. 같은 이유로, 2개의 데이터 생성기(13 및 14)와 동일한 회로를 데이터 생성기(16)로서 이용할 수 있다.
암호 해독기(암호 해독)는 암호화된 입력 데이터를 키 데이터 입력에 의해 별도로 암호 해독하는 회로이다. 본 실시예에서, 암호 해독기(암호 해독; 100)는 세션 키(SKeyi,j)에 의해 암호화되어 호스트 디바이스(20)로부터 송신된 암호화된 데이터[Enc(SKeyi,j, E-FKeyv,k)]를, 세션 키(SKeyi,j)를 이용하여 암호 해독한다.
암호 해독기(103)는 생성기(16)에 의해 생성된 인덱스 키(INKk)를 사용하여, 세션 키(SKeyi,j)에 의한 암호 해독을 통해 획득된 암호화된 관리 키(E-FKeyv,k)를 추가 암호 해독한다.
암호화기(암호화)는 키 데이터 입력에 의해 입력 데이터를 별도로 암호화하는 회로이다. 본 실시예에서, 암호화기(암호화; 101)는 호스트 디바이스(20)에 관리 키(FKeyv,k)를 송신하는 경우, 그것을 세션 키(SKeyi,j)을 사용하여 암호화한다.
일방향성 컨버터(15)는 입력 데이터 및 별도로 입력된 키 데이터에 대해 일방향성 변환을 수행하여 일방향성 변환된 입력 데이터를 출력하는 회로이다. 본 실시예에서, 일방향성 컨버터(15)는 데이터 생성기(14)에 의해 생성된 SKeyi,j를 사용하여 일방향성 함수에 의해 은닉 영역(11-2)으로부터 판독된 비밀 식별 정보(SecretID)를 변환하여 일방향성 변환 식별 정보[Oneway-ID(= Oneway(SKeyi,j, SecretID))]를 생성한다. 일방향성 컨버터(15) 또한 데이터 생성기(14) 등으로서 사용되어 전술한 바와 같이 회로 사이즈를 전반적으로 더 작게 만들 수 있다.
도시하지는 않지만, 컨트롤러(19) 등을 통해 호스트 디바이스(20)에 송신될 데이터를 출력하기 위한 출력 유닛이 구성 요소로서 실제 배치된다.
1-2. 호스트 디바이스
도 1에 도시된 바와 같이, 본 실시예에 따른 호스트 디바이스(20)는 암호 해독기(암호 해독; 21 및 201), FKB 프로세서(FKB 처리; 22), 메모리(23), 난수 생성기(RNG; 24), 선택기(선택2; 25), 데이터 생성기(생성; 26), 암호화기(암호화; 200), 일방향성 컨버터(일방향성; 27), 및 데이터 검증 유닛(검증; 28)을 포함한다. 또한, 예를 들어, 필요에 따라 에러 정정 처리 유닛 등이 포함될 수 있다.
암호 해독기(암호 해독; 21)는 암호 해독기(201)로부터 출력된 관리 키(FKeyv)를 이용하여, NAND 플래시 메모리(10)로부터 입력된 데이터(E-SecretID)를 암호 해독하고, 암호 해독된 비밀 식별 정보(SecretID)를 출력한다.
암호 해독기(암호 해독; 201)는 데이터 생성기(26)에 의해 생성된 세션 키(SKeyi,j)를 이용하여, NAND 플래시 메모리(10)로부터 수신된 암호화된 관리 키(E-FKeyv)를 암호 해독함으로써 관리 키(FKeyv)를 획득한다.
FKB 프로세서(FKB 처리; 22)는 메모리(23)에 은닉된 식별 키 정보(IDKeyk) 및 IDKeyk의 인덱스 정보(k)를 사용함으로써, NAND 플래시 메모리(10)로부터 송신된 키 관리 정보(FKBv)에서 특정 다중 암호화된(이중 암호화된) 관리 키(EE-FKeyv,k)에 대해 제1 암호 해독을 수행하고, 암호 해독 및 인덱스 정보(k)의 결과로서 암호화된 관리 키(E-FKeyv,k)를 출력한다.
메모리(23)는 k, IDKeyk, 비밀 정보(제2 키 정보) 세트[HKeyi,j(i=1, …, m; j는 HKeyi,j에 대한 고정값임)], 및 HCj를 저장한다. 적어도 IDKeyk 및 비밀 정보(제2 키 정보) 세트[HKeyi,j(i=1, …, m)]는 호스트 디바이스(20) 외부로부터 은닉된다. 호스트 상수(즉, 기본 정보)(HCj)는 인증 요청 시에 NAND 플래시 메모리(10)에 전송되기 전에 호스트 디바이스(20)에 미리 보유하고 있는 상수 값 데이터이다. 이하, 상세사항을 설명한다.
난수 생성기(24)는 인증 프로세스에 사용되는 난수(RNh)를 생성하여 출력한다.
데이터 선택기(선택2; 25)는 NAND 플래시 메모리(10)의 데이터 캐시(12C)로부터 판독된 NKey의 인덱스 정보(i)를 사용함으로써 호스트 디바이스(20)에 의해 은닉된 비밀 정보(제2 키 정보) 세트[HKeyi,j(i=1, …, m; j는 HKeyi,j에 대한 고정 값임)]로부터 NAND 플래시 메모리에 의한 인증 프로세스에 필요한 비밀 정보(제2 키 정보)(HKeyi,j)를 선택한다.
데이터 생성기(26)는 복수의 입력 데이터로부터의 미리 정해진 동작을 수행함으로써 출력 데이터를 생성하는 동작 유닛이다. 본 실시예에서, 데이터 생성기(26)는 호스트 디바이스(20)에 의해 은닉된 비밀 정보(제2 키 정보)(HKeyi,j)를 이용해서, 호스트 디바이스(20)에 의해 생성된 RNh를 변?함으로써 세션 키(SKeyi,j)를 생성한다. 데이터 생성기(26)로서, 예를 들어 전술한 AES 암호화기를 사용할 수 있다.
암호화기(암호화; 200)는 생성된 세션 키(SKeyi,j)를 이용하여 FKB 프로세서(22)에 의해 제1 암호 해독 프로세스가 수행되었던 암호화된 관리 키(E-FKeyv,k)를 암호화하여, 그것을 이중 암호화된 데이터[Enc(SKeyi,j, E-FKeyv,k)] 및 인덱스 정보(k)로서 NAND 플래시 메모리(10)에 송신한다.
일방향성 컨버터(27)는 데이터 생성기(26)로부터 출력된 SKeyi,j를 사용하여 일방향성 함수에 의해 암호 해독기(21)로부터 출력된 SecretID를 변환하여 일방향성 변환 식별 정보(Oneway-ID)를 생성한다.
예를 들어, 호스트 디바이스(20)가 소비자 디바이스와 같은 전용 하드웨어 디바이스라면, 내부 전용 메모리에서 제조자 특유의 방법에 의해 암호화되거나, 호스트 디바이스(20)가 PC 등에서 실행되는 프로그램이라면 TRS(Tamper Resistant Software) 기술에 의한 부정 분석(dishonest analysis)으로부터 보호할 수 있는 상태로 보유되거나, 보안 모듈이 포함된다면 보안 모듈의 기능을 이용함으로써 비밀 정보를 은닉하기 위한 조치들이 취해진 이후의 상태에서 은닉된 후, 식별 키 정보(IDKeyk) 및 비밀 정보(제2 키 정보) 세트[HKeyi,j]가 기록된다.
데이터 검증 유닛(검증; 28)은 NAND 플래시 메모리(10)로부터 수신된 Oneway-ID와 호스트 디바이스(20)의 일방향성 컨버터(27)로부터 획득된 Oneway-ID를 비교하여 Oneway-ID가 일치하는지 여부를 판정한다. 일방향성 변환된 식별 정보(Oneway-ID)의 값이 서로 일치하면(OK), 데이터 검증 유닛(28)은 암호 해독기(21)에 의해 획득된 SecretID가 정당한 ID라고 판정하고, 획득된 SecretID를 후속 프로세스에 전달한다. 한편, 이들 값이 일치하지 않으면(NG), 데이터 검증 유닛(28)은 SecretID가 부정한 ID라고 판정하고, 그 결과에 대한 메시지를 후속 프로세스에 출력한다.
컨트롤러(19)는 NAND 플래시 메모리(10)를 제어함으로써 호스트 디바이스(20)와의 데이터 전송을 수행한다. 이하, 상세사항을 설명한다.
메모리 시스템의 구성예는 전술한 예에 제한되지 않는다. 예를 들어, 오류 보정 처리 유닛(미도시) 및 그 밖의 구성 요소들이 필요에 따라 포함될 수 있다.
1-3. 데이터 저장 위치
암호화된 비밀 식별 정보가 저장된 셀 어레이(11)에서의 위치는 전술한 예로 제한되지 않고, 도 2에 도시된 바와 같을 수 있다.
예시 1에 나타낸 바와 같이, ROM 영역(11-3) 대신 판독/기입 영역(11-1)에 암호화된 비밀 키 정보(E-SecretID)를 저장할 수 있다.
예시 2에 나타낸 바와 같이, 판독/기입 영역(11-1)에, 암호화된 비밀 식별 정보(E-SecretID)를 저장하고, ROM 영역에, 비밀 정보(제1 키 정보)(NKeyi)를 나타내는 인덱스 정보(i)(NKey의 인덱스)를 저장할 수 있다.
높은 기밀성 때문에 은닉 영역(11-2)에 저장될 정보를 다른 영역에 저장하는 것이 바람직하지 않을 수 있다. 그러나, 예를 들어, 제조 중의 데이터 기입 프로세스 및 데이터 사용 중의 편의성을 고려하여 필요에 따라 판독/기입 영역(11-1) 또는 ROM 영역(11-3)에 다른 정보가 기입될 수 있다.
1-4. FKB 프로세서(FKB 처리; 22)
도 1에 의해 도시된 FKB 프로세서(22)는 또한 특히 도 3에 도시된 구성을 가질 수 있다. 도시된 바와 같이, FKB 프로세서(22)는 데이터 선택기(선택1; 21-1) 및 암호 해독기(암호 해독; 22-2)를 포함하고, 암호 해독기(암호 해독; 22-2)에 의해 암호 해독된 데이터 및 인덱스 정보(k)를 출력한다.
제1 스테이지에서의 데이터 선택기(22-1)는 NAND 플래시 메모리(10)로부터 판독된 키 관리 정보(FKBv)로서 다중 암호화된 FKey 팩 중에서 메모리(23)에 기록된 인덱스 정보(k)를 사용함으로써, 메모리(23)에 은닉된 식별 키 정보에 의해 암호 해독될 수 있는 데이터를 선택하고, 선택된 데이터를 암호 해독기(22-2)에 출력한다.
암호 해독기(암호 해독; 22-2)는 호스트(20)에 의해 메모리(23)에 은닉된 IDKeyk를 사용하여 데이터 선택기(22-1)에 의해 선택된 다중 암호화된(본 실시예의 경우, 이중 암호화된) 관리 키(EE-FKeyv)를 암호 해독하여 암호화된 관리 키(E-FKeyv,k)를 암호 해독한다. 즉, 암호 해독기(22-2)는 제1 스테이지 암호 해독 프로세스를 수행한다.
<2. 인증 플로우>
다음으로, 제1 실시예에 따른 메모리 시스템의 인증 플로우에 대해 도 4를 따라 설명한다. 도 4에 나타내는 바와 같이, 본 실시예의 인증 플로우는 대략적으로 4개의 단계 그룹(ST1 내지 ST4)을 포함한다.
(단계 Sll)
인증이 시작되면(시작), 호스트 디바이스(20)는 다중 암호화된(본 실시예의 경우 이중 암호화된) 관리 키(FKey) 팩을 키 관리 정보(패밀리 키 블록; FKB)라고 판독하고, 암호화된 비밀 식별 정보(E-SecretID)를 NAND 플래시 메모리(10)로부터 판독한다.
(단계 S12)
그 후, 호스트 디바이스(20)는 키 관리 정보(FKB)로부터 데이터 선택기(선택1; 22-1)에 의한 데이터 선택 프로세스를 실행함으로써 적절한 다중 암호화된 관리 키(FKey)(FKB의 입력)를 선택하고, 또한 식별 키 정보(IDKeyk) 및 인덱스 정보(k)를 사용하여 암호 해독기(22-2)에 의해 암호 해독을 수행함으로써 암호화된 관리 키(E-FKey)를 획득한다.
(단계 S13)
그 후, 호스트 디바이스(20)는 인증 요청에 필요한 난수(RNh)를 생성한다. 인증 프로세스용 RNh를 사용함으로써, 매번 NAND 플래시 메모리(10)와 상이한 공유 키가 이하 프로세스에 사용될 수 있다.
(단계 S14)
그 후, 호스트 디바이스(20)는 인증 요청과 함께, 미리 보유 중인 호스트 상수 값 데이터(기본 정보)(HCj) 및 RNh를 NAND 플래시 메모리(10)에 전송한다.
(단계 S15)
그 후, NAND 플래시 메모리(10)는 은닉 영역(11-2)으로부터 NKeyi(i=1, …, m)를 로드하는데, 이들은 데이터 캐시(12B)에 저장되어 있다.
(단계 S16)
그 후, NAND 플래시 메모리(10)는 호스트 디바이스(20)가 비밀 정보(제2 키 정보) 세트[HKeyi,j(i=1, …, m)]로부터 NAND 플래시 메모리(10)에 의한 인증 프로세스에 필요한 비밀 정보(제2 키 정보)를 선택하는데 필요한 NKey의 인덱스 정보(i)를 데이터 캐시(12C)에 로드하여 호스트 디바이스(20)에 전송한다.
(단계 S17)
그 후, NAND 플래시 메모리(10)는 은닉된 NKeyi 및 수신된 호스트 상수 값 데이터(기본 정보)(HCj)를 사용하여 데이터 생성기(13)에서의 데이터 생성 프로세스를 통해 HKeyi,j를 생성한다. 이와 함께, NAND 플래시 메모리(10)는 수신된 난수(RNh)를 사용하여 데이터 생성기(14)에서의 데이터 생성 프로세스를 통해 세션 키 데이터(SKeyi,j)를 생성한다[= Generate(HKeyi,j, RNh)].
(단계 S18)
단계 S17과 병렬적으로, 호스트 디바이스(20)는 수신된 인덱스(i)를 사용하여, 호스트 디바이스(20)에 은닉된 비밀 정보(제2 키 정보) 세트[HKeyi,j(i=1, …, m)]로부터 NAND 플래시 메모리(10)를 이용한 인증 프로세스에 필요한 비밀 정보(제2 키 정보)(HKeyi,j)를 선택한다.
(단계 S19)
그 후, 호스트 디바이스(20)는 선택된 비밀 정보(제2 키 정보)(HKeyi,j) 및 생성된 RNh를 사용하여 데이터 생성기(26)의 데이터 생성 프로세스에 의해 SKeyi,j를 생성한다[= Generate(HKeyi,j, RNh)].
(단계 S20)
그 후, 호스트 디바이스(20)는 단계 S12에서 FKB로부터 선택된 다중 암호화된 관리 키의 레코드 번호(저장 위치)를 나타내는 인덱스 정보(k) 및 세션 키 데이터(SKeyi,j)를 사용하여 암호화된 관리 키(E-FKeyv,k)인 데이터[Enc(SKeyi,j, E-FKeyv,k)]를 NAND 플래시 메모리(10)로 전송한다. 식별 정보(k)의 구성에 종속하여, 식별 정보(k) 전체가 송신되지 않고, 대신에, NAND 플래시 메모리에 있어서의 인덱스 키(INKk)의 생성에 필요없는 정보를 뺀 식별 정보(k)의 일부가 송신될 수도 있다.
(단계 S21)
그 후, NAND 플래시 메모리(10)는 세션 키 데이터(SKeyi,j)를 사용하여, 암호화되었던 암호화된 관리 키[Enc(SKeyi,j, E-FKeyv,k)]를 암호 해독하여 암호화된 관리 키(E-FKeyv,k)를 획득한다.
(단계 S22)
그 후, NAND 플래시 메모리(10)는 NKeyi 및 인덱스 정보(k)를 사용하여 인덱스 키(INKk)를 생성한다.
(단계 S23)
그 후, NAND 플래시 메모리(10)는 인덱스 키(INKk)를 사용하여, 암호화된 관리 키(E-FKeyv,k)를 암호 해독함으로써 관리 키(FKeyv,k)를 획득한다.
(단계 S24)
그 후, NAND 플래시 메모리(10)는 세션 키(SKeyi,j)을 사용하여, 관리 키(FKeyv,k)를 암호화하고 암호화된 데이터[Enc(SKeyi,j, FKeyv,k)]를 호스트 디바이스에 전송한다.
(단계 S25)
그 후, 호스트 디바이스(20)는 세션 키(Skeyi,j)를 사용하여, 암호화된 관리 키를 암호 해독함으로써 관리 키(Fkeyv,k)를 획득한다.
(단계 S26)
그 후, 호스트 디바이스(20)는 획득된 관리 키(Fkeyv,k)를 사용하여, NAND 플래시 메모리(10)로부터 판독된 암호화된 비밀 식별 정보(E-SecretID)를 암호 해독하여 비밀 식별 정보(SecretID)를 획득한다.
(단계 S27)
그 후, 호스트 디바이스(20)는 ID 요청을 NAND 플래시 메모리(10)에 송신한다.
(단계 S28)
그 후, NAND 플래시 메모리(10)는 은닉 영역(11-2)으로부터 비밀 식별 정보(SecretID)를 판독하여 데이터 캐시(12A)에 저장한다.
(단계 S29)
그 후, NAND 플래시 메모리(10)는 SKeyi,j를 사용하여 SecretID에 대한 일방향성 컨버터(15)의 일방향성 변환 프로세스를 실행함으로써 일방향성 변환 식별 정보(Oneway-ID)를 생성하고[= Oneway(SKeyi,j, SecretID)], 생성된 Oneway-ID를 호스트 디바이스(20)에 송신한다.
(단계 S30)
단계 S29와 병렬적으로, 호스트 디바이스(20)는 생성된 Skeyi,j를 사용하여, 일방향성 컨버터(27)에서의 SecretID에 대한 일방향성 변환 프로세스를 실행함으로써 일방향성 변환 데이터(Oneway-ID)를 획득한다.
(단계 S31)
그 후, 호스트 디바이스(20)는 NAND 플래시 메모리(10)로부터 수신된 Oneway-ID와 호스트 디바이스(20)에 의해 생성된 Oneway-ID가 일치하는지 여부를 판정한다. 양 Oneway-ID 값이 일치하면(OK), 호스트 디바이스(20)는 암호 해독기(21)에 의해 획득된 SecretID가 정당한 ID라고 판정하고, SecretID를 후속 프로세스에 전달한다. 한편, 양 값이 일치하지 않으면(NG), 호스트 디바이스(20)는 SecretID가 부정한 ID라고 판정하고, 그 취지를 출력한다.
전술한 동작에 의해, 제1 실시예에 따른 인증 플로우가 완료된다(종료).
그런데, 본 실시예의 절차는 전술된 절차로 제한되지 않으며, 도 1에 도시된 프로세스가 모순없이 실행될 수 있다면 프로세스의 순서는 달라질 수 있다. 또한, 전술한 절차 단계에 있어서, 단계 ST)에서 생성된 동일한 세션 키(Skeyi,j)가 단계 ST3와 단계 ST4 양쪽에 사용되지만, 단계 ST4 전에 단계 ST2를 실행하고 단계 ST3 및 단계 ST4에서 상이한 세션 키들을 사용할 수 있다.
<3. 패밀리 키 블록(FKB)>
다음으로, 제1 실시예에 따른 키 관리 정보[패밀리 키 블록(FKB)]에 대해 도 5를 사용하여 더 상세하게 설명한다.
본 실시예에 따른 비밀 식별 정보(SecretID)가 기록되는 NAND 플래시 메모리(10)에 적합한 키 관리 정보(FKB)를 생성하는 프로세스는 다음과 같다.
우선, 인덱스 키[INKk(k=1, …, n)]는 미리 준비된 비밀 키 정보인 IDKeyk들(k=1, …, n)(IDKeyk 세트)의 각각의 IDKeyk에 대응하는 인덱스(k) 및 관리 키(FKeyv)를 보호하기 위해 준비된 FKB를 저장하는 NAND 플래시 메모리(10)에 은닉된 비밀 정보(제1 키 정보)(NKeyi)를 사용하여 생성기(16)에서 미리 정해진 생성 알고리즘에 의해 생성된다.
INKk = Generate2(NKeyk, k)(k=1, …, n)
그 후, FKeyv를 보호하기 위해, FKeyv는 각각 생성된 인덱스 키[INKk(k=1, …, n)]를 사용하여 단일 암호화로서 암호화되어, 암호화된 관리 키가 획득된다[E-FKeyv,k = Encrypt(INKk, FKeyv)(k=1, …, n)].
그 후, 이중 암호화(Encrypt)로서, 미리 준비된 식별 키 정보인 IDKeyk(k=1, …, n)(IDKeyk 세트)를 하나씩 사용하여, 인덱스(k)가 대응하는 암호화된 관리 키(E-FKeyv,k)가 하나씩 암호화된다.
이처럼, 본 실시예에 따른 키 관리 정보(FKB)는 다중 암호화된(이중 암호화) 관리 키 세트이다[EE-FKeyv,k = Encrypt(IDKeyk,E-FKeyv,k)(k=1, …, n)]. 다중 암호화된 FKeyv,k 세트는 다중 암호화된 관리 키(FKey) 팩이라고 지칭된다.
그런데, 암호화(Encrypt) 데이터를 나타내기 위해, "E-"라고 기재하며, 추가 암호화 데이터를 나타내기 위해, "EE- "라고 기재한다.
또한, 키 관리 정보(FKB)의 구성은 본 실시예의 구성에 제한되지 않는다. 예를 들어, 특정 IDKeyi가 유출된 경우, IDKeyi를 보유하는 호스트 디바이스가 다중 암호화된 Fkey 팩으로부터 FKey를 암호 해독할 수 없도록, 유출된 IDKeyk로부터 암호 해독될 수 있는 대응 암호화 FKeyv(전술한 예에서, EE-FKeyv,k)는 FKB로부터 삭제된다. 그 결과, 유출된 IDKeyk를 갖는 호스트 디바이스(20)가 새롭게 구성된 FKB를 이용하여 NAND 플래시 메모리(10)에 액세스하는 경우, 호스트 디바이스(20)는 정확한 FKeyv 및 SecretID를 획득(암호 해독)할 수 없다. 이러한 방식으로, 유출된 식별 키 정보(IDKeyk)를 보유한 호스트 디바이스(20)를 무효화하는 기능이 제공될 수 있다.
또한, 키 관리 정보(FKB)를 생성하는 방법은 본 실시예의 방법에 제한되지 않는다. 예를 들어, 호스트 디바이스(20)를 무효화하는 기능은, 본 실시예, 및 CPRM에 사용되는 종래의 MKB(Media Key Block) 기술 또는 다른 MKB 기술에서와 같이 다중 암호화된 키 관리 정보를 사용함으로써 키 관리 정보(FKB)가 생성되면 제공될 수 있다.
MKB 기술은 (무효화되지 않는 디바이스들 사이에) 공통 비밀 정보(Media Key)를 효율적으로 공유하는 반면, 복수의 디바이스 각각이 서로 상이한 비밀 정보를 갖고 브로드캐스트 암호화라고도 지칭되는 상황에서, 디바이스 무효화를 실현한다.
<작용 효과>
제1 실시예에 관한 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 따르면, 적어도 다음의 작용 효과 (1) 내지 (4)를 획득할 수 있다.
(1) 비밀 정보가 호스트 디바이스(20)로부터 유출되더라도, 유출된 정보를 이용한 NAND 플래시 메모리(10)의 비밀 정보의 부정 사용을 방지할 수 있다.
전술한 바와 같이, 인증장치인 호스트 디바이스(20)는 소비자 디바이스와 같은 전용 하드웨어 디바이스뿐만 아니라 PC(개인용 컴퓨터) 등에서 실행 가능한 프로그램(소프트웨어)으로서 제공될 수 있으며, 일부 경우에 소프트웨어가 실질적인 호스트 디바이스로서 기능한다. 한편, 피인증장치인 NAND 플래시 메모리(10)는 기록 매체이다. "펌웨어"라고 지칭되는 프로그램이 개재하는 경우에도, 중요한 프로세스 또는 정보는 셀 어레이(11)의 하드웨드에 은닉 상태로 저장된다. 따라서, PC에서 실행되는 소프트웨어의 내탬퍼성(tamper-resistance)(공격에 대한 내성)이 기록 매체에 비해 낮아질 우려가 있다. 이 때문에, 내탬퍼성이 낮은 호스트 디바이스(인증장치; 20)를 공격함으로써, 내탬퍼성이 높은 NAND 플래시 메모리(피인증장치; 10)에 은닉된 비밀 정보 역시 노출될 우려가 있어, 내탬퍼성이 높은 디바이스로서 위장할 우려가 있다. 그러므로, 제1 실시예에 따른 구성 및 이를 위한 인증 방법에 있어서, 전술한 바와 같이, 비교적 내탬퍼성이 높은 NAND 플래시 메모리(10)는 셀 어레이(11)에, 제1 키 정보(NKeyi)로부터 제2 키 정보(HKeyi,j)를 생성할 수 있는 제1 키 정보(NKeyi)를 은닉한다. 한편, 호스트 디바이스(20)는 제2 키 정보(HKeyi,j)로부터 제1 키 정보(NKeyi)를 생성할 수 없는 제2 키 정보(HKeyi,j)만 메모리(23)에 은닉한다.
이 때문에, NAND 플래시 메모리(10)는 호스트 디바이스(20)로부터 수신된 기본 정보(HCj)와 NAND 플래시 메모리(10)에 의해 은닉된 제1 키 정보(NKeyi)를 사용하여, 인증장치(20)에 의해 은닉된 제2 키 정보(HKeyi,j)를 생성한다. NAND 플래시 메모리(10)는 또한 제2 키 정보(HKeyi,j) 및 난수 정보(RNh)를 사용하여 세션 키(SKeyi,j)를 생성한다.
호스트 디바이스(20)는 인덱스 정보(i) 및 난수 정보(RNh)에 의해 선택된 제2 키 정보(HKeyi,j)를 사용하여 세션 키(SKeyi,j)를 생성한다. 그 결과, NAND 플래시 메모리(10) 및 호스트 디바이스(20)는 동일한 세션 키(SKeyi,j)를 공유한다.
그러므로, 본 실시예에서, NAND 플래시 메모리(피인증장치; 10)에 의해 은닉된 정보의 비밀 레벨 및 호스트 디바이스(인증장치; 20)에 은닉된 정보의 비밀 레벨은 비대칭적일 수 있다. 예를 들어, 본 실시예에서, 비교적 내탬퍼성이 높은 NAND 플래시 메모리(10)에 의해 은닉된 정보의 비밀 레벨은 비교적 내탬퍼성이 낮은 호스트 디바이스(20)에 의해 은닉된 정보의 비밀 레벨보다 높게 설정될 수 있다.
이 때문에, 호스트 디바이스(20)에 의해 은닉된 정보가 유출되더라도, 비교적 내탬퍼성이 높은 NAND 플래시 메모리(10)에 의해 은닉된 정보의 비밀 레벨이 더 높기 때문에, NAND 플래시 메모리(10)는 유출된 정보를 사용하여 위장할 수 없다(또는 복제될 수 없다). 그러므로, 유출된 정보를 사용한 NAND 플래시 메모리(10)의 비밀 정보의 부정 사용이 방지될 수 있다는 장점이 있다. 그 결과, 예를 들어, 호스트 디바이스(20)에 의해 판독된 ID 정보가 목적의 피인증장치(10)로부터 판독된 정보인 것을 확실하게 확인하여, 상대방이 ID를 부정으로 사용하는 것을 무효화할 수 있게 된다.
(2) 호스트 디바이스로부터 유출된 식별 키 정보(IDKeyk)가 부정으로 사용되더라도, 유출된 IDKeyk를 식별하기 위한 작업을 줄일 수 있다.
본 실시예에 따른 키 관리 정보(FKB)는 도 5에 도시된 다중 암호화로서 이중 암호화된 관리 키 세트이다[EE-FKeyv,k = Encrypt(IDKeyk, E-FKeyv,k)(k=1, …, n)].
그러므로, 본 실시예에서, 호스트 디바이스(20)에 의한 FKB의 암호 해독 결과는 암호화된 데이터[Enc(SKeyi,j, E-FKeyv,k)]의 상태로 NAND 플래시 메모리(10)에 반송된다(단계 S20). 더욱이, 암호화된 비밀 식별 정보(E-SecretID)를 암호 해독하는데 필요한 관리 키(FKey)는 암호 해독 프로세스를 수행하지 않고서는 암호 해독기(100)에 의해 획득되지 않게 된다(단계 S21). 이에 따라, 호스트 디바이스(20)의 FKB 프로세서(22)에서, FKB 내의 n개의 이중 암호화된 관리 키(EE-FKeyv)중 몇번째(k)의 레코드가 처리되는지를 인증하기 위한 응답 프로세스(ST3)를 구비하여, 인덱스 정보(k)를 NAND 플래시 메모리(10)에 전송하게 구성된다. 그러므로, 라이센싱 관리자 등은 현재 사용 중인 IDKeyk의 인덱스 정보(k)를 확인함으로써 실제 부정으로 사용되는 식별 키 정보(IDKeyk)를 식별할 수 있다.
(3) 기밀성이 유지될 수 있다.
전술한 바와 같이, 인증 동작에서, 호스트 디바이스(20)와 NAND 플래시 메모리(10) 사이의 응답 프로세스(ST3)는 암호화된 상태의 데이터로 수행된다. 예를 들어, 단계 S20에서, 호스트 디바이스(20)에 의해 암호 해독된 FKB의 결과는 암호화된 데이터[Enc(SKeyi,j, E-FKeyv,k)]의 상태로 NAND 플래시 메모리(10)에 반송된다. 더욱이, 단계 S24에서, NAND 플래시 메모리(10)는 세션 키(SKeyi,j)를 사용하여 관리 키(FKeyv,k)를 암호화하고 암호화된 데이터[Enc(SKeyi,j, FKeyv,k)] 상태로 호스트 디바이스(20)에 전송한다.
이에 따라, 기밀성이 유지될 수 있다는 이점이 있다.
(4) 구현 이점
본 실시예와 같은 구성에서, 전술한 바와 같이, 예를 들어 비교적 큰 회로 스케일을 요구하는 공개 키 암호 방식 프로세스 또는 MKB 프로세스의 하드웨어 구현이 곤란한 환경에서 회로 스케일에 대한 제한이 가해진다. 즉, 공개 키 암호 방식 프로세스 또는 MKB 프로세스에는 상대적으로 큰 스케일의 회로가 요구된다. 한편, 회로 사이즈는 제한되고 있고, 하드웨어 구현은 어려워지고 있다.
그러나, 본 실시예에 따르면, 키 정보가 비대칭적인 경우에도, 비교적 큰 회로 스케일을 요구하는 공개 키 암호 방식 프로세스를 이용할 필요가 없다. 또한, 전술한 바와 같이 호스트 디바이스(인증장치; 20) 및 NAND 플래시 메모리(피인증장치; 10)에 의해 은닉된 정보의 비밀 레벨을 비대칭적으로 함으로써, 하나의 디바이스에서 유출된 정보만으로 다른 디바이스가 위장할(복제될) 수 없는 인증 수단이 구현되고, 세션 키(SKeyi,j)는 인증장치(20)와 피인증장치(10)에 의해 공유된다.
이에 따라, 이 구현은 전술한 제한이 가해지는 열악한 환경에서도 유리할 수 있다.
더구나, 전술한 바와 같이, 동일 프로세스로서 메모리 시스템에서 데이터 생성기 및 암호화기를 공유함으로서 회로 스케일은 더 줄어들 수 있다.
이 점에 있어서는, AES(Advanced Encryption Standard)을 사용하는 다음의 제1 내지 제3 변형예에서 상세히 설명하다.
[제1 변형예(AES 암호화를 사용)]
다음으로, 제1 변형예에 따른 호스트 디바이스, 반도체 메모리 디바이스 및 인증 방법을 설명한다. 이 설명에 있어서, 제1 실시예와 중복되는 점은 생략한다.
본 변형예는, 공통 키 암호인 AES(Advanced Encryption Standard) 암호를 사용하여 제1 실시예를 구현한 일례이다.
<공통 키 암호화 적용>
AES(Advanced Encryption Standard) 암호 또는 DES(Data Encryption Standard) 암호로 대표되는 공통 키 암호에서는, 암호화 및 암호 해독 알고리즘이 표준화 단체에 의해 규정되어 있다. 예를 들어, AES 암호화 프로세스가 수행된 데이터를 암호 해독하기 위해, 암호화(암호화 키)에 사용되는 키를 공유하고 AES 암호화 프로세스와 한 쌍을 이루는 "AES 암호 해독 프로세스"를 수행함으로써 암호화 이전 데이터(평문 데이터)가 획득될 수 있다. 이 때문에, 공통 키 암호의 암호화 프로세스 및 암호 해독 프로세스가 한 쌍으로 사용됨에도 불구하고, 일반적인 공통 암호 알고리즘에서는, 암호화 프로세스 및 암호 해독 프로세스를 AES 암호 또는 DES 암호와 같이 서로 대체할 수도 있다.
AES 암호를 예로 들면, "암호화 프로세스"에 AES 암호 해독(AES_D)을 사용하고 "암호 해독 프로세스"에 AES 암호화(AES_E)를 사용함으로써, 전술한 암호화 프로세스 및 암호 해독 프로세스와 등가의 기능을 실현할 수 있다.
구체적으로, 암호화/암호 해독 프로세스는 다음과 같이 표현될 수 있다.
Chiper_Text = AES_E(Key, Plain_Text),
Plain_Text = AES_D(Key, Cipher_Text) = AES_D(Key, AES_E(Key, Plain_Text))
Chiper_Text가 원 입력 데이터(평문 데이터)이고, Plain_Text가 출력 데이터(암호화된 데이터)라고 가정하면, Chiper_Text(입력)로부터 변환된 Plain_Text(출력)는, Plain_Text = AES_D(Key, Cipher_Text)를 처리함으로써 획득된다.
이 Plain_Text가 AES 암호화 프로세스(AES_E)에 입력 데이터로서 주어지면, 다음과 같이 표현된다.
AES_E(Key, Plain_Text) = Cipher_Text
즉, Cipher_Text(출력)가 획득된다. 이 Cipher_Text는 AES 암호 해독 프로세스(AES_D)에 입력된 데이터이고, 원 데이터로 정확하게 리턴된다는 것을 알 수 있다. 전술한 바와 같이, AES 암호 등의 공통 키 암호화에서, 암호화 또는 암호 해독은 데이터 변환 프로세스이므로, 순서가 대체된 경우에도 같은 효과를 얻을 수 있는 것이 명백하다. 이에 따라, 본 변형예에서는, AES 암호가 사용되고, NAND 플래시 메모리(10)의 암호 해독기(암호 해독)(100, 101, 및 103)가 개별 AES 암호화 프로세스(AES_E)로서 구현되며, 호스트 디바이스(20)의 암호화기(암호화)(200, 201, 및 21)는 개별 AES 암호 해독 프로세스(AES_D)로서 구현되는 일례에 대해 설명한다.
<메모리 시스템>
제1 변형예에 따른 메모리 시스템은 도 6에 도시된 바와 같다.
도 6에 도시된 바와 같이, 본 변형예에서는, AES 암호가 사용되고, NAND 플래시 메모리(10)의 암호 해독기(암호 해독)(100 및 103) 및 암호화기(101)가 개별 AES 암호화 프로세스(AES_E)로서 구현되며, 대응호스트 디바이스(20)의 암호화기(암호화; 200) 및 암호 해독기(201 및 21)가 개별 AES 암호 해독 프로세스(AES_D)로서 구현된다. 그렇기 때문에, 제1 실시예와 표기상 차이가 있더라도 기능상 차이는 없다.
<인증 동작>
제1 변형예에 따른 인증 플로우는 도 7에 도시한 바와 같다. 도 7에 도시한 바와 같이, 본 변형예는 이하와 같이 단계 그룹(ST3)에서 AES 암호화를 사용하는 점에 있어서 제1 실시예와 상이하다.
(단계 S20)
우선, 단계 S20에서, 호스트 디바이스(20)는 AES 암호 해독 기능을 이용하여 암호 해독 관리 키(D-FKeyv,k)를 암호화하고(AES 암호 해독 기능을 이용하여 D-FKeyv,k 암호화), 암호화 데이터[AES_D(SKeyi,j, D-FKeyv,k)] 및 인덱스 정보(k)를 NAND 플래시 메모리(10)에 전송한다. 또한, "D-"는 그 다음에 이어지는 데이터가 AES 암호 해독 프로세스를 이용하여 변환되었음을 표시한다.
(단계 S21)
그 후, NAND 플래시 메모리(10)는 AE 암호화 기능을 이용하여 암호화 데이터[AES_D(SKeyi,j, D-FKeyv,k)]를 암호 해독하여(AES 암호화 기능을 이용하여 암호 해독) 암호 해독 관리 키(D- FKeyv,k)를 획득한다.
(단계 S22)
그 후, NAND 플래시 메모리(10)는 NKeyi 및 인덱스 정보(k)를 사용하여 인덱스 키(INKk)를 생성한다.
(단계 S23)
그 후, NAND 플래시 메모리(10)는 인덱스 키(INKk) 및 AES 암호화 기능을 이용하여, 암호화된 관리 키(D-FKeyv,k)를 암호 해독하여(AES 암호화 기능을 이용하여) 관리 키(Fkeyv,k)를 획득한다.
(단계 S24)
그 후, NAND 플래시 메모리(10)는 SKeyi,j 및 AES 암호화 기능을 이용하여 관리 키(Fkeyv,k)를 암호화하고, 암호화된 데이터[AES_E(SKeyi,j, FKeyv,k)]를 호스트 장치(20)에 전송한다.
<패밀리 키 블록(FKB)>
다음으로, 제1 변형예에 따른 키 관리 정보[패밀리 키 블록(FKB)]에 대해 도 8를 사용하여 더 상세하게 설명한다.
본 변형예에 따라 AES 암호화를 사용하여 키 관리 정보(FKB)를 생성하는 프로세스는 다음과 같다.
우선, 인덱스 키[INKk(k=1, …, n)]가 전술한 바와 같이 생성된다.
그 후, 단일 암호화로서, 은닉될 FKeyv가 AES 암호 해독 프로세스 및 각각 생성된 인덱스 키[INKk(k=1, …, n)]를 이용하여 암호화되어, 암호화된 관리 키가 획득된다[D-FKeyv,k = AES_D(INKk, FKeyv)(k=1, …, n)].
그 후, 이중 암호화(암호화)로서, 인덱스(k)가 대응하는 암호화된 관리 키(D-FKeyv,k)가 AES 암호화 프로세스를 이용하고 미리 준비된 식별 키 정보인 IDKeyi(i=1, …, n)(IDKeyi 세트)를 하나씩 이용하여 하나씩 암호화된다.
이에, 본 변형예에 따른 키 관리 정보(FKB)는 AES 암호화 프로세스를 이용하는 다중 암호화된(이중 암호화된) 관리 키 세트이다[DE-FKeyv,k = AES_E(IDKeyk, D-FKeyv,k)(k=1, …, n)]. 다중 암호화된 FKeyv,k 세트는 다중 암호화된 관리 키(FKey) 팩이라고 지칭된다.
또한, AES 암호화 프로세스를 이용한 암호화(Encrypt) 데이터를 표시하고, AES 암호화 프로세스를 이용한 암호 해독(Decrypt) 데이터를 표시하기 위해, 이들 각각은 "E- " 또는 "D- "로서 각각 기재된다.
그 밖의 다른 구성 및 동작은 제1 실시예의 구성 및 동작과 실질적으로 동일하기 때문에, 이에 대한 상세 설명은 생략한다.
<작용 효과>
전술한 바와 같이, 제1 변형예에 관한 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 따르면, 적어도 전술한 (1) 내지 (4)와 동일한 효과를 얻을 수 있다.
또한, 본 변형예에서, 메모리 시스템은 공통 키 암호인 AES 암호화를 사용하여 구현된다.
이에 따라, NAND 플래시 메모리(10)에 구현되어야 하는 암호화 프로세스 및 암호 해독 프로세스가 AES 암호화 프로세스에 통합되어, 암호화 프로세스 및 암호 해독 프로세스 양쪽 모두의 구현에 비해 NAND 프래시 메모리(10)의 구현 부하(회로 사이즈)를 줄일 수 있다는 이점이 있다.
또한, 전술한 바와 같이, 데이터 생성기(생성; 13 및 14)는 AES 암호화 프로세스일 수 있고, 일방향성 컨버터(일방향성; 15)는 AES 암호화 프로세스를 이용함으로써 구성될 수 있다. 이 경우, NAND 플래시 메모리(10)에 의한 프로세스에 필요한 추가 구현 부하(회로 스케일)를 더욱 줄일 수 있다.
또한, 호스트 디바이스(20)의 암호 해독기(암호 해독; 21)가 AES 암호 해독기(AES_D)로서 구현되는 일례에 대해 설명하였지만, 호스트 디바이스(20)의 암호 해독기(암호 해독; 21)는 AES 암호화기(AES_E)로서 구현될 수 있다. 이 경우, 제1 실시예에 따라 E-SecretID = AES_D(FKeyv, SecretID)가 ROM 영역(113)에 기록된다. 더욱이, 제1 실시예의 단계 S26에서, 호스트 디바이스(20)는 획득된 관리 키(FKeyv,k)를 사용하여 NAND 플래시 메모리(10)로부터 판독된 암호화된 비밀 식별 정보(E-SecretID)를 암호화함으로써 비밀 식별 정보(SecretID)를 획득한다. 이것은 실제 각각의 실시예 및 변형예에 적용될 수 있다.
[제2 실시예(FKB의 3중 암호화)]
제2 실시예에 따른 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 대해 설명한다. 본 실시예는 키 관리 정보(FKBv)가 다중 암호화로서 3중 암호화된 관리 키[EEE-FKeyv,k = Encrypt(IDKeyk, EE-FKeyv,k)(k=1, …, n)]인 예에 관한 것이다. 다음 설명에서는, 제1 실시예와 중복되는 점은 생략한다.
<메모리 시스템>
제2 변형예에 따른 메모리 시스템은 도 9에 도시된 바와 같다.
본 실시예에서, 키 관리 정보(FKBv)는 다중 암호화로서 3중 암호화된 관리 키 팩[EEE-FKeyv,k = Encrypt(IDKeyk, EE-FKeyv,k)(k=1, …, n)]이다.
따라서, 도 9에 도시된 바와 같이, 호스트 디바이스(20)는 암호 해독기(202)를 더 포함한다는 점에서 제1 실시예와 상이하다.
암호 해독기(암호 해독; 202)는 식별 키 정보(DKeyk)를 사용하여, 암호 해독기(201)로부터 수신된 암호화된 관리 키(E-FKeyv)를 암호 해독함으로써 관리 키(FKeyv)를 획득한다.
<인증 동작>
제2 실시예에 따른 메모리 시스템의 인증 플로우는 도 10에 도시된 바와 같다.
도 10에 도시된 바와 같이, 본 실시예는 키 관리 정보(FKBv)가 다중 암호화로서 3중 암호화된 EEE-FKeyv,k라는 점에서 제1 실시예와 상이하다. 이하의 단계 S25-1을 더 포함한다는 점이 실질적으로 상이하다.
(단계 S25-1)
호스트 디바이스(20)는 암호 해독기(202)의 식별 키 정보(IDKeyk)를 사용하여 암호 해독기(201)로부터 수신된 암호화된 관리 키(E-FKeyv,k)를 암호 해독함으로써 관리 키(Fkeyv,k)를 획득한다.
그 밖의 다른 구성 및 동작은 제1 실시예의 구성 및 동작과 실질적으로 동일하기 때문에, 이에 대한 상세 설명은 생략한다.
<패밀리 키 블록(FKB)>
다음으로, 제2 실시예에 따른 키 관리 정보(패밀리 키 블록)에 대해 도 11을 사용하여 더욱 상세하게 설명한다.
도 11에 도시된 바와 같이, 본 실시예에서 3중 암호화 키 관리 정보(FKB)를 생성하기 위해, 암호화 프로세스가 더 추가된다.
우선, 인덱스 키[INKk(k=1, …, n)]가, 미리 준비된 비밀 키 정보인 IDKeyk들(k=1, …, n)(IDKeyk 세트)의 각각의 IDKeyk에 대응하는 인덱스(k), 및 관리 키(FKeyv)를 보호하기 위해 준비된 FKB를 저장하는 NAND 플래시 메모리(10)에 은닉된 비밀 정보(제1 키 정보)(NKeyi)를 사용하여, 생성기(16)에서 미리 정해진 생성 알고리즘에 의해 생성된다.
INKk = Generate2(NKeyi, k)(k=1, . …, n)
FKeyv가 각각의 식별 키 정보[IDKeyk(k=1, …, n)]를 사용해 단일 암호화로서 암호화되어 암호화된 관리 키가 획득된다[E-FKeyv,k = Encrypt(IDkeyk, FKeyv)(k=1, …, n)].
그 후, 각각의 암호화된 관리 키(E-FKeyv,k)가, 미리 준비된 인덱스 키로서 INKk(k=1, …, n)를 하나씩 사용하여 이중 암호화로서 암호화된다.
그 후, 3중 암호화로서, 각각의 인덱스(k)에 대응하는 식별 키 정보(IDKeyk)를 마찬가지로 사용함으로써 각각의 이중 암호화된 관리 키[(EE-Fkeyv,k = Encrypt(INKk, E-FKeyv,k)]가 하나씩 암호화된다.
이에 따라, 3중 암호화된 관리 키[Triply-encrypted FKeyv,k: EEE-FKeyv,k = Encrypt(IDKeyk, EE-FKeyv,k)(k=1, …, n)]가 본 실시예에 따른 키 관리 정보(FKB)로서 획득될 수 있다.
부가적으로, 암호화된(암호화) 데이터를 표시하기 위해, "E-"라고 기재하고, 이중 암호화된 데이터를 표시하기 위해, "EE- "라고 기재하며, 3중 암호화된 데이터를 나타내기 위해, "EEE- "라고 기재한다.
<작용 효과>
전술한 바와 같이, 제2 실시예에 관한 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 따르면, 적어도 전술한 (1) 내지 (4)와 동일한 효과를 얻을 수 있다. 나아가, 본 실시예에 따르면, 다음의 효과 (5)를 얻을 수 있다.
(5) 관리 키(FKeyv)의 부정 취득을 방지할 수 있다.
본 실시예에서, 키 관리 정보(FKBv)는 다중 암호화로서 3중 암호화된 관리 키[EEE-FKeyv,k = Encrypt(IDKeyk, EE-FKeyv,k)]이다. 그러므로, 호스트 디바이스(20)는 암호 해독기(202)를 더 포함한다는 점에서 제1 실시예와 상이하다.
전술된 구성 및 동작에 따르면, 비밀 정보(제1 키 정보)(NKeyi)가 NAND 플래시 메모리(10)로부터 유출되는 경우에도, 관리 키(FKeyv)는 호스트 디바이스(20)로부터 수신된 정보 및 유출된 NKeyi로부터 쉽게 획득될 수 없다. 그러므로, 관리 키(FKeyv)의 부정 취득이 방지될 수 있다는 이점이 있다.
[제2 변형예(AES 암호화 사용)]
다음으로, 제2 실시예에 따른 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 대해 설명한다. 본 변형예는, 제1 변형예에서와 같이 AES 암호화를 사용하여 제2 실시예를 구현하는 일례이다.
<메모리 시스템>
제2 변형예에 따른 메모리 시스템은 도 12에 도시된 바와 같다.
본 변형예는 AES 암호를 사용하여 제2 실시예를 구현하는 일례이다. 그러므로, 도 12에 도시된 바와 같이, 호스트 디바이스(20)의 암호 해독기(202)는 AES 암호를 사용하는 AES 암호화기(AES_D)로서 구현된다.
그러므로, AES 암호를 사용하여, 3중 암호화된 관리 키[EEE-FKeyv,k = Encrypt(IDKeyk, EE-FKeyv,k)]를 처리할 수 있다.
<인증 동작>
제2 변형예에 따른 인증 플로우는 도 13에 도시된 바와 같다.
도 13에 도시된 바와 같이, AES 암호는 본 변형예에서 단계 그룹(ST3)에 사용된다.
<패밀리 키 블록(FKB)>
다음으로, 제2 변형예에 따른 키 관리 정보(패밀리 키 블록)에 대해 도 14을 사용하여 더 상세하게 설명한다. 또한, 키 관리 정보(FKB)는 후술하는 제3 변형예의 경우에도 똑같다.
도 14에 도시된 바와 같이, AES 암호를 사용하여 본 변형예에서 3중 암호화된 키 관리 정보(FKB)를 생성하기 위해, 추가 암호화 프로세스가 추가된다.
우선, 인덱스 키[INKk(k=1, …, n)]가, 미리 준비된 비밀 키 정보인 IDKeyk들(k=1, …, n)(IDKeyk 세트)의 각각의 IDKeyk에 대응하는 인덱스(k), 및 관리 키(FKeyv)를 보호하기 위해 준비된 FKB를 저장하는 NAND 플래시 메모리(10)에 은닉된 비밀 정보(제1 키 정보)(NKeyi)를 사용하여, 생성기(16)에서 미리 정해진 생성 알고리즘에 의해 생성된다.
INKk = Generate2(NKeyi, k)(k=1, …, n)
FKeyv가 각각의 식별 키 정보[IDKeyk(k=1, …, n)]를 사용해 단일 암호화로서 암호화되어 암호화된 관리 키가 획득된다[E-FKeyv,k = Encrypt(IDkeyk, FKeyv)(k=1, …, n)].
그 후, 각각의 암호화된 관리 키(E-FKeyv,k)가, 미리 준비된 인덱스 키인 INKk(k=1, …, n)를 하나씩 사용하는 AES 암호 해독 프로세스(AES_D)를 이용하여 이중 암호화로서 암호화된다.
그 후, 3중 암호화로서, 각각의 인덱스(k)에 대응하는 AES 암호에 의한 식별 키 정보(IDKeyk)를 각각 사용함으로써 각각의 이중 암호화된 관리 키[ED-Fkeyv,k = Encrypt(INKk, E-FKeyv,k)]가 마찬가지로 하나씩 암호화된다.
이에 따라, 3중 암호화된 관리 키[Triply-encrypted FKeyv,k: EDE-FKeyv,k = AES_E(IDKeyk, ED-FKeyv,k)(k=1, …, n)]가 본 실시예에 따른 키 관리 정보(FKB)로서 획득될 수 있다.
또한, AES 암호화 프로세스를 이용한 암호화(Encrypt) 데이터를 표시하기 위해, "E-"라고 기재하고, AES 암호 해독 프로세스를 이용한 암호화 데이터를 나타내기 위해, 도면에 "D-"라고 기재한다. AES 암호화를 사용하여 3중 암호화된 데이터를 "EDE-"로 기재할 경우, 제1, 제2 및 제3 암호화가 AES 암호화 프로세스, AES 암호 해독 프로세스, 및 AES 암호화 프로세스를 각각 이용하는 것을 나타낸다.
<작용 효과>
전술한 바와 같이, 제2 변형예에 관한 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 따르면, 적어도 전술한 (1) 내지 (5)와 동일한 효과를 얻을 수 있다. 더구나, 필요하다면 본 변형예에서는 AES 암호를 사용하는 것이 가능하다.
[제3 실시예(FKB의 3중 암호화)]
제3 실시예에 따른 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 대해 설명한다.
본 실시예는 키 관리 정보(FKBv)가 다중 암호화로서 3중 암호화된 관리 키 팩[EEE-FKeyv,k = Encrypt(IDKeyk, EE-FKeyv,k)(k=1, …, n)]인 예에 관한 것이다. 본 설명에서는, 제2 실시예와 중복되는 점은 생략한다.
<메모리 시스템>
제3 실시예에 따른 메모리 시스템은 도 15에 도시된 바와 같다.
도 15에 점선으로 나타내는 바와 같이, 본 실시예는, NAND 플래시 메모리(10)가 암호화기(암호화; 101)를 포함하지 않고, 따라서 호스트 디바이스(20)가 암호 해독기(암호 해독; 201)를 포함하지 않는다는 점에서 제2 실시예와 상이하다.
이에, 메모리 시스템이 암호화기(101) 또는 암호 해독기(201)를 포함하지 않기 때문에, 처리 시간이 더욱 빨라질 수 있다는 이점이 있다.
<인증 동작>
제3 실시예에 따른 메모리 시스템의 인증 플로우는 도 16에 도시된 바와 같다. 도 16에 도시된 바와 같이, 본 실시예에서는 암호화기(101) 또는 암호 해독기(201)를 포함하지 않기 때문에, 단계 S24 및 S25가 불필요하다.
<작용 효과>
전술한 바와 같이, 제3 실시예에 관한 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 따르면, 적어도 전술한 (1) 내지 (5)와 동일한 효과를 얻을 수 있다.
더구나, 본 변형예에서는 메모리 시스템이 암호화기(101) 또는 암호 해독기(201)를 포함하지 않기 때문에 단계 S24 및 S25를 생략할 수 있다. 그렇기 때문에, 인증 처리에 요구되는 처리 시간이 단축될 수 있다는 이점이 있다.
[제3 변형예(FKB의 3중 암호화)]
다음으로, 제3 변형예에 따른 호스트 디바이스, 반도체 메모리 디바이스, 인증 방법에 대해 설명한다. 본 변형예는 제2 변형예에서와 같이 AES 암호화를 사용하여 제3 실시예를 구현하는 일례에 관한 것이다.
<메모리 시스템>
제3 변형예에 따른 메모리 시스템은 도 17에 도시된 바와 같다.
본 변형예는 AES 암호를 사용하여 제3 실시예를 구현하는 일례이다.
그러므로, 도 17에 도시된 바와 같이, 메모리 시스템 내의 암호화기 및 암호 해독기는 전술한 바와 같이 AES 암호를 사용하여 각각의 AES 프로세서(AES_E, AES_D)로서 구현된다. 그러나, 암호화기(101) 및 암호 해독기(201)는 상기 제3 실시예에서와 같이 포함되지 않기 때문에, AES 암호를 사용하여 AES 프로세서로서 구현되지 않는다.
<인증 동작>
제3 변형예에 따른 인증 플로우는 도 18에 도시된 바와 같다.
도 18에 도시된 바와 같이, AES 암호화는 본 변형예에서 단계 그룹(ST3)에 사용된다. 마찬가지로, 암호화기(101) 또는 암호 해독기(201)가 포함되지 않기 때문에, 단계 S24 및 단계 S25는 생략될 수 있다.
<패밀리 키 블록(FKB)>
본 변형예에 따른 키 관리 정보(패밀리 키 블록)는 도 14에 도시된 제2 변형예에 따른 키 관리 정보와 똑같다. 따라서, 이에 대한 상세 설명은 생략한다.
<작용 효과>
전술한 바와 같이, 제3 변형예에 관한 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 따르면, 적어도 전술한 (1) 내지 (5)와 동일한 효과를 얻을 수 있다. 더구나, 필요하다면 본 변형예에서는 AES 암호를 사용하는 것이 가능하다.
[제4 실시예(비밀 정보 및 FKB의 기입)]
상기 비밀 정보 또는 키 관리 정보(FKB)를 기입하는 것에 대해, 제4 실시예로서 설명한다.
제1 실시예에 따른 비밀 정보 또는 키 관리 정보(FKB)를 기입하는 경우를 예로 든다. 이하의 설명에서는, 제1 실시예와 중복되는 점은 생략한다.
4-1. NAND 플래시 메모리의 제조 시에 비밀 정보 또는 키 관리 정보(FKB)를 기입하는 경우
먼저, 예를 들어, NAND 플래시 메모리(10)의 제조 시에 비밀 정보 또는 키 관리 정보(FKB)가 기입되는 경우에 대해 도 19를 사용하여 설명한다.
라이센싱 관리자(40)는 후술하는 데이터, 즉 FKBv(v=1, …, n), FKeyv(v=1, …, n), v(v=1, …, n), NKeyi 및 i를 생성한다. FKBv는 전술한 바와 같이 FKeyv를 암호화함으로써 생성된다. 또한, v는 복수의 값일 수 있다. 예를 들어, 라이센싱 관리자(40)가 v로서 1, 2, 및 3이라는 3개의 값을 생성하면, 라이센싱 관리자(40)는 생성된 v에 따라 (FKB1, FKey1), (FKB2, FKey2), 및 (FKB3, FKey3)를 생성한다.
생성된 데이터 중에, 라이센싱 관리자(40)가 FKeyv(v=1, …, n), v(v=1, …, n), NKeyi, 및 i를 메모리 제조자(30)에 전달한다. 데이터의 전달을 위해, 예를 들어, 라이센싱 관리자(40)는, 미리 획득된 메모리 제조자(30)의 공개 키를 사용해 데이터를 암호화한 다음에 메모리 제조자(30)에 전송하는 등, 안전한 수단을 사용한다.
메모리 제조자(30)는 NAND 플래시 메모리(10)뿐 아니라 선택기(32 및 33), 생성기(34), 및 암호화 유닛(35)을 포함한다. 메모리 제조자(30)는 라이센싱 관리자(40)에 의해 전달되는 FKBv(v=1, …, n)와 같은 데이터(31)를 더 보유한다.
전술한 구성에 의해, 데이터(31)를 수신하는 메모리 제조자(30)는 선택기(32)에 의해 v(v=1, …, n)로부터 하나의 값을 선택하고, v의 값은 인덱스 정보(v)(FKey의 인덱스)로서 NAND 플래시 메모리(10)의 ROM 영역(11-3)에 기입된다.
메모리 제조자(30)는 또한 인덱스 정보(i)(NKey의 인덱스)의 값을 NAND 플래시 메모리(10)의 판독/기입 영역(11-1)에 기입하고, NKeyi의 값을 은닉 영역(11-2)에 기입한다.
메모리 제조자(30)는 생성기(SecretID 생성기; 34)에서 비밀 식별 정보(SecretID)를 생성한다. 더구나, 선택기(32)는 선택된 v에 대응하는 FKeyv를 선택한다. 메모리 제조자(30)는 선택된 FKeyv를 사용해서 생성된 SecretID를 암호화함으로써 암호화된 비밀 식별 정보(E-SecretID)를 생성한다.
또한, 메모리 제조사(30)는 NAND 플래시 메모리(10)의 은닉 영역(11-2)에 SecretID의 값을 기입하고, ROM 영역(11-3)에 E-SecretID의 값을 기입한다.
전술한 동작에 의해, 미리 정해진 비밀 정보 및 FKB가 NAND 플래시 메모리(10)의 제조 시에 기입될 수 있다. 상기 값 각각의 기입 순서에 관해, E-SecretID는 암호화 프로세스 후에 획득된 값으로서, 암호화 유닛(35)에 의한 암호화 프로세스 후에 기입될 수 있다. 그러나, 기입 동작의 순서에 대한 제한이 없고, 그 값이 전술한 예의 순서와 다른 순서로 기입될 수도 있다.
또한, 메모리 제조자(30)는 기입 프로세스가 완료된 NAND 플래시 메모리(10)를 카드 제조자에 전달한다.
이에 따라, 본 실시예에서, NAND 플래시 메모리(10)는 인덱스 정보(v)(FKey의 인덱스) 및 기타 데이터가 이미 기입된 상태일 수 있다.
4-2. FKB가 카드 제조자에 의해 기입되는 경우
다음으로, 카드 제조자(50)가 FKB를 기입하는 경우에 대해 도 20을 사용하여 설명한다.
카드 제조자(50)는 미리 정해진 정보(v) 등이 기입된 NAND 플래시 메모리(10)를 메모리 제조자(30)로부터 수취한다. 그 다음, 카드 제조자(50)는 NAND 플래시 메모리(10)를 제어하는 컨트롤러(19)를 연결함으로써, 예를 들어, SD 카드(등록 상표)처럼 같은 일반 사용자용 저장 매체(여기에서, 카드; 55)를 제조한다.
카드 제조자(50)는 저장 매체(카드; 55), 및 라이센싱 관리자(40)로부터 수신된 데이터(FKBv; 51)뿐 아니라 선택기(52)를 구비한다.
카드 제조자(50)에 의해 키 관리 정보(FKBv)를 기입하는 프로세스는 다음과 같다.
우선, 카드 제조자(50)는 데이터(51)로서 라이센싱 관리자(40)로부터 FKBv를 수신한다. 데이터(51)의 전달에는, 전술한 안전 수단이 사용된다.
그 후, 카드 제조자(50)는 (컨트롤러(19)를 통해) NAND 플래시 메모리(10)의 ROM 영역(11-3)에 기록된 인덱스 정보(v)의 값을 판독하여 데이터 캐시(12C) 등에 출력한다.
그 후, 카드 제조자(50)는 선택기(52)를 통해 인덱스 정보(v)의 값에 대응하는 FKBv를 선택하고, 컨트롤러(19)를 통해 NAND 플래시 메모리(10)의 판독/기입 영역(11-1)에 선택된 FKBv를 기입한다.
4-3. FKB가 나중에 기입된 경우
암호화된 FKey 팩(FKB)를 나중에 기입하는 것에 대해 설명한다.
이 프로세스는 암호화된 Fkey 팩(FKB)이 NAND 플래시 메모리(10)의 제조 시에 기입되는 경우에는 특히 필요 없는 프로세스이다. 그러나, 이 프로세스는, NAND 플래시 메모리(10) 및 컨트롤러(19)가 결합되고, NAND 플래시 메모리(10)는 예를 들어 SD 카드(등록 상표)로서 일반적인 사용자에 의해 입수되고, FKB는 카드가 사용된 경우 시장에서 나중에 기입되는 경우에는 필요한 FKB의 기입 프로세스에 관한 것이다.
도 21은 키 관리 정보(FKB)가 전술한 바와 같이 저장 매체(카드; 55)에 기록되지 않은 상태를 도시한다.
도 21에 도시된 바와 같이, NAND 플래시 메모리(10)는 은닉 영역(11-2)에 기록된 NKeyi 및 SecretID를 갖는다. FKB를 식별하는데 필요한 인덱스 정보(v) 및 인덱스 정보(v)에 의해 특정된 FKeyv를 갖는 암호화된 SecretID(E-SecretID)가 ROM 영역(11-3)에 기록된다. NKeyi를 식별하는데 필요한 인덱스 정보(i)는 판독/기입 영역에 기입된다. 그러나, 키 관리 정보(FKB)는 NAND 플래시 메모리(10)에 아직 기록되지 않는다.
다음으로, 전술한 바와 같이, FKB가 서버로부터 다운로드되어 저장 매체(55)에 기록된 경우에 대해 도 22를 사용하여 설명한다.
이 경우, 도 22에 도시된 바와 같이, 데이터 캐시(12)는 필요에 따라 NAND 플래시 메모리(10)에 배치된다.
본 실시예에 따른 서버(70)는 FKB 데이터베이스[FKBv(v=1, …, n)](71)와, v에 기초해 FKBv를 선택하기 위한 선택기(72)를 갖는다.
서버(70) 및 메모리 시스템[NAND 플래시 메모리(10), 컨트롤러(19), 및 호스트 디바이스(20)]이 인터넷(60) 통신을 위해 전기적으로 연결된다.
호스트 디바이스(20)는 필요에 따라 서버로부터 FKB를 새롭게 기입하고 FKB를 다운로드하는 것이 필요한지 여부를 판정하는 기능을 구비한다.
<FKB 기입 플로우>
다음으로, 서버(70)로부터 암호화 FKey 팩(FKB)를 다운로드하고 FKB를 NAND 플래시 메모리(10)에 기입하는 플로우에 대해 도 23을 따라 설명한다.
(단계 S41)
먼저, 도 23에 도시된 바와 같이, 호스트 디바이스(20)가 FKB를 다운로드하는 것이 필요하다고 판정하는 경우, FKB 기입이 개시되고, 호스트 디바이스(20)는 FKB 요청을 서버(70)에 발행한다.
(단계 S42)
그 후, 서버(70)는 FKeyv를 식별하는데 필요한 인덱스 정보(v)의 요청을 NAND 플래시 메모리(10)에 전송한다.
(단계 S43)
그 후, NAND 플래시 메모리(10)는 ROM 영역(11-3)으로부터 v를 판독하고, v를 서버로 전송한다.
(단계 S44)
그 후, 서버(70)는 FKB 데이터베이스(71)로부터 수신된 v에 대응하는 FKBv를 선택한다.
(단계 S45)
그 후, 서버(70)는 선택된 FKBv를 NAND 플래시 메모리(10)에 전송한다.
(단계 S46)
그 후, NAND 플래시 메모리(10)는 수신된 FKBv를 기록용 판독/기입 영역(11-1)에 기입한다.
전술한 동작에 의해, 제4 변형예에 따른 암호화 RKey 팩(FKB)의 다운로드 플로우가 완료된다(종료).
<패밀리 키 블록(FKB)>
본 실시예에 따른 키 관리 정보(FKB)(패밀리 키 블록)에 관해, 그 구성 방법에 의존하지 않기 때문에, 제1 내지 제3 실시예의 임의의 FKB를 사용할 수 있다. 따라서, 이에 대한 상세 설명은 생략한다.
<작용 효과>
제4 실시예에 따른 구성 및 동작에 따르며, 적어도 전술한 (1) 내지 (5)와 동일한 효과를 얻을 수 있다. 더욱이, 본 실시예에 따르면, FKB를 나중에 기입하는 경우, 필요에 따라 본 실시예를 적용할 수 있어, 다음의 효과 (6)을 얻을 수 있다.
(6) 제조 프로세스가 간략화될 수 있고, 제조 비용이 저감될 수 있다는 이점이 있다.
본 실시예에 따른 NAND 플래시 메모리(10)는 판독/기입 영역(11-1)에, 그 용도에 따라 NAND 플래시 메모리(10) 각각에 고유하게 또는 제조 로트 단위 등으로 복수의 NAND 플래시 메모리(10)에 공통으로 부가된 키 관리 정보(FKBv)를 포함한다. 또한, 본 실시예에 따른 NAND 플래시 메모리(10)는 ROM 영역(11-3)에, NAND 플래시 메모리(10) 각각에 고유하게 부가된 암호화된 비밀 식별 정보(E-SecretID)를 포함한다.
키 관리 정보(FKBv)가 제조 로트 단위로 공통적이게 되면, NAND 플래시 메모리(10) 각각에 기록될 필요가 있는 고유 정보는 암호화된 비밀 식별 정보(E-SecretID)와 같이 데이터 사이즈가 작은 데이터로 감소될 수 있다. 다시 말하면, NAND 플래시 메모리(10)에 기록될 고유 암호화된 비밀 식별 정보(E-SecretID)의 데이터 사이즈는, 기입될 정보를 공통 부가 키 관리 정보(FKBv) 및 고유 암호화된 비밀 식별 정보(E-SecretID)로 나누고 그 정보를 2개의 개별 스테이지로 암호화함으로써 감소될 수 있다.
예를 들어, 전술한 도 19에 도시된 바와 같이, 메모리 제조자(30)는 고유 정보를 NAND 플래시 메모리의 제조 시에 라이센싱 관리자(40)로부터 수신된 NAND 플래시 메모리(10) 각각에 기입한다.
NAND 플래시 메모리(10)에 공통 부가된 암호화 키 관리 정보(FKBv)는 카드 제조자(50)에 의해 NAND 플래시 메모리(10)에 공통적으로 기입될 수 있다. 예를 들어, 전술한 도 20에 도시된 바와 같이, 메모리 제조자(50)는 고유 정보를 NAND 플래시 메모리의 제조 시에 라이센싱 관리자(40)로부터 수신된 NAND 플래시 메모리(10) 각각에 기입한다. 이에 따라, 메모리 제조자(30)에 의해 NAND 플래시 메모리(10) 각각에 기입되어야 하는 고유 데이터의 사이즈를 줄일 수 있다.
NAND 플래시 메모리(10)의 고유 정보 및 데이터 사이즈가 큰 정보가 NAND 플래시 메모리(10)의 제조 시에 기입되면, 제조 프로세스는 더 복잡하게 되고 제조 시간은 더 길어지므로, 제조 비용이 상승하게 된다. 그러나, 본 실시예의 구성 및 방법에 따르면, 이러한 복잡한 제조 프로세스는, 기입될 정보를 공통 부가 키 관리 정보(FKBv)와 고유 암호화된 비밀 식별 정보(E-SecretID)로 분할하고 그 정보를 2개의 개별 스테이지에서 암호화함으로써 불필요해지므로, 제조 프로세스가 간략화되고 제조 비용이 저감할 수 있다는 이점이 있다. 게다가, 제조 시간이 단축되어 전력 소비를 저감할 수 있는 이점이 있다.
또한, 호스트 디바이스(20) 측에서는, FKey를 사용하여 NAND 플래시 메모리의 고유 값인 SecretID를 암호화함으로써 E-SecretID를 생성하고 또한 IDKeyk를 사용하여 FKey를 암호화함으로써 FKB를 생성하는 구성을 채택함으로써, NAND 플래시 메모리(10)의 이점과 유사한 이점을 얻을 수 있다.
[제5 실시예(공개 키 암호로 암호화된 SecretID)]
제5 실시예에 따른 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 대해 설명한다. 본 실시예는 SecretID가 공개 키 암호로 암호화된 예에 관한 것이다. 이 설명에서, 제1 실시예와 중복되는 점은 생략한다.
제1 실시예에서, SecretID는 FKeyv를 암호화 키로 이용한 공통 키 암호화를 사용하여 암호화된다. 제5 실시예에서, SecretID는 공개 키 암호를 사용하여 암호화된다. 암호화의 세부사항은 도 26을 사용하여 나중에 설명한다.
<메모리 시스템>
제5 실시예에 따른 메모리 시스템은 도 24에 도시된 바와 같다.
도 24에 도시된 바와 같이, 본 실시예에 따른 메모리 시스템은 다음의 점에서 제1 실시예와 상이하다.
먼저, 호스트 디바이스(20)는 메모리(23)에 호스트 비밀 정보(HSecret)를 저장한다. 더구나, 호스트 디바이스(20)는 비밀 키 생성기(비밀키 생성; 205) 및 공개 키 암호 방식의 암호 해독기(공개키 암호해독; 206)를 더 포함한다.
비밀 키 생성기(205)는 호스트 비밀 정보(HSecret), 및 암호 해독기(201)로부터 출력된 키 정보(FKeyv)를 사용하여 비밀 키 정보(SecKeyv)를 생성한다.
암호 해독기(206)는 비밀 키 정보(SecKeyv)를 사용해, 공개 키 암호 방식으로 이용하여 암호화된 비밀 식별 정보(E-SecretID)를 암호 해독함으로써 비밀 식별 정보(SecretID)를 획득한다. 이들 동작의 상세내용은 다음의 인증 플로우에서 설명한다.
<인증 동작>
제5 실시예에 따른 메모리 시스템의 인증 플로우는 도 25에 도시된 바와 같다. 도 25에 도시된 바와 같이, 본 실시예는 단계 S205와 S206을 수행하는 점에서 제1 실시예와 상이하다.
(단계 S205)
호스트 디바이스(20)는 비밀 키 생성기(205)에서 호스트 비밀 정보(HSecret) 및 획득된 관리 키(Fkeyv)를 사용하여 공개 키 정보(SecKeyv)를 생성한다. 비밀 키 생성기(205)에서의 특정 프로세스는 다음의 식 (1)과 같이 표기된다.
SecKeyv = F(FKeyv, HSecret) = FKeyv XOR HSecret 식 (1)
XOR는 비트마다의 배타적 OR을 나타낸다. 또, 함수 F는 식 (1)에 제한되지 않고, FKeyv 및 HSecret로부터의 공개 키(PubKeyv)에 대응하는 비밀 키(SecKeyv)를 생성할 수 있다면 임의의 함수로서 정의될 수 있다.
(단계 S206)
그 후, 호스트 디바이스(20)는 공개 키 암호 방식의 암호 해독기(206)에서 생성된 비밀 키 정보(SecKeyv)를 사용하여 NAND 플래시 메모리(10)로부터 판독된 암호화된 비밀 식별 정보(E-SecretID)를 암호 해독하여 비밀 식별 정보(SecretID)를 획득한다.
<NAND 플래시 메모리의 제조 시에 기입하는 경우>
다음으로, 예를 들어, NAND 플래시 메모리(10)의 제조 시에, 비밀 정보 및 키 관리 정보(FKB)가 기입되는 경우에 대해 도 26를 사용하여 설명한다.
도 26에 도시된 바와 같이, 라이센싱 관리자(40)는 상기 데이터[FKBv(v=1, …, n), FKeyv(v=1, …, n), v(v=1, …, n), NKeyi, 및 i]뿐 아니라 공개 키 정보[PubKeyv(v=1, …, n)], 비밀 키 정보[SecKeyv(v=1, …, n)], 및 호스트 비밀 정보(HSecret)를 생성한다는 점에서 전술한 실시예들의 것과 상이하다.
키 정보 세트(PubKeyv, SecKeyv)는 공개 키 암호에 있어서 공개 키 및 비밀 키의 세트이다. 공개 키 암호로서, RSA 암호, EIGamal 암호 방식, 및 타원 곡선 암호 등의 임의의 공개 키 암호가 사용될 수 있다. 호스트 비밀 정보(HSecret)는 호스트 디바이스(20)에 주어진 비밀 정보이다.
FKeyv를 생성한 후, 전술한 식 (1)을 만족하는 비밀 키(SecKeyv)가 결정된 다음, 이 비밀 키(SecKeyv)에 대응하는 공개 키(PubKeyv)가 결정된다. 식 (1)을 만족하는 FKeyv는 키 정보 세트(PubKeyv, SecKeyv)를 생성한 후에 결정될 수 있다.
그 후, 라이센싱 관리자(40)는 생성된 데이터 중에서 데이터(31)로서 공개 키[PubKeyv(v=1, …, n)], v(v=1, …, n), NKeyi, 및 i를 메모리 제조자(30)에 전달한다.
데이터(31)를 수신한 메모리 제조자(30)는 선택기(32)에서 v 중 하나의 값을 선택하고, 생성기(SecretID 생성기; 34)에서 비밀 식별 정보(SecretID)를 생성한다. 더구나, 선택기(32)는 선택된 v에 대응하는 공개 키(PubKeyv)를 선택한다.
메모리 제조자(30)는 선택된 공개 키(PubKeyv)를 사용해, 생성된 SecretID를 공개 키 암호 방식으로 암호화하여, 암호화된 비밀 식별 정보(E-SecretID)를 생성한다.
그 밖의 점은 제4 실시예와 동일하다.
한편, 호스트 비밀 정보(HSecret)가 모든 호스트 디바이스에 공통된 예에 대한 설명했지만, 상이한 호스트 비밀 정보가 각각의 호스트 디바이스 제조자에 의해 준비될 수도 있고, 상이한 호스트 비밀 정보는 주기마다 사용될 수도 있다. 이 경우, 관리 키 데이터에 대응하는 공개 키 및 호스트 비밀 정보 각각이 생성될 것이다. 그러므로, 도 26에서, 복수의 암호화 비밀 식별 정보 아이템이 NAND 플래시 메모리에 기입된다.
<작용 효과>
전술한 바와 같이, 제5 실시예에 관한 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법에 따르면, 적어도 전술한 (1) 내지 (5)와 동일한 효과를 얻을 수 있다.
전술한 바와 같이, 제5 실시예에서, 비밀 식별 정보(SecretID)는 공개 키(PubKeyv)를 사용한 공개 키 암호로 암호화된다. 이에 따라, 필요한 경우 본 실시예를 적용할 수 있다. 한편, 제5 실시예는 제1 실시예뿐 아니라 각각의 실시예 및 변형예에 실제로 적용될 수 있다.
[제6 실시예(NAND 플래시 메모리의 구성예)]
전술한 NAND 플래시 메모리(10) 등의 구성예에 대해 제6 실시예로서 설명한다. 이 설명에서, 제1 실시예와 중복되는 점은 생략한다.
6-1. NAND 플래시 메모리의 전체 구성예
제5 실시예에 따른 NAND 플래시 메모리(10)의 전체 구성예에 대해 도 27을 사용하여 설명한다.
도 27에 도시된 바와 같이, NAND 플래시 메모리(10)는 메모리 셀 어레이(11) 및 주변 회로를 포함한다.
메모리 셀 어레이(11)는 복수의 블록(BLOCK1 내지 BLOCKn)을 포함한다. 도 28을 참조하여 설명하는 각 블록의 구성은 복수의 메모리 셀 트랜지스터(ML), 워드 라인(WL), 및 비트 라인(BL)을 포함한다. 각 블록의 메모리 셀 트랜지스터(MC)에서의 데이터는 하나의 동작으로 소거된다. 데이터는 메모리 셀 트랜지스트 또는 페이지 단위로 소거될 수 없다. 즉, 개별 블록이 최소 소거 단위이다.
주변 회로는 감지 증폭기(77), 입출력 제어 회로(84), 및 로직 제어 회로(85)를 포함한다.
감지 증폭기(77)는 비트 라인(BL)을 통해 메모리 셀 어레이(11) 내의 메모리 셀[메모리 셀 트랜지스터(MC)]의 데이터를 판독하고, 비트 라인(BL)을 통해 메모리 셀 어레이(11) 내의 메모리 셀의 상태를 검출한다.
데이터 캐시(12; 12A 내지 12C)는 감지 증폭기(77)로부터 판독된 데이터 또는 감지 증폭기(77)에 공급될 데이터를 일시 보유한다.
컬럼 디코더(75)는 NAND 플래시 메모리(10)의 외부로부터 IO 단자를 통해 공급된 어드레스 신호에 기반하여 특정 비트 라인(BL), 감지 증폭기 등을 선택한다.
컬럼 어드레스 버퍼(74)는 어드레스 신호를 컬럼 디코더(75)에 공급하기 위해 어드레스 신호를 일시 보유한다.
로우 디코더(78)는 전압 생성기(86)로부터 데이터를 판독, 기입, 또는 소거하는데 필요한 다양한 전압을 수신하여, 그 전압을 어드레스 신호에 기반하여 특정 워드 라인(WL)에 인가한다.
로우 어드레스 버퍼 디코더(79)는 어드레스 신호를 로우 디코더(78)에 공급하기 위해 어드레스 신호를 일시 보유한다.
전압 생성기(86)는 기준 전원 전압(VSS 및 VCC), 전압(VSSQ 및 VCCQ) 등을 수신하여 이들 전압으로부터 데이터를 기입, 판독, 또는 소거하는데 필요한 전압을 생성한다.
입출력 제어 회로(84)는 NAND 플래시 메모리(10)의 동작을 제어하는 다양한 커맨드, 어드레스 신호, 및 기입 데이터를 IO 단자를 통해 수신하고 판독 데이터를 출력한다. 입출력 제어 회로(84)로부터 출력되는 어드레스 신호는 어드레스 레지스터(82)에 의해 래치된다. 래치된 어드레스 신호는 컬럼 어드레스 버퍼(74) 및 로우 어드레스 버퍼 디코더(79)에 공급된다. 입출력 제어 회로(84)로부터 출력되는 커맨드는 커맨드 레지스터(83)에 의해 래치된다. 상태 레지스터(81)가 입출력 제어 회로(84)를 위한 다양한 상태 값을 보유한다.
NAND 플래시 메모리(10)는 외부 인터페이스(NAND I/F)로서, 커맨드, 어드레스, 데이터 입출력을 위한 IO 단자, 및 동작을 제어하기 위한 다양한 제어 신호를 외부로부터 수신한다. 제어 신호는 예를 들어 칩 인에이블(/CE), 커맨드 래치 인에이블(CLE), 어드레스 래치 인에이블(ALE), 판독 인에이블(RE 및 /RE), 기입 인에이블(WE 및 /WE), 기입 보호(WP), 및 클록(DQS 및 /DQS)을 포함한다.
이들 제어 신호는 대응 단자에서 수신된 후, 로직 제어 회로(85)에 전송된다. 로직 제어 회로(85)는 제어 신호에 기반해 입출력 제어 회로(84)를 제어하여 단자(10) 상의 신호가 입출력 제어 회로(84)를 통해 커맨드, 어드레스, 또는 데이터로서 어드레스 레지스터(82), 커맨드 레지스터(83), 및 페이지 버퍼(12) 등에 도달하는 것을 허용하거나 금지한다. 로직 제어 회로(85)는 또한 커맨드 레지스터(83)로부터 래치된 커맨드를 수신한다.
제어 신호 중에서, WE 단자는 데이터 입력 클록을 공급하고, RE 단자는 데이터 출력 클록을 공급하며, DQS 단자는 데이터 입출력 클록을 송신하고, CLE 단자는 커맨드로서 데이터 입력을 인에이블하기 위한 것이며, ALE 단자는 어드레스로서 데이터 입력을 인에이블하기 위한 것이고, CE 단자는 데이터 입출력의 전체 기능들을 인에이블하기 위한 것이다.
R/B 단자는 NAND 플래시 메모리(10)의 내부 동작 상태를 나타내고, WP 단자는 오류가 있는 기입을 방지하기 위해 기입 방지 신호를 송신하며, Vcc/Vss/Vccq/Vssq 단자들은 전력을 공급하는데 사용된다. 또한, 본 실시예에서, 각각의 상보 신호를 송신하는 /RE 단자, /WE 단자, 및 /DQS 단자는 데이터 송신이 고속 인터페이스에 의해 실현될 때에 사용되는 단자들(토글)로서 RE 단자, WE 단자, 및 DQS 단자에 대해 존재한다.
로직 제어 회로(85)는 시퀀스 제어 회로(88), 파라미터 레지스터(89), 및 인증 회로(17)를 포함한다. 로직 제어 회로(85)는 또한 준비/비지(busy) 신호(R/B)의 출력을 관리한다. 더 구체적으로, NAND 플래시 메모리가 비지 상태일 경우 로직 제어 회로(85)는 비지 신호를 출력한다.
시퀀스 제어 회로(88)는 커맨드 레지스터(83)로부터 커맨드를 수신한다. 시퀀스 제어 회로(88)는 커맨드에 의해 명령된 (데이터 판독, 기입, 또는 소거 등의)프로세스가 수신 커맨드에 기반하여 수행될 수 있도록 감지 증폭기(77), 전압 생성기(86) 등을 제어한다.
파라미터 레지스터(89)는 로직 제어 회로(85)의 동작을 특정하는 다양한 제어 파라미터(890)를 보유한다. 제어 파라미터(890)는 시퀀스 제어 회로(88)에 의해 참조 또는 업데이트되어, 로직 제어 회로(85) 또는 입출력 제어 회로(84)의 시퀀스를 제어하는데 사용된다.
인증 회로(17)는 생성기(13)를 포함하고, 인증에 관한 프로세스를 실행한다. 예를 들어, 전술한 바와 같이, 인증 회로(17)는 또한 데이터를 업데이트하고, 예를 들어, 파라미터 레지스터에 포함된 제어 파라미터(890)를 재기입한다. 인증 회로(17)는 인증을 요청하는 커맨드를 수신하고, 메모리 셀 어레이(11) 내의 특정 데이터를 사용함으로써 인증을 위한 특정 동작을 수행하여 메모리(10) 외부로 결과를 출력한다. 일련의 동작을 실행하는 프로세스에 있어서, 인증 회로(17)는 시퀀스 제어 회로(88)가 제어 파라미터(890)의 업데이트를 통해 필요한 데이터의 판독 또는 기입을 허가한다.
준비/비지 회로(RY/BY; 87)는 로직 제어 회로(85)의 제어 하에서 스위치 트랜지스터를 통해 NAND 플래시 메모리(10) 외부에 R/B 신호를 통지한다.
6-2. 블록(BLOCK)의 구성예
다음으로, 메모리 셀 어레이(11)를 형성하는 블록(BLOCK)의 구성예에 대해 도 28을 사용하여 설명한다. 설명을 위해 도 27의 BLOCK1을 예로 든다. 전술한 바와 같이, 하나의 동작에 의해 블록(BLOCK1) 내의 메모리 셀의 데이터가 소거되며, 이에 블록이 데이터 소거 단위이다.
블록(BLOCK1)은 워드 라인 방향(WL 방향)으로 배열되는 복수의 메모리 셀 유닛(MU)을 포함한다. 메모리 셀 단위(MU)는, WL 방향과 교차하는 비트 라인 방향(BL 방향)으로 배열되며 전류 경로가 직렬로 연결된 8개의 메모리 셀(MC0 내지 MC7)로 형성되는 NAND 스트링(메모리 셀 스트링), NAND 스트링의 전류 경로의 일단에 연결된 소스측 선택 트랜지스터(S1), 및 NAND 스트링의 전류 경로의 타단에 연결된 드레인측 선택 트랜지스터(S2)를 포함한다.
본 실시예에서, 메모리 셀 단위(MU)는 8개의 메모리 셀(MC0 내지 MC7)을 포함하지만, 2개 이상의 메모리 셀, 예를 들어 56 또는 32개의 메모리 셀을 포함할 수도 있으므로, 메모리 셀의 개수는 8개로 제한되지 않는다.
소스측 선택 트랜지스터(S1)의 전류 경로의 타단은 소스 라인(SL)에 연결된다. 드레인측 선택 트랜지스터(S2)의 전류 경로의 타단은, 각각의 메모리 셀 단위(MU)에 대응하여 메모리 셀 단위(MU) 위에 설치되며, BL 방향으로 연장되는 비트 라인(BL)에 연결된다.
워드 라인(WL0 내지 WL7)은 WL 방향으로 연장되어 WL 방향으로 복수의 메모리 셀의 제어 게이트 전극(CG)에 공통 연결된다. 선택 게이트 라인(SGS)이 WL 방향으로 연장되어 WL 방향으로 복수의 선택 트랜지스터(S1)에 공통 연결된다. 선택 게이트 라인(SGD) 역시 WL 방향으로 연장되어 WL 방향으로 복수의 선택 트랜지스터(S2)에 공통 연결된다.
워드 라인(WL0 내지 WL7)마다 페이지(도 28에 "페이지(PAGE)"라고 표시)가 존재한다, 예를 들어, 도 19에서 파선으로 둘러싸게 표시하는 바와 같이, 페이지(7; PAGE7)가 워드 라인(WL7)에 존재한다. 데이터 판독 동작 및 데이터 기입 동작이 페이지(PAGE)마다 수행되기 때문에, 페이지(PAGE)는 데이터 판독 단위 및 데이터 기입 단위이다.
일정한 실시예들을 설명하지만, 이들 실시예는 단지 예로서 제시되는 것이며, 본 발명의 범위를 제한하려는 것이 아니다. 실제로, 여기에 설명한 신규한 실시예들은 다양한 다른 형태로 구체화될 수 있으며, 또한 여기에 설명한 실시예들의 형태의 다양한 생략, 대체, 및 변경이 본 발명의 사상에서 벗어나지 않고 수행될 수 있다. 첨부하는 청구범위 및 그에 대한 균등물은 본 발명의 범위 및 사상 내에 있지 않은 이러한 형태 또는 변형예를 포함하는 것을 의도한다.

Claims (13)

  1. 호스트 디바이스에 의해 반도체 메모리 디바이스를 인증하는 방법에 있어서, 상기 반도체 메모리 디바이스는 은닉된 제1 키 정보(NKey), 디바이스 고유의 비밀 식별 정보(SecretID), 암호화된 비밀 식별 정보(E-SecretID), 및 공통 부가된 키 관리 정보(FKB)를 포함하고, 상기 호스트 디바이스는 은닉된 식별 키 정보(IDKey) 및 인덱스 정보(k)를 저장하며,
    상기 호스트 디바이스가, 상기 반도체 메모리 디바이스로부터 상기 암호화된 비밀 식별 정보(E-SecretID) 및 상기 키 관리 정보(FKB)를 판독하는 단계와,
    상기 호스트 디바이스가, 상기 식별 키 정보(IDKey) 및 상기 인덱스 정보(k)를 사용해서, 선택되어 암호 해독될 수 있는 특정 암호화된 관리 키(E-FKey)를 상기 키 관리 정보(FKB)로부터 획득하는 단계와,
    상기 호스트 디바이스가, 상기 키 관리 정보(FKB)에서의 선택된 상기 암호화된 관리 키(E-FKey)의 저장 위치를 나타내는 인덱스 정보(k) 및 상기 암호화된 관리 키(E-FKey)를 상기 반도체 메모리 디바이스에 송신하는 단계와,
    상기 반도체 메모리 디바이스가, 상기 제1 키 정보(NKey) 및 수신된 인덱스 정보(k)를 사용하여 인덱스 키(INK)를 생성하는 단계와,
    상기 반도체 메모리 디바이스가, 상기 인덱스 키(INK)를 사용해서 상기 암호화된 관리키(E-FKey)를 암호 해독함으로써 관리 키(FKey)를 획득하여 상기 호스트 디바이스에 송신하는 단계
    를 포함하는 반도체 메모리 디바이스 인증 방법.
  2. 제1항에 있어서, 상기 호스트 디바이스는 기본 정보(HC) 및 은닉된 제2 키 정보(HKey)를 더 저장하고, 상기 방법은,
    상기 반도체 메모리 디바이스가 상기 기본 정보(HC)와 상기 제1 키 정보(NKey)에 기반하여 제3 키 정보(HKey')를 생성하는 단계와,
    상기 반도체 메모리 디바이스가 상기 제3 키 정보(HKey') 및 난수에 기반하여 제1 세션 키(SKey)를 생성하는 단계와,
    상기 호스트 디바이스가 상기 제2 키 정보(HKey) 및 난수에 기반하여 제2 세션 키(SKey')를 생성하는 단계와,
    상기 호스트 디바이스가, 상기 반도체 디바이스로부터 수신된 관리 키(FKey)를 사용해서, 판독된 상기 암호화된 비밀 식별 정보(E-SecretID)를 암호 해독하여 비밀 식별 정보(SecretID)를 획득하는 단계
    를 더 포함하는 반도체 메모리 디바이스 인증 방법.
  3. 제2항에 있어서, 상기 호스트 디바이스로부터 상기 반도체 메모리 디바이스로 송신된 상기 암호화된 관리 키(E-FKey)는 상기 제2 세션 키(SKey')를 사용하여 암호화되고,
    상기 반도체 메모리 디바이스로부터 상기 호스트 디바이스에 송신된 관리 키(FKey)는 상기 제1 세션 키(SKey)를 사용하여 암호화되는 것인 반도체 메모리 디바이스 인증 방법.
  4. 제2항에 있어서,
    상기 반도체 메모리 디바이스가, 생성된 제1 세션 키(SKey)를 사용해서 상기 비밀 식별 정보(SecretID)에 대해 일방향성 변환 프로세스를 수행함으로써 일방향성 변환 데이터(Oneway-ID)를 생성하여 상기 호스트 디바이스로 송신하는 단계와,
    상기 호스트 디바이스가, 생성된 제2 세션 키(SKey')를 사용해서 상기 비밀 식별 정보(SecretID)에 대해 일방향성 변환 프로세스를 수행하여 일방향성 변환 데이터(Oneway-ID')를 생성하는 단계와,
    상기 호스트 디바이스가, 수신된 일방향성 변환 데이터(Oneway-ID)와 생성된 일방향성 변환 데이터(Oneway-ID')가 일치하는지 여부를 판정하는 단계
    를 더 포함하는 반도체 메모리 디바이스 인증 방법.
  5. 제4항에 있어서, 상기 호스트 디바이스로부터 상기 반도체 메모리 디바이스로 송신된 상기 암호화된 관리 키(E-FKey)는 상기 제2 세션 키(SKey')를 사용하여 암호화되고,
    상기 반도체 메모리 디바이스로부터 상기 호스트 디바이스에 송신된 관리 키(FKey)는 상기 제1 세션 키(SKey)를 사용하여 암호화되는 것인 반도체 메모리 디바이스 인증 방법.
  6. 은닉된 고유 비밀 식별 정보(SecretID), 고유의 암호화된 비밀 식별 정보(E-SecretID), 공통 부가된 키 관리 정보(FKB), 및 제1 키 정보(NKey)를 저장하는 셀 어레이와,
    호스트 디바이스의 기본 정보(HC) 및 상기 제1 키 정보(NKey)를 사용하여 제2 키 정보(HKey)를 생성하는 제1 데이터 생성기와,
    상기 제2 키 정보(HKey) 및 난수를 사용하여 제1 세션 키(SKey)를 생성하는 제2 데이터 생성기와,
    상기 호스트 디바이스로부터 송신된 인덱스 정보(k) 및 상기 제1 키 정보(NKey)를 사용하여 인덱스 키(INK)를 생성하는 제3 데이터 생성기와,
    상기 인덱스 키(INK)를 사용하여 상기 호스트 디바이스로부터 송신된 암호화된 관리 키(E-FKey)를 암호 해독하는 제1 암호 해독기
    를 포함하고,
    상기 암호화된 비밀 식별 정보(E-SecretID) 및 키 관리 정보(FKB)는 상기 호스트 디바이스로 송신되며,
    상기 제2 키 정보(HKey)는 상기 제1 키 정보(NKey)로부터 생성될 수 있도록 구성되지만, 상기 제1 키 정보(NKey)는 상기 제2 키 정보(Hkey)로부터 생성될 수 없도록 구성되고,
    암호 해독된 관리 키(FKey)는 상기 호스트 디바이스로 송신되는 것인 반도체 메모리 디바이스.
  7. 제6항에 있어서,
    상기 제1 세션 키(SKey)를 사용해서 상기 호스트 디바이스로부터 송신된 상기 암호화된 관리 키 데이터를 암호 해독하여 암호화된 관리 키(E-FKey)를 생성하는 제2 암호 해독기와,
    상기 제1 세션 키(SKey)를 사용하여 상기 호스트 디바이스로 송신된 관리 키(FKey)를 암호화하는 제1 암호화기와,
    상기 제1 세션 키(SKey)를 사용해서 상기 비밀 식별 정보(SecretID)에 대해일방향성 변환 프로세스를 수행하여 일방향성 변환 데이터(Oneway-ID)를 생성하는 일방향성 컨버터
    를 더 포함하는 반도체 메모리 디바이스.
  8. 제7항에 있어서, 상기 제1 암호 해독기와 상기 제2 암호 해독기 및 상기 제1 암호화기는, 공통 키 암호화를 사용하는 암호 해독 프로세스 또는 암호화 프로세스로 통합되어 구현되는 것인 반도체 메모리 디바이스.
  9. 은닉된 제1 키 정보(NKey)를 저장하는 반도체 메모리 디바이스를 인증하는 호스트 디바이스에 있어서,
    은닉된 식별 키 정보(IDKey), 제2 키 정보(HKey), 및 인덱스 정보(k)를 저장하는 메모리와,
    상기 인덱스 정보(k)에 의해 위치가 표시되고, 상기 반도체 메모리 디바이스로부터 판독된 키 관리 정보(FKB)로부터의 상기 식별 키 정보(IDKey)를 사용하여 암호 해독될 수 있는 암호화된 관리 키(E-FKey)를 출력하는 식별 키 정보 생성기와,
    상기 제2 키 정보(HKey) 및 난수를 사용하여 제2 세션 키(SKey')를 생성하는 제1 데이터 생성기와,
    상기 제2 세션 키(SKey')를 사용하여 상기 암호화된 관리 키(E-FKey)를 암호화하는 제1 암호화기
    를 포함하고,
    상기 인덱스 정보(k) 또는 상기 인덱스 정보(k)의 일부 및 상기 암호화된 관리 키(E-FKey)는 상기 반도체 메모리 디바이스로 송신되는 것인 호스트 디바이스.
  10. 제9항에 있어서,
    상기 반도체 메모리 디바이스에 의해 생성된 관리 키(FKey)를 수신하고, 상기 제2 세션 키(SKey')를 사용해서 상기 관리 키(FKey)를 암호 해독하여 관리 키(FKey)를 생성하는 제1 암호 해독기와,
    암호 해독된 관리 키(FKey)를 사용해서 상기 반도체 메모리 디바이스로부터 판독된 암호화된 비밀 식별 정보(E-SecretID)를 암호 해독하여 비밀 식별 정보(SecretID)를 생성하는 제2 암호 해독기
    를 더 포함하는 호스트 디바이스.
  11. 제10항에 있어서,
    상기 제2 세션 키(SKey')를 사용해서 상기 비밀 식별 정보(SecretID)에 대해 일방향성 변환 프로세스를 수행하여 일방향성 변환 데이터(Oneway-ID)를 생성하는 일방향성 컨버터와,
    생성된 일방향성 변환 데이터(Oneway-ID)와 상기 반도체 메모리로부터 수신된 일방향성 변환 데이터(Oneway-ID)가 일치하는지 여부를 판정하는 검증기
    를 더 포함하는 호스트 디바이스.
  12. 제10항에 있어서, 상기 제1 암호화기 및 상기 제1 암호 해독기와 상기 제2 암호 해독기는 공통 키 암호를 사용하는 암호 해독 프로세스 또는 암호화 프로세스로 통합되어 구현되는 것인 호스트 디바이스.
  13. 제12항에 있어서,
    상기 제2 세션 키(SKey')를 사용해서 상기 비밀 식별 정보(SecretID)에 대해 일방향성 변환 프로세스를 수행하여 일방향성 변환 데이터(Oneway-ID)를 생성하는 일방향성 컨버터와,
    생성된 일방향성 변환 데이터(Oneway-ID)와 상기 반도체 메모리로부터 수신된 일방향성 변환 데이터(Oneway-ID)가 일치하는지 여부를 판정하는 검증기
    를 더 포함하는 호스트 디바이스.
KR1020147010629A 2012-01-16 2012-06-15 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법 KR101546204B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012005839A JP5275482B2 (ja) 2012-01-16 2012-01-16 ストレージメディア、ホスト装置、メモリ装置、及びシステム
JPJP-P-2012-005839 2012-01-16
PCT/JP2012/065938 WO2013108425A1 (en) 2012-01-16 2012-06-15 Host device, semiconductor memory device, and authentication method

Publications (2)

Publication Number Publication Date
KR20140063863A true KR20140063863A (ko) 2014-05-27
KR101546204B1 KR101546204B1 (ko) 2015-08-20

Family

ID=46651568

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147010629A KR101546204B1 (ko) 2012-01-16 2012-06-15 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법

Country Status (6)

Country Link
US (3) US8667286B2 (ko)
EP (1) EP2805445B1 (ko)
JP (1) JP5275482B2 (ko)
KR (1) KR101546204B1 (ko)
CN (1) CN103907308A (ko)
WO (1) WO2013108425A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180062427A (ko) * 2016-11-30 2018-06-08 주식회사 베프스 하드웨어 보안 모듈 및 이를 이용한 하드웨어 보안 디바이스

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140237244A1 (en) * 2013-02-19 2014-08-21 Kabushiki Kaisha Toshiba Device and authentication method therefor
JP6171644B2 (ja) 2013-07-12 2017-08-02 マツダ株式会社 車両の制御装置
KR101475462B1 (ko) * 2013-08-14 2014-12-23 브레인즈스퀘어(주) 사용자의 암호화 키로 암호화된 파일을 클라우드 스토리지와 동기화하는 시스템
US9386008B2 (en) * 2013-08-19 2016-07-05 Smartguard, Llc Secure installation of encryption enabling software onto electronic devices
JP2016001454A (ja) * 2014-05-20 2016-01-07 株式会社東芝 携帯可能電子装置、プログラム、端末および方法
US9497027B2 (en) * 2014-06-02 2016-11-15 GlobalFoundries, Inc. Encryption engine with twin cell memory array
JP6293648B2 (ja) 2014-12-02 2018-03-14 東芝メモリ株式会社 メモリデバイス
JP6503242B2 (ja) * 2015-06-26 2019-04-17 ルネサスエレクトロニクス株式会社 データのセキュリティを提供するための装置、システムおよび方法ならびに当該方法をコンピュータに実行させるためのプログラム
US10142303B2 (en) * 2015-07-07 2018-11-27 Qualcomm Incorporated Separation of software modules by controlled encryption key management
CN106982119A (zh) * 2017-03-07 2017-07-25 记忆科技(深圳)有限公司 一种基于tf卡特征向量生成密钥的装置和tf卡
US10796026B2 (en) * 2017-04-25 2020-10-06 Wildfi Proprietary Limited Process and detachable device for using and managing encryption keys
CN108123800B (zh) * 2017-12-19 2021-06-15 腾讯科技(深圳)有限公司 密钥管理方法、装置、计算机设备及存储介质
JP6933182B2 (ja) * 2018-03-29 2021-09-08 沖電気工業株式会社 通信システムおよび通信方法
WO2020018644A1 (en) * 2018-07-17 2020-01-23 Canter Jeffrey B Flash memory device for storing sensitive information and other data
JP7435263B2 (ja) 2020-05-28 2024-02-21 Toppanホールディングス株式会社 通信システム、通信方法、及びプログラム
US11646878B2 (en) 2020-07-10 2023-05-09 International Business Machines Corporation Distributing encrypted data objects with encryption information as metadata

Family Cites Families (121)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4757468A (en) * 1982-09-22 1988-07-12 Intel Corporation Authenticated read-only memory
US4760526A (en) 1985-05-22 1988-07-26 Hitachi, Ltd. Method for storing data into a file device and for data retrieval
JP2606827B2 (ja) 1986-07-24 1997-05-07 株式会社東芝 Icカードを用いた暗号装置
JPS6370634A (ja) 1986-09-12 1988-03-30 Toshiba Corp 暗号化鍵共有方式
FR2618002B1 (fr) 1987-07-10 1991-07-05 Schlumberger Ind Sa Procede et systeme d'authentification de cartes a memoire electronique
JPH03171231A (ja) 1989-11-30 1991-07-24 Toshiba Corp マイクロコンピュータシステム
JPH08204702A (ja) * 1995-01-30 1996-08-09 Nec Corp 暗号鍵管理装置
JPH10232918A (ja) 1997-02-19 1998-09-02 Canon Inc 画像ファイル及びそれを処理する画像処理装置及び画像処理方法、画像処理システム
JP2000122931A (ja) * 1998-10-15 2000-04-28 Toshiba Corp デジタル集積回路
JP4395302B2 (ja) 1999-04-27 2010-01-06 パナソニック株式会社 半導体メモリカード及びその制御方法
US6898706B1 (en) 1999-05-20 2005-05-24 Microsoft Corporation License-based cryptographic technique, particularly suited for use in a digital rights management system, for controlling access and use of bore resistant software objects in a client computer
JP4011792B2 (ja) 1999-06-16 2007-11-21 株式会社東芝 記録方法、再生方法、記録装置、再生装置及び記録媒体
EP1205072A1 (en) 1999-08-10 2002-05-15 Intel Corporation System and method for securely distributing content to groups of receivers
WO2001029670A2 (en) 1999-10-21 2001-04-26 Matsushita Electric Industrial Co., Ltd. A semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
JP4524829B2 (ja) * 2000-01-25 2010-08-18 ソニー株式会社 データ処理システム、記録デバイス、およびデータ処理方法、並びにプログラム提供媒体
US7270193B2 (en) 2000-02-14 2007-09-18 Kabushiki Kaisha Toshiba Method and system for distributing programs using tamper resistant processor
JP2001256113A (ja) 2000-03-13 2001-09-21 Toshiba Corp コンテンツ処理システムおよびコンテンツ保護方法
US7058806B2 (en) 2000-10-17 2006-06-06 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for secure leveled access control
US7111175B2 (en) * 2000-12-28 2006-09-19 Intel Corporation Method and apparatus for verifying the integrity of a media key block
JP2002229859A (ja) * 2001-01-31 2002-08-16 Toshiba Corp ディスク記憶装置及び同装置に適用する認証方法
US8020199B2 (en) 2001-02-14 2011-09-13 5th Fleet, L.L.C. Single sign-on system, method, and access device
JP2002251326A (ja) 2001-02-22 2002-09-06 Hitachi Ltd 耐タンパ計算機システム
US7987510B2 (en) 2001-03-28 2011-07-26 Rovi Solutions Corporation Self-protecting digital content
US20030037237A1 (en) 2001-04-09 2003-02-20 Jean-Paul Abgrall Systems and methods for computer device authentication
US20030105961A1 (en) 2001-11-30 2003-06-05 Peter Zatloukal Avoiding attachment of an ineligible smart interchangeable cover to an electronic device
US7240157B2 (en) 2001-09-26 2007-07-03 Ati Technologies, Inc. System for handling memory requests and method thereof
US7372964B2 (en) 2001-10-10 2008-05-13 Kabushiki Kaisha Toshiba Method and apparatus for recording information including secret information and method and apparatus for reproduction thereof
JP2003143128A (ja) 2001-11-05 2003-05-16 Open Loop:Kk 通信システム及び通信方法
US20030154355A1 (en) 2002-01-24 2003-08-14 Xtec, Incorporated Methods and apparatus for providing a memory challenge and response
US7549147B2 (en) * 2002-04-15 2009-06-16 Core Sdi, Incorporated Security framework for protecting rights in computer software
JP3754004B2 (ja) 2002-05-20 2006-03-08 システムニーズ株式会社 データ更新方法
JP4168679B2 (ja) 2002-06-26 2008-10-22 ソニー株式会社 コンテンツ利用管理システム、コンテンツを利用し又は提供する情報処理装置又は情報処理方法、並びにコンピュータ・プログラム
FR2845222B1 (fr) 2002-09-26 2004-11-19 Gemplus Card Int Identification d'un terminal aupres d'un serveur
US7412053B1 (en) 2002-10-10 2008-08-12 Silicon Image, Inc. Cryptographic device with stored key data and method for using stored key data to perform an authentication exchange or self test
JP2004362532A (ja) 2002-10-25 2004-12-24 Matsushita Electric Ind Co Ltd 透かし挿入装置および透かし取出装置
JP2004220317A (ja) * 2003-01-15 2004-08-05 Sony Corp 相互認証方法、プログラム、記録媒体、信号処理システム、再生装置および情報処理装置
US6950379B2 (en) * 2003-03-28 2005-09-27 Mediatek Inc. Burst cutting area extraction method and device
KR101081729B1 (ko) 2003-07-07 2011-11-08 로비 솔루션스 코포레이션 저작권 침해를 제어하고 쌍방향 컨텐츠를 인에이블시키기 위한 재프로그램가능한 보안
JP2005039480A (ja) 2003-07-18 2005-02-10 Toshiba Corp コンテンツ記録方法、記録媒体、コンテンツ記録装置
CN1871568B (zh) 2003-08-26 2010-04-28 松下电器产业株式会社 程序执行设备
US7484090B2 (en) 2003-10-10 2009-01-27 Panasonic Corporation Encryption apparatus, decryption apparatus, secret key generation apparatus, and copyright protection system
JP2005122402A (ja) 2003-10-15 2005-05-12 Systemneeds Inc Icカードシステム
JP4102290B2 (ja) 2003-11-11 2008-06-18 株式会社東芝 情報処理装置
EP1709510A1 (en) 2004-01-22 2006-10-11 Koninklijke Philips Electronics N.V. Method of authorizing access to content
TWI266190B (en) 2004-02-10 2006-11-11 Yizai Internat Corp File access controlling method and file access controlling system for digital rights management
US7406598B2 (en) 2004-02-17 2008-07-29 Vixs Systems Inc. Method and system for secure content distribution
JP4572669B2 (ja) 2004-03-31 2010-11-04 セイコーエプソン株式会社 レイアウトルール生成システム、レイアウトシステム及びレイアウトルール生成方法並びにレイアウトルール生成プログラム
US8607299B2 (en) 2004-04-27 2013-12-10 Microsoft Corporation Method and system for enforcing a security policy via a security virtual machine
JP4686138B2 (ja) * 2004-05-26 2011-05-18 株式会社東芝 記憶媒体変換方法、プログラム及び機器
JP4660123B2 (ja) 2004-06-16 2011-03-30 株式会社東芝 記憶媒体処理方法、データ処理装置及び記憶媒体処理プログラム
US7624269B2 (en) * 2004-07-09 2009-11-24 Voltage Security, Inc. Secure messaging system with derived keys
JP2006033326A (ja) 2004-07-15 2006-02-02 Toshiba Corp 記憶媒体処理方法、記憶媒体処理装置及びプログラム
JP2006048464A (ja) * 2004-08-06 2006-02-16 Toshiba Corp コンテンツデータ配信システム、コンテンツデータ配信方法及商品販売方法
US8260259B2 (en) * 2004-09-08 2012-09-04 Qualcomm Incorporated Mutual authentication with modified message authentication code
JP2006085045A (ja) 2004-09-17 2006-03-30 Sony Corp 情報処理装置および方法、記録媒体、プログラム、並びに情報処理システム
JP3814620B2 (ja) 2004-10-15 2006-08-30 株式会社東芝 情報処理装置および情報処理方法
TWI277870B (en) * 2004-11-22 2007-04-01 Toshiba Corp Copyright management method, information recording/reproducing method and device, and information recording medium and method of manufacturing the medium
JP4634399B2 (ja) 2004-12-14 2011-02-16 パナソニック株式会社 管理サーバ装置、管理方法及び管理プログラム
JP2006172147A (ja) 2004-12-16 2006-06-29 Matsushita Electric Ind Co Ltd コンテンツ保護方法及びその方法を用いた情報記録再生装置
US20100131729A1 (en) 2004-12-21 2010-05-27 Koninklijke Philips Electronics N.V. Integrated circuit with improved device security
US7971070B2 (en) * 2005-01-11 2011-06-28 International Business Machines Corporation Read/write media key block
EP1847995A4 (en) * 2005-02-07 2009-11-11 Panasonic Corp RECORDING DEVICE, PLAYING DEVICE, INTEGRATED CIRCUIT AND CONTROL PROGRAM
US7712131B1 (en) 2005-02-09 2010-05-04 David Lethe Method and apparatus for storage and use of diagnostic software using removeable secure solid-state memory
US8194859B2 (en) 2005-09-01 2012-06-05 Qualcomm Incorporated Efficient key hierarchy for delivery of multimedia content
US20070074050A1 (en) 2005-09-14 2007-03-29 Noam Camiel System and method for software and data copy protection
JP5034227B2 (ja) 2005-11-29 2012-09-26 ソニー株式会社 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
US8281386B2 (en) 2005-12-21 2012-10-02 Panasonic Corporation Systems and methods for automatic secret generation and distribution for secure systems
JP4655951B2 (ja) 2006-02-06 2011-03-23 ソニー株式会社 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
CN101479984B (zh) 2006-04-25 2011-06-08 斯蒂芬·L.·博伦 用于身份管理、验证服务器、数据安全和防止中间人攻击的动态分发密钥系统和方法
WO2008007305A2 (en) 2006-07-12 2008-01-17 Koninklijke Philips Electronics N.V. Method and system for obfuscating a gryptographic function
JP2008022367A (ja) 2006-07-13 2008-01-31 Toshiba Corp 暗号鍵情報保持方法および暗号鍵情報処理装置
JP2008035397A (ja) 2006-07-31 2008-02-14 Toshiba Corp 暗号情報処理方法および暗号情報処理装置
JP2008052578A (ja) 2006-08-25 2008-03-06 Seiko Epson Corp アクセス制御装置、画像表示装置及びプログラム
CN100555939C (zh) 2006-09-20 2009-10-28 北京飞天诚信科技有限公司 一种基于网络的软件保护方法
US20090249492A1 (en) 2006-09-21 2009-10-01 Hans Martin Boesgaard Sorensen Fabrication of computer executable program files from source code
JP4882636B2 (ja) 2006-09-27 2012-02-22 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
KR101373793B1 (ko) 2006-10-04 2014-03-13 마벨 월드 트레이드 리미티드 플래시 메모리 제어 인터페이스
US8520850B2 (en) 2006-10-20 2013-08-27 Time Warner Cable Enterprises Llc Downloadable security and protection methods and apparatus
JP4991320B2 (ja) 2007-01-12 2012-08-01 株式会社東芝 ホスト装置およびメモリシステム
US8290146B2 (en) * 2007-01-19 2012-10-16 Mitsubishi Electric Corporation Ciphertext generating apparatus, cryptographic communication system, and group parameter generating apparatus
US20080229371A1 (en) 2007-02-22 2008-09-18 Mick Colin K Digital multimedia network including method and apparatus for high speed user download of digital files
US8261130B2 (en) * 2007-03-02 2012-09-04 Infineon Technologies Ag Program code trace signature
US9767319B2 (en) 2007-04-17 2017-09-19 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and apparatus of secure authentication for system on chip (SoC)
JP2008269088A (ja) 2007-04-17 2008-11-06 Toshiba Corp プログラム情報提供システム、プログラム情報提供方法、プログラム情報提供方法に用いられる記録媒体
US8381062B1 (en) * 2007-05-03 2013-02-19 Emc Corporation Proof of retrievability for archived files
JP4687703B2 (ja) 2007-10-02 2011-05-25 ソニー株式会社 記録システム、情報処理装置、記憶装置、記録方法及びプログラム
JP2009100394A (ja) * 2007-10-19 2009-05-07 Sony Corp 情報処理装置および方法、記録媒体、プログラム、並びに情報処理システム
JP2009105566A (ja) 2007-10-22 2009-05-14 Sky Kk 配布管理装置及び配布管理プログラム
US8185752B2 (en) * 2007-12-27 2012-05-22 Verizon Patent And Licensing Inc. Method and system for providing data field encryption and storage
US8677144B2 (en) 2008-02-25 2014-03-18 Cavium, Inc. Secure software and hardware association technique
JP5248153B2 (ja) 2008-03-14 2013-07-31 株式会社東芝 情報処理装置、方法及びプログラム
US20090292931A1 (en) * 2008-05-24 2009-11-26 Via Technology, Inc Apparatus and method for isolating a secure execution mode in a microprocessor
JP2010021888A (ja) 2008-07-11 2010-01-28 Toshiba Corp 通信装置、鍵サーバ及び管理サーバ
JP4620146B2 (ja) * 2008-07-18 2011-01-26 株式会社東芝 情報処理装置及び認証方法
CN101874248B (zh) 2008-09-24 2015-04-29 松下电器产业株式会社 记录再现系统、记录媒体装置及记录再现装置
US8868925B2 (en) 2008-12-09 2014-10-21 Nvidia Corporation Method and apparatus for the secure processing of confidential content within a virtual machine of a processor
JP4799626B2 (ja) 2009-02-04 2011-10-26 ソニーオプティアーク株式会社 情報処理装置、および情報処理方法、並びにプログラム
JP2010268417A (ja) 2009-04-16 2010-11-25 Toshiba Corp 記録装置及びコンテンツデータ再生システム
JP2010267240A (ja) 2009-04-16 2010-11-25 Toshiba Corp 記録装置
JP2010267540A (ja) 2009-05-15 2010-11-25 Panasonic Corp 非水電解質二次電池
JP5369916B2 (ja) 2009-06-11 2013-12-18 ソニー株式会社 カード管理装置およびカード管理システム
JP5178839B2 (ja) * 2009-11-27 2013-04-10 株式会社東芝 メモリチップ
US8972745B2 (en) * 2009-12-15 2015-03-03 International Business Machines Corporation Secure data handling in a computer system
WO2011112393A2 (en) 2010-03-09 2011-09-15 Visa International Service Association System and method including security parameters used for generation of verification value
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
JP5604929B2 (ja) 2010-03-29 2014-10-15 ソニー株式会社 メモリ装置およびメモリシステム
JP5552870B2 (ja) 2010-04-01 2014-07-16 ソニー株式会社 メモリ装置、ホスト装置、およびメモリシステム
US8488785B2 (en) * 2010-04-08 2013-07-16 Oceansblue Systems, Llc Secure storage and retrieval of confidential information
US20110276490A1 (en) 2010-05-07 2011-11-10 Microsoft Corporation Security service level agreements with publicly verifiable proofs of compliance
JP2012014416A (ja) 2010-06-30 2012-01-19 Toshiba Corp 記録装置、書き込み装置、読み出し装置、及び記録装置の制御方法
US8924705B1 (en) 2010-09-24 2014-12-30 Revera Systems Method and detection system for detecting encrypted peer-to-peer (EP2P) sessions associated with a particular EP2P network
US20120137137A1 (en) 2010-11-30 2012-05-31 Brickell Ernest F Method and apparatus for key provisioning of hardware devices
US8296477B1 (en) * 2011-04-22 2012-10-23 Symantec Corporation Secure data transfer using legitimate QR codes wherein a warning message is given to the user if data transfer is malicious
JP5214782B2 (ja) 2011-08-31 2013-06-19 株式会社東芝 メモリ装置、ストレージメディア、ホスト装置、及びシステム
US8661527B2 (en) 2011-08-31 2014-02-25 Kabushiki Kaisha Toshiba Authenticator, authenticatee and authentication method
JP5275432B2 (ja) 2011-11-11 2013-08-28 株式会社東芝 ストレージメディア、ホスト装置、メモリ装置、及びシステム
JP5100884B1 (ja) * 2011-12-02 2012-12-19 株式会社東芝 メモリ装置
JP5112555B1 (ja) * 2011-12-02 2013-01-09 株式会社東芝 メモリカード、ストレージメディア、及びコントローラ
JP5204290B1 (ja) * 2011-12-02 2013-06-05 株式会社東芝 ホスト装置、システム、及び装置
KR101859646B1 (ko) 2011-12-16 2018-05-18 삼성전자주식회사 보안 데이터를 보호하는 메모리 장치 및 보안 데이터를 이용한 데이터 보호 방법
US20140237258A1 (en) * 2013-02-20 2014-08-21 Kabushiki Kaisha Toshiba Device and authentication method therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180062427A (ko) * 2016-11-30 2018-06-08 주식회사 베프스 하드웨어 보안 모듈 및 이를 이용한 하드웨어 보안 디바이스

Also Published As

Publication number Publication date
US20150046720A1 (en) 2015-02-12
US20130185562A1 (en) 2013-07-18
KR101546204B1 (ko) 2015-08-20
WO2013108425A1 (en) 2013-07-25
EP2805445B1 (en) 2016-03-30
EP2805445A1 (en) 2014-11-26
US9160531B2 (en) 2015-10-13
CN103907308A (zh) 2014-07-02
JP2013145998A (ja) 2013-07-25
JP5275482B2 (ja) 2013-08-28
US8667286B2 (en) 2014-03-04
US20140108808A1 (en) 2014-04-17
US8990571B2 (en) 2015-03-24

Similar Documents

Publication Publication Date Title
KR101546204B1 (ko) 호스트 디바이스, 반도체 메모리 디바이스, 및 인증 방법
US10361851B2 (en) Authenticator, authenticatee and authentication method
US9100187B2 (en) Authenticator
EP2786521B1 (en) Device and authentication method therefor
KR101536086B1 (ko) 인증장치, 피인증장치, 및 인증 방법
EP2786523B1 (en) Semiconductor memory device
US20150326397A1 (en) Host device and authentication method for host device
EP2858006A1 (en) Memory device and memory system
EP2786522A1 (en) Semiconductor storage device
EP2786520B1 (en) Memory
US20140237258A1 (en) Device and authentication method therefor
US20140237245A1 (en) Device and authentication method therefor

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: 20180718

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190718

Year of fee payment: 5