KR101222687B1 - 정보 기록 매체 제조 방법, 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터 판독가능한 기록 매체 - Google Patents

정보 기록 매체 제조 방법, 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터 판독가능한 기록 매체 Download PDF

Info

Publication number
KR101222687B1
KR101222687B1 KR1020067005598A KR20067005598A KR101222687B1 KR 101222687 B1 KR101222687 B1 KR 101222687B1 KR 1020067005598 A KR1020067005598 A KR 1020067005598A KR 20067005598 A KR20067005598 A KR 20067005598A KR 101222687 B1 KR101222687 B1 KR 101222687B1
Authority
KR
South Korea
Prior art keywords
content
data
scramble
recording medium
information recording
Prior art date
Application number
KR1020067005598A
Other languages
English (en)
Other versions
KR20070099412A (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 KR20070099412A publication Critical patent/KR20070099412A/ko
Application granted granted Critical
Publication of KR101222687B1 publication Critical patent/KR101222687B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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
    • G11B20/00362Circuits 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 the key being obtained from a media key block [MKB]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption
    • H04N21/23476Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23895Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption
    • H04N21/23897Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption by partially encrypting, e.g. encrypting only the ending portion of a movie
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26613Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42646Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • H04N21/43853Multiplex stream processing, e.g. multiplex stream decrypting involving multiplex stream decryption
    • H04N21/43856Multiplex stream processing, e.g. multiplex stream decrypting involving multiplex stream decryption by partial decryption, e.g. decrypting a multiplex stream that has been partially encrypted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption
    • H04N21/44055Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption by partially decrypting, e.g. decrypting a video stream that has been partially encrypted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6547Transmission by server directed to the client comprising parameters, e.g. for client setup
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/213Read-only discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2525Magneto-optical [MO] discs
    • G11B2220/2529Mini-discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs

Abstract

컨텐츠에 대한 스크램블(scramble) 처리를 개량하여, 컨텐츠의 부정(不正) 이용의 배제(排除)를 가능하게 한 구성을 제공한다. 컨텐츠의 스크램블 처리로서 컨텐츠마다 다른(異) 스크램블 룰(rule)을 적용한다. 예를 들면, 셔플 처리를 적용하는 경우, 여러가지 셔플(shuffle) 형태(態樣; state)를 스크램블 룰로서 규정(規定)한다. 배타 논리합(排他論理和; Exclusive-OR) 처리를 적용하는 경우, 배타 논리합에 적용하는 값을 스크램블 룰로서 규정한다. 또, 로테이션 처리를 행하는 경우에는, 시프트량(量)을 스크램블 룰로서 규정한다. 셔플 처리에서는 32개의 셔플 엘리멘트(element)를 적용하는 경우, 32!의 다른 셔플 형태, 즉 스크램블 룰이 규정 가능해진다. 또, 배타 논리합에 적용하는 값, 로테이션 시프트량도 여러가지 값으로 설정 가능하며, 많은 스크램블 룰의 설정이 가능해진다.

Description

정보 기록 매체 제조 방법, 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터 판독가능한 기록 매체{INFORMATION RECORDING MEDIUM MANUFACTURING METHOD, INFORMATION PROCESSING DEVICE, INFORMATION RECORDING MEDIUM AND INFORMATION PROCESSING METHOD, AND COMPUTER READABLE RECORDING MEDIUM }
본 발명은 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터·프로그램에 관한 것이다. 또, 상세(詳細)하게는, 컨텐츠 이용 관리가 요구되는 여러가지 컨텐츠에 대한 고도(高度)의 스크램블(scramble) 처리에 의해, 부정(不正; unauthorized)한 컨텐츠 이용을 배제하여, 엄격한 컨텐츠 이용 관리를 실현하는 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터·프로그램에 관한 것이다.
음악 등의 오디오 데이터, 영화 등의 화상 데이터, 게임 프로그램, 각종 어플리케이션 프로그램 등, 여러가지 소프트웨어 데이터(이하, 이들을 컨텐츠(Content)라고 부른다)는 기록 미디어, 예를 들면 청색 레이저를 적용한 Blu-ray 디스크, 혹은 DVD(Digital Versatile Disc), MD(Mini Disc), CD(Compact Disc)에 디지털 데이터로서 저장(格納; storage)할 수가 있다. 특히, 청색 레이저를 이용한 Blu-ray 디스크는 고밀도 기록 가능한 디스크이며 대용량의 영상 컨텐츠 등을 고화질 데이터로서 기록할 수가 있다.
이들 여러가지 정보 기록 매체(기록 미디어)에 디지털 컨텐츠가 저장되어, 유저(user)에게 제공된다. 유저는 소유(所有)하는 PC(Personal Computer), 디스크 플레이어 등의 재생 장치에서 컨텐츠의 재생, 이용을 행한다.
음악 데이터, 화상 데이터 등, 많은 컨텐츠는 일반적으로 그 작성자 혹은 판매자에게 반포권(頒布權) 등이 보유되고 있다. 따라서, 이들 컨텐츠의 배포 시에는, 일정한 이용 제한, 즉 정규 유저에 대해서만 컨텐츠의 이용을 허락(許諾)하여, 허가가 없는 복제(複製) 등이 행해지지 않도록 하는 구성을 취하는 것이 일반적으로 되어 있다.
디지털 기록 장치 및 기록 매체에 의하면, 예를 들면 화상이나 음성을 열화(劣化)시키는 일 없이 기록, 재생을 되풀이(繰返; 반복)하는 것이 가능하고, 부정 카피 컨텐츠의 인터넷을 거친 배신(配信; distribution)이나, 컨텐츠를 CD-R 등에 카피한, 소위 해적판 디스크의 유통이나, PC 등의 하드 디스크에 저장한 카피 컨텐츠의 이용이 만연(蔓延)하고 있다고 하는 문제가 발생하고 있다.
DVD, 혹은 근년(近年)에 개발이 진행되고 있는 청색 레이저를 이용한 기록 매체 등의 대용량형 기록 매체는, 1매의 매체에 예를 들면 영화 1개∼수개분(數本分)의 대량의 데이터를 디지털 정보로서 기록하는 것이 가능하다. 이와 같이 영상 정보 등을 디지털 정보로서 기록하는 것이 가능해지면 부정 카피를 방지하여 저작권자의 보호를 도모하는 것이 더욱더 중요한 과제로 되고 있다. 요즈음(昨今)에 는, 이와 같은 디지털 데이터의 부정한 카피를 막기 위해서, 디지털 기록 장치 및 기록 매체에 위법(違法)한 카피를 방지하기 위한 여러가지 기술이 실용화되고 있다.
예를 들면, DVD 플레이어에서는, 컨텐츠 스크램블 시스템(Content Scramble System)이 채용되고 있다. 컨텐츠 스크램블 시스템에서는, 예를 들면 DVD-ROM(Read Only Memory)에 비디오 데이터나 오디오 데이터 등이 암호화되어 기록되고 있는 구성에서, 스크램블을 해제(解除)함으로써 컨텐츠 재생을 가능하게 하는 것이다.
스크램블 해제(descrambling) 처리에는, 라이센스(license)를 받은 DVD 플레이어에게 주어진 열쇠(鍵; key) 등의 특정 데이터를 적용한 처리를 실행하는 것이 필요하게 된다. 라이센스는 불법 카피를 행하지 않는 등의 소정(所定; predetermined)의 동작 규정(規定)에 따르도록 설계된 DVD 플레이어에 대해서 주어진다. 따라서, 라이센스를 받은 DVD 플레이어에서는, 주어진 열쇠 등의 특정 데이터를 이용하여, DVD-ROM에 기록된 데이터의 스크램블 해제를 행하는 것에 의해, DVD-ROM으로부터 화상이나 음성을 재생할 수가 있다.
한편, 라이센스를 받고 있지 않은 DVD 플레이어는 스크램블 처리된 데이터의 스크램블 해제에 적용할 열쇠 등의 특정 데이터를 가지고 있지 않기 때문에, DVD-ROM에 기록된 데이터의 재생을 행할 수가 없다. 이와 같이, 컨텐츠 스크램블 시스템 구성에서는, 라이센스 시에 요구되는 조건을 만족시키고 있지 않은 DVD 플레이어는 디지털 데이터를 기록한 DVD-ROM의 재생을 행할 수 없게 되어, 부정 카피가 방지되도록 되어 있다.
그러나, 이와 같은 컨텐츠 스크램블 시스템은 반드시 완벽한 시스템이라고는 하기 어렵고, 이미 스크램블 해제 수법이 해독되고 해독 방법이 인터넷 등의 통신 수단을 거쳐서 유통되고 있는 것도 많이 존재한다. 이와 같이, 일단 스크램블 수법이 해독되어 버리면, 부정한 스크램블 해제 처리에 의해서 컨텐츠가 부정하게 재생되고 또 복제되는 등, 컨텐츠의 저작권, 이용권의 침해라고 하는 문제가 발생한다.
[발명이 해결하고자 하는 과제]
본 발명은 이와 같은 상황을 감안해서 이루어진 것이며, 저작권 관리 등 이용 관리가 요구되는 여러가지 컨텐츠에 대한 스크램블 처리를 획일적(劃一的)인 처리로 하는 일 없이, 여러가지 다른 형태(態樣; form, state)로의 스크램블 처리 형태를 설정하고, 많은 스크램블 처리 형태로부터 컨텐츠 마다 혹은 관리 유닛 마다 설정된 형태로 스크램블 처리를 실행하는 구성으로 함으로써, 엄격한 컨텐츠 이용 관리를 실현하는 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터·프로그램을 제공하는 것을 목적으로 하는 것이다.
[과제를 해결하기 위한 수단]
본 발명의 제1 측면은,
정보 기록 매체 제조 방법이며,
정보 기록 매체에 기록할 컨텐츠에 적용하는 스크램블 룰(scramble rule)을 취득하는 스크램블 룰 취득 스텝과,
상기 스크램블 룰 취득 스텝에서 취득한 스크램블 룰에 따라서, 컨텐츠에 대한 스크램블 처리를 실행하는 스크램블 처리 스텝과,
상기 스크램블 처리 스텝에서 생성한 스크램블 컨텐츠와, 그 컨텐츠에 대해서 적용한 스크램블 룰을 정보 기록 매체에 기록하는 스텝
을 가지는 것을 특징으로 하는 정보 기록 매체 제조 방법에 있다.
또, 본 발명의 정보 기록 매체 제조 방법의 1실시 형태에서, 상기 스크램블 룰 취득 스텝은 정보 기록 매체에 기록할 컨텐츠가 복수(複數) 있는 경우에서, 기록 컨텐츠마다 또는 관리 유닛마다 개별(個別)의 스크램블 룰을 취득하는 스텝인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체 제조 방법의 1실시 형태에서, 상기 스크램블 처리 스텝은 상기 정보 기록 매체에 기록할 컨텐츠 데이터의 적어도 일부를 치환(置換)하는 처리를 행하는 스텝이며, 상기 스크램블 룰은 그 컨텐츠 데이터가 치환되는 위치를 지시하는 데이터를 포함하는 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체 제조 방법의 1실시 형태에서, 상기 스크램블 처리 스텝에서 실행하는 스크램블 처리는 컨텐츠 구성 데이터로서 설정되는 셔플(shuffle) 엘리멘트(element)의 셔플 처리이며, 상기 스크램블 룰은 상기 셔플 엘리멘트의 셔플 형태를 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체 제조 방법의 1실시 형태에서, 상기 스크램블 처리 스텝에서 실행하는 스크램블 처리는 미리 설정된 설정값 혹은 그 설정값에 의거해서 산출되는 값과 컨텐츠 구성 데이터와의 배타 논리합(排他論理和; Exclusive-OR) 연산 처리이며, 상기 스크램블 룰은 상기 설정값을 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체 제조 방법의 1실시 형태에서, 상기 스크램블 처리 스텝에서 실행하는 스크램블 처리는 컨텐츠 구성 데이터의 로테이션(rotation) 처리이며, 상기 스크램블 룰은 로테이션에 있어서의 시프트량(量)을 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체 제조 방법의 1실시 형태에서, 상기 정보 기록 매체 제조 방법은 상기 스크램블 처리 스텝의 실행 후, 혹은 실행 전에, 정보 기록 매체의 기록 컨텐츠의 암호 처리를 실행하는 암호 처리 스텝을 더 가지는 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체 제조 방법의 1실시 형태에서, 상기 스크램블 처리 스텝에서 실행하는 스크램블 처리는 컨텐츠 구성 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리이며, 상기 암호 처리 스텝에서 실행하는 암호 처리는 상기 셔플 엘리멘트와 동일 사이즈의 데이터를 단위로 해서 실행하는 CBC 모드의 암호 처리인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체 제조 방법의 1실시 형태에서, 상기 스크램블 처리 스텝에서 스크램블 처리를 실행하는 처리 대상(對象) 데이터는,
(1) MPEG 인코드 데이터에 포함되는 I 픽쳐(picture) 슬라이스 부호화(符號化) 데이터의 일부
(2) 시퀀스 헤더(sequence header)의 일부
(3) 트랜스포트 스트림(transport stream) 패킷 내(內)의 데이터 종별(種別) 정보를 기록한 패킷 식별자(packet identifier) 데이터
의 적어도 어느것인가(any one)를 포함하는 데이터로 하는 것을 특징으로 한다.
또, 본 발명의 제2 측면은,
정보 기록 매체에 대한 컨텐츠 기록 처리를 실행하는 정보 처리 장치이며,
정보 기록 매체에 기록할 컨텐츠에 적용하는 스크램블 룰을 취득하고, 취득한 스크램블 룰에 따라서, 컨텐츠에 대한 스크램블 처리를 실행하는 스크램블 처리부와,
상기 스크램블 처리부에서 생성한 스크램블 컨텐츠와 그 컨텐츠에 대해서 적용한 스크램블 룰을 정보 기록 매체에 기록하는 기록 처리부
를 가지는 것을 특징으로 하는 정보 처리 장치에 있다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부는 정보 기록 매체에 기록할 컨텐츠가 복수 있는 경우에서, 기록 컨텐츠 마다 또는 관리 유닛 마다 개별의 스크램블 룰을 취득하고, 취득한 스크램블 룰에 따라서, 각 컨텐츠에 대한 스크램블 처리를 실행하는 구성인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부는 상기 정보 기록 매체에 기록할 컨텐츠 데이터의 적어도 일부를 치환하는 처리를 행하는 구성이며, 상기 스크램블 룰은 그 컨텐츠 데이터가 치환되는 위치를 지시하는 데이터를 포함하는 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부에서 실행하는 스크램블 처리는 컨텐츠 구성 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리이며, 상기 스크램블 룰은 상기 셔플 엘리멘트의 셔플 형태를 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부에서 실행하는 스크램블 처리는 미리 설정된 설정값 혹은 그 설정값에 의거해서 산출되는 값과 컨텐츠 구성 데이터와의 배타 논리합 연산 처리이며, 상기 스크램블 룰은, 상기 설정값을 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부에서 실행하는 스크램블 처리는 컨텐츠 구성 데이터의 로테이션 처리이며, 상기 스크램블 룰은 로테이션에서의 시프트량을 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 정보 처리 장치는 정보 기록 매체의 기록 컨텐츠의 암호 처리를 실행하는 암호 처리부를 더 가지는 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부에서 실행하는 스크램블 처리는 컨텐츠 구성 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리이며, 상기 암호 처리부에서 실행하는 암호 처리는 상기 셔플 엘리멘트와 동일 사이즈의 데이터를 단위로 해서 실행하는 CBC 모드의 암호 처리인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부는 스크램블 처리 대상 데이터로서,
(1) MPEG 인코드 데이터에 포함되는 I 픽쳐 슬라이스 부호화 데이터의 일부
(2) 시퀀스 헤더의 일부
(3) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 기록한 패킷 식별자 데이터
의 적어도 어느것인가를 포함하는 데이터로 하는 것을 특징으로 한다.
또, 본 발명의 제3 측면은
정보 기록 매체에 기록된 컨텐츠의 재생 처리를 실행하는 정보 처리 장치이며,
정보 기록 매체에 기록된 컨텐츠의 스크램블 해제 처리를 실행하는 스크램블 처리부를 가지고,
상기 스크램블 처리부는
상기 정보 기록 매체에 저장된 컨텐츠에 대응하는 스크램블 처리 정보로서의 스크램블 룰의 해석을 실행하고, 해석의 결과, 취득한 컨텐츠 고유(固有)의 스크램블 룰에 대응하는 스크램블 해제 처리를 실행하는 구성인 것을 특징으로 하는 정보 처리 장치에 있다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부는 정보 기록 매체의 기록 컨텐츠가 복수 있는 경우에서, 기록 컨텐츠마다 또는 관리 유닛마다 개별의 스크램블 룰을 취득하고, 취득한 스크램블 룰에 따라서, 각 컨텐츠에 대한 스크램블 해제 처리를 실행하는 구성인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부는 상기 정보 기록 매체에 기록할 컨텐츠 데이터의 적어도 일부를 치환하는 처리를 행하는 구성이며, 상기 스크램블 룰의 해석의 결과, 취득한 그 컨텐츠 데이터가 치환되는 위치를 지시하는 위치 데이터를 취득하고, 그 위치 데이터에 의거해서, 스크램블 해제 처리를 실행하는 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부에서 실행하는 스크램블 해제 처리는 컨텐츠 구성 데이터로서 설정된 셔플 엘리멘트의 셔플 상태를 복원(復元)하는 처리이며, 상기 스크램블 룰은 상기 셔플 엘리멘트의 셔플 형태를 기술한 데이터이며, 상기 스크램블 처리부는 상기 스크램블 룰에 의거해서, 셔플 엘리멘트의 셔플 상태 복원 처리를 실행하는 구성인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부에서 실행하는 스크램블 해제 처리는 미리 설정된 설정값 혹은 그 설정값에 의거해서 산출되는 값과 컨텐츠 구성 데이터와의 배타 논리합 연산 처리이며, 상기 스크램블 룰은 상기 설정값을 기술한 데이터이며, 상기 스크램블 처리부는 상기 스크램블 룰에 의거해서, 상기 설정값과 컨텐츠 구성 데이터와의 배타 논리합 연산 처리를 실행하는 구성인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부에서 실행하는 스크램블 해제 처리는 컨텐츠 구성 데이터의 로테이션 처리이며, 상기 스크램블 룰은 로테이션에 있어서의 시프트량을 기술한 데이터이며, 상기 스크램블 처리부는 상기 스크램블 룰에 의거해서, 상기 시프트량에 의거하는 로테이션 복원 처리를 실행하는 구성인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 정보 처리 장치는 정보 기록 매체의 기록 컨텐츠의 복호(復號) 처리를 실행하는 암호 처리부를 더 가지는 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부에서 실행하는 스크램블 처리는 컨텐츠 구성 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리이며, 상기 암호 처리부에서 실행하는 복호 처리는 상기 셔플 엘리멘트와 동일 사이즈의 데이터를 단위로 해서 실행하는 CBC 모드의 복호 처리인 것을 특징으로 한다.
또, 본 발명의 정보 처리 장치의 1실시 형태에서, 상기 스크램블 처리부는 스크램블 해제 처리 대상 데이터로서, 
(1) MPEG 인코드 데이터에 포함되는 I 픽쳐 슬라이스 부호화 데이터의 일부
(2) 시퀀스 헤더의 일부
(3) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 기록한 패킷 식별자 데이터
의 적어도 어느것인가를 포함하는 데이터를 취득해서 처리를 실행하는 구성인 것을 특징으로 한다.
또, 본 발명의 제4 측면은
정보 기록 매체이며,
기록 컨텐츠 마다 또는 관리 유닛마다 설정된 스크램블 룰에 따라서, 스크램블 처리가 실행된 스크램블 컨텐츠와,
상기 스크램블 컨텐츠에 대해서 적용한 스크램블 룰
을 기록 데이터로서 저장한 것을 특징으로 하는 정보 기록 매체에 있다.
또, 본 발명의 정보 기록 매체의 1실시 형태에서, 상기 스크램블 처리는 상기 컨텐츠의 적어도 일부 데이터를 치환하는 처리이며, 상기 스크램블 룰은 상기 컨텐츠 데이터의 치환할 일부 데이터의 위치를 나타낸 데이터를 기록한 룰인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체의 1실시 형태에서, 상기 스크램블 컨텐츠는 컨텐츠 구성 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리에 의해서 생성된 스크램블 컨텐츠이며, 상기 스크램블 룰은 상기 셔플 엘리멘트의 셔플 형태를 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체의 1실시 형태에서, 상기 스크램블 컨텐츠는 미리 설정된 설정값 혹은 그 설정값에 의거해서 산출되는 값과 컨텐츠 구성 데이터와의 배타 논리합 연산 처리에 의해서 생성된 스크램블 컨텐츠이며, 상기 스크램블 룰은 상기 설정값을 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체의 1실시 형태에서, 상기 스크램블 컨텐츠는 컨텐츠 구성 데이터의 로테이션 처리에 의해서 생성된 스크램블 컨텐츠이며, 상기 스크램블 룰은 로테이션에서의 시프트량을 기술한 데이터인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체의 1실시 형태에서, 상기 스크램블 컨텐츠는 컨텐츠 구성 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리에 의해서 생성된 스크램블 컨텐츠이며, 상기 정보 기록 매체는 상기 셔플 엘리멘트와 동일 사이즈의 데이터를 단위로 해서 실행하는 CBC 모드의 암호 처리에 의해서 암호화된 컨텐츠를 기록한 구성인 것을 특징으로 한다.
또, 본 발명의 정보 기록 매체의 1실시 형태에서, 상기 스크램블 컨텐츠는 적어도
(1) MPEG 인코드 데이터에 포함되는 I 픽쳐 슬라이스 부호화 데이터의 일부
(2) 시퀀스 헤더의 일부
(3) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 기록한 패킷 식별자 데이터
의 적어도 어느것인가를 스크램블 처리 데이터로서 포함하는 구성인 것을 특징으로 한다.
또, 본 발명의 제5 측면은
정보 기록 매체에 대한 컨텐츠 기록 처리를 실행하는 정보 처리 방법이며,
정보 기록 매체에 기록할 컨텐츠에 적용하는 스크램블 룰을 취득하는 스크램블 룰 취득 스텝과,
상기 스크램블 룰 취득 스텝에서 취득한 스크램블 룰에 따라서, 컨텐츠에 대한 스크램블 처리를 실행하는 스크램블 처리 스텝과,
상기 스크램블 처리 스텝에서 생성한 스크램블 컨텐츠와, 그 컨텐츠에 대해서 적용한 스크램블 룰을 정보 기록 매체에 기록하는 스텝
을 가지는 것을 특징으로 하는 정보 처리 방법에 있다.
또, 본 발명의 제6 측면은
정보 기록 매체에 기록된 컨텐츠의 재생 처리를 실행하는 정보 처리 방법이며,
정보 기록 매체에 기록된 컨텐츠의 스크램블 해제 처리를 실행하는 스크램블 처리 스텝을 가지고,
상기 스크램블 처리 스텝은
상기 정보 기록 매체에 저장된 컨텐츠에 대응하는 스크램블 처리 정보로서의 스크램블 룰의 해석을 실행하는 스크램블 룰 해석 스텝과,
상기 스크램블 룰 해석 스텝의 해석 결과, 취득한 컨텐츠 고유의 스크램블 룰에 대응하는 스크램블 해제 처리를 실행하는 스크램블 해제 스텝
을 가지는 것을 특징으로 하는 정보 처리 방법에 있다.
또, 본 발명의 제7 측면은
정보 기록 매체에 대한 컨텐츠 기록 처리를 컴퓨터 상(上)에서 실행시키는 컴퓨터·프로그램이며,
정보 기록 매체에 기록할 컨텐츠에 적용하는 스크램블 룰을 취득하는 스크램블 룰 취득 스텝과,
상기 스크램블 룰 취득 스텝에서 취득한 스크램블 룰에 따라서, 컨텐츠에 대한 스크램블 처리를 실행하는 스크램블 처리 스텝과,
상기 스크램블 처리 스텝에서 생성한 스크램블 컨텐츠와, 그 컨텐츠에 대해서 적용한 스크램블 룰을 정보 기록 매체에 기록하는 스텝
을 가지는 것을 특징으로 하는 컴퓨터·프로그램에 있다.
또, 본 발명의 제8 측면은
정보 기록 매체에 기록된 컨텐츠의 재생 처리를 컴퓨터 상에서 실행시키는 컴퓨터·프로그램이며,
정보 기록 매체에 기록된 컨텐츠의 스크램블 해제 처리를 실행하는 스크램블 처리 스텝을 가지고,
상기 스크램블 처리 스텝은
상기 정보 기록 매체에 저장된 컨텐츠에 대응하는 스크램블 처리 정보로서의 스크램블 룰의 해석을 실행하는 스크램블 룰 해석 스텝과,
상기 스크램블 룰 해석 스텝의 해석 결과, 취득한 컨텐츠 고유의 스크램블 룰에 대응하는 스크램블 해제 처리를 실행하는 스크램블 해제 스텝
을 가지는 것을 특징으로 하는 컴퓨터·프로그램에 있다.
또한, 본 발명의 컴퓨터·프로그램은, 예를 들면 여러가지 프로그램 코드를 실행 가능한 컴퓨터 시스템에 대해서, 컴퓨터 판독가능(可讀; readable)한 형식으로 제공하는 기억 매체, 통신 매체, 예를 들면 CD나 FD, MO 등의 기록 매체, 혹은 네트워크 등의 통신 매체에 의해서 제공 가능한 컴퓨터·프로그램이다. 이와 같은 프로그램을 컴퓨터 판독가능한 형식으로 제공하는 것에 의해, 컴퓨터 시스템 상에서 프로그램에 따른 처리가 실현된다.
본 발명의 또 다른 목적, 특징이나 이점은 후술하는 본 발명의 실시예나 첨부하는 도면에 의거하는 보다 상세한 설명에 의해서 명확하게 될 것이다. 또한, 본 명세서에서 시스템이라 함은, 복수의 장치의 논리적 집합 구성이며, 각 구성의 장치가 동일 하우징(筐體; housing, unit) 내에 있는 것에는 한정되지 않는다.
[발명의 효과]
본 발명의 구성에 의하면, 저작권 관리 등 이용 관리가 요구되는 여러가지 컨텐츠에 대한 스크램블 처리를 획일적인 처리로 하는 일 없이, 여러가지 다른 형태로의 스크램블 처리 형태를 설정해서, 많은 스크램블 처리 형태로부터 컨텐츠마다 혹은 관리 유닛마다 선택된 형태로 스크램블 처리를 실행하는 구성으로 했으므로, 만에 하나(만일), 어떤(given) 컨텐츠에 대응하는 스크램블이 부정하게 해석되어, 컨텐츠가 누설(漏洩)되어 버린 경우에서도, 다른 스크램블 형태로 스크램블 처리가 행해진 컨텐츠는 스크램블 해제가 불가능하여, 컨텐츠의 누설을 최소한에 그치게 할 수가 있다.
본 발명의 구성에 의하면, 스크램블 처리로서 예를 들면, 셔플 처리, 배타 논리합 처리, 로테이션 처리를 실행하고, 셔플 처리에서는 여러가지 셔플 형태를 스크램블 룰로서 규정하고, 배타 논리합 처리에서는 배타 논리합에 적용하는 값을 스크램블 룰로서 규정하고, 로테이션 처리에서는 로테이션 시프트량을 스크램블 룰로서 규정할 수가 있다. 예를 들면, 셔플 처리에서 32개의 셔플 엘리멘트를 적용하는 경우, 32!의 다른 셔플 형태, 즉 스크램블 룰이 규정 가능하게 된다. 또, 배타 논리합 처리에서는 배타 논리합에 적용하는 값, 로테이션 처리에서는 시프트량을 여러가지 값으로 설정 가능하여, 많은 스크램블 룰의 설정이 가능해지고, 각 컨텐츠에 대해서 이들 많은 스크램블 룰로부터 선택한 룰에 의거하는 스크램블을 행하는 구성이 실현되며, 특정(特定; specified) 스크램블 룰의 누설에 의거해서, 많은 컨텐츠가 누설 되는 사태를 방지할 수가 있다.
도 1은 정보 기록 매체의 저장 데이터 구성과 재생 처리를 실행하는 정보 처리 장치의 구성 및 처리에 대해서 설명하는 도면,
도 2는 정보 기록 매체의 저장 컨텐츠에 대해서 설정하는 컨텐츠 관리 유닛의 설정예에 대해서 설명하는 도면,
도 3은 컨텐츠 관리 유닛 구성 및 스크램블 룰의 대응예를 도시하는 도면,
도 4는 컨텐츠 재생을 실행하는 정보 처리 장치에서의 컨텐츠 재생 시퀀스에 대해서 설명하는 도면,
도 5는 정보 처리 장치에서의 컨텐츠 재생에 적용하는 열쇠 생성 등의 암호 처리의 상세에 대해서 설명하는 도면,
도 6은 컨텐츠 재생을 실행하는 정보 처리 장치에서의 컨텐츠 재생 시퀀스를 설명하는 플로차트를 도시하는 도면,
도 7은 라이센스 엔티티(entity), 어서링(authoring) 퍼실러티(facility), 암호화 퍼실러티를 실행하는 처리에 대해서 설명하는 도면,
도 8은 스크램블 처리로서 셔플 처리를 실행한 경우의 컨텐츠 데이터의 변천(變遷)에 대해서 설명하는 도면,
도 9는 스크램블 처리로서 셔플 처리를 실행한 경우의 스크램블 룰에 대해서 설명하는 도면,
도 10은 컨텐츠 암호화를 6KB 얼라인드(Aligned) 유닛을 단위로 해서 실행한 경우의 암호 처리의 상세에 대해서 설명하는 도면,
도 11은 AES_ECBC 모드를 적용한 암호 처리의 상세에 대해서 설명하는 도면,
도 12는 컨텐츠 암호화를 2KB 유저 섹터 데이터를 단위로 해서 실행한 경우의 암호 처리의 상세에 대해서 설명하는 도면,
도 13은 컨텐츠 암호화를 실행할 때에 적용하는 보조 파일에 대해서 설명하는 도면,
도 14는 컨텐츠 암호화를 실행할 때에 적용하는 보조 파일의 신택스(syntax)를 도시하는 도면,
도 15는 암호화 퍼실러티에서 스크램블 처리를 실행하는 경우의 라이센스 엔티티, 어서링 퍼실러티, 암호화 퍼실러티를 실행하는 처리에 대해서 설명하는 도면,
도 16은 암호화 퍼실러티에서 스크램블 처리를 실행하는 경우, 스크램블 처리로서 셔플 처리를 실행한 경우의 컨텐츠 데이터의 변천에 대해서 설명하는 도면,
도 17은 MPEG2 트랜스포트 스트림 데이터의 구성에 대해서 설명하는 도면,
도 18은 MPEG2 트랜스포트 스트림 데이터를 구성하는 소스 패킷 및 헤더의 신택스를 도시하는 도면,
도 19는 MPEG2 트랜스포트 스트림 데이터를 구성하는 트랜스포트 패킷의 신택스를 도시하는 도면,
도 20은 스크램블 처리로서 배타 논리합(EXOR) 처리를 실행한 경우의 컨텐츠 데이터의 변천에 대해서 설명하는 도면,
도 21은 스크램블 처리로서 배타 논리합(EXOR) 처리를 실행한 경우의 스크램블 룰에 대해서 설명하는 도면,
도 22는 MPEG 데이터를 구성하는 예를 들면 I 픽쳐의 위치를 취득하기 위해서 적용 가능한 EP 맵(map)에 대해서 설명하는 도면,
도 23은 MPEG 데이터를 구성하는 예를 들면 I 픽쳐의 위치를 취득하기 위해서 적용 가능한 EP 맵에 대해서 설명하는 도면,
도 24는 스크램블 처리로서의 배타 논리합(EXOR) 처리를 I 픽쳐의 슬라이스에 대해서 실행하는 경우의 처리예에 대해서 설명하는 도면,
도 25는 스크램블 처리로서의 배타 논리합(EXOR) 처리를 시퀀스 헤더에 대해서 실행하는 경우의 처리예에 대해서 설명하는 도면,
도 26은 암호화 퍼실러티에서 스크램블 처리를 실행하는 경우에서, 스크램블 처리로서 배타 논리합(EXOR) 처리를 실행한 경우의 컨텐츠 데이터의 변천에 대해서 설명하는 도면,
도 27은 스크램블 처리로서 로테이션 처리를 실행한 경우의 컨텐츠 데이터의 변천에 대해서 설명하는 도면,
도 28은 스크램블 처리로서 로테이션 처리를 실행한 경우의 스크램블 룰에 대해서 설명하는 도면,
도 29는 암호화 퍼실러티에서 스크램블 처리를 실행하는 경우에서, 스크램블 처리로서 로테이션 처리를 실행한 경우의 컨텐츠 데이터의 변천에 대해서 설명하는 도면,
도 30은 정보 기록 매체에 대한 정보의 기록 또는 재생 처리를 실행하는 정보 처리 장치의 구성예에 대해서 설명하는 도면.
이하, 도면을 참조하면서 본 발명의 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터·프로그램의 상세에 대해서 설명한다. 또한, 설명은 이하의 기재 항목에 따라서 행한다.
1. 정보 기록 매체의 저장 데이터 및 재생 처리
2. 정보 기록 매체에 대한 컨텐츠 기록 처리의 상세
(2-1) 셔플 처리
(2-2) 배타 논리합 연산(EXOR) 처리
(2-3) 로테이션 처리
3. 정보 처리 장치의 구성예
[1. 정보 기록 매체의 저장 데이터 및 재생 처리]
우선, 정보 기록 매체의 저장 데이터 및 정보 처리 장치(재생 장치)에 의한 컨텐츠 재생 처리에 대해서 설명한다. 도 1에, 본 발명의 처리를 적용 가능한 컨텐츠가 저장된 정보 기록 매체(100) 및 정보 처리 장치(재생 장치)(150)의 구성을 도시한다. 여기에서는, 컨텐츠 저장필(格納畢; stored) 디스크로서의 ROM 디스크의 정보 저장 예를 도시한다. 정보 처리 장치(재생 장치)(150)는, 예를 들면 PC, 혹은 재생 전용 장치 등, 여러가지 정보 처리 장치이며, 정보 기록 매체(100)로부터의 데이터 판독(讀取; reading) 처리를 실행하는 드라이브(120)를 가진다.
정보 기록 매체(100)로서의 ROM 디스크는, 예를 들면 Blu-ray 디스크, DVD 등의 정보 기록 매체이며, 정당(正當; legal)한 컨텐츠 저작권, 혹은 반포권을 가지는 소위 컨텐츠 권리자의 허가 하(下)에 디스크 제조 공장에서 제조된 정당한 컨텐츠를 저장한 정보 기록 매체이다. 또한, 이하의 실시예에서는, 정보 기록 매체의 예로서 디스크형(型)의 매체를 예로서 설명하겠지만, 본 발명은 여러가지 형태의 정보 기록 매체를 이용한 구성에서 적용 가능하다.
도 1에 도시하는 바와 같이, 정보 기록 매체(100)에는, 스크램블 처리 및 암호화 처리가 행해진 암호화 컨텐츠(111)와, 브로드캐스트 인크립션(broadcast encryption) 방식의 한 형태로서 알려진 나무(木: tree) 구조의 열쇠 배신 방식에 의거해서 생성되는 암호 열쇠 블록으로서의 MKB(Media Key Block)(112), 정보 기록 매체 개별, 혹은 소정 매수(枚數) 단위의 정보 기록 매체 마다의 식별 정보로서 설정되는 볼륨 ID(113), 컨텐츠의 카피 재생 제어 정보로서의 CCI(Copy Control Information) 등을 포함하는 사용 허락 정보(114), 컨텐츠 복호 처리에 적용하는 타이틀 열쇠를 생성하기 위해서 필요로 하는 정보로서의 기록 시드(REC SEED) 등으로 구성되는 타이틀 열쇠 데이터(115), 또, 정보 기록 매체(100)에 저장된 컨텐츠 마다 혹은 관리 유닛 마다 어떠한 형태의 스크램블 처리가 행해지고 있는지의 정보를 저장한 스크램블 룰(116)이 저장되어 있다.
이하, 이들 각종 정보의 개요에 대해서 설명한다.
(1) 암호화 컨텐츠(111)
정보 기록 매체(100)에는, 여러가지 컨텐츠가 저장된다. 예를 들면 고정세(高精細; high resoultion) 동화상(動畵像, 動畵; moving image) 데이터인 HD(High Definition) 무비(movie) 컨텐츠 등의 동화상 컨텐츠의 AV(Audio Visual) 스트림이나 특정 규격으로 규정된 형식의 게임 프로그램, 화상 파일, 음성 데이터, 텍스트 데이터 등으로 이루어지는 컨텐츠이다. 이들 컨텐츠는 특정 AV 포맷 규격 데이터이며, 특정 AV 데이터 포맷에 따라서 저장된다. 구체적으로는, 예를 들면 Blu-ray 디스크 ROM 규격 데이터로서, Blu-ray 디스크 ROM 규격 포맷에 따라서 저장된다. 이들을 메인 컨텐츠라고 부른다.
또, 예를 들면 서비스 데이터로서의 게임 프로그램이나, 화상 파일, 음성 데이터, 텍스트 데이터 등이 서브 컨텐츠로서 저장되는 경우도 있다. 서브 컨텐츠는 특정 AV 데이터 포맷에 따르지 않는 데이터 포맷을 가지는 데이터이다. 즉, Blu-ray 디스크 ROM 규격 이외의 데이터로서 Blu-ray 디스크 ROM 규격 포맷에 따르지 않는 임의(任意; any)의 포맷으로 저장 가능하다. 이들을 서브 컨텐츠라고 부른다.
메인 컨텐츠, 서브 컨텐츠와 함께, 컨텐츠의 종류로서는, 음악 데이터, 동화상, 정지 화상(靜止畵; still image) 등의 화상 데이터, 게임 프로그램, WEB 컨텐츠 등, 여러가지 컨텐츠가 포함되며, 이들 컨텐츠에는 정보 기록 매체(100)로부터의 데이터에 의해서만 이용 가능한 컨텐츠 정보와, 정보 기록 매체(100)로부터의 데이터와, 네트워크 접속된 서버로부터 제공되는 데이터를 아울러 이용 가능하게 되는 컨텐츠 정보 등, 여러가지 형태의 정보가 포함된다. 정보 기록 매체에 저장되는 컨텐츠는 구분(區分: section) 컨텐츠 마다의 다른(異) 이용 제어를 실현하기 위해서, 구분 컨텐츠마다 다른 열쇠(타이틀 열쇠)가 할당(割當: assign)되고 암호화되어 저장된다. 1개의 타이틀 열쇠를 할당하는 단위를 컨텐츠 관리 유닛(CPS 유닛)이라고 부른다.
(2) MKB
MKB(Media Key Block)(112)는 브로드캐스트 인크립션 방식의 한 형태로서 알려진 나무 구조의 열쇠 배신 방식에 의거해서 생성되는 암호 열쇠 블록이다. MKB(111)는 유효한 라이센스를 가지는 유저의 정보 처리 장치에 저장된 디바이스 열쇠에 의거하는 처리(복호)에 의해서만, 컨텐츠의 복호에 필요한 키(key)인 미디어 열쇠(Km)를 취득하는 것을 가능하게 한 열쇠 정보 블록이다. 이것은 소위 계층형(階層型: hierarchy) 나무 구조에 따른 정보 배신 방식에 의해서, 유저 디바이스(정보 처리 장치)가 유효한 라이센스를 가지는 경우에만, 열쇠 취득을 가능하게 한 것이며, 무효화(리보크(revoking) 처리)된 유저 디바이스의 열쇠(미디어 열쇠) 취득을 저지(阻止) 가능하게 한 것이다. 관리 센터는 MKB에 저장하는 열쇠 정보의 변경에 의해, 특정의 유저 디바이스에 저장된 디바이스 열쇠로는 복호할 수 없는, 즉 컨텐츠 복호에 필요한 미디어 열쇠를 취득할 수 없는 구성을 가지는 MKB를 생성할 수가 있다. 따라서, 임의 타이밍에서 부정 디바이스를 배제(리보크)해서, 유효한 라이센스를 가지는 디바이스에 대해서만 복호 가능한 암호화 컨텐츠를 제공하는 것이 가능해진다. 컨텐츠의 복호 처리에 대해서는 후술한다.
(3) 볼륨 ID
볼륨 ID는 정보 기록 매체 개별, 혹은 소정 매수 단위의 정보 기록 매체 마다의 식별 정보로서 설정되는 ID이다. 이 볼륨 ID는 컨텐츠의 복호에 적용하는 타이틀 열쇠의 생성 정보로서 이용된다. 이들 처리에 대해서는 후술한다.
(4) 사용 허락 정보
사용 허락 정보에는, 예를 들면 카피 재생 제어 정보(CCI)가 포함된다. 즉, 정보 기록 매체(100)에 저장된 암호화 컨텐츠(111)에 대응하는 이용 제어를 위한 카피 제한 정보나, 재생 제한 정보이다. 이 카피 재생 제어 정보(CCI)는 컨텐츠 관리 유닛으로서 설정되는 CPS 유닛 개별 정보로서 설정되는 경우나, 복수의 CPS 유닛에 대응해서 설정되는 경우 등, 여러가지 설정이 가능하다. 이 정보의 상세에 대해서는 후단(後段)에서 설명한다.
(5) 타이틀 열쇠 데이터
전술(前述)한 바와 같이 각 컨텐츠 또는 복수 컨텐츠의 집합은 컨텐츠의 이용 관리를 위해서, 각각 개별의 암호 열쇠(타이틀 열쇠)를 적용한 암호화가 이루어져서 정보 기록 매체(100)에 저장된다. 즉, 컨텐츠를 구성하는 AV(Audio Visual) 스트림, 음악 데이터, 동화상, 정지 화상 등의 화상 데이터, 게임 프로그램, WEB 컨텐츠 등은 컨텐츠 이용의 관리 단위로서의 유닛으로 구분되고, 구분된 유닛마다 다른 타이틀 열쇠를 생성해서, 복호 처리를 행하는 것이 필요하게 된다. 이 타이틀 열쇠를 생성하기 위한 정보가 타이틀 열쇠 데이터이며, 예를 들면 컨텐츠의 일부 데이터 등에 의해서 구성되는 기록 시드가 이용된다.
타이틀 열쇠 데이터(115)를 적용한 소정의 암호 열쇠 생성 시퀀스에 따라서, 각 유닛 대응의 타이틀 열쇠가 생성되고, 컨텐츠의 복호가 실행된다.
(6) 스크램블 룰
전술한 바와 같이, 정보 기록 매체(100)에 저장되는 컨텐츠는 암호화 처리가 행해지고, 또 스크램블 처리가 이루어지고 있다. 스크램블 처리는 정보 기록 매체(100)에 저장되는 컨텐츠마다, 혹은 컨텐츠 관리 유닛(CPS 유닛) 마다 다른 형태로 실행되고 있다. 따라서, 컨텐츠 재생을 행할 때에는, 재생 대상의 컨텐츠에 행해지고 있는 스크램블 처리 정보를 취득하여, 실행되고 있는 스크램블 처리에 대응하는 스크램블 해제 처리를 행하는 것이 필요하게 된다. 스크램블 룰(116)은 정보 기록 매체(100)에 저장된 컨텐츠 마다, 혹은 컨텐츠 관리 유닛(CPS 유닛) 마다의 스크램블 형태의 정보를 기록한 데이터이다. 이 스크램블 룰은 라이센스를 가지는 정보 처리 장치에서만 해독(解讀: decode) 가능한 데이터로서 정보 기록 매체에 기록된다. 예를 들면 시큐어(secure) 코드, 예를 들면 Java 시큐어 코드를 적용한 데이터로서 기록되고, 재생 장치에서 설정되는 Java 버추얼(virtual) 머신 내에서의 시큐어 코드 해독 처리에 의해서만 해독된다.
도 1에는, 정보 기록 매체(100)에 저장된 컨텐츠의 재생 처리를 실행하는 정보 처리 장치(150)의 구성의 개략을 도시하고 있다. 정보 처리 장치는 정보 기록 매체의 저장 데이터의 판독 처리를 실행하는 드라이브(120)를 가진다. 드라이브(120)에 의해서 판독된 데이터는 암호화 컨텐츠의 복호 처리 및 디코드(예를 들면, MPEG 디코드) 처리를 실행하는 재생 처리 실행 LSI(151)에 입력된다.
재생 처리 실행 LSI(151)는 암호화 컨텐츠의 복호 처리를 실행하는 복호 처리부(152)와, 디코드(예를 들면, MPEG 디코드) 처리를 실행하는 디코드 처리부(153)를 가진다. 복호 처리부(152)에서는, 메모리(155)에 저장된 디바이스 열쇠와, 정보 기록 매체(120)로부터의 판독 데이터에 의거해서 타이틀 열쇠를 생성하고, 암호화 컨텐츠(111)의 복호 처리를 실행한다.
복호된 컨텐츠는 스크램블 처리가 실행되고 있다. 이 스크램블 해제를 실행하는 것이, 스크램블 해제 실행부(154)이다. 복호 컨텐츠는 스크램블 해제 실행부(154)에서 스크램블 룰(116)에 의거해서 결정되는 스크램블 해제 처리를 실행한 후, 스크램블 해제 데이터를 재차 재생 처리 실행 LSI(151)에 입력하고, 디코드 처리부(153)에서 디코드 처리가 실행되어 출력, 재생된다. 정보 처리 장치(150)에서의 컨텐츠의 복호, 스크램블 해제 처리 시퀀스의 상세에 대해서는 후단에서 설명한다.
다음에, 도 2 이하를 참조해서, 정보 기록 매체에 저장된 컨텐츠를 구분해서, 구분 컨텐츠마다 다른 이용 제어를 실현하는 컨텐츠 관리 구성에 대해서 설명한다.
전술한 바와 같이, 정보 기록 매체에 저장되는 컨텐츠는 구분 컨텐츠 마다의 다른 이용 제어를 실현하기 위해서, 구분 컨텐츠마다 다른 열쇠(타이틀 열쇠)가 할당되어 암호화 처리가 이루어지며, 또 스크램블 처리가 이루어져 저장된다. 1개의 타이틀 열쇠를 할당하는 단위를 컨텐츠 관리 유닛(CPS 유닛)이라고 부른다.
각각의 타이틀 열쇠를 적용해서 각 유닛에 속(屬)하는 컨텐츠를 암호화하고, 컨텐츠 이용 시에는, 각 유닛에 할당된 열쇠(타이틀 열쇠)를 취득하고, 또 스크램블 룰에 대응하는 스크램블 해제를 실행해서 재생을 행한다. 각 타이틀 열쇠는 개별적(個別; individually)으로 관리하는 것이 가능하고, 예를 들면 어떤 유닛 A에 대해서 할당하는 타이틀 열쇠는 정보 기록 매체로부터 취득 가능한 열쇠로서 설정한다. 또, 유닛 B에 대해서 할당하는 타이틀 열쇠는 네트워크 접속되는 서버에 액세스해서, 유저가 소정의 수속(手續)을 실행한 것을 조건으로 해서 취득할 수 있는 열쇠로 하는 등, 각 유닛 대응의 열쇠의 취득, 관리 구성은 각 타이틀 열쇠에 독립한 형태로 하는 것이 가능하다.
1개의 열쇠를 할당하는 단위, 즉 컨텐츠 관리 유닛(CPS 유닛)의 설정 형태에 대해서, 도 2를 참조하여 설명한다.
도 2에 도시하는 바와 같이, 컨텐츠는 (A) 타이틀(210), (B) 무비 오브젝트(220), (C) 플레이 리스트(230), (D) 클립(240)의 계층 구성을 가지고, 재생 애플리케이션에 의해서 액세스되는 인덱스 파일로서의 타이틀이 지정되면, 타이틀에 관련지어진(關連付; associated) 재생 프로그램이 지정되고, 지정된 재생 프로그램의 프로그램 정보에 따라서 컨텐츠의 재생순(再生順) 등을 규정한 플레이 리스트가 선택되며, 플레이 리스트에 규정된 클립 정보에 의해서, 컨텐츠 실제(實; actual) 데이터로서의 AV 스트림 혹은 커맨드가 판독출력(讀出: read out)되어, AV 스트림의 재생, 커맨드의 실행 처리가 행해진다.
도 2에는, 2개의 CPS 유닛을 도시하고 있다. 이들은, 정보 기록 매체에 저장된 컨텐츠의 일부를 구성하고 있다. CPS 유닛1(271), CPS 유닛 2(272)의 각각은 애플리케이션 인덱스로서의 타이틀과, 재생 프로그램 파일로서의 무비 오브젝트와, 플레이 리스트와, 컨텐츠 실제 데이터로서의 AV 스트림 파일을 포함하는 클립을 포함하는 유닛으로서 설정된 CPS 유닛이다.
컨텐츠 관리 유닛(CPS 유닛)1(271)에는, 타이틀 1(211)과 타이틀 2(212), 재생 프로그램(221, 222), 플레이 리스트(231, 232), 클립(241), 클립 (242)이 포함되며, 이들 2개의 클립(241, 242)에 포함되는 컨텐츠의 실제 데이터인 AV 스트림 데이터 파일(261, 262)이 컨텐츠 관리 유닛(CPS 유닛) 1(271)에 대응지어서 설정되는 암호 열쇠인 타이틀 열쇠:Ku1를 적용해서 암호화된다.
컨텐츠 관리 유닛(CPS 유닛) 2(272)에는 타이틀 3(213), 재생 프로그램(224), 플레이 리스트(233), 클립(243)이 포함되고, 클립(243)에 포함되는 컨텐츠의 실제 데이터인 AV 스트림 데이터 파일(263)이 컨텐츠 관리 유닛(CPS 유닛) 2(272)에 대응지어서 설정되는 암호 열쇠인 타이틀 열쇠:Ku2를 적용해서 암호화된다.
예를 들면, 유저가 컨텐츠 관리 유닛 1(271)에 대응하는 애플리케이션 파일 또는 컨텐츠 재생 처리를 실행하기 위해서는, 컨텐츠 관리 유닛(CPS 유닛) 1(271)에 대응지어서 설정된 암호 열쇠로서의 타이틀 열쇠:Ku1를 취득해서 복호 처리를 실행하는 것이 필요하며, 복호 처리를 실행한 후, 애플리케이션 프로그램을 실행해서 컨텐츠 재생을 행할 수가 있다. 컨텐츠 관리 유닛 2(272)에 대응하는 애플리케이션 파일 또는 컨텐츠 재생 처리를 실행하기 위해서는, 컨텐츠 관리 유닛(CPS 유닛) 2(272)에 대응지어서 설정된 암호 열쇠로서의 타이틀 열쇠:Ku2를 취득해서 복 호 처리를 실행하는 것이 필요하게 된다.
스크램블 처리에 대해서도 마찬가지이며, 컨텐츠 관리 유닛마다 다른 스크램블 처리가 실행되어 정보 기록 매체에 저장된다. CPS 유닛 1(271)에 대해서는 스크램블 룰 #1을 적용한 스크램블 처리, CPS 유닛 2(272)에 대해서는 스크램블 룰 #2를 적용한 스크램블 처리를 행하는 등이다. 컨텐츠 재생시의 스크램블 해제 시에는, 각 스크램블 룰에 대응한 스크램블 해제 처리를 실행하는 것이 필요하게 된다. 또한, 스크램블 룰은 CPS 유닛에 포함되는 컨텐츠마다 변경하는 등의 형태로 하는 것도 가능하다.
도 3은 CPS 유닛 단위로, 다른 스크램블 룰을 적용한 경우의 각 컨텐츠와 CPS 유닛과 스크램블 룰과의 대응을 도시하는 테이블이다. 도 3에 도시하는 바와 같이, 애플리케이션 층(層)의 인덱스 또는 애플리케이션 파일, 또는 데이터 그룹에 대응하는 컨텐츠 관리 유닛(CPS 유닛)과, 스크램블 룰이 대응지어져 있다.
컨텐츠 재생 처리를 실행하는 정보 처리 장치(150)는 재생 대상의 컨텐츠 관리 유닛(CPS 유닛)을 식별하고, 스크램블 룰(116)로부터 재생 대상의 컨텐츠 관리 유닛에 대해서 실행되고 있는 스크램블 룰을 취득해서, 적용 룰에 대응하는 스크램블 해제 처리를 실행하여, 스크램블의 해제를 실행한다.
본 발명의 구성에서는, 정보 기록 매체에 저장되어 있는 컨텐츠에 적용되고 있는 스크램블 처리는 동일하지 않고, 개개의 컨텐츠 관리 유닛(CPS 유닛) 혹은 컨텐츠마다 다른 형태이며, 재생 처리에서는, 각 컨텐츠 관리 유닛(CPS 유닛) 혹은 컨텐츠에 대해서 적용되고 있는 스크램블 룰에 대응한 스크램블 해제 처리를 실행하는 것이 필요하게 된다.
다음에, 도 4를 참조하여, 상술한 CPS 유닛 단위의 암호화 및 스크램블 처리가 이루어진 암호화 컨텐츠 및 각종 열쇠 생성 정보, 스크램블 룰을 저장한 정보 기록 매체로부터 컨텐츠를 취득해서 재생 처리를 실행하는 정보 처리 장치에서의 컨텐츠 재생 처리의 상세에 대해서 설명한다.
도 4에 도시하는 바와 같이, 정보 처리 장치(150)에서 실행하는 컨텐츠 재생 처리에는, 암호화 컨텐츠의 복호 처리와 스크램블 해제 처리의 2개의 처리를 포함한다.
정보 처리 장치(150)는 정보 기록 매체(100)로부터 각종 정보를 판독하고, 이들 판독 데이터와 정보 처리 장치(150)가 보유(保有: keep)하고 있는 디바이스 열쇠(301)를 적용한 열쇠 생성 처리에 의해서 생성한 타이틀 열쇠에 의거해서 암호화 컨텐츠의 복호 처리를 실행하고, 또 복호 컨텐츠에 대해서 스크램블 해제 처리를 실행한다. 또한, 이 실시예에서는 컨텐츠의 복호 처리 후, 스크램블 해제를 행하는 예를 나타내고 있지만, 스크램블 해제 후, 복호 처리를 행하는 구성도 가능하며, 이 처리 시퀀스는 정보 기록 매체에 저장하는 컨텐츠의 기록 처리 시퀀스에 의존한다.
정보 처리 장치(150)에서의 암호화 컨텐츠의 복호 처리 및 스크램블 해제 처리의 상세 시퀀스에 대해서, 도 4를 참조하여 설명한다. 컨텐츠 복호 프로세스에서는 우선, 정보 처리 장치(150)는 메모리에 저장하고 있는 디바이스 열쇠(301)를 판독출력한다. 디바이스 열쇠(301)는 컨텐츠 이용에 관한 라이센스를 받은 정보 처리 장치에 저장된 비밀 키이다.
다음에, 정보 처리 장치(150)는 스텝 S11에서, 디바이스 열쇠(301)를 적용해서 정보 기록 매체(100)에 저장된 미디어 열쇠(미디어 키라고도 한다)(Km)를 저장한 암호 열쇠 블록인 MKB(112)의 복호 처리를 실행해서, 미디어 열쇠(Km)를 취득한다.
다음에, 스텝 S12에서, 스텝 S11에서의 MKB 처리로 취득한 미디어 열쇠(Km)와, 정보 기록 매체(100)로부터 판독한 볼륨 ID(113)에 의거하는 암호 처리에 의해서, 타이틀 열쇠 생성 키(Ke)(embedded Key)를 생성한다. 이 열쇠 생성 처리는, 예를 들면 AES 암호 알고리즘에 따른 처리로서 실행된다.
AES 암호 알고리즘의 상세에 대해서, 도 5를 참조하여 설명한다. AES 암호 알고리즘에 따른 처리로서는, 예를 들면 AES 베이스의 해시(hash) 함수[AES_H]가 적용된다. AES 베이스의 해시 함수는 도 5에 도시하는 바와 같이, AES 암호 처리를 적용한 데이터 복호 처리를 수반하는 열쇠 생성(Key Generation) 처리 실행부(AES_G)와 배타적 논리합부와의 조합(組合; combination)에 의해서 구성된다. AES_G부는 또, 도 5에 도시하는 바와 같이 AES 복호부(AES_D)와 배타적 논리합부와의 조합에 의해서 구성된다.
도 4에서의 스텝 S12에서의 타이틀 열쇠 생성 키(Ke)(embedded Key)의 생성 처리는 스텝 S11에서의 MKB 처리로 취득한 미디어 열쇠(Km)와, 정보 기록 매체(100)로부터 판독한 볼륨 ID(113)를 입력으로 하여, 예를 들면 도 5에 도시하는 AES 베이스의 해시 함수[AES_H]를 적용한 처리로서 실행된다.
다음에, 스텝 S13에서, 타이틀 열쇠 생성 키(Ke)(embedded Key)와, 정보 기록 매체(100)로부터 판독한 사용 허락 정보(114)에 의거하는 암호 처리(AES_H)에 의해서, 컨트롤 키(Kc)를 생성하고, 스텝 S14에서, 컨트롤 키(Kc)와 정보 기록 매체(100)로부터 판독한 타이틀 열쇠 데이터(115)에 의거하는 암호 처리(AES_H)에 의해서, 타이틀 열쇠를 생성한다.
다음에, 스텝 S15에서, 정보 기록 매체(100)로부터 판독한 암호화 컨텐츠에 대해서, 타이틀 열쇠를 적용한 복호 처리(예를 들면, AES_D)가 실행된다.
다음에, 스텝 S16에서, 복호된 컨텐츠의 스크램블 해제 처리를 실행한다. 스텝 S16의 스크램블 해제 처리는 스텝 S16a의 스크램블 룰 취득 처리와, 스텝 S16b의 스크램블 해제 처리에 의해서 구성된다.
전술한 바와 같이, 컨텐츠는 컨텐츠 관리 유닛 또는 컨텐츠마다 다른 스크램블 룰이 적용된 스크램블 처리가 행해져서 정보 기록 매체(100)에 저장되어 있다. 스텝 S16a의 스크램블 룰 취득 처리는 정보 기록 매체(100)에 저장된 스크램블 룰(116)을 취득하여, 재생 대상의 컨텐츠에 대응하는 스크램블 룰을 해석하는 처리이다. 스텝 S16b의 스크램블 해제 처리는 스텝 S16a에서 해석한 스크램블 룰에 대응하는 스크램블 해제 처리를 실행한다.
S16a의 스크램블 룰 취득 스텝 및 스텝 S16b의 스크램블 해제 처리는 스크램블 룰이 누설하지 않도록 시큐어한 데이터 처리로서 실행할 필요가 있다. 정보 기록 매체에 저장되는 스크램블 룰(116)은 시큐어한 Java 코드로 결정되고, 정보 처리 장치(150)는 Java가 실현하는 Java 버추얼 머신 내의 처리로서 스텝 S16a의 스크램블 룰 취득 처리와, 스텝 S16b의 스크램블 해제 처리를 실행한다.
그 후, 스크램블 해제 후의 컨텐츠 데이터에 대해서는, 스텝 S17에서, 디코드(예를 들면, MPEG 디코드) 처리가 실행되어 컨텐츠(302)가 출력된다.
도 6에 도시하는 플로차트를 적용해서 정보 처리 장치(150)가 실행하는 컨텐츠 재생 시퀀스에 대해서 설명한다. 스텝 S101에서, 디바이스 열쇠를 적용해서 정보 기록 매체(100)에 저장된 MKB(112)의 복호 처리를 실행해서, 미디어 열쇠(Km) 취득 처리를 실행한다. 스텝 S102에서, 미디어 열쇠의 취득에 성공했다고 판정한 경우에는, 스텝 S103으로 진행한다.
스텝 S102에서, 미디어 열쇠의 취득에 실패했다고 판정한 경우는, 스텝 S109로 진행하고, 재생 금지로서 처리를 종료한다. 미디어 열쇠의 취득에 실패하는 경우라 함은, 정보 처리 장치가 보존유지(保持: maintain)하고 있는 디바이스 열쇠가 리보크, 즉 부정이라고 해서 라이센스가 인정되지 않는 상태로 되어 있는 것을 의미한다. 전술한 바와 같이 MKB는 적당히 갱신되고, 유효한 라이센스를 보존유지한 정보 처리 장치의 저장 디바이스 열쇠를 적용한 경우에만 미디어 열쇠를 취득하는 것이 가능한 구성이며, 리보크된 경우에는, 미디어 열쇠를 취득할 수가 없다.
미디어 열쇠의 취득에 성공한 경우에는, 스텝 S103으로 진행하고, 취득한 미디어 열쇠(Km)와 정보 기록 매체(100)로부터 판독한 볼륨 ID(113)에 의거하는 암호 처리에 의해서, 타이틀 열쇠 생성 키(Ke)(embedded Key)를 생성한다. 이 열쇠 생성 처리는 전술한 바와 같이 예를 들면 도 5에 도시하는 AES 베이스의 해시 함수[AES_H]를 적용한 처리로서 실행된다.
다음에, 스텝 S104에서, 타이틀 열쇠 생성 키(Ke)(embedded Key)와 정보 기록 매체(100)로부터 판독한 사용 허락 정보(114)에 의거하는 암호 처리(AES_H)에 의해서, 컨트롤 키(Kc)를 생성하고, 스텝 S105에서, 컨트롤 키(Kc)와 정보 기록 매체(100)로부터 판독한 타이틀 열쇠 데이터(115)에 의거하는 암호 처리(AES_H)에 의해서, 타이틀 열쇠를 생성한다.
다음에, 스텝 S106에서, 정보 기록 매체(100)로부터 판독한 암호화 컨텐츠에 대해서, 타이틀 열쇠를 적용한 복호 처리(예를 들면, AES_D)를 실행하고, 스텝 S107에서, 정보 기록 매체(100)에 저장된 스크램블 룰(116)을 취득하고, 재생 대상의 컨텐츠에 대응하는 스크램블 룰을 해석하는 처리를 실행하며, 스텝 S108에서, 해석한 스크램블 룰에 대응하는 스크램블 해제 처리(스크램블 역처리(descramble processing)라고도 한다)를 실행한다.
[2. 정보 기록 매체에 대한 컨텐츠 기록 처리의 상세]
다음에, 정보 기록 매체에 대한 컨텐츠 기록 처리의 상세에 대해서 설명한다. 도 7을 참조하여, 컨텐츠 저장 정보 기록 매체의 제조 시퀀스에 대해서 설명한다.
도 7에 도시하는 바와 같이 우선, 정보 기록 매체에 저장하는 컨텐츠에 대해서, 컨텐츠 편집(編集) 처리를 실행하는 어서링 퍼실러티(330)에서 편집 처리, 즉 스텝 S201에서의 어서링 처리가 실행되고, 어서링필(畢)(authorized) 컨텐츠(332)가 생성된다. 또한, 어서링 컨텐츠는 통상, MPEG 인코드 등의 인코드가 이루어진 컨텐츠로서 설정된다.
또, 적용할 스크램블 룰(331)을 선택하고, 선택한 스크램블 룰에 의거해서, 스텝 S202에서 스크램블 처리가 실행된다. 또한, 스크램블 형태에는 여러가지 형태가 있다. 이들의 구체적 형태에 대해서는 후술한다. 스텝 S202에서 스크램블 처리가 이루어진 후, 스크램블 컨텐츠는 정보 기록 매체 제조 처리를 실행하는 디스크 공장(工場)으로서의 암호화 퍼실러티(370)로 보내(渡: transfer)진다.
암호화 퍼실러티(370)에서는, 스텝 S203에서 스크램블 컨텐츠에 대한 암호화 처리를 실행한다. 라이센스 엔티티(entity)(350)는 전술한 암호 열쇠 블록으로서의 MKB의 관리를 실행하고, 컨텐츠 암호화 처리를 실행하는 암호화 퍼실러티(370)에 미디어 열쇠(Km)를 제공하고, 암호화 퍼실러티(370)는 미디어 열쇠를 적용한 처리를 실행해서 컨텐츠의 암호화를 실행한다. 암호화 프로세스의 상세에 대해서는 후술한다.
스텝 S203에서의 암호화 처리에 의해서 생성한 암호화필(暗號化畢; encrypted) 컨텐츠(371)와, 어서링 퍼실러티(330)에서 적용한 스크램블 룰(331)이, 암호화 퍼실러티(370)에서 정보 기록 매체(100)에 기록입력(書入: write into)되어 정보 기록 매체(100)가 제조된다.
이하, 스크램블 처리의 예로서
(2-1) 셔플 처리
(2-2) 배타 논리합 연산(EXOR) 처리
(2-3) 로테이션 처리
의 3종류의 스크램블 처리에 대해서, 순차(順次) 설명한다.
[(2-1) 셔플 처리]
도 8은 도 7에서 설명한 기록 데이터의 생성 처리를 컨텐츠 데이터의 변화로서 도시한 도면이며, 적용하는 스크램블 처리로서 셔플 처리를 적용한 경우의 처리예를 도시하고 있다. 셔플 처리를 스크램블 처리로서 적용하는 경우, 여러가지 다른 셔플 형태가 스크램블 룰마다 설정된다. 즉,
스크램블 룰 #1:셔플 형태 1
스크램블 룰 #2:셔플 형태 2
스크램블 룰 #3:셔플 형태 3
    :    :    :
스크램블 룰 #n:셔플 형태 n
과 같이 다수의 셔플 형태가 설정되고, 각 컨텐츠 혹은 컨텐츠 관리 유닛(CPS 유닛) 마다 어느것인가의 스크램블 룰 #x(셔플 형태 x)가 적용되어 스크램블 처리가 실행되게 된다.
도 8에는, 상단(上段)부터, (A) 셔플 처리전의 평문(平文; plaintext), (B) 셔플 처리 후의 평문, (C) 셔플필(畢)(shuffled) 암호문을 도시하고 있다. 도 8의 (A)에 도시하는 바와 같이, MPEG 인코드 등의 인코드가 이루어진 컨텐츠, 즉 정보 기록 매체에 기록하는 AV 스트림 등의 컨텐츠는 선두부터 64KB씩으로 분할되고, 64KB 마다 셔플 유닛으로서 설정된다. 64KB 셔플 유닛은 32개의 2KB 셔플 엘리멘트에 의해서 구성된다.
스크램블 처리로서의 셔플 처리는 2KB 셔플 엘리멘트의 교체(入替; interchange)(셔플) 처리로서 실행된다. 교체 형태로서의 셔플 형태가 스크램블 룰이다. 도 9를 참조하여 스크램블 룰(셔플 형태)에 대해서 설명한다. 도 9의 (A)는 1개의 스크램블 룰(셔플 형태)의 예를 도시하고 있다.
도 9의 (A)에 도시하는 스크램블 룰(셔플 형태)은 도 8에 도시하는 2KB 셔플 엘리멘트 1∼32의 셔플에 의한 재배치(竝替; reordering) 순(順)(재배치 위치)을 나타내고 있다. 즉, 셔플 후에는, 제1 번째의 셔플 엘리멘트로서 셔플전의 제3 번째의 셔플 엘리멘트를 설정하고, 셔플 후의 제2 번째의 셔플 엘리멘트로서 셔플전의 제19 번째의 셔플 엘리멘트를 설정하며, 이하 마찬가지로, 16, 24, 26…과 같이 셔플 엘리멘트를 재배치하는 셔플 처리를 나타내고 있는 스크램블 룰이다.
도 9의 (B1)이 셔플전의 2KB 셔플 엘리멘트 1∼32의 설정 시퀀스이며, (B2)가 (A)에 도시하는 스크램블 룰(셔플 형태)을 적용한 스크램블 처리에 의해서 생성되는 셔플 후의 2KB 셔플 엘리멘트 1∼32의 설정 시퀀스이다.
스크램블 룰(셔플 형태)은 전술한 바와 같이, 컨텐츠 혹은 컨텐츠 관리 유닛(CPS 유닛) 마다 다른 룰로서 설정 가능하다. 정보 기록 매체에 복수의 컨텐츠 혹은 컨텐츠 관리 유닛(CPS 유닛)이 기록되어 있는 경우, 각 컨텐츠 혹은 컨텐츠 관리 유닛(CPS 유닛)에 대응해서 적용되고 있는 스크램블 룰, 즉 예를 들면 도 9의 (A)에 도시하는 스크램블 룰이 각각, 도 1을 참조하여 설명한 스크램블 룰(116)로서 기록되고 있다. 재생 처리를 실행하는 정보 처리 장치는 재생 대상 컨텐츠에 대응하는 스크램블 룰을 판독출력하여, 스크램블 해제 처리를 실행한다.
도 8, 도 9에 도시하는 예에서는, 32개의 셔플 유닛을 적용한 셔플을 스크램 블 처리로서 실행한 예이다. 이 경우, 셔플 형태는 32! 종류의 설정이 가능하고, 스크램블 룰로서 32!의 룰이 설정 가능해진다. 컨텐츠 혹은 컨텐츠 관리 유닛(CPS 유닛) 마다 이들 32!의 어느것인가의 룰을 적용해서 스크램블 처리가 실행 가능해진다. 따라서, 어떤 1개의 컨텐츠에 대응해서 설정된 스크램블 룰이 누설된 경우라도, 그 밖의 컨텐츠에 적용되고 있는 스크램블 룰이 동일한 스크램블 룰일 확률은 지극히 낮은 것으로 되며, 누설된 스크램블 룰에 의거해서, 다른 컨텐츠의 스크램블 해제를 행하는 것은 거의 불가능하게 되어, 컨텐츠의 부정 취득, 이용을 방지할 수가 있다.
또한, 정보 기록 매체에 기록되는 스크램블 룰(116)은 암호화 데이터, 예를 들면 Java 시큐어 코드를 적용해서 기술되고, 정당한 라이센스를 가지는 정보 처리 장치에서만 해독 가능한 데이터로서 설정되어 있어, 부정한 판독에 의한 룰 해독은 방지된 구성으로 되어 있다.
또한, 스크램블 처리(셔플 처리)는 컨텐츠를 구분하는 것에 의해서 설정되는 복수의 64KB의 셔플 유닛 모두를 대상으로 해서 실행하는 구성으로 해도 좋지만, 컨텐츠를 구분하는 것에 의해서 설정되는 복수의 64KB의 셔플 유닛에서 선택된 일부의 유닛만을 대상으로 하여 스크램블(셔플) 처리를 실행하는 구성으로 해도 좋다.
또한, 상술한 예에서, 셔플 유닛은 64KB로서 설정한 예를 나타내고 있지만, 데이터 사이즈는 이것에 한정되는 것은 아니다. 다만, 정보 처리 장치에서의 컨텐츠 재생 처리에서 드라이브의 데이터 판독 단위로서 설정되는 ECC 블록의 사이즈인 64KB와 셔플 유닛 사이즈를 동일 사이즈로 함으로써, 1번(度)의 데이터 판독에 의해서 셔플 유닛을 판독하는 것이 가능해진다. 따라서, 셔플 유닛을 64KB로서 설정함으로써, 재생 처리 시에 드라이브에서 실행하는 데이터 취득 처리와 셔플 해제 처리를 일련(一連)의 처리로서 실행할 수 있어, 효율적인 처리가 실현된다. 또, 도 17을 이용하여 후술하는 바와 같이, 논리적인 단위로서는 192byte 단위인 트랜스포트 패킷(transport packet)을 이용하여 기록되기 때문에, 이러한 단위로 처리를 행해도 좋고, 또 이 트랜스포트 패킷의 일부만을 대상으로 해서 셔플 처리를 행해도 좋은 것은 물론이다. 또, 더미(dummy) 데이터를 삽입해 두고, 도 9에 도시하는 스크램블 룰로 더미 데이터를 제거하도록 재배치해도 좋다.
또, 셔플 엘리멘트의 사이즈=2KB는 블루 레이(Blu-ray) 디스크의 유저 섹터 데이터와 동일 사이즈이다. 6KB 단위로 설정되는 얼라인드 유닛(Aligned Unit)에서, 도 8에 도시하는 바와 같이 선두(先頭) 16바이트만이 비암호화(非暗號化; un-encrypted) 데이터(평문)로서 설정된다. 각 얼라인드 유닛(6KB)의 선두부에는, 재생 처리 타이밍 정보로서의 타임 스탬프가 설정된다.
후술하는 컨텐츠 암호화 처리에서, 6KB 단위의 암호화 처리를 실행한 경우, 2KB 단위의 셔플을 실행함으로써, 각 얼라인드 유닛(6KB)의 2번째와 3번째의 유저 섹터 데이터의 어느쪽인가에 타임 스탬프 정보가 포함되는 경우가 많아지지만, 이들 정보는 암호화되게 된다. 이와 같이 많은 타임 스탬프 정보가 암호화됨으로써, 정당한 복호 처리, 스크램블 해제 처리를 실행하지 않는 한(限) 타임 스탬프 정보에 의거하는 재생 시퀀스의 취득은 불가능하게 된다.
도 8의 (A), (B)에 도시하는 바와 같이, 예를 들면 도 9에 도시하는 스크램블 룰을 적용한 스크램블 처리(셔플 처리)는 어서링 퍼실러티에서 실행되고, 셔플 후의 데이터가 암호화 퍼실러티로서의 디스크 공장으로 보내져서 암호화 처리가 실행되어, 도 8의 (C)에 도시하는 셔플필 암호문이 생성된다.
암호화 처리의 형태로서는, 예를 들면 6KB의 얼라인드 유닛(6KB)을 암호화 처리 단위로 한 설정과, 2KB의 유저 섹터 데이터를 암호화 처리 단위로 한 설정이 있으며, 이하, 이들 각각의 암호화 처리 형태에 대해서 설명한다.
우선, 6KB의 얼라인드 유닛(6KB)을 암호화 처리 단위로 한 설정에서의 암호화 처리에 대해서, 도 10을 참조하여 설명한다.
도 10의 (A)는 셔플필 평문을 6KB 단위의 얼라인드 유닛(Aliged Unit)으로서 설정한 데이터 구성을 도시하고 있다. 각 6KB 얼라인드 유닛은 도 10의 (B)에 도시하는 바와 같이 3개의 2KB의 유저 섹터 데이터의 집합으로서 설정되어 있다.
암호화 처리는 3개의 2KB의 유저 섹터 데이터로 이루어지는 6KB 얼라인드 유닛을 처리 단위로 해서 AES_ECBC, 즉 AES 암호화의 CBC(Cipher Block Chaining) 모드를 적용해서 실행된다. 암호 처리에 적용하는 열쇠는 6KB 얼라인드 유닛의 선두 16B 비암호화부(401)로부터 취득하는 블록 열쇠 생성 데이터(128bits)와, 전술한 타이틀 열쇠(128bits)에 의거하는 AES 암호화 및 배치 논리합 연산에 의한 AES 열쇠 생성 처리에 의해서 생성하는 블록 열쇠(128bits)이다. 블록 열쇠는 6KB 얼라인드 유닛의 선두 16B 비암호화부(401)로부터 취득하는 블록 열쇠 생성 데이터를 적용해서 생성되므로, 각 6KB 얼라인드 유닛마다 다른 열쇠로서 설정된다.
AES_ECBC 모드의 암호 처리에 대해서, 도 11을 참조하여 설명한다. 도 11의 (A)는 도 10의 (B)와 마찬가지의 3개의 2KB 유저 섹터 데이터로 이루어지는 6KB 얼라인드 유닛을 도시하고, 도 11의 (B)는 16B 비암호화부(401)와 그 밖의 암호화 부분(402)을 도시하고 있다.
암호화 부분(402)은 도 11의 (C)에 도시하는 바와 같이 각각 16B의 평문 유닛으로 구분된다. 선두의 16바이트 평문 유닛은 초기값(IV)과 배타 논리합(EXOR)되고, 또 AES 암호화 처리가 이루어져 출력되어, 16바이트 암호문이 설정된다. 또, 이 16바이트 암호문은 다음의 16바이트 평문 유닛과 배타 논리합(EXOR)되고 AES 암호화가 이루어져, 16바이트의 암호문 유닛이 생성된다. 또, 이 16바이트 암호문 유닛이 다음의 16바이트 평문 유닛과 배타 논리합(EXOR)된다. 이하 마찬가지 처리가 되풀이되어, 도 11의 (D)에 도시하는 암호문 유닛 배열이 생성된다. 또한, AES 암호화시의 열쇠는 도 10에서 설명한 블록 열쇠가 적용된다. 또, 초기값(IV)은 암호화 퍼실러티 및 재생 장치 사이에서 공유(共有)되는 미리 정해진 128 비트값이 적용된다.
이와 같이 해서, 도 10의 (C)에 도시하는 16B 비암호화부(401)와, 그 밖의 6128B의 암호화 부분(402)으로 이루어지는 1개의 6KB 얼라인드 유닛의 암호화 데이터가 생성된다.
다음에, 도 12를 참조하여, 2KB의 유저 섹터 데이터를 암호화 처리 단위로 한 설정에서의 암호화 처리에 대해서 설명한다. 도 12의 (A)는 셔플필 평문을 2KB의 유저 섹터 데이터로 한 설정을 도시하고 있다.
암호화 처리는, 1개의 2KB의 유저 섹터 데이터를 처리 단위로 해서, AES_ECBC, 즉 도 11을 참조하여 설명한 AES 암호화의 CBC(Cipher Block Chaining) 모드를 적용해서 실행된다. 암호 처리에 적용하는 열쇠는 2KB 유저 섹터 데이터의 선두 16B 비암호화부(411)로부터 취득하는 블록 열쇠 생성 데이터(128bits)와, 전술한 타이틀 열쇠(128bits)에 의거하는 AES 암호화 및 배치 논리합 연산에 의한 AES 열쇠 생성 처리에 의해서 생성하는 블록 열쇠(128bits)이다. 블록 열쇠는 2KB 유저 섹터 데이터의 선두 16B 비암호화부(411)로부터 취득하는 블록 열쇠 생성 데이터를 적용해서 생성되므로, 각 2KB 유저 섹터 데이터마다 다른 열쇠로서 설정된다.
AES_ECBC 모드의 암호 처리에 대해서는, 도 11을 참조하여 설명한 대로이며, 암호 처리의 결과로서, 도 12의 (B)에 도시하는 16B 비암호화부(411)와, 그 밖의 2032B의 암호화 부분(412)으로 이루어지는 1개의 2KB 유저 섹터 데이터의 암호화 데이터가 생성된다.
도 12를 참조하여 설명한 2KB 유저 섹터 데이터 단위의 암호 처리를 실행하는 경우, CBC 모드의 연쇄(連鎖)는 2KB 마다 완결하는 구성으로 된다. 먼저, 도 8 등을 참조하여 설명한 바와 같이 셔플 엘리멘트는 2KB로 설정되어 있다. 따라서, 각 셔플 엘리멘트마다 AES_ECBC 모드의 연쇄 관계는 완결하게 된다. 따라서, 2KB 단위의 암호화를 행하는 구성에서는, 암호화 처리와 스크램블 처리(셔플 처리)의 처리 순번(順番)을 변경해도 얻어지는 결과는 동일하게 되며, 스크램블 처리와 암호화 처리의 프로세스 순을 임의로 설정할 수 있다고 하는 메리트가 있다. 이것은, 데이터 기록 처리, 데이터 재생 처리의 어느 것에도 공통하는 메리트이다.
데이터 기록시의 암호화 처리의 처리 형태를 결정하기 위해서 암호화 프로세스를 실행하는 디스크 공장 등의 암호화 퍼실러티에서 적용하는 보조 파일(MSTBL. DAT)의 데이터 구성을 도 13에 도시하며, 이 보조 파일의 신택스(syntax)를 도 14에 도시한다.
보조 파일은 [UD_START_Location]∼[MKB_Location]까지, 기록 데이터의 종류 및 위치 정보가 기술되고, 그 후, 각 섹터 마다의 암호화 처리를 플래그 [Encryption_Flag]에 의거해서 실행하는 설정으로 되어 있다. 또한, 각 얼라인드 유닛 마다의 데이터 타입으로서, 제1∼제3 섹터의 구별과, AV 스트림 데이터 이외의 예를 들면 Java 코드 등의 데이터가 판별 가능한 설정으로 되며, 이들 데이터 종별에 의거하는 암호화 처리 형태의 변경도 가능한 구성으로 되어 있다.
각 데이터의 의미는 도 14에 도시하는 바와 같이, 이하의 의미를 가진다.
UD_START_Location : 각 Layer의 User Data(Data Zone)의 개시점의 Physical Sector Number.
UD_END_Location : 각 Layer의 User Data(Data Zone)의 종료점의 Physical Sector Number.
CHT_Location : CHT의 개시점의 Physical Sector Number.
CHT_Offset : CHT의 개시점부터 Hash Value(Mastering Facility가 채우는(埋; fill) 데이터) 직전까지의 바이트 수(數).
Content_Cert_Location : Content Certificate의 개시점의 Physical Sector Number. 
Content_Cert_Offset : Content Certificate의 개시점부터 Content ID(Mastering Facility가 채우는 데이터) 직전까지의 바이트 수.
UK_Inf_Location : 타이틀 열쇠 파일의 개시점의 Physical Sector Number. 그 Layer에 Unit_Key.inf가 기록되지 않는 경우에는, 0000000016을 기술(記述).
UK_Inf_Offset : Unit_Key.inf의 개시점부터 Encrypted Unit Key for CPS Unit #1 직전까지의 바이트 수. 그 Layer에 Unit_Key.inf가 기록되지 않는 경우에는, 0000000016을 기술.
Num_of_UK : Disc 전체의 Unit Key의 수(=CPS Unit의 수).
MKB_Location : MKB의 개시점의 Physical Sector Number. 그 Layer에 MKB_Cert가 기록되지 않는 경우에는, 0000000016을 기술.
N : Layer i의 Logical Sector수.
Encryption_Flag : 암호화할지 하지 않을지의 Flag.
Data_Type : Sector의 Type을 나타내는 Flag.
CPS_Unit_No : CPS Unit Number.
Clip_AV_File_No : 클립 파일 번호. CHT 작성을 위해서 사용하는 정보.
Last_Sector_of_Clip : (Layer에 관계없이) 각 클립의 최종 Sector를 나타내는 플래그.
Last_Sector_of_Layer : 각 Layer에서의 각 클립의 최종 Sector를 나타내는 플래그.
앞서 도 7 이하를 참조하여 설명한 예에서는, 스크램블 처리를 어서링 퍼실러티가 실행하는 처리예를 설명했지만, 다음에 도 15를 참조하여, 스크램블 처리와 암호화 처리의 2개의 처리를 디스크 공장(암호화 퍼실러티)에서 실행하는 예에 대해서 설명한다.
도 15에 도시하는 바와 같이, 우선, 정보 기록 매체에 저장하는 컨텐츠에 대해서, 컨텐츠 편집 처리를 실행하는 어서링 퍼실러티(430)에서 편집 처리, 즉 스텝 S271에서의 어서링 처리가 실행되어, 어서링필 컨텐츠(332)가 생성된다. 또한, 어서링 컨텐츠는 통상, MPEG 인코드 등의 인코드가 이루어진 컨텐츠로서 설정된다.
어서링 컨텐츠는 스크램블 처리를 실행하는 일 없이, 암호화 퍼실러티(디스크 공장)(470)로 보내진다. 암호화 퍼실러티(디스크 공장)(470)은 적용할 스크램블 룰(451)을 선택하고, 선택한 스크램블 룰에 의거해서, 스텝 S272에서 스크램블 처리를 실행한다. 스텝 S272에서 스크램블 처리가 이루어진 후, 스텝 S273에서 스크램블 컨텐츠에 대한 암호화 처리를 실행한다. 라이센스 엔티티(450)는 전술한 암호 열쇠 블록으로서의 MKB의 관리를 실행하고, 컨텐츠 암호화 처리를 실행하는 암호화 퍼실러티(470)에 미디어 열쇠(Km)를 제공해서, 암호화 퍼실러티(470)는 미디어 열쇠를 적용한 처리를 실행하여 타이틀 열쇠를 생성하고, 또 앞서 도 10, 도 12를 참조하여 설명한 수순에 따라서, 블록 열쇠의 생성, 컨텐츠 암호화 처리를 실행한다.
스텝 S273에서의 암호화 처리에 의해서 생성한 암호화필 컨텐츠(452)와 스크램블 룰(451)이 암호화 퍼실러티(470)에서 정보 기록 매체(100)에 기록입력되어 정 보 기록 매체(100)가 제조된다.
도 16은 도 15에서 설명한 기록 데이터의 생성 처리를 컨텐츠 데이터의 변화로서 도시한 도면이며, 스크램블 처리로서 셔플 처리를 적용한 경우의 처리예를 도시하고 있다. 상단부터, (A) 셔플 처리전의 평문, 셔플 처리 후의(셔플필) 평문, (C) 셔플필 암호문을 나타내고 있다. 도 16의 (A)는 어서링 퍼실러티가 생성하는 데이터이며, MPEG 인코드 등의 인코드가 이루어진 컨텐츠, 즉 정보 기록 매체에 기록하는 AV 스트림 등의 컨텐츠이다.
도 16의 (B)는 셔플 처리후의 평문을 도시하고 있다. 컨텐츠는 선두부터 64KB씩으로 분할되고, 64KB 마다 셔플 유닛으로서 설정되며, 32개의 2KB 셔플 엘리멘트의 셔플이 실행된다. 그 후, 암호화 처리가 실행되어, 도 16의 (C)에 도시하는 셔플후(셔플필) 암호문이 생성된다. 본 처리예에서는, 도 15의 (B), (C)의 데이터 생성을 암호화 퍼실러티로서의 디스크 공장이 실행한다.
또한, 암호화 처리는 앞서 도 10∼도 12를 참조하여 설명한 대로의 처리, 즉 6KB 얼라인드 유닛을 암호화 처리 단위로 한 설정과, 2KB 유저 섹터 데이터를 암호화 처리 단위로 한 설정이 가능하다. 2KB 유저 섹터 데이터를 암호화 처리 단위로 한 설정에서는, 스크램블 처리와 암호화 처리의 전후 관계를 교체해도 결과는 같게(同) 되며, 임의의 순서(順序)로의 처리로 할 수가 있다.
도 7 이하를 참조하여 설명한 바와 같이, 본 발명의 정보 기록 매체 제조 처리는 정보 기록 매체에 기록할 컨텐츠에 적용하는 스크램블 룰을 선택하는 스크램블 룰 선택 처리와, 선택한 스크램블 룰에 따라서, 컨텐츠에 대한 스크램블 처리를 실행하는 스크램블 처리와, 생성한 스크램블 컨텐츠와 그 컨텐츠에 대해서 선택 적용한 스크램블 룰을 정보 기록 매체에 기록하는 처리를 실행하는 것이다. 스크램블 룰 선택 처리에서는, 정보 기록 매체에 기록할 컨텐츠가 복수 있는 경우에서, 기록 컨텐츠마다 또는 관리 유닛마다 개별의 스크램블 룰을 선택하는 처리를 실행한다.
또, 스크램블 처리는 상술한 컨텐츠 구성 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리 이외에, 배타 논리합 연산 처리, 로테이션 처리 등이 있다. 이하, 이들 처리에 대해서 설명한다.
[(2-2) 배타 논리합 연산(EXOR) 처리]
다음에, 스크램블 처리로서, 배타 논리합 연산(EXOR) 처리를 적용한 처리예에 대해서 설명한다. 우선, 이 처리 예의 설명 전에, 정보 기록 매체에 기록하는 AV 스트림의 인코드 데이터, 즉 MPEG2 트랜스포트 스트림(transport stream) 데이터의 데이터 구성에 대해서 설명한다.
도 17은 MPEG2 트랜스포트 스트림 데이터의 데이터 구성을 도시하는 도면이다. MPEG2 트랜스포트 스트림 데이터는 도 17의 (A)에 도시하는 바와 같이, 6KB 얼라인드 유닛의 연결 데이터로서 설정된다. 각 6KB 얼라인드 유닛은 도 17의 (B)에 도시하는 바와 같이, 192 비트의 소스 패킷 32개로 구성된다. 또한, 192 비트의 소스 패킷 32개는 3개의 2KB 유저 섹터 데이터에 상당(相當)한다.
각 192 바이트 소스 패킷은 도 17의 (C)에 도시하는 바와 같이, 4비트 TP_extra 헤더와, 188 비트 트랜스포트 패킷에 의해서 구성된다. 도 18의 (A)에 소스 패킷(source_packet)의 신택스, 도 18의 (B)에 TP_extra 헤더(TP_extra_header) 의 신택스, 도 19에 트랜스포트 패킷(transport_packet)의 신택스를 도시한다.
스크램블 처리로서 배타 논리합 연산(EXOR) 처리를 적용하는 처리는 평문의 트랜스포트 스트림 데이터 상의 소정 개소(箇所)의 n비트(예를 들면, 32비트) 데이터에 소정의 n비트(32비트) 값(値)을 배타 논리합(EXOR)하는 처리로서 실행된다. 소정의 n비트(32비트) 값은 스크램블 룰에 의해 규정되는 값이다.
도 20을 참조하여, 어서링 퍼실러티에서 스크램블 처리(EXOR 처리)를 실행하는 경우의 컨텐츠(MPEG2 스트림 데이터)의 변천(變遷)에 대해서 설명한다.
도 20의 (A)는 MPEG2 트랜스포트 스트림의 구성 데이터이다. 어서링 퍼실러티에서는, 스크램블 룰에 의거해서 결정되는 값(32 비트값(Vi))을 취득하고, 미리 정해진 MPEG2 트랜스포트 스트림의 구성 데이터 위치에 스크램블 룰로부터 취득한 n비트(32비트) 값을 배타 논리합(EXOR)하는 처리를 실행하여, 도 20의 (B) EXOR필(EXOR-completed) 평문을 생성한다.
스크램블 룰은 예를 들면 도 21에 도시하는 룰로서 설정된다. 도 21에는, V(1)∼V(n)의 32비트 데이터가 저장되고, 이들 각 V(i)값 혹은 이들을 토대(元; basis)로 계산되는 값이, MPEG2 트랜스포트 스트림으로부터 선택된 n개소의 32비트 데이터에 순차, 배타 논리합(EXOR)이 행해져서 데이터의 개서(書換; rewriting)가 실행되며, 스크램블 처리가 행해지게 된다. 또한, 1개의 값, 예를 들면 V(1)만을 스크램블 룰로서 설정하고, MPEG2 트랜스포트 스트림으로부터 선택된 n개소의 32비트 데이터에 순차, 동일한 값V(1) 혹은 이것을 토대로 계산되는 값을 배타 논리합(EXOR)하는 구성으로 해도 좋다.
스크램블 처리로서, 배타 논리합(EXOR)을 행하는 경우에는, 정보 기록 매체에 기록되는 스크램블 룰은 도 21에 도시하는 룰, 즉 배타 논리합(EXOR) 연산의 실행값 혹은 실행값의 토대로 되는 값이 기록되게 된다. 재생 처리에서의 스크램블 해제 시에는, 이 값 혹은 이 값을 토대로 계산되는 값을 재차, 소정 위치의 데이터와 배타 논리합(EXOR)함으로써, 오리지날 데이터를 복원(復元)하는 것이 가능해진다.
도 20으로 되돌아가서, 어서링 퍼실러티에서 스크램블 처리(EXOR 처리)를 실행하는 경우의 컨텐츠(MPEG2 스트림 데이터)의 변천에 대한 설명을 계속한다. 어서링 퍼실러티에서는, 예를 들면 도 21에 도시하는 스크램블 룰을 적용해서 배타 논리합(EXOR) 연산 처리를 실행하고, 도 20의 (B)에 도시하는 EXOR필 평문을 생성하고, 이 데이터를 암호화 퍼실러티로서의 디스크 공장에 제공한다.
암호화 퍼실러티로서의 디스크 공장은 이 수령(受領) 데이터에 대해서 암호화 처리를 실행해서, 도 20의 (C)에 도시하는 EXOR필 암호문을 생성한다. 암호화 처리는 앞서 도 10∼도 12를 참조하여 설명한 AES_ECBC 모드를 적용한 처리가 적용된다.
이와 같이, 배타 논리합 연산(EXOR)이 행해진 데이터를 디코드해도 올바른(正; correct) 데이터는 취득할 수 없다. 올바른 데이터를 취득하기 위해서는, 배타 논리합(EXOR)에 적용된 소정의 n비트(32비트) 값을 소정 개소에 재차, 배타 논리합(EXOR)하여, 오리지날의 트랜스포트 스트림 데이터를 복원한다고 하는 스크램블 해제 처리가 필요하게 된다. 소정의 n비트(32비트) 값은 스크램블 룰에 의해서 규정 되어 있으며, 정당한 수속 하에서의 스크램블 룰 해석을 행하는 것이 필요하게 된다.
스크램블 처리로서, 배타 논리합 연산(EXOR) 처리를 적용하는 경우, 배타 논리합 연산(EXOR) 처리를 적용할 대상 데이터의 선택 구성으로서
(a) 소정의 패턴으로 데이터 내용에 무관계(無關係)하게 배타 논리합 연산(EXOR) 처리를 행한다.
(b) 특정 선택 개소에만 배타 논리합 연산(EXOR) 처리를 행한다.
이들 (a), (b)의 어느것인가(either)의 처리가 가능하다.
또, 상기 (b) 특정의 선택 개소에만 배타 논리합 연산(EXOR) 처리를 행하는 경우에는,
(b1) I 픽쳐의 슬라이스를 부호화한 VLC(가변길이(可變長) 런렝스(run length) 부호화 데이터)의 일부
(b2) 시퀀스 헤더의 일부 혹은 모두
(b3) TS 패킷 내의 패킷 식별자
이들 3개소의 어느것인가를 배타 논리합 연산(EXOR) 적용 위치로서 선택 가능하다. 각 설정예에 대해서 설명한다.
(b1) I 픽쳐의 슬라이스를 부호화한 VLC(가변길이 런렝스 인코드 데이터)의 일부
MPEG2 인코드 데이터는 I, P, B 픽쳐로 구성되는 GOP(Group of Pictures) 데이터에 의해서 구성된다. I 픽쳐는 기본으로 되는 화상 데이터이며, P, B 픽쳐는, 각각 I 픽쳐 등으로부터의 차분(差分) 데이터 등에 의해서 구성되는 데이터이며, I 픽쳐의 구성이 무너지면, GOP에 포함되는 프레임 데이터의 재현(再現)(디코드)은 곤란해진다.
또, I 픽쳐의 슬라이스를 부호화한 VLC는 이것들 기간(基幹; backbone) 데이터로서의 I 픽쳐의 런렝스 부호화 데이터이며, 이 VLC에 대해서 소정의 n비트(32비트) 값을 적용한 배타 논리합 연산(EXOR)을 행한 경우, 배타 논리합 연산(EXOR) 처리 데이터의 디코드에 의해서 오리지날 데이터의 재현은 불가능하게 되며, 효과적인 스크램블이 실현된다.
또한, 데이터 내용에 무관계하게 배타 논리합 연산(EXOR)을 하는 경우에서도 트랜스포트 스트림의 대부분이 VLC 데이터이므로, 높은 확률로 데이터를 효과적으로 스크램블할 수가 있다. 즉, 처리 데이터를 보통(普通)으로 재생해도 올바른 영상이 나오지 않는다.
또한, I 픽쳐의 장소(場所; location)는 클립 인포메이션(Clip Information)에 포함되는 EP 맵(EP_map)에 의해서 구할 수가 있다. 도 22에 도시하는 바와 같이, EP 맵(EP_map)(501)은 클립 인포메이션에 포함되는 데이터이다.
EP 맵에 의거하는 I 픽쳐 위치의 검출에 대해서, 도 23을 참조하여 설명한다. 도 23의 (A)는 클립 AV 스트림(Clip AV stream)을 도시하고, 각 직사각형(矩形; rectangle)은 192비트 소스 패킷(source packet)을 나타내고 있다. 각 소스 패킷에는 타임 스탬프가 설정되고 재생 처리 시간이 규정되어 있다.
도 23의 (B)에, 소스 패킷 No. (X1)의 상세 구성을 도시한다. 1개의 소스 패 킷은 TP_extra 헤더와 트랜스포트 패킷에 의해서 구성되고, 트랜스포트 패킷에는, 각종 헤더 정보와 MPEG2 실체(實體; entity) 데이터로서의 I-PICH∼의 데이터에 의해서 구성된다.
도 23의 (C)에 도시하는 클립 인포메이션에는, 전술한 바와 같이 EP 맵이 포함된다. EP 맵에는, 도면에 도시하는 바와 같이, [PTS_EP start], [SPN_EP start], [I_end_position_offset]의 각 데이터가 포함된다. 각 데이터의 의미는, 이하와 같다.
PTS_EP_start:시퀀스 헤더를 포함하는 source packet에 대응하는 타임 스탬프.
SPN_EP_start:시퀀스 헤더를 포함하는 source packet의 선두 어드레스.
I_end_position_offset:시퀀스 헤더를 포함하는 source packet으로부터, I 픽쳐의 마지막(終; end)을 포함하는 source packet의 오프셋(offset)
이들 데이터 관계를 도시하는 것이 도 23의 (D)이다.
즉, 도 23의 (B)에 도시하는 바와 같이, 소스 패킷에 포함되는 데이터의 구성이 규정되어 있고, 도 23의 (C)에 도시하는 [PTS_EP start], [SPN_EP start], [I_end_position_offset]의 각 데이터를 EP 맵으로부터 구함으로써, 이들 데이터에 의거해서, 소스 패킷중의 I 픽쳐 위치가 구해지게 된다.
데이터 기록시, 데이터 재생시에는, 이 EP 맵 정보로부터 I 픽쳐 위치를 구해서, 소정의 n비트(32비트) 값을 적용한 배타 논리합 연산(EXOR)을 행하게 된다.
또한, 이와 같이 EP 맵을 적용하는 일 없이, 배타 논리합 연산(EXOR)해야 할 장소 모두의 논리 블록 어드레스(Logical Block Address)를 기술한 테이블을 준비하고, 이 테이블에 의거해서 스크램블 위치를 구하는 구성으로 해도 좋다. 이 경우에는, 이 테이블도 스크램블 룰로서 정보 기록 매체에 기록한다. 재생 처리시에 스크램블 해제를 실행하는 경우에는, 이 테이블과 도 22에 도시한 배타 논리합 값으로 이루어지는 스크램블 룰에 의거해서, 스크램블(EXOR) 위치와 값을 취득해서 EXOR 처리를 실행하여 스크램블 해제를 행한다.
I 픽쳐의 슬라이스를 부호화한 VLC에 대해서 스크램블, 즉 배타 논리합(EXOR) 연산을 실행하는 처리예에 대해서, 도 24를 참조하여 설명한다. 도 24에 도시하는 바와 같이, I 픽쳐의 슬라이스를 부호화한 VLC는 각 슬라이스의 선두 위치를 나타내는 스타트 코드(start code)에 의해서 구분되어 있으며, 어서링 퍼실러티에서는, 스크램블 룰에 의거해서 결정되는 값(32비트값(Vi))을 취득하고, 미리 정해진 MPEG2 트랜스포트 스트림의 슬라이스 위치에 스크램블 룰로부터 취득한 n비트(32비트) 값을 배타 논리합(EXOR)하는 처리를 실행한다.
각 슬라이스는 VLC 부호화되어 있으므로, 배타 논리합(EXOR) 연산에 의해 일부 데이터의 개서가 발생하면, 슬라이스에 대응하는 GOP 전체의 복호(MPEG 디코드)가 불가능하게 된다. 이와 같이, I 픽쳐의 슬라이스를 부호화한 VLC에 대해서 스크램블, 즉 배타 논리합(EXOR)하는 처리에 의해서 효과적인 스크램블이 가능해진다.
(b2) 시퀀스 헤더의 일부 혹은 모두
다음에, 시퀀스 헤더의 일부 혹은 모두를 배타 논리합(EXOR) 연산 대상 데이터로서 설정한 예에 대해서 설명한다.
시퀀스 헤더는 GOP의 선두에 부가되는 헤더이다. 이 시퀀스 헤더의 장소에 대해서도, 앞서 설명한 EP 맵에 의거해서 산출할 수가 있다. 또한, 상술한 경우와 마찬가지로, EP 맵을 적용하는 일 없이, 배타 논리합 연산(EXOR)해야 할 장소 모두의 논리 블록 어드레스(Logical Block Address)를 기술한 테이블을 준비하고, 이 테이블에 의거해서 스크램블 위치를 구하는 구성으로 해도 좋다. 이 경우에는, 이 테이블도 스크램블 룰로서 정보 기록 매체에 기록한다. 재생 처리시에 스크램블 해제를 실행하는 경우에는, 이 테이블과 도 22에 도시한 배타 논리합 값으로 이루어지는 스크램블 룰에 의거해서, 스크램블(EXOR) 위치와 값을 취득해서 EXOR 처리를 실행해서 스크램블 해제를 행한다.
시퀀스 헤더는 MPEG 디코드 처리의 처리 형태를 결정하기 위한 정보가 기록되어 있으며, 이 정보없이는 올바른 복호(MPEG 디코드)는 불가능하게 된다. 따라서, 이 시퀀스 헤더의 값을 배타 논리합 연산(EXOR)에 의해서 개서하는 것에 의해 데이터 복원을 불가능하게 할 수 있어, 효과적인 스크램블이 실현된다.
도 25에 시퀀스 헤더에 대해서 스크램블, 즉 배타 논리합(EXOR) 연산을 실행한 처리예를 도시한다. 도 25에 도시하는 바와 같이, 시퀀스 헤더를 포함하는 데이터 영역에 대해서, 복수의 32비트 값(V(i))을 적용해서, 배타 논리합(EXOR)하는 처리를 실행한다.
배타 논리합(EXOR)에 적용하는 값은 스크램블 룰로부터 취득한다. 즉, 예를 들면 도 22에 도시하는 각각 32비트의 값을 규정한 데이터를 적용한다. 스크램블 해제의 경우도 이들 데이터를 취득해서 동일 위치에, 배타 논리합(EXOR)하는 처리 를 실행함으로써 오리지날의 시퀀스 헤더 정보를 취득할 수가 있다.
(b3) TS 패킷 내의 패킷 식별자
다음에, TS 패킷 내의 패킷 식별자를 배타 논리합(EXOR) 연산 대상 데이터로서 설정한 예에 대해서 설명한다.
TS 패킷 내의 패킷 식별자는 트랜스포트 패킷 내에 있는 13비트의 데이터이다(도 19 참조). 이 패킷 식별자 데이터는 트랜스포트 패킷에 포함되는 데이터 내용, 즉 비디오 데이터인지 오디오 데이터인지 등의 데이터 종별을 판별하기 위한 데이터이며, 디코드 처리에는 불가결(不可缺)한 데이터로 된다. 이 데이터를 배타 논리합(EXOR) 연산에 의해 개서함으로써, 올바른 디코드를 불가능으로 하는 것이 가능해져 효과적인 스크램블이 실현된다.
TS 패킷 내의 패킷 식별자 위치는 미리 규정되어 있고, 용이하게 구하는 것이 가능하다. 다만, 이 처리 예의 경우도, 전술의 예와 마찬가지로, 배타 논리합 연산(EXOR)해야 할 장소 모두의 논리 블록 어드레스(Logical Block Address)를 기술한 테이블을 준비하고, 이 테이블에 의거해서 스크램블 위치를 구하는 구성으로 해도 좋다. 이 경우에는, 이 테이블도 스크램블 룰로서 정보 기록 매체에 기록한다. 재생 처리시에 스크램블 해제를 실행하는 경우에는, 이 테이블과 도 22에 도시한 배타 논리합 값으로 이루어지는 스크램블 룰에 의거해서, 스크램블(EXOR) 위치와 값을 취득해서 EXOR 처리를 실행해서 스크램블 해제를 행한다.
앞서 도 20을 참조하여 설명한 처리예에서는, 스크램블 처리로서의 배타 논리합(EXOR) 연산 처리를 어서링 퍼실러티가 실행하는 처리예를 설명했지만, 다음에 도 26을 참조하여, 스크램블 처리로서의 배타 논리합(EXOR) 연산 처리와 암호화 처리의 2개의 처리를 디스크 공장(암호화 퍼실러티)에서 실행하는 예에 대해서 설명한다.
도 26의 (A)는 MPEG2 트랜스포트 스트림의 구성 데이터이다. 어서링 퍼실러티는 편집필(編集畢; edited) 컨텐츠로서 MPEG2 트랜스포트 스트림을 생성하고, 이것을 암호화 퍼실러티로서의 디스크 공장에 제공한다.
암호화 퍼실러티로서의 디스크 공장은 스크램블 룰에 의거해서 결정되는 값(32비트값(Vi))을 취득하고, 미리 정해진 MPEG2 트랜스포트 스트림의 구성 데이터 위치에 스크램블 룰로부터 취득한 n비트(32비트) 값을 배타 논리합(EXOR)하는 처리를 실행하여, 도 26의 (B) EXOR필 평문을 생성한다.
스크램블 룰은 예를 들면, 도 21에 도시하는 룰로서 설정된다. 도 21에는, V(1)∼V(n)의 32비트 데이터가 저장되고, 이들 각 V(i) 값이 MPEG2 트랜스포트 스트림으로부터 선택된 n개소의 32비트 데이터에 순차, 배타 논리합(EXOR)이 행해져서 데이터의 개서가 실행되고, 스크램블 처리가 행해지게 된다. 또한, 1개의 값, 예를 들면 V(1)만을 스크램블 룰로서 설정하고, MPEG2 트랜스포트 스트림으로부터 선택된 n개소의 32비트 데이터에 순차, 동일한 값 V(1)를 배타 논리합(EXOR)하는 구성으로 해도 좋다.
암호화 퍼실러티로서의 디스크 공장은 또, 이 데이터에 대해서 암호화 처리를 실행해서, 도 26의 (C)에 도시하는 EXOR필 암호문을 생성한다. 암호화 처리는 앞서 도 10∼도 12를 참조하여 설명한 AES_ECBC 모드를 적용한 처리가 적용된다.
이와 같이, 배타 논리합 연산(EXOR)이 행해진 데이터를 디코드해도 올바른 데이터는 취득할 수 없다. 올바른 데이터를 취득하기 위해서는, 배타 논리합(EXOR)에 적용된 소정의 n비트(32비트) 값을 소정 개소에 재차 배타 논리합(EXOR)해서, 오리지날의 트랜스포트 스트림 데이터를 복원한다고 하는 스크램블 해제 처리가 필요하게 된다. 소정의 n비트(32비트) 값은 스크램블 룰에 의해서 규정되어 있으며, 정당한 수속 하에서의 스크램블 룰 해석을 행하는 것이 필요하게 된다.
[(2-3) 로테이션 처리]
다음에, 스크램블 처리로서, 로테이션 처리를 적용한 처리예에 대해서 설명한다.
스크램블 처리로서 로테이션 처리를 적용하는 처리는 평문의 트랜스포트 스트림 데이터 상의 소정 개소의 n비트(예를 들면, 32비트) 데이터를, 스크램블 룰에 의해서 규정되는 비트수 분(分; 만큼, 정도)의 로테이션을 실행하는 처리로서 실행된다. 소정의 로테이션 비트수는 스크램블 룰에 의해서 규정되는 값이다.
도 27을 참조하여, 어서링 퍼실러티에서 스크램블 처리(로테이션 처리)를 실행하는 경우의 컨텐츠(MPEG2 스트림 데이터)의 변천에 대해서 설명한다.
도 27의 (A)는 MPEG2 트랜스포트 스트림의 구성 데이터이다. 어서링 퍼실러티에서는, 스크램블 룰에 의거해서 결정되는 로테이션 비트수를 취득하고, 미리 정해진 MPEG2 트랜스포트 스트림의 로테이션 영역(611, 612)의 구성 비트를, 스크램블 룰로부터 취득한 로테이션 비트수에 의거해서 취득 비트수 분의 로테이션 처리를 실행하여, 도 27의 (B) 로테이션필(畢)(retated) 평문을 생성한다.
스크램블 룰은 예를 들면 도 28에 도시하는 룰로서 설정된다. 도 28에는, V(1)∼V(n)의 로테이션 비트수 데이터가 저장된다.
이 테이블을 이용해서 다음과 같이 로테이션(비트 교체)을 행한다.
로테이션 위치의 1개소째는 왼쪽(左)으로 V(1) 비트 시프트
로테이션 위치의 2개소째는 왼쪽으로 V(2) 비트 시프트
로테이션 위치의 3개소째는, 왼쪽으로 V(3) 비트 시프트
로테이션 위치의 n개소째는 왼쪽으로 V(n) 비트 시프트
스크램블 처리로서 로테이션 처리를 실행하는 경우에는, 이 테이블이 스크램블 룰로서 정보 기록 매체에 저장된다. 이 테이블은 예를 들면 암호화를 행해서 디스크에 기록하여 룰이 해독되지 않도록 이루어진다. 또한, 모든 로테이션 위치에 대해서, 동일한 비트수 분의 로테이션을 행하는 구성으로 해도 좋고, 이 경우에는, 1개의 시프트량 [V(1)]만을 스크램블 룰로서 규정하면 좋다. 또한, 예를 들면 32비트의 유닛 내에서 로테이션을 행하는 경우에는, 시프트량(X)은 X, 32의 설정으로 규정된다.
스크램블 처리로서 로테이션을 행하는 경우에는, 정보 기록 매체에 기록되는 스크램블 룰은 도 28에 도시하는 룰, 즉 로테이션의 비트수 데이터값이 기록되게 된다. 재생 처리에서의 스크램블 해제 시에는, 이 값에 의거해서 재차 역(逆)로테이션(reverse-rotation)을 실행함으로써, 오리지날 데이터를 복원하는 것이 가능해진다.
도 27로 되돌아가서, 어서링 퍼실러티에서 스크램블 처리(로테이션 처리)를 실행하는 경우의 컨텐츠(MPEG2 스트림 데이터)의 변천에 대한 설명을 계속한다. 어서링 퍼실러티에서는, 예를 들면 도 28에 도시하는 스크램블 룰을 적용해서 로테이션 처리를 실행한다.
로테이션 위치 611의 32비트 데이터는 본래 b0∼b31의 시퀀스로 설정되어 있던 32비트 데이터이지만, 로테이션에 의해서 [b11]이 선두로 시프트되어 있다. 즉, 11비트 왼쪽 시프트가 실행되어 있다. 마찬가지로, 로테이션 위치 612의 32비트 데이터는 본래 b0∼b31의 시퀀스로 설정되어 있던 32비트 데이터이지만, 로테이션에 의해서 [b25]가 선두로 시프트되어 있다. 즉, 25비트 왼쪽 시프트가 실행되어 있다. 이 시프트량은 스크램블 룰에 의거해서 결정된다. 어서링 퍼실러티는 이와 같이 스크램블 룰에 의거하는 로테이션 처리를 실행하여, 도 27의 (B)에 도시하는 로테이션필 평문을 생성하고, 이 데이터를 암호화 퍼실러티로서의 디스크 공장에 제공한다.
암호화 퍼실러티로서의 디스크 공장은 이 수령 데이터에 대해서 암호화 처리를 실행하여, 도 27의 (C)에 도시하는 로테이션필 암호문을 생성한다. 암호화 처리는 앞서 도 10∼도 12를 참조하여 설명한 AES_ECBC 모드를 적용한 처리가 적용된다.
이와 같이, 로테이션 처리가 행해진 데이터를 디코드해도 올바른 데이터는 취득할 수 없다. 올바른 데이터를 취득하기 위해서는, 로테이션 처리의 실행 위치 데이터를 로테이션 실행 비트수 분, 올바르게 역로테이션하는 것이 필요하고, 이 처리에 의해서 스크램블 해제가 가능해진다. 로테이션 비트수는 스크램블 룰에 의해서 규정되어 있으며, 정당한 수속 하에서의 스크램블 룰 해석을 행하는 것이 필요하게 된다.
또한, 스크램블 처리로서 로테이션 처리를 적용하는 경우의 적용 데이터 위치는 전술한 배타 논리합 연산(EXOR) 처리의 적용 대상 데이터 위치와 마찬가지로,
(a) 소정의 패턴으로 데이터 내용에 무관계하게 로테이션 처리를 행한다.
(b) 특정의 선택 개소에만 로테이션 처리를 행한다.
이들 (a), (b)의 어느것인가의 처리가 가능하다.
또, 상기 (b) 특정의 선택 개소에만 로테이션 처리를 가하는 경우에는,
(b1) I 픽쳐의 슬라이스를 부호화한 VLC(가변길이 런렝스 부호화 데이터)의 일부
(b2) 시퀀스 헤더의 일부 혹은 모두
(b3) TS 패킷 내의 패킷 식별자
이들 3개소의 어느것인가를 로테이션 위치로서 선택 가능하다.
도 27을 참조하여 설명한 처리예에서는, 스크램블 처리로서의 로테이션 처리를 어서링 퍼실러티가 실행하는 처리예를 설명했지만, 다음에 도 29를 참조하여, 스크램블 처리로서의 로테이션 처리와 암호화 처리의 2개의 처리를 디스크 공장(암호화 퍼실러티)에서 실행하는 예에 대해서 설명한다.
도 29의 (A)는 MPEG2 트랜스포트 스트림의 구성 데이터이다. 어서링 퍼실러티는 편집필 컨텐츠로서 MPEG2 트랜스포트 스트림을 생성하고, 이것을 암호화 퍼실 러티로서의 디스크 공장에 제공한다.
암호화 퍼실러티로서의 디스크 공장은 스크램블 룰에 의거해서 결정되는 로테이션 비트수를 취득하고, 미리 정해진 MPEG2 트랜스포트 스트림의 구성 데이터 위치에 스크램블 룰로부터 취득한 로테이션 비트수 분의 로테이션 처리를 실행하여, 도 29의 (B) 로테이션필 평문을 생성한다.
로테이션 영역 621의 32비트 데이터는 로테이션에 의해서 [b11]이 선두로 시프트되어 있다. 즉, 11비트 왼쪽 시프트가 실행되어 있다. 마찬가지로, 로테이션 영역 622의 32비트 데이터는 로테이션에 의해서 [b25]가 선두로 시프트되어 있다. 즉, 25비트 왼쪽 시프트가 실행되어 있다. 이 시프트량은 스크램블 룰에 의거해서 결정된다. 스크램블 룰은 예를 들면 도 28에 도시하는 룰로서 설정된다. 암호화 퍼실러티로서의 디스크 공장은 또, 이 데이터에 대해서 암호화 처리를 실행하여, 도 29의 (C)에 도시하는 로테이션필 암호문을 생성한다. 암호화 처리는 앞서 도 10∼도 12를 참조하여 설명한 AES_ECBC 모드를 적용한 처리가 적용된다.
이와 같이, 로테이션이 행해진 데이터를 디코드해도 올바른 데이터는 취득할 수 없다. 올바른 데이터를 취득하기 위해서는, 로테이션 처리의 실행 위치 데이터를 로테이션 실행 비트수 분, 올바르게 역로테이션하는 것이 필요하고, 이 처리에 의해서 스크램블 해제가 가능해진다. 로테이션 비트수는 스크램블 룰에 의해서 규정되어 있고, 정당한 수속 하에서의 스크램블 룰 해석을 행하는 것이 필요하게 된다.
또한, 여기까지, 스크램블 처리의 형태로서 셔플 처리, 배타 논리합(EXOR) 처리, 로테이션 처리의 3종류를 설명했지만, 이들 스크램블 처리는 조합해서 적용하는 구성으로 해도 좋다.
또, 스크램블 처리의 대상 데이터로서, 배타 논리합(EXOR) 처리와 로테이션 처리에 대해서는,
(1) MPEG 인코드 데이터에 포함되는 I 픽쳐 슬라이스 부호화 데이터의 일부
(2) 시퀀스 헤더의 일부
(3) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 기록한 패킷 식별자 데이터
의 적어도 어느것인가를 포함하는 데이터로 하는 설정예에 대해서 설명했지만, 셔플 처리에 대해서도 마찬가지로, 상기(1)∼(3)의 어느것인가를 포함하는 데이터를 선택해서 셔플을 행하는 구성으로 해도 좋다.
[3. 정보 처리 장치의 구성예]
다음에, 도 30을 참조하여, 상술한 각종 스크램블 처리를 행한 컨텐츠의 기록 처리 또는 재생 처리를 행하는 정보 처리 장치의 구성예에 대해서 설명한다.
정보 처리 장치(800)는 정보 기록 매체(891)의 구동을 행하고, 데이터 기록 재생 신호의 입출력을 행하는 드라이브(890), 각종 프로그램에 따른 데이터 처리를 실행하는 CPU(870), 프로그램, 파라미터 등의 기억 영역으로서의 ROM(860), 메모리(880), 디지털 신호를 입출력하는 입출력 I/F(810), 아날로그 신호를 입출력하고, A/D, D/A 컨버터(841)를 가지는 입출력 I/F(840), MPEG 데이터의 인코드, 디코드 처리를 실행하는 MPEG 코덱(codec)(830), TS(Transport Stream)·PS(Program Stream) 처리를 실행하는 TS·PS 처리 수단(820), 각종 암호 처리를 실행하는 암호 처리 수단(850), 스크램블 처리 또는 스크램블 해제 처리를 실행하는 스크램블 처리 수단(855)을 가지고, 버스(801)에 각 블록이 접속되어 있다.
우선, 데이터 기록시의 동작에 대해서 설명한다. 기록을 행하는 데이터로서 디지털 신호 입력과 아날로그 신호 입력의 2개의 케이스가 상정(想定)된다.
디지털 신호의 경우, 디지털 신호용 입출력 I/F(810)로부터 입력되고, CPU(870), TS·PS 처리 수단(820)에 의해서 보존용의 데이터 형식으로 변환하고, MPEG 코덱(830)에 의해서 예를 들면 MPEG2 형식으로의 데이터 변환 처리를 행하고, 스크램블 처리 수단(855)에서 소정의 스크램블 룰에 따른 스크램블 처리를 실행한다. 스크램블 룰은 예를 들면 메모리(880)에 저장되어 있다. 스크램블 처리의 형태로서는, 상술한 바와 같이 셔플 처리, 배타 논리합(EXOR) 처리, 혹은 로테이션 처리의 어느것인가를 적용한 처리를 행한다. 셔플 처리, 배타 논리합(EXOR) 처리, 혹은 로테이션 처리의 어느것을 적용하는 경우에서도, 컨텐츠 또는 컨텐츠 관리 유닛마다 다른 룰의 적용이 가능하다.
또한, 셔플 처리, 배타 논리합(EXOR) 처리, 혹은 로테이션 처리의 어느것인가 1개의 수법에 따르는 스크램블 처리가 아니라, 셔플 처리, 배타 논리합(EXOR) 처리, 로테이션 처리를 복수 조합해서 적용한 스크램블 처리를 실행하는 구성으로 해도 좋다.
스크램블 처리가 실행된 데이터는 다음에, 암호화 처리 수단(850)에 의해서 암호화 처리가 행해진다. 암호화 처리는 앞서 도 10∼도 12를 참조하여 설명한 바와 같이, 예를 들면 AES_ECBC 모드를 적용한 처리로서 실행된다. AES_ECBC 모드를 적용한 암호화 처리 단위는 2KB 단위, 6KB 단위 등, 여러가지 설정이 가능하다. 암호화 처리 수단(850)에 의해서 암호화 처리가 행해진 데이터가 정보 기록 매체(891)에 보존된다.
아날로그 신호의 경우, 입출력 I/F(840)에 입력된 아날로그 신호는 A/D 컨버터(841)에 의해서 디지털 신호로 되고, MPEG 코덱(830)에 의해서 기록시에 사용되는 코덱으로 변환된다. 그 후, TS·PS 처리 수단(820)에 의해 기록 데이터의 형식인 AV 다중화 데이터로 변환되며, 필요에 따라서, 스크램블 처리 수단(855)에 의한 스크램블 처리, 암호화 처리 수단(850)에 의한 암호화 처리가 행해져서, 기록 매체(891)에 보존된다.
다음에, 정보 기록 매체로부터의 데이터 재생을 행하는 경우의 처리에 대해서 설명한다. 예를 들면, MPEG-TS 데이터로 이루어지는 AV 스트림 데이터의 재생을 행하는 경우, 드라이브(890)에서 정보 기록 매체(891)로부터 판독출력된 데이터는 컨텐츠 관리 유닛으로서 식별되면, 컨텐츠 관리 유닛에 대응하는 유닛 열쇠의 취득 처리가 실행되고, 취득된 유닛 열쇠에 의거해서, 암호화 처리 수단(850)으로 암호를 풀고, 그 후, 스크램블 해제 처리가 실행된다.
스크램블 해제 처리시에는, 스크램블 룰을 정보 기록 매체(891)로부터 판독출력해서, 재생 대상 컨텐츠에 적용되고 있는 스크램블 룰을 해석하는 것이 필요하게 된다. 예를 들면, 컨텐츠의 스크램블이 셔플 처리로서 실행되고 있는 경우에는, 도 9의 (A)에 도시하는 셔플 엘리멘트의 시퀀스를 설정한 스크램블 룰, 배타 논리합(EXOR)이면, 도 21에 도시하는 배타 논리합(EXOR)의 값을 설정한 스크램블 룰, 로테이션이면 도 28에 도시하는 로테이션(시프트) 비트수를 설정한 스크램블 룰을 취득하고, 이들 취득 룰에 의거해서 스크램블 해제를 실행한다. 또한, 전술한 바와 같이, 스크램블 룰의 해석 및 스크램블 해제 처리는 시큐어한 데이터 처리로서 실행된다. 구체적으로는, 예를 들면 정보 기록 매체에 저장되는 스크램블 룰은 Java 시큐어 코드로 기록되고, 스크램블 룰 해석, 스크램블 해제 처리는 컨텐츠 재생을 실행하는 정보 처리 장치에 설정되는 JavaVM(버추얼 머신) 상에서 실행된다.
스크램블 해제가 이루어진 컨텐츠 데이터는 다음에, TS(Transport Stream)·PS(Program Stream) 처리 수단(820)에 의해서 Video, Audio, 자막등의 각 데이터로 나뉘어진다. 또, MPEG 코덱(830)에서 복호된 디지털 데이터는 입출력 I/F(840)내의 D/A 컨버터(841)에 의해서 아날로그 신호로 변환되어 출력된다. 또, 디지털 출력을 행하는 경우, MPEG-TS 데이터는 입출력 IF(810)를 통해서 디지털 데이터로서 출력된다. 이 경우의 출력은 예를 들면 IEEE1394나 이서네트(ethernet) 케이블, 무선 LAN 등의 디지털 인터페이스에 대해서 행해진다. 또한, 네트워크 접속 기능에 대응하는 경우, 입출력 IF(810)는 네트워크 접속의 기능을 구비한다. 또, 재생 장치 내에서 출력처(出力先; output) 기기가 수신 가능한 형식으로 데이터 변환을 해서 출력을 행하는 경우, 일단, TS·PS 처리 수단(820)에서 분리한 Video, Audio, 자막 등에 대해서 MPEG 코덱(830)에서 레이트(rate) 변환, 코덱 변환 처리를 가(加)하고, TS·PS 처리 수단(820)에서 재차 MPEG-TS나 MPEG-PS 등에 다중화를 행한 데이터를 디지털용 입출력 I/F(810)로부터 출력한다. 또는, CPU(870)를 사용해서 MPEG 이외의 코덱, 다중화 파일에 변환을 해서 디지털용 입출력 I/F(810)로부터 출 력하는 것도 가능하다.
또한, 재생 처리, 기록 처리를 실행하는 프로그램은 ROM(860) 내에 보관되어 있으며, 프로그램의 실행 처리중에는 필요에 따라서, 파라미터, 데이터의 보관, 워크 영역으로서 메모리(880)를 사용한다. 또한, 도 30에서는 데이터 기록, 재생이 가능한 장치 구성을 도시하여 설명했지만, 재생 기능뿐인 장치, 기록 기능만을 가지는 장치도 구성 가능하고, 이들 장치에서도 본 발명의 적용이 가능하다.
이상, 특정 실시예를 참조하면서, 본 발명에 대해서 상세하게 풀이(詳解)해 왔다. 그러나, 본 발명의 요지를 일탈하지 않는 범위에서 당업자(當業者)가 그 실시예의 수정이나 대용(代用)을 할 수 있는 것은 자명(自明)하다. 즉, 예시라고 하는 형태로 본 발명을 개시해 온 것이며, 한정적으로 해석되어서는 안 된다. 본 발명의 요지를 판단하기 위해서는, 특허청구범위의 란을 참작해야 한다.
또한, 명세서 중에서 설명한 일련의 처리는 하드웨어 또는 소프트웨어, 혹은 양자의 복합 구성에 의해서 실행하는 것이 가능하다. 소프트웨어에 의한 처리를 실행하는 경우에는, 처리 시퀀스를 기록한 프로그램을 전용 하드웨어에 실장(組入; built-in)된 컴퓨터 내의 메모리에 인스톨해서 실행시키거나, 혹은 각종 처리가 실행 가능한 범용 컴퓨터에 프로그램을 인스톨해서 실행시키는 것이 가능하다.
예를 들면, 프로그램은 기록 매체로서의 하드 디스크나 ROM(Read Only Memory)에 미리 기록해 둘 수가 있다. 혹은, 프로그램은 플렉시블 디스크, CD-ROM(Compact Disc Read Only Memory), MO(Magneto optical) 디스크, DVD(Digital Versatile Disc), 자기(磁氣) 디스크, 반도체 메모리 등의 리무버블(removable) 기록 매체에, 일시적 혹은 영속적(永續的)으로 저장(기록)해 둘 수가 있다. 이와 같은 리무버블 기록 매체는 소위 패키지 소프트웨어로서 제공할 수가 있다.
또한, 프로그램은 상술한 바와 같은 리무버블 기록 매체로부터 컴퓨터에 인스톨하는 것 이외, 다운로드 사이트로부터 컴퓨터에 무선 전송(轉送)하거나, LAN(Local Area Network), 인터넷과 같은 네트워크를 거쳐서, 컴퓨터에 유선으로 전송하고, 컴퓨터에서는 그와 같이 해서 전송되어 오는 프로그램을 수신하여, 내장(內藏; internal)하는 하드 디스크 등의 기록 매체에 인스톨할 수가 있다.
또한, 명세서에 기재된 각종 처리는, 기재(記載)에 따라서 시계열(時系列; chronologically)로 실행될 뿐만 아니라, 처리를 실행하는 장치의 처리 능력 혹은 필요에 따라서 병렬적으로 혹은 개별적으로 실행되어도 좋다. 또, 본 명세서에서 시스템이라 함은, 복수의 장치의 논리적 집합 구성이며, 각 구성의 장치가 동일 하우징 내에 있는 것에는 한정되지 않는다.
이상, 설명한 바와 같이, 본 발명의 구성에 의하면, 저작권 관리 등 이용 관리가 요구되는 여러가지 컨텐츠에 대한 스크램블 처리를 획일적인 처리로 하는 일 없이, 여러가지 다른 형태로의 스크램블 처리 형태를 설정하고, 많은 스크램블 처리 형태로부터 컨텐츠마다 혹은 관리 유닛마다 선택된 형태로 스크램블 처리를 실행하는 구성으로 했으므로, 만에 하나, 어떤 컨텐츠에 대응하는 스크램블이 부정하게 해석되어, 컨텐츠가 누설되어 버린 경우에서도, 다른 스크램블 형태로 스크램블 처리가 행해진 컨텐츠는 스크램블 해제가 불가능하여, 컨텐츠의 누설을 최소한에 그치게 할 수가 있다.
본 발명의 구성에 의하면, 스크램블 처리로서 예를 들면, 셔플 처리, 배타 논리합 처리, 로테이션 처리를 실행하고, 셔플 처리에서는 여러가지 셔플 형태를 스크램블 룰로서 규정하고, 배타 논리합 처리에서는 배타 논리합에 적용하는 값을 스크램블 룰로서 규정하고, 로테이션 처리에서는 로테이션 시프트량을 스크램블 룰로서 규정할 수가 있다. 예를 들면, 셔플 처리에서는32개의 셔플 엘리멘트를 적용하는 경우, 32! 의 다른 셔플 형태, 즉 스크램블 룰이 규정 가능해진다. 또, 배타 논리합 처리에서는 배타 논리합에 적용하는 값, 로테이션 처리에서는 시프트량을 여러가지 값으로 설정 가능하고, 많은 스크램블 룰의 설정이 가능해져, 각 컨텐츠에 대해서 이들 많은 스크램블 룰로부터 선택한 룰에 의거하는 스크램블을 행하는 구성이 실현되고, 특정 스크램블 룰의 누설에 의거해서 많은 컨텐츠가 누설되는 사태를 방지할 수가 있다.

Claims (38)

  1. 정보 기록 매체 제조 방법으로서,
    정보 기록 매체에 기록될 컨텐츠에 적용되며 미리 설정된 설정값을 기술하는 스크램블 룰(scramble rule)을 취득하는 스텝과;
    취득한 스크램블 룰에 따라서 컨텐츠에 대한 스크램블 처리를 실행하는 것에 의해 스크램블된 컨텐츠를 생성하는 스텝으로서,
    상기 스크램블 처리는,
    (a) 트랜스포트 스트림(transport stream) 패킷 내의 데이터 종별 정보를 포함하는 패킷 식별자(packet identifier) 데이터를 포함하는 컨텐츠 데이터와,
    (b) 상기 미리 설정된 설정값이나 상기 미리 설정된 설정값에 기초하여 산출된 값
    의 배타 논리합 연산 처리를 포함하는, 스크램블된 컨텐츠를 생성하는 스텝과;
    상기 정보 기록 매체에 기록하는 스텝으로서,
    (a) 생성한 상기 스크램블된 컨텐츠와,
    (b) 상기 배타 논리합 연산 처리에서 실행된 상기 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터의 위치를 기술하는 테이블과,
    (c) 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터에 적용되는 스크램블 룰
    을 상기 정보 기록 매체 상에 기록하는 스텝
    을 포함하는 것을 특징으로 하는 정보 기록 매체 제조 방법.
  2. 제1항에 있어서,
    상기 정보 기록 매체에 기록될 컨텐츠가 복수(複數) 있는 경우에서, 다른 기록될 컨텐츠 또는 관리 유닛을 위한 다른 스크램블 룰을 취득하는 스텝을 포함하는 것을 특징으로 하고, 상기 관리 유닛은 상기 다른 기록될 컨텐츠에 할당되는 타이틀 열쇠의 할당 단위이며, 상기 타이틀 열쇠는 컨텐츠의 암호화 및 복호화에 적용되는 수단인 정보 기록 매체 제조 방법.
  3. 제1항에 있어서,
    상기 정보 기록 매체에 기록될 컨텐츠 데이터의 적어도 일부를 치환(置換)하는 처리를 실행하는 스텝을 포함하며,
    상기 스크램블 룰은 그 컨텐츠 데이터가 치환되는 위치를 지시하는 데이터를 포함하는 것을 특징으로 하는 정보 기록 매체 제조 방법.
  4. 제1항에 있어서,
    상기 정보 기록 매체에 기록될 다른 컨텐츠에 적용할 다른 스크램블 룰을 취득하는 스텝과;
    컨텐츠를 포함하는 데이터로서 설정되는 셔플(shuffle) 엘리멘트(element)의 셔플 처리를 포함하는 다른 스크램블 처리를 실행하는 것에 의해 다른 스크램블된 컨텐츠를 생성하는 스텝
    을 포함하며,
    상기 다른 스크램블 룰은, 상기 셔플 엘리멘트의 셔플 형태(態樣; state)를 기술(記述)한 데이터를 포함하는 것을 특징으로 하는 정보 기록 매체 제조 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 정보 기록 매체에 기록될 다른 컨텐츠에 적용할 다른 스크램블 룰을 취득하는 스텝과;
    컨텐츠를 포함하는 데이터의 로테이션(rotation) 처리를 포함하는 다른 스크램블 처리를 실행하는 것에 의해 다른 스크램블된 컨텐츠를 생성하는 스텝
    을 포함하며,
    상기 다른 스크램블 룰은, 로테이션에서의 시프트량(量)을 기술한 데이터를 포함하는 것을 특징으로 하는 정보 기록 매체 제조 방법.
  7. 제1항에 있어서,
    상기 정보 기록 매체의 스크램블되어 기록된 컨텐츠는 암호 처리되는 것을 특징으로 하는 정보 기록 매체 제조 방법.
  8. 제7항에 있어서,
    컨텐츠를 포함하는 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리를 포함하는 다른 스크램블 처리를 실행하는 것에 의해 다른 스크램블된 컨텐츠를 생성하는 스텝과;
    상기 셔플 엘리멘트와 동일 사이즈의 데이터 단위에 대해 CBC 모드의 암호 처리를 실행하는 스텝
    을 포함하는 것을 특징으로 하는 정보 기록 매체 제조 방법.
  9. 제1항에 있어서,
    상기 배타 논리합 연산 처리에서 실행되는 처리 대상(對象) 컨텐츠 데이터는,
    (1) MPEG 인코드된 데이터에 포함되는 I 픽쳐(picture) 슬라이스 부호화(符號化)된 데이터의 일부와;
    (2) 시퀀스 헤더(sequence header)의 일부
    중 적어도 하나를 더 포함하는 것을 특징으로 하는 정보 기록 매체 제조 방법.
  10. 정보 기록 매체에 대한 컨텐츠 기록 처리를 실행하는 정보 처리 장치로서,
    프로세서와;
    명령을 저장하는 메모리 디바이스로서, 상기 명령이 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    (a) 상기 정보 기록 매체에 기록될 컨텐츠에 적용되며 미리 설정된 설정값을 기술하는 스크램블 룰을 취득하는 스텝과;
    (b) 취득한 스크램블 룰에 따라서 컨텐츠에 대해 스크램블 처리를 실행하는 것에 의해 스크램블된 컨텐츠를 생성하는 스텝으로서,
    상기 스크램블 처리는,
    (i) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 포함하는 패킷 식별자 데이터를 포함하는 컨텐츠 데이터와,
    (ⅱ) 상기 미리 설정된 설정값이나 상기 미리 설정된 설정값에 기초하여 산출된 값
    의 배타 논리합 연산 처리를 포함하는, 스크램블된 컨텐츠를 생성하는 스텝과;
    (c) 정보 기록 매체에 기록하는 스텝으로서,
    (i) 생성한 상기 스크램블된 컨텐츠와,
    (ⅱ) 상기 배타 논리합 연산 처리에서 실행된 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터의 위치를 기술하는 테이블과,
    (ⅲ) 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터에 적용된 스크램블 룰
    을 상기 정보 기록 매체 상에 기록하는 스텝
    을 실행하게 하는 명령을 저장하는 메모리 디바이스
    를 포함하는 것을 특징으로 하는 정보 처리 장치.
  11. 제10항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금, 상기 정보 기록 매체에 기록될 컨텐츠가 복수 있는 경우에서, 다른 기록될 컨텐츠 또는 관리 유닛을 위한 다른 스크램블 룰을 취득하게 하는 것을 특징으로 하고, 상기 관리 유닛은 상기 다른 기록될 컨텐츠에 할당되는 타이틀 열쇠의 할당 단위이며, 상기 타이틀 열쇠는 컨텐츠의 암호화 및 복호화에 적용되는 수단인 정보 처리 장치.
  12. 제10항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금, 상기 정보 기록 매체에 기록될 컨텐츠 데이터의 적어도 일부를 치환하게 하고,
    상기 스크램블 룰은 그 컨텐츠 데이터가 치환되는 위치를 지시하는 데이터를 포함하는 것을 특징으로 하는 정보 처리 장치.
  13. 제10항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    상기 정보 기록 매체에 기록될 다른 컨텐츠에 적용할 다른 스크램블 룰을 취득하게 하고,
    컨텐츠를 포함하는 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리를 포함하는 다른 스크램블 처리를 실행하는 것에 의해 다른 스크램블된 컨텐츠를 생성하게 하고,
    상기 다른 스크램블 룰은, 상기 셔플 엘리멘트의 셔플 형태를 기술한 데이터를 포함하는 것을 특징으로 하는 정보 처리 장치.
  14. 삭제
  15. 제10항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    상기 정보 기록 매체에 기록될 다른 컨텐츠에 적용할 다른 스크램블 룰을 취득하게 하고,
    컨텐츠를 포함하는 데이터의 로테이션 처리를 포함하는 다른 스크램블 처리를 실행하는 것에 의해 다른 스크램블된 컨텐츠를 생성하게 하고,
    상기 다른 스크램블 룰은, 로테이션에서의 시프트량을 기술한 데이터를 포함하는 것을 특징으로 하는 정보 처리 장치.
  16. 제10항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금 상기 정보 기록 매체의 스크램블되어 기록된 컨텐츠의 암호 처리를 실행하게 하는 것을 특징으로 하는 정보 처리 장치.
  17. 제16항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    컨텐츠를 포함하는 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리를 포함하는 다른 스크램블 처리를 실행하는 것에 의해 다른 스크램블된 컨텐츠를 생성하게 하고,
    상기 셔플 엘리멘트와 동일 사이즈의 데이터 단위에 대해 CBC 모드의 암호 처리를 실행하게 하는 것을 특징으로 하는 정보 처리 장치.
  18. 제10항에 있어서,
    상기 배타 논리합 연산 처리에 의해 실행되는 처리 대상 컨텐츠 데이터는,
    (1) MPEG 인코드된 데이터에 포함되는 I 픽쳐 슬라이스 부호화된 데이터의 일부와;
    (2) 시퀀스 헤더의 일부
    중 적어도 하나를 더 포함하는 것을 특징으로 하는 정보 처리 장치.
  19. 정보 기록 매체에 스크램블되어 기록된 컨텐츠의 재생 처리를 실행하는 정보 처리 장치로서,
    프로세서와;
    명령을 저장하는 메모리 디바이스로서, 상기 명령이 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금,
    (a) 정보 기록 매체에 스크램블되어 기록된 컨텐츠를 스크램블 해제(descramble)하는 스텝으로서,
    (i) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 포함하는 패킷 식별자 데이터를 포함하는 컨텐츠 데이터와,
    (ii) 미리 설정된 설정값이나 상기 미리 설정된 설정값에 기초하여 산출된 값
    의 배타 논리합 연산 처리를 사용하여 정보 기록 매체에 스크램블되어 기록된 컨텐츠를 스크램블 해제하는 스텝과;
    (b) 상기 정보 기록 매체에 저장된 컨텐츠에 대응하며, 상기 미리 설정된 설정값을 기술하는 스크램블 룰을 해석하는 스텝과;
    (c) 해석한 상기 스크램블 룰의 결과에 기초하여, 스크램블 룰에 대응하는, 상기 스크램블되어 기록된 컨텐츠에 포함된 복수의 취득한 개별 스크램블된 컨텐츠 데이터 각각의 스크램블 해제를 실행하는 스텝으로서, 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 스크램블된 컨텐츠 데이터의 위치는 상기 배타 논리합 연산 처리에서 실행되는 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 스크램블된 컨텐츠 데이터의 위치를 기술하는 테이블에 기초하여 발견되는, 스크램블 해제를 실행하는 스텝
    을 실행하게 하는, 명령을 포함하는 메모리 디바이스
    를 포함하는 것을 특징으로 하는 정보 처리 장치.
  20. 제19항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    상기 정보 기록 매체에 기록될 컨텐츠가 복수 있는 경우에서, 다른 기록될 컨텐츠 또는 관리 유닛을 위한 다른 스크램블 룰을 취득하게 하고,
    취득한 다른 스크램블 룰에 따라서 상기 다른 기록될 컨텐츠를 스크램블 해제하게 하는 것을 특징으로 하고, 상기 관리 유닛은 상기 다른 기록될 컨텐츠에 할당되는 타이틀 열쇠의 할당 단위며, 상기 타이틀 열쇠는 컨텐츠의 암호화 및 복호화에 적용되는 수단인 정보 처리 장치.
  21. 제19항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    상기 정보 기록 매체에 기록될 컨텐츠 데이터의 적어도 일부를 치환하게 하고,
    상기 스크램블 룰의 해석의 결과, 취득된 컨텐츠 데이터가 치환되는 위치를 지시하는 위치 데이터를 취득하고, 그 위치 데이터에 의거해서, 스크램블 해제 처리를 실행하게 하는 것을 특징으로 하는 정보 처리 장치.
  22. 제19항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    상기 정보 기록 매체에 저장된 컨텐츠에 대응하는 다른 스크램블 룰을 해석하게 하고,
    컨텐츠를 포함하는 데이터로서 설정된 복수의 셔플 엘리멘트의 셔플 형태를 복원(復元)하게 하며,
    상기 다른 스크램블 룰에 의거해서, 셔플 엘리멘트의 셔플 형태 복원 처리를 실행하게 하고,
    상기 다른 스크램블 룰은, 상기 셔플 엘리멘트의 셔플 형태를 기술한 데이터를 포함하는 것을 특징으로 하는 정보 처리 장치.
  23. 삭제
  24. 제19항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    컨텐츠를 포함하는 데이터의 로테이션 처리를 사용하여 상기 정보 기록 매체에 기록된 다른 컨텐츠를 스크램블 해제하게 하고,
    로테이션에서의 시프트량을 기술한 데이터를 포함하는 다른 스크램블 룰을 해석하게 하며,
    상기 다른 스크램블 룰에 의거해서, 상기 시프트량에 의거하는 로테이션 복원 처리를 실행하게 하는 것을 특징으로 하는 정보 처리 장치.
  25. 제19항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    상기 정보 기록 매체의 기록된 컨텐츠의 복호(復號) 처리를 실행하게 하는 것을 특징으로 하는 정보 처리 장치.
  26. 제25항에 있어서,
    상기 프로세서에 의해 실행될 때, 복수의 명령이 상기 프로세서로 하여금,
    컨텐츠를 포함하는 데이터로서 설정되는 복수의 셔플 엘리멘트의 셔플 처리를 사용하여 상기 정보 기록 매체에 기록된 다른 컨텐츠를 스크램블 해제하게 하고,
    상기 셔플 엘리멘트와 동일 사이즈의 데이터 단위에 대해 CBC 모드의 복호 처리를 실행하게 하는 것을 특징으로 하는 정보 처리 장치.
  27. 제19항에 있어서,
    상기 스크램블된 컨텐츠 데이터는,
    (1) MPEG 인코드된 데이터에 포함되는 I 픽쳐 슬라이스 부호화된 데이터의 일부와;
    (2) 시퀀스 헤더의 일부
    중 적어도 하나를 더 포함하는 것을 특징으로 하는 정보 처리 장치.
  28. 정보 기록 매체로서,
    각 스크램블되어 기록된 컨텐츠 또는 관리 유닛마다 설정된 스크램블 룰에 따라서, 스크램블 처리가 실행된 스크램블된 컨텐츠로서, 상기 스크램블 룰은 미리 설정된 설정값을 기술하며, 상기 스크램블된 컨텐츠는,
    (i) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 포함하는 패킷 식별자 데이터를 포함하는 컨텐츠 데이터와,
    (ⅱ) 상기 미리 설정된 설정값 또는 상기 미리 설정된 설정값에 의거해서 산출되는 값
    의 배타 논리합 연산 처리에 의해 생성되는 스크램블된 컨텐츠와;
    상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 스크램블된 컨텐츠의 위치를 기술하는 테이블과;
    상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 상기 스크램블된 컨텐츠에 적용되는 스크램블 룰
    을 기록된 데이터로서 포함하는 것을 특징으로 하는 정보 기록 매체.
  29. 제28항에 있어서,
    상기 스크램블 처리는, 상기 컨텐츠의 적어도 일부를 치환하는 처리이며,
    상기 스크램블 룰은, 상기 컨텐츠 데이터의 치환할 일부 데이터의 위치를 나타낸 데이터를 기록한 룰인 것을 특징으로 하는 정보 기록 매체.
  30. 제28항에 있어서,
    컨텐츠를 포함하는 데이터로서 설정되는 셔플 엘리멘트의 다른 셔플 처리에 의해서 생성된 다른 스크램블된 컨텐츠와;
    상기 셔플 엘리멘트의 셔플 형태를 기술한 데이터를 포함하는 다른 스크램블 룰
    을 포함하는 것을 특징으로 하는 정보 기록 매체.
  31. 삭제
  32. 제28항에 있어서,
    컨텐츠를 포함하는 데이터의 로테이션 처리에 의해서 생성된 다른 스크램블된 컨텐츠와;
    로테이션에서의 시프트량을 기술한 데이터를 포함하는 다른 스크램블 룰
    을 포함하는 것을 특징으로 하는 정보 기록 매체.
  33. 제28항에 있어서,
    상기 스크램블된 컨텐츠는, 컨텐츠를 포함하는 데이터로서 설정되는 셔플 엘리멘트의 셔플 처리에 의해서 생성된 스크램블된 컨텐츠이며,
    상기 정보 기록 매체는, 상기 셔플 엘리멘트와 동일 사이즈의 데이터를 단위로 해서 실행하는 CBC 모드의 암호 처리에 의해서 암호화된 컨텐츠를 기록한 구성을 가지는 것을 특징으로 하는 정보 기록 매체.
  34. 제28항에 있어서,
    상기 스크램블된 컨텐츠는,
    (1) MPEG 인코드된 데이터에 포함되는 I 픽쳐 슬라이스 부호화된 데이터의 일부와;
    (2) 시퀀스 헤더의 일부
    중 적어도 하나를 스크램블 처리 데이터로서 더 포함하는 것을 특징으로 하는 정보 기록 매체.
  35. 정보 기록 매체에 대한 컨텐츠 기록 처리를 실행하는 정보 처리 방법으로서,
    정보 기록 매체에 기록될 컨텐츠에 적용되며, 미리 설정된 설정값을 기술하는 스크램블 룰을 취득하는 스텝과;
    상기 취득한 스크램블 룰에 따라서 컨텐츠에 대한 스크램블 처리를 실행하는 것에 의해 스크램블된 컨텐츠를 생성하는 스텝으로서,
    상기 스크램블 처리는,
    (a) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 포함하는 패킷 식별자 데이터를 포함하는 컨텐츠 데이터와,
    (b) 상기 미리 설정된 설정값 또는 상기 미리 설정된 설정값에 의거해서 산출되는 값
    의 배타 논리합 연산 처리를 포함하는, 스크램블된 컨텐츠를 생성하는 스텝과;
    정보 기록 매체에 기록하는 스텝으로서,
    (a) 생성한 상기 스크램블된 컨텐츠와,
    (b) 상기 배타 논리합 연산 처리에서 실행된 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터의 위치를 기술하는 테이블과,
    (c) 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠에 적용되는 스크램블 룰
    을 상기 정보 기록 매체에 기록하는 스텝
    을 포함하는 것을 특징으로 하는 정보 처리 방법.
  36. 정보 기록 매체에 스크램블되어 기록된 컨텐츠의 재생 처리를 실행하는 정보 처리 방법으로서,
    상기 정보 기록 매체에 스크램블되어 기록된 컨텐츠를 스크램블 해제하는 스텝으로서, 상기 스크램블 해제는,
    (a) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 포함하는 패킷 식별자 데이터를 포함하는 컨텐츠 데이터와,
    (b) 미리 설정된 설정값 또는 상기 미리 설정된 설정값에 의거해서 산출되는 값의 배타 논리합 연산 처리를 포함하는, 컨텐츠를 스크램블 해제하는 스텝과;
    상기 정보 기록 매체에 저장된 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터에 대응하며, 상기 미리 설정된 설정값을 기술하는 스크램블 룰을 해석하는 스텝과;
    상기 스크램블 룰의 해석 결과에 기초하여, 스크램블 룰에 대응하는 상기 스크램블되어 기록된 컨텐츠에 포함된 복수의 취득한 개별 스크램블된 컨텐츠 데이터의 스크램블 해제를 실행하는 스텝으로서, 상기 스크램블된 컨텐츠 데이터는 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하고, 상기 스크램블된 컨텐츠 데이터의 위치는 상기 스크램블된 컨텐츠 데이터의 위치를 기술하는 테이블에 기초하여 발견되는, 스크램블 해제를 실행하는 스텝
    을 포함하는 것을 특징으로 하는 정보 처리 방법.
  37. 정보 기록 매체에 대한 컨텐츠 기록 처리를 컴퓨터에서 실행시키는 컴퓨터 프로그램이 기록되어 있는, 컴퓨터 판독가능한 기록 매체에 있어서,
    상기 프로그램은,
    상기 정보 기록 매체에 기록될 컨텐츠에 적용되며, 미리 설정된 설정값을 기술하는 스크램블 룰을 취득하는 스크램블 룰 취득 스텝과;
    상기 스크램블 룰 취득 스텝에서 취득한 스크램블 룰에 따라서 컨텐츠에 대한 스크램블 처리를 실행하는 것에 의해 스크램블된 컨텐츠를 생성하는 생성 스텝으로서, 상기 스크램블 처리는,
    (a) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 포함하는 패킷 식별자 데이터를 포함하는 컨텐츠 데이터와,
    (b) 상기 미리 설정된 설정값 또는 상기 미리 설정된 설정값에 의거해서 산출되는 값
    의 배타 논리합 연산 처리를 포함하는, 스크램블된 컨텐츠를 생성하는 생성 스텝과;
    정보 기록 매체에 기록하는 스텝으로서,
    (a) 생성한 상기 스크램블된 컨텐츠와,
    (b) 상기 배타 논리합 연산 처리에서 실행되는 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터의 위치를 기술하는 테이블과,
    (c) 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터에 적용되는 스크램블 룰
    을 상기 정보 기록 매체에 기록하는 스텝
    을 포함하는 것을 특징으로 하는 컴퓨터 판독가능한 기록 매체.
  38. 정보 기록 매체에 스크램블되어 기록된 컨텐츠의 재생 처리를 컴퓨터에서 실행시키는 컴퓨터 프로그램이 기록되어 있는 컴퓨터 판독가능한 기록 매체에 있어서,
    상기 프로그램은,
    상기 정보 기록 매체에 스크램블되어 기록된 컨텐츠의 스크램블 해제 처리를 실행하는 스크램블 처리 스텝으로서, 상기 스크램블 해제 처리는,
    (a) 트랜스포트 스트림 패킷 내의 데이터 종별 정보를 포함하는 패킷 식별자 데이터를 포함하는 컨텐츠 데이터와,
    (b) 미리 설정된 설정값 또는 상기 미리 설정된 설정값에 의거해서 산출되는 값
    의 배타 논리합 연산 처리를 포함하는, 스크램블 처리 스텝과;
    상기 정보 기록 매체에 저장된 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 컨텐츠 데이터에 대응하는 스크램블 처리 정보이며, 상기 미리 설정된 설정값을 기술하는 스크램블 룰의 해석을 실행하는 스크램블 룰 해석 스텝과;
    상기 스크램블 룰 해석 스텝의 해석 결과에 기초하여, 취득한 개별 스크램블된 컨텐츠 데이터를 위한 스크램블 룰에 대응하는 스크램블 해제 처리를 실행하는 스크램블 해제 스텝
    을 포함하며,
    상기 스크램블된 컨텐츠 데이터의 위치는 상기 트랜스포트 스트림 패킷 내의 상기 데이터 종별 정보를 포함하는 상기 패킷 식별자 데이터를 포함하는 스크램블된 컨텐츠 데이터의 위치를 기술하는 테이블에 기초하여 발견되는
    것을 특징으로 하는 컴퓨터 판독가능한 기록 매체.
KR1020067005598A 2004-12-07 2005-11-15 정보 기록 매체 제조 방법, 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터 판독가능한 기록 매체 KR101222687B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2004-00353637 2004-12-07
JP2004353637A JP4734906B2 (ja) 2004-12-07 2004-12-07 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
PCT/JP2005/020968 WO2006061976A1 (ja) 2004-12-07 2005-11-15 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム

Publications (2)

Publication Number Publication Date
KR20070099412A KR20070099412A (ko) 2007-10-09
KR101222687B1 true KR101222687B1 (ko) 2013-01-18

Family

ID=36577807

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067005598A KR101222687B1 (ko) 2004-12-07 2005-11-15 정보 기록 매체 제조 방법, 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터 판독가능한 기록 매체

Country Status (8)

Country Link
US (1) US7661000B2 (ko)
EP (1) EP1821449B1 (ko)
JP (1) JP4734906B2 (ko)
KR (1) KR101222687B1 (ko)
CN (1) CN1914852B (ko)
MX (1) MXPA05013184A (ko)
TW (1) TW200634520A (ko)
WO (1) WO2006061976A1 (ko)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4784371B2 (ja) * 2006-04-06 2011-10-05 ソニー株式会社 記録装置、記録方法および記録プログラム
WO2007132453A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Distortion estimation and cancellation in memory devices
WO2007132456A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
US8595573B2 (en) 2006-12-03 2013-11-26 Apple Inc. Automatic defect management in memory devices
WO2008111058A2 (en) 2007-03-12 2008-09-18 Anobit Technologies Ltd. Adaptive estimation of memory cell read thresholds
US8538012B2 (en) * 2007-03-14 2013-09-17 Intel Corporation Performing AES encryption or decryption in multiple modes with a single instruction
WO2008139441A2 (en) 2007-05-12 2008-11-20 Anobit Technologies Ltd. Memory device with internal signal processing unit
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8259497B2 (en) * 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8300478B2 (en) 2007-09-19 2012-10-30 Apple Inc. Reducing distortion using joint storage
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US8527819B2 (en) 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8270246B2 (en) 2007-11-13 2012-09-18 Apple Inc. Optimized selection of memory chips in multi-chips memory devices
US8225181B2 (en) * 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) * 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US20090172393A1 (en) * 2007-12-31 2009-07-02 Haluk Kent Tanik Method And System For Transferring Data And Instructions Through A Host File System
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8493783B2 (en) 2008-03-18 2013-07-23 Apple Inc. Memory device readout using multiple sense times
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8261159B1 (en) * 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8174857B1 (en) 2008-12-31 2012-05-08 Anobit Technologies Ltd. Efficient readout schemes for analog memory cell devices using multiple read threshold sets
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) * 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
CN101710964B (zh) * 2009-11-17 2012-09-05 深圳国微技术有限公司 Mpeg2传输流数据包的加密和解密方法
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8572311B1 (en) 2010-01-11 2013-10-29 Apple Inc. Redundant data storage in multi-die memory systems
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8493781B1 (en) 2010-08-12 2013-07-23 Apple Inc. Interference mitigation using individual word line erasure operations
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
DE112010005842T8 (de) 2010-10-05 2014-07-17 Hewlett-Packard Development Company, L.P. Verwürfeln einer Adresse und Verschlüsseln von Schreibdaten zum Speichern in einer Speichervorrichtung
US10110693B2 (en) 2012-02-20 2018-10-23 Futurewei Technologies, Inc. System and method for content and application acceleration in a wireless communications system
TWI464712B (zh) * 2012-10-22 2014-12-11 Nat Kangshan Agricultural & Ind Vocational Senior High School 密碼編碼之方法
US9419789B2 (en) * 2014-09-05 2016-08-16 Umm Al-Qura University Method and apparatus for scalar multiplication secure against differential power attacks
JP6488221B2 (ja) * 2015-03-30 2019-03-20 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 再生方法及び再生装置
US10121013B2 (en) * 2015-05-07 2018-11-06 Samsung Electronics Co., Ltd. XOR-based scrambler/descrambler for SSD communication protocols
CN108390754B (zh) * 2018-01-24 2020-12-04 上海航天芯锐电子科技有限公司 基于可变参数的芯片内部总线加扰装置的加扰方法
CN110837650B (zh) * 2019-10-25 2021-08-31 华中科技大学 一种不可信网络环境下的云存储oram访问系统和方法
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07281596A (ja) * 1994-04-05 1995-10-27 Internatl Business Mach Corp <Ibm> 暗号化方法およびシステム
JPH10145773A (ja) * 1996-11-14 1998-05-29 Toshiba Corp 動画像データの暗号化方法およびその方法が適用されるコンピュータシステム並びに動画像データ符号化/復号化装置
US6526144B2 (en) * 1997-06-02 2003-02-25 Texas Instruments Incorporated Data protection system
JP2004342246A (ja) * 2003-05-16 2004-12-02 Sony Corp 情報処理装置、情報記録媒体、コンテンツ管理システム、および方法、並びにコンピュータ・プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0325930A (ja) * 1989-06-23 1991-02-04 Sharp Corp 半導体装置の製造方法
JPH0574187A (ja) * 1991-09-17 1993-03-26 Nec Ic Microcomput Syst Ltd 半導体装置
GB2304011B (en) * 1992-10-15 1997-08-13 Mitsubishi Corp Signal recording apparatus
JP3747520B2 (ja) * 1996-01-30 2006-02-22 富士ゼロックス株式会社 情報処理装置及び情報処理方法
JPH10208386A (ja) * 1997-01-27 1998-08-07 Sony Corp 記録媒体およびディスクカッティング装置
EP0936774A1 (en) * 1998-02-13 1999-08-18 CANAL+ Société Anonyme Recording of scrambled digital data
JP2000045358A (ja) * 1998-07-29 2000-02-15 Inax Corp 冷房装置付き便器
JP4101975B2 (ja) * 1998-12-02 2008-06-18 オリンパス株式会社 可搬型記憶媒体を用いたデータ記録/再生装置
JP3689624B2 (ja) * 1999-09-30 2005-08-31 松下電器産業株式会社 情報記録媒体、情報記録方法及び情報再生方法
JP2001223654A (ja) * 2000-02-10 2001-08-17 Tokyo Hoso:Kk 暗号化ファイル伝送システム、送信装置、受信装置、および暗号化ファイル伝送方法
US6966837B1 (en) * 2001-05-10 2005-11-22 Best Robert M Linked portable and video game systems
JP3659902B2 (ja) * 2001-07-16 2005-06-15 株式会社東郷製作所 モール用クリップ及びクリップ付きモール
JP3699023B2 (ja) * 2001-08-29 2005-09-28 Necマグナスコミュニケーションズ株式会社 ディジタル放送視聴制御システム及びそのディジタル放送視聴制御方法
JP2005074187A (ja) * 2003-09-04 2005-03-24 Toyomaru Industry Co Ltd 遊技機

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07281596A (ja) * 1994-04-05 1995-10-27 Internatl Business Mach Corp <Ibm> 暗号化方法およびシステム
JPH10145773A (ja) * 1996-11-14 1998-05-29 Toshiba Corp 動画像データの暗号化方法およびその方法が適用されるコンピュータシステム並びに動画像データ符号化/復号化装置
US6526144B2 (en) * 1997-06-02 2003-02-25 Texas Instruments Incorporated Data protection system
JP2004342246A (ja) * 2003-05-16 2004-12-02 Sony Corp 情報処理装置、情報記録媒体、コンテンツ管理システム、および方法、並びにコンピュータ・プログラム

Also Published As

Publication number Publication date
EP1821449A4 (en) 2015-06-03
MXPA05013184A (es) 2006-06-08
EP1821449A1 (en) 2007-08-22
WO2006061976A1 (ja) 2006-06-15
CN1914852A (zh) 2007-02-14
CN1914852B (zh) 2011-04-06
EP1821449B1 (en) 2020-04-22
JP4734906B2 (ja) 2011-07-27
US20070098167A1 (en) 2007-05-03
TWI322353B (ko) 2010-03-21
JP2006163757A (ja) 2006-06-22
TW200634520A (en) 2006-10-01
US7661000B2 (en) 2010-02-09
KR20070099412A (ko) 2007-10-09

Similar Documents

Publication Publication Date Title
KR101222687B1 (ko) 정보 기록 매체 제조 방법, 정보 처리 장치, 정보 기록 매체 및 정보 처리 방법과 컴퓨터 판독가능한 기록 매체
JP4654806B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4715233B2 (ja) 情報処理装置、および情報記録媒体製造方法、並びにコンピュータ・プログラム
JP4613739B2 (ja) 情報処理装置、情報処理方法、および情報記録媒体、並びにコンピュータ・プログラム
JP4701748B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP5310827B2 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
KR101201421B1 (ko) 정보 처리 장치, 컨텐츠 관리 시스템, 정보 기록 매체 및 정보 처리 방법과 컴퓨터 판독가능한 기록 매체
JP4114605B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4984585B2 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4862949B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP5170229B2 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4774734B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4862958B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4905585B2 (ja) 情報記録媒体、およびプログラム
JP4862957B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee