KR20050122174A - 정보 기록 매체 드라이브 장치 - Google Patents

정보 기록 매체 드라이브 장치 Download PDF

Info

Publication number
KR20050122174A
KR20050122174A KR1020047020071A KR20047020071A KR20050122174A KR 20050122174 A KR20050122174 A KR 20050122174A KR 1020047020071 A KR1020047020071 A KR 1020047020071A KR 20047020071 A KR20047020071 A KR 20047020071A KR 20050122174 A KR20050122174 A KR 20050122174A
Authority
KR
South Korea
Prior art keywords
information
key
seed
recording medium
processing
Prior art date
Application number
KR1020047020071A
Other languages
English (en)
Inventor
사또시 기따니
준 요네미쯔
가쯔미 무라마쯔
도모유끼 아사노
요시까즈 다까시마
Original Assignee
소니 가부시끼 가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니 가부시끼 가이샤 filed Critical 소니 가부시끼 가이샤
Publication of KR20050122174A publication Critical patent/KR20050122174A/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • 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/00094Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
    • G11B20/00115Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers wherein the record carrier stores a unique medium identifier
    • 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/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/00528Circuits 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 each title is encrypted with a separate encryption key for each title, e.g. title key for movie, song or data file
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Abstract

정보 기록 매체에 저장되는 암호화 콘텐츠의 부정 이용을 효과적으로 방지하는 것을 가능하게 한 구성을 제공한다. 암호화 콘텐츠의 복호에 적용하는 블록 키를 생성하기 위해 필요하게 되는 시드 정보(시드2)를 블록 키 Kb1에 의해 암호화하여 저장하는 구성으로 하였다. 또한, 시드 정보(시드2)를 디바이스 사이에서 전송하는 것이 필요하게 되는 구성에 있어서, 시드 정보(시드2) 및 기록 키 K2의 쌍방을 세션 키에 의해 암호화하여 송수신하는 구성으로 하였다. 본 구성에 의해, 정보 기록 매체, 및 데이터 전송로로부터의 데이터 취득에 의한 시드 정보(시드2) 해석은 곤란하게 되어, 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석 곤란성을 향상시킨 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다.

Description

정보 기록 매체 드라이브 장치{INFORMATION RECORDING MEDIUM DRIVE DEVICE}
본 발명은, 정보 처리 장치, 정보 기록 매체 드라이브 장치, 정보 기록 매체, 및 정보 처리 방법, 및 컴퓨터 프로그램에 관한 것이다. 특히, 정보 기록 매체를 이용한 데이터 기록 재생 처리에서의 부정한 콘텐츠 이용의 방지를 실현하는 정보 처리 장치, 정보 기록 매체 드라이브 장치, 정보 기록 매체, 및 정보 처리 방법, 및 컴퓨터 프로그램에 관한 것이다.
최근, 음악 등의 오디오 데이터, 영화 등의 화상 데이터, 게임 프로그램, 각종 어플리케이션 프로그램 등, 여러가지 소프트웨어 데이터(이하, 이들을 콘텐츠(Content)라고 함)가, 인터넷 등의 네트워크를 통하여, 혹은 CD(Compact Disc), DVD(Digital Versatile Disk), MD(Mini Disk) 등의 정보 기록 매체(미디어)를 통하여 유통되고 있다. 이들의 유통 콘텐츠는, 사용자가 소유하는 PC(Personal Computer), CD 플레이어, DVD 플레이어, MD 플레이어 등의 재생 장치, 혹은 게임 기기 등에 있어서 재생되어 이용된다.
음악 데이터, 화상 데이터 등, 많은 콘텐츠는, 일반적으로 그 작성자 혹은 판매자에게 반포권 등이 보유되어 있다. 따라서, 이들의 콘텐츠의 배포 시에는, 일정한 이용 제한, 즉 정규의 사용자에 대해서만, 콘텐츠의 이용을 허락하고, 허가없는 복제 등이 행해지지 않도록 하는 구성을 취하는 것이 일반적으로 되어 있다.
특히, 최근에는, 정보를 디지털적으로 기록하는 기록 장치나 기록 매체가 보급되고 있다. 이러한 디지털 기록 장치 및 기록 매체에 따르면, 예를 들면 화상이나 음성을 열화시키지 않고 기록, 재생을 반복하는 것이 가능하고, 부정 복사 콘텐츠의 인터넷을 통한 배신이나, 콘텐츠를 CD-R 등에 복사한, 소위 해적판 디스크가 대량으로 유통되는 문제가 있다.
특히, 최근 개발된 DVD 등의 대용량형 기록 매체는, 1매의 매체에 예를 들면 영화 하나분의 대량의 데이터를 디지털 정보로서 기록하는 것이 가능하다. 이와 같이 영상 정보 등을 디지털 정보로서 기록하는 것이 가능하게 되면 부정 복사를 방지하여 저작권자의 보호를 도모하는 것이 점점 중요한 과제로 되고 있다.
디지털 기록 재생을 행하는 기록 장치나 디지털 기록 매체에 따르면, 화상이나 음성을 열화시키지 않고 기록, 재생을 반복할 수 있다. 이와 같이 디지털 데이터는 화질이나 음질을 유지시킨 상태로 몇번이나 복사를 반복하여 실행할 수 있기 때문에, 복사가 위법으로 행해진 기록 매체가 시장에 유통되면, 음악, 영화 등 각종 콘텐츠의 저작권자, 혹은 정당한 판매권자 등의 이익에 해가 된다. 최근에는, 이러한 디지털 데이터의 부정한 복사를 방지하기 위해, 디지털 기록 장치 및 기록 매체에 위법인 복사를 방지하기 위한 다양한 기술이 실용화되고 있다.
예를 들면, DVD 플레이어에서는, 콘텐츠 스크램블 시스템(Content Scramble System)이 채용되고 있다. 콘텐츠 스크램블 시스템에서는, DVD-ROM(Read Only Memory)에, 비디오 데이터나 오디오 데이터 등이 암호화되어 기록되어 있고, 그 암호화된 데이터를 복호하는데 이용되는 키가, 라이센스를 받은 DVD 플레이어에게 공급된다. 라이센스는, 부정 복사를 행하지 않는 등의 소정의 동작 규정에 따르도록 설계된 DVD 플레이어에 대하여 공급된다. 따라서, 라이센스를 받은 DVD 플레이어에서는, 공급된 키를 이용하여, DVD-ROM에 기록된 암호화 데이터를 복호함으로써, DVD-ROM으로부터 화상이나 음성을 재생할 수 있다.
한편, 라이센스를 받지 않은 DVD 플레이어는, 암호화된 데이터를 복호하기 위한 키를 갖고 있지 않기 때문에, DVD-ROM에 기록된 암호화 데이터의 복호를 행할 수 없다. 이와 같이, 콘텐츠 스크램블 시스템 구성에서는, 라이센스 시에 요구되는 조건을 충족시키지 못하는 DVD 플레이어는, 디지털 데이터를 기록한 DVD-ROM의 재생을 행할 수 없게 되어, 부정 복사가 방지되도록 되어 있다.
그러나, DVD-ROM에 채용되고 있는 콘텐츠 스크램블 시스템은, 사용자에 의한 데이터의 기입이 불가능한 기록 매체를 대상으로 하고 있으며, 사용자에 의한 데이터의 기입이 가능한 기록 매체에의 적용에 대해서는 고려되어 있지 않다.
즉, 데이터의 기입이 가능한 기록 매체에 기록된 데이터가 암호화되어 있어도, 그 암호화된 데이터를, 그대로 전부, RAM 미디어에 복사한 경우에는, 라이센스를 받은 정당한 장치에 의해 재생 가능한, 소위 해적판을 작성할 수 있게 된다.
또한, CSS의 암호를 푸는 소프트웨어 프로그램, 예를 들면 DeCSS 소프트웨어가 인터넷 상에서 배포되어 있고, 이 프로그램을 적용함으로써, DVD Video의 암호를 풀어 평문의 상태에서 기록형 DVD에 기입하는 것이 가능하게 되어 있다. DeCSS가 출현한 배경은, 본래 암호화가 의무화되어 있어야 될 CSS 복호용의 키 데이터를 암호화하지 않은 상태에서 설계된 DVD 플레이어 소프트웨어가 리버스 엔지니어되어 키 데이터가 해독된 것으로, 해독된 키 데이터로부터 연쇄적으로 CSS 알고리즘 전체가 해독된 경위이다.
키 데이터를 포함하는 저작권 보호 기술 실행 프로그램을 PC 상에서 실행되는 어플리케이션 프로그램에 실장할 때에는, 저작권 보호 기술의 해석을 방지하기 위해 내탬퍼성을 갖게 하는 것이 일반적이지만, 내 탬퍼성의 강도를 나타내는 지표는 없으므로, 어느 정도 리버스 엔지니어링에의 대응을 행할지는 개개의 인플리먼터의 판단이나 실력에 맡겨지고 있는 것이 실정이고, CSS인 경우에는 결과적으로는 깨지게 되어, 부정한 복사 콘텐츠의 범람을 초래하는 결과로 되고 있다.
CSS 이외에도, DVD 규격으로 채용되고 있는 저작권 보호 기술(카피 컨트롤 기술)로서, CPPM(Content Protection for Prerecorded Media)와 CPRM(Content Protection for Recordable Media)이 있다. CPPM은, 재생 전용의 미디어(Prerecorded Media)용으로 개발된 카피 컨트롤 기술이고, CPRM은, 기록 가능한 미디어(Recordable Media)용으로 개발된 카피 컨트롤 기술이다. 이들은, 미디어(예를 들면 디스크)측에 미디어 키 블록이라고 하는 키 정보를 저장하는 한편, 재생 장치, PC 등, 디바이스측에 디바이스 키를 저장하고, 이들의 키의 조합에 의해, 카피 컨트롤을 행하는 것이다.
그러나, 이러한 CPRM이나, CPPM에서도, 디바이스로서의 PC나 미디어로서의 디스크 내에 저장된 키 정보의 누설의 위험성을 해소하는 근본적인 문제 해결을 도모하는 기술에 대한 제안은 없으므로, CPRM이나, CPPM에도, 키의 누설에 의해 카피 컨트롤 시스템이 붕괴될 위험성을 항상 갖고 있는 것이 현상이다.
또, 콘텐츠의 부정 이용을 방지하는 기술로서, 본 출원인은, 예를 들면 특허 문헌1(특허 공개2001-351324호 공보) 및 특허 문헌2(특허 공개2002-236622호 공보)에, 기록 매체에 저장하는 콘텐츠의 데이터 블록마다 상이한 키를 적용한 암호 처리 기술을 제안하였다. 즉, 데이터 블록마다의 키 생성 정보로서 시드를 설정하여, 블록마다 설정한 시드를 암호 키의 생성에 적용하는 구성에 의해, 종래의 하나의 키에 의해서만 콘텐츠 암호화를 복잡화하여, 암호 알고리즘의 해독 곤란성을 높인 것이다.
그러나, 전술한 구성에서, 데이터 블록마다의 키 생성 정보로서 시드는, 기록 매체에 저장된 정보 그 자체를 사용한 것으로, 전술한 CSS와 마찬가지의 경위로 키 데이터가 해독되고, 해독된 키 데이터와 데이터 블록마다 상이한 시드로부터 블록 키가 유도됨으로써 콘텐츠의 누설을 야기할 우려가 전무하다고는 할 수 없다.
<발명의 개시>
본 발명은, 상술한 종래 기술에서의 문제점을 감안하여 이루어진 것으로, DVD, CD 등의 각종 정보 기록 매체에 저장한 콘텐츠를 재생 장치, PC(퍼스널 컴퓨터)에서 이용하는 구성에 있어서, 기록 매체에 저장하는 콘텐츠의 암호화에 적용하는 키 정보의 누설을 더 곤란하게 하여, 키 해독, 암호 알고리즘의 해독의 곤란성을 높이는 것을 실현한 정보 처리 장치, 정보 기록 매체 드라이브 장치, 정보 기록 매체, 및 정보 처리 방법, 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.
본 발명의 제1 측면은,
정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 정보 처리 장치로서,
정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드에 기초하여 제2 블록 키 Kb2를 생성하고, 생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 암호 처리 수단을 포함하는 것을 특징으로 하는 정보 처리 장치에 있다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 정보 처리 장치는, 마스터 키 생성 정보를 저장한 기억 수단을 갖고, 상기 암호 처리 수단은, 상기 마스터 키 생성 정보에 기초하여 마스터 키를 생성하여, 해당 생성한 마스터 키와 상기 정보 기록 매체로부터의 판독 정보에 기초하여, 2개의 기록 키 K1, K2를 생성하고, 생성한 제1 기록 키 K1과 상기 제1 시드 정보에 기초한 암호 처리에 의해 상기 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드와 제2 기록 키 K2에 기초한 암호 처리에 의해 상기 제2 블록 키 Kb2를 생성하고, 생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 암호 처리 수단은, 상기 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보인 디스크 ID, 및 상기 정보 기록 매체에 기록된 2개의 타이틀 키에 기초하여 제1 타이틀 고유 키 및 제2 타이틀 고유 키를 생성하고, 또한 상기 제1 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제1 판독 정보에 기초한 암호 처리에 의해 상기 제1 기록 키 K1을 생성하고, 상기 제2 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제2 판독 정보에 기초한 암호 처리에 의해 상기 제2 기록 키 K2를 생성하는 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 처리 장치의 일 실시 양태에서, 상기 암호 처리 수단은, 상기 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보인 디스크 ID, 및 상기 정보 기록 매체에 기록된 하나의 키 시드 정보에 기초하여 제1 타이틀 고유 키 및 제2 타이틀 고유 키를 생성하고, 또한 상기 제1 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제1 판독 정보에 기초한 암호 처리에 의해 상기 제1 기록 키 K1을 생성하고, 상기 제2 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제2 판독 정보에 기초한 암호 처리에 의해 상기 제2 기록 키 K2를 생성하는 구성인 것을 특징으로 한다.
또한, 본 발명의 제2 측면은,
정보 기록 매체에 저장된 암호화 데이터의 판독 및 외부 출력을 실행하는 정보 기록 매체 드라이브 장치로서,
정보 기록 매체에 저장된 암호화 데이터의 출력처 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리부와,
정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 상기 세션 키 Ks에 기초하여 상기 제2 시드를 포함하는 데이터의 암호화 처리를 실행하여 출력용 암호화 정보를 생성하는 암호 처리 수단을 포함하고,
상기 세션 키 Ks에 기초하여 암호화된 제2 시드를 포함하는 출력용 암호화 정보를 인터페이스를 통하여 출력하는 구성을 갖는 것을 특징으로 하는 정보 기록 매체 드라이브 장치에 있다.
또한, 본 발명의 정보 기록 매체 드라이브 장치의 일 실시 양태에서, 상기 암호 처리 수단은, 정보 기록 매체 드라이브 장치가 보유하는 마스터 키 생성 정보에 기초하여 생성한 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보에 기초하여, 2개의 기록 키 K1, K2를 생성하고, 생성한 제1 기록 키 K1과 상기 제1 시드 정보에 기초한 암호 처리에 의해 상기 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드와 제2 기록 키 K2를 포함하는 데이터를 상기 세션 키 Ks에 기초하여 암호화하여 출력용 암호화 정보를 생성하고, 상기 제2 시드와 제2 기록 키 K2를 포함하는 상기 출력용 암호화 정보를 인터페이스를 통하여 출력하는 구성을 갖는 것을 특징으로 한다.
또한, 본 발명의 제3 측면은,
데이터 입력 인터페이스를 통하여 입력하는 암호 데이터의 복호 처리를 실행하는 정보 처리 장치로서,
상기 암호 데이터의 출력 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리부와,
상기 데이터 입력 인터페이스를 통하여 입력하는 암호화 정보를 상기 세션 키에 기초한 복호 처리에 의해 키 생성 정보로서의 시드 정보 및 기록 키를 취득하고, 상기 시드 정보 및 기록 키에 기초한 암호 처리에 의해 암호 데이터의 복호 키로서의 블록 키를 생성하여, 해당 블록 키에 기초한 암호 데이터의 복호 처리를 실행하는 암호 처리부
를 갖는 것을 특징으로 하는 정보 처리 장치에 있다.
또한, 본 발명의 제4 측면은,
정보 기록 매체에 저장된 암호화 데이터의 판독 및 외부 출력을 실행하는 정보 기록 매체 드라이브 장치로서,
정보 기록 매체에 저장된 암호화 데이터의 출력처 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리부와,
정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 시드에 기초하여 블록 키를 생성하고, 생성한 블록 키에 기초하여 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하여 복호 데이터를 취득하고, 상기 세션 키 Ks에 기초하여 상기 복호 데이터의 암호화 처리를 실행하여 출력용 암호화 정보를 생성하는 암호 처리 수단을 포함하고,
상기 세션 키 Ks에 기초하여 암호화된 출력용 암호화 정보를 인터페이스를 통하여 출력하는 구성을 갖는 것을 특징으로 하는 정보 기록 매체 드라이브 장치에 있다.
또한, 본 발명의 제5 측면은,
암호화 데이터를 저장한 정보 기록 매체로서,
암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드와,
상기 제1 시드에 기초하여 생성되는 제1 블록 키 Kb1에 기초하여 암호화된 키 생성 정보로서의 암호화 제2 시드와,
상기 제2 시드에 기초하여 생성되는 제2 블록 키 Kb1에 기초하여 암호화된 암호화 콘텐츠
를 저장한 구성을 갖는 것을 특징으로 하는 정보 기록 매체에 있다.
또한, 본 발명의 정보 기록 매체의 일 실시 양태에서, 상기 제1 시드는, 상기 암호화 처리 단위마다 설정된 제어 정보 내에 저장되고, 상기 제2 시드는, 상기 제어 정보 외의 사용자 데이터 영역에 암호화되어 저장된 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 기록 매체의 일 실시 양태에서, 상기 제1 시드는, 사용자 데이터 영역에 비암호화 데이터로서 저장되고, 상기 제2 시드는, 사용자 데이터 영역에 암호화 데이터로서 저장된 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 기록 매체의 일 실시 양태에서, 상기 암호화 데이터는, 트랜스포트 스트림 패킷으로 구성되고, 상기 제1 시드는, 복수의 트랜스포트 스트림 패킷에 대응하는 제어 정보 내에 저장되고, 상기 제2 시드는, 상기 제어 정보 외의 사용자 데이터 영역의 트랜스포트 스트림 패킷 내에 암호화되어 저장된 구성인 것을 특징으로 한다.
또한, 본 발명의 정보 기록 매체의 일 실시 양태에서, 상기 암호화 데이터는, 트랜스포트 스트림 패킷으로 구성되고, 상기 제1 시드는, 사용자 데이터 영역의 트랜스포트 스트림 패킷 내에 비암호화 데이터로서 저장되고, 상기 제2 시드는, 사용자 데이터 영역의 트랜스포트 스트림 패킷 내에 암호화되어 저장된 구성인 것을 특징으로 한다.
또한, 본 발명의 제6 측면은,
정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 정보 처리 방법으로서,
정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하는 단계와,
생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드에 기초하여 제2 블록 키 Kb2를 생성하는 단계와,
생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 단계
를 갖는 것을 특징으로 하는 정보 처리 방법에 있다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 정보 처리 방법은, 또한 기억 수단으로부터 판독한 마스터 키 생성 정보에 기초하여 생성한 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보에 기초하여, 2개의 기록 키 K1, K2를 생성하는 단계를 갖고, 생성한 제1 기록 키 K1과 상기 제1 시드 정보에 기초한 암호 처리에 의해 상기 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드와 제2 기록 키 K2에 기초한 암호 처리에 의해 상기 제2 블록 키 Kb2를 생성하고, 생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 정보 처리 방법은, 상기 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보인 디스크 ID, 및 상기 정보 기록 매체에 기록된 2개의 타이틀 키에 기초하여 제1 타이틀 고유 키 및 제2 타이틀 고유 키를 생성하고, 또한 상기 제1 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제1 판독 정보에 기초한 암호 처리에 의해 상기 제1 기록 키 K1을 생성하고, 상기 제2 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제2 판독 정보에 기초한 암호 처리에 의해 상기 제2 기록 키 K2를 생성하는 단계를 갖는 것을 특징으로 한다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 정보 처리 방법은, 상기 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보인 디스크 ID, 및 상기 정보 기록 매체에 기록된 하나의 키 시드 정보에 기초하여 제1 타이틀 고유 키 및 제2 타이틀 고유 키를 생성하고, 또한 상기 제1 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제1 판독 정보에 기초한 암호 처리에 의해 상기 제1 기록 키 K1을 생성하고, 상기 제2 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제2 판독 정보에 기초한 암호 처리에 의해 상기 제2 기록 키 K2를 생성하는 단계를 갖는 것을 특징으로 한다.
또한, 본 발명의 제7 측면은,
정보 기록 매체에 저장된 암호화 데이터의 판독 및 외부 출력을 실행하는 정보 처리 방법으로서,
정보 기록 매체에 저장된 암호화 데이터의 출력처 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리 단계와,
정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하는 단계와,
생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 상기 세션 키 Ks에 기초하여 상기 제2 시드를 포함하는 데이터의 암호화 처리를 실행하여 출력용 암호화 정보를 생성하는 단계와,
상기 세션 키 Ks에 기초하여 암호화된 제2 시드를 포함하는 출력용 암호화 정보를 인터페이스를 통하여 출력하는 단계
를 갖는 것을 특징으로 하는 정보 처리 방법에 있다.
또한, 본 발명의 정보 처리 방법의 일 실시 양태에서, 상기 정보 처리 방법은, 정보 기록 매체 드라이브 장치가 보유하는 마스터 키 생성 정보에 기초하여 생성한 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보에 기초하여, 2개의 기록 키 K1, K2를 생성하고, 생성한 제1 기록 키 K1과 상기 제1 시드 정보에 기초한 암호 처리에 의해 상기 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드와 제2 기록 키 K2를 포함하는 데이터를 상기 세션 키 Ks에 기초하여 암호화하여 출력용 암호화 정보를 생성하여, 상기 제2 시드와 제2 기록 키 K2를 포함하는 상기 출력용 암호화 정보를 인터페이스를 통하여 출력하는 것을 특징으로 한다.
또한, 본 발명의 제8 측면은,
데이터 입력 인터페이스를 통하여 입력하는 암호 데이터의 복호 처리를 실행하는 정보 처리 방법으로서,
상기 암호 데이터의 출력 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리 단계와,
상기 데이터 입력 인터페이스를 통하여 입력하는 암호화 정보를 상기 세션 키에 기초한 복호 처리에 의해 키 생성 정보로서의 시드 정보 및 기록 키를 취득하여, 상기 시드 정보 및 기록 키에 기초한 암호 처리에 의해 암호 데이터의 복호 키로서의 블록 키를 생성하여, 해당 블록 키에 기초한 암호 데이터의 복호 처리를 실행하는 암호 처리 단계
를 갖는 것을 특징으로 하는 정보 처리 방법에 있다.
또한, 본 발명의 제9 측면은,
정보 기록 매체에 저장된 암호화 데이터의 판독 및 외부 출력을 실행하는 정보 처리 방법으로서,
정보 기록 매체에 저장된 암호화 데이터의 출력처 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리 단계와,
정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 시드에 기초하여 블록 키를 생성하고, 생성한 블록 키에 기초하여 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하여 복호 데이터를 취득하고, 상기 세션 키 Ks에 기초하여 상기 복호 데이터의 암호화 처리를 실행하여 출력용 암호화 정보를 생성하는 암호 처리 단계와,
상기 세션 키 Ks에 기초하여 암호화된 출력용 암호화 정보를 인터페이스를 통하여 출력하는 단계
를 갖는 것을 특징으로 하는 정보 처리 방법에 있다.
또한, 본 발명의 제10 측면은,
정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 컴퓨터 프로그램으로서,
정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하는 단계와,
생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드에 기초하여 제2 블록 키 Kb2를 생성하는 단계와,
생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 단계
를 갖는 것을 특징으로 하는 컴퓨터 프로그램에 있다.
본 발명에서는, 본 발명의 구성에 따르면, 암호화 콘텐츠의 복호에 적용하는 키(블록 키 Kb2)를 생성하기 위해 필요하게 되는 시드 정보(시드2)를 다른 키(블록 키 Kb1)에 의해 암호화하여 저장하는 구성으로 했으므로, 시드 정보(시드2)를 디스크로부터 직접 판독하는 것은 불가능하고, 따라서 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다.
또한, 본 발명의 구성에 의하면, 정보 기록 매체에 저장된 데이터의 재생 처리에서, 암호화 콘텐츠의 복호에 적용하는 키(블록 키 Kb2) 생성용의 시드 정보(시드2)를 디바이스 사이에서 전송하는 것이 필요하게 되는 구성에 있어서, 블록 키 생성 정보, 구체적으로 설명하면, 시드 정보(시드2) 및 기록 키 K2의 쌍방을 세션 키에 의해 암호화하여 송수신하는 구성으로 했으므로, 전송로에서의 데이터 누설이 발생한 경우에도, 시드 정보(시드2) 및 기록 키 K2를 취득하는 것은 곤란하게 되어, 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다.
또, 본 발명의 컴퓨터 프로그램은, 예를 들면, 여러가지 프로그램 코드를 실행 가능한 범용 컴퓨터 시스템에 대하여, 컴퓨터 판독 가능한 형식으로 제공하는 기억 매체, 통신 매체, 예를 들면 CD나 DVD, MO 등의 기억 매체, 혹은 네트워크 등의 통신 매체에 의해 제공 가능한 컴퓨터 프로그램이다. 이러한 프로그램을 컴퓨터 판독 가능한 형식으로 제공함으로써, 컴퓨터 시스템 상에서 프로그램에 따른 처리가 실현된다.
본 발명의 또 다른 목적, 특징이나 이점은, 후술하는 본 발명의 실시예나 첨부하는 도면에 기초한 것으로부터 상세한 설명에 의해 분명해질 것이다. 또, 본 명세서에서 시스템은, 복수의 장치의 논리적 집합 구성으로, 각 구성의 장치가 동일 케이싱 내에 있는 것으로 한정시키지 않는다.
도 1은 정보 기록 매체에 저장되는 데이터 구성에 대하여 설명하는 도면.
도 2는 정보 처리 장치의 구성예에 대하여 설명하는 도면.
도 3은 정보 처리 장치에서 실행하는 복호 처리에 대하여 설명하는 도면.
도 4는 디스크 고유 키의 생성 처리예에 대하여 설명하는 도면.
도 5는 기록 키의 생성 처리예에 대하여 설명하는 도면.
도 6은 기록 키를 이용한 데이터 기록 처리에 대하여 설명하는 도면.
도 7은 타이틀 고유 키의 생성 처리예에 대하여 설명하는 도면.
도 8은 암호화 데이터의 복호 처리 시퀀스를 설명하는 도면.
도 9는 암호화 데이터의 복호 처리 시퀀스를 설명하는 도면.
도 10은 정보 기록 매체에 저장되는 데이터 구성에 대하여 설명하는 도면.
도 11은 정보 처리 장치에서 실행하는 복호 처리에 대하여 설명하는 도면.
도 12는 암호화 데이터의 복호 처리 시퀀스를 설명하는 도면.
도 13은 시드 정보의 저장 구성예에 대하여 설명하는 도면.
도 14는 시드 정보의 저장 구성예에 대하여 설명하는 도면.
도 15는 시드 정보의 저장 구성예에 대하여 설명하는 도면.
도 16은 정보 기록 매체 드라이브 장치와 정보 처리 장치간의 접속 구성을 설명하는 도면.
도 17은 정보 기록 매체 드라이브 장치와 정보 처리 장치간의 데이터 전송 처리를 설명하는 도면.
도 18은 정보 기록 매체 드라이브 장치와 정보 처리 장치간의 데이터 전송을 따르는 복호 처리 시퀀스를 설명하는 도면.
도 19는 정보 기록 매체 드라이브 장치와 정보 처리 장치간의 인증 처리 시퀀스를 설명하는 도면.
도 20은 정보 기록 매체 드라이브 장치와 정보 처리 장치간의 데이터 전송을 따르는 복호 처리 시퀀스를 설명하는 도면.
도 21은 정보 기록 매체 드라이브 장치와 정보 처리 장치간의 데이터 전송을 따르는 복호 처리 시퀀스를 설명하는 도면.
도 22는 정보 기록 매체 드라이브 장치와 정보 처리 장치간의 데이터 전송을 따르는 복호 처리 시퀀스를 설명하는 도면.
도 23은 정보 기록 매체 드라이브 장치와 정보 처리 장치간의 데이터 전송을 따르는 복호 처리 시퀀스를 설명하는 도면.
<발명을 실시하기 위한 최량의 형태>
[기록 매체 상의 데이터 기록 구성]
우선, 본 발명에 따른 정보 기록 매체에 저장된 데이터 구성에 대하여 설명한다. 정보 기록 매체에 저장된 암호화 데이터는, 데이터 기록 재생 장치나, PC(퍼스널 컴퓨터)에서 판독되고, 복호, 재생된다.
정보 기록 매체에 저장되는 데이터는, 예를 들면 MPEG-2 시스템으로 규정되어 있는 부호화 데이터로서의 트랜스포트 스트림(TS)이다. 트랜스포트 스트림은, 하나의 스트림 중에 복수의 프로그램을 구성할 수 있으며, 각 트랜스포트 패킷의 출현 타이밍 정보로서의 ATS(Arrival Time Stamp : 착신 시각 스탬프)가 설정되어 있다. 이 타임 스탬프는, MPEG-2 시스템으로 규정되어 있는 가상적인 디코더인 T-STD(Transport stream System Target Decoder)를 파탄시키지 않도록 부호화 시에 결정되어, 스트림의 재생 시에, 각 트랜스포트 패킷에 부가된 ATS에 의해 출현 타이밍을 제어하고, 복호, 재생을 행한다.
예를 들면, 트랜스포트 스트림 패킷을 기록 매체에 기록하는 경우에는, 각 패킷의 간격을 매운 소스 패킷으로서 기록하지만, 각 트랜스포트 패킷의 출현 타이밍을 아울러 기록 매체에 보존함으로써, 재생 시에 각 패킷의 출력 타이밍을 제어하는 것이 가능하게 된다.
도 1을 참조하여, 정보 기록 매체에 저장되는 데이터 기록 구성 및, 기록 데이터의 복호 재생 처리의 개요를 설명한다. 정보 기록 매체에 저장되는 데이터는 암호화 데이터로서, 재생을 행하는 경우에는, 복호 처리를 행하는 것이 필요하게 된다. 도 1의 (a)가 정보 기록 매체에 저장되는 데이터 기록 구성이다. 18 바이트의 제어 데이터(User Control Data)와, 2048 바이트의 사용자 데이터(User Data)가 하나의 섹터 데이터로서 구성되며, 예를 들면 3 섹터분의 데이터가 하나의 암호 처리 단위로서 규정된다. 또 여기서 설명하는 바이트 수나, 처리 단위는 하나의 대표예로서, 제어 데이터, 사용자 데이터의 바이트 수나, 처리 단위의 설정은, 여러가지 설정이 가능하다.
(b)는, 암호 처리 단위인 1 유닛(1AU : Aligned Unit)의 구성을 도시한다. 정보 기록 매체에 저장된 암호화 데이터의 재생을 실행하는 정보 처리 장치는, 제어 데이터 내의 플래그에 기초하여, 암호 처리 단위인 1AU(Aligned Unit)를 추출한다.
암호 처리 단위인 1 유닛(1AU)에는, (c) 암호화 구성에 도시한 바와 같이, 블록 키 Kb1에 의해 암호화된 영역, 블록 키 Kb2에 의해 암호화된 영역이 포함된다. 블록 키 Kb1과 Kb2에 의해 이중으로 암호화된 영역을 포함시키는 구성으로 해도 된다. 블록 키를 생성하기 위해서는, 키 생성 정보로서의 시드 정보가 필요해진다. 시드 정보(시드1)는 블록 키 Kb1을 생성하기 위한 키 생성 정보이고, 시드 정보(시드2)는 블록 키 Kb2를 생성하기 위한 키 생성 정보이다. 이들은, 제어 데이터 영역, 혹은 사용자 데이터 영역에 저장된다. 도 1의 (c)에 도시하는 시드 정보의 저장 양태, 암호화 양태는 일례로서, 복수의 구성예에 대하여 후술하겠다.
사용자 데이터 영역에 저장된 암호화 콘텐츠를 복호하기 위해서는, 정보 기록 매체에 저장된 시드 정보를 판독하여, 시드 정보에 기초한 키를 생성하는 것이 필요해진다.
본 발명의 구성에서는, 도 1의 (c)에 도시한 바와 같이, 블록 키 Kb1을 생성하기 위해 필요하게 되는 시드 정보(시드1)와, 블록 키 Kb2를 생성하기 위해 필요하게 되는 시드 정보(시드2)를 정보 기록 매체 상에 저장하는 구성으로 함과 함께, 한쪽의 시드 정보(시드2)를 시드 정보(시드1)에 의해 생성되는 블록 키 Kb1에 의해 암호화하여 저장하는 구성으로 하였다.
이와 같이, 본 발명의 구성은, 2개의 상이한 키를 적용한 암호화 처리를 실행한 데이터를 기록 매체에 저장하여, 재생 처리에서 2개의 상이한 키를 적용한 복호 처리를 행한다. 즉, 소정의 암호 처리 단위마다 상이한 키 생성 정보인 시드1, 시드2를 적용한 암호 처리에 의해 블록 키 Kb1, Kb2를 생성하여 복호 처리를 실행한다.
1 처리 단위마다의 복호 처리 후, 복호된 트랜스포트 스트림 패킷이 MPEG-2 디코더에 입력되어 디코드 처리가 실행되어 콘텐츠 재생이 행해진다. 하나의 처리 단위(3 섹터)에는, 예를 들면 32개의 트랜스포트 스트림(TS) 패킷이 포함된다. 즉, 32×192=6144 바이트 데이터가 하나의 암호화 및 복호 처리 단위로 된다. 또, 처리 단위의 설정은, 다양한 설정이 가능하다.
복호 재생 시에는, 각 처리 단위마다 2개의 시드 정보(시드1, 시드2)를 정보 기록 매체로부터 취득하고, 각 시드 정보에 기초하여 2개의 블록 키 Kb1, Kb2를 생성하고, 생성한 블록 키 Kb1, Kb2를 이용하여 복호 처리가 이루어져, 콘텐츠 재생이 행해진다.
또한, 콘텐츠의 기록 시에는, 복호 재생 처리와 역의 프로세스가 실행되어, 각 처리 단위마다 2개의 시드 정보(시드1, 시드2)를 설정하고, 각 시드 정보에 기초하여 2개의 블록 키 Kb1, Kb2를 생성하여 생성한 블록 키 Kb1, Kb2를 이용하여 암호화 처리가 이루어져, 콘텐츠 기록이 행해진다.
[정보 처리 장치 구성]
도 2는, 상술한 암호화 콘텐츠 양태를 갖는 콘텐츠의 기록 재생 처리를 실행하는 정보 처리 장치(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), 트랜스포트 스트림 처리 수단(TS 처리 수단)(198)을 더 갖고, 이들은 버스(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 Circuit)로 구성되며, 버스(110)를 통하여 공급되는 콘텐츠로서의 디지털 신호를 암호화하거나, 또는 복호하여, 버스(110) 상에 출력하는 구성을 갖는다. 또, 암호 처리 수단(150)은 1 칩 LSI에 한하지 않고, 각종 소프트웨어 또는 하드웨어를 조합한 구성에 의해 실현하는 것도 가능하다. 암호 처리 수단(150)은, 또한 예를 들면 입출력 I/F(120)를 통하여 접속된 외부 장치와의 콘텐츠 입출력 시에 실행하는 인증 처리를 실행하는 인증 처리부로서도 기능한다.
ROM(160)은, 예를 들면 정보 처리 장치마다 고유의, 혹은 복수의 정보 처리 장치의 그룹마다 고유의 디바이스 키나, 상호 인증 시에 필요로 하는 인증 키를 기억하고 있다. 디바이스 키는, 예를 들면 키 배신 트리 구성에 기초하여 제공되는 암호화 키 블록 정보로서의 EKB(Enabling Key Block)를 복호하여 마스터 키를 취득하기 위해 이용된다. 즉, 디바이스 키는, 마스터 키 생성 정보로서 적용된다.
CPU(170)는, 메모리(180)에 기억된 프로그램을 실행함으로써, MPEG 코덱(130)이나 암호 처리 수단(150) 등을 제어한다. 메모리(180)는, 예를 들면 불휘발성 메모리에 의해, CPU(170)가 실행하는 프로그램이나, CPU(170)의 동작 상 필요한 데이터를 기억한다. 드라이브(190)는, 디지털 데이터를 기록 재생 가능한 기록 매체(195)를 구동함으로써, 기록 매체(195)로부터 디지털 데이터를 판독하여(재생하여), 버스(110) 상에 출력함과 함께, 버스(110)를 통하여 공급되는 디지털 데이터를, 기록 매체(195)에 공급하여 기록시킨다. 또, 프로그램을 ROM(160)에, 마스터 키 생성 정보나 인증 키를 메모리(180)에 기억하도록 구성해도 된다.
기록 매체(195)는, 예를 들면 DVD, CD 등의 광 디스크, 광 자기 디스크, 자기 디스크, 자기 테이프, 혹은 플래시 ROM, MRAM, RAM 등의 반도체 메모리 등의 디지털 데이터가 기억 가능한 매체로서, 본 실시의 형태에서는, 드라이브(190)에 대하여 착탈 가능한 구성으로 한다. 단, 기록 매체(195)는, 정보 처리 장치(100)에 내장하는 구성으로 해도 된다.
트랜스포트 스트림 처리 수단(TS 처리 수단)(198)은, 복수의 콘텐츠가 다중화된 트랜스포트 스트림으로부터 특정한 콘텐츠에 대응하는 트랜스포트 패킷을 추출하고, 추출한 트랜스포트 스트림의 출현 타이밍 정보를 각 패킷과 함께 기록 매체(195)에 저장하기 위한 데이터 처리를 실행하고, 또한 기록 매체(195)로부터의 암호화 콘텐츠의 복호 재생 시에는, 트랜스포트 스트림의 출현 타이밍 제어를 행한다.
트랜스포트 스트림에는, 상술한 바와 같이, 각 트랜스포트 패킷의 출현 타이밍 정보로서의 ATS(Arrival Time Stamp : 착신 시각 스탬프)가 설정되어 있고, MPEG2 디코더에 의한 복호 시에 ATS에 의해 타이밍 제어를 실행한다. 트랜스포트 스트림 처리 수단(TS 처리 수단)(198)은, 예를 들면 트랜스포트 패킷을 기록 매체에 기록하는 경우에는, 각 패킷의 간격을 매운 소스 패킷으로서 기록하지만, 각 트랜스포트 패킷의 출현 타이밍을 함께 기록 매체에 보존함으로써, 재생 시에 각 패킷의 출력 타이밍을 제어하는 것이 가능하게 된다.
본 발명의 정보 처리 장치(100)는, 예를 들면 상술한 트랜스포트 스트림으로 구성되는 암호화 콘텐츠의 기록 재생을 실행한다. 이들 처리의 상세 내용에 대해서는, 후술하겠다. 또, 도 2에 도시하는 암호 처리 수단(150), TS 처리 수단(198)은, 이해를 쉽게 하기 위해, 다른 블록으로서 도시하고 있지만, 양 기능을 실행하는 하나의 원 칩 LSI로서 구성해도 되고, 또한 양 기능을 소프트웨어 또는 하드웨어를 조합한 구성에 의해 실현하는 구성으로 해도 된다. 또한, 드라이브(190), 기록 매체(195)를 제외한 모든 블록을 원 칩 LSI로서 구성해도 되고, 또한 이들의 기능을 소프트웨어 또는 하드웨어를 조합한 구성에 의해 실현하는 구성으로 해도 되고, 이에 따라 정보 처리 장치(100)의 개조에 의한 시큐러티 기능의 무효화에 대한 강고성을 향상시킬 수 있다.
[데이터 재생 처리]
계속해서, 기록 매체에 저장된 암호화 데이터의 복호 처리에 대하여 설명한다. 도 3에 데이터의 복호 처리의 수순을 설명하는 도면을 도시한다. 도 3에 도시하는 처리는, 주로 도 2에 도시하는 암호 처리 수단(150)이 실행하는 처리이다.
정보 처리 장치(210)는 자신의 메모리(180)(도 2 참조)에 저장되어 있는 마스터 키(211)를 판독한다. 마스터 키(211)는, 라이센스를 받은 정보 처리 장치에 저장된 비밀 키로서, 복수의 정보 처리 장치에 공통된 키로서 저장된 공통 키이다. 정보 처리 장치(210)는 정보 기록 매체(220)에 식별 정보로서의 디스크 ID(Disc ID)(221)가 이미 기록되어 있는지의 여부를 검사한다. 기록되어 있으면, 디스크 ID(Disc ID)(221)를 정보 기록 매체(220)로부터 판독한다. 디스크 ID(Disc ID)(221)는, 디스크 고유 정보로서, 예를 들면 일반 데이터 저장 영역 또는, 리드 인 에리어에 저장된다.
계속해서, 정보 처리 장치(210)는, 단계 S101에서, 마스터 키(211)와 디스크 ID(221)를 이용하여, 디스크 고유 키(Disc Unique Key)를 생성한다. 디스크 고유 키(Disc Unique Key)의 구체적인 생성 방법으로는, 예를 들면, 도 4의 (a)에 도시한 바와 같이, 디스크 ID(Disc ID)를 입력값으로 하여, 공통 키 암호 방식인 AES(Advanced Encryption Standard) 암호를, 마스터 키(Master Key)를 암호 키로 하여 실행하는 방법이나, 도 4의 (b)에 도시한 바와 같이, FIPS180-1에 의해 정해져 있는 해시 함수 SHA-1에, 마스터 키와 디스크 ID(Disc ID)와의 비트 연결에 의해 생성되는 데이터를 입력하고, 그 출력으로부터 필요한 데이터 길이만을 디스크 고유 키(Disc Unique Key)로서 사용하는 방법을 적용할 수 있다.
계속해서, 기록 콘텐츠마다의 2개의 고유 키인 타이틀 키(Title Key) 1, (223), 타이틀 키 2(224)를 정보 기록 매체(220)로부터 판독한다. 디스크 상에는, 어디의 데이터가 어느 타이틀을 구성하는 지에 대한 정보가 저장된 데이터 관리 파일이 있고, 이 파일에 타이틀 키가 저장되어 있다. 디스크 1매에 대하여 타이틀 키가 1조밖에 없는 경우, 즉 디스크 ID(221)에 대한 타이틀 키를 일의적으로 결정할 수 있는 경우에는, 디스크 ID(221)와 마찬가지의 방법으로, 예를 들면 일반 데이터 저장 영역 또는, 리드 인 에리어에 저장하도록 해도 된다.
계속해서 단계 S102 및 단계 S103에서, 디스크 고유 키(Disc Unique Key)와 타이틀 키(Title Key) 1, 2로부터, 2개의 타이틀 고유 키(Title Unique Key) 1, 2를 생성한다. 이 생성의 구체적인 방법도, 상기한 바와 같이, SHA-1을 이용하는 방법이나 블록 암호에 기초한 해시 함수를 사용하는 방법 등이 적용 가능하다.
또한, 정보 처리 장치(210)는, 단계 S102 및 단계 S103에서 생성한 2개의 타이틀 고유 키(Title Unique Key) 1, 2와, 정보 기록 매체(220)로부터 판독한 기록 시드(REC SEED)(225), 물리 인덱스(226)에 기초하여, 단계 S104, S105에서, 2개의 기록 키(REC 키) K1, K2를 생성한다.
단계 S102∼S105에서 실행하는 2개의 기록 키(REC 키) K1, K2의 생성 처리예에 대하여, 도 5를 참조하여 설명한다.
도 5의 (a)는, 도 3의 단계 S102, S104의 처리에 의한 기록 키 K1의 생성, 도 5의 (b)는, 도 3의 단계 S103, S105의 처리에 의한 기록 키 K2의 생성 처리예를 도시하고 있다.
도 5의 (a)의 처리는, 우선 정보 기록 매체로부터 판독한 타이틀 키 1을 AES(Advanced Encryption Standard) 암호 처리부(271)에 입력하여, 단계 S101에서 생성한 디스크 고유 키를 적용한 복호 처리(Decryption)를 실행하여 타이틀 고유 키 1을 생성(S102)하고, 또한 정보 기록 매체로부터 판독한 물리 인덱스(226)를 AES(Advanced Encryption Standard) 암호 처리부(272)에 입력하여, 타이틀 고유 키 1을 적용한 암호 처리(Encryption)를 실행하고, 또한 배타 논리합부(273)에서, 암호 처리 결과와 타이틀 고유 키 1의 배타 논리합 연산을 실행하고, 그 출력을 기록 키 1로서 설정(S104)하는 처리이다.
도 5의 (b)의 처리는, 정보 기록 매체로부터 판독한 타이틀 키 2를 AES(Advanced Encryption Standard) 암호 처리부(274)에 입력하여, 단계 S101에서 생성한 디스크 고유 키를 적용한 복호 처리(Decryption)를 실행하여 타이틀 고유 키 2를 생성(S103)하고, 또한 정보 기록 매체로부터 판독한 기록 시드(REC SEED)(225)를 AES(Advanced Encryption Standard) 암호 처리부(275)에 입력하여, 타이틀 고유 키 2를 적용한 암호 처리(Encryption)를 실행하여 기록 키 2를 생성(S105)하는 처리이다.
기록 키 K1, K2는, 상술한 재생 처리 공정에서 사용하는 것이 필요해지지만, 콘텐츠를 정보 기록 매체에 기록하는 암호 처리에서도 적용되는 키이다.
도 6에 도시한 바와 같이, 정보 기록 매체(284)에 저장되는 암호화 콘텐츠는, 우선 콘텐츠 편집 스튜디오(282)에서 편집되고, 편집 콘텐츠가 디스크 제조 공장 등의 디스크 제조 엔티티(283)에 전달되어, 디스크 등의 정보 기록 매체에 저장되어, 사용자에게 제공된다.
이 제조 프로세스에서, 콘텐츠 편집 스튜디오(282)는, 물리 인덱스를 설정함과 함께, 기록 키 K2를 적용한 암호화 처리를 편집 콘텐츠에 대하여 실행하고, 디스크 제조 엔티티(283)는, 기록 시드를 설정함과 함께, 기록 키 K1을 적용한 암호화 처리를 실행한다. 결과적으로 정보 기록 매체(284)에는, 기록 키 K1, K2의 2개의 암호 키를 이용한 암호 처리가 실시된 암호화 데이터가 저장된다. 이러한 디스크 제조 프로세스에서, 콘텐츠의 관리를 실행하는 관리 센터(281)가, 콘텐츠 편집 스튜디오에는 타이틀 고유 키 2의 취득 가능 정보를 제공하고, 디스크 제조 엔티티(283)에는 타이틀 고유 키 1의 취득 가능 정보를 제공한다.
관리 센터(281)가 이러한 키 관리를 실행함으로써, 관리 센터(281)로부터의 키 정보의 제공을 받은 콘텐츠 편집 스튜디오, 및 디스크 제조 엔티티만이, 암호화 콘텐츠가 저장된 정보 기록 매체의 제조가 가능해지고, 부정한 제삼자에 의한 해적판 디스크의 제조가 방지된다. 특히, 콘텐츠 편집 스튜디오가 편집 콘텐츠에 적용되는 TS 패킷 내에 편집 식별자(편집 ID)를 저장하고, 이것을 편집 콘텐츠와 함께 콘텐츠 편집 스튜디오에서 암호화 처리를 실시함으로써, 어떤 편집 스튜디오에서 가공된 편집 콘텐츠인지를 은닉한 상태로 디스크 제조 엔티티에 데이터를 전달하는 것이 가능해지고, 디스크 제조 엔티티가 받아들이는 콘텐츠의 추적 관리가 가능하게 된다.
또, 도 3에 도시하는 예에서는, 2개의 타이틀 고유 키 1, 2를 산출하기 위해, 정보 기록 매체(220)에 2개의 타이틀 키 1, 2를 저장하고, 이들의 2개의 타이틀 키에 기초하여, 2개의 타이틀 고유 키를 산출하는 처리예를 나타내었지만, 이와 같이 2개의 타이틀 키를 정보 기록 매체(220)에 저장하지 않고, 하나의 저장 정보로부터만, 2개의 타이틀 고유 키 1, 2를 산출하는 구성도 가능하다.
도 7을 참조하여 하나의 저장 정보로부터만, 2개의 타이틀 고유 키 1, 2를 산출하는 구성예를 설명한다. 편집(오서링)마다 설정되는 난수 등의 랜덤값을 디스크 키 시드로 하여 정보 기록 매체(220)에 저장한다.
도 7의 (a)의 처리예는, 디스크 키 시드에 대하여 디스크 고유 키를 적용하여, AES 암호 처리부(291)에서 암호 처리를 실행하고, 그 출력을 타이틀 고유 키 1로 한다. 또한 그 타이틀 고유 키 1을 AES 암호 처리부(292)에 입력하여 디스크 고유 키를 적용하여 AES 암호 처리를 실행하여, 그 결과를 타이틀 고유 키 2로 한다.
도 7의 (b)의 처리예는, 디스크 키 시드에 대하여 디스크 고유 키를 적용하여, AES 암호 처리부(293)에서 암호 처리를 실행하고, 그 출력을 타이틀 고유 키 1로 한다. 또한 그 타이틀 고유 키 1을, 연산부(294)에서, 연산, 예를 들면(디스크 키 시드 +1)mod2128을 산출하고, 그 결과를 AES 암호 처리부(295)에 입력하여 디스크 고유 키를 적용하여 AES 암호 처리를 실행하고, 그 결과를 타이틀 고유 키 2로 한다. 도 7에 도시하는 방법에 따르면, 정보 기록 매체(220)에 저장하는 정보를 적게 하는 것이 가능하게 된다.
도 3으로 되돌아가, 정보 기록 매체로부터의 데이터 복호, 재생 처리에 대한 설명을 계속한다. 단계 S104, S105에서 2개의 기록 키(REC 키) 1, 2를 생성하면, 계속해서, 단계 S106에서 블록 키 Kb1의 생성 처리를 실행한다.
블록 키 Kb1의 생성 처리에서는, 정보 기록 매체(220)로부터 블록 키 Kb1 생성 정보로서의 시드 정보(시드1)(227)를 판독하고, 시드 정보(시드1)(227)와, 단계 S104에서 생성한 기록 키 K1에 기초한 암호 처리를 실행하여 블록 키 Kb1을 생성한다.
단계 S106의 블록 키 Kb1의 생성 처리 이후에 실행하는 처리에 대하여, 도 8을 참조하여 설명한다.
도 8에서, 복호 처리는, 처리 단위(300)를 단위로 하여 실행된다. 이 처리 단위는, 먼저 도 1을 참조하여 설명한 (b) 처리 단위에 상당한다. 즉, 암호 처리 단위인 1 유닛(1AU : Aligned Unit)이다. 정보 기록 매체(220)에 저장된 암호화 데이터의 재생을 실행하는 정보 처리 장치(210)는, 제어 데이터 내의 플래그에 기초하여, 암호 처리 단위인 1AU(Aligned Unit)를 추출한다.
처리 단위(300)에는, 18 바이트의 제어 데이터(301)와, 6144 바이트의 사용자 데이터(암호화 콘텐츠를 포함함)가 포함된다. 6144 바이트의 사용자 데이터는, 트랜스포트 스트림 패킷의 단위인 192 바이트마다 분할된다. 사용자 데이터의 선두의 TS 패킷(302)과, 후속하는 5952 바이트의 TS 패킷군(303)을 분리하여 설명한다. 이 예에서는, 시드 정보(시드1)(311)가 제어 데이터(301)에 저장되고, 시드 정보(시드2)(312)가 사용자 데이터 내의 선두의 TS 패킷(302) 내에 암호화되어 저장된 예이다.
또, 시드 정보로서의, 시드1, 시드2의 저장 양태에는 복수의 양태가 있으며, 여기서는 그 일례를 나타낸다. 다른 예에 대해서는, 후술하겠다.
도 8에서, 도 3의 처리 단계와 마찬가지의 처리 단계에는, 동일한 처리 단계 번호를 붙인다.
단계 S106(도 3, 도 8)에서는, 정보 기록 매체의 제어 데이터 내로부터 판독한 시드 정보(시드1)(311)를 AES 암호 처리부에 입력하여, 앞의 단계 S104에서 생성한 기록 키 K1을 적용한 AES 암호 처리를 실행하여 블록 키 Kb1을 생성하는 처리를 실행한다. 또, 도 8에서 AES_G는, AES 암호 처리를 적용한 키 생성(Key Generation) 처리를 나타내고, AES_D는, AES 암호 처리를 적용한 데이터 복호(Decryption) 처리를 나타내고 있다.
계속해서, 도 3의 단계 S107에서, 32TS 패킷으로 이루어지는 사용자 데이터로부터 암호화 데이터부만이 추출된다. 사용자 데이터의 암호화부, 비암호화부가 단계 S107에서 분리되어, 암호화부만이 단계 S108∼S111의 복호 처리 프로세스 대상으로 된다. 비암호화부는, 단계 S108∼S111을 스킵하여, 단계 S112에서, 재차 셀렉터 단계에 의해 복호 데이터와 연결되고, 복호 TS 패킷군으로서, 예를 들면 MPEG 디코더에 입력되어, 디코드 처리가 이루어진다.
단계 S108(도 3, 도 8 참조)에서는, 단계 S106에서 생성한 블록 키 Kb1을 적용한 AES 복호 처리를 실행한다. 단계 S108에서는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부만을 대상으로 한 복호 처리가 실행된다. 이 예에서는, 사용자 데이터의 선두 TS 패킷(302) 중 적어도 시드 정보(시드2)를 포함하는 데이터 영역이 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부이다. 따라서, 이 시드 정보(시드2)를 포함하는 데이터 영역을 대상으로 하여 블록 키 Kb1을 적용한 복호 처리를 실행한다.
또, 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부를 어떤 데이터 영역으로 할지에 대해서는, 몇개의 패턴이 있으며, 이들에 대해서는 후술하겠다.
선두 TS 패킷(302)에는, 다른 사용자 데이터부, 즉 후속하는 5952 바이트의 TS 패킷군(303)의 복호 처리에 적용하는 블록 키 Kb2를 산출하기 위해 필요하게 되는 시드 정보(시드2)(312)가 포함되어 있다. 즉, 시드 정보(시드2)(312)는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 암호화 데이터로서 선두 TS 패킷(302)에 기록되어 있다.
단계 S106에서의, 블록 키 Kb1을 적용한 복호 처리의 결과로서, 복호 TS 패킷(304)이 산출되어, 그 중에서 시드 정보(시드2)를 추출한다.
도 3의 셀렉터 단계 S109는, 블록 키 Kb1을 적용한 복호 처리의 결과로부터, 시드 정보(시드2)를 단계 S110의 블록 키 Kb2 생성 단계에 출력하고, 블록 키 Kb2에 의해 암호화된 암호화 데이터를 복호 단계 S111에 출력하고, 그 밖의 복호 데이터(비암호화 데이터)를 셀렉터 단계 S112에 출력하는 것을 나타내고 있다.
단계 S110(도 3, 도 8 참조)에서는, 단계 S108에서의 블록 키 Kb1을 적용한 복호 처리의 결과 취득된 복호 TS 패킷(304)으로부터 추출한 시드 정보(시드2)와, 단계 S105(도 3 참조)에서 생성한 기록 키 K2에 기초하여, AES 암호 처리를 실행하여, 블록 키 Kb2를 산출한다.
계속해서, 단계 S111에서, 블록 키 Kb2를 적용하여 사용자 데이터부의 암호화부(블록 키 Kb2에 의해 암호화된 데이터 영역(303))를 복호하여, 복호 TS 패킷군(305)을 생성한다.
복호 TS 패킷군(305), 및 복호 TS 패킷(304)은, 셀렉터 단계 S112에서 결합되고, 복호 TS 패킷으로서 예를 들면 MPEG2 디코더에 입력되어, 디코드된 후, 재생된다.
이와 같이, 본 발명의 구성에서는, 암호화 콘텐츠의 복호에 적용하는 키(블록 키 Kb2)를 생성하기 위해 필요하게 되는 시드 정보(시드2)를 다른 키(블록 키 Kb1)에 의해 암호화하여 저장하는 구성으로 했으므로, 시드 정보(시드2)를 디스크로부터 직접 판독하는 것은 불가능하고, 따라서 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다.
또, 2개의 시드 정보의 저장 형태에는, 여러가지 양태가 있어, 이하, 복수의 예에 대하여 설명한다.
도 9에, 시드 정보(시드1)와, 시드 정보(시드2)를 함께 사용자 데이터 내의 선두 TS 패킷(302) 내에 저장한 예를 도시한다. 먼저 도 8을 참조하여 설명한 예에서는, 시드 정보(시드1)(311)가 제어 데이터(301)에 저장되고, 시드 정보(시드2)(312)가 사용자 데이터 내의 선두의 TS 패킷(302) 내에 암호화되어 저장된 예를 설명했지만, 도 9에 도시하는 구성예는, 시드 정보(시드1)(321), 시드 정보(시드2)(322), 쌍방이 사용자 데이터 내의 선두의 TS 패킷(302) 내에 저장된 예이다.
또, 시드 정보(시드2)(322)는, 도 8에서 설명한 예와 마찬가지로, 시드 정보(시드1)(321)를 적용하여 취득되는 블록 키 Kb1에 의해 암호화되어 사용자 데이터 내의 선두의 TS 패킷(302) 내에 저장된다.
도 9에서, 복호 처리는, 처리 단위(300)를 단위로 하여 실행된다. 이 처리 단위는, 먼저 도 1을 참조하여 설명한 (b) 처리 단위에 상당하는 1 유닛(1AU : Aligned Unit)이다. 정보 기록 매체(220)에 저장된 암호화 데이터의 재생을 실행하는 정보 처리 장치(210)는, 제어 데이터 내의 플래그에 기초하여 암호 처리 단위인 1AU(Aligned Unit)를 추출한다.
혹은, 암호화 처리 단위마다 암호화가 실시된 유닛인지 암호화가 실시되어 있지 않은 유닛인지를 판별하기 위해, 암호화 처리 단위의 선두에 존재하는 시드 정보(321)에 포함되는 플래그를 이용하는 구성으로 할 수 있다. 시드 정보를 포함시킨 암호화 처리 단위의 선두 부분을 나타낸 예가 도 10이다. 도 10의 복사 제어 정보로서의 CCI 부분에 기록된 플래그를 이용하여 암호화의 유무를 판별할 수 있다. 암호화되어 있는 경우에는 복호화를 행하는 경로를 통하여 재생을 행한다. 암호화되어 있지 않은 경우에는 복호화를 행하는 경로를 통하지 않고 재생을 행한다.
도 11에, CCI 부분에 기록된 플래그를 이용하여 암호화의 유무를 판별하여, 암호화되어 있는 경우에는 복호화를 행하는 경로를 통하여 재생을 행하고, 암호화되어 있지 않은 경우에는 복호화를 행하는 경로를 통하지 않고 재생을 행하는 처리를 실행하는 경우의 처리 구성을 도시한다. 도 11에서, 앞의 도 3에 도시하는 구성과의 차이는, 셀렉터 단계 S107이, 시드 정보(시드1)(227)를 입력하여, 시드 정보(시드1)(227)의 CCI 부분에 기록된 플래그를 이용하여 암호화의 유무를 판별하여, 암호화되어 있는 경우에는 복호화를 행하는 경로를 통하고, 암호화되어 있지 않은 경우에는 복호화를 행하는 경로를 통하지 않고 재생을 행하는 선택 처리를 실행하는 점뿐이다. 다른 처리는, 도 3에 도시하는 처리와 마찬가지이다.
도 9의 처리에 대하여 설명한다. 도 9에서, 도 11의 처리 단계와 마찬가지의 처리 단계에는, 동일한 처리 단계 번호를 붙인다.
단계 S106(도 11, 도 9)은, 정보 기록 매체의 사용자 데이터의 선두 TS 패킷내에서 판독한 시드 정보(시드1)(321)를 AES 암호 처리부에 입력하여, 앞의 단계 S104(도 11 참조)에서 생성한 기록 키 K1을 적용한 AES 암호 처리를 실행하여 블록 키 Kb1 생성 처리를 실행하는 단계이다.
계속해서, 도 11의 단계 S107에서, 32TS 패킷으로 이루어지는 사용자 데이터로부터 암호화 데이터부만이 추출된다. 사용자 데이터의 암호화부, 비암호화부가 단계 S107에서 분리되어, 암호화부만이 단계 S108∼S111의 복호 처리 프로세스 대상으로 된다. 비암호화부는, 단계 S108∼S111을 스킵하여, 단계 S112에서, 재차 셀렉터 단계에 의해 복호 데이터와 연결되어, 복호 TS 패킷군으로서, 예를 들면 MPEG 디코더에 입력되어, 디코드 처리가 이루어진다.
단계 S108(도 11, 도 9 참조)에서는, 단계 S106에서 생성한 블록 키 Kb1을 적용한 AES 복호 처리가 실행된다. 단계 S108에서는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부만을 대상으로 한 복호 처리가 실행된다. 이 예에서는, 사용자 데이터의 선두 TS 패킷(302) 중, 적어도 시드 정보(시드2)(322)를 포함하는 데이터 영역의 복호 처리가 실행된다.
이 선두 TS 패킷(302)의 암호화 데이터 영역에는, 다른 사용자 데이터부, 즉 후속하는 5952 바이트의 TS 패킷군(303)의 복호 처리에 적용하는 블록 키 Kb2를 산출하기 위해 필요하게 되는 시드 정보(시드2)(322)가 포함되어 있다. 즉, 시드 정보(시드2)(322)는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 암호화 데이터로서 선두 TS 패킷(302)에 기록되어 있다.
단계 S106에서의, 블록 키 Kb1을 적용한 복호 처리의 결과로서, 복호 TS 패킷(304)이 산출되고, 그 중에서 시드 정보(시드2)를 추출한다.
도 3의 셀렉터 단계 S109는, 블록 키 Kb1을 적용한 복호 처리의 결과로부터, 시드 정보(시드2)를 단계 S110의 블록 키 Kb2 생성 단계에 출력하고, 블록 키 Kb2에 의해 암호화된 암호화 데이터를 복호 단계 S111에 출력하고, 그 밖의 복호 데이터(비암호화 데이터)를 셀렉터 단계 S112에 출력하는 것을 나타내고 있다.
단계 S110(도 11, 도 9 참조)에서는, 단계 S108에서의 블록 키 Kb1을 적용한 복호 처리의 결과 취득된 복호 TS 패킷(304)으로부터 추출한 시드 정보(시드2)와, 단계 S105(도 11 참조)에서 생성한 기록 키 K2에 기초하여, AES 암호 처리를 실행하여, 블록 키 Kb2를 산출한다.
계속해서, 단계 S111에서, 블록 키 Kb2를 적용하여 사용자 데이터부의 암호화부(블록 키 Kb2에 의해 암호화된 데이터 영역(303))를 복호하여, 복호 TS 패킷군(305)을 생성한다.
복호 TS 패킷군(305), 및 복호 TS 패킷(304)은, 셀렉터 단계 S112에서 결합되고, 복호 TS 패킷으로서 예를 들면 MPEG2 디코더에 입력되어, 디코드된 후, 재생된다.
이와 같이, 본 구성에서는, 시드 정보(시드1)와, 시드 정보(시드2)를 함께 사용자 데이터 내의 선두 TS 패킷 내에 저장하고, 블록 키 Kb2를 생성하기 위해 필요하게 되는 시드 정보(시드2)는, 시드 정보(시드1)와, 기록 키 K1에 기초하여 생성하는 블록 키 Kb1에 의해 암호화하여 저장하는 구성으로 하였다.
본 구성에서도, 시드 정보(시드2)를 디스크로부터 직접 판독하는 것은 불가능하며, 따라서 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다.
도 12에 도시하는 예는, 시드 정보(시드1)(331)를 사용자 데이터 내의 선두 TS 패킷(302)에 저장하고, 시드 정보(시드2)(332)를 사용자 데이터 내의 다음의 TS 패킷(341)에 저장한 예이다.
또, 시드 정보(시드2)(332)는, 도 8, 도 9에서 설명한 예와 마찬가지로, 시드 정보(시드1)(331)를 적용하여 취득되는 블록 키 Kb1에 의해 암호화되어 사용자 데이터 내의 제2 TS 패킷(341) 내에 저장된다.
도 12에서, 복호 처리는, 처리 단위(300)를 단위로 하여 실행된다. 이 처리 단위는, 먼저 도 1을 참조하여 설명한 (b) 처리 단위에 상당하는 1 유닛(1AU : Aligned Unit)이다. 정보 기록 매체(220)에 저장된 암호화 데이터의 재생을 실행하는 정보 처리 장치(210)는, 제어 데이터 내의 플래그에 기초하여, 암호 처리 단위인 1AU(Aligned Unit)를 추출한다.
혹은, 암호화 처리 단위마다 암호화가 실시된 유닛인지 암호화가 실시되어 있지 않은 유닛인지를 판별하기 위해, 암호화 처리 단위의 선두에 존재하는 시드 정보(321)에 포함되는 플래그를 이용한다. 시드 정보를 포함시킨 암호화 처리 단위의 선두 부분을 나타낸 예가 도 10이다. 도 10의 CCI 부분에 기록된 플래그를 이용하여 암호화의 유무를 판별할 수 있다. 암호화되어 있는 경우에는 복호화를 행하는 경로를 통하여 재생을 행한다. 암호화되어 있지 않은 경우에는 복호화를 행하는 경로를 통하지 않고 재생을 행한다.
도 12의 처리에 대하여 설명한다. 도 12에서, 도 3의 처리 단계와 마찬가지의 처리 단계에는, 동일한 처리 단계 번호를 붙인다.
단계 S106(도 11, 도 12)은, 정보 기록 매체의 사용자 데이터의 선두 TS 패킷 내에서 판독한 시드 정보(시드1)(331)를 AES 암호 처리부에 입력하여, 앞의 단계 S104(도 11 참조)에서 생성한 기록 키 K1을 적용한 AES 암호 처리를 실행하여 블록 키 Kb1을 생성하는 단계이다.
계속해서, 도 3의 단계 S107에서, 32TS 패킷으로 이루어지는 사용자 데이터로부터 암호화 데이터부만이 추출된다. 사용자 데이터의 암호화부, 비암호화부가 단계 S107에서 분리되어, 암호화부만이 단계 S108∼S111의 복호 처리 프로세스 대상으로 된다. 비암호화부는, 단계 S108∼S111을 스킵하여, 단계 S112에서, 재차 셀렉터 단계에 의해 복호 데이터와 연결되어, 복호 TS 패킷군으로서, 예를 들면 MPEG 디코더에 입력되어, 디코드 처리가 이루어진다.
단계 S108(도 11, 도 12 참조)에서는, 단계 S106에서 생성한 블록 키 Kb1을 적용한 AES 복호 처리를 실행한다. 복호 처리 대상은, 블록 키 Kb1을 적용한 암호 처리가 이루어져 있는 데이터 영역으로서, 사용자 데이터의 선두 TS 패킷 중 시드 정보(시드1)(321)를 제외한 데이터 영역의 암호화 영역과, 제2 TS 패킷 중 적어도 시드 정보(시드2)(332)를 포함하는 데이터 영역의 복호 처리가 실행된다. 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부를 어떤 데이터 영역으로 할지에 대해서는, 몇개의 패턴이 있으며, 이들에 대해서는 후술하겠다.
본 예에서는, 제2 TS 패킷(341)의 암호화 데이터 영역에, 다른 사용자 데이터부, 즉 후속하는 TS 패킷군(342)의 복호 처리에 적용하는 블록 키 Kb2를 산출하기 위해 필요하게 되는 시드 정보(시드2)(332)가 포함된다. 즉, 시드 정보(시드2)(332)는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 암호화 데이터로서 제2 TS 패킷(341)에 기록되어 있다.
단계 S106에서의, 블록 키 Kb1을 적용한 복호 처리의 결과로서, 복호 TS 패킷(304)이 산출되고, 그 중에서 시드 정보(시드2)를 추출한다.
도 11의 셀렉터 단계 S109는, 블록 키 Kb1을 적용한 복호 처리의 결과로부터, 시드 정보(시드2)를 단계 S110의 블록 키 Kb2 생성 단계에 출력하고, 블록 키 Kb2에 의해 암호화된 암호화 데이터를 복호 단계 S111에 출력하고, 그 밖의 복호 데이터(비암호화 데이터)를 셀렉터 단계 S112에 출력하는 것을 나타내고 있다.
단계 S110(도 11, 도 12 참조)에서는, 단계 S108에서의 블록 키 Kb1을 적용한 복호 처리의 결과, 취득된 복호 TS 패킷(304)으로부터 추출한 시드 정보(시드2)와, 단계 S105(도 11 참조)에서 생성한 기록 키 K2에 기초하여, AES 암호 처리를 실행하여, 블록 키 Kb2를 산출한다.
계속해서, 단계 S111에서, 블록 키 Kb2를 적용하여 사용자 데이터부의 암호화부(블록 키 Kb2에 의해 암호화된 데이터 영역(342))를 복호하여, 복호 TS 패킷군(305)을 생성한다.
복호 TS 패킷군(305), 및 복호 TS 패킷(304)은, 셀렉터 단계 S112에서 결합되고, 복호 TS 패킷으로서 예를 들면 MPEG2 디코더에 입력되어, 디코드된 후, 재생된다.
이와 같이, 본 구성에서는, 시드 정보(시드1)를 사용자 데이터 내의 선두 TS 패킷 내에 저장하고, 블록 키 Kb2를 생성하기 위해 필요하게 되는 시드 정보(시드2)를 사용자 데이터 내의 제2 TS 패킷 내에 저장하고, 시드 정보(시드2)를, 시드 정보(시드1)와, 기록 키 K1에 기초하여 생성하는 블록 키 Kb1에 의해 암호화하여 저장하는 구성으로 하였다.
본 구성에서도, 시드 정보(시드2)를 디스크로부터 직접 판독하는 것은 불가능하다. 따라서 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다.
계속해서, 도 13, 도 14, 도 15를 참조하여 시드 정보(시드1)와 기록 키 K에 기초하여 생성하는 블록 키 Kb1에 의해 암호화하는 영역의 예에 대하여 설명한다. 도 13은, 제어 블록에 시드 정보(시드1)가 저장되고, 시드 정보(시드2)가, 사용자 데이터의 하나의 TS 패킷에 포함되는 경우의 예이다. 도 8, 도 9, 도 12를 참조하여 설명한 예에서는, 시드 정보(시드2)가, 사용자 데이터의 선두 또는 2번째의 TS 패킷 내에 포함되는 경우에 대해 설명했지만, 시드 정보(시드2)는, 선두, 또는 제2번째의 TS 패킷 이외의 사용자 데이터부를 구성하는 임의의 TS 패킷 내에 저장 가능하다.
사용자 데이터 중 어느 하나의 TS 패킷에 시드 정보(시드2)를 저장한 경우, 시드 정보(시드1)와 기록 키 K1에 기초하여 생성하는 블록 키 Kb1에 의해 암호화하는 영역예로서, 예를 들면 도 13의 (a)∼(c)의 구성이 있다. (a)는, 시드 정보(시드2)만을 블록 키 Kb1에 의해 암호화한 예이다. 그외의 영역은, 비암호화 영역으로 하거나, 혹은 시드 정보(시드2)와 기록 키 K2에 의해 생성되는 블록 키 Kb2에 의해 암호화한 데이터 영역으로 한다.
(b)는, 시드 정보(시드2)를 포함하는 TS 패킷의 일부 영역을 블록 키 Kb1에 의해 암호화한 예이다.
콘텐츠 편집 스튜디오(282)(도 6 참조)에서 시드 정보(시드2)와 편집 식별자(편집 ID)를 TS 패킷 내에 저장하고, 디스크 제조 엔티티(283)(도 6 참조)에서, 시드 정보(시드1)에 기초하여 생성 가능한 기록 키 K1을 이용하여, 시드 정보(시드2)의 암호화 처리를 행한 후, 디스크에 저장한다.
(c)는, 시드 정보(시드2)를 포함하는 하나의 TS 패킷의 전체 영역을 블록 키 Kb1에 의해 암호화한 예이다.
도 14에 도시하는 예는, 시드 정보(시드1)와 시드 정보(시드2)를 동일한 TS 패킷 내에 저장한 예를 나타내고 있다. 시드 정보(시드1)는 비암호화 정보로서 저장된다. 시드 정보(시드2)는, 시드 정보(시드1)와 기록 키 K1에 기초하여 생성하는 블록 키 Kb1에 의해 암호화되어, 시드 정보(시드1)와 동일한 TS 패킷 내에 저장된다.
(d)는, 시드 정보(시드2)만을 블록 키 Kb1에 의해 암호화한 예이다. 그 외의 영역은, 비암호화 영역으로 하거나, 혹은 시드 정보(시드2)와 기록 키 K2에 의해 생성되는 블록 키 Kb2에 의해 암호화한 데이터 영역으로 한다.
(e)는, 시드 정보(시드2)를 포함하는 TS 패킷의 일부 영역을 블록 키 Kb1에 의해 암호화한 예이다. (f)는, 시드 정보(시드2)를 포함하는 하나의 TS 패킷의 전체 영역을 블록 키 Kb1에 의해 암호화한 예이다.
도 15에 도시하는 예는, 시드 정보(시드1)와 시드 정보(시드2)를 서로 다른 TS 패킷 내에 저장한 예를 나타내고 있다. 시드 정보(시드1)는 비암호화 정보로서 저장된다. 시드 정보(시드2)는, 시드 정보(시드1)와 기록 키 K1에 기초하여 생성하는 블록 키 Kb1에 의해 암호화되어, 시드 정보(시드1)와 다른 TS 패킷 내에 저장된다.
(g)는, 시드 정보(시드2)만을 블록 키 Kb1에 의해 암호화한 예이다. 그 외의 영역은, 비암호화 영역으로 하거나, 혹은 시드 정보(시드2)와 기록 키 K2에 의해 생성되는 블록 키 Kb2에 의해 암호화한 데이터 영역으로 한다.
(h)는, 시드 정보(시드2)를 포함하는 TS 패킷의 일부 영역을 블록 키 Kb1에 의해 암호화한 예이다. (i)는, 시드 정보(시드2)를 포함하는 하나의 TS 패킷의 전체 영역을 블록 키 Kb1에 의해 암호화한 예이다.
이상, 도 13∼도 15를 참조하여 설명한 바와 같이, 시드 정보(시드1) 및 시드 정보(시드2)의 저장 양태, 및 암호화 데이터 영역의 설정 양태는 다양한 설정이 가능하다. 그러나, 어느 경우에도 시드 정보(시드2)는, 시드 정보(시드1)를 이용하여 생성되는 키, 즉 블록 키 Kb1에 의해 암호화되어 저장되므로, 정보 기록 매체로부터의 직접 판독이 불가능하게 되어, 시드 정보(시드2)의 해석, 시드 정보(시드2)를 적용하여 생성하는 블록 키 Kb2의 해석, 블록 키 Kb2에 의해 암호화되는 사용자 데이터의 암호화 알고리즘의 해석 곤란성을 높이는 것이 가능하게 된다.
[정보 기록 매체 드라이브 장치와의 인터페이스를 통하는 데이터 입출력 구성]
계속해서, PC 등의 정보 처리 장치에서, 여러가지 인터페이스, 예를 들면 SCSI, IEEEE1394, USB 등의 인터페이스를 통하여 DVD, CD 등의 정보 기록 매체를 장착한 정보 기록 매체 드라이브와 접속하여, 인터페이스를 통하여 데이터 전송을 실행하는 경우의 처리예에 대하여 설명한다.
예를 들면, 도 15에 도시한 바와 같이, PC 등의 정보 처리 장치(410)와, DVD, CD 등의 정보 기록 매체(430)를 장착한 정보 기록 매체 드라이브(420)를 쌍방의 인터페이스(411, 421)를 통하여 접속한 구성으로서, 정보 기록 매체 드라이브(420)가 정보 기록 매체(430)에 대한 액세스를 실행하여, 데이터를 쌍방의 인터페이스(411, 421)를 통하여 전송하여, PC 등의 정보 처리 장치(410)에서 재생하는 구성이다.
도 15에 도시한 바와 같이, 인터페이스(411, 421)를 통하여 데이터가 전송되는 경우, 전송 데이터에 상술한 시드 정보(시드2)가 비암호화 상태로 포함되면, 전송 데이터로부터의 시드 정보(시드2)의 누설이 발생할 가능성이 있다.
따라서, 본 발명의 구성에서는, 정보 처리 장치(410)와 정보 기록 매체 드라이브(420) 사이에서 인터페이스를 통하여 데이터 전송이 실행되는 경우, 쌍방의 장치 사이에서, 인증 처리를 실행하여, 인증 처리의 결과, 쌍방의 기기로 취득하는 세션 키를 이용하여 전송 데이터를 암호화하여 송신하는 구성으로 하였다. 이하, 이 처리 구성의 상세 내용에 대하여 설명한다.
도 17에, PC 등의 정보 처리 장치(500)와 정보 기록 매체 드라이브(510)에서, 암호화 콘텐츠를 저장한 정보 기록 매체(520)의 데이터를 판독하여, 재생을 실행하는 경우의 처리를 설명하는 도면을 도시한다. 또, 정보 처리 장치(500)와 정보 기록 매체 드라이브(510)도, 먼저 도 2를 참조하여 설명한 구성과 거의 마찬가지의 구성을 갖는다. 단, PC 등의 정보 처리 장치(500)는, 도 2에 도시하는 기록 매체(195) 및 드라이브(190)는 필수가 아니고, 이들은 정보 기록 매체 드라이브(510)만을 구비하면 된다. 또한, MPEG 코덱(130), TS 처리 수단(198)은 PC 등의 정보 처리 장치(500)만이 갖는 구성이면 되므로, 정보 기록 매체 드라이브(510)에는 구성할 필요가 없다.
도 17을 참조하여, 정보 기록 매체(520)의 데이터를 정보 기록 매체 드라이브(510)에서 판독하여, 정보 처리 장치(500)에 전송하여 재생하는 경우의 처리를 설명한다.
정보 기록 매체 드라이브(510)는 자신의 메모리(180)(도 2 참조)에 저장되어 있는 마스터 키(511)를 판독한다. 또, 마스터 키(511)는, 정보 처리 장치(500)측에 저장되어 있는 경우에는, 정보 처리 장치(500)로부터 정보 기록 매체 드라이브(510)로 송신해도 된다. 마스터 키(511)는, 라이센스를 받은 정보 처리 장치(정보 기록 매체 드라이브를 포함함)에 저장된 비밀 키로서, 복수의 정보 처리 장치에 공통된 키로서 저장된 공통 키이다.
정보 기록 매체 드라이브(51O)는, 디스크 ID(Disc ID)(521)를 정보 기록 매체(52O)로부터 판독한다. 디스크 ID(Disc ID)(521)는, 디스크 고유 정보로서, 예를 들면 일반 데이터 저장 영역 또는, 리드 인 에리어에 저장된다.
계속해서, 정보 기록 매체 드라이브(510)는, 단계 S551에 있어서, 마스터 키(511)와 디스크 ID(521)를 이용하여, 디스크 고유 키(Disc Unique Key)를 생성한다. 디스크 고유 키(Disc Unique Key)의 구체적인 생성 방법은, 먼저 도 4를 참조하여 설명한 바와 마찬가지의 방법을 적용할 수 있다.
계속해서, 기록 콘텐츠마다의 2개의 고유 키인 타이틀 키(Title Key) 1(523), 타이틀 키 2(524)를 정보 기록 매체(520)로부터 판독한다. 디스크 상에는, 어디의 데이터가 어떤 타이틀을 구성하는지에 대한 정보가 저장된 데이터 관리 파일이 있고, 이 파일에 타이틀 키가 저장되어 있다. 디스크 1매에 대하여 타이틀 키가 1조밖에 없는 경우, 즉 디스크 ID(521)에 대한 타이틀 키를 일의적으로 결정할 수 있는 경우에는, 디스크 ID(521)와 마찬가지의 방법으로, 예를 들면 일반 데이터 저장 영역 또는, 리드 인 에리어에 저장하도록 해도 된다.
계속해서 단계 S552 및 단계 S553에서, 디스크 고유 키(Disc Unique Key)와 타이틀 키(Title Key) 1, 2로부터, 2개의 타이틀 고유 키(Title Unique Key) 1, 2를 생성한다.
또한, 정보 기록 매체 드라이브(510)는, 단계 S552 및 단계 S553에서 생성한 2개의 타이틀 고유 키(Title Unique Key) 1, 2와, 정보 기록 매체(520)로부터 판독한 기록 시드(REC SEED)(525), 물리 인덱스(526)에 기초하여, 단계 S554, S555에서, 2개의 기록 키(REC 키) K1, K2를 생성한다.
단계 S552∼S555에서 실행하는 2개의 기록 키(REC 키) K1, K2의 생성 처리는, 먼저 도 5를 참조하여 설명한 바와 같이, 2개의 타이틀 고유 키(Title Unique Key) 1, 2와, 정보 기록 매체(520)로부터 판독한 기록 시드(REC SEED)(525), 물리 인덱스(526)에 기초한 AES(Advanced Encryption Standard) 암호 처리에 의해 생성된다.
또, 먼저 도 7을 참조하여 설명한 바와 같이, 기록 시드(REC SEED)(525), 물리 인덱스(526)를 정보 기록 매체(520)에 저장하는 대신에 편집(오서링)마다 설정되는 난수 등의 랜덤값을 디스크 키 시드로서 정보 기록 매체(520)에 저장하고, 디스크 키 시드에 대하여 디스크 고유 키를 적용하여, AES 암호 처리를 실행하여, 그 출력으로부터 타이틀 고유 키1, 타이틀 고유 키2를 얻는 방법으로 해도 된다.
전술한 어느 한 방법에 의해, 단계 S554, S555에서 2개의 기록 키(REC 키)(1, 2)를 생성하면, 계속해서, 단계 S556에서, 블록 키 Kb1의 생성 처리를 실행한다.
블록 키 Kb1의 생성 처리에서는, 정보 기록 매체(520)로부터 블록 키 Kb1 생성 정보로서의 시드 정보(시드1)(527)를 판독하고, 시드 정보(시드1)(527)와, 단계 S554에서 생성한 기록 키 K1에 기초한 암호 처리를 실행하여 블록 키 Kb1을 생성한다.
단계 S556의 블록 키 Kb1의 생성 처리 이후에 실행하는 처리에 대하여, 도 18을 참조하여 설명한다.
도 18에서, 복호 처리는, 도 8∼도 12를 참조하여 설명한 바와 마찬가지로, 처리 단위(600)를 단위로 하여 실행된다. 이 처리 단위는, 먼저 도 1을 참조하여 설명한 (b) 처리 단위에 상당한다. 즉, 암호 처리 단위인 1 유닛(1AU : Aligned Unit)이다. 정보 기록 매체(520)에 저장된 암호화 데이터의 판독을 실행하는 정보 기록 매체 드라이브(510)는, 제어 데이터 내의 플래그에 기초하여, 암호 처리 단위인 1AU(Aligned Unit)를 추출한다.
처리 단위(600)에는, 18 바이트의 제어 데이터(601)와, 6144 바이트의 사용자 데이터(암호화 콘텐츠를 포함함)가 포함된다. 6144 바이트의 사용자 데이터는, 트랜스포트 스트림 패킷의 단위인 192 바이트마다 분할된다. 사용자 데이터의 선두의 TS 패킷(602)과, 후속하는 5952 바이트의 TS 패킷군(603)을 분리하여 설명한다. 이 예에서는, 시드 정보(시드1)(611)가 제어 데이터(601)에 저장되고, 시드 정보(시드2)(612)가 사용자 데이터 내의 선두의 TS 패킷(602) 내에 암호화되어 저장된 예이다.
또, 시드 정보로서의, 시드1, 시드2의 저장 양태에는 복수의 양태가 있어, 여기서는 그 일례를 나타낸다. 다른 예에 대해서는, 후술하겠다.
도 18에서, 도 17의 처리 단계와 마찬가지의 처리 단계에는, 동일한 처리 단계 번호를 붙인다.
단계 S556(도 17, 도 18)는, 정보 기록 매체의 제어 데이터 내에서 판독한 시드 정보(시드1)(611)를 AES 암호 처리부에 입력하여, 앞의 단계 S554에서 생성한 기록 키 K1을 적용한 AES 암호 처리를 실행하여 블록 키 Kb1 생성 처리를 실행하는 단계이다.
계속해서, 도 17의 단계 S557에서, 32TS 패킷으로 이루어지는 사용자 데이터로부터 블록 키 Kb1에 의한 암호화 데이터부만이 추출된다. 블록 키 Kb1에 의한 암호화 데이터부, 비암호화부가 단계 S557에서 분리되어, 암호화부만이 단계 S558에서 복호된다. 비암호화부는, 단계 S558을 스킵하여, 단계 S559에서, 재차 셀렉터 단계에 의해 복호 데이터와 연결되고, 단계 S563에서 세션 키에 의해 암호화가 이루어진다.
단계 S558(도 17, 도 18 참조)에서는, 단계 S556에서 생성한 블록 키 Kb1을 적용한 AES 복호 처리를 실행한다. 단계 S558에서는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부만을 대상으로 한 복호 처리가 실행된다. 이 예에서는, 사용자 데이터의 선두 TS 패킷(602) 중 적어도 시드 정보(시드2)를 포함하는 데이터 영역이 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부이다. 따라서, 이 시드 정보(시드2)를 포함하는 데이터 영역을 대상으로 하여 블록 키 Kb1을 적용한 복호 처리를 실행한다.
또, 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부를 어떤 데이터 영역으로 할지에 대해서는, 몇개의 패턴이 있고, 이들에 대해서는, 먼저, 도 13∼도 15를 참조하여 설명한 대로이다.
선두 TS 패킷(602)에는, 다른 사용자 데이터부, 즉, 후속하는 5952 바이트의 TS 패킷군(603)의 복호 처리에 적용하는 블록 키 Kb2를 산출하기 위해서 필요하게 되는 시드 정보(시드2)(612)가 포함되어 있다. 즉, 시드 정보(시드2)(612)는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 암호화 데이터로서 선두 TS 패킷(602)에 기록되어 있다.
단계 S556에서의, 블록 키 Kb1을 적용한 복호 처리의 결과로서, 복호 TS 패킷(604)이 산출되고, 그 중에는 시드 정보(시드2)가 포함된다.
도 17의 셀렉터 단계 S559는, 블록 키 Kb1을 적용한 복호 처리의 결과로부터, 시드 정보(시드2)를 포함하는 복호 데이터와, 그 밖의 데이터를 결합하여, 암호화 단계 S563에 출력하는 것을 도시하고 있다.
단계 S563에서의 암호화 처리는, 정보 기록 매체 드라이브(510)와, 정보 처리 장치(500) 사이에서 실행하는 상호 인증 처리의 결과로서 쌍방에서 공유하는 세션 키에 기초하여 실행하는 암호 처리이다. 상호 인증 처리는, 정보 기록 매체 드라이브(510)와, 정보 처리 장치(500)가 공유하는 인증 키 Km(530, 540)에 기초하여 실행된다.
상호 인증 처리의 시퀀스에 대하여, 도 19를 참조하여 설명한다. 도 19에 도시하는 인증 및 세션 키 공유 처리는, 공통 키 처리 방식에 기초한 일례이다. 인증 시퀀스 및 세션 키 공유 시퀀스는, 이 처리 시퀀스에 한하지 않고, 다른 처리 방법을 적용해도 된다.
정보 기록 매체 드라이브(510)와, 정보 처리 장치(500)는 인증 키 Km(530, 540)을 갖는다. 우선, 단계 S571에서, 정보 처리 장치(500)가 난수 Rb1(64bit)을 생성하여, 정보 기록 매체 드라이브(510)로 송신한다. 정보 기록 매체 드라이브(510)는, 단계 S581에서, 난수 Ra1을 생성하고, 단계 S682에서 난수 Ra1과 난수 Rb1의 결합 데이터[Ra1∥Rb1]에 대한 AES 암호화 처리에 기초한 MAC(Message Authentication Code)를 생성한다. 생성 MAC값을 eKm(Ra1∥Rb1)로 한다. 또, eKa(B)는, 키 Ka에 의한 데이터 B의 암호화를 나타내고, A∥B는, 데이터 A와 데이터 B의 연결을 나타낸다. 정보 기록 매체 드라이브(510)는, 생성 MAC값 : eKm(Ra1∥Rb1)과, 생성 난수 Ra1을 정보 처리 장치(500)로 송신한다.
정보 처리 장치(500)는, 정보 기록 매체 드라이브(510)로부터 수신한 난수 Ra1과 단계 S571에서 생성한 난수 Rb1에 기초하여, 단계 S572에서, MAC값 : eKm(Ra1∥Rb1)을 산출한다. 또한, 단계 S573에서, 산출한 MAC값와, 정보 기록 매체 드라이브(510)로부터 수신한 MAC값을 비교한다. 일치하면, 정보 처리 장치(500)는, 정보 기록 매체 드라이브(510)가 옳은 인증 키를 갖는 정규의 디바이스라고 인증한다. 불일치한 경우에는, 인증 에러로서, 그 후의 처리를 중지한다.
또한, 정보 처리 장치(500)는, 단계 S574에서, 난수 Rb2를 생성하여, 정보 기록 매체 드라이브(510)로 송신한다. 정보 기록 매체 드라이브(510)는, 단계 S583에서, 난수 Ra2를 생성하고, 생성 난수 Ra2를 정보 처리 장치(500)로 송신한다.
정보 처리 장치(500)는, 단계 S575에서, 수신 난수 Ra2와 생성 난수 Rb2에 기초하여, MAC값 : eKm(Ra2∥Rb2)를 산출하여, 정보 기록 매체 드라이브(510)로 송신한다.
정보 기록 매체 드라이브(510)는, 단계 S584에서, 수신한 난수 Rb2와 단계 S583에서 생성한 난수 Ra2에 기초하여, MAC값 : eKm(Ra2∥Rb2)을 산출한다. 또한, 단계 S585에서, 산출한 MAC값과, 정보 처리 장치(500)로부터 수신한 MAC값을 비교한다. 일치하면, 정보 기록 매체 드라이브(510)는, 정보 처리 장치(500)가 옳은 인증 키를 갖는 정규의 디바이스라고 인증한다. 불일치한 경우에는, 인증 에러로서, 그 후의 처리를 중지한다.
또한, 정보 처리 장치(500)는, 단계 S576에서, 난수 Ra3을 생성하여 정보 기록 매체 드라이브(510)로 송신한다.
정보 기록 매체 드라이브(510)는, 단계 S586에서, 난수 Ra3을 생성하고, 단계 S587에서, 생성 난수 Ra3과 정보 처리 장치(500)로부터의 수신 난수 Rb3과의 연결 데이터에 대한 공유 인증 키 Km을 적용한 AES 암호 처리를 실행하여, 세션 키 Ks=eKm(Ra3∥Rb3)을 산출한다.
정보 처리 장치(500)는, 단계 S577에서, 생성 난수 Rb3과 정보 기록 매체 드라이브(510)로부터의 수신 난수 Ra3과의 연결 데이터에 대한 공유 인증 키 Km을 적용한 AES 암호 처리를 실행하여, 세션 키 Ks=eKm(Ra3∥Rb3)을 산출한다.
상술한 처리에 의해, 정보 처리 장치(500)와 정보 기록 매체 드라이브(510)는, 서로 옳은 디바이스인 것을 확인하여, 세션 키 Ks=eKm(Ra3∥Rb3)을 공유할 수 있다. 도 17에 도시하는 단계 S560, S561의 처리가 도 19를 참조하여 설명한 처리에 대응한다.
상술한 처리에 의해, 세션 키 Ks가 정보 처리 장치(500)와 정보 기록 매체 드라이브(510)에 의해 공유되면, 도 17에 도시하는 단계 S562, S563의 암호화 처리가 정보 기록 매체 드라이브(510)에 의해서 실행된다.
단계 S562의 암호화 처리는, 단계 S555에서 생성한 기록 키 K2를 세션 키 Ks에 의해 암호화(AES 암호화)하여, 암호화 기록 키 eKs(K2)를 생성하는 처리이다. 단계 S563은, 단계 S558에서의 블록 키 Kb1을 적용한 복호 처리의 결과, 취득된 복호 TS 패킷(604)을 세션 키 Ks에 의해 암호화하는 처리이다. 또, 이 경우, 암호화하는 대상은, TS 패킷(604) 전체인 경우, 일부인 경우, 시드 정보(시드2)뿐인 경우 등, 처리 양태는, TS 패킷에 포함되는 비밀로 할 정보의 저장 양태, 즉 블록 키 Kb1에 의해 암호화된 범위에 따라 결정해도 된다. 이들의 각 양태는, 도 13∼도 15를 참조하여 설명한 대로이다.
단계 S562에서, 기록 키 K2의 세션 키 Ks에 의한 암호화 데이터가 생성되고, 단계 S563에서, 시드 정보(시드2)를 포함하는 비밀 정보가 세션 키 Ks에 의해 암호화되어, 이들의 암호화 데이터(도 18의 TS 패킷(605))가 정보 기록 매체 드라이브(510)로부터, 정보 처리 장치(500)로 송신된다. 즉, 데이터 통신로에서, 전송되는 데이터는 세션 키 Ks에 의해 암호화된 데이터로 된다.
정보 처리 장치(500)는, 정보 기록 매체 드라이브(510)로부터, 이들 데이터를 수신하면, 단계 S564 및 단계 S565에서, 수신 암호화 데이터를 복호한다. 즉, 단계 S564에서, 세션 키 Ks를 적용하여 암호화 기록 키 eKs(K2)를 복호하여 기록 키 K2를 취득하고, 단계 S565에서, 세션 키 Ks를 적용하여 시드 정보(시드2)를 포함하는 비밀 정보를 복호하여 시드 정보(시드2)를 포함하는 비밀 정보를 취득한다. 도 18에 도시하는 TS 패킷(606)이 복호된 시드 정보(시드2)를 포함한다.
단계 S566은, 복호된 시드 정보(시드2)와, 블록 키 Kb2에 의한 복호 대상 데이터와, 비암호화 데이터를 분리하는 셀렉터 단계이다. 단계 S567(도 17, 도 18 참조)에서는, 단계 S565에서의 세션 키 Ks를 적용한 복호 처리의 결과, 취득된 시드 정보(시드2)와, 단계 S564에서 생성한 기록 키 K2에 기초하여, AES 암호 처리를 실행하여, 블록 키 Kb2를 산출한다.
계속해서, 단계 S568에서, 블록 키 Kb2를 적용하여 사용자 데이터부의 암호화부(블록 키 Kb2에 의해 암호화된 데이터 영역)를 복호하여, 복호 TS 패킷군(607)을 생성한다.
복호 TS 패킷군(607), 및 복호 TS 패킷(606)은, 셀렉터 단계 S569에서 결합되고, 복호 TS 패킷으로서 예를 들면 MPEG2 디코더에 입력되어, 디코드된 후, 재생된다.
이와 같이, 본 구성에서는, 정보 기록 매체에 저장된 데이터의 재생 처리에서, 암호화 콘텐츠의 복호에 적용하는 키(블록 키 Kb2)를 생성하기 위해 필요하게 되는 시드 정보(시드2)를 디바이스 사이에서 전송하는 것이 필요하게 되는 구성에 있어서, 블록 키 Kb2의 생성에 필요하게 되는 시드 정보(시드2) 및 기록 키 K2의 쌍방을 세션 키에 의해 암호화하여 송수신하는 구성으로 했으므로, 전송로로부터의 데이터 누설이 발생한 경우에도, 시드 정보(시드2) 및 기록 키 K2를 취득하는 것은 곤란하므로, 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다. 이것은, 정보 처리 장치(500) 중에서, 예를 들면 기록 키 K1의 취득 방법으로부터 블록 키 Kb1의 산출 방법, 그리고 세션 키 Ks의 생성 방법, 및 세션 키 Ks에 의한 암호화 방법을 하나의 LSI 패키지 내의 처리로 하여 은닉성을 높임으로써, 한층 강고한 것으로 된다.
또, 상술한 예와 마찬가지로, 2개의 시드 정보의 저장 형태에는, 여러가지 양태가 있어, 이하, 복수의 예에 대하여 설명한다.
도 20에, 시드 정보(시드1)와, 시드 정보(시드2)를 모두 사용자 데이터 내의 선두 TS 패킷(602) 내에 저장한 예를 나타낸다. 먼저 도 18을 참조하여 설명한 예에서는, 시드 정보(시드1)(611)가 제어 데이터(601)에 저장되고, 시드 정보(시드2)(612)가 사용자 데이터 내의 선두의 TS 패킷(602) 내에 암호화되어 저장된 예를 설명했지만, 도 20에 도시하는 구성예는, 시드 정보(시드1)(621), 시드 정보(시드2)(622), 쌍방이 사용자 데이터 내의 선두의 TS 패킷(602) 내에 저장된 예이다.
또, 시드 정보(시드2)(622)는, 도 18에서 설명한 예와 마찬가지로, 시드 정보(시드1)(621)를 적용하여 취득되는 블록 키 Kb1에 의해 암호화되어 사용자 데이터 내의 선두의 TS 패킷(602) 내에 저장된다.
도 20에서, 복호 처리는, 처리 단위(600)를 단위로 하여 실행된다. 이 처리 단위는, 먼저 도 1을 참조하여 설명한 (b) 처리 단위에 상당하는 1 유닛(1AU : Aligned Unit)이다. 정보 기록 매체(520)에 저장된 암호화 데이터의 판독을 실행하는 정보 기록 매체 드라이브(510)는, 제어 데이터 내의 플래그에 기초하여, 암호 처리 단위인 1AU(Aligned Unit)를 추출한다.
도 20의 처리에 대하여 설명한다. 도 20에서, 도 17의 처리 단계와 마찬가지의 처리 단계에는, 동일한 처리 단계 번호를 붙인다.
단계 S556(도 17, 도 20)은, 정보 기록 매체의 사용자 데이터의 선두 TS 패킷 내에서 판독한 시드 정보(시드1)(621)를 AES 암호 처리부에서, 앞의 단계 S554(도 17 참조)에서 생성한 기록 키 K1을 적용한 AES 암호 처리를 실행하여 블록 키 Kb1 생성 처리를 실행한다.
계속해서, 도 17의 단계 S557에서, 32TS 패킷으로 이루어지는 사용자 데이터로부터 블록 키 Kb1에 의한 암호화 데이터부만이 추출된다. 블록 키 Kb1에 의한 암호화 데이터부, 비암호화부가 단계 S557에서 분리되어, 암호화부만이 단계 S558에서 복호된다. 비암호화부는, 단계 S558을 스킵하여, 단계 S559에서, 재차 셀렉터 단계에 의해 복호 데이터와 연결되고, 단계 S563에서 세션 키에 의해 암호화가 이루어진다.
단계 S558(도 17, 도 20 참조)에서는, 단계 S556에서 생성한 블록 키 Kb1을 적용한 AES 복호 처리를 실행한다. 단계 S558에서는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부만을 대상으로 한 복호 처리가 실행된다. 이 예에서는, 사용자 데이터의 선두 TS 패킷(602) 중 적어도 시드 정보(시드2)를 포함하는 데이터 영역이 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부이다. 따라서, 이 시드 정보(시드2)를 포함하는 데이터 영역을 대상으로 하여 블록 키 Kb1을 적용한 복호 처리를 실행한다.
이 선두 TS 패킷(602)의 암호화 데이터 영역에는, 다른 사용자 데이터부, 즉, 후속하는 5952 바이트의 TS 패킷군(603)의 복호 처리에 적용하는 블록 키 Kb2를 산출하기 위해 필요하게 되는 시드 정보(시드2)(622)가 포함되어 있다. 즉, 시드 정보(시드2)(622)는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 암호화 데이터로서 선두 TS 패킷(602)에 기록되어 있다.
단계 S556에서의, 블록 키 Kb1을 적용한 복호 처리의 결과로서, 복호 TS 패킷(604)이 산출되고, 그 중에는 시드 정보(시드2)가 포함된다.
도 17의 셀렉터 단계 S559는, 블록 키 Kb1을 적용한 복호 처리의 결과로부터, 시드 정보(시드2)를 포함하는 복호 데이터와, 그 밖의 데이터를 결합하여, 암호화 단계 S563에 출력하는 것을 도시하고 있다.
단계 S563에서의 암호화 처리는, 정보 기록 매체 드라이브(510)와, 정보 처리 장치(500) 사이에서 실행하는 상호 인증 처리의 결과로서 쌍방에서 공유하는 세션 키에 기초하여 실행하는 암호 처리이다. 상호 인증 처리는, 정보 기록 매체 드라이브(510)와, 정보 처리 장치(500)가 공유하는 인증 키 Km(530, 540)에 기초하여 실행된다. 상호 인증 처리 및 세션 키 공유 처리는, 도 19를 참조하여 설명한 대로이다.
인증이 성립되어, 세션 키 Ks가 공유되면, 도 17, 도 20에 도시하는 단계 S562, S563의 암호화 처리가 정보 기록 매체 드라이브(510)에 의해 실행된다. 즉, 단계 S562에서, 기록 키 K2의 세션 키 Ks에 의한 암호화 데이터가 생성되고, 단계 S563에서, 시드 정보(시드2)를 포함하는 비밀 정보가 세션 키 Ks에 의해 암호화되고, 이들 암호화 데이터(도 20의 TS 패킷(605))가 정보 기록 매체 드라이브(510)로부터, 정보 처리 장치(500)로 송신된다. 즉, 데이터 통신로에서, 전송되는 데이터는 세션 키 Ks에 의해 암호화된 데이터로 된다.
정보 처리 장치(500)는, 정보 기록 매체 드라이브(510)로부터, 이들 데이터를 수신하면, 단계 S564 및 단계 S565에서, 수신 암호화 데이터를 복호한다. 즉, 단계 S564에서, 세션 키 Ks를 적용하여 암호화 기록 키 eKs(K2)를 복호하여 기록 키 K2를 취득하고, 단계 S565에서, 세션 키 Ks를 적용하여 시드 정보(시드2)를 포함하는 비밀 정보를 복호하여 시드 정보(시드2)를 포함하는 비밀 정보를 취득한다. 도 20에 도시하는 TS 패킷(606)이 복호된 시드 정보(시드2)를 포함한다.
단계 S566은, 복호된 시드 정보(시드2)와, 블록 키 Kb2에 의한 복호 대상 데이터와, 비암호화 데이터를 분리하는 셀렉터 단계이다. 단계 S567(도 17, 도 20 참조)에서는, 단계 S565에서의 세션 키 Ks를 적용한 복호 처리의 결과, 취득된 시드 정보(시드2)와, 단계 S564에서 생성한 기록 키 K2에 기초하여, AES 암호 처리를 실행하여, 블록 키 Kb2를 산출한다.
계속해서, 단계 S568에서, 블록 키 Kb2를 적용하여 사용자 데이터부의 암호화부(블록 키 Kb2에 의해 암호화된 데이터 영역)를 복호하여, 복호 TS 패킷군(607)을 생성한다.
복호 TS 패킷군(607), 및 복호 TS 패킷(606)은, 셀렉터 단계 S569에서 결합되고, 복호 TS 패킷으로서 예를 들면 MPEG2 디코더에 입력되어, 디코드된 후, 재생된다.
이와 같이, 본 구성에서는, 시드 정보(시드1)와, 시드 정보(시드2)를 모두 사용자 데이터 내의 선두 TS 패킷 내에 저장하고, 블록 키 Kb2를 생성하기 위해 필요하게 되는 시드 정보(시드2)는, 시드 정보(시드1)와, 기록 키 K1에 기초하여 생성하는 블록 키 Kb1에 의해 암호화하여 저장하는 구성으로 하였다.
본 구성에서도, 시드 정보(시드2)의 디스크로부터의 직접 판독, 데이터 전송로로부터의 판독을 행하는 것은 불가능하므로, 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다. 이것은, 정보 처리 장치(500) 중에서, 예를 들면 기록 키 K1의 취득 방법으로부터 블록 키 Kb1의 산출 방법, 그리고 세션 키 Ks의 생성 방법, 및 세션 키 Ks에 의한 암호화 방법을 하나의 LSI 패키지 내의 처리로 하여 은닉성을 높임으로써, 한층 강고한 것으로 된다.
도 21에 도시하는 예는, 시드 정보(시드1)(631)를 사용자 데이터 내의 선두 TS 패킷(602)에 저장하고, 시드 정보(시드2)(632)를 사용자 데이터 내의 다음의 TS 패킷(641)에 저장한 예이다.
또, 시드 정보(시드2)(632)는, 도 18, 도 20에서 설명한 예와 마찬가지로, 시드 정보(시드1)(631)를 적용하여 취득되는 블록 키 Kb1에 의해 암호화되어 사용자 데이터 내의 제2 TS 패킷(641) 내에 저장된다.
도 21에서, 복호 처리는, 처리 단위(600)를 단위로 하여 실행된다. 이 처리 단위는, 먼저 도 1을 참조하여 설명한 (b) 처리 단위에 상당하는 1 유닛(1AU : Aligned Unit)이다.
도 21의 처리에 대하여 설명한다. 도 21에서, 도 17의 처리 단계와 마찬가지의 처리 단계에는, 동일한 처리 단계 번호를 붙인다.
단계 S556(도 17, 도 21)은, 정보 기록 매체의 사용자 데이터의 선두 TS 패킷 내에서 판독한 시드 정보(시드1)(631)를 AES 암호 처리부에 입력하여, 앞의 단계 S554(도 17 참조)에서 생성한 기록 키 K1을 적용한 AES 암호 처리를 실행하여 블록 키 Kb1을 생성한다.
계속해서, 도 17의 단계 S557에서, 32TS 패킷으로 이루어지는 사용자 데이터로부터 블록 키 Kb1에 의한 암호화 데이터부만이 추출된다. 블록 키 Kb1에 의한 암호화 데이터부, 비암호화부가 단계 S557에서 분리되어, 암호화부만이 단계 S558에서 복호된다. 비암호화부는, 단계 S558을 스킵하여, 단계 S559에서, 재차 셀렉터 단계에 의해 복호 데이터와 연결되고, 단계 S563에서 세션 키에 의해 암호화가 이루어진다.
단계 S558(도 17, 도 21 참조)에서는, 단계 S556에서 생성한 블록 키 Kb1을 적용한 AES 복호 처리를 실행한다. 복호 처리 대상은, 블록 키 Kb1을 적용한 암호 처리가 이루어지고 있는 데이터 영역으로서, 사용자 데이터의 선두 TS 패킷 중 시드 정보(시드1)(521)를 제외한 데이터 영역의 암호화 영역과, 제2 TS 패킷 중 적어도 시드 정보(시드2)(632)를 포함하는 데이터 영역의 복호 처리가 실행된다. 블록 키 Kb1을 적용한 암호 처리가 이루어진 데이터부를 어떤 데이터 영역으로 할지에 대해서는, 몇개의 패턴이 있고, 이들에 대해서는 상술한 대로이다.
본 예에서는, 제2 TS 패킷(641)의 암호화 데이터 영역에, 다른 사용자 데이터부, 즉 후속하는 TS 패킷군(642)의 복호 처리에 적용하는 블록 키 Kb2를 산출하기 위해 필요하게 되는 시드 정보(시드2)(632)가 포함된다. 즉, 시드 정보(시드2)(632)는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 암호화 데이터로서 제2 TS 패킷(641)에 기록되어 있다.
단계 S606에서의, 블록 키 Kb1을 적용한 복호 처리의 결과로서, 복호 TS 패킷(604)이 산출된다. 그 중에 시드 정보(시드2)가 포함된다.
도 17의 셀렉터 단계 S559는, 블록 키 Kb1을 적용한 복호 처리의 결과로부터, 시드 정보(시드2)를 포함하는 복호 데이터와, 그 밖의 데이터를 결합하여, 암호화 단계 S563에 출력하는 것을 도시하고 있다.
단계 S563에서의 암호화 처리는, 정보 기록 매체 드라이브(510)와, 정보 처리 장치(500)와의 사이에서 실행하는 상호 인증 처리의 결과로서 쌍방에서 공유하는 세션 키에 기초하여 실행하는 암호 처리이다. 상호 인증 처리는, 정보 기록 매체 드라이브(510)와, 정보 처리 장치(500)가 공유하는 인증 키 Km(530, 540)에 기초하여 실행된다. 상호 인증 처리 및 세션 키 공유 처리는, 도 19를 참조하여 설명한 대로이다.
인증이 성립되어, 세션 키 Ks가 공유되면, 도 17, 도 21에 도시하는 단계 S562, S563의 암호화 처리가 정보 기록 매체 드라이브(510)에 의해 실행된다. 즉, 단계 S562에서, 기록 키 K2의 세션 키 Ks에 의한 암호화 데이터가 생성되고, 단계 S563에서, 시드 정보(시드2)를 포함하는 비밀 정보가 세션 키 Ks에 의해 암호화되어, 이들의 암호화 데이터(도 21의 TS 패킷(605))가 정보 기록 매체 드라이브(510)로부터, 정보 처리 장치(500)로 송신된다. 즉, 데이터 통신로에서, 전송되는 데이터는 세션 키 Ks에 의해 암호화된 데이터로 된다.
정보 처리 장치(500)는, 정보 기록 매체 드라이브(510)로부터, 이들의 데이터를 수신하면, 단계 S564 및 단계 S565에서, 수신 암호화 데이터를 복호한다. 즉, 단계 S564에서, 세션 키 Ks를 적용하여 암호화 기록 키 eKs(K2)를 복호하여 기록 키 K2를 취득하고, 단계 S565에서, 세션 키 Ks를 적용하여 시드 정보(시드2)를 포함하는 비밀 정보를 복호하여 시드 정보(시드2)를 포함하는 비밀 정보를 취득한다. 도 21에 도시하는 TS 패킷(606)이 복호된 시드 정보(시드2)를 포함한다.
단계 S566은, 복호된 시드 정보(시드2)와, 블록 키 Kb2에 의한 복호 대상 데이터와, 비암호화 데이터를 분리하는 셀렉터 단계이다. 단계 S567(도 17, 도 21 참조)에서는, 단계 S565에서의 세션 키 Ks를 적용한 복호 처리의 결과, 취득된 시드 정보(시드2)와, 단계 S564에서 생성한 기록 키 K2에 기초하여, AES 암호 처리를 실행하여, 블록 키 Kb2를 산출한다.
계속해서, 단계 S568에서, 블록 키 Kb2를 적용하여 사용자 데이터부의 암호화부(블록 키 Kb2에 의해 암호화된 데이터 영역)를 복호하여, 복호 TS 패킷군(607)을 생성한다.
복호 TS 패킷군(607), 및 복호 TS 패킷(606)은, 셀렉터 단계 S569에서 결합되고, 복호 TS 패킷으로서 예를 들면 MPEG2 디코더에 입력되어, 디코드된 후, 재생된다.
이와 같이, 본 구성에서는, 시드 정보(시드1) 사용자 데이터 내의 선두 TS 패킷 내에 저장하고, 블록 키 Kb2를 생성하기 위해 필요하게 되는 시드 정보(시드2)를 사용자 데이터 내의 제2 TS 패킷 내에 저장하고, 시드 정보(시드2)를, 시드 정보(시드1)와, 기록 키 K1에 기초하여 생성하는 블록 키 Kb1에 의해 암호화하여 저장하는 구성으로 하였다.
본 구성에서도, 시드 정보(시드2)를 디스크로부터 직접 판독하는 것, 데이터 전송로로부터의 판독을 행하는 것은 불가능하므로, 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다. 이것은, 정보 처리 장치(500) 중에서, 예를 들면 기록 키 K1의 취득 방법으로부터 블록 키 Kb1의 산출 방법, 그리고 세션 키 Ks의 생성 방법, 및 세션 키 Ks에 의한 암호화 방법을 하나의 LSI 패키지 내의 처리로 하여 은닉성을 높임으로써, 한층 강고한 것으로 된다.
[다른 데이터 구성에서의 적용]
상술한 예에서는, 정보 기록 매체에 저장하는 데이터를 TS 패킷으로 한 예를 설명했지만, 본 발명의 구성은, TS 패킷 이외의 다양한 데이터 구성에서도 적용 가능하다. 즉, 암호화 데이터를 블록 단위로 암호화하기 위한 제2 시드 정보(시드2)를, 다른 시드 정보(시드1)를 적용하여 생성하는 블록 키 Kb1에 의해 암호화하여 정보 기억 매체에 저장하는 구성에 의해, 제2 시드 정보(시드2)의 누설이 방지되어, 시큐러티가 높은 콘텐츠 보호가 실현된다. 이것은, 트랜스포트 스트림 이외의 데이터 구성으로 한 경우도 블록 단위의 암호화 처리를 적용하여, 시드 정보를 이용한 블록 키를 생성하는 구성이면 유효하게 된다.
또한, 인터페이스를 통한 데이터 전송 시에 세션 키에 의한 데이터 암호화를 행하는 구성예에서, 상술한 예에서는, 2개의 시드 정보 중, 한쪽을 세션 키에 의해 암호화하는 처리예에 대해 설명했지만, 세션 키에 의한 데이터 암호화를 수반하는 데이터 전송 처리는, 상술한 구성예에 한하지 않고, 일반적인 암호화 콘텐츠 저장 구성에도 유효하다.
암호화되어 있지 않은 시드 정보를 기록 매체 상에 갖는 구성에서, 정보 처리 장치와, 정보 기록 매체 드라이브 사이에서, 데이터 전송을 실행하는 처리예에 대하여, 도 22를 참조하여 설명한다.
도 22에 도시하는 처리예에서, 정보 기록 매체(670)에는, 암호화 콘텐츠(675)가 기록되고, 암호화 콘텐츠(675)는, 처리 단위마다 설정되는 시드 정보(674)에 의해 생성되는 블록 키 Kb1에 의해 암호화되어 기록되어 있다.
정보 기록 매체 드라이브(660)에서, 암호화 콘텐츠를 저장한 정보 기록 매체(670)의 데이터를 판독하여, PC 등의 정보 처리 장치(650)에서 재생하는 경우의 처리를 설명한다.
정보 기록 매체 드라이브(660)는 자신의 메모리에 저장되어 있는 마스터 키(661)를 판독한다. 또, 마스터 키(661)는, 정보 처리 장치(650)측에 저장되어 있는 경우에는, 정보 처리 장치(650)로부터 정보 기록 매체 드라이브(660)에 송신해도 된다. 마스터 키(661)는, 라이센스를 받은 정보 처리 장치(정보 기록 매체 드라이브를 포함함)에 저장된 비밀 키이고, 복수의 정보 처리 장치에 공통된 키로서 저장된 공통 키이다.
정보 기록 매체 드라이브(660)는, 디스크 ID(Disc ID)(671)를 정보 기록 매체(670)로부터 판독한다. 디스크 ID(Disc ID)(671)는, 디스크 고유 정보로서, 예를 들면 일반 데이터 저장 영역 또는, 리드 인 에리어에 저장된다.
계속해서, 정보 기록 매체 드라이브(660)는, 단계 S651에서, 마스터 키(661)와 디스크 ID(671)를 이용하여, 디스크 고유 키(Disc Unique Key)를 생성한다. 디스크 고유 키(Disc Unique Key)의 구체적인 생성 방법은, 먼저 도 4를 참조하여 설명한 바와 마찬가지의 방법을 적용할 수 있다.
계속해서, 기록 콘텐츠마다의 고유 키인 타이틀 키(Title Key) 1(672)를 정보 기록 매체(670)로부터 판독한다. 디스크 상에는, 어디의 데이터가 어떤 타이틀을 구성하는지의 정보가 저장된 데이터 관리 파일이 있고, 이 파일에 타이틀 키가 저장되어 있다.
계속해서 단계 S652에서, 디스크 고유 키(Disc Unique Key)와 타이틀 키(Title Key) 1(672)로부터, 타이틀 고유 키(Title Unique Key) 1을 생성한다.
또한, 정보 기록 매체 드라이브(660)는, 단계 S652에서 생성한 타이틀 고유 키(Title Unique Key) 1과, 정보 기록 매체(670)로부터 판독한 물리 인덱스(673)에 기초하여, 단계 S653에서, 기록 키(REC 키) K1을 생성한다.
단계 S653에서 실행하는 기록 키(REC 키) K1의 생성 처리는, 먼저 도 5를 참조하여 설명한 바와 같이, 타이틀 고유 키(Title Unique Key) 1과, 정보 기록 매체(670)로부터 판독한 물리 인덱스(673)에 기초한 AES(Advanced Encryption Standard) 암호 처리에 의해 생성된다.
단계 S654의 블록 키 Kb1의 생성 처리에서는, 정보 기록 매체(670)로부터 블록 키 Kb1 생성 정보로서의 시드 정보(674)를 판독하고, 시드 정보(674)와, 단계 S653에서 생성한 기록 키 K1에 기초한 암호 처리를 실행하여 블록 키 Kb1을 생성한다.
단계 S654의 블록 키 Kb1의 생성 처리 이후에 실행하는 처리에 대하여, 도 23을 참조하여 설명한다.
도 23에서, 복호 처리는, 예를 들면 2048 바이트의 처리 단위 내의 사용자 데이터(701)를 단위로 하여 실행된다. 처리 단위마다 제어 데이터(711)가 설정된다. 정보 기록 매체 드라이브(660)는, 제어 데이터 내의 플래그에 기초하여, 암호 처리 단위인 1AU(Aligned Unit)를 추출한다.
처리 단위에는, 18 바이트의 제어 데이터(711)와, 2048 바이트의 암호화 사용자 데이터(701)가 포함된다. 시드 정보(674)가 제어 데이터(711) 내에 저장되어 있다. 암호화 사용자 데이터(701)는, 시드 정보(721)에 기초하여 생성되는 블록 키 Kb1에 의해 암호화된 데이터이다.
도 23에서, 도 22의 처리 단계와 마찬가지의 처리 단계에는, 동일한 처리 단계 번호를 붙인다.
단계 S654(도 22, 도 23)는, 정보 기록 매체의 제어 데이터 내에서 판독한 시드 정보(674)를 AES 암호 처리부에 입력하여, 앞의 단계 S653에서 생성한 기록 키 K1을 적용한 AES 암호 처리를 실행하여 블록 키 Kb1 생성 처리를 실행하는 단계이다.
단계 S655(도 22, 도 23 참조)에서는, 단계 S654에서 생성한 블록 키 Kb1을 적용한 AES 복호 처리를 실행한다. 단계 S655에서는, 블록 키 Kb1을 적용한 암호 처리가 이루어진 사용자 데이터(701)를 대상으로 한 복호 처리가 실행된다. 예를 들면 AES의 CBC(Cipher Block Chaining) 모드를 적용한 처리를 실행한다.
다음의 단계 S663에서의 암호화 처리는, 정보 기록 매체 드라이브(660)와, 정보 처리 장치(650)와의 사이에서 실행하는 상호 인증 처리의 결과로서 쌍방에서 공유하는 세션 키에 기초하여 실행하는 암호 처리이다. 상호 인증 처리는, 정보 기록 매체 드라이브(660)와, 정보 처리 장치(650)가 공유하는 인증 키 Km680, 690에 기초하여 실행된다. 상호 인증 처리의 시퀀스는, 예를 들면 먼저 도 19를 참조하여 설명한 시퀀스에 따라 실행된다.
도 22에 도시하는 단계 S661, S662에서, 상호 인증 처리, 세션 키 Ks 생성이 실행되어, 정보 처리 장치(650)와 정보 기록 매체 드라이브(660)에 의해 세션 키 Ks가 공유된다.
계속해서, 단계 S663(도 22, 도 23 참조)의 암호화 처리가 정보 기록 매체 드라이브(660)에 의해 실행된다.
단계 S663의 암호화 처리는, 단계 S655에서 복호 처리의 결과, 취득된 복호 사용자 데이터를 세션 키 Ks에 의해 암호화하는 처리이다. 예를 들면 AES의 CBC(Cipher Block Chaining) 모드를 적용한 암호화 처리를 실행하여, 암호화 사용자 데이터(702)를 생성한다.
이 암호화 데이터(도 23의 사용자 데이터(702))가 정보 기록 매체 드라이브(660)로부터, 정보 처리 장치(650)로 송신된다. 즉, 데이터 통신로에서, 전송되는 데이터는 세션 키 Ks에 의해 암호화된 데이터로 된다.
정보 처리 장치(650)는, 정보 기록 매체 드라이브(660)로부터, 암호화 사용자 데이터를 수신하면, 단계 S664에서, 수신 암호화 데이터를 복호한다. 즉, 세션 키 Ks를 적용하여 예를 들면 AES의 CBC(Cipher Block Chaining) 모드를 적용한 복호 처리를 실행하여, 사용자 데이터(703)를 취득한다.
이 예에서도, 정보 기록 매체에 저장된 데이터의 재생 처리에서, 디바이스 사이의 전송 데이터를 세션 키에 의해 암호화하여 송수신하는 구성으로 했으므로, 전송로에서 도청 등이 발생한 경우에도, 콘텐츠의 누설은 방지되어, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다. 이것은, 정보 처리 장치(500) 중에서, 예를 들면 기록 키 K1의 취득 방법으로부터 블록 키 Kb1의 산출 방법, 그리고 세션 키 Ks의 생성 방법, 및 세션 키 Ks에 의한 암호화 방법을 하나의 LSI 패키지 내의 처리로 하여 은닉성을 높임으로써, 한층 강고한 것으로 된다.
이상, 특정한 실시예를 참조하면서, 본 발명에 대하여 상세히 설명해 왔다. 그러나, 본 발명의 요지를 일탈하지 않는 범위에서 당업자가 해당 실시예의 수정이나 대용을 할 수 있는 것은 자명하다. 즉, 예시라는 형태로 본 발명을 개시해 온 것이고, 한정적으로 해석되어서는 안된다. 본 발명의 요지를 판단하기 위해서는, 특허 청구의 범위의 란을 참작해야한다.
또, 명세서 중에서 설명한 일련의 처리는 하드웨어, 또는 소프트웨어, 혹은 양자의 복합 구성에 의해 실행하는 것이 가능하다. 소프트웨어에 의한 처리를 실행하는 경우에는, 처리 시퀀스를 기록한 프로그램을, 전용 하드웨어에 내장된 컴퓨터 내의 메모리에 인스톨하여 실행시키거나, 혹은 각종 처리가 실행 가능한 범용 컴퓨터에 프로그램을 인스톨하여 실행시키는 것이 가능하다.
예를 들면, 프로그램은 기록 매체로서의 하드디스크나 ROM(Read Only Memory)에 미리 기록해 둘 수 있다. 혹은, 프로그램은 플렉시블 디스크, CD-ROM(Compact Disc Read Only Memory), MO(Magneto optical) 디스크, DVD(Digital Versatile Disc), 자기 디스크, 반도체 메모리 등의 리무버블 기록 매체에, 일시적 혹은 영속적으로 저장(기록)해 둘 수 있다. 이러한 리무버블 기록 매체는, 소위 패키지 소프트웨어로서 제공할 수 있다.
또, 프로그램은, 상술한 바와 같은 리무버블 기록 매체로부터 컴퓨터에 인스톨하는 것 외에, 다운로드 사이트로부터, 컴퓨터에 무선 전송하거나, LAN(Local Area Network), 인터넷이라는 네트워크를 통하여, 컴퓨터에 유선으로 전송하여, 컴퓨터에서는, 그와 같이 하여 전송되어 오는 프로그램을 수신하여, 내장된 하드디스크 등의 기록 매체에 인스톨할 수 있다.
또, 명세서에 기재된 각종 처리는, 기재에 따라 시계열로 실행될 뿐만 아니라, 처리를 실행하는 장치의 처리 능력 혹은 필요에 따라 병렬적으로 혹은 개별로 실행되어도 된다. 또한, 본 명세서에서 시스템이란, 복수의 장치의 논리적 집합 구성으로서, 각 구성의 장치가 동일 케이싱 내에 있다고는 한하지 않는다.
이상, 설명한 바와 같이, 본 발명의 구성에 의하면, 암호화 콘텐츠의 복호에 적용하는 키(블록 키 Kb2)를 생성하기 위해 필요하게 되는 시드 정보(시드2)를 다른 키(블록 키 Kb1)에 의해 암호화하여 저장하는 구성으로 했으므로, 시드 정보(시드2)를 디스크로부터 직접 판독하는 것은 불가능하므로, 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다.
또한, 본 발명의 구성에 따르면, 정보 기록 매체에 저장된 데이터의 재생 처리에서, 암호화 콘텐츠의 복호에 적용하는 키(블록 키 Kb2) 생성용의 시드 정보(시드2)를 디바이스 사이에서 전송하는 것이 필요하게 되는 구성에서, 블록 키 생성 정보, 구체적으로 설명하면, 시드 정보(시드2) 및 기록 키 K2의 쌍방을 세션 키에 의해 암호화하여 송수신하는 구성으로 했으므로, 전송로로부터의 데이터 누설이 발생한 경우에도, 시드 정보(시드2) 및 기록 키 K2를 취득하는 것은 곤란하게 되어, 시드 정보를 이용하여 생성되는 키 정보의 해석, 암호 알고리즘의 해석의 곤란성이 높아져, 시큐러티 레벨이 높은 콘텐츠 보호가 실현된다.

Claims (22)

  1. 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 정보 처리 장치로서,
    정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드에 기초하여 제2 블록 키 Kb2를 생성하고, 생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 암호 처리 수단을 포함하는 정보 처리 장치.
  2. 제1항에 있어서,
    상기 정보 처리 장치는,
    마스터 키 생성 정보를 저장한 기억 수단을 갖고,
    상기 암호 처리 수단은,
    상기 마스터 키 생성 정보에 기초하여 마스터 키를 생성하고, 해당 생성한 마스터 키와 상기 정보 기록 매체로부터의 판독 정보에 기초하여, 2개의 기록 키 K1, K2를 생성하고, 생성한 제1 기록 키 K1과 상기 제1 시드 정보에 기초한 암호 처리에 의해 상기 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드와 제2 기록 키 K2에 기초한 암호 처리에 의해 상기 제2 블록 키 Kb2를 생성하고, 생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 구성인 정보 처리 장치.
  3. 제2항에 있어서,
    상기 암호 처리 수단은,
    상기 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보인 디스크 ID, 및 상기 정보 기록 매체에 기록된 2개의 타이틀 키에 기초하여 제1 타이틀 고유 키 및 제2 타이틀 고유 키를 생성하고, 또한
    상기 제1 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제1 판독 정보에 기초한 암호 처리에 의해 상기 제1 기록 키 K1을 생성하고,
    상기 제2 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제2 판독 정보에 기초한 암호 처리에 의해 상기 제2 기록 키 K2를 생성하는 구성인 정보 처리 장치.
  4. 제2항에 있어서,
    상기 암호 처리 수단은,
    상기 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보인 디스크 ID, 및 상기 정보 기록 매체에 기록된 하나의 키 시드 정보에 기초하여 제1 타이틀 고유 키 및 제2 타이틀 고유 키를 생성하고, 또한,
    상기 제1 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제1 판독 정보에 기초한 암호 처리에 의해 상기 제1 기록 키 K1을 생성하고,
    상기 제2 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제2 판독 정보에 기초한 암호 처리에 의해 상기 제2 기록 키 K2를 생성하는 구성인 정보 처리 장치.
  5. 정보 기록 매체에 저장된 암호화 데이터의 판독 및 외부 출력을 실행하는 정보 기록 매체 드라이브 장치로서,
    정보 기록 매체에 저장된 암호화 데이터의 출력처 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리부와,
    정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 상기 세션 키 Ks에 기초하여 상기 제2 시드를 포함하는 데이터의 암호화 처리를 실행하여 출력용 암호화 정보를 생성하는 암호 처리 수단을 포함하고,
    상기 세션 키 Ks에 기초하여 암호화된 제2 시드를 포함하는 출력용 암호화 정보를 인터페이스를 통하여 출력하는 구성을 갖는 정보 기록 매체 드라이브 장치.
  6. 제5항에 있어서,
    상기 암호 처리 수단은,
    정보 기록 매체 드라이브 장치가 보유하는 마스터 키 생성 정보에 기초하여 생성한 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보에 기초하여, 2개의 기록 키 K1, K2를 생성하고, 생성한 제1 기록 키 K1과 상기 제1 시드 정보에 기초한 암호 처리에 의해 상기 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드와 제2 기록 키 K2를 포함하는 데이터를 상기 세션 키 Ks에 기초하여 암호화하여 출력용 암호화 정보를 생성하고,
    상기 제2 시드와 제2 기록 키 K2를 포함하는 상기 출력용 암호화 정보를 인터페이스를 통하여 출력하는 구성을 갖는 정보 기록 매체 드라이브 장치.
  7. 데이터 입력 인터페이스를 통하여 입력하는 암호 데이터의 복호 처리를 실행하는 정보 처리 장치로서,
    상기 암호 데이터의 출력 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리부와,
    상기 데이터 입력 인터페이스를 통하여 입력하는 암호화 정보를 상기 세션 키에 기초한 복호 처리에 의해 키 생성 정보로서의 시드 정보 및 기록 키를 취득하고, 상기 시드 정보 및 기록 키에 기초한 암호 처리에 의해 암호 데이터의 복호 키로서의 블록 키를 생성하여, 해당 블록 키에 기초한 암호 데이터의 복호 처리를 실행하는 암호 처리부
    를 갖는 정보 처리 장치.
  8. 정보 기록 매체에 저장된 암호화 데이터의 판독 및 외부 출력을 실행하는 정보 기록 매체 드라이브 장치로서,
    정보 기록 매체에 저장된 암호화 데이터의 출력처 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리부와,
    정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 시드에 기초하여 블록 키를 생성하고, 생성한 블록 키에 기초하여 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하여 복호 데이터를 취득하고, 상기 세션 키 Ks에 기초하여 상기 복호 데이터의 암호화 처리를 실행하여 출력용 암호화 정보를 생성하는 암호 처리 수단을 포함하고,
    상기 세션 키 Ks에 기초하여 암호화된 출력용 암호화 정보를 인터페이스를 통하여 출력하는 구성을 갖는 정보 기록 매체 드라이브 장치.
  9. 암호화 데이터를 저장한 정보 기록 매체로서,
    암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드와,
    상기 제1 시드에 기초하여 생성되는 제1 블록 키 Kb1에 기초하여 암호화된 키 생성 정보로서의 암호화 제2 시드와,
    상기 제2 시드에 기초하여 생성되는 제2 블록 키 Kb1에 기초하여 암호화된 암호화 콘텐츠
    를 저장한 구성을 갖는 정보 기록 매체.
  10. 제9항에 있어서,
    상기 제1 시드는, 상기 암호화 처리 단위마다 설정된 제어 정보 내에 저장되고,
    상기 제2 시드는, 상기 제어 정보 외의 사용자 데이터 영역에 암호화되어 저장된 구성인 정보 기록 매체.
  11. 제9항에 있어서,
    상기 제1 시드는, 사용자 데이터 영역에 비암호화 데이터로서 저장되고,
    상기 제2 시드는, 사용자 데이터 영역에 암호화 데이터로서 저장된 구성인 정보 기록 매체.
  12. 제9항에 있어서,
    상기 암호화 데이터는, 트랜스포트 스트림 패킷으로 구성되고,
    상기 제1 시드는, 복수의 트랜스포트 스트림 패킷에 대응하는 제어 정보 내에 저장되고,
    상기 제2 시드는, 상기 제어 정보 외의 사용자 데이터 영역의 트랜스포트 스트림 패킷 내에 암호화되어 저장된 구성인 정보 기록 매체.
  13. 제9항에 있어서,
    상기 암호화 데이터는, 트랜스포트 스트림 패킷으로 구성되고,
    상기 제1 시드는, 사용자 데이터 영역의 트랜스포트 스트림 패킷 내에 비암호화 데이터로서 저장되고,
    상기 제2 시드는, 사용자 데이터 영역의 트랜스포트 스트림 패킷 내에 암호화되어 저장된 구성인 정보 기록 매체.
  14. 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 정보 처리 방법으로서,
    정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하는 단계와,
    생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드에 기초하여 제2 블록 키 Kb2를 생성하는 단계와,
    생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 단계
    를 갖는 정보 처리 방법.
  15. 제14항에 있어서,
    상기 정보 처리 방법은,
    기억 수단으로부터 판독한 마스터 키 생성 정보에 기초하여 생성한 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보에 기초하여, 2개의 기록 키 K1, K2를 생성하는 단계를 더 갖고,
    생성한 제1 기록 키 K1과 상기 제1 시드 정보에 기초한 암호 처리에 의해 상기 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드와 제2 기록 키 K2에 기초한 암호 처리에 의해 상기 제2 블록 키 Kb2를 생성하고, 생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 정보 처리 방법.
  16. 제15항에 있어서,
    상기 정보 처리 방법은,
    상기 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보인 디스크 ID, 및 상기 정보 기록 매체에 기록된 2개의 타이틀 키에 기초하여 제1 타이틀 고유 키 및 제2 타이틀 고유 키를 생성하고, 또한,
    상기 제1 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제1 판독 정보에 기초한 암호 처리에 의해 상기 제1 기록 키 K1을 생성하고,
    상기 제2 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제2 판독 정보에 기초한 암호 처리에 의해 상기 제2 기록 키 K2를 생성하는 단계를 갖는 정보 처리 방법.
  17. 제15항에 있어서,
    상기 정보 처리 방법은,
    상기 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보인 디스크 ID, 및 상기 정보 기록 매체에 기록된 하나의 키 시드 정보에 기초하여 제1 타이틀 고유 키 및 제2 타이틀 고유 키를 생성하고, 또한,
    상기 제1 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제1 판독 정보에 기초한 암호 처리에 의해 상기 제1 기록 키 K1을 생성하며,
    상기 제2 타이틀 고유 키와, 상기 정보 기록 매체로부터의 제2 판독 정보에 기초한 암호 처리에 의해 상기 제2 기록 키 K2를 생성하는 단계를 갖는 정보 처리 방법.
  18. 정보 기록 매체에 저장된 암호화 데이터의 판독 및 외부 출력을 실행하는 정보 처리 방법으로서,
    정보 기록 매체에 저장된 암호화 데이터의 출력처 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리 단계와,
    정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하는 단계와,
    생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 상기 세션 키 Ks에 기초하여 상기 제2 시드를 포함하는 데이터의 암호화 처리를 실행하여 출력용 암호화 정보를 생성하는 단계와,
    상기 세션 키 Ks에 기초하여 암호화된 제2 시드를 포함하는 출력용 암호화 정보를 인터페이스를 통하여 출력하는 단계
    를 갖는 정보 처리 방법.
  19. 제18항에 있어서,
    상기 정보 처리 방법은,
    정보 기록 매체 드라이브 장치가 보유하는 마스터 키 생성 정보에 기초하여 생성한 마스터 키와, 상기 정보 기록 매체로부터의 판독 정보에 기초하여, 2개의 기록 키 K1, K2를 생성하고, 생성한 제1 기록 키 K1과 상기 제1 시드 정보에 기초한 암호 처리에 의해 상기 제1 블록 키 Kb1을 생성하고, 생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드와 제2 기록 키 K2를 포함하는 데이터를 상기 세션 키 Ks에 기초하여 암호화하여 출력용 암호화 정보를 생성하며,
    상기 제2 시드와 제2 기록 키 K2를 포함하는 상기 출력용 암호화 정보를 인터페이스를 통하여 출력하는 정보 처리 방법.
  20. 데이터 입력 인터페이스를 통하여 입력하는 암호 데이터의 복호 처리를 실행하는 정보 처리 방법으로서,
    상기 암호 데이터의 출력 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리 단계와,
    상기 데이터 입력 인터페이스를 통하여 입력하는 암호화 정보를 상기 세션 키에 기초한 복호 처리에 의해 키 생성 정보로서의 시드 정보 및 기록 키를 취득하고, 상기 시드 정보 및 기록 키에 기초한 암호 처리에 의해 암호 데이터의 복호 키로서의 블록 키를 생성하고, 해당 블록 키에 기초한 암호 데이터의 복호 처리를 실행하는 암호 처리 단계
    를 갖는 정보 처리 방법.
  21. 정보 기록 매체에 저장된 암호화 데이터의 판독 및 외부 출력을 실행하는 정보 처리 방법으로서,
    정보 기록 매체에 저장된 암호화 데이터의 출력처 장치와의 인증 처리를 실행하여 세션 키 Ks를 생성하는 인증 처리 단계와,
    정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 시드에 기초하여 블록 키를 생성하고, 생성한 블록 키에 기초하여 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하여 복호 데이터를 취득하고, 상기 세션 키 Ks에 기초하여 상기 복호 데이터의 암호화 처리를 실행하여 출력용 암호화 정보를 생성하는 암호 처리 단계와,
    상기 세션 키 Ks에 기초하여 암호화된 출력용 암호화 정보를 인터페이스를 통하여 출력하는 단계
    를 갖는 정보 처리 방법.
  22. 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 컴퓨터 프로그램으로서,
    정보 기록 매체에 저장된 암호화 데이터를 구성하는 암호화 처리 단위마다 설정된 키 생성 정보로서의 제1 시드에 기초하여 제1 블록 키 Kb1을 생성하는 단계와,
    생성한 제1 블록 키 Kb1에 기초하여 정보 기록 매체에 저장된 암호화 제2 시드의 복호 처리를 실행하여 제2 시드를 취득하고, 취득한 제2 시드에 기초하여 제2 블록 키 Kb2를 생성하는 단계와,
    생성한 제2 블록 키 Kb2에 기초한 복호 처리에 의해 상기 정보 기록 매체에 저장된 암호화 데이터의 복호 처리를 실행하는 단계
    를 갖는 컴퓨터 프로그램.
KR1020047020071A 2003-04-11 2004-04-05 정보 기록 매체 드라이브 장치 KR20050122174A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003107571 2003-04-11
JPJP-P-2003-00107571 2003-04-11

Publications (1)

Publication Number Publication Date
KR20050122174A true KR20050122174A (ko) 2005-12-28

Family

ID=33295861

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047020071A KR20050122174A (ko) 2003-04-11 2004-04-05 정보 기록 매체 드라이브 장치

Country Status (8)

Country Link
US (1) US20050244001A1 (ko)
EP (1) EP1615368A1 (ko)
JP (1) JP4605011B2 (ko)
KR (1) KR20050122174A (ko)
CN (1) CN1698307A (ko)
RU (1) RU2357366C2 (ko)
TW (1) TWI254547B (ko)
WO (1) WO2004093379A1 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4774734B2 (ja) * 2004-12-14 2011-09-14 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4692003B2 (ja) * 2005-02-10 2011-06-01 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
WO2006103679A2 (en) * 2005-04-01 2006-10-05 Ged-I Ltd. A method for data storage protection and encryption
GB2431254A (en) * 2005-10-11 2007-04-18 Hewlett Packard Development Co Data transfer system
GB2431250A (en) 2005-10-11 2007-04-18 Hewlett Packard Development Co Data transfer system
GB2431252B (en) 2005-10-11 2010-06-09 Hewlett Packard Development Co Data transfer device
GB2431488A (en) * 2005-10-11 2007-04-25 Hewlett Packard Development Co Data transfer device
GB2431249A (en) 2005-10-11 2007-04-18 Hewlett Packard Development Co Removable data storage item and key distribution
GB2435333B (en) 2006-02-01 2010-07-14 Hewlett Packard Development Co Data transfer device
US10073743B2 (en) 2006-07-26 2018-09-11 Hewlett Packard Enterprise Development Lp Data storage arrangement and key distribution
US8656186B2 (en) * 2007-05-01 2014-02-18 International Business Machines Corporation Use of indirect data keys for encrypted tape cartridges
US8494166B2 (en) * 2007-05-01 2013-07-23 International Business Machines Corporation Use of indirect data keys for encrypted tape cartridges
GB2457670B (en) * 2008-02-20 2012-01-04 Hewlett Packard Development Co Data transfer device
US8510552B2 (en) 2010-04-07 2013-08-13 Apple Inc. System and method for file-level data protection
US8412934B2 (en) * 2010-04-07 2013-04-02 Apple Inc. System and method for backing up and restoring files encrypted with file-level content protection
US8788842B2 (en) 2010-04-07 2014-07-22 Apple Inc. System and method for content protection based on a combination of a user PIN and a device specific identifier
JP2012044576A (ja) * 2010-08-23 2012-03-01 Sony Corp 情報処理装置、および情報処理方法、並びにプログラム
US9043613B2 (en) 2013-06-28 2015-05-26 International Business Machines Corporation Multiple volume encryption of storage devices using self encrypting drive (SED)
CN110462735B (zh) * 2017-03-24 2021-09-17 索尼公司 信息处理设备、信息记录介质、信息处理方法和程序
JP6695584B2 (ja) * 2018-03-26 2020-05-20 株式会社aLab プロセッサ及びa/d変換器を備えたデータ記録装置から送信されたデータの改ざんチェック方法及びその方法を実行するためのデータ記録装置
US11570155B2 (en) * 2019-07-25 2023-01-31 Everything Blockchain Technology Corp. Enhanced secure encryption and decryption system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3722584B2 (ja) * 1997-04-09 2005-11-30 富士通株式会社 再生許可方法及び記録媒体
US6459792B2 (en) * 1997-04-23 2002-10-01 Matsushita Electric Industrial Co., Ltd. Block cipher using key data merged with an intermediate block generated from a previous block
JP3925033B2 (ja) * 1999-03-15 2007-06-06 ソニー株式会社 データ処理装置、記憶装置、データ処理システムおよびその方法
US6618789B1 (en) * 1999-04-07 2003-09-09 Sony Corporation Security memory card compatible with secure and non-secure data processing systems
DE60132962T2 (de) * 2000-01-21 2009-02-26 Sony Corp. Datenverarbeitungsvorrichtung und datenverarbeitungsverfahren
JP4457474B2 (ja) * 2000-04-04 2010-04-28 ソニー株式会社 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体
JP4595182B2 (ja) * 2000-09-07 2010-12-08 ソニー株式会社 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体
JP3993384B2 (ja) * 2000-12-26 2007-10-17 株式会社東芝 情報記録媒体、記録/再生装置及び方法
JP2002244552A (ja) * 2001-02-13 2002-08-30 Sony Corp 情報再生装置、情報再生方法、および情報記録媒体、並びにプログラム記憶媒体
JP2002287619A (ja) * 2001-03-23 2002-10-04 Victor Co Of Japan Ltd 記録再生装置
JP2003050745A (ja) * 2001-08-07 2003-02-21 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4442063B2 (ja) * 2001-08-09 2010-03-31 ソニー株式会社 情報記録装置、情報再生装置、および情報記録方法、情報再生方法、並びにコンピュータ・プログラム
JP2003115830A (ja) * 2001-10-03 2003-04-18 Victor Co Of Japan Ltd 情報記録装置及び情報記録再生装置

Also Published As

Publication number Publication date
TWI254547B (en) 2006-05-01
WO2004093379A1 (ja) 2004-10-28
TW200501702A (en) 2005-01-01
CN1698307A (zh) 2005-11-16
JP4605011B2 (ja) 2011-01-05
RU2004136319A (ru) 2005-09-10
US20050244001A1 (en) 2005-11-03
RU2357366C2 (ru) 2009-05-27
EP1615368A1 (en) 2006-01-11
JPWO2004093379A1 (ja) 2006-07-06

Similar Documents

Publication Publication Date Title
JP4605011B2 (ja) 情報記録媒体ドライブ装置
KR101219618B1 (ko) 정보 처리 장치, 정보 기록 매체, 컨텐츠 관리 시스템 및 데이터 처리 방법과 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
US8127148B2 (en) Information recording device, information playback device, information recording method, information playback method, and information recording medium and program providing medium used therewith
US7203968B2 (en) Method and apparatus for selectively executing information recording using a cognizant mode and a non-cognizant mode
AU781884B2 (en) Information recording/reproducing apparatus and method
KR100846255B1 (ko) 암호화 장치 및 방법, 복호 장치 및 방법과 기억 매체
KR100763693B1 (ko) 정보 처리 장치 및 처리 방법
JP4715233B2 (ja) 情報処理装置、および情報記録媒体製造方法、並びにコンピュータ・プログラム
US20030051151A1 (en) Information processing apparatus, information processing method and program
US20060150251A1 (en) Information recording medium, data processing method, and computer program
JP2001351324A (ja) 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体
WO2006025415A1 (ja) データ処理方法、情報記録媒体製造管理システム、記録データ生成装置、および方法、並びにコンピュータ・プログラム
JP4114605B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
US20070223691A1 (en) Information Processing Apparatus, Information Recording Medium, Information Processing Method, and Computer Program
US7433488B2 (en) Information recording medium drive device, information processing apparatus, data replay control system, data replay control method, and computer program
CN100385521C (zh) 用于管理记录介质的复制保护信息的方法
JP2004022104A (ja) 信号処理装置、信号処理方法、及び記憶媒体
JP4114538B2 (ja) 情報処理装置、情報記録媒体ドライブ装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
CN100382156C (zh) 用于管理记录介质的复制保护信息的方法
JP4710910B2 (ja) 情報処理装置、情報記録媒体ドライブ装置、および情報処理方法
JP2004342246A (ja) 情報処理装置、情報記録媒体、コンテンツ管理システム、および方法、並びにコンピュータ・プログラム
JP4774734B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
EP1500103A2 (en) Apparatus and method for rendering user data
JP2007286938A (ja) 情報処理装置および方法、プログラム、並びに記録媒体

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid