KR100746880B1 - 정보 처리 시스템, 정보 처리 방법 및 정보 기록 매체와프로그램 제공 매체 - Google Patents

정보 처리 시스템, 정보 처리 방법 및 정보 기록 매체와프로그램 제공 매체 Download PDF

Info

Publication number
KR100746880B1
KR100746880B1 KR1020017015690A KR20017015690A KR100746880B1 KR 100746880 B1 KR100746880 B1 KR 100746880B1 KR 1020017015690 A KR1020017015690 A KR 1020017015690A KR 20017015690 A KR20017015690 A KR 20017015690A KR 100746880 B1 KR100746880 B1 KR 100746880B1
Authority
KR
South Korea
Prior art keywords
key
node
data
content
encrypted
Prior art date
Application number
KR1020017015690A
Other languages
English (en)
Other versions
KR20020026284A (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 KR20020026284A publication Critical patent/KR20020026284A/ko
Application granted granted Critical
Publication of KR100746880B1 publication Critical patent/KR100746880B1/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/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
    • H04L9/0836Key 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 using tree structure or hierarchical structure
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing
    • G06F21/1076Revocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/109Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by using specially-adapted hardware at the client
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00536Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein encrypted content data is subjected to a further, iterated encryption, e.g. interwoven encryption
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2109Game systems
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Storage Device Security (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Multi-Process Working Machines And Systems (AREA)

Abstract

트리 구조의 암호화 키 구성에 의해 콘텐츠 키, 인증 키, 프로그램 데이터 등을 유효화 키 블록(EKB)과 함께 송신한다. EKB는 트리의 리프를 구성하는 디바이스에 의해 리프 및 한정된 노드 키를 보유시킨 구성이며, 특정한 노드에 의해 특정된 그룹에 특정한 유효화 키 블록(EBK)을 생성하여 배포하여, 갱신 가능 디바이스를 한정할 수 있다. 그룹에 속하지 않는 디바이스는 복호할 수 없어, 키 등의 배신 안전성이 확보된다. 즉, 트리(나무) 구조의 암호화 키 구성에 의해 각종 키 또는 데이터의 배포를 실행하여 효율적이고 안전한 데이터 배신을 가능하게 하는 정보 처리 시스템 및 방법을 실현한다.
트리 구조, 노드, 리프, 태그, 인터그리티, 엔티티, 암호화 키, 유효화 키, 리보크, 콘텐츠

Description

정보 처리 시스템, 정보 처리 방법 및 정보 기록 매체와 프로그램 제공 매체{INFORMATION PROCESSING SYSTEM AND METHOD, RECORDING MEDIUM, AND PROGRAM PROVIDING MEDIUM}
본 발명은 정보 처리 시스템, 정보 처리 방법, 및 정보 기록 매체와 프로그램 제공 매체에 관한 것으로, 특히, 암호 처리를 수반하는 시스템에서의 암호 처리 키를 배신(配信, distributing)하는 시스템 및 방법에 관한 것이다. 특히, 트리 구조의 계층적 키 배신 방식을 이용함으로써 메시지량을 적은 양으로 억제하여, 예를 들면 콘텐츠 키 배신, 혹은 각종 키의 갱신 시의 데이터 배신의 부하를 경감하고, 또한 데이터의 안전성을 유지하는 것을 가능하게 하는 정보 처리 시스템, 정보 처리 방법, 및 정보 기록 매체와 프로그램 제공 매체에 관한 것이다.
최근, 게임 프로그램, 음성 데이터, 화상 데이터 등, 다양한 소프트웨어 데이터(이하, 이들을 콘텐츠(Content)라 함)를, 인터넷 등의 네트워크, 혹은 DVD, CD 등의 유통 가능한 기억 매체를 통한 유통이 활발히 이루어지고 있다. 이들 유통 콘텐츠는 사용자가 소유하는 PC(Personal Computer), 게임 기기에 의해 데이터 수신, 혹은 기억 매체의 장착이 이루어져 재생되거나, 혹은 PC 등에 부속하는 기록 재생 기기 내의 기록 디바이스, 예를 들면 메모리 카드, 하드디스크 등에 저장되어 저장 매체로부터의 새로운 재생에 의해 이용된다.
비디오 게임 기기, PC 등의 정보 기기에는, 유통 콘텐츠를 네트워크로부터 수신하기 위해, 혹은 DVD, CD 등에 액세스하기 위한 인터페이스를 구비하고, 콘텐츠의 재생에 필요해지는 제어 수단, 프로그램, 데이터의 메모리 영역으로서 사용되는 RAM, ROM 등을 더 구비한다.
음악 데이터, 화상 데이터, 혹은 프로그램 등의 다양한 콘텐츠는 재생 기기로서 이용되는 게임 기기, PC 등의 정보 기기 본체로부터의 사용자 지시, 혹은 접속된 입력 수단을 통한 사용자의 지시에 의해 기억 매체로부터 호출되고, 정보 기기 본체, 혹은 접속된 디스플레이, 스피커 등을 통해 재생된다.
게임 프로그램, 음악 데이터, 화상 데이터 등, 많은 소프트웨어 콘텐츠는 일반적으로 그 작성자, 판매자에게 반포권 등이 보유되어 있다. 따라서, 이들 콘텐츠의 배포에 있어서는, 일정한 이용 제한, 즉, 정규의 사용자에 대해서만, 소프트웨어의 사용을 허락하고, 허가가 없는 복제 등이 행해지지 않도록 하는, 즉 보안성을 고려한 구성을 취하는 것이 일반적으로 되어 있다.
사용자에 대한 이용 제한을 실현하는 하나의 수법이 배포 콘텐츠의 암호화 처리이다. 즉, 예를 들면 인터넷 등을 통해 암호화된 음성 데이터, 화상 데이터, 게임 프로그램 등의 각종 콘텐츠를 배포함과 함께 정규 사용자라고 확인된 자에 대해서만, 배포된 암호화 콘텐츠를 복호하는 수단, 즉 복호 키를 부여하는 구성이다.
암호화 데이터는 소정의 수속에 의한 복호화 처리에 의해 이용 가능한 복호 데이터(평문(平文))로 복원할 수 있다. 이러한 정보의 암호화 처리에 암호화 키를 이용하고, 복호화 처리에 복호화 키를 이용하는 데이터 암호화, 복호화 방법은 종래부터 잘 알려져 있다.
암호화 키와 복호화 키를 이용하는 데이터 암호화/복호화 방법의 형태에는 여러 종류가 있지만, 그 하나의 예로서 소위 공통 키 암호화 방식이라 불리고 있는 방식이 있다. 공통 키 암호화 방식은 데이터의 암호화 처리에 이용하는 암호화 키와 데이터의 복호화에 이용하는 복호화 키를 공통의 것으로 하여, 정규의 사용자에게 이들 암호화 처리, 복호화에 이용하는 공통 키를 부여하여, 키를 갖고 있지 않은 부정 사용자에 의한 데이터 액세스를 배제하는 것이다. 이 방식의 대표적인 방식으로 DES(데이터 암호 표준: Data encryption standard)가 있다.
상술한 암호화 처리, 복호화에 이용되는 암호화 키, 복호화 키는, 예를 들면 임의의 패스워드 등에 기초하여 해시 함수 등의 일방향성 함수를 적용하여 얻을 수 있다. 일방향성 함수란, 그 출력으로부터 반대로 입력을 구하는 것은 매우 곤란해지는 함수이다. 예를 들면 사용자가 결정한 패스워드를 입력으로 하여 일방향성 함수를 적용하여, 그 출력에 기초하여 암호화 키, 복호화 키를 생성하는 것이다. 이와 같이 하여 얻어진 암호화 키, 복호화 키로부터, 반대로 그 오리지널 데이터인 패스워드를 구하는 것은 실질적으로 불가능해진다.
또한, 암호화할 때 사용하는 암호화 키에 의한 처리와, 복호할 때 사용하는 복호화 키의 처리를 다른 알고리즘으로 한 방식이 소위 공개 키 암호화 방식이라 불리는 방식이다. 공개 키 암호화 방식은 불특정한 사용자가 사용 가능한 공개 키를 사용하는 방법이며, 특정 개인에 대한 암호화 문서를, 그 특정 개인이 발행한 공개 키를 이용하여 암호화 처리를 행한다. 공개 키에 의해 암호화된 문서는, 그 암호화 처리에 사용된 공개 키에 대응하는 비밀 키에 의해서만 복호 처리가 가능해진다. 비밀 키는 공개 키를 발행한 개인만이 소유하기 때문에, 그 공개 키에 의해 암호화된 문서는 비밀 키를 갖는 개인만이 복호할 수 있다. 공개 키 암호화 방식의 대표적인 것으로는 RSA(Rivest-Shamir-Adleman) 암호가 있다. 이러한 암호화 방식을 이용함으로써, 암호화 콘텐츠를 정규 사용자에 대해서만 복호 가능하게 하는 시스템이 가능해진다.
상기한 바와 같은 콘텐츠 배신 시스템에서는, 콘텐츠를 암호화하여 사용자에게 네트워크, 혹은 DVD, CD 등의 기록 매체에 저장하여 제공하고, 암호화 콘텐츠를 복호하는 콘텐츠 키를 정당한 사용자에게만 제공하는 구성이 많이 채용되어 있다. 콘텐츠 키 자체의 부정한 복사 등을 방지하기 위한 콘텐츠 키를 암호화하여 정당한 사용자에게 제공하고, 정당한 사용자만이 갖는 복호 키를 이용하여 암호화 콘텐츠 키를 복호하여 콘텐츠 키를 사용 가능하게 하는 구성이 제안되어 있다.
정당한 사용자인지에 관한 여부의 판정은, 일반적으로는, 예를 들면 콘텐츠의 송신자인 콘텐츠 프로바이더와 사용자 디바이스 사이에서, 콘텐츠, 혹은 콘텐츠 키의 배신 전에 인증 처리를 실행함으로써 행한다. 일반적인 인증 처리에서는, 상대의 확인을 행함과 함께, 그 통신에서만 유효한 세션 키를 생성하여, 인증이 성립된 경우에, 생성된 세션 키를 이용하여 데이터, 예를 들면 콘텐츠 혹은 콘텐츠 키를 암호화하여 통신을 행한다. 인증 방식으로는, 공통 키 암호 방식을 이용한 상호 인증과, 공개 키 방식을 사용한 인증 방식이 있지만, 공통 키를 사용한 인증에 서는 시스템 와이드로 공통의 키가 필요하게 되어, 갱신 처리 시 등에 있어서 불편하다. 또한, 공개 키 방식에서는 계산 부하가 크고 또한 필요한 메모리량도 커져서, 각 디바이스에 이와 같은 처리 수단을 설치하는 것은 바람직한 구성이라고는 말할 수 없다.
〈발명의 개시〉
본 발명에서는, 상술한 바와 같은 데이터의 송신자, 수신자 사이의 상호 인증 처리에 의하지 않고, 정당한 사용자에 대해서만, 안전하게 데이터를 송신하는 것을 가능하게 하는 정보 처리 시스템, 정보 처리 방법, 및 정보 기록 매체와 프로그램 제공 매체를 제공하는 것을 목적으로 한다.
본 발명에 따른 정보 처리 시스템은, 1 이상의 선택된 디바이스에서만 이용 가능한 암호화 메시지 데이터를 배신하는 정보 처리 시스템이다. 개개의 디바이스는 복수의 상이한 디바이스를 리프로 한 계층 트리 구조에서의 각 노드에 고유의 노드 키와 각 디바이스 고유의 리프 키의 상이한 키 세트를 각각 보유함과 함께, 디바이스에 대하여 배신되는 암호화 메시지 데이터에 대한 복호 처리를 키 세트를 사용하여 실행하는 암호 처리 수단을 포함한다. 암호화 메시지 데이터를 배신하는 메시지 데이터 배신 수단은, 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 갱신 노드 키를 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)을 생성함과 함께, 갱신 노드 키에 의해 암호화한 메시지 데이터를 생성하여 배신한다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 디바이스에서의 암호 처리 수단은, 유효화 키 블록(EKB)의 처리에 의해 갱신 노드 키를 취득하고, 취득된 갱신 노드 키에 의해 암호화 메시지 데이터의 복호를 실행한다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 메시지 데이터는 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키이다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 메시지 데이터는 인증 처리에 이용되는 인증 키이다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 메시지 데이터는 콘텐츠의 인터그리티 체크값(ICV) 생성 키이다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 메시지 데이터는 인증 처리에 이용되는 인증 키이다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 메시지 데이터는 프로그램 코드이다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 메시지 데이터 배신 수단은 유효화 키 블록(EKB)과, 메시지 데이터로서 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키와, 콘텐츠 키로 암호화한 암호화 콘텐츠에 의해 구성되는 암호화 데이터를 배신하는 구성이다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 메시지 데이터 배신 수단과 디바이스는 각각 인증 처리를 실행하는 인증 처리 수단을 포함한다. 메시지 데이터의 배신은, 메시지 데이터 배신 수단과 디바이스 사이에서의 인증 처리가 성립한 것을 조건으로 하여 행해진다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 메시지 데이터 배신 수단과 디바이스 사이에는 다른 중간 디바이스가 개재된다. 메시지 데이터 배신 수단은 메시지 데이터를 배신할 목적이 되는 목적 디바이스에만 복호 가능한 유효화 키 블록(EKB)과 암호화 메시지 데이터를 생성하여 배신한다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 계층 트리 구조는 하나의 노드를 정점 노드로 하고, 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹에 의해 구성되는 카테고리 그룹을 포함한다. 카테고리 그룹은 디바이스 종류, 서비스 종류, 관리 수단 종류 등의 유일한 정의된 카테고리에 속하는 디바이스의 집합으로서 구성되어 있다.
또한, 본 발명의 정보 처리 시스템의 일 실시 형태에서, 카테고리 그룹은 또한 계층 트리 구조의 하위단에 1 이상의 서브 카테고리를 포함한다. 서브 카테고리 그룹은 디바이스 종류, 서비스 종류, 관리 수단 종류 등의 유일하게 정의된 서브 카테고리에 속하는 디바이스의 집합으로서 구성되어 있다.
본 발명에 따른 정보 처리 방법은, 1 이상의 선택된 디바이스에서만 이용 가능한 암호화 메시지 데이터를 메시지 데이터 배신 수단으로부터 배신하는 정보 처리 방법이며, 복수의 상이한 디바이스를 리프로 한 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 갱신 노드 키를 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)을 생성함과 함께, 갱신 노드 키에 의해 암호화한 메시지 데이터를 생성하여 디바이스에 대하여 배신하는 메시지 데이터 배신 단계와, 계층 트리 구조에서의 각 노드에 고유의 노드 키와 각 디바이스 고유의 리프 키의 상이한 키 세트를 각각 보유하는 디바이스에서, 암호화 메시지 데이터에 대한 복호 처리를 키 세트를 사용하여 실행하는 복호 처리 단계를 포함한다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 복호 처리 단계는 유효화 키 블록(EKB)의 처리에 의해, 갱신 노드 키를 취득하는 갱신 노드 키 취득 단계와, 갱신 노드 키에 의해 암호화 메시지 데이터의 복호를 실행하는 메시지 데이터 복호 단계를 포함한다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 메시지 데이터는 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키이다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 메시지 데이터는 인증 처리에 이용되는 인증 키이다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 메시지 데이터는 콘텐츠의 인터그리티 체크값(ICV) 생성 키이다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 메시지 데이터는 인증 처리에 이용되는 인증 키이다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 메시지 데이터는 프로그램 코드이다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 메시지 데이터 배신 수단은 유효화 키 블록(EKB)과, 메시지 데이터로서 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키와 콘텐츠 키로 암호화한 암호화 콘텐츠에 의해 구성되는 암호화 데이터를 배신한다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 메시지 데이터 배신 수단과 디바이스는 상호간의 인증 처리를 실행하고, 메시지 데이터의 배신은 메시지 데이터 배신 수단과 디바이스 사이에서의 인증 처리가 성립한 것을 조건으로 하여 배신한다.
또한, 본 발명의 정보 처리 방법의 일 실시 형태에서, 메시지 데이터 배신 수단과 디바이스 사이에는 다른 중간 디바이스가 개재된다. 메시지 데이터 배신 수단은 메시지 데이터를 배신할 목적이 되는 목적 디바이스에만 복호 가능한 유효화 키 블록(EKB)과 암호화 메시지 데이터를 생성하여 배신한다.
본 발명에 따른 정보 기록 매체는, 데이터를 저장한 정보 기록 매체에 있어서, 복수의 상이한 디바이스를 리프로 한 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 갱신 노드 키를 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)과, 갱신 노드 키에 의해 암호화한 메시지 데이터를 저장하고 있다.
또한, 본 발명의 정보 기록 매체의 일 실시 형태에서, 메시지 데이터는 콘텐츠의 복호에 이용하는 콘텐츠 키이다. 정보 기록 매체는, 또한, 콘텐츠 키에 의해서 암호화된 암호화 콘텐츠를 저장하고 있다.
또한, 본 발명의 정보 기록 매체의 일 실시 형태에서, 콘텐츠와 콘텐츠의 대응하는 콘텐츠 키를 취득하기 위해 사용되는 유효화 키 블록(EKB)을 대응시킨 대응 데이터를 저장하고 있다.
또한, 본 발명의 정보 기록 매체의 일 실시 형태에서, 콘텐츠의 인터그리티 체크값(ICV) 데이터를 저장하고 있다.
본 발명에 따른 프로그램 제공 매체는 암호화 콘텐츠 데이터의 복호 처리를 컴퓨터 시스템 상에서 실행시키는 컴퓨터 프로그램을 제공하는 프로그램 제공 매체이다. 컴퓨터 프로그램은 복수의 상이한 디바이스를 리프로 한 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 정점 노드의 하위에 연결되는 노드 및 리프에 의해서 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 갱신 노드 키를 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)의 복호 처리에 의해, 갱신 노드 키를 취득하는 갱신 노드 키 취득 단계와, 갱신 노드 키에 의한 복호 처리를 실행하고, 암호화 콘텐츠의 복호 키로서 사용하는 콘텐츠 키를 취득하는 단계와, 콘텐츠 키에 의해 암호화 콘텐츠의 복호를 실행하는 단계를 포함한다.
본 발명에서는, 트리(나무) 구조의 계층적 구조의 암호화 키 배신 구성을 이용함으로써, 키 갱신에 필요한 배신 메시지량을 적게 억제하고 있다. 즉, 각 기기를 n분개의 각 잎(리프)에 배치한 구성의 키 배신 방법을 이용하여, 기록 매체 혹은 통신 회선을 통해 콘텐츠 데이터의 암호 키인 콘텐츠 키 혹은 인증 처리에 이용하는 인증 키, 혹은 프로그램 코드 등을 유효화 키 블록과 함께 배신하는 구성으로 하고 있다. 이와 같이 함으로써, 정당한 디바이스만이 복호 가능한 데이터를 안전하게 배신하는 것이 가능해진다.
또, 본 발명에 따른 프로그램 제공 매체는, 예를 들면, 다양한 프로그램 코드를 실행 가능한 범용 컴퓨터 시스템에 대하여, 컴퓨터 프로그램을 컴퓨터 판독 가능한 형식으로 제공하는 매체이다. 매체는 CD나 FD, MO 등의 기록 매체, 혹은, 네트워크 등의 전송 매체 등으로서 그 형태는 특별히 한정되지 않는다.
이러한 프로그램 제공 매체는, 컴퓨터 시스템 상에서 소정의 컴퓨터 프로그램의 기능을 실현하기 위한, 컴퓨터 프로그램과 제공 매체와의 구조 상 또는 기능 상의 협동적 관계를 정의한 것이다. 다시 말하면, 제공 매체를 통해 컴퓨터 프로그램을 컴퓨터 시스템에 인스톨함으로써, 컴퓨터 시스템 상에서는 협동적 작용이 발휘되어, 본 발명의 다른 측면과 마찬가지의 작용 효과를 얻을 수 있는 것이다.
본 발명의 또 다른 목적, 특징이나 이점은, 후술하는 본 발명의 실시예나 첨부하는 도면에 기초한 보다 상세한 설명에 의해 명백하게 될 것이다.
도 1은 본 발명의 정보 처리 시스템의 구성예를 설명하는 도면.
도 2는 본 발명의 정보 처리 시스템에서 적용 가능한 기록 재생 장치의 구성예를 나타내는 블록도.
도 3은 본 발명의 정보 처리 시스템에서의 각종 키, 데이터의 암호화 처리에 대하여 설명하는 트리 구성도.
도 4의 (a) 및 도 4의 (b)는 본 발명의 정보 처리 시스템에서의 각종 키, 데 이터의 배포에 사용되는 유효화 키 블록(EKB)의 예를 나타내는 도면.
도 5는 본 발명의 정보 처리 시스템에서의 콘텐츠 키의 유효화 키 블록(EKB)을 사용한 배포예와 복호 처리예를 나타내는 도면.
도 6은 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)의 포맷예를 나타내는 도면.
도 7의 (a) 내지 도 7의 (c)는 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)의 태그의 구성을 설명하는 도면.
도 8의 (a) 및 도 8의 (b)는 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)과, 콘텐츠 키, 콘텐츠를 함께 배신하는 데이터 구성예를 나타내는 도면.
도 9는 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)과, 콘텐츠 키, 콘텐츠를 함께 배신한 경우의 디바이스에서의 처리예를 나타내는 도면.
도 10은 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB) 과 콘텐츠를 기록 매체에 저장한 경우의 대응에 대하여 설명하는 도면.
도 11의 (a) 및 도 11의 (b)는 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)과, 콘텐츠 키를 송부하는 처리를 종래의 송부 처리와 비교한 도면.
도 12는 본 발명의 정보 처리 시스템에서 적용 가능한 공통 키 암호 방식에 의한 인증 처리 시퀀스를 나타내는 도면.
도 13은 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)과, 인증 키를 함께 배신하는 데이터 구성과, 디바이스에서의 처리예를 나타내는 도면(예 1).
도 14는 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)과, 인증 키 를 함께 배신하는 데이터 구성과, 디바이스에서의 처리예를 나타내는 도면(예 2).
도 15는 본 발명의 정보 처리 시스템에서 적용 가능한 공개 키 암호 방식에 의한 인증 처리 시퀀스를 나타내는 도면.
도 16은 본 발명의 정보 처리 시스템에서 공개 키 암호 방식에 의한 인증 처리를 이용하여 유효화 키 블록(EKB)과, 콘텐츠 키를 함께 배신하는 처리를 나타내는 도면.
도 17은 본 발명의 정보 처리 시스템에 있어서 유효화 키 블록(EKB)과, 암호화 프로그램 데이터를 함께 배신하는 처리를 나타내는 도면.
도 18은 본 발명의 정보 처리 시스템에 있어서 적용 가능한 콘텐츠 인터그리티 체크값(ICV)의 생성에 사용하는 MAC 값 생성예를 나타내는 도면.
도 19는 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)과, ICV 생성 키를 함께 배신하는 데이터 구성과, 디바이스에서의 처리예를 나타내는 도면(예 1).
도 20은 본 발명의 정보 처리 시스템에서의 유효화 키 블록(EKB)과, ICV 생성 키를 함께 배신하는 데이터 구성과, 디바이스에서의 처리예를 나타내는 도면(예 2).
도 21의 (a) 및 도 21의 (b)는 본 발명의 정보 처리 시스템에서 적용 가능한 콘텐츠 인터그리티 체크값(ICV)을 미디어에 저장한 경우의 복사 방지 기능을 설명하는 도면.
도 22는 본 발명의 정보 처리 시스템에서 적용 가능한 콘텐츠 인터그리티 체 크값(ICV)을 콘텐츠 저장 매체와 별도로 관리하는 구성을 설명하는 도면.
도 23은 본 발명의 정보 처리 시스템에서의 계층 트리 구조의 카테고리 분류의 예를 설명하는 도면.
〈발명을 실시하기 위한 최량의 형태〉
[시스템 개요]
도 1에 본 발명의 데이터 처리 시스템이 적용 가능한 콘텐츠 배신 시스템예를 나타낸다. 콘텐츠의 배신측(10)은 콘텐츠 수신측(20)이 갖는 다양한 콘텐츠 재생 가능한 기기에 대하여 콘텐츠, 혹은 콘텐츠 키를 암호화하여 송신한다. 수신측(20)에서의 기기에서는 수신된 암호화 콘텐츠, 혹은 암호화 콘텐츠 키 등을 복호하여 콘텐츠 혹은 콘텐츠 키를 취득하고, 화상 데이터, 음성 데이터의 재생, 혹은 각종 프로그램의 실행 등을 행한다. 콘텐츠의 배신측(10)과 콘텐츠 수신측(20) 사이의 데이터 교환은 인터넷 등의 네트워크를 통해 혹은 DVD, CD 등의 유통 가능한 기억 매체를 통해 실행된다.
콘텐츠의 배신측(10)은 예를 들면, 소위 서버로서 구성되며, 하드디스크 드라이브 등의 정보 기억 수단이나 CPU 등의 정보 처리 장치를 갖는 기존의 퍼스널 컴퓨터로 구성된다. 콘텐츠의 배신측(10)은 후술하는 콘텐츠 프로바이더로서, 혹은 서비스 프로바이더나 어플리케이션 프로바이더가 동등한 기능을 갖고 있어도 된다. 콘텐츠의 배신측(10)의 데이터 배신 수단으로서는, 인터넷(11), 위성 방송(12), 전화 회선(13), DVD, CD 등의 미디어(14) 등이 있으며, 한편, 콘텐츠 수신측(20)의 디바이스로서는, 퍼스널 컴퓨터(PC: 21), 포터블 디바이스(PD: 22), 휴 대 전화, PDA(Personal Digital Assistants) 등의 휴대 기기(23), DVD, CD 플레이어 등의 기록 재생기(24), 게임 단말 등의 재생 전용기(25) 등이 있다. 이들 콘텐츠 수신측(20)의 각 디바이스는 콘텐츠 배신측(10)으로부터 제공된 콘텐츠를 네트워크 등의 통신 수단 혹은, 혹은 미디어(30)로부터 취득한다.
[디바이스 구성]
도 2에, 도 1에 도시한 콘텐츠 수신측(20)의 디바이스의 일례로서, 기록 재생 장치(100)의 구성 블록도를 나타낸다. 기록 재생 장치(100)는 입출력 I/F(Interface: 120), MPEG(Moving Picture Experts Group) 코덱(130), A/D, D/A 컨버터(141)를 구비한 입출력 I/F(Interface)(140), 암호 처리 수단(150), ROM(Read Only Memory: 160), CPU(Central Processing Unit: 170), 메모리(180), 기록 매체(195)의 드라이브(190)를 구비하고, 이들은 버스(110)에 의해 서로 접속되어 있다.
입출력 I/F(120)는 외부로부터 공급되는 화상, 음성, 프로그램 등의 각종 콘텐츠를 구성하는 디지털 신호를 수신하고, 버스(110) 상에 출력함과 함께 버스(110) 상의 디지털 신호를 수신하여, 외부로 출력한다. MPEG 코덱(130)은 버스(110)를 통해 공급되는 MPEG 부호화된 데이터를 MPEG 디코드하고, 입출력 I/F(140)로 출력함과 함께 입출력 I/F(140)로부터 공급되는 디지털 신호를 MPEG 인코드하여 버스(110) 상으로 출력한다. 입출력 I/F(140)는 A/D, D/A 컨버터(141)를 내장하고 있다. 입출력 I/F(140)는 외부로부터 공급되는 콘텐츠로서의 아날로그 신호를 수신하고, A/D, D/A 컨버터(141)로 A/D(Analog Digital) 변환함으로써, 디 지털 신호로서, MPEG 코덱(130)으로 출력함과 함께 MPEG 코덱(130)으로부터의 디지털 신호를 A/D, D/A 컨버터(141)로 D/A(Digital Analog) 변환함으로써 아날로그 신호로서, 외부로 출력한다.
암호 처리 수단(150)은, 예를 들면, 1칩의 LSI(Large Scale Integrated Curcuit)로 구성되며, 버스(110)를 통해 공급되는 콘텐츠로서의 디지털 신호의 암호화, 복호 처리, 혹은 인증 처리를 실행하고, 암호 데이터, 복호 데이터 등을 버스(110) 상으로 출력하는 구성을 갖는다. 또, 암호 처리 수단(150)은 1칩 LSI에 한하지 않고, 각종 소프트웨어 또는 하드웨어를 조합한 구성에 의해 실현하는 것도 가능하다. 소프트웨어 구성에 의한 처리 수단으로서의 구성에 대해서는 후단에서 설명한다.
ROM(160)은 기록 재생 장치에 의해 처리되는 프로그램 데이터를 저장한다. CPU(170)는 ROM(160), 메모리(180)에 기억된 프로그램을 실행함으로써 MPEG 코덱(130)이나 암호 처리 수단(150) 등을 제어한다. 메모리(180)는, 예를 들면, 불휘발성 메모리로서, CPU(170)가 실행하는 프로그램이나, CPU(170)의 동작 상 필요한 데이터, 또한 디바이스에 의해 실행되는 암호 처리에 사용되는 키 세트를 기억한다. 키 세트에 대해서는 후단에서 설명한다. 드라이브(190)는 디지털 데이터를 기록 재생 가능한 기록 매체(195)를 구동함으로써 기록 매체(195)로부터 디지털 데이터를 판독하고(재생하고), 버스(110) 상으로 출력함과 함께, 버스(110)를 통해 공급되는 디지털 데이터를 기록 매체(195)에 공급하여 기록시킨다. 기록 매체(195)는, 예를 들면, DVD, CD 등의 광 디스크, 광 자기 디스크, 자기 디스크, 자기 테이프, 혹은 RAM 등의 반도체 메모리 등의 디지털 데이터의 기억 가능한 매체이며, 본 실시 형태에서는 드라이브(190)에 대하여 착탈 가능한 구성으로 한다. 단, 기록 매체(195)는 기록 재생 장치(100)에 내장하는 구성으로 하여도 된다.
또, 도 2에 도시한 암호 처리 수단(150)은 하나의 원 칩 LSI로서 구성하여도 되며, 또한, 소프트웨어, 하드웨어를 조합한 구성에 의해 실현하는 구성으로 하여도 된다.
[키 배신 구성으로서의 트리(나무) 구조에 대하여]
다음에, 도 1에 도시한 콘텐츠 배신측(10)으로부터 콘텐츠 수신측(20)의 각 디바이스에 암호 데이터를 배신하는 경우에서의 각 디바이스에서의 암호 처리 키의 보유 구성 및 데이터 배신 구성을 도 3을 참조하여 설명한다.
도 3의 최하단에 나타내는 번호 0∼15가 콘텐츠 수신측(20)의 개개의 디바이스이다. 즉 도 3에 도시한 계층 트리(나무) 구조의 각 리프(리프: leaf)가 각각의 디바이스에 상당한다.
각 디바이스 0∼15는, 제조 시 혹은 출하 시, 혹은 그 후에, 도 3에 도시한 계층 트리(나무) 구조에서의, 자신의 리프로부터 루트에 이르기까지의 노드에 할당된 키(노드 키) 및 각 리프의 리프 키로 이루어지는 키 세트를 메모리에 저장한다. 도 3의 최하단에 나타내는 K0000∼K1111이 각 디바이스 0∼15에 각각 할당된 리프 키이며, 최상단의 KR(루트 키)로부터, 최하단으로부터 2번째의 절(節: 노드)에 기재된 키: KR∼K111을 노드 키로 한다.
도 3에 도시한 트리 구성에서, 예를 들면 디바이스 0은 리프 키 K0000과, 노 드 키: K000, K00, K0, KR을 소유한다. 디바이스(5)는 K0101, K010, K01, K0, KR을 소유한다. 디바이스(15)는 K1111, K111, K11, K1, KR을 소유한다. 또, 도 3의 트리에는 디바이스가 0∼15의 16개만 기재되고, 트리 구조도 4단 구성의 균형이 잡힌 좌우 대칭 구성으로서 나타내고 있지만, 더욱 많은 디바이스가 트리 중에 구성되며, 또한, 트리의 각부에서 다른 단수 구성을 갖는 것이 가능하다.
또한, 도 3의 트리 구조에 포함되는 각 디바이스에는, 다양한 기록 매체, 예를 들면, 디바이스 매립형 혹은 디바이스에 착탈 가능하게 구성된 DVD, CD, MD, 플래시 메모리 등을 사용하는 다양한 타입의 디바이스가 포함되어 있다. 또한, 다양한 어플리케이션 서비스가 공존 가능하다. 이러한 다른 디바이스, 다른 어플리케이션의 공존 구성의 위에 도 3에 도시한 콘텐츠 혹은 키 배포 구성인 계층 트리 구조가 적용된다.
이들 다양한 디바이스, 어플리케이션이 공존하는 시스템에서, 예를 들면 도 3의 점선으로 둘러싼 부분, 즉 디바이스 0, 1, 2, 3을 동일한 기록 매체를 이용하는 하나의 그룹으로서 설정한다. 예를 들면, 이 점선으로 둘러싼 그룹 내에 포함되는 디바이스에 대해서는, 통합하여, 공통의 콘텐츠를 암호화하여 프로바이더로부터 송부하거나, 각 디바이스 공통으로 사용하는 콘텐츠 키를 송부하거나, 혹은 각 디바이스로부터 프로바이더 혹은 결제 기관 등에 콘텐츠 요금의 지불 데이터를 역시 암호화하여 출력하는 처리가 실행된다. 콘텐츠 프로바이더, 혹은 결제 처리 기관 등, 각 디바이스와의 데이터 송수신을 행하는 기관은, 도 3의 점선으로 둘러싼 부분, 즉 디바이스 0, 1, 2, 3을 하나의 그룹으로서 일괄하여 데이터를 송부하는 처리를 실행한다. 이러한 그룹은, 도 3의 트리 중에 복수 존재한다. 콘텐츠 프로바이더, 혹은 결제 처리 기관 등, 각 디바이스와의 데이터 송수신을 행하는 기관은 메시지 데이터 배신 수단으로서 기능한다.
또, 노드 키, 리프 키는, 어떤 하나의 키 관리 센터에 의해 통괄하여 관리하여도 되고, 각 그룹에 대한 다양한 데이터 송수신을 행하는 프로바이더, 결제 기관 등의 메시지 데이터 배신 수단에 의해 그룹마다 관리하는 구성으로 하여도 된다. 이들 노드 키, 리프 키는 예를 들면, 키의 누설 등의 경우에 갱신 처리가 실행되며, 이 갱신 처리는 키 관리 센터, 프로바이더, 결제 기관 등이 실행한다.
이 트리 구조에서, 도 3으로부터 명백한 바와 같이, 하나의 그룹에 포함되는 3개의 디바이스 0, 1, 2, 3은 노드 키로서 공통의 키 K00, K0, KR을 보유한다. 이 노드 키 공유 구성을 이용함으로써, 예를 들면 공통의 콘텐츠 키를 디바이스 0, 1, 2, 3에만 제공하는 것이 가능해진다. 예를 들면, 공통으로 보유하는 노드 키 K00 자체를 콘텐츠 키로서 설정하면, 새로운 키 송부를 실행하지 않고 디바이스 0, 1, 2, 3만이 공통의 콘텐츠 키의 설정이 가능하다. 또한, 새로운 콘텐츠 키 Kcon을 노드 키 K00으로 암호화한 값 Enc(K00, Kcon)를, 네트워크를 통해 혹은 기록 매체에 저장하여 디바이스 0, 1, 2, 3에 배포하면, 디바이스 0, 1, 2, 3만이, 각각의 디바이스에서 보유하는 공유 노드 키 K00을 이용하여 암호 Enc(K00, Kcon)를 해독하여 콘텐츠 키: Kcon을 얻는 것이 가능해진다. 또, Enc(Ka, Kb)는 Kb를 Ka에 의해 암호화한 데이터인 것을 나타낸다.
또한, 임의의 시점 t에서, 디바이스 3이 소유하는 키: K0011, K001, K00, K0, KR이 공격자(해커)에 의해 해석되어 노출된 것이 발각된 경우, 그 이후, 시스템(디바이스 0, 1, 2, 3의 그룹)으로 송수신되는 데이터를 지키기 위해, 디바이스 3을 시스템으로부터 분리할 필요가 있다. 그것을 위해서는, 노드 키: K001, K00, K0, KR을 각각 새로운 키 K(t)001, K(t)00, K(t)0, K(t)R로 갱신하고, 디바이스 0, 1, 2에 그 갱신 키를 전달할 필요가 있다. 여기서, K(t)aaa는 키 Kaaa의 세대(Generation): t의 갱신 키인 것을 나타낸다.
갱신 키의 배포 처리에 대하여 설명한다. 키의 갱신은, 예를 들면, 도 4의 (a)에 도시한 유효화 키 블록(EKB: Enabling Key Block)이라 불리는 블록 데이터에 의해 구성되는 테이블을 예를 들면 네트워크, 혹은 기록 매체에 저장하여 디바이스, 0, 1, 2에 공급함으로써 실행된다. 또, 유효화 키 블록(EKB)은, 도 3에 도시한 바와 같은 트리 구조를 구성하는 각 리프에 대응하는 디바이스에 새롭게 갱신된 키를 배포하기 위한 암호화 키에 의해 구성된다. 유효화 키 블록(EKB)은, 키 갱신 블록(KRB:Key Renewal Block)이라 불리는 경우도 있다.
도 4의 (a)에 도시한 유효화 키 블록(EKB)에는 노드 키의 갱신이 필요한 디바이스만이 갱신 가능한 데이터 구성을 갖는 블록 데이터로서 구성된다. 도 4의 예는, 도 3에 도시한 트리 구조 중의 디바이스 0, 1, 2에서, 세대 t의 갱신 노드 키를 배포하는 것을 목적으로서 형성된 블록 데이터이다. 도 3으로부터 명백한 바와 같이, 디바이스 0, 디바이스 1은 갱신 노드 키로서 K(t)00, K(t)0, K(t)R이 필요하며, 디바이스 2는 갱신 노드 키로서 K(t)001, K(t)00, K(t)0, K(t)R이 필요하다.
도 4의 (a)의 EKB에 도시된 바와 같이 EKB에는 복수의 암호화 키가 포함된다. 최하단의 암호화 키는 Enc(K0010, K(t)001)이다. 이것은 디바이스 2가 갖는 리프 키 K0010에 의해 암호화된 갱신 노드 키 K(t)001이며, 디바이스 2는 자신이 갖는 리프 키에 의해 이 암호화 키를 복호하여 K(t)001을 얻을 수 있다. 또한, 복호에 의해 얻은 K(t)001을 이용하여, 도 4의 (a)의 아래로부터 2단째의 암호화 키 Enc(K(t)001, K(t)00)를 복호할 수 있으며, 갱신 노드 키 K(t)00을 얻을 수 있다. 이하 순차적으로 도 4의 (a)의 위로부터 2단째의 암호화 키 Enc(K(t)00, K(t)0)를 복호하고, 갱신 노드 키 K(t)0, 도 4의 (a)의 위로부터 1단째의 암호화 키 Enc(K(t)0, K(t)R)를 복호하여 K(t)R을 얻는다. 한편, 디바이스 K0000. K0001은, 노드 키 K000은 갱신하는 대상에 포함되지 않고, 갱신 노드 키로서 필요한 것은 K(t)00, K(t)0, K(t)R이다. 디바이스 K0000. K0001은, 도 4의 (a)의 위로부터 3단째의 암호화 키 Enc(K000, K(t)00)를 복호하여 K(t)00을 취득하며, 이하, 도 4의 (a)의 위로부터 2단째의 암호화 키 Enc(K(t)00, K(t)0)를 복호하고, 갱신 노드 키 K(t)0, 도 4의 (a)의 위로부터 1단째의 암호화 키 Enc(K(t)0, K(t)R)를 복호하여 K(t)R을 얻는다. 이와 같이 하여 디바이스 0, 1, 2는 갱신한 키 K(t)R을 얻을 수 있다. 또, 도 4의 (a)의 인덱스는 복호 키로서 사용하는 노드 키, 리프 키의 절대 번지를 나타낸다.
도 3에 도시한 트리 구조의 상위단의 노드 키: K(t)0, K(t)R의 갱신이 불필요하며, 노드 키 K00만의 갱신 처리가 필요한 경우에는, 도 4의 (b)의 유효화 키 블록(EKB)을 이용함으로써, 갱신 노드 키 K(t)00을 디바이스 0, 1, 2에 배포할 수 있다.
도 4의 (b)에 도시한 EKB는, 예를 들면 특정한 그룹에서 공유하는 새로운 콘텐츠 키를 배포하는 경우에 이용 가능하다. 구체예로서, 도 3에 점선으로 나타내는 그룹 내의 디바이스 0, 1, 2, 3이 임의의 기록 매체를 이용하고 있으며, 새로운 공통의 콘텐츠 키 K(t)con이 필요하다고 하자. 이 때, 디바이스 0, 1, 2, 3의 공통의 노드 키 K00을 갱신한 K(t)00을 이용하여 새로운 공통의 갱신 콘텐츠 키: K(t)con을 암호화한 데이터 Enc(K(t), K(t)con)을 도 4의 (b)에 도시한 EKB와 함께 배포한다. 이 배포에 의해, 디바이스 4 등, 그 밖의 그룹의 기기에서는 복호되지 않은 데이터로서의 배포가 가능해진다.
즉, 디바이스 0, 1, 2는 EKB를 처리하여 얻은 K(t)00을 이용하여 상기 암호문을 복호하면, t 시점에서의 콘텐츠 키 K(t)con을 얻는 것이 가능하게 된다.
[EKB를 사용한 콘텐츠 키의 배포]
도 5에, t 시점에서의 콘텐츠 키 K(t)con을 얻는 처리예로서, K(t)00을 이용하여 새로운 공통의 콘텐츠 키 K(t)con을 암호화한 데이터 Enc(K(t)00, K(t)con)와 도 4의 (b)에 도시한 EKB를 기록 매체를 통해 수령한 디바이스 0의 처리를 나타낸다. 즉, EKB에 의한 암호화 메시지 데이터를 콘텐츠 키 K(t)con으로 한 예이다.
도 5에 도시한 바와 같이, 디바이스 0은 기록 매체에 저장되어 있는 세대: t시점의 EKB와 자신이 사전에 저장하고 있는 노드 키 K000을 이용하여 상술한 것과 마찬가지의 EKB 처리에 의해 노드 키 K(t)00을 생성한다. 또한, 복호한 갱신 노드 키 K(t)00을 이용하여 갱신 콘텐츠 키 K(t)con을 복호하여, 후에 그것을 사용하기 위해 자신만이 갖는 리프 키 K0000으로 암호화하여 저장한다.
[EKB의 포맷]
도 6에 유효화 키 블록(EKB)의 포맷예를 나타낸다. 버전(601)은 유효화 키 블록(EKB)의 버전을 나타내는 식별자이다. 또, 버전은 최신의 EKB를 식별하는 기능과 콘텐츠와의 대응 관계를 나타내는 기능을 갖는다. 깊이는 유효화 키 블록(EKB)의 배포처의 디바이스에 대한 계층 트리의 계층 수를 나타낸다. 데이터 포인터(603)는 유효화 키 블록(EKB) 중의 데이터부의 위치를 나타내는 포인터이고, 태그 포인터(604)는 태그부의 위치, 서명 포인터(605)는 서명의 위치를 나타내는 포인터이다.
데이터부(606)는, 예를 들면 갱신하는 노드 키를 암호화한 데이터를 저장한다. 예를 들면 도 5에 도시한 바와 같은 갱신된 노드 키에 관한 각 암호화 키 등을 저장한다.
태그부(607)는 데이터부에 저장된 암호화된 노드 키, 리프 키의 위치 관계를 나타내는 태그이다. 이 태그의 부여 룰을 도 7의 (a) 내지 도 7의 (c)를 이용하여 설명한다. 도 7의 (a) 내지 도 7의 (c)에서는, 데이터로서 먼저 도 4의 (a)에서 설명한 유효화 키 블록(EKB)을 송부하는 예를 나타내고 있다. 이 때의 데이터는 도 7의 (b)에 도시된 바와 같다. 이 때의 암호화 키에 포함되는 톱 노드의 어드레스를 톱 노드 어드레스로 한다. 이 경우에는, 루트 키의 갱신 키 K(t)R이 포함되어 있기 때문에, 톱 노드 어드레스는 KR로 된다. 이 때, 예를 들면 최상단의 데이터 Enc(K(t)0, K(t)R)는, 도 7의 (a)에 도시한 계층 트리에 나타내는 위치에 있다. 여기서, 다음 데이터는 Enc(K(t)00, K(t)0)이고, 트리 상에서는 이전 데이터의 좌측 아래의 위치에 있다. 데이터가 있는 경우에는 태그가 0, 없는 경우에는 1이 설정된다. 태그는{좌측(L) 태그, 우측(R) 태그}로서 설정된다. 최상단의 데이터 Enc(K(t)0, K(t)R)의 좌측에는 데이터가 있으므로 L 태그=0, 우측에는 데이터가 없기 때문에 R 태그=1로 된다. 이하, 모든 데이터에 태그가 설정되며, 도 7의 (c)에 도시한 데이터 열, 및 태그 열이 구성된다.
태그는, 데이터 Enc(Kxxx, Kyyy)가 트리 구조의 어디에 위치하고 있는 것인지를 나타내기 위해 설정되는 것이다. 데이터부에 저장되는 키 데이터 Enc(Kxxx, Kyyy)…는 단순하게 암호화된 키의 나열 데이터에 불과하기 때문에, 상술한 태그에 의해 데이터로서 저장된 암호화 키의 트리 상의 위치를 판별 가능하게 한 것이다. 상술한 태그를 이용하지 않고, 앞의 도 4에서 설명한 구성과 같이 암호화 데이터에 대응시킨 노드 인덱스를 이용하여, 예를 들면,
0 : Enc(K(t)0, K(t)root)
00 :·Enc(K(t)00, K(t)0)
000 : Enc(K((t)000, K(t)00))
…와 같은 데이터 구성으로 하는 것도 가능하지만, 이러한 인덱스를 이용한 구성으로 하면 용장(冗長) 데이터로 되어 데이터량이 증대하고, 네트워크를 통한 배신 등에서는 바람직하지 못하다. 이것에 대하여, 상술한 태그를 키 위치를 나타내는 색인 데이터로서 이용함으로써, 적은 데이터량으로 키 위치의 판별이 가능해진다.
도 6으로 되돌아가, EKB 포맷에 대하여 더욱 설명한다. 서명(Signature)은, 유효화 키 블록(EKB)을 발행한, 예를 들면 키 관리 센터, 콘텐츠 프로바이더, 결제 기관 등이 실행하는 전자 서명이다. EKB를 수령한 디바이스는 서명 검증에 의해 정당한 유효화 키 블록(EKB) 발행자가 발행한 유효화 키 블록(EKB)인 것을 확인한다.
[EKB를 사용한 콘텐츠 키 및 콘텐츠의 배신]
상술한 예는, 콘텐츠 키만을 EKB와 함께 송부하는 예에 대하여 설명하였지만, 콘텐츠 키로 암호화한 콘텐츠와, 콘텐츠 키 암호 키로 암호화한 콘텐츠 키와, EKB에 의해 암호화한 콘텐츠 키 암호 키를 함께 송부하는 구성에 대하여 이하에 설명한다.
도 8의 (a) 및 도 8의 (b)에 이러한 데이터 구성을 나타낸다. 도 8의 (a)에 도시한 구성에서, Enc(Kcon, content: 801)는 콘텐츠(Content)를 콘텐츠 키(Kcon)로 암호화한 데이터이고, Enc(KEK, Kcon: 802)는 콘텐츠 키(Kcon)를 콘텐츠 키 암호 키(KEK: Key Encryption Key)로 암호화한 데이터이며, Enc(EKB, KEK: 803)는 콘텐츠 키 암호 키 KEK를 유효화 키 블록(EKB)에 의해 암호화한 데이터인 것을 나타낸다.
여기서, 콘텐츠 키 암호 키 KEK는 도 3에서 도시한 노드 키(K000, K00…), 혹은 루트 키(KR) 자체여도 되고, 또한 노드 키(K000, K00…), 혹은 루트 키(KR)에 의해 암호화된 키여도 된다.
도 8의 (b)는 복수의 콘텐츠가 미디어에 기록되며, 각각이 동일한 Enc(EKB, KEK: 805)를 이용하고 있는 경우의 구성예를 나타내며, 이와 같은 구성에서는, 각 데이터에 동일한 Enc(EKB, KEK)를 부가하지 않고, Enc(EKB, KEK)에 링크하는 링크처를 나타내는 데이터를 각 데이터에 부가하는 구성으로 하는 것이 가능하다.
도 9에 콘텐츠 키 암호 키 KEK를, 도 3에 도시한 노드 키 K00을 갱신한 갱신 노드 키 K(t)00으로서 구성한 경우의 예를 나타낸다. 이 경우, 도 3의 점선 테두리로 둘러싼 그룹에서 디바이스 3이, 예를 들면 키의 누설에 의해 리보크(배제)되어 있는 것으로서, 다른 그룹의 멤버, 즉, 디바이스 O, 1, 2에 대하여 도 9에 도시한 유효화 키 블록(EKB)과, 콘텐츠 키(Kcon)를 콘텐츠 키 암호 키(KEK=K(t)00)로 암호화한 데이터와, 콘텐츠(content)를 콘텐츠 키(Kcon)로 암호화한 데이터를 배신함으로써, 디바이스 0, 1, 2는 콘텐츠를 얻을 수 있다.
도 9의 우측에는, 디바이스 0에서의 복호 수순을 나타내고 있다. 디바이스 0은, 우선, 수령한 유효화 키 블록으로부터 자신이 보유하는 리프 키 K000을 이용한 복호 처리에 의해, 콘텐츠 키 암호 키(KEK=K(t)00)를 취득한다. 다음에, K(t)00에 의한 복호에 의해 콘텐츠 키 Kcon을 취득하고, 또한 콘텐츠 키 Kcon에 의해 콘텐츠의 복호를 행한다. 이들 처리에 의해, 디바이스 0은 콘텐츠를 이용 가능하게 된다. 디바이스 1, 2에서도 각각 다른 처리 수순으로 EKB를 처리함으로써, 콘텐츠 키 암호 키(KEK=K(t)00)를 취득하는 것이 가능해지고, 마찬가지로 콘텐츠를 이용하는 것이 가능해진다.
도 3에 도시한 다른 그룹의 디바이스 4, 5, 6…은, 이와 마찬가지의 데이터(EKB)를 수신하였다고 해도, 자신이 보유하는 리프 키, 노드 키를 이용하여 콘텐츠 키 암호 키(KEK=K(t)00)를 취득할 수 없다. 마찬가지로 리보크된 디바이스 3에서도, 자신이 보유하는 리프 키, 노드 키에서는, 콘텐츠 키 암호 키(KEK=K(t)00)를 취득할 수 없고, 정당한 권리를 갖는 디바이스만이 콘텐츠를 복호하여 이용하는 것이 가능해진다.
이와 같이, EKB를 이용한 콘텐츠 키의 배송을 이용하면, 데이터량을 적게 하여, 또한 안전하게 정당 권리자만이 복호 가능하게 한 암호화 콘텐츠를 배신하는 것이 가능해진다.
또, 유효화 키 블록(EKB), 콘텐츠 키, 암호화 콘텐츠 등은, 네트워크를 통해 안전하게 배신하는 것이 가능한 구성이지만, 유효화 키 블록(EKB), 콘텐츠 키, 암호화 콘텐츠를 DVD, CD 등의 기록 매체에 저장하여 사용자에게 제공하는 것도 가능하다. 이 경우, 기록 매체에 저장된 암호화 콘텐츠의 복호에는, 동일한 기록 매체에 저장된 유효화 키 블록(EKB)의 복호에 의해 얻어지는 콘텐츠 키를 사용하도록 구성하면, 사전에 정당 권리자만이 보유하는 리프 키, 노드 키에 의해서만 이용 가능한 암호화 콘텐츠의 배포 처리, 즉 이용 가능한 사용자 디바이스를 한정한 콘텐츠 배포가 간이한 구성으로 실현 가능해진다.
도 10에 기록 매체에 암호화 콘텐츠와 함께 유효화 키 블록(EKB)을 저장한 구성예를 나타낸다. 도 10에 도시한 예에서는, 기록 매체에 콘텐츠 C1∼C4가 저장되며, 또한 각 저장 콘텐츠에 대응하는 유효화 키 블록(EKB)을 대응한 데이터가 저장되고, 또한, 버전 M의 유효화 키 블록(EKB_M)이 저장되어 있다. 예를 들면 EKB_1은 콘텐츠 C1을 암호화한 콘텐츠 키 Kcon1을 생성하는 데 사용되며, 예를 들 면 EKB_2는 콘텐츠 C2를 암호화한 콘텐츠 키 Kcon2를 생성하는 데 사용된다. 이 예에서는, 버전 M의 유효화 키 블록(EKB_M)이 기록 매체에 저장되어 있으며, 콘텐츠 C3, C4는 유효화 키 블록(EKB_M)에 대응되고 있기 때문에, 유효화 키 블록(EKB_M)의 복호에 의해 콘텐츠 C3, C4의 콘텐츠 키를 취득할 수 있다. EKB_1, EKB_2는 디스크에 저장되어 있지 않으므로, 새로운 제공 수단, 예를 들면 네트워크 배신, 혹은 기록 매체에 의한 배신에 의해 각각의 콘텐츠 키를 복호하기 위해 필요한 EKB_1, EKB_2를 취득하는 것이 필요해진다.
도 11의 (a) 및 도 11의 (b)에, 복수의 디바이스 사이에서 콘텐츠 키가 유통하는 경우의 EKB를 이용한 콘텐츠 키의 배신과, 종래의 콘텐츠 키 배신 처리의 비교예를 나타낸다. 도 11의 (a)가 종래 구성이며, 도 11의 (b)가 본 발명의 유효화 키 블록(EKB)을 이용한 예이다. 또, 도 11의 (a) 및 도 11의 (b)에서 Ka(Kb)는, Kb를 Ka로 암호화한 데이터인 것을 나타낸다.
도 11의 (a)에 도시한 바와 같이, 종래는, 데이터 송수신자의 정당성을 확인하고, 또한 데이터 송신의 암호화 처리에 사용하는 세션 키 Kses를 공유하기 위해 각 디바이스 사이에서, 인증 처리 및 키 교환 처리(AKE: Authentication and Key Exchange)를 실행하고, 인증이 성립한 것을 조건으로 하여 세션 키 Kses로 콘텐츠 키 Kcon을 암호화하여 송신하는 처리를 행하고 있었다.
예를 들면 도 11의 (a)의 PC에서는, 수신한 세션 키로 암호화한 콘텐츠 키 Kses(Kcon)를 세션 키로 복호하여 Kcon을 얻는 것이 가능하며, 또한 취득한 Kcon을 PC 자체가 보유하는 보존 키 Kstr로 암호화하여 자신의 메모리에 보존하는 것이 가 능해진다.
도 11의 (a)에서, 콘텐츠 프로바이더는 도 11의 (a)의 기록 디바이스(1101)에만 데이터를 이용할 수 있는 형태로 배신하고 싶은 경우에도, 사이에 PC, 재생 장치가 존재하는 경우에는, 도 11의 (a)에 도시한 바와 같이 인증 처리를 실행하고, 각각의 세션 키로 콘텐츠 키를 암호화하여 배신한다고 하는 처리가 필요해진다. 또한, 사이에 개재하는 PC, 재생 장치에서도 인증 처리에서 생성하여 공유하게 된 세션 키를 이용함으로써 암호화 콘텐츠 키를 복호하여 콘텐츠 키를 취득할 수 있게 된다.
한편, 도 11의 (b)에 도시한 유효화 키 블록(EKB)을 이용한 예에서는, 콘텐츠 프로바이더로부터 유효화 키 블록(EKB)과, 유효화 키 블록(EKB)의 처리에 의해 얻어지는 노드 키, 또는 루트 키에 의해 콘텐츠 키 Kcon을 암호화한 데이터(도면의 예는 Kroot(Kcon))를 배신함으로써, 배신한 EKB의 처리가 가능한 기기에서만 콘테츠 키 Kcon을 복호하여 취득하는 것이 가능하게 된다.
따라서, 예를 들면 도 11의 (b)의 우단에만 이용 가능한 유효화 키 블록(EKB)을 생성하여, 그 유효화 키 블록(EKB)과, 그 EKB 처리에 의해 얻어지는 노드 키, 또는 루트 키에 의해 콘텐츠 키 Kcon을 암호화한 데이터를 함께 보냄으로써, 사이에 존재하는 PC, 재생 기기 등은 자신이 갖는 리프 키, 노드 키에 의해서는 EKB의 처리를 실행하는 것이 불가능하다. 따라서, 데이터 송수신 디바이스 사이에서의 인증 처리, 세션 키의 생성, 세션 키에 의한 콘텐츠 키 Kcon의 암호화 처리라고 하는 처리를 실행하지 않고, 안전하게 정당한 디바이스에 대해서만 이용 가 능한 콘텐츠 키를 배신하는 것이 가능해진다.
PC, 기록 재생기에도 이용 가능하나 콘텐츠 키를 배신하고 싶은 경우에는, 각각에서 처리 가능한 유효화 키 블록(EKB)을 생성하여, 배신함으로써 공통의 콘텐츠 키를 취득하는 것이 가능해진다.
[유효화 키 블록(EKB)을 사용한 인증 키의 배신(공통 키 방식)]
상술의 유효화 키 블록(EKB)을 사용한 데이터 혹은 키의 배신에서, 디바이스 사이에서 전송되는 유효화 키 블록(EKB) 및 콘텐츠 혹은 콘텐츠 키는 항상 동일한 암호화 형태를 유지하고 있기 때문에, 데이터 전송 경로를 훔쳐서 기록하고, 재차, 후에 전송하는, 소위 리플레이 어택에 의해 부정 복사가 생성될 가능성이 있다. 이것을 방지하는 구성으로서는, 데이터 전송 디바이스 사이에서, 종래와 마찬가지의 인증 처리 및 키 교환 처리를 실행하는 것이 유효한 수단이다. 여기서는, 이 인증 처리 및 키 교환 처리를 실행할 때 사용하는 인증 키 Kake를 상술의 유효화 키 블록(EKB)을 사용하여 디바이스로 배신함으로써, 안전한 비밀 키로서 공유하는 인증 키를 갖고, 공통 키 방식에 따른 인증 처리를 실행하는 구성에 대하여 설명한다. 즉, EKB에 의한 암호화 메시지 데이터를 인증 키로 한 예이다.
도 12에, 공통 키 암호 방식을 이용한 상호 인증 방법(ISO/IEC 9798-2)을 나타낸다. 도 12에서는, 공통 키 암호 방식으로서 DES를 이용하고 있지만, 공통 키 암호 방식이면 다른 방식도 가능하다. 도 12에서, 우선, B가 64 비트의 난수 Rb를 생성하고, Rb 및 자기 ID인 ID(b)를 A로 송신한다. 이것을 수신한 A는, 새롭게 64 비트의 난수 Ra를 생성하고, Ra, Rb, ID(b)의 순으로 DES의 CBC 모드로 키 Kab를 이용하여 데이터를 암호화하고, B로 반송한다. 또, 키 Kab는 A 및 B에 공통의 비밀 키로서 각각의 기록 소자 내에 저장하는 키이다. DES의 CBC 모드를 이용한 키 Kab에 의한 암호화 처리는, 예를 들면 DES를 이용한 처리에서는, 초기값과 Ra의 배타적 논리합을 구하고, DES 암호화부에서, 키 Kab를 이용하여 암호화하고, 암호문 E1을 생성하며, 계속해서 암호문 E1과 Rb의 배타적 논리합을 구하여, DES 암호화부에서, 키 Kab를 이용하여 암호화하고, 암호문 E2를 생성하며, 또한, 암호문 E2와 ID(b)의 배타적 논리합을 구하고, DES 암호화부에서, 키 Kab를 이용하여 암호화하여 생성한 암호문 E3에 따라 송신 데이터(Token-AB)를 생성한다.
이것을 수신한 B는, 수신 데이터를, 역시 공통의 비밀 키로서 각각의 기록 소자 내에 저장하는 키 Kab(인증 키)로 복호화한다. 수신 데이터의 복호화 방법은, 우선, 암호문 E1을 인증 키 Kab에서 복호화하고, 난수 Ra를 얻는다. 다음에, 암호문 E2를 인증 키 Kab에서 복호화하고, 그 결과와 E1의 배타적 논리합을 구하여, Rb를 얻는다. 마지막으로, 암호문 E3을 인증 키 Kab에서 복호화하고, 그 결과와 E2의 배타적 논리합을 구하여, ID(b)를 얻는다. 이렇게 해서 얻어진 Ra, Rb, ID(b) 중, Rb 및 ID(b)가, B가 송신한 것과 일치하는지를 검증한다. 이 검증에 통과한 경우, B는 A를 정당한 것으로서 인증한다.
다음에 B는, 인증 후에 사용하는 세션 키(Kses)를 생성한다 (생성 방법은, 난수를 이용함). 그리고, Rb, Ra, Kses의 순으로, DES의 CBC 모드로 인증 키 Kab를 이용하여 암호화하고, A로 반송한다.
이것을 수신한 A는, 수신 데이터를 인증 키 Kab에서 복호화한다. 수신 데이 터의 복호화 방법은, B의 복호화 처리와 마찬가지이기 때문에, 여기서는 상세를 생략한다. 이렇게 해서 얻어진 Rb, Ra, Kses 중, Rb 및 Ra가, A가 송신한 것과 일치하는지를 검증한다. 이 검증에 통과한 경우, A는 B를 정당한 것으로서 인증한다. 상호 상대를 인증한 후에는, 세션 키 Kses는 인증 후의 비밀 통신을 위한 공통 키로서 이용된다.
또, 수신 데이터의 검증 시에, 부정, 불일치가 발견된 경우에는, 상호 인증이 실패한 것으로서 처리를 중단한다.
상술의 인증 처리에서는, A, B는 공통의 인증 키 Kab를 공유한다. 이 공통 키 Kab를 상술의 유효화 키 블록(EKB)을 사용하여 디바이스로 배신한다.
예를 들면, 도 12의 예는, A, 또는 B 중 어느 하나가 다른 쪽이 복호 가능한 유효화 키 블록(EKB)을 생성하여 생성한 유효화 키 블록 (EKB)에 의해 인증 키 Kab를 암호화하여, 다른 쪽으로 송신하는 구성으로 하여도 되고, 혹은 제3자가 디바이스 A, B에 대하여 쌍방이 이용 가능한 유효화 키 블록(EKB)을 생성하여 디바이스 A, B에 대하여 생성한 유효화 키 블록(EKB)에 의해 인증 키 Kab를 암호화하여 배신하는 구성으로 하여도 된다.
도 13 및 도 14에 복수의 디바이스에 공통의 인증 키 Kake를 유효화 키 블록(EKB)에 의해 배신하는 구성예를 나타낸다. 도 13은 디바이스 0, 1, 2, 3에 대하여 복호 가능한 인증 키 Kake를 배신하는 예, 도 14는 디바이스 0, 1, 2, 3 중의 디바이스 3을 리보크(배제)하여 디바이스 0, 1, 2에 대해서만 복호 가능한 인증 키를 배신하는 예를 나타낸다.
도 13의 예는, 갱신 노드 키 K(t)00에 의해, 인증 키 Kake를 암호화한 데이터와 함께, 디바이스 0, 1, 2, 3에서 각각의 갖는 노드 키, 리프 키를 이용하여 갱신된 노드 키 K(t)00을 복호할 수 있는 유효화 키 블록(EKB)을 생성하여 배신한다. 각각의 디바이스는, 도 13의 우측에 도시한 바와 같이 우선, EKB를 처리(복호)함으로써 갱신된 노드 키 K(t)00을 취득하고, 다음에, 취득한 노드 키 K(t)00을 이용하여 암호화된 인증 키: Enc(K(t)00, Kake)를 복호하여 인증 키 Kake를 얻는 것이 가능해진다.
그 밖의 디바이스 4, 5, 6, 7…은 동일한 유효화 키 블록(EKB)을 수신하여도 자신이 보유하는 노드 키, 리프 키에서는, EKB를 처리하여 갱신된 노드 키 K(t)00을 취득할 수 없기 때문에, 안전하게 정당한 디바이스에 대해서만 인증 키를 송부할 수 있다.
한편, 도 14의 예는, 도 3의 점선 테두리로 둘러싼 그룹에서 디바이스 3이, 예를 들면 키의 누설에 의해 리보크(배제)되어 있다고 하고, 다른 그룹의 멤버, 즉, 디바이스 0, 1, 2에 대해서만 복호 가능한 유효화 키 블록(EKB)을 생성하여 배신한 예이다. 도 14에 도시한 유효화 키 블록(EKB)과, 인증 키(Kake)를 노드 키 (K(t)00)로 암호화한 데이터를 배신한다.
도 14의 우측에는, 복호 수순을 나타내고 있다. 디바이스 0, 1, 2는 우선, 수령한 유효화 키 블록으로부터 자신이 보유하는 리프 키 또는 노드 키를 이용한 복호 처리에 의해, 갱신 노드 키(K(t)00)를 취득한다. 다음에, K(t)00에 의한 복호에 의해 인증 키 Kake를 취득한다.
도 3에 도시한 다른 그룹의 디바이스 4, 5, 6…은, 이와 마찬가지의 데이터(EKB)를 수신하였다고 해도, 자신이 보유하는 리프 키, 노드 키를 이용하여 갱신 노드 키(K(t)00)를 취득할 수 없다. 마찬가지로 리보크된 디바이스 3에서도, 자신이 보유하는 리프 키, 노드 키에서는, 갱신 노드 키(K(t)00)를 취득할 수 없으며, 정당한 권리를 갖는 디바이스만이 인증 키를 복호하여 이용하는 것이 가능해진다.
이와 같이, EKB를 이용한 인증 키의 배송을 이용하면, 데이터량을 적게 하여, 또한 안전하게 정당 권리자만이 복호가능하게 한 인증 키를 배신하는 것이 가능해진다.
[공개 키 인증과 유효화 키 블록(EKB)을 사용한 콘텐츠 키의 배신]
다음에, 공개 키 인증과 유효화 키 블록(EKB)을 사용한 콘텐츠 키의 배신 처리에 대하여 설명한다. 우선, 공개 키 암호 방식인 160비트 길이의 타원 곡선 암호를 이용한 상호 인증 방법을, 도 15를 참조하여 설명한다. 도 15에서, 공개 키 암호 방식으로서 ECC를 이용하고 있지만, 마찬가지의 공개 키 암호 방식이면 어느 것이어도 된다. 또한, 키 사이즈도 160비트가 아니어도 된다. 도 15에서, 우선 B가, 64비트의 난수 Rb를 생성하고, A로 송신한다. 이것을 수신한 A는, 새롭게 64비트의 난수 Ra 및 소수 p보다 작은 난수 Ak를 생성한다. 그리고, 베이스 포인트 G를 Ak배한 점 Av=Ak ×G를 구하고, Ra, Rb, Av(X 좌표와 Y 좌표)에 대한 전자 서명 A. Sig을 생성하여, A의 공개 키 증명서와 함께 B로 반송한다. 여기서, Ra 및 Rb는 각각 64비트, Av의 X 좌표와 Y 좌표가 각각 160비트이기 때문에, 합계 448비 트에 대한 전자 서명을 생성한다.
A의 공개 키 증명서, Ra, Rb, Av, 전자 서명 A. Sig을 수신한 B는, A가 전송된 Rb가, B가 생성한 것과 일치하는지를 검증한다. 그 결과, 일치하고 있는 경우에는, A의 공개 키 증명서 내의 전자 서명을 인증국의 공개 키로 검증하고, A의 공개 키를 추출한다. 그리고, 추출한 A의 공개 키를 이용하여 전자 서명 A.Sig을 검증한다.
다음에, B는 소수 p보다 작은 난수 Bk를 생성한다. 그리고, 베이스 포인트 G를 Bk배한 점 Bv=Bk ×G를 구하고, Rb, Ra, Bv(X 좌표와 Y 좌표)에 대한 전자 서명 B. Sig을 생성하여, B의 공개 키 증명서와 함께 A로 반송한다.
B의 공개 키 증명서, Rb, Ra, Av, 전자 서명 B. Sig을 수신한 A는, B가 전송된 Ra가, A가 생성한 것과 일치하는지를 검증한다. 그 결과, 일치하고 있는 경우에는, B의 공개 키 증명서 내의 전자 서명을 인증국의 공개 키로 검증하고, B의 공개 키를 추출한다. 그리고, 추출한 B의 공개 키를 이용하여 전자 서명 B.Sig을 검증한다. 전자 서명의 검증에 성공한 후, A는 B를 정당한 것으로서 인증한다.
양자가 인증에 성공한 경우에는, B는 Bk ×Av(Bk는 난수이지만, Av는 타원 곡선 상의 점이기 때문에, 타원 곡선 상의 점의 스칼라배 계산이 필요)를 계산하고, A는 Ak ×Bv를 계산하여, 이들 점의 X 좌표의 하위 64비트를 세션 키로서 이후의 통신에 사용한다(공통 키 암호를 64비트 키 길이의 공통 키 암호로 한 경우). 물론, Y 좌표에서 세션 키를 생성하여도 되고, 하위 64비트가 아니어도 된다. 또, 상호 인증 후의 비밀 통신에서는, 송신 데이터는 세션 키로 암호화될 뿐만 아니라, 전자 서명도 첨부되는 경우가 있다.
전자 서명의 검증이나 수신 데이터의 검증 시에, 부정, 불일치가 발견된 경우에는, 상호 인증이 실패한 것으로서 처리를 중단한다.
도 16에 공개 키 인증과 유효화 키 블록(EKB)을 사용한 콘텐츠 키의 배신 처리예를 나타낸다. 우선 콘텐츠 프로바이더와 PC 사이에서 도 15에서 설명한 공개 키 방식에 의한 인증 처리가 실행된다. 콘텐츠 프로바이더는, 콘텐츠 키 배신처인 재생 장치, 기록 매체가 갖는 노드 키, 리프 키에 의해 복호 가능한 EKB를 생성하여, 갱신 노드 키에 의한 암호화를 실행한 콘텐츠 키 E(Kcon)와, 유효화 키 블록(EKB)를 PC 사이의 인증 처리에서 생성한 세션 키 Kses에서 암호화하여 PC로 송신한다.
PC는 세션 키로 암호화된 [갱신 노드 키에 의한 암호화를 실행한 콘텐츠 키 E(Kcon)와, 유효화 키 블록(EKB)]을 세션 키로 복호한 후, 재생 장치, 기록 매체로 송신한다.
재생 장치, 기록 매체는 자신이 보유하는 노드 키 또는 리프 키에 의해 [갱신 노드 키에 의한 암호화를 실행한 콘텐츠 키 E(Kcon)와, 유효화 키 블록(EKB)]을 복호함으로써 콘텐츠 키 Kcon을 취득한다.
이 구성에 따르면, 콘텐츠 프로바이더와 PC 사이에서의 인증을 조건으로 하여 [갱신 노드 키에 의한 암호화를 실행한 콘텐츠 키 E(Kcon)와, 유효화 키 블록(EKB) ]이 송신되기 때문에, 예를 들면, 노드 키의 누설이 있는 경우라도, 확실한 상대에 대한 데이터 송신이 가능해진다.
[프로그램 코드의 유효화 키 블록(EKB)을 사용한 배신]
상술한 예에서는, 콘텐츠 키, 인증 키 등을 유효화 키 블록(EKB)을 이용하여 암호화하여 배신하는 방법을 설명하였지만, 다양한 프로그램 코드를 유효화 키 블록(EKB)을 이용하여 배신하는 구성도 가능하다. 즉 EKB에 의한 암호화 메시지 데이터를 프로그램 코드로 한 예이다. 이하, 이 구성에 대하여 설명한다.
도 17에 프로그램 코드를 유효화 키 블록(EKB)의 예를 들면 갱신 노드 키에 의해 암호화하여 디바이스 사이에서 송신하는 예를 나타낸다. 디바이스(1701)는, 디바이스(1702)가 갖는 노드 키, 리프 키에 의해 복호 가능한 유효화 키 블록(EKB)과, 유효화 키 블록(EKB)에 포함되는 갱신 노드 키로 암호 처리한 프로그램 코드를 디바이스(1702)로 송신한다. 디바이스(1702)는 수신한 EKB를 처리하여 갱신 노드 키를 취득하고, 또한 취득한 갱신 노드 키에 의해 프로그램 코드의 복호를 실행하여, 프로그램 코드를 얻는다.
도 17에 도시한 예는, 또한, 디바이스(1702)에서 취득한 프로그램 코드에 의한 처리를 실행하여, 그 결과를 디바이스(1701)로 보내고, 디바이스(1701)가 그 결과에 기초하여 처리를 더욱 속행하는 예를 나타내고 있다.
이와 같이 유효화 키 블록(EKB)과, 유효화 키 블록(EKB)에 포함되는 갱신 노드 키로 암호 처리한 프로그램 코드를 배신함으로써, 특정한 디바이스에서 해독 가능한 프로그램 코드를 전술의 도 3에서 도시한 특정한 디바이스, 혹은 그룹에 대하여 배신하는 것이 가능해진다.
[송신 콘텐츠에 대한 체크값(ICV: Integrity Check Value)을 대응시키는 구성]
다음에, 콘텐츠의 개찬(改竄)을 방지하기 위해 콘텐츠의 인터그리티 체크값(ICV)을 생성하여, 콘텐츠에 대응시키고, ICV의 계산에 의해 콘텐츠 개찬의 유무를 판정하는 처리 구성에 대하여 설명한다.
콘텐츠의 인터그리티 체크값(ICV)은, 예를 들면 콘텐츠에 대한 해시 함수를 이용하여 계산되며, ICV=hash(Kicv, C1, C2, …)에 의해 계산된다. Kicv는 ICV 생성 키이다. C1, C2는 콘텐츠의 정보이고, 콘텐츠의 중요 정보의 메시지 인증 부호(MAC: Message authentication Code)가 사용된다.
DES 암호 처리 구성을 이용한 MAC 값 생성 예를 도 18에 도시한다. 도 18의 구성에 도시한 바와 같이 대상이 되는 메시지를 8바이트 단위로 분할하고, (이하, 분할된 메시지를 M1, M2, …, MN으로 함), 우선, 초기 값(Initial Value(이하, IV로 함))과 M1의 배타적 논리합을 구한다 (그 결과를 I1로 함). 다음에, I1을 DES 암호화부에 넣고, 키(이하, K1로 함)를 이용하여 암호화한다 (출력을 E1로 함). 계속해서, E1과 M2의 배타적 논리합을 구하고, 그 출력 I2를 DES 암호화부로 넣고, 키 K1을 이용하여 암호화한다 (출력 E2). 이하, 이것을 반복하여, 모든 메시지에 대하여 암호화 처리를 실시한다. 마지막으로 나온 EN이 메시지 인증 부호(MAC (Message Authentication Code))로 된다.
이러한 콘텐츠의 MAC 값과 ICV 생성 키에 해시 함수를 적용하여 이용하여 콘텐츠의 인터그리티 체크값(ICV)이 생성된다. 개찬이 없는 것이 보증된, 예를 들면 콘텐츠 생성 시에 생성한 ICV와, 새롭게 콘텐츠에 기초하여 생성한 ICV를 비교하여 동일한 ICV가 얻어지면 콘텐츠에 개찬이 없는 것이 보증되며, ICV가 다르면, 개찬 이 있었다고 판정된다.
[체크값(ICV)의 생성 키 Kicv를 EKB에 의해 배포하는 구성]
다음에, 콘텐츠의 인터그리티 체크값(ICV) 생성 키인 Kicv를 상술한 유효화 키 블록에 의해 송부하는 구성에 대하여 설명한다. 즉 EKB에 의한 암호화 메시지 데이터를 콘텐츠의 인터그리티 체크값(ICV) 생성 키로 한 예이다.
도 19 및 도 20에 복수의 디바이스에 공통의 콘텐츠를 송부한 경우, 이들 콘텐츠의 개찬의 유무를 검증하기 위한 인터그리티 체크값 생성 키 Kicv를 유효화 키 블록(EKB)에 의해 배신하는 구성예를 나타낸다. 도 19는 디바이스 0, 1, 2, 3에 대하여 복호 가능한 체크값 생성 키 Kicv를 배신하는 예, 도 20은 디바이스 0, 1, 2, 3 중의 디바이스 3을 리보크(배제)하여 디바이스 0, 1, 2에 대해서만 복호 가능한 체크값 생성 키 Kicv를 배신하는 예를 나타낸다.
도 19의 예는, 갱신 노드 키 K(t)00에 의해, 체크값 생성 키 Kicv를 암호화한 데이터와 함께, 디바이스 0, 1, 2, 3에서 각각이 갖는 노드 키, 리프 키를 이용하여 갱신된 노드 키 K(t)00을 복호할 수 있는 유효화 키 블록(EKB)을 생성하여 배신한다. 각각의 디바이스는, 도 19의 우측에 도시한 바와 같이 우선, EKB를 처리(복호)함으로써 갱신된 노드 키 K(t)00을 취득하고, 다음에, 취득한 노드 키 K(t)00을 이용하여 암호화된 체크값 생성 키: Enc(K(t)00, Kicv)를 복호하여 체크값 생성 키 Kicv를 얻는 것이 가능해진다.
그 밖의 디바이스 4, 5, 6, 7…은 동일한 유효화 키 블록(EKB)을 수신하여도 자신이 보유하는 노드 키, 리프 키에서는, EKB를 처리하여 갱신된 노드 키 K(t)00 을 취득할 수 없기 때문에, 안전하게 정당한 디바이스에 대해서만 체크값 생성 키를 송부하는 것이 가능하다.
한편, 도 20의 예는, 도 3의 점선으로 둘러싼 그룹에서 디바이스 3이, 예를 들면 키의 누설에 의해 리보크(배제)되어 있다고 하여, 다른 그룹의 멤버, 즉, 디바이스 0, 1, 2에 대해서만 복호 가능한 유효화 키 블록(EKB)을 생성하여 배신한 예이다. 도 20에 도시한 유효화 키 블록(EKB)과, 체크값 생성 키(Kicv)를 노드 키(K(t)00)로 암호화한 데이터를 배신한다.
도 20의 우측에는, 복호 수순을 나타내고 있다. 디바이스 0, 1, 2는 우선, 수령한 유효화 키 블록으로부터 자신이 보유하는 리프 키 또는 노드 키를 이용한 복호 처리에 의해 갱신 노드 키(K(t)00)를 취득한다. 다음에, K(t)00에 의한 복호에 의해 체크값 생성 키 Kicv를 취득한다.
도 3에 도시한 다른 그룹의 디바이스 4, 5, 6…은, 이와 마찬가지의 데이터(EKB)를 수신하였다고 해도, 자신이 보유하는 리프 키, 노드 키를 이용하여 갱신 노드 키(K(t)00)를 취득할 수 없다. 마찬가지로 리보크된 디바이스 3에서도, 자신이 보유하는 리프 키, 노드 키에서는, 갱신 노드 키(K(t)00)를 취득할 수 없고, 정당한 권리를 갖는 디바이스만이 체크값 생성 키를 복호하여 이용하는 것이 가능해진다.
이와 같이, EKB를 이용한 체크값 생성 키의 배송을 이용하면, 데이터량을 적게 하고, 또한 안전하게 정당 권리자만이 복호 가능하게 한 체크값 생성 키를 배신하는 것이 가능해진다.
이러한 콘텐츠의 인터그리티 체크값(ICV)을 이용함으로써, EKB와 암호화 콘텐츠의 부정 복사를 배제할 수 있다. 예를 들면 도 21의 (a) 및 도 21의 (b)에 도시한 바와 같이, 콘텐츠 C1과 콘텐츠 C2를 각각의 콘텐츠 키를 취득 가능한 유효화 키 블록(EKB)과 함께 저장한 미디어 1이 있고, 이것을 그대로 미디어 2에 복사한 경우를 상정한다. EKB와 암호화 콘텐츠의 복사는 가능하며, 이것을 EKB로 복호 가능한 디바이스로서는 이용할 수 있게 된다.
도 21의 (b)에 도시한 바와 같이 각 미디어에 정당하게 저장된 콘텐츠에 대응하여 인터그리티 체크값(ICV(C1, C2))을 저장하는 구성으로 한다. 또, (ICV(C1, C2))는, 콘텐츠 C1과 콘텐츠 C2에 해시 함수를 이용하여 계산되는 콘텐츠의 인터그리티 체크값인 ICV=hash(Kicv, C1, C2)를 나타내고 있다. 도 21의 (b)의 구성에서, 미디어 1에는 정당하게 콘텐츠 1과 콘텐츠 2가 저장되며, 콘텐츠 C1과 콘텐츠 C2에 기초하여 생성된 인터그리티 체크값(ICV(C1, C2))이 저장된다. 또한, 미디어 2에는 정당하게 콘텐츠 1이 저장되고, 콘텐츠 C1에 기초하여 생성된 인터그리티 체크값(ICV(C1))이 저장된다. 이 구성에서, 미디어 1에 저장된 {EKB, 콘텐츠 2}를 미디어 2에 복사하였다고 하면, 미디어 2에서, 콘텐츠 체크값을 새롭게 생성하면 ICV(C1, C2)가 생성되게 되어, 미디어에 저장되어 있는 Kicv(C1)와 달리, 콘텐츠의 개찬 혹은 부정한 복사에 의한 새로운 콘텐츠의 저장이 실행된 것이 명백하게 된다. 미디어를 재생하는 디바이스에서, 재생 단계의 이전 단계에 ICV 체크를 실행하여, 생성 ICV와 저장 ICV의 일치를 판별하고, 일치하지 않는 경우에는 재생을 실행하지 않는 구성으로 함으로써, 부정 복사의 콘텐츠의 재생을 방지하는 것이 가능해 진다.
또한, 더욱 안전성을 높이기 위해 콘텐츠의 인터그리티 체크값(ICV)을 재기입하여 카운터를 포함시킨 데이터에 기초하여 생성하는 구성으로 하여도 된다. 즉 ICV=hash(Kicv, counter+1, C1, C2, …)에 의해 계산하는 구성으로 한다. 여기서, 카운터(counter+1)는 ICV의 재기록마다 1 인크리먼트되는 값으로서 설정한다. 또, 카운터 값은 시큐어 메모리에 저장하는 구성으로 하는 것이 필요하다.
또한, 콘텐츠의 인터그리티 체크값(ICV)을 콘텐츠와 동일 미디어에 저장할 수 없는 구성에서는, 콘텐츠의 인터그리티 체크값(ICV)을 콘텐츠와는 다른 미디어 상에 저장하는 구성으로 하여도 된다.
예를 들면, 판독 전용 미디어나 통상의 MO 등의 복사 방지책이 취해지고 있지 않은 미디어에 콘텐츠를 저장하는 경우, 동일 미디어에 인터그리티 체크값(ICV)을 저장하면 ICV의 재기록이 부정한 사용자에 의해 이루어질 가능성이 있어, ICV의 안전성이 지켜지지 않을 우려가 있다. 이러한 경우, 호스트 머신(host machine) 상의 안전한 미디어에 ICV를 저장하여, 콘텐츠의 복사 컨트롤(예를 들면 check-in/check-out, move)에 ICV를 사용하는 구성으로 함으로써, ICV의 안전한 관리 및 콘텐츠의 개찬 체크가 가능해진다.
이러한 구성 예를 도 22에 도시한다. 도 22에서는 판독 전용 미디어나 통상의 MO 등의 복사 방지책이 취해지고 있지 않은 미디어(2201)에 콘텐츠가 저장되고, 이들 콘텐츠에 관한 인터그리티 체크값(ICV)을, 사용자가 자유롭게 액세스하는 것이 허가되지 않은 호스트 머신 상의 안전한 미디어(2202)에 저장하고, 사용자에 의 한 부정한 인터그리티 체크값(ICV)의 재기록을 방지한 예이다. 이러한 구성으로서, 예를 들면 미디어(2201)를 장착한 디바이스가 미디어(2201)의 재생을 실행할 때 호스트 머신인 PC, 서버에서 ICV의 체크를 실행하여 재생의 가부를 판정하는 구성으로 하면, 부정한 복사 콘텐츠 혹은 개찬 콘텐츠의 재생을 방지할 수 있다.
[계층 트리 구조의 카테고리 분류]
암호 키를 루트 키, 노드 키, 리프 키 등, 도 3의 계층 트리 구조로서 구성하고, 콘텐츠 키, 인증 키, ICV 생성 키, 혹은 프로그램 코드, 데이터 등을 유효화 키 블록(EKB)과 함께 암호화하여 배신하는 구성에 대하여 설명하였지만, 노드 키 등을 정의하고 있는 계층 트리 구조를 각 디바이스의 카테고리마다 분류하여 효율적인 키 갱신 처리, 암호화 키 배신, 데이터 배신을 실행하는 구성에 대하여, 이하에 설명한다.
도 23에 계층 트리 구조의 카테고리의 분류의 일례를 나타낸다. 도 23에서, 계층 트리 구조의 최상단에는, 루트 키(Kroot)(2301)가 설정되고, 이하의 중간단에는 노드 키(2302)가 설정되며, 최하단에는 리프 키(2303)가 설정된다. 각 디바이스는 개개의 리프 키와, 리프 키로부터 루트 키에 이르는 일련의 노드 키, 루트 키를 보유한다.
여기서, 일례로서 최상단으로부터 제M 단째의 임의의 노드를 카테고리 노드(2304)로서 설정한다. 즉 제M 단째의 노드의 각각을 특정 카테고리의 디바이스 설정 노드로 한다. 제M 단의 하나의 노드를 정점으로 하여 이하, M+1단 이하의 노드, 리프는, 그 카테고리에 포함되는 디바이스에 관한 노드 및 리프로 한다.
예를 들면 도 23의 제M 단째의 하나의 노드(2305)에는 카테고리[메모리 스틱(상표)]가 설정되고, 이 노드 이하에 연속해 있는 노드, 리프는 메모리 스틱을 사용한 다양한 디바이스를 포함하는 카테고리 전용의 노드 또는 리프로서 설정된다. 즉, 노드(2305) 이하를, 메모리 스틱의 카테고리로 정의되는 디바이스의 관련 노드 및 리프의 집합으로서 정의한다.
또한, M단으로부터 수단분 하위의 단을 서브 카테고리 노드(2306)로서 설정할 수 있다. 예를 들면 도 23에 도시한 바와 같이 카테고리[메모리 스틱] 노드(2305)의 2단 아래의 노드에, 메모리 스틱을 사용한 디바이스의 카테고리에 포함되는 서브 카테고리 노드로서, [재생 전용기]의 노드를 설정한다. 또한, 서브 카테고리 노드인 재생 전용기의 노드(2306) 이하에, 재생 전용기의 카테고리에 포함되는 음악 재생 기능이 부가된 전화의 노드(2307)가 설정되고, 또한 그 하위에, 음악 재생 기능이 부가된 전화의 카테고리에 포함되는 [PHS] 노드(2308)와 [휴대 전화] 노드(2309)를 설정할 수 있다.
또한, 카테고리, 서브 카테고리는 디바이스의 종류뿐만 아니라, 예를 들면 임의의 메이커, 콘텐츠 프로바이더, 결제 기관 등이 독자적으로 관리하는 노드, 즉 처리 단위, 관할 단위, 혹은 제공 서비스 단위 등, 임의의 단위(이들을 총칭하여 이하, 엔티티라 함)로 설정하는 것이 가능하다. 예를 들면 하나의 카테고리 노드를 게임 기기 메이커가 판매하는 게임 기기 XYZ 전용의 정점 노드로서 설정하면, 메이커가 판매하는 게임 기기 XYZ에 그 정점 노드 이하의 하단의 노드 키, 리프 키를 저장하여 판매하는 것이 가능해지고, 그 후, 암호화 콘텐츠의 배신, 혹은 각종 키의 배신, 갱신 처리를, 그 정점 노드 키 이하의 노드 키, 리프 키에 의해 구성되는 유효화 키 블록(EKB)을 생성하여 배신하고, 정점 노드 이하의 디바이스에 대해서만 이용 가능한 데이터가 배신 가능해진다.
이와 같이, 하나의 노드를 정점으로 하여, 이하의 노드를 그 정점 노드에 정의된 카테고리, 혹은 서브 카테고리의 관련 노드로서 설정하는 구성으로 함으로써, 카테고리단, 혹은 서브 카테고리단의 하나의 정점 노드를 관리하는 메이커, 콘텐츠 프로바이더 등이 그 노드를 정점으로 하는 유효화 키 블록(EKB)을 독자적으로 생성하여, 정점 노드 이하에 속하는 디바이스로 배신하는 구성이 가능해지며, 정점 노드에 속하지 않은 다른 카테고리의 노드에 속하는 디바이스에는 전혀 영향을 미치게 하지 않고서 키 갱신을 실행할 수 있다.
이상, 특정한 실시예를 참조하면서, 본 발명에 대하여 상세히 설명하였다. 그러나, 본 발명의 요지를 일탈하지 않는 범위에서 당업자가 실시예의 수정이나 대용을 할 수 있는 것은 자명하다. 즉, 예시라는 형태로 본 발명을 개시한 것이며, 한정적으로 해석되어서는 안된다. 본 발명의 요지를 판단하기 위해서는, 하기에 기재하는 청구의 범위 란을 참작하여야 한다.
이상, 설명한 바와 같이, 본 발명의 정보 처리 시스템 및 방법에 따르면, 트리(나무) 구조의 키 배포 구성에 의해 콘텐츠 키나 인증 키, 콘텐츠 체크값 생성 키, 프로그램 데이터 등의 유효화 키 블록(EKB)과 함께 송신하는 구성으로 하였기 때문에, 정당한 디바이스에서만 복호 가능한 암호 데이터 배신이 가능해짐과 함께 배신 메시지량을 적게 억제할 수 있다.
또한, 트리 구조의 암호화 키, 데이터 배신 방식을 이용하여 콘텐츠 키나 인증 키, 콘텐츠 체크값 생성 키, 프로그램 데이터 등을 유효화 키 블록(EKB)과 함께 송신하는 구성에서, 또한 공통 키 방식, 혹은 공개 키 방식의 인증 처리를 병용하는 구성으로 하면, 더욱 안전한 데이터 배신이 가능해진다.
또한, 본 발명의 정보 처리 시스템 및 방법에 따르면, 콘텐츠에 대한 인터그리티 체크값(ICV)을 콘텐츠를 저장한 기록 매체, 혹은 그 밖의 미디어에 저장하여 콘텐츠 개찬의 체크, 혹은 복사 체크를 가능하게 하였기 때문에, 부정한 콘텐츠의 유통을 방지할 수 있다.
또한, 본 발명의 정보 처리 시스템 및 방법에 따르면, 트리 구조의 암호화 키, 데이터 배신 방식에서, 계층 트리를 카테고리마다 분류하여 각 카테고리가 관리하는 정점 노드 이하의 노드, 리프를 특정한 디바이스로 한정하는 구성으로 하였기 때문에, 각 카테고리의 관리자가 독자적으로 유효화 키 블록(EKB)을 생성하여 관리 하에 있는 디바이스에 대하여 배신하는 것이 가능하게 된다.

Claims (33)

1 이상의 선택된 디바이스에만 이용할 수 있는 암호화 메시지 데이터를 배신하는 정보 처리 시스템에 있어서,
개개의 디바이스는,
복수의 상이한 디바이스를 리프로 하는 계층 트리 구조에서의 각 노드에 고유의 노드 키와 각 디바이스 고유의 리프 키의 상이한 키 세트를 각각 보유함과 함께, 디바이스에 대하여 배신되는 상기 암호화 메시지 데이터에 대한 복호 처리를 상기 키 세트를 사용하여 실행하는 암호 처리 수단을 포함하고,
상기 암호화 메시지 데이터를 배신하는 메시지 데이터 배신 수단은,
상기 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 상기 갱신 노드 키를 상기 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)을 생성함과 함께, 상기 갱신 노드 키에 의해 암호화한 메시지 데이터를 생성하여 배신하는 구성을 포함하고,
상기 유효화 키 블록(EKB)은 암호화 키 데이터의 데이터부 및 상기 계층 트리내의 상기 암호화 키 데이터의 위치 정보의 태그부를 포함하는 것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 디바이스에서의 상기 암호 처리 수단은, 상기 유효화 키 블록(EKB)의 처리에 의해 상기 갱신 노드 키를 취득하고, 상기 취득된 갱신 노드 키에 의해 상 기 암호화 메시지 데이터의 복호를 실행하는 구성인 것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 메시지 데이터는 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키인 것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 메시지 데이터는 인증 처리에 이용되는 인증 키인 것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 메시지 데이터는 콘텐츠의 인터그리티 체크값(ICV) 생성 키인 것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 메시지 데이터는 프로그램 코드인 것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 메시지 데이터 배신 수단은 상기 유효화 키 블록(EKB)과, 상기 메시지 데이터로서 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키와, 상기 콘텐츠 키로 암호화한 암호화 콘텐츠에 의해 구성되는 암호화 데이터를 배신하는 구성인 것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 메시지 데이터 배신 수단과 상기 디바이스는, 각각 인증 처리를 실행하는 인증 처리 수단을 포함하고,
상기 메시지 데이터의 배신은, 상기 메시지 데이터 배신 수단과 상기 디바이스 사이에서의 인증 처리가 성립한 것을 조건으로 하여 배신하는 구성인
것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 메시지 데이터 배신 수단과 상기 디바이스 사이에는 다른 중간 디바이스가 개재하고,
상기 메시지 데이터 배신 수단은, 상기 메시지 데이터를 배신하는 목적이 되는 목적 디바이스에만 복호 가능한 유효화 키 블록(EKB)과 암호화 메시지 데이터를 생성하여 배신하는 구성을 갖는
것을 특징으로 하는 정보 처리 시스템.
제1항에 있어서,
상기 계층 트리 구조는 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹에 의해 구성되는 카테고리 그룹을 포함하며,
상기 카테고리 그룹은 디바이스 종류, 서비스 종류, 관리 수단 종류 등의 유일하게 정의된 카테고리에 속하는 디바이스의 집합으로서 구성되어 있는
것을 특징으로 하는 정보 처리 시스템.
제10항에 있어서,
상기 카테고리 그룹은, 상기 계층 트리 구조의 하위단에 1 이상의 서브 카테고리를 더 포함하며,
상기 서브 카테고리 그룹은 디바이스 종류, 서비스 종류, 관리 수단 종류 등의 유일하게 정의된 서브 카테고리에 속하는 디바이스의 집합으로서 구성되어 있는
것을 특징으로 하는 정보 처리 시스템.
1 이상의 선택된 디바이스에서만 이용할 수 있는 암호화 메시지 데이터를 메시지 데이터 배신 수단으로부터 배신하는 정보 처리 방법에 있어서,
복수의 상이한 디바이스를 리프로 하는 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 상기 갱신 노드 키를 상기 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)을 생성함과 함께, 상기 갱신 노드 키에 의해 암호화한 메시지 데이터를 생성하여 디바이스에 대하여 배신하는 메시지 데이터 배신 단계와,
상기 계층 트리 구조에서의 각 노드에 고유의 노드 키와 각 디바이스 고유의 리프 키의 상이한 키 세트를 각각 보유하는 디바이스에 있어서, 상기 암호화 메시지 데이터에 대한 복호 처리를 상기 키 세트를 사용하여 실행하는 복호 처리 단계를 포함하고,
상기 유효화 키 블록(EKB)은 암호화 키 데이터의 데이터부 및 상기 계층 트리내의 상기 암호화 키 데이터의 위치 정보의 태그부를 포함하는 정보 처리 방법.
제12항에 있어서,
상기 복호 처리 단계는
상기 유효화 키 블록(EKB)의 처리에 의해, 상기 갱신 노드 키를 취득하는 갱신 노드 키 취득 단계와,
상기 갱신 노드 키에 의해 상기 암호화 메시지 데이터의 복호를 실행하는 메시지 데이터 복호 단계
를 포함하는 것을 특징으로 하는 정보 처리 방법.
제12항에 있어서,
상기 메시지 데이터는 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키인 것을 특징으로 하는 정보 처리 방법.
제12항에 있어서,
상기 메시지 데이터는, 인증 처리에 이용되는 인증 키인 것을 특징으로 하는 정보 처리 방법.
제12항에 있어서,
상기 메시지 데이터는 콘텐츠의 인터그리티 체크값(ICV) 생성 키인 것을 특징으로 하는 정보 처리 방법.
제12항에 있어서,
상기 메시지 데이터는 프로그램 코드인 것을 특징으로 하는 정보 처리 방법.
제12항에 있어서,
상기 메시지 데이터 배신 수단은, 상기 유효화 키 블록(EKB)과, 상기 메시지 데이터로서 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키와 상기 콘텐츠 키로 암호화한 암호화 콘텐츠에 의해 구성되는 암호화 데이터를 배신하는 것을 특징으로 하는 정보 처리 방법.
제12항에 있어서,
상기 메시지 데이터 배신 수단과 상기 디바이스는, 상호간의 인증 처리를 실행하고,
상기 메시지 데이터의 배신은, 상기 메시지 데이터 배신 수단과 상기 디바이스 사이에서의 인증 처리가 성립한 것을 조건으로 하여 배신하는
것을 특징으로 하는 정보 처리 방법.
제12항에 있어서,
상기 메시지 데이터 배신 수단과 상기 디바이스 사이에는 다른 중간 디바이스가 개재되고,
상기 메시지 데이터 배신 수단은, 상기 메시지 데이터를 배신하는 목적이 되는 목적 디바이스에서만 복호 가능한 유효화 키 블록(EKB)과 암호화 메시지 데이터를 생성하여 배신하는
것을 특징으로 하는 정보 처리 방법.
데이터를 저장한 정보 기록 매체에 있어서,
복수의 상이한 디바이스를 리프로 하는 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 상기 갱신 노드 키를 상기 그룹의 노드 키 혹은 리프 키에 의해서 암호화한 유효화 키 블록(EKB)과,
상기 갱신 노드 키에 의해 암호화한 메시지 데이터
를 저장하고,
상기 유효화 키 블록(EKB)은 암호화 키 데이터의 데이터부 및 상기 계층 트리내의 상기 암호화 키 데이터의 위치 정보의 태그부를 포함하는 것을 특징으로 하는 정보 기록 매체.
제21항에 있어서,
상기 메시지 데이터는 콘텐츠의 복호에 이용하는 콘텐츠 키이며,
상기 정보 기록 매체는, 상기 콘텐츠 키에 의해 암호화된 암호화 콘텐츠를 더 저장한 구성인
것을 특징으로 하는 정보 기록 매체.
제22항에 있어서,
상기 정보 기록 매체는, 콘텐츠와 상기 콘텐츠의 대응하는 콘텐츠 키를 취득하기 위해 사용되는 유효화 키 블록(EKB)을 대응시킨 대응 데이터를 더 저장하고 있는 것을 특징으로 하는 정보 기록 매체.
제21항에 있어서,
상기 정보 기록 매체는, 콘텐츠의 인터그리티 체크값(ICV) 데이터를 더 저장하고 있는 것을 특징으로 하는 정보 기록 매체.
암호화 콘텐츠 데이터의 복호 처리를 컴퓨터 시스템 상에서 실행시키는 컴퓨터 프로그램을 제공하는 프로그램 제공 매체에 있어서,
상기 컴퓨터 프로그램은
복수의 상이한 디바이스를 리프로 하는 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키에 대하여, 상기 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)의 복호 처리에 의해 갱신 노드 키를 취득하는 갱신 노드 키 취득 단계와,
상기 갱신 노드 키에 의한 복호 처리를 실행하여, 상기 암호화 콘텐츠의 복호 키로서 사용하는 콘텐츠 키를 취득하는 단계와,
상기 콘텐츠 키에 의해 상기 암호화 콘텐츠의 복호를 실행하는 단계
를 포함하고,
상기 유효화 키 블록(EKB)은 암호화 키 데이터의 데이터부 및 상기 계층 트리내의 상기 암호화 키 데이터의 위치 정보의 태그부를 포함하는 것을 특징으로 하는 프로그램 제공 매체.
1 이상의 선택된 디바이스에서만 이용할 수 있는 암호화 메시지 데이터를 배신하는 정보 처리 방법에 있어서,
복수의 상이한 디바이스를 리프로 하는 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 상기 갱신 노드 키를 상기 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)을 생성하고,
상기 갱신 노드 키에 의해 암호화한 메시지 데이터를 생성하여 디바이스에 대하여 배신하도록 하고,
상기 유효화 키 블록(EKB)은 암호화 키 데이터의 데이터부 및 상기 계층 트리내의 상기 암호화 키 데이터의 위치 정보의 태그부를 포함하는 것을 특징으로 하는 정보 처리 방법.
제26항에 있어서,
상기 메시지 데이터는 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키인 것을 특징으로 하는 정보 처리 방법.
제26항에 있어서,
상기 메시지 데이터는 인증 처리에 이용되는 인증 키인 것을 특징으로 하는 정보 처리 방법.
제26항에 있어서,
상기 메시지 데이터는 콘텐츠의 인터그리티 체크값(ICV) 생성 키인 것을 특징으로 하는 정보 처리 방법.
제26항에 있어서,
상기 유효화 키 블록(EKB)과,
상기 메시지 데이터로서 콘텐츠 데이터를 복호하기 위한 복호 키로서 사용 가능한 콘텐츠 키와 상기 콘텐츠 키로 암호화한 암호화 콘텐츠에 의해 구성되는 암호화 데이터
를 배신하는 것을 특징으로 하는 정보 처리 방법.
복수의 상이한 디바이스를 리프로 하는 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키에 대하여, 상기 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)의 복호 처리를 행함으로써 상기 갱신 노드 키를 취득하는 갱신 노드 키 취득 단계와,
상기 갱신 노드 키에 의한 복호 처리를 실행하여, 상기 암호화 콘텐츠의 복호 키로서 사용하는 콘텐츠 키를 취득하는 콘텐츠 키 취득 단계와,
상기 콘텐츠 키에 의해 상기 암호화 콘텐츠의 복호를 실행하는 실행 단계
를 포함하고,
상기 유효화 키 블록(EKB)은 암호화 키 데이터의 데이터부 및 상기 계층 트리내의 상기 암호화 키 데이터의 위치 정보의 태그부를 포함하는 것을 특징으로 하는 정보 처리 방법.
1 이상의 선택된 디바이스에서만 이용할 수 있는 암호화 메시지 데이터를 배신하는 정보 처리 시스템에 있어서,
개개의 디바이스는,
복수의 상이한 디바이스를 리프로 하는 계층 트리 구조에서의 각 노드에 고유의 노드 키와 각 디바이스 고유의 리프 키의 상이한 키 세트를 각각 보유함과 함께, 디바이스에 대하여 배신되는 상기 암호화 메시지 데이터에 대한 복호 처리를 상기 키 세트를 사용하여 실행하는 암호 처리 수단을 포함하며,
상기 암호화 메시지 데이터를 배신하는 메시지 데이터 배신 수단은,
상기 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키와, 상기 갱신 노드 키를 상기 그룹의 노드 키 혹은 리프 키에 의해 암호화한 유효화 키 블록(EKB)을 생성함과 함께, 상기 갱신 노드 키에 의해 암호화한 암호화 메시지 데이터를 생성하여 배신하는 구성을 갖고,
상기 메시지 데이터 배신 수단은,
상기 갱신 노드 키를 이용하여 암호화한 암호화 메시지 데이터와,
상기 선택된 디바이스 이외의 디바이스가 보유하지 않는 리프 키, 혹은 노드 키를 이용하여 암호화된 상기 갱신 노드 키를 하나 이상 포함하는 유효화 키 블록(EKB)을 생성함과 함께, 상기 암호화 메시지 데이터와 상기 유효화 키 블록을 함께 배신하며,
상기 선택된 디바이스는,
상기 선택된 디바이스만이 보유하고 있는 상기 키 세트 및 상기 유효화 키 블록을 이용하여 상기 암호화 메시지 데이터를 원래의 메시지 데이터로 복호하도록 하고,
상기 유효화 키 블록(EKB)은 암호화 키 데이터의 데이터부 및 상기 계층 트리내의 상기 암호화 키 데이터의 위치 정보의 태그부를 포함하는 것을 특징으로 하는 정보 처리 시스템.
정보 처리 장치에 있어서,
복수의 상이한 디바이스를 리프로 하는 계층 트리 구조에서의 각 노드에 고유의 노드 키와 각 디바이스 고유의 리프 키의 상이한 키 세트가 각각 규정되어 있으며, 그 중의 하나를 보유하는 키 세트 기억 수단과,
상기 키 세트 기억 수단에 기억되어 있는 상기 노드 키 및 상기 리프 키 혹은 배신되는 키를 이용함으로써, 암호화 데이터를 복호화하는 암호 처리 수단을 포함하며,
상기 암호 처리 수단은,
상기 계층 트리 구조의 하나의 노드를 정점 노드로 하고, 상기 정점 노드의 하위에 연결되는 노드 및 리프에 의해 구성되는 그룹 내의 노드 키 중 적어도 어느 하나를 갱신한 갱신 노드 키에 의해 암호화한 메시지 데이터와,
선택된 디바이스 이외의 디바이스가 보유하지 않은 리프 키, 혹은 노드 키를 이용하여 암호화된 상기 갱신 노드 키를 하나 이상 포함하는 유효화 키 블록(EKB)을 포함하는 암호화 데이터에 대하여, 상기 키 세트 기억 수단에 보유되어 있는 리프 키 혹은 노드 키에 의해 상기 메시지 데이터를 암호화한 갱신 노드 키를 복호화하고,
상기 갱신 노드 키로 상기 암호화 메시지 데이터를 복호화하도록 하고,
상기 유효화 키 블록(EKB)은 암호화 키 데이터의 데이터부 및 상기 계층 트리내의 상기 암호화 키 데이터의 위치 정보의 태그부를 포함하는 것을 특징으로 하는 정보 처리 장치.
KR1020017015690A 2000-04-06 2001-04-02 정보 처리 시스템, 정보 처리 방법 및 정보 기록 매체와프로그램 제공 매체 KR100746880B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2000105329 2000-04-06
JPJP-P-2000-00105329 2000-04-06
JPJP-P-2000-00179695 2000-06-15
JP2000179695A JP2001352321A (ja) 2000-04-06 2000-06-15 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム提供媒体

Publications (2)

Publication Number Publication Date
KR20020026284A KR20020026284A (ko) 2002-04-09
KR100746880B1 true KR100746880B1 (ko) 2007-08-07

Family

ID=26589613

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017015690A KR100746880B1 (ko) 2000-04-06 2001-04-02 정보 처리 시스템, 정보 처리 방법 및 정보 기록 매체와프로그램 제공 매체

Country Status (13)

Country Link
US (1) US7443984B2 (ko)
EP (1) EP1187390B1 (ko)
JP (1) JP2001352321A (ko)
KR (1) KR100746880B1 (ko)
CN (1) CN100417064C (ko)
AT (1) ATE355671T1 (ko)
AU (1) AU780325C (ko)
DE (1) DE60126874T2 (ko)
HK (1) HK1052417A1 (ko)
MX (1) MXPA01012518A (ko)
NO (1) NO332239B1 (ko)
TW (1) TW518871B (ko)
WO (1) WO2001078298A1 (ko)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003523698A (ja) * 2000-02-17 2003-08-05 松下電器産業株式会社 試用コンテンツと購入用コンテンツとを記録した半導体メモリカード、半導体メモリカードの記録装置及び記録再生装置並びに半導体メモリカードの販売方法
US9520993B2 (en) 2001-01-26 2016-12-13 International Business Machines Corporation Renewable traitor tracing
US7039803B2 (en) 2001-01-26 2006-05-02 International Business Machines Corporation Method for broadcast encryption and key revocation of stateless receivers
JP2003050745A (ja) * 2001-08-07 2003-02-21 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4649797B2 (ja) * 2001-08-09 2011-03-16 ソニー株式会社 情報記録装置、情報再生装置、および情報記録方法、情報再生方法、並びにコンピュータ・プログラム
GB0129065D0 (en) * 2001-12-05 2002-01-23 Philips Electronics Uk Ltd Method and apparatus for verifying the integrity of system data
US7340603B2 (en) * 2002-01-30 2008-03-04 Sony Corporation Efficient revocation of receivers
JP2003229843A (ja) * 2002-01-31 2003-08-15 Sony Corp ストリーミングシステム及びストリーミング方法、クライアント端末及びコンテンツデータ復号方法、ストリームサーバ及びストリーム配信方法、オーサリング装置及びオーサリング方法、並びにプログラム及び記録媒体
JP4391056B2 (ja) 2002-04-15 2009-12-24 ソニー株式会社 情報管理装置および方法、記録媒体、並びにプログラム
JP3818505B2 (ja) 2002-04-15 2006-09-06 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP4326186B2 (ja) * 2002-04-15 2009-09-02 ソニー株式会社 情報処理装置および方法
US7356147B2 (en) * 2002-04-18 2008-04-08 International Business Machines Corporation Method, system and program product for attaching a title key to encrypted content for synchronized transmission to a recipient
KR100449489B1 (ko) * 2002-10-23 2004-09-22 한국전자통신연구원 이동 노드와 홈 다이아메터 서버간의 aaa 비밀키재발급 방법
JP3857641B2 (ja) * 2002-12-17 2006-12-13 株式会社東芝 コンテンツ配信方法及びコンテンツ配信システム
US7840960B2 (en) 2002-12-17 2010-11-23 Kabushiki Kaisha Toshiba Content distribution method and content distribution package
JP4432350B2 (ja) * 2003-04-18 2010-03-17 ソニー株式会社 データ処理方法、そのプログラム、その装置と受信装置
WO2005015557A2 (en) * 2003-08-08 2005-02-17 Koninklijke Philips Electronics N.V. Reproducing encrypted content using region keys
KR100533678B1 (ko) 2003-10-02 2005-12-05 삼성전자주식회사 공개 키 기반 구조의 도메인을 형성하여 UPnP를통하여 구현하는 방법
US7539307B2 (en) * 2003-11-26 2009-05-26 International Business Machines Corporation System, method, and service for delivering enhanced multimedia content on physical media
US8249258B2 (en) * 2004-06-07 2012-08-21 National Institute Of Information And Communications Technology Communication method and communication system using decentralized key management scheme
JP4162237B2 (ja) * 2004-06-24 2008-10-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 複数の復号化装置に対し選択的にメッセージを配信する暗号化通信システム、暗号化装置、復号化装置、暗号化方法、復号化方法、暗号化プログラム、及び復号化プログラム
US8090105B2 (en) * 2004-11-24 2012-01-03 International Business Machines Corporation Broadcast encryption with dual tree sizes
JP2006195586A (ja) 2005-01-11 2006-07-27 Ntt Docomo Inc コンテンツ配信ノード、ネットワーク機器および販売システム
KR100970391B1 (ko) * 2005-04-19 2010-07-15 삼성전자주식회사 브로드 캐스트 암호화 시스템에서의 태그 형성방법
US9787471B1 (en) * 2005-06-02 2017-10-10 Robert T. Jenkins and Virginia T. Jenkins Data enciphering or deciphering using a hierarchical assignment system
JP2007034835A (ja) * 2005-07-28 2007-02-08 Toshiba Corp Icカード、受信装置、端末リスト生成装置及び端末認証方法
JP4975035B2 (ja) * 2005-09-16 2012-07-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 暗号化による役割ベースのアクセス制御
US8135645B2 (en) * 2005-12-06 2012-03-13 Microsoft Corporation Key distribution for secure messaging
JP4763447B2 (ja) 2005-12-19 2011-08-31 株式会社ソニー・コンピュータエンタテインメント 認証システム及び認証対象装置
FR2896907A1 (fr) 2006-01-31 2007-08-03 Thomson Licensing Sa Methode de gravure et de distribution de donnees numeriques et dispositif associe.
KR100772877B1 (ko) 2006-04-25 2007-11-02 삼성전자주식회사 디바이스 상호간 계층적 연결 장치 및 방법
CN101192918B (zh) * 2006-11-24 2011-05-11 中兴通讯股份有限公司 一种广播网络中处理加密流的方法及系统
JP2008136135A (ja) * 2006-11-29 2008-06-12 Toshiba Corp 再生装置、更新制御プログラムおよびサーバ装置
KR101321401B1 (ko) * 2007-02-02 2013-10-25 재단법인서울대학교산학협력재단 그룹 키 관리 방법 및 이를 이용한 그룹 키 관리 장치
US8290157B2 (en) 2007-02-20 2012-10-16 Sony Corporation Identification of a compromised content player
JP2008236377A (ja) * 2007-03-20 2008-10-02 Sony Corp 鍵提供システム、鍵提供装置、端末装置、鍵提供方法、及び鍵生成方法
JP2008236380A (ja) * 2007-03-20 2008-10-02 Sony Corp 鍵提供システム、端末装置、及び情報処理方法
CN101312409B (zh) * 2007-05-23 2010-08-04 上海络杰软件有限公司 一种信息分层处理系统
WO2009074941A1 (en) * 2007-12-12 2009-06-18 Koninklijke Philips Electronics N.V. Device keys for nnl encryption of software update applications
CN102004889B (zh) * 2010-11-30 2012-10-03 石家庄开发区冀科双实科技有限公司 一种树状分层系统中分层数据加密方法
US8675871B2 (en) 2011-05-31 2014-03-18 International Business Machines Corporation Protecting a control vector in an optional block of a standard key block
JP5906146B2 (ja) 2012-06-29 2016-04-20 株式会社沖データ 画像データ処理装置及びプログラム
CA2881985A1 (en) * 2012-08-15 2014-02-20 Hewlett-Packard Development Company, L.P. Metadata tree of a patient with lockboxes
JP6300800B2 (ja) 2012-08-15 2018-03-28 ヒューレット パッカード エンタープライズ デベロップメント エル ピーHewlett Packard Enterprise Development LP 記録のための暗号化データ記憶装置
CA2881962A1 (en) 2012-08-15 2014-02-20 Hewlett-Packard Development Company, L.P. Validating a metadata tree using a metadata integrity validator
US11127001B2 (en) * 2013-05-09 2021-09-21 Wayne Fueling Systems Llc Systems and methods for secure communication
FR3006082B1 (fr) * 2013-05-21 2017-01-27 Oberthur Technologies Procede de mise en œuvre d'un droit sur un contenu

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000012274A (ja) * 1998-06-22 2000-01-14 Hitachi Lighting Ltd 放電灯点灯装置

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4227253A (en) 1977-12-05 1980-10-07 International Business Machines Corporation Cryptographic communication security for multiple domain networks
EP0107448A3 (en) 1982-10-14 1987-01-21 Honeywell Information Systems Inc. Computer with multiple operating systems
US4611272A (en) 1983-02-03 1986-09-09 International Business Machines Corporation Key-accessed file organization
US4969188A (en) 1987-02-17 1990-11-06 Gretag Aktiengesellschaft Process and apparatus for the protection of secret elements in a network of encrypting devices with open key management
GB8704883D0 (en) 1987-03-03 1987-04-08 Hewlett Packard Co Secure information storage
US5200999A (en) 1991-09-27 1993-04-06 International Business Machines Corporation Public key cryptosystem key management based on control vectors
US5396614A (en) 1992-06-25 1995-03-07 Sun Microsystems, Inc. Method and apparatus for a secure protocol for virtual memory managers that use memory objects
JPH06175905A (ja) 1992-12-03 1994-06-24 Fujitsu Ltd 暗号化ファイル共有方法
US5432852A (en) 1993-09-29 1995-07-11 Leighton; Frank T. Large provably fast and secure digital signature schemes based on secure hash functions
JP3606285B2 (ja) 1994-02-18 2005-01-05 株式会社日立製作所 複数計算機システム間共用ファイルの誤使用防止方法
US5606617A (en) 1994-10-14 1997-02-25 Brands; Stefanus A. Secret-key certificates
DE19511298B4 (de) 1995-03-28 2005-08-18 Deutsche Telekom Ag Verfahren zur Erteilung und zum Entzug der Berechtigung zum Empfang von Rundfunksendungen und Decoder
US5721781A (en) 1995-09-13 1998-02-24 Microsoft Corporation Authentication system and method for smart card transactions
WO1997014147A1 (fr) 1995-10-09 1997-04-17 Matsushita Electric Industrial Co., Ltd. Support, appareil et procede d'enregistrement d'informations
US5748736A (en) * 1996-06-14 1998-05-05 Mittra; Suvo System and method for secure group communications via multicast or broadcast
JPH10198272A (ja) 1996-12-27 1998-07-31 Canon Inc 階層を有する鍵管理方法及び暗号システム、分散デジタル署名システム
US6272631B1 (en) 1997-06-30 2001-08-07 Microsoft Corporation Protected storage of core data secrets
JP3101592B2 (ja) 1997-09-03 2000-10-23 インターナショナル・ビジネス・マシーンズ・コーポレ−ション オーディオ機能を持つ外部記憶装置、及びオーディオ機能を持つ外部記憶装置を搭載可能な情報処理装置
JPH11102572A (ja) 1997-09-29 1999-04-13 Matsushita Electric Ind Co Ltd 記録装置、再生装置、記録再生装置、データ伝送装置および記録媒体
JPH11187013A (ja) * 1997-12-24 1999-07-09 Ibm Japan Ltd 暗号鍵配信システム
JPH11195269A (ja) 1997-12-26 1999-07-21 Victor Co Of Japan Ltd 情報暗号化方法、情報復号方法、情報暗号化装置、情報復号装置及び情報記録媒体
US6049878A (en) 1998-01-20 2000-04-11 Sun Microsystems, Inc. Efficient, secure multicasting with global knowledge
JPH11250568A (ja) * 1998-02-26 1999-09-17 Sony Corp 記録媒体読み出し装置およびデータ処理装置
US6118873A (en) 1998-04-24 2000-09-12 International Business Machines Corporation System for encrypting broadcast programs in the presence of compromised receiver devices
US6226618B1 (en) 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
JP2000113587A (ja) 1998-10-05 2000-04-21 Sony Corp 記録装置および方法、復号装置および方法、提供媒体、並びに情報記録媒体
CA2285872C (en) 1998-10-16 2009-10-06 Matsushita Electric Industrial Co., Ltd. Digital content protection system
WO2000052690A1 (fr) 1999-02-26 2000-09-08 Hitachi, Ltd. Enregistreur, lecteur et support d'enregistrement de signal numerique
US6636968B1 (en) 1999-03-25 2003-10-21 Koninklijke Philips Electronics N.V. Multi-node encryption and key delivery
US6367019B1 (en) 1999-03-26 2002-04-02 Liquid Audio, Inc. Copy security for portable music players
JP2000298942A (ja) 1999-04-15 2000-10-24 Toshiba Corp ディスク記憶装置及び同装置に適用するコピー防止システム
US6735313B1 (en) 1999-05-07 2004-05-11 Lucent Technologies Inc. Cryptographic method and apparatus for restricting access to transmitted programming content using hash functions and program identifiers
JP4011792B2 (ja) 1999-06-16 2007-11-21 株式会社東芝 記録方法、再生方法、記録装置、再生装置及び記録媒体
US6240188B1 (en) * 1999-07-06 2001-05-29 Matsushita Electric Industrial Co., Ltd. Distributed group key management scheme for secure many-to-many communication
US6263435B1 (en) * 1999-07-06 2001-07-17 Matsushita Electric Industrial Co., Ltd. Dual encryption protocol for scalable secure group communication
US6886098B1 (en) 1999-08-13 2005-04-26 Microsoft Corporation Systems and methods for compression of key sets having multiple keys
US7013389B1 (en) 1999-09-29 2006-03-14 Cisco Technology, Inc. Method and apparatus for creating a secure communication channel among multiple event service nodes
US6850914B1 (en) 1999-11-08 2005-02-01 Matsushita Electric Industrial Co., Ltd. Revocation information updating method, revocation informaton updating apparatus and storage medium
JP2001256113A (ja) 2000-03-13 2001-09-21 Toshiba Corp コンテンツ処理システムおよびコンテンツ保護方法
US7043024B1 (en) 2001-04-18 2006-05-09 Mcafee, Inc. System and method for key distribution in a hierarchical tree

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000012274A (ja) * 1998-06-22 2000-01-14 Hitachi Lighting Ltd 放電灯点灯装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
[논문] Secure Group communications Using Key Graphs(1998.09., Proceedings of ACM SIGCOMM 98) *
[논문] The Versakey Framework: Versatile Group Key Management(1999.09., IEEE Journal on Selected Areas in communications, Vol.17, No.9) *
[논문] 계층 비디오 멀티캐스트를 위한 효율적인 키 분배 방법(2000.12. 정보과학회논문지,제27권제4호) *
계층 비디오 멀티캐스트를 위한 효율적인 키 분배방법(2000.12) *

Also Published As

Publication number Publication date
NO20015908D0 (no) 2001-12-03
DE60126874D1 (de) 2007-04-12
US20020136411A1 (en) 2002-09-26
NO332239B1 (no) 2012-08-06
TW518871B (en) 2003-01-21
MXPA01012518A (es) 2002-07-02
HK1052417A1 (en) 2003-09-11
AU780325C (en) 2006-03-02
EP1187390A4 (en) 2003-05-07
CN100417064C (zh) 2008-09-03
EP1187390B1 (en) 2007-02-28
EP1187390A1 (en) 2002-03-13
WO2001078298A8 (fr) 2001-12-27
CN1383644A (zh) 2002-12-04
WO2001078298A1 (fr) 2001-10-18
KR20020026284A (ko) 2002-04-09
ATE355671T1 (de) 2006-03-15
AU4470901A (en) 2001-10-23
JP2001352321A (ja) 2001-12-21
AU780325B2 (en) 2005-03-17
DE60126874T2 (de) 2007-10-31
NO20015908L (no) 2002-02-05
US7443984B2 (en) 2008-10-28

Similar Documents

Publication Publication Date Title
KR100746880B1 (ko) 정보 처리 시스템, 정보 처리 방법 및 정보 기록 매체와프로그램 제공 매체
KR100840823B1 (ko) 암호 키 블록을 이용한 정보 처리 시스템 및 방법
KR100846262B1 (ko) 정보 처리 장치, 정보 처리 방법 및 프로그램 기억 매체
KR100777906B1 (ko) 정보 처리 시스템 및 방법
JP4710132B2 (ja) 情報処理システム、および情報処理方法、並びにプログラム記録媒体
JP4581246B2 (ja) 情報処理システム、および情報処理方法、並びにプログラム記録媒体
JP4078802B2 (ja) 情報処理システム、情報処理方法、情報処理装置、および情報記録媒体、並びにプログラム記録媒体
JP2001358707A (ja) 暗号鍵ブロックを用いた情報処理システムおよび情報処理方法、並びにプログラム提供媒体
WO2002056535A1 (fr) Appareil et procede permettant d'enregistrer et de reproduire des informations
JP4120135B2 (ja) 暗号鍵ブロックを用いた情報処理システムおよび情報処理方法、並びにプログラム提供媒体
JP4806847B2 (ja) 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム記録媒体
JP3988385B2 (ja) 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム記録媒体
WO2004100154A1 (ja) データ処理方法、そのプログラム、その装置および記録媒体
JP2010288291A (ja) 情報処理システム、および情報処理方法、並びにプログラム記録媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20110727

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20120723

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee