KR100762957B1 - Method and apparatus for descrambling AV stream - Google Patents

Method and apparatus for descrambling AV stream Download PDF

Info

Publication number
KR100762957B1
KR100762957B1 KR1020050079447A KR20050079447A KR100762957B1 KR 100762957 B1 KR100762957 B1 KR 100762957B1 KR 1020050079447 A KR1020050079447 A KR 1020050079447A KR 20050079447 A KR20050079447 A KR 20050079447A KR 100762957 B1 KR100762957 B1 KR 100762957B1
Authority
KR
South Korea
Prior art keywords
information
descramble
packet
stream
packets
Prior art date
Application number
KR1020050079447A
Other languages
Korean (ko)
Other versions
KR20070011029A (en
Inventor
유용국
정현권
신준범
최윤호
남수현
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Publication of KR20070011029A publication Critical patent/KR20070011029A/en
Application granted granted Critical
Publication of KR100762957B1 publication Critical patent/KR100762957B1/en

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/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • 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/0042Circuits 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 copy protection scheme being related to a specific access protection standard
    • G11B20/00427Circuits 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 copy protection scheme being related to a specific access protection standard advanced access content system [AACS]
    • 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/0042Circuits 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 copy protection scheme being related to a specific access protection standard
    • G11B20/00449Circuits 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 copy protection scheme being related to a specific access protection standard content scrambling system [CSS]
    • 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
    • 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
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1288Formatting by padding empty spaces with dummy data, e.g. writing zeroes or random data when de-icing optical 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

Abstract

본 발명은 스크램블(scramble)로 인하여 변형된 AV(Audio Visual) 스트림을 디스크램블(descramble)하는 방법 및 장치에 관한 것으로, 본 발명에 따른 제 1 디스크램블 방법은 스크램블로 인하여 변형된 스트림의 제 1 변형 부분을 교정하기 위한 제 1 디스크램블 정보로부터 스트림의 제 2 변형 부분을 교정하기 위한 제 2 디스크램블 정보의 위치 정보를 획득하고, 제 1 디스크램블 정보에 기초하여 제 1 변형 부분을 디스크램블함으로서 AV 스트림으로부터 난독 교정 테이블을 포함하는 PMT 패킷의 정확한 위치를 신속하게 찾을 수 있다.The present invention relates to a method and apparatus for descrambling an audio visual (AV) stream deformed due to scramble, and the first descrambling method according to the present invention provides a method of deforming a stream deformed due to scramble. Obtaining position information of the second descramble information for correcting the second deformed portion of the stream from the first descrambled information for correcting the deformed portion, and descrambles the first deformed portion based on the first descramble information. Quickly find the exact location of the PMT packet containing the obfuscation correction table from the AV stream.

Description

AV(Audio Visual) 스트림을 디스크램블하는 방법 및 장치{Method and apparatus for descrambling AV stream}A method and apparatus for descrambling a stream of Ava (Method and apparatus for descrambling AV stream)

도 1은 종래의 제 1 디스크램블 방식에 따른 제 1 플레이어의 구성도이다.1 is a block diagram of a first player according to a conventional first descramble method.

도 2는 종래의 제 1 디스크램블 방식에 따른 교정 테이블의 구조도이다.2 is a structural diagram of a calibration table according to a conventional first descramble method.

도 3은 종래의 제 1 디스크램블 방식에 따른 교정 엔트리의 구조도이다.3 is a structural diagram of a calibration entry according to a conventional first descramble method.

도 4는 종래의 제 1 디스크램블 방식에 따른 디스크램블 동작을 도시한 도면이다.FIG. 4 is a diagram illustrating a descramble operation according to a first descramble method.

도 5는 종래의 제 1 디스크램블 방식의 문제점을 도시한 도면이다.5 is a diagram illustrating a problem of a conventional first descramble method.

도 6은 종래의 제 2 디스크램블 방식에 따른 제 2 플레이어의 구성도이다.6 is a configuration diagram of a second player according to a conventional second descramble method.

도 7은 종래의 제 2 디스크램블 방식에 따른 교정 테이블의 구조도이다.7 is a structural diagram of a calibration table according to a conventional second descramble method.

도 8은 종래의 제 2 디스크램블 방식에 따른 FUT 블록의 구조도이다.8 is a structural diagram of a FUT block according to a conventional second descramble method.

도 9는 본 발명의 바람직한 일 실시예에 따른 제 1 플레이어의 구성도이다.9 is a block diagram of a first player according to an embodiment of the present invention.

도 10은 본 발명의 바람직한 일 실시예에 따른 교정 엔트리의 구조도이다.10 is a structural diagram of a calibration entry according to one preferred embodiment of the present invention.

도 11은 본 발명의 바람직한 일 실시예에 따른 디스크램블 동작을 도시한 도면이다.11 illustrates a descramble operation according to an embodiment of the present invention.

도 12는 본 발명의 바람직한 일 실시예에 따른 제 2 플레이어의 구성도이다.12 is a block diagram of a second player according to an embodiment of the present invention.

도 13은 본 발명의 바람직한 일 실시예에 따른 FUT 블록의 구조도이다.13 is a structural diagram of a FUT block according to an embodiment of the present invention.

도 14-15는 본 발명의 바람직한 일 실시예에 따른 제 1 컨텐트 복원 방법의 흐름도이다.14-15 are flowcharts of a first content restoration method according to an embodiment of the present invention.

도 16-17은 본 발명의 바람직한 일 실시예에 따른 제 2 컨텐트 복원 방법의 흐름도이다.16-17 are flowcharts of a second content restoration method according to an embodiment of the present invention.

본 발명은 디스크에 저장된 AV(Audio Visual) 스트림으로부터 AV 컨텐트를 복원하는 방법 및 장치에 관한 것으로, 특히 스크램블(scramble)로 인하여 변형된 AV 스트림을 디스크램블(descramble)하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for restoring AV content from an AV (Audio Visual) stream stored in a disc, and more particularly, to a method and apparatus for descrambled an AV stream modified due to scramble.

차세대 광디스크 보호 시스템인 AACS(Advanced Access Content System) 규격은 브로드캐스트 암호화 방식(Broadcast Encryption Scheme)을 적용하여 해커의 공격 등으로 인하여 폐기(revoke)된 디바이스 키 셋을 가진 플레이어는 브로드캐스트 암호화 방식에 따라 암호화된 컨텐트를 복호화할 수 없도록 하고 있다. 브로드캐스트 암호화 방식이란 다수의 플레이어들 각각에 서로 다른 디바이스 키 셋을 할당하고, 공중(public)에 배포되는 디스크에 폐기된 디바이스 키 셋으로 암호화된 중간 키 값을 저장하지 않음으로서 이 디바이스 키 셋을 가진 플레이어는 이 중간 키 값을 획득할 수 없게 하고, 그 결과 컨텐츠 복호화 키를 획득할 수 없도록 하는 방식을 말한다.The Advanced Access Content System (AACS) standard, the next-generation optical disc protection system, applies the Broadcast Encryption Scheme to allow players with device key sets revoked due to hacker attacks. Encrypted content cannot be decrypted. The broadcast encryption method assigns a different device key set to each of a plurality of players, and does not store the intermediate key value encrypted with the discarded device key set on a disk distributed in public. The player having the game cannot acquire this intermediate key value, and as a result, cannot obtain the content decryption key.

그런데, 디바이스 키 셋의 개수는 한정되어 있고, 이러한 디바이스 키 셋이 할당되어야 할 플레이어의 개수는 계속해서 증가되기 때문에 동일한 디바이스 키 셋을 여러 대의 플레이어들에 할당할 경우가 발생하게 된다. 이 플레이어들 중 어느 하나의 플레이어가 해킹되어, 이 플레이어의 디바이스 키 셋이 노출된 경우, 동일한 디바이스 키 셋을 가진 다른 플레이어들도 폐기되어야 하는 문제점이 있었다.However, since the number of device key sets is limited, and the number of players to which the device key set should be allocated continues to increase, there is a case where the same device key set is assigned to multiple players. If any one of these players is hacked and the device key set of this player is exposed, there is a problem that other players with the same device key set should also be discarded.

이러한 문제점을 해결하기 위하여, 스크램블 기반 갱신 방식(scramble-based renewability scheme)이 등장하였다. 이 방식은 디스크에 컨텐트를 저장할 때, 컨텐트의 중간 중간에 스크램블(scramble)을 걸고, AACS 규격에 따라 암호화한다. 따라서, 플레이어가 원래의 컨텐트를 복원하기 위해서는 AACS 규격에 따라 디스크에 저장된 스트림을 해독한 후에 컨텐트의 중간 중간에 걸린 스크램블도 풀어야 한다. In order to solve this problem, a scramble-based renewability scheme has emerged. This method scrambles in the middle of the content when storing the content on disk, and encrypts it according to the AACS standard. Therefore, in order to restore the original content, the player must also decode the stream stored in the disc according to the AACS standard, and then unscramble the middle of the content.

이 방식에 따르면, 스크램블을 푸는 역할을 하는 컨텐트 코드(content code)가 디스크에 저장된다. 이 컨텐트 코드는 컨텐트 재생 전에 미리 실행되면서, 컨텐트 재생에 문제가 있는지를 판단한다. 예를 들면, 플레이어가 디바이스 키 셋을 노출한 플레이어인지를 판단하거나, 컨텐트의 불법 복제물이 돌고 있는지 등을 판단한다. 그 결과, 컨텐트 재생에 문제가 없는 것으로 판단된 경우에만 디스크램블(descramble)을 수행하고, 문제가 있는 것으로 판단된 경우에는 디스크램블을 수행하지 않는다. 바꾸어 말하면, 플레이어는 한 번 판매되면, 다시 이것을 갱신하는 것이 어렵지만, 디스크의 경우 디스크마다 상기된 바와 같은 컨텐트 코드를 삽입함으로서 컨텐트 레벨의 갱신을 가능하게 할 수 있다. 이와 같은 디스크램블을 위한 종래의 방식들로는 대표적으로 다음의 두 가지를 들 수 있다. According to this method, content code, which serves to solve scramble, is stored on the disk. This content code is executed before the content is played back to determine whether there is a problem with the content being played. For example, it is determined whether the player has exposed the device key set, whether illegal copies of the content are running, and the like. As a result, descramble is performed only when it is determined that there is no problem in content reproduction, and descramble is not performed when it is determined that there is a problem. In other words, once the player is sold, it is difficult to update it again, but in the case of a disc, the content level can be updated by inserting the content code as described above for each disc. Conventional schemes for such descramble include the following two examples.

도 1은 종래의 제 1 디스크램블 방식에 따른 제 1 플레이어의 구성도이다.1 is a block diagram of a first player according to a conventional first descramble method.

도 1을 참조하면, 종래의 제 1 디스크램블에 따른 제 1 플레이어(2)는 트랙 버퍼(track buffer)(21), 해독부(decrypt)(22), 버퍼(23), 디먹스(demux)(24), 복호화부(decoder)(25), AV 스트림에 포함된 AV 컨텐트를 보호하기 위한 컨텐트 코드(virtual machine)(26), 플레이어 정보 데이터베이스(27), SP 레지스터(28), 연산부(29), 및 겹쳐쓰기부(30)로 구성된다.Referring to FIG. 1, a first player 2 according to a conventional first descramble includes a track buffer 21, a decrypter 22, a buffer 23, and a demux. (24), decoder (25), content code (virtual machine) 26 for protecting AV content included in AV stream, player information database (27), SP register (28), arithmetic unit (29) ), And an overwrite unit 30.

트랙 버퍼(21)는 디스크(1)로부터 AV 스트림을 독출하고, 해독부(22)에서의 해독 처리 속도에 대응하기 위하여, 이 AV 스트림을 일시적으로 저장한다. 트랙 버퍼(21)에 저장된 AV 스트림은 암호화된 형태의 AV 스트림이다.The track buffer 21 reads out the AV stream from the disc 1 and temporarily stores the AV stream in order to correspond to the decoding processing speed in the decryption section 22. The AV stream stored in the track buffer 21 is an AV stream in encrypted form.

해독부(22)는 AACS 규격에 따라 트랙 버퍼(21)에 저장된 AV 스트림에 해당하는 타이틀 키(Kt)를 사용하여 트랙 버퍼(21)에 저장된 AV 스트림을 해독한다. The decryption unit 22 decrypts the AV stream stored in the track buffer 21 using the title key Kt corresponding to the AV stream stored in the track buffer 21 according to the AACS standard.

버퍼(23)는 복호화부(25)에서의 복호화 처리 속도에 대응하기 위하여, 해독부(22)에 의해 해독된 AV 스트림을 일시적으로 저장한다. 버퍼(23)에 저장된 AV 스트림은 스크램블로 인해 변형되고, MPEG(Moving Picture Experts Group)-2 규격에 따라 부호화된 형태의 AV 스트림이다. The buffer 23 temporarily stores the AV stream decrypted by the decryption unit 22 in order to correspond to the decoding processing speed in the decryption unit 25. The AV stream stored in the buffer 23 is an AV stream that is deformed due to scramble and encoded according to the Moving Picture Experts Group (MPEG) -2 standard.

디먹스(24)는 MPEG-2 규격에 따라 버퍼(23)에 저장된 AV 스트림을 디먹싱함으로서 버퍼(23)에 저장된 AV 스트림으로부터 부호화된 형태의 AV 컨텐트 및 원래의 AV 컨텐트를 복원하기 위한 여러 가지 정보를 추출한다. 특히, 디먹스(24)는 버퍼(23)에 저장된 AV 스트림으로부터 난독 교정 테이블(obfuscated Fix-up Table)을 포함하는 PMT(Program Map Table) 패킷을 검색하고, 이 PMT 패킷으로부터 난독 교정 테이블을 추출한다. The demux 24 demuxes the AV stream stored in the buffer 23 according to the MPEG-2 standard to restore encoded AV content and original AV content from the AV stream stored in the buffer 23. Extract the information. In particular, the demux 24 retrieves a Program Map Table (PMT) packet including an obfuscated fix-up table from the AV stream stored in the buffer 23, and extracts the obfuscation correction table from the PMT packet. do.

교정 테이블은 AV 스트림의 중간 중간에 걸린 스크램블로 인하여 변형된 AV 스트림의 변형 부분을 교정하기 위한 디스크램블 정보가 기록된 테이블이다. 난독 교정 테이블은 교정 테이블의 값들이 용이하게 파악될 수 없도록 이 교정 테이블의 값들과 비밀 파라미터 값들을 배타적 논리합한 값이다.The calibration table is a table in which descramble information for correcting the deformed portion of the deformed AV stream due to the scramble in the middle of the AV stream is recorded. The obfuscation correction table is an exclusive OR of the values of the correction table and the secret parameter values so that the values of the correction table cannot be easily understood.

도 2는 종래의 제 1 디스크램블 방식에 따른 교정 테이블의 구조도이다.2 is a structural diagram of a calibration table according to a conventional first descramble method.

도 2를 참조하면, "SP_ID" 필드는 교정 테이블의 배타적 논리합에 사용된 비밀 파라미터 값의 아이디를 나타낸다. "FixUpEntry"는 스크램블로 인한 변형을 교정하기 위한 실질적인 정보를 포함하는 교정 엔트리를 나타낸다.Referring to FIG. 2, the "SP_ID" field indicates an ID of a secret parameter value used for an exclusive logical OR of a calibration table. "FixUpEntry" indicates a calibration entry that contains substantial information for correcting the deformation due to scramble.

도 3은 종래의 제 1 디스크램블 방식에 따른 교정 엔트리의 구조도이다.3 is a structural diagram of a calibration entry according to a conventional first descramble method.

도 3을 참조하면, "type_indicator" 필드는 교정 테이블의 처리 타입을 나타낸다. 즉, 이 필드의 값 "00b"는 스크램블로 인한 변형이 없음을 나타내고, "01b"는 스크램블로 인한 변형이 있음을 나타내고, "10b"는 포렌식임을 나타낸다. "FM_ID_bit_position" 필드는 포렌식 마킹(forensic marking)을 위한 포렌식 마크 아이의 비트 위치를 나타낸다. "relative_SPN(Source Packet Number)_1" 필드는 PMT 패킷으로부터 첫 번째 변형 패킷까지의 상대적 패킷 넘버를 나타낸다. "relative_SPN_2" 필드는 PMT 패킷으로부터 두 번째 변형 패킷까지의 상대적 패킷 넘버를 나타낸다. "byte_position_1" 필드는 첫 번째 패킷 내 변형 데이터의 시작 바이트 위치를 나타낸다. "byte_position_2" 필드는 두 번째 변형 패킷 내 변형 데이터의 시작 바이트 위치를 나타낸다. "overwrite_value_1"은 겹쳐쓰기될 첫 번째 값을 나타낸다. "overwrite_value_2" 필드는 겹쳐쓰기될 두 번째 값을 나타낸다. Referring to Fig. 3, the "type_indicator" field indicates the processing type of the calibration table. That is, the value "00b" of this field indicates that there is no deformation due to scramble, "01b" indicates that there is deformation due to scramble, and "10b" indicates that it is forensic. The "FM_ID_bit_position" field indicates the bit position of the forensic mark eye for forensic marking. The "relative_SPN (Source Packet Number) _1" field indicates a relative packet number from the PMT packet to the first modified packet. The "relative_SPN_2" field indicates a relative packet number from the PMT packet to the second modified packet. The "byte_position_1" field indicates the start byte position of transform data in the first packet. The "byte_position_2" field indicates the start byte position of transform data in the second transform packet. "overwrite_value_1" represents the first value to be overwritten. The "overwrite_value_2" field indicates a second value to be overwritten.

복호화부(25)는 MPEG-2 규격에 따라 디먹스(24)에 의해 추출된 AV 컨텐트를 복호화함으로서 원래의 AV 컨텐트를 복원한다. The decoder 25 restores the original AV content by decoding the AV content extracted by the demux 24 according to the MPEG-2 standard.

AV 스트림에 포함된 AV 컨텐트를 보호하기 위한 컨텐트 코드(26)은 디스크(1)로부터 이 디스크(1)에 저장된 AV 스트림에 포함된 AV 컨텐트를 보호하기(secure) 위한 컨텐트 코드를 독출하고, 이 컨텐트 코드를 실행함으로서 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크(forensic mark) 아이디를 생성한다. 보다 상세하게 설명하면, AV 스트림에 포함된 AV 컨텐트를 보호하기 위한 컨텐트 코드(26)은 플레이어 정보 데이터베이스(27)에 저장된 플레이어 정보와 컨텐트 코드 실행 결과로서 획득된 플레이어 정보를 비교함으로서 플레이어(2)가 디바이스 키 셋을 노출한 플레이어인지를 판단하고, 그 결과 디바이스 키 셋을 노출한 플레이어가 아닌 것으로 판단된 경우에만 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성하고, 디바이스 키 셋을 노출한 플레이어인 것으로 판단된 경우에는 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성하지 않는다. The content code 26 for protecting the AV content included in the AV stream reads the content code for securing the AV content included in the AV stream stored on the disc 1 from the disc 1, and By executing the content code, a secret parameter value, a secret parameter ID, and a forensic mark ID are generated. In more detail, the content code 26 for protecting the AV content included in the AV stream compares the player information stored in the player information database 27 with the player information obtained as a result of executing the content code. Determines whether the player has exposed the device key set, and as a result generates a secret parameter value, a secret parameter ID, and a forensic mark ID only if it is determined that the player has not exposed the device key set, and exposes the device key set. If it is determined that the player is one player, the secret parameter value, the secret parameter ID, and the forensic mark ID are not generated.

포렌식 마크는 비밀 파라미터와 같이 AV 컨텐트의 직접적인 보호에 관여하지는 않지만, 만약 포렌식 마크를 갖는 컨텐트가 손상된 플레이어에서 재생되면, 이 컨텐트 상에 이 플레이어 특유의 마크를 만든다. 이 컨텐트가 공공에 노출된 후, 컨텐트 소유자는 노출된 컨텐트 상의 포렌식 마크를 확인함으로서 손상된 플레이어를 알아낼 수 있다. Forensic marks are not involved in the direct protection of AV content like secret parameters, but if the content with forensic marks is played in a compromised player, a mark specific to this player is created on this content. After this content is exposed to the public, the content owner can identify the compromised player by checking the forensic mark on the exposed content.

SP 레지스터(28)는 AV 스트림에 포함된 AV 컨텐트를 보호하기 위한 컨텐트 코드(26)에 의해 생성된 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 저장한다.The SP register 28 stores secret parameter values, secret parameter IDs, and forensic mark IDs generated by the content code 26 for protecting AV content included in the AV stream.

연산부(29)는 SP 레지스터(28)에 저장된 비밀 파라미터 값들과 디먹스(24)에 의해 추출된 난독 교정 테이블을 배타적 논리합(XOR)함으로서 원래의 교정 테이블을 복원한다. 난독 교정 테이블은 원래의 교정 테이블에 대해 비밀 파라미터 값들로 배타적 논리합 연산이 수행된 것이므로, 연산부(29)는 이러한 난독 교정 테이블을 상기 배타적 논리합 연산에 사용된 비밀 파라미터 값들과 동일한 값들로 다시 한번 더 배타적 논리합 연산을 수행함으로서 원래의 교정 테이블을 복원한다.The calculation unit 29 restores the original calibration table by performing an exclusive OR (XOR) on the secret parameter values stored in the SP register 28 and the obfuscation correction table extracted by the demux 24. Since the obfuscation correction table is an exclusive OR operation performed on the secret correction values with respect to the original correction table, the operation unit 29 once again excludes the obfuscation correction table with the same values as the secret parameter values used in the exclusive OR operation. Restore the original calibration table by performing the OR operation.

겹쳐쓰기부(30)는 연산부(29)에 의해 복원된 교정 테이블에 기초하여 버퍼(23)에 저장된 데이터 패킷들 중 스크램블에 의해 변형된 패킷의 변형 위치에 디스크램블 값을 겹쳐쓰기함으로서 버퍼(23)에 저장된 데이터 패킷들의 스크램블 부분을 디스크램블한다. The overwrite unit 30 overwrites the descrambled value in the deformed position of the packet deformed by the scramble among the data packets stored in the buffer 23 based on the calibration table restored by the operation unit 29. Descrambles the scrambled portion of the data packets stored in < RTI ID = 0.0 >

도 4는 종래의 제 1 디스크램블 방식에 따른 디스크램블 동작을 도시한 도면이다.FIG. 4 is a diagram illustrating a descramble operation according to a first descramble method.

도 4를 참조하면, 디먹스(24)는 버퍼(23)로부터 출력된 전송 스트림을 구성하는 TS 패킷들 중에서 교정 테이블 기술자를 포함하는 PMT 패킷을 검색하고, 이 PMT 패킷 내의 난독 교정 테이블을 출력한다. 연산부(29)는 디먹스(24)로부터 출력된 교정 테이블과 비밀 파라미터 값들을 배타적 논리합함으로서 원래의 교정 테이블을 복원한다. 겹쳐쓰기부(30)는 연산부(29)에 의해 복원된 교정 테이블의 "relative_SPN_1" 필드의 값 및 "relative_SPN_2" 필드의 값으로부터 스크램블로 인하여 변형된 첫 번째 패킷과 두 번째 패킷의 상대적 위치를 각각 알아내고, 이 위치들에 디스크램블 값을 겹쳐쓰기한다.Referring to FIG. 4, the demux 24 searches for a PMT packet including a calibration table descriptor among TS packets constituting the transport stream output from the buffer 23, and outputs an obfuscation correction table in the PMT packet. . The calculation unit 29 restores the original calibration table by exclusive OR of the calibration table and secret parameter values output from the demux 24. The overwrite unit 30 knows the relative positions of the first packet and the second packet deformed due to scrambled from the values of the "relative_SPN_1" field and the "relative_SPN_2" field of the calibration table restored by the calculating unit 29, respectively. And overwrite the descramble values in these locations.

도 5는 종래의 제 1 디스크램블 방식의 문제점을 도시한 도면이다.5 is a diagram illustrating a problem of a conventional first descramble method.

도 5를 참조하면, 겹쳐쓰기부(30)가 버퍼(23)에 저장된 전송 스트림의 어느 위치에 디스크램블 값을 겹쳐쓰기하고자 할 때, 이 위치 계산의 기초가 되는 PMT 패킷은 버퍼(23) 내에 있지 않고, 디먹스(24) 내에서 이미 디먹싱 처리를 당한 상태이다. 이로 인하여, 버퍼(23)에 저장된 전송 스트림의 변형 부분의 위치를 계산하기가 용이하지 않다는 문제점이 있었다. 또한, 버퍼(23)에 저장된 전송 스트림의 변형 부분의 위치 계산이 신속하게 이루어지지 않을 경우, 버퍼(23)에 저장된 전송 스트림의 변형 부분이 그대로 출력될 수도 있다는 문제점이 있었다. 따라서, 이동 단말 등 저사양 CPU를 사용하는 디바이스는 이와 같은 속도의 제약 때문에 디스크램블을 소프트웨어적으로 처리할 수 없게 된다. Referring to FIG. 5, when the overwrite unit 30 attempts to overwrite a descramble value at a position of a transport stream stored in the buffer 23, the PMT packet, which is the basis of this position calculation, is stored in the buffer 23. Instead, the demux 24 has already been demuxed. As a result, there has been a problem that it is not easy to calculate the position of the modified part of the transport stream stored in the buffer 23. In addition, when the position calculation of the modified part of the transport stream stored in the buffer 23 is not performed quickly, there is a problem that the modified part of the transport stream stored in the buffer 23 may be output as it is. Therefore, a device using a low specification CPU, such as a mobile terminal, cannot handle the descramble in software due to such a speed limitation.

도 6은 종래의 제 2 디스크램블 방식에 따른 제 2 플레이어의 구성도이다.6 is a configuration diagram of a second player according to a conventional second descramble method.

도 6을 참조하면, 종래의 제 2 디스크램블 방식에 따른 제 2 플레이어(4)는 트랙 버퍼(41), 해독부(42), 버퍼(43), 디먹스(44), 복호화부(45), AV 스트림에 포함된 AV 컨텐트를 보호하기 위한 컨텐트 코드(46), 플레이어 정보 데이터베이스(47), SP 레지스터(48), 메모리(49), 연산부(50), 및 겹쳐쓰기부(51)로 구성된다.Referring to FIG. 6, the second player 4 according to the conventional second descramble method includes a track buffer 41, a decryption unit 42, a buffer 43, a demux 44, and a decoding unit 45. And a content code 46 for protecting AV content included in the AV stream, a player information database 47, an SP register 48, a memory 49, an operation unit 50, and an overwrite unit 51. do.

트랙 버퍼(41)는 디스크(3)로부터 AV 스트림을 독출하고, 해독부(42)에서의 해독 처리 속도에 대응하기 위하여, 이 AV 스트림을 일시적으로 저장한다. 트랙 버퍼(41)에 저장된 AV 스트림은 암호화된 형태의 AV 스트림이다.The track buffer 41 reads out the AV stream from the disc 3 and temporarily stores this AV stream in order to correspond to the decoding processing speed in the decryption section 42. The AV stream stored in the track buffer 41 is an AV stream in encrypted form.

해독부(42)는 AACS 규격에 따라 트랙 버퍼(41)에 저장된 AV 스트림에 해당하는 타이틀 키(Kt)를 사용하여 트랙 버퍼(41)에 저장된 AV 스트림을 해독한다. The decryption section 42 decrypts the AV stream stored in the track buffer 41 using the title key Kt corresponding to the AV stream stored in the track buffer 41 according to the AACS standard.

버퍼(43)는 복호화부(45)에서의 복호화 처리 속도에 대응하기 위하여, 해독부(42)에 의해 해독된 AV 스트림을 일시적으로 저장한다. 버퍼(43)에 저장된 AV 스트림은 스크램블로 인해 변형되고, MPEG-2 규격에 따라 부호화된 형태의 AV 스트림이다. The buffer 43 temporarily stores the AV stream decrypted by the decryption unit 42 in order to correspond to the decoding processing speed in the decryption unit 45. The AV stream stored in the buffer 43 is modified due to scramble and is an AV stream encoded in the MPEG-2 standard.

디먹스(44)는 MPEG-2 규격에 따라 버퍼(43)에 저장된 AV 스트림을 디먹싱함으로서 버퍼(43)에 저장된 AV 스트림으로부터 부호화된 형태의 AV 컨텐트 및 원래의 AV 컨텐트를 복원하기 위한 여러 가지 정보를 추출한다. The demux 44 demultiplexes the AV stream stored in the buffer 43 according to the MPEG-2 standard to restore the encoded AV content and the original AV content from the AV stream stored in the buffer 43. Extract the information.

복호화부(45)는 MPEG-2 규격에 따라 디먹스(44)에 의해 추출된 AV 컨텐트를 복호화함으로서 원래의 AV 컨텐트를 복원한다. The decoder 45 restores the original AV content by decoding the AV content extracted by the demux 44 according to the MPEG-2 standard.

가상 머신(46)은 디스크(3)로부터 이 디스크(3)에 저장된 AV 스트림에 포함된 AV 컨텐트를 보호하기 위한 컨텐트 코드를 독출하고, 이 컨텐트 코드를 실행함으로서 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성한다. The virtual machine 46 reads the content code for protecting the AV content contained in the AV stream stored in the disk 3 from the disk 3, and executes the content code to generate a secret parameter value, a secret parameter ID, and Generates forensic mark ID.

또한, 가상 머신(46)은 디스크(3)로부터 난독 교정 테이블을 독출하고, 이것을 메모리(49)에 로드한다. 이것이 도 1에 도시된 제 1 디스크램블 방식과의 차이점이다. 즉, 도 1에 도시된 제 1 디스크램블 방식은 AV 스트림의 여러 위치에 난독 교정 테이블들을 포함하고 있으나, 도 2에 도시된 제 2 디스크램블 방식은 디스크(3)의 별도의 영역에 난독 교정 테이블들이 하나의 파일의 형태로 기록되어 있다. The virtual machine 46 also reads the obfuscation correction table from the disk 3 and loads it into the memory 49. This is a difference from the first descramble method shown in FIG. That is, while the first descramble method shown in FIG. 1 includes obfuscation correction tables at various positions of the AV stream, the second descramble method shown in FIG. 2 has an obfuscation correction table in a separate area of the disc 3. Are recorded in the form of a file.

도 7은 종래의 제 2 디스크램블 방식에 따른 교정 테이블의 구조도이다.7 is a structural diagram of a calibration table according to a conventional second descramble method.

도 7을 참조하면, "Number of FUT blocks" 필드는 교정 테이블 블록들의 개수를 나타낸다. 또한, "Start address of FUT blocks" 필드는 교정 테이블의 시작부터 카운트되는 각각의 교정 테이블 블록의 바이트 오프셋을 나타낸다. 또한, "SP_ID" 필드는 이 교정 테이블 블록에 배타적 논리합하기 위하여 사용된 비밀 파라미터 값들의 아이디를 나타낸다. 또한, "FUT block" 필드는 비밀 파라미터 아이디에 의하여 지시되는 비밀 파라미터 값의 배타적 논리합에 의하여 난독 처리된 교정 테이블 블록을 나타낸다.Referring to FIG. 7, the "Number of FUT blocks" field indicates the number of calibration table blocks. The "Start address of FUT blocks" field also indicates the byte offset of each calibration table block counted from the start of the calibration table. The "SP_ID" field also indicates the ID of secret parameter values used to exclusive OR this correction table block. In addition, the "FUT block" field indicates a calibration table block obfuscated by an exclusive OR of the secret parameter value indicated by the secret parameter ID.

도 8은 종래의 제 2 디스크램블 방식에 따른 FUT 블록의 구조도이다.8 is a structural diagram of a FUT block according to a conventional second descramble method.

도 8을 참조하면, "Number of FixUpEntry" 필드는 교정 엔트리 넘버를 나타낸다. "Base SPN for FixUpEntry" 필드는 상대적인 교정 엔트리 값들 계산의 기초가 되는 절대적인 패킷 넘버를 나타낸다. 즉, 이 값은 교정 테이블을 포함하는 PMT 패킷의 패킷 넘버를 나타낸다. "FixUpEntry"는 스크램블로 인한 변형을 교정하기 위한 실질적인 정보를 포함하는 교정 엔트리를 나타낸다.Referring to FIG. 8, the "Number of FixUpEntry" field indicates a correction entry number. The "Base SPN for FixUpEntry" field indicates the absolute packet number on which the relative correction entry values are calculated. In other words, this value indicates the packet number of the PMT packet containing the calibration table. "FixUpEntry" indicates a calibration entry that contains substantial information for correcting the deformation due to scramble.

종래의 제 2 디스크램블 방식에 따른 교정 엔트리의 구조는 도 3에 도시된 교정 엔트리의 구조와 동일하다. The structure of the calibration entry according to the conventional second descramble method is the same as that of the calibration entry shown in FIG.

SP 레지스터(48)는 가상 머신(46)에 의해 생성된 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 저장한다.The SP register 48 stores secret parameter values, secret parameter IDs, and forensic mark IDs generated by the virtual machine 46.

연산부(50)는 SP 레지스터(48)에 저장된 비밀 파라미터 값들과 메모리(49)에 로드된 난독 교정 테이블을 배타적 논리합함으로서 원래의 교정 테이블을 복원한 다. The calculation unit 50 restores the original calibration table by exclusive OR of the secret parameter values stored in the SP register 48 and the obfuscation correction table loaded in the memory 49.

겹쳐쓰기부(51)는 연산부(50)에 의해 복원된 교정 테이블에 기초하여 버퍼(43)에 저장된 데이터 패킷들 중 스크램블에 의해 변형된 패킷의 변형 위치에 디스크램블 값을 겹쳐쓰기함으로서 버퍼(43)에 저장된 데이터 패킷들의 스크램블 부분을 디스크램블한다. The overwrite unit 51 overwrites the buffer 43 by overwriting the descramble value in the modified position of the packet deformed by the scramble among the data packets stored in the buffer 43 based on the calibration table restored by the operation unit 50. Descrambles the scrambled portion of the data packets stored in < RTI ID = 0.0 >

종래의 제 2 디스크램블 방식에 따르면, 난독 교정 테이블 전체를 메모리에 로드해야 하는데, AV 컨텐트를 재생하는 동안, 난독 교정 테이블 전체를 메모리에 로드한 상태에서 디스크램블을 동시에 수행한다는 것은 플레이어의 메모리에 상당한 부하를 초래할 수 있다는 문제점이 있었다. According to the second conventional descrambling method, the entire obfuscation correction table must be loaded into the memory, and while the AV content is played back, simultaneously performing descrambling with the entire obfuscation correction table loaded into the memory is performed in the memory of the player. There was a problem that it could cause a significant load.

본 발명이 이루고자 하는 기술적 과제는 AV 컨텐트의 중간 중간에 걸린 스크램블에 대한 디스크램블 작업을 신속하게 처리하고, 디스크램블로 인한 시스템 부하를 줄일 수 있는 방법 및 장치를 제공하는데 있다. 또한, 상기 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다.An object of the present invention is to provide a method and apparatus for quickly processing a descrambling operation for a scramble in the middle of an AV content and reducing a system load due to descrambling. The present invention also provides a computer-readable recording medium having recorded thereon a program for executing the method on a computer.

상기 기술적 과제를 해결하기 위한 본 발명에 따른 제 1 디스크램블 방법은 스크램블로 인하여 변형된 스트림의 제 1 변형 부분을 교정하기 위한 제 1 디스크램블 정보로부터 상기 스트림의 제 2 변형 부분을 교정하기 위한 제 2 디스크램블 정보의 위치 정보를 획득하는 단계; 및 상기 제 1 디스크램블 정보에 기초하여 상 기 제 1 변형 부분을 디스크램블하는 단계를 포함한다. The first descramble method according to the present invention for solving the technical problem is a first for correcting the second deformed portion of the stream from the first descramble information for correcting the first deformed portion of the stream deformed due to scramble Obtaining location information of the descramble information; And descrambling the first deformable portion based on the first descramble information.

상기 다른 기술적 과제를 해결하기 위한 본 발명에 따른 제 1 디스크램블 장치는 스크램블로 인하여 변형된 스트림을 구성하는 패킷들 중 제 1 패킷으로부터 상기 제 1 패킷의 변형 부분을 교정하기 위한 제 1 디스크램블 정보를 추출하는 추출부; 및 상기 추출부에 의해 추출된 제 1 디스크램블 정보로부터 상기 패킷들 중 제 2 패킷의 변형 부분을 교정하기 위한 제 2 디스크램블 정보의 위치 정보를 획득하고, 상기 제 1 디스크램블 정보로부터 계산된 상기 제 1 패킷의 변형 부분의 위치에 상기 제 1 패킷의 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기하는 겹쳐쓰기부를 포함한다. The first descramble device according to the present invention for solving the other technical problem is the first descramble information for correcting the modified portion of the first packet from the first packet among the packets constituting the modified stream due to scramble Extraction unit for extracting; And obtaining position information of the second descramble information for correcting a deformed portion of a second packet of the packets from the first descramble information extracted by the extracting unit, and calculating the calculated information from the first descramble information. And an overwrite portion for overwriting a descramble value for correcting the modified portion of the first packet at a position of the modified portion of the first packet.

상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 제 1 디스크램블 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다. In order to solve the above further technical problem, the present invention provides a computer-readable recording medium having recorded thereon a program for executing the above-described first descramble method on a computer.

상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 제 2 디스크램블 방법은 스크램블로 인하여 변형된 스트림의 변형 부분을 교정하기 위한 디스크램블 정보로부터 상기 디스크램블 정보를 제공한 패킷의 절대적 위치 정보를 획득하는 단계; 상기 획득된 절대적 위치 정보를 기준으로 상기 변형 부분의 위치를 계산하는 단계; 및 상기 계산된 위치에 상기 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기하는 단계를 포함한다. In accordance with another aspect of the present invention, there is provided a second descramble method according to the present invention. The absolute position information of a packet providing the descramble information is obtained from the descramble information for correcting a deformed portion of a stream deformed due to scramble. Making; Calculating a position of the modified part based on the obtained absolute position information; And overwriting a descramble value for correcting the deformed portion at the calculated position.

상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 제 2 디스크램블 장치는 스크램블로 인하여 변형된 스트림으로부터 상기 스트림의 변형 부분을 교정 하기 위한 디스크램블 정보를 추출하는 추출부; 및 상기 추출부에 의해 추출된 디스크램블 정보로부터 상기 디스크램블 정보를 포함하는 패킷의 절대적 위치 정보를 획득하고, 상기 획득된 절대적 위치 정보를 기준으로 계산된 위치에 상기 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기하는 겹쳐쓰기부를 포함한다.According to another aspect of the present invention, there is provided a second descramble device including an extractor configured to extract descramble information for correcting a deformed portion of a stream from a stream deformed due to scramble; And descrambling for acquiring absolute position information of a packet including the descramble information from the descramble information extracted by the extracting unit, and correcting the deformed portion at a position calculated based on the obtained absolute position information. Contains an overwrite section that overwrites a value.

상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 제 2 디스크램블 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다. In order to solve the above further technical problem, the present invention provides a computer-readable recording medium having recorded thereon a program for executing the above-described second descramble method on a computer.

이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 9는 본 발명의 바람직한 일 실시예에 따른 제 1 플레이어의 구성도이다.9 is a block diagram of a first player according to an embodiment of the present invention.

도 9를 참조하면, 본 실시예에 따른 제 1 플레이어(6)는 트랙 버퍼(61), 해독부(62), 버퍼(63), 디먹스(64), 복호화부(65), 가상 머신(66), 플레이어 정보 데이터베이스(67), SP 레지스터(68), FUT 추출부(69), 연산부(70), 및 겹쳐쓰기부(71)로 구성된다.Referring to FIG. 9, the first player 6 according to the present embodiment may include a track buffer 61, a decryption unit 62, a buffer 63, a demux 64, a decryption unit 65, and a virtual machine ( 66, the player information database 67, the SP register 68, the FUT extracting section 69, the calculating section 70, and the overwriting section 71.

트랙 버퍼(61)는 디스크(5)로부터 AV 스트림을 독출하고, 해독부(62)에서의 해독 처리 속도에 대응하기 위하여, 이 AV 스트림을 일시적으로 저장한다. 트랙 버퍼(61)에 저장된 AV 스트림은 암호화된 형태의 AV 스트림이다.The track buffer 61 reads out the AV stream from the disc 5 and temporarily stores this AV stream in order to correspond to the decoding processing speed in the decryption unit 62. The AV stream stored in the track buffer 61 is an AV stream in encrypted form.

해독부(62)는 AACS 규격에 따라 트랙 버퍼(61)에 저장된 AV 스트림에 해당하는 타이틀 키(Kt)를 사용하여 트랙 버퍼(61)에 저장된 AV 스트림을 해독한다. The decryption unit 62 decrypts the AV stream stored in the track buffer 61 using the title key Kt corresponding to the AV stream stored in the track buffer 61 according to the AACS standard.

버퍼(63)는 복호화부(65)에서의 복호화 처리 속도에 대응하기 위하여, 해독 부(62)에 의해 해독된 AV 스트림을 일시적으로 저장한다. 버퍼(63)에 저장된 AV 스트림은 스크램블로 인해 변형되고, MPEG-2 규격에 따라 부호화된 형태의 AV 스트림이다. The buffer 63 temporarily stores the AV stream decrypted by the decryption unit 62 in order to correspond to the decoding processing speed in the decryption unit 65. The AV stream stored in the buffer 63 is modified due to scramble and is an AV stream encoded in the MPEG-2 standard.

디먹스(64)는 MPEG-2 규격에 따라 버퍼(63)에 저장된 AV 스트림을 디먹싱함으로서 버퍼(63)에 저장된 AV 스트림으로부터 부호화된 형태의 AV 컨텐트 및 원래의 AV 컨텐트를 복원하기 위한 여러 가지 정보를 추출한다. 본 실시예에 따르면, 디먹스(64)는 종래와 달리 버퍼(63)에 저장된 AV 스트림으로부터 난독 교정 테이블을 추출하지는 않는다. 이러한 기능은 FUT 추출부(69)가 담당한다.The demux 64 demuxes the AV stream stored in the buffer 63 according to the MPEG-2 standard to restore the encoded AV content and the original AV content from the AV stream stored in the buffer 63. Extract the information. According to this embodiment, the demux 64 does not extract the obfuscation correction table from the AV stream stored in the buffer 63 unlike the conventional art. This function is in charge of the FUT extraction section 69.

복호화부(65)는 MPEG-2 규격에 따라 디먹스(64)에 의해 추출된 AV 컨텐트를 복호화함으로서 원래의 AV 컨텐트를 복원한다.  The decoder 65 restores the original AV content by decoding the AV content extracted by the demux 64 according to the MPEG-2 standard.

가상 머신(66)은 디스크(5)로부터 이 디스크(5)에 저장된 AV 스트림에 포함된 AV 컨텐트를 보호하기 위한 컨텐트 코드를 독출하고, 이 컨텐트 코드를 실행함으로서 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성한다. 보다 상세하게 설명하면, 가상 머신(66)은 플레이어 정보 데이터베이스(67)에 저장된 플레이어 정보와 컨텐트 코드 실행 결과로서 획득된 플레이어 정보를 비교함으로서 플레이어(6)가 디바이스 키 셋을 노출한 플레이어인지를 판단하고, 그 결과 디바이스 키 셋을 노출한 플레이어가 아닌 것으로 판단된 경우에만 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성하고, 디바이스 키 셋을 노출한 플레이어인 것으로 판단된 경우에는 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성하지 않는다. The virtual machine 66 reads the content code for protecting the AV content contained in the AV stream stored in the disk 5 from the disk 5, and executes the content code to execute the secret parameter value, the secret parameter ID, and Generates forensic mark ID. More specifically, the virtual machine 66 compares the player information stored in the player information database 67 with the player information obtained as a result of executing the content code to determine whether the player 6 has exposed the device key set. As a result, a secret parameter value, a secret parameter ID, and a forensic mark ID are generated only when it is determined that the player key set is not exposed, and a secret parameter value when it is determined that the device key set is exposed. Do not generate secret parameter IDs, and forensic mark IDs.

SP 레지스터(68)는 가상 머신(66)에 의해 생성된 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 저장한다.The SP register 68 stores secret parameter values, secret parameter IDs, and forensic mark IDs generated by the virtual machine 66.

FUT 추출부(69)는 버퍼(63)에 저장된 AV 스트림을 파싱함으로서 난독 교정 테이블을 포함하는 PMT 패킷을 검색하고, 이 PMT 패킷으로부터 난독 교정 테이블을 추출한다. FUT 추출부(69)는 난독 교정 테이블 추출만을 수행함으로서 보다 신속하게 난독 교정 테이블을 추출할 수 있다. 교정 테이블은 AV 스트림의 중간 중간에 걸린 스크램블로 인하여 변형된 AV 스트림의 변형 부분을 교정하기 위한 디스크램블 정보가 기록된 테이블이다. 난독 교정 테이블은 교정 테이블의 값들이 용이하게 파악될 수 없도록 이 교정 테이블의 값들과 비밀 파라미터 값들을 배타적 논리합한 값이다.The FUT extractor 69 retrieves the PMT packet including the obfuscation correction table by parsing the AV stream stored in the buffer 63, and extracts the obfuscation correction table from the PMT packet. The FUT extractor 69 may extract the obfuscation correction table more quickly by performing only the obfuscation correction table extraction. The calibration table is a table in which descramble information for correcting the deformed portion of the deformed AV stream due to the scramble in the middle of the AV stream is recorded. The obfuscation correction table is an exclusive OR of the values of the correction table and the secret parameter values so that the values of the correction table cannot be easily understood.

FUT 추출부(69)는 겹쳐쓰기부(71)에 의해 획득된, 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보, 즉 연산부(70)에 의해 복원된 교정 테이블을 제공한 PMT 패킷과 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷간의 패킷 개수를 기준으로 AV 스트림으로부터 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 정확한 위치를 신속하게 찾을 수 있다. 즉, FUT 추출부(69)는 겹쳐쓰기부(71)에 의해 획득된, 연산부(70)에 의해 복원된 교정 테이블을 제공한 PMT 패킷의 넘버에 이 PMT 패킷과 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷간의 패킷 개수를 가산한 값에 해당하는 위치의 PMT 패킷으로부터 난독 교정 테이블을 추출한다.The FUT extractor 69 includes the relative position information of the next PMT packet including the other obfuscation correction table obtained by the overwrite unit 71, that is, the PMT packet which provides the correction table restored by the operation unit 70; The exact position of the next PMT packet including the other obfuscation table can be quickly found from the AV stream based on the number of packets between the next PMT packets including the other obfuscation table. That is, the FUT extractor 69 includes the obfuscation correction table that is different from the PMT packet in the number of PMT packets provided by the overwrite unit 71 and restored by the operation unit 70. The obfuscation correction table is extracted from the PMT packet at the position corresponding to the sum of the number of packets between the PMT packets.

그런데, 본 실시예의 경우, 일단 난독 교정 테이블을 포함하는 어느 하나의 PMT 패킷의 절대적 위치 정보를 알아내기만 하면, 다음 PMT 패킷들의 위치는 신속하게 찾을 수 있지만, 난독 교정 테이블을 포함하는 최초의 PMT 패킷의 위치를 찾는 것이 어렵다. 다음과 같은 여러 가지 방법으로 이 문제를 해결할 수 있다.However, in the present embodiment, once the absolute position information of any one PMT packet including the obfuscation correction table is found, the location of the next PMT packets can be quickly found, but the first PMT including the obfuscation correction table can be found. It is difficult to locate the packet. There are several ways to solve this problem.

BD(Blu-ray Disc) 규격에 따르면, MPEG-2 전송 스트림은 적어도 하나 이상의 정렬 단위(aligned unit)로 구성되고, 이 정렬 단위는 32개의 소스 패킷들로 묶어 놓은 것이다. 이 정렬 단위로 부호화 및 복호화 과정이 수행된다. 이 점에 착안하여, 이 정렬 단위를 구성하는 패킷들 중 첫 번째 패킷 내에 첫 번째 난독 교정 테이블을 둠으로서 FUT 추출부(69)는 모든 PMT 패킷들을 파싱할 필요 없이 이 정렬 단위를 구성하는 패킷들 중 첫 번째 패킷만을 파싱하면 된다. 따라서, FUT 추출부(69)에서의 파싱 량은 1/32로 줄어들게 된다. 즉, FUT 추출부(69)는 버퍼(63)에 저장된 AV 스트림의 정렬 단위에 해당하는 패킷들 중 첫 번째 패킷을 파싱함으로서 첫 번째 난독 교정 테이블을 포함하는 PMT 패킷을 검색하고, 이 PMT 패킷으로부터 첫 번째 난독 교정 테이블을 추출한다.According to the Blu-ray Disc (BD) standard, an MPEG-2 transport stream consists of at least one aligned unit, which is grouped into 32 source packets. Encoding and decoding processes are performed in this alignment unit. With this in mind, by putting the first obfuscation table in the first of the packets constituting this sorting unit, the FUT extractor 69 does not need to parse all the PMT packets, and thus the packets constituting this sorting unit. Only the first packet needs to be parsed. Therefore, the amount of parsing in the FUT extraction section 69 is reduced to 1/32. That is, the FUT extractor 69 retrieves the PMT packet including the first obfuscation correction table by parsing the first packet among the packets corresponding to the alignment unit of the AV stream stored in the buffer 63, and from this PMT packet Extract the first obfuscation correction table.

MPEG-2 TS 패킷의 헤더에 어떤 PMT 패킷이 난독 교정 테이블을 포함하고 있는지 여부를 나타내는 플래그를 둘 수도 있다. FUT 추출부(69)는 버퍼(63)에 저장된 AV 스트림을 구성하는 패킷들의 플래그의 값을 검사함으로서 이 패킷들이 난독 교정 테이블을 포함하는지 여부를 판단하고, 이 판단 결과에 기초하여 첫 번째 난독 교정 테이블을 포함하는 PMT 패킷을 검색하고, 이 PMT 패킷으로부터 첫 번째 난독 교정 테이블을 추출한다.In the header of the MPEG-2 TS packet, a flag indicating whether a PMT packet includes an obfuscation correction table may be provided. The FUT extractor 69 determines whether these packets include an obfuscation correction table by checking the values of flags of packets constituting the AV stream stored in the buffer 63, and based on the determination result, corrects the first obfuscation. The PMT packet containing the table is retrieved and the first obfuscation correction table is extracted from the PMT packet.

본 실시예에 사용되는 교정 테이블의 구조는 도 2에 도시된 교정 테이블의 구조와 동일하다. 다만, 이 교정 테이블에 포함된 교정 엔트리의 구조는 도 3에 도시된 교정 엔트리의 구조와 다르다.The structure of the calibration table used in this embodiment is the same as that of the calibration table shown in FIG. However, the structure of the calibration entry included in this calibration table is different from that of the calibration entry shown in FIG.

도 10은 본 발명의 바람직한 일 실시예에 따른 교정 엔트리의 구조도이다.10 is a structural diagram of a calibration entry according to one preferred embodiment of the present invention.

도 10을 참조하면, 본 실시예에 따른 교정 엔트리는 도 3에 도시된 교정 엔트리와 거의 동일하나, 다음의 두 가지 항목이 추가되었다. "Absolute_SPN" 필드는 현재 난독이 풀린 교정 테이블을 포함하는 PMT 패킷의 절대적 위치 정보를 나타낸다. 본 실시예에서, PMT 패킷의 절대적 위치 정보란 AV 스트림을 구성하는 패킷들 전체에서 난독 교정 테이블을 포함하는 패킷이 몇 번째인지를 나타내는 패킷 넘버를 의미한다. 또한, "Next_FUT_Position" 필드는 또 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보를 나타낸다. 본 실시예에서, PMT 패킷의 상대적 위치 정보란 어떤 난독 교정 테이블을 포함하는 PMT 패킷으로부터 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷이 몇 패킷 떨어져 있는지를 나타내는 패킷 개수를 의미한다.Referring to FIG. 10, the calibration entry according to the present embodiment is almost the same as the calibration entry shown in FIG. 3, but the following two items have been added. The "Absolute_SPN" field indicates absolute position information of a PMT packet including a current deobfuscated calibration table. In the present embodiment, the absolute position information of the PMT packet means a packet number indicating the number of packets including the obfuscation correction table in all the packets constituting the AV stream. In addition, the "Next_FUT_Position" field indicates relative position information of the next PMT packet including another obfuscation correction table. In the present embodiment, the relative position information of the PMT packet means the number of packets indicating how many packets the PMT packet including another obfuscation table is separated from the next PMT packet including another obfuscation table.

연산부(70)는 SP 레지스터(68)에 저장된 비밀 파라미터 값들과 FUT 추출부(69)에 의해 추출된 난독 교정 테이블을 배타적 논리합함으로서 원래의 교정 테이블을 복원한다. 난독 교정 테이블은 원래의 교정 테이블에 대해 비밀 파라미터 값들로 배타적 논리합 연산이 수행된 것이므로, 연산부(68)는 이러한 난독 교정 테이블을 상기 배타적 논리합 연산에 사용된 비밀 파라미터 값들과 동일한 값들로 다시 한번 더 배타적 논리합 연산을 수행함으로서 원래의 교정 테이블을 복원한다.The operation unit 70 restores the original calibration table by exclusive OR of the secret parameter values stored in the SP register 68 and the obfuscation correction table extracted by the FUT extraction unit 69. Since the obfuscation correction table is an exclusive OR operation performed on secret parameter values with respect to the original correction table, the operation unit 68 once again exclusively sets the obfuscation correction table to the same values as the secret parameter values used in the exclusive OR operation. Restore the original calibration table by performing the OR operation.

겹쳐쓰기부(71)는 연산부(70)에 의해 복원된 교정 테이블로부터 이 교정 테 이블을 제공한 PMT 패킷의 절대적 위치 정보를 획득하고, 이것을 FUT 추출부(69)에 제공한다. 겹쳐쓰기부(71)는 이와 같이 획득된 PMT 패킷의 절대적 위치 정보를 기준으로 스크램블로 인하여 변형된 패킷의 정확한 위치를 용이하게 찾을 수 있다. The overwrite section 71 obtains the absolute position information of the PMT packet which provided this calibration table from the calibration table restored by the calculating section 70, and provides it to the FUT extraction section 69. The overwrite unit 71 can easily find the exact location of the modified packet due to the scramble based on the absolute position information of the PMT packet thus obtained.

또한, 겹쳐쓰기부(71)는 연산부(70)에 의해 복원된 교정 테이블로부터 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보를 획득하고, 이것을 FUT 추출부(69)에 제공한다. In addition, the overwrite unit 71 obtains the relative position information of the next PMT packet including the other obfuscation correction table from the correction table restored by the operation unit 70, and provides this to the FUT extraction unit 69.

또한, 겹쳐쓰기부(71)는 이와 같이 획득된 PMT 패킷의 절대적 위치 정보를 기준으로 스크램블로 인하여 변형된 패킷의 변형 부분의 위치를 계산한다. 또한, 겹쳐쓰기부(71)는 이와 같이 계산된 위치에 스크램블로 인하여 변형된 패킷의 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기함으로서 AV 스트림의 중간 중간에 걸린 스크램블이 풀리게 된다. In addition, the overwrite unit 71 calculates the position of the modified portion of the modified packet due to the scramble based on the absolute position information of the PMT packet thus obtained. In addition, the overwrite section 71 overwrites the descrambling value for correcting the deformed portion of the deformed packet due to the scrambled position so that the scrambled in the middle of the AV stream is released.

도 11은 본 발명의 바람직한 일 실시예에 따른 디스크램블 동작을 도시한 도면이다.11 illustrates a descramble operation according to an embodiment of the present invention.

도 11을 참조하면, FUT 추출부(69)는 버퍼(63)에 저장된 AV 스트림을 파싱함으로서 난독 교정 테이블을 포함하는 PMT 패킷을 검색하고, 이 PMT 패킷으로부터 난독 교정 테이블을 추출한다. 이어서, 연산부(70)는 SP 레지스터(68)에 저장된 비밀 파라미터 값들과 FUT 추출부(69)에 의해 추출된 난독 교정 테이블을 배타적 논리합함으로서 원래의 교정 테이블을 복원한다. 이어서, 겹쳐쓰기부(71)는 연산부(70)에 의해 복원된 교정 테이블로부터 이 교정 테이블을 제공한 PMT 패킷의 절대적 위치 정보, 즉 PMT 패킷의 넘버를 획득한다.Referring to FIG. 11, the FUT extractor 69 retrieves a PMT packet including an obfuscation correction table by parsing an AV stream stored in the buffer 63, and extracts an obfuscation correction table from the PMT packet. Subsequently, the operation unit 70 restores the original calibration table by performing exclusive OR on the secret parameter values stored in the SP register 68 and the obfuscation correction table extracted by the FUT extraction unit 69. Subsequently, the overwriting unit 71 obtains the absolute position information of the PMT packet, that is, the number of the PMT packet, from the calibration table restored by the operation unit 70.

이어서, 겹쳐쓰기부(71)는 버퍼(63)에 현재 입력 중인 패킷의 넘버로부터 난독 교정 테이블을 포함하는 PMT 패킷의 넘버와 스크램블로 인하여 변형된 패킷의 변형 부분의 상대적 위치 정보, 즉 이 PMT 패킷과 변형 부분간의 패킷 개수의 합을 감함으로서 스크램블로 인하여 변형된 패킷의 변형 부분의 위치를 계산한다. 버퍼(63)로 AV 스트림을 구성하는 패킷들이 차례대로 입력되고, 버퍼(63)는 버퍼(63)로 입력되는 패킷들을 차례대로 카운팅함으로서 이 패킷들의 절대적 패킷 넘버를 알 수 있다. 버퍼(63)는 버퍼(63)에 현재 입력 중인 패킷의 넘버를 겹쳐쓰기부(71)에 제공한다. Subsequently, the overwrite unit 71 determines the relative position information of the modified portion of the packet modified due to the scrambled number and number of the PMT packet including the obfuscation correction table from the number of the packet currently being input to the buffer 63, that is, the PMT packet. The position of the deformed portion of the deformed packet due to scramble is calculated by subtracting the sum of the number of packets between the and deformed portions. Packets constituting the AV stream are sequentially input to the buffer 63, and the buffer 63 can know the absolute packet numbers of these packets by counting the packets input to the buffer 63 in order. The buffer 63 provides the overwrite unit 71 with the number of packets currently being input to the buffer 63.

이와 같이, 겹쳐쓰기부(71)는 난독 교정 테이블을 포함하는 PMT 패킷의 넘버와 같은 절대적 위치 정보를 기준으로 스크램블로 인하여 변형된 패킷의 변형 부분의 위치를 계산하기 때문에 난독 교정 테이블을 포함하는 PMT 패킷이 버퍼(63)를 이미 빠져나갔고, 그 후 몇 개의 패킷들이 추가로 빠져나갔는지를 고려하지 않아도 된다. 즉, 버퍼(63)에 현재 입력 중인 패킷의 넘버가 "Packer Number 2", 난독 교정 테이블을 포함하는 PMT 패킷의 넘버가 "Packet Number 1", 이 PMT 패킷과 변형 부분간의 패킷 개수가 "relative_SPN"이면, 겹쳐쓰기부(71)는 버퍼(63)의 입구로부터 "Packet Number 2-(Packet Number 1 + relative_SPN)"만큼 거슬러 올라가면 스크램블로 인하여 변형된 패킷의 정확한 위치를 용이하게 찾을 수 있다. As such, the overwrite unit 71 calculates the position of the deformed portion of the deformed packet due to the scramble based on absolute position information such as the number of the PMT packet including the obfuscation correction table, and thus includes the PMT correction table. It is not necessary to consider how many packets have already exited the buffer 63 and thereafter. That is, the number of packets currently input to the buffer 63 is "Packer Number 2", the number of PMT packets including the obfuscation correction table is "Packet Number 1", and the number of packets between the PMT packets and the modified part is "relative_SPN". In this case, the overwrite unit 71 can easily find the exact location of the deformed packet due to scramble as far back as "Packet Number 2-(Packet Number 1 + relative_SPN)" from the inlet of the buffer 63.

이어서, 겹쳐쓰기부(71)는 이와 같이 계산된 위치에 스크램블로 인하여 변형된 패킷의 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기한다. 겹쳐쓰기부(71)에서의 상기 동작은 스크램블로 인하여 변형된 패킷의 변형 부분들의 개수만큼 반복하여 수행된다. 본 실시예의 경우, 스크램블로 인하여 변형된 패킷의 변형 부분들의 개수가 2개이기 때문에 2번 반복하여 수행된다. Subsequently, the overwrite section 71 overwrites the descramble value for correcting the deformed portion of the deformed packet due to the scrambled position at the calculated position. The operation in the overwrite unit 71 is repeatedly performed by the number of modified parts of the packet modified by the scramble. In the present embodiment, since the number of modified parts of the packet modified by the scramble is two, it is performed twice.

도 12는 본 발명의 바람직한 일 실시예에 따른 제 2 플레이어의 구성도이다.12 is a block diagram of a second player according to an embodiment of the present invention.

도 12를 참조하면, 본 실시예에 따른 제 2 플레이어(8)는 트랙 버퍼(81), 해독부(82), 버퍼(83), 디먹스(84), 복호화부(85), 가상 머신(86), 플레이어 정보 데이터베이스(87), SP 레지스터(88), 메모리(89), FUT 추출부(90), 및 연산부(91), 및 겹쳐쓰기부(92)로 구성된다.Referring to FIG. 12, the second player 8 according to the present embodiment may include a track buffer 81, a decryption unit 82, a buffer 83, a demux 84, a decryption unit 85, and a virtual machine ( 86, the player information database 87, the SP register 88, the memory 89, the FUT extracting unit 90, the calculating unit 91, and the overwriting unit 92.

트랙 버퍼(81)는 디스크(7)로부터 AV 스트림을 독출하고, 해독부(82)에서의 해독 처리 속도에 대응하기 위하여, 이 AV 스트림을 일시적으로 저장한다. 트랙 버퍼(81)에 저장된 AV 스트림은 암호화된 형태의 AV 스트림이다.The track buffer 81 reads the AV stream from the disc 7 and temporarily stores the AV stream in order to correspond to the decoding processing speed in the decryption unit 82. The AV stream stored in the track buffer 81 is an AV stream in encrypted form.

해독부(82)는 AACS 규격에 따라 트랙 버퍼(81)에 저장된 AV 스트림에 해당하는 타이틀 키(Kt)를 사용하여 트랙 버퍼(81)에 저장된 AV 스트림을 해독한다. The decryption unit 82 decrypts the AV stream stored in the track buffer 81 using the title key Kt corresponding to the AV stream stored in the track buffer 81 according to the AACS standard.

버퍼(83)는 복호화부(85)에서의 복호화 처리 속도에 대응하기 위하여, 해독부(82)에 의해 해독된 AV 스트림을 일시적으로 저장한다. 버퍼(83)에 저장된 AV 스트림은 스크램블로 인해 변형되고, MPEG-2 규격에 따라 부호화된 형태의 AV 스트림이다. The buffer 83 temporarily stores the AV stream decrypted by the decryption unit 82 to correspond to the decoding processing speed in the decryption unit 85. The AV stream stored in the buffer 83 is modified due to scramble and is an AV stream encoded in the MPEG-2 standard.

디먹스(84)는 MPEG-2 규격에 따라 버퍼(83)에 저장된 AV 스트림을 디먹싱함으로서 버퍼(83)에 저장된 AV 스트림으로부터 부호화된 형태의 AV 컨텐트 및 원래의 AV 컨텐트를 복원하기 위한 여러 가지 정보를 추출한다. The demux 84 demultiplexes the AV stream stored in the buffer 83 according to the MPEG-2 standard to restore the encoded AV content and the original AV content from the AV stream stored in the buffer 83. Extract the information.

복호화부(85)는 MPEG-2 규격에 따라 디먹스(84)에 의해 추출된 AV 컨텐트를 복호화함으로서 원래의 AV 컨텐트를 복원한다. The decoder 85 restores the original AV content by decoding the AV content extracted by the demux 84 according to the MPEG-2 standard.

가상 머신(86)은 디스크(7)로부터 이 디스크(7)에 저장된 AV 타이틀을 보호하기 위한 컨텐트 코드를 독출하고, 이 컨텐트 코드를 실행함으로서 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성한다. 또한, 가상 머신(86)은 디스크(7)로부터 난독 축약 교정 테이블을 독출하고, 첫 번째 난독 교정 테이블을 포함하는 첫 번째 패킷을 검색할 때만 이것을 메모리(89)에 로드한다. The virtual machine 86 reads the content code for protecting the AV title stored in the disc 7 from the disc 7 and executes the content code to generate a secret parameter value, secret parameter ID, and forensic mark ID. do. In addition, the virtual machine 86 reads the obfuscation correction table from the disk 7 and loads it into the memory 89 only when retrieving the first packet including the first obfuscation correction table.

본 실시예에 사용되는 축약 교정 테이블의 구조는 도 7에 도시된 교정 테이블의 구조와 동일하다. 다만, 이 축약 교정 테이블에 포함된 FUT 블록의 구조는 도 8에 도시된 FUT 블록의 구조와 다르다.The structure of the abbreviated calibration table used in this embodiment is the same as that of the calibration table shown in FIG. However, the structure of the FUT block included in this abbreviated correction table is different from that of the FUT block shown in FIG.

도 13은 본 발명의 바람직한 일 실시예에 따른 FUT 블록의 구조도이다.13 is a structural diagram of a FUT block according to an embodiment of the present invention.

도 13을 참조하면, 본 실시예에 따른 FUT 블록은 도 8에 도시된 FUT 블록으로부터 "FixUpEntry" 필드가 제거되었다. 본 실시예에 따르면, 도 8에 도시된 FUT 블록의 대부분을 차지하는 "FixUpEntry" 필드에 기록된 정보는 AV 스트림으로부터 얻을 수 있기 때문에 본 실시예에 따른 FUT 블록에는 난독 교정 테이블을 포함하는 PMT 패킷의 넘버인 "Base SPN for each FixUpEntry" 필드만을 남긴다. 그 결과, 본 실시예에 따른 축약 교정 테이블은 원래의 교정 테이블에 비해 그 용량이 1/5로 줄어들게 된다. Referring to FIG. 13, in the FUT block according to the present embodiment, the “FixUpEntry” field is removed from the FUT block shown in FIG. 8. According to the present embodiment, since information recorded in the "FixUpEntry" field, which occupies most of the FUT block shown in FIG. 8, can be obtained from an AV stream, the FUT block according to the present embodiment includes a PMT packet including an obfuscation correction table. Only the number "Base SPN for each FixUpEntry" field is left. As a result, the abbreviated calibration table according to the present embodiment is reduced in capacity by 1/5 compared with the original calibration table.

이와 같이, 원래의 난독 교정 테이블보다 훨씬 용량이 작은 난독 축약 교정 테이블을 첫 번째 난독 교정 테이블을 포함하는 PMT 패킷을 검색할 때만 메모리(89)에 로드함으로서 난독 교정 테이블 전체를 메모리에 로드한 상태에서 디스크램 블을 동시에 수행해야 하는 부담을 제거할 수 있게 되었다. As such, the entire obfuscation table is loaded into the memory by loading the obfuscation correction table, which is much smaller than the original obfuscation table, into the memory 89 only when the PMT packet including the first obfuscation table is retrieved. The burden of running descrambles at the same time can be eliminated.

SP 레지스터(88)는 가상 머신(86)에 의해 생성된 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 저장한다.The SP register 88 stores the secret parameter value, secret parameter ID, and forensic mark ID generated by the virtual machine 86.

FUT 추출부(90)는 겹쳐쓰기부(92)로부터 제공받은 첫 번째 난독 교정 테이블을 포함하는 PMT 패킷의 절대적 위치 정보, 즉 이 PMT 패킷의 넘버에 해당하는 위치의 PMT 패킷으로부터 첫 번째 난독 교정 테이블을 추출한다. The FUT extractor 90 is the absolute position information of the PMT packet including the first obfuscation correction table provided from the overwrite unit 92, that is, the first obfuscation correction table from the PMT packet at the position corresponding to the number of the PMT packet. Extract

또한, FUT 추출부(90)는 PMT 패킷의 넘버에 겹쳐쓰기부(92)로부터 제공받은 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보를 기준으로 AV 스트림으로부터 난독 교정 테이블을 추출한다. 보다 상세하게 설명하면, FUT 추출부(90)는 PMT 패킷의 넘버에 겹쳐쓰기부(92)로부터 제공받은 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보, 즉 PMT 패킷간의 패킷 개수를 가산한 값에 해당하는 위치의 PMT 패킷으로부터 난독 교정 테이블을 추출한다. FUT 추출부(90)는 상기된 과정을 반복함으로서 N 번째 난독 교정 테이블을 포함하는 PMT 패킷을 신속하게 찾을 수 있다.In addition, the FUT extractor 90 extracts the obfuscation correction table from the AV stream based on the relative position information of the next PMT packet including another obfuscation correction table provided from the overwriting unit 92 at the number of PMT packets. In more detail, the FUT extractor 90 adds the relative position information of the next PMT packet, that is, the number of packets between PMT packets, including another obfuscation correction table provided from the overwrite unit 92 to the number of PMT packets. The obfuscation table is extracted from the PMT packet corresponding to the value. The FUT extractor 90 may quickly find the PMT packet including the N th obfuscation correction table by repeating the above process.

연산부(91)는 SP 레지스터(88)에 저장된 비밀 파라미터 값들과 메모리(87)에 로드된 난독 축약 교정 테이블을 배타적 논리합함으로서 원래의 축약 교정 테이블을 복원한다. 또한, 연산부(91)는 SP 레지스터(88)에 저장된 비밀 파라미터 값들과 FUT 추출부(90)에 의해 추출된 난독 교정 테이블을 배타적 논리합함으로서 원래의 교정 테이블을 복원한다. The operation unit 91 restores the original reduced calibration table by exclusive OR of the secret parameter values stored in the SP register 88 and the obfuscated reduced calibration table loaded in the memory 87. In addition, the operation unit 91 restores the original calibration table by exclusive OR of the secret parameter values stored in the SP register 88 and the obfuscation correction table extracted by the FUT extraction unit 90.

겹쳐쓰기부(92)는 연산부(91)에 의해 복원된 축약 교정 테이블로부터 첫 번 째 교정 테이블을 포함하는 PMT 패킷의 절대적 위치 정보를 획득하고, 이것을 FUT 추출부(90)에 제공한다. The overwrite unit 92 obtains absolute position information of the PMT packet including the first calibration table from the reduced calibration table restored by the operation unit 91, and provides this to the FUT extraction unit 90.

겹쳐쓰기부(92)는 연산부(91)에 의해 복원된 교정 테이블로부터 이 교정 테이블을 제공한 PMT 패킷의 절대적 위치 정보를 획득한다. 또한, 겹쳐쓰기부(92)는 연산부(91)에 의해 복원된 교정 테이블로부터 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보를 획득하고, 이것을 FUT 추출부(90)에 제공한다. The overwriting section 92 obtains the absolute position information of the PMT packet which provided this calibration table from the calibration table restored by the calculating section 91. In addition, the overwrite unit 92 obtains the relative position information of the next PMT packet including the other obfuscation correction table from the correction table restored by the operation unit 91, and provides this to the FUT extraction unit 90.

또한, 겹쳐쓰기부(92)는 이와 같이 획득된 PMT 패킷의 절대적 위치 정보를 기준으로 스크램블로 인하여 변형된 패킷의 변형 부분의 위치를 계산한다. 또한, 겹쳐쓰기부(92)는 이와 같이 계산된 위치에 스크램블로 인하여 변형된 패킷의 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기함으로서 AV 스트림의 중간 중간에 걸린 스크램블이 풀리게 된다. 보다 상세하게 설명하면, 겹쳐쓰기부(92)는 버퍼(83)에 현재 입력 중인 패킷의 넘버로부터 난독 교정 테이블을 포함하는 PMT 패킷의 넘버와 스크램블로 인하여 변형된 패킷의 변형 부분의 상대적 위치 정보, 즉 이 PMT 패킷과 변형 부분간의 패킷 개수의 합을 감함으로서 스크램블로 인하여 변형된 패킷의 변형 부분의 위치를 계산한다. In addition, the overwrite unit 92 calculates the position of the modified portion of the modified packet due to the scramble based on the absolute position information of the PMT packet thus obtained. In addition, the overwrite section 92 overwrites the descramble value for correcting the deformed portion of the deformed packet due to the scrambled position so that the scrambled in the middle of the AV stream is released. In more detail, the overwrite unit 92 may include the relative position information of the modified portion of the modified packet due to the scrambled number of the PMT packet including the obfuscation correction table from the number of the packet currently being input to the buffer 83, In other words, by subtracting the sum of the number of packets between the PMT packet and the modified portion, the position of the modified portion of the modified packet due to scramble is calculated.

도 14-15는 본 발명의 바람직한 일 실시예에 따른 제 1 컨텐트 복원 방법의 흐름도이다.14-15 are flowcharts of a first content restoration method according to an embodiment of the present invention.

도 14-15를 참조하면, 본 실시예에 따른 제 1 컨텐트 복원 방법은 다음과 같은 단계들로 구성된다. 본 실시예에 따른 제 1 컨텐트 복원 방법은 도 9에 도시된 제 1 플레이어(6)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 9에 도시된 제 1 플레이어(6)에 관하여 이상에서 기술된 내용은 본 실시예에 따른 제 1 컨텐트 복원 방법에도 적용된다. 14-15, the first content restoration method according to the present embodiment includes the following steps. The first content reconstruction method according to the present embodiment consists of steps processed in time series in the first player 6 shown in FIG. Therefore, even if omitted below, the contents described above with respect to the first player 6 shown in FIG. 9 also apply to the first content restoration method according to the present embodiment.

141 단계에서 플레이어(6)는 디스크(5)로부터 AV 스트림을 독출하고, 이 AV 스트림을 일시적으로 저장한다. 141 단계에서 저장된 AV 스트림은 암호화된 형태의 AV 스트림이다.In step 141, the player 6 reads the AV stream from the disc 5, and temporarily stores this AV stream. The stored AV stream in step 141 is an encrypted AV stream.

142 단계에서 플레이어(6)는 AACS 규격에 따라 141 단계에서 저장된 AV 스트림에 해당하는 타이틀 키(Kt)를 사용하여 141 단계에서 저장된 AV 스트림을 해독한다. In step 142, the player 6 decrypts the AV stream stored in step 141 using the title key Kt corresponding to the AV stream stored in step 141 according to the AACS standard.

143 단계에서 플레이어(6)는 142 단계에서 해독된 AV 스트림을 일시적으로 저장한다. 143 단계에서 저장된 AV 스트림은 스크램블로 인해 변형되고, MPEG-2 규격에 따라 부호화된 형태의 AV 스트림이다. In step 143, the player 6 temporarily stores the decrypted AV stream in step 142. The AV stream stored in step 143 is modified due to scramble and is an AV stream encoded according to the MPEG-2 standard.

144 단계에서 플레이어(6)는 디스크(5)로부터 이 디스크(5)에 저장된 AV 스트림에 포함된 AV 컨텐트를 보호하기 위한 컨텐트 코드를 독출하고, 이 컨텐트 코드를 실행함으로서 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성한다. In step 144, the player 6 reads the content code for protecting the AV content contained in the AV stream stored in the disc 5 from the disc 5, and executes the content code to execute the secret parameter value, secret parameter ID. Generate for, and forensic mark IDs.

145 단계에서 플레이어(6)는 144 단계에서 생성된 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 저장한다.In step 145 the player 6 stores the secret parameter value, secret parameter ID, and forensic mark ID generated in step 144.

146 단계에서 플레이어(6)는 143 단계에서 저장된 AV 스트림의 정렬 단위에 해당하는 패킷들 중 첫 번째 패킷을 파싱함으로서 첫 번째 난독 교정 테이블을 포 함하는 PMT 패킷을 검색하고, 이 PMT 패킷으로부터 첫 번째 난독 교정 테이블을 추출한다. 또한, 146 단계에서 플레이어(6)는 143 단계에서 저장된 AV 스트림을 구성하는 패킷들의 플래그의 값을 검사함으로서 이 패킷들이 난독 교정 테이블을 포함하는지 여부를 판단하고, 이 판단 결과에 기초하여 첫 번째 난독 교정 테이블을 포함하는 PMT 패킷을 검색하고, 이 PMT 패킷으로부터 첫 번째 난독 교정 테이블을 추출할 수도 있다.In step 146, the player 6 retrieves the PMT packet including the first obfuscation correction table by parsing the first of the packets corresponding to the sorting unit of the AV stream stored in step 143, and from this PMT packet Extract the obfuscation correction table. In addition, in step 146, the player 6 determines whether these packets include an obfuscation correction table by checking the values of flags of packets constituting the AV stream stored in step 143, and based on the result of the determination, the first obfuscation is performed. The PMT packet containing the calibration table may be retrieved and the first obfuscation correction table may be extracted from the PMT packet.

147 단계에서 플레이어(6)는 145 단계에서 저장된 비밀 파라미터 값들과 146 단계 또는 152 단계에서 추출된 난독 교정 테이블을 배타적 논리합함으로서 원래의 교정 테이블을 복원한다. In step 147 the player 6 restores the original calibration table by exclusive OR of the secret parameter values stored in step 145 and the obfuscation correction table extracted in step 146 or 152.

148 단계에서 플레이어(6)는 147 단계에서 복원된 교정 테이블로부터 이 교정 테이블을 제공한 PMT 패킷의 절대적 위치 정보 및 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보를 획득한다. In step 148 the player 6 obtains the absolute position information of the PMT packet which provided this correction table from the correction table restored in step 147 and the relative position information of the next PMT packet including another obfuscation correction table.

149 단계에서 플레이어(6)는 148 단계에서 획득된 PMT 패킷의 절대적 위치 정보를 기준으로 스크램블로 인하여 변형된 패킷의 변형 부분의 위치를 계산한다. 보다 상세하게 설명하면, 149 단계에서 플레이어(6)는 143 단계에서의 저장을 위하여 현재 입력 중인 패킷의 넘버로부터 난독 교정 테이블을 포함하는 PMT 패킷의 넘버와 스크램블로 인하여 변형된 패킷의 변형 부분의 상대적 위치 정보, 즉 이 PMT 패킷과 변형 부분간의 패킷 개수의 합을 감함으로서 스크램블로 인하여 변형된 패킷의 변형 부분의 위치를 계산한다. In step 149, the player 6 calculates the position of the deformed portion of the deformed packet due to the scramble based on the absolute position information of the PMT packet obtained in step 148. In more detail, in step 149 the player 6 determines the relative number of the modified portion of the packet deformed due to the scramble of the number of PMT packets including the obfuscation correction table from the number of packets currently being input for storage in step 143. By subtracting the position information, that is, the sum of the number of packets between the PMT packet and the modified portion, the position of the modified portion of the modified packet due to scramble is calculated.

150 단계에서 플레이어(6)는 149 단계에서 계산된 위치에 스크램블로 인하여 변형된 패킷의 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기한다.In step 150 the player 6 overwrites the descramble value for correcting the deformed portion of the deformed packet due to the scrambled position in the step 149.

151 단계에서 플레이어(6)는 148 단계에서 획득된, 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보가 존재하는지 여부를 판단하고, 그 판단 결과 다음 PMT 패킷의 상대적 위치 정보가 존재하는 경우에는 152 단계로 진행하고, 다음 PMT 패킷의 상대적 위치 정보가 존재하지 않는 경우에는 153 단계로 진행한다. 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보가 존재하는지 여부를 판단한다는 것은 AV 스트림의 중간 중간에 걸린 스크램블이 모두 풀렸는지 여부를 판단한다는 것을 의미한다.In step 151, the player 6 determines whether the relative position information of the next PMT packet including the obfuscation correction table obtained in step 148 is present, and if the relative position information of the next PMT packet exists as a result of the determination, If the relative position information of the next PMT packet does not exist, the process proceeds to step 153. Determining whether there is relative position information of the next PMT packet including the obfuscation correction table means determining whether all scrambles in the middle of the AV stream have been solved.

152 단계에서 플레이어(6)는 148 단계에서 획득된, 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보를 기준으로 AV 스트림으로부터 난독 교정 테이블을 추출하고, 147 단계로 돌아간다. In step 152, the player 6 extracts the obfuscation correction table from the AV stream based on the relative position information of the next PMT packet including the obfuscation correction table obtained in step 148, and returns to step 147.

153 단계에서 플레이어(6)는 MPEG-2 규격에 따라 144 단계 ~ 152 단계에 의해 디스크램블된 AV 스트림을 디먹싱함으로서 143 단계에서 저장된 AV 스트림으로부터 부호화된 형태의 AV 컨텐트 및 원래의 AV 컨텐트를 복원하기 위한 여러 가지 정보를 추출한다. In step 153, the player 6 restores the encoded AV content and the original AV content from the AV stream stored in step 143 by demuxing the AV stream descrambled in steps 144 to 152 according to the MPEG-2 standard. Extract a variety of information for

154 단계에서 플레이어(6)는 MPEG-2 규격에 따라 153 단계에서 추출된 AV 컨텐트를 복호화함으로서 원래의 AV 컨텐트를 복원한다. In step 154, the player 6 restores the original AV content by decoding the AV content extracted in step 153 according to the MPEG-2 standard.

도 16-17은 본 발명의 바람직한 일 실시예에 따른 제 2 컨텐트 복원 방법의 흐름도이다.16-17 are flowcharts of a second content restoration method according to an embodiment of the present invention.

도 16-17을 참조하면, 본 실시예에 따른 제 2 컨텐트 복원 방법은 다음과 같 은 단계들로 구성된다. 본 실시예에 따른 제 2 컨텐트 복원 방법은 도 12에 도시된 제 2 플레이어(8)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 12에 도시된 제 2 플레이어(8)에 관하여 이상에서 기술된 내용은 본 실시예에 따른 제 2 컨텐트 복원 방법에도 적용된다. 16-17, the second content reconstruction method according to the present embodiment includes the following steps. The second content reconstruction method according to the present embodiment consists of steps processed in time series in the second player 8 shown in FIG. Therefore, even if omitted below, the contents described above with respect to the second player 8 shown in FIG. 12 are also applied to the second content restoration method according to the present embodiment.

161 단계에서 제 2 플레이어(8)는 디스크(7)로부터 AV 스트림을 독출하고, 이 AV 스트림을 일시적으로 저장한다. 161 단계에서 저장된 AV 스트림은 암호화된 형태의 AV 스트림이다.In step 161, the second player 8 reads out the AV stream from the disc 7 and temporarily stores the AV stream. The AV stream stored in step 161 is an AV stream in encrypted form.

162 단계에서 제 2 플레이어(8)는 AACS 규격에 따라 161 단계에서 저장된 AV 스트림에 해당하는 타이틀 키(Kt)를 사용하여 트랙 버퍼(81)에 저장된 AV 스트림을 해독한다. In step 162, the second player 8 decrypts the AV stream stored in the track buffer 81 using the title key Kt corresponding to the AV stream stored in step 161 according to the AACS standard.

163 단계에서 제 2 플레이어(8)는 162 단계에서 해독된 AV 스트림을 일시적으로 저장한다. 163 단계에서 저장된 AV 스트림은 스크램블로 인해 변형되고, MPEG-2 규격에 따라 부호화된 형태의 AV 스트림이다. In step 163 the second player 8 temporarily stores the decrypted AV stream in step 162. The AV stream stored in step 163 is transformed due to scramble and is an AV stream encoded according to the MPEG-2 standard.

164 단계에서 제 2 플레이어(8)는 디스크(7)로부터 이 디스크(7)에 저장된 AV 타이틀을 보호하기 위한 컨텐트 코드를 독출하고, 이 컨텐트 코드를 실행함으로서 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 생성한다. 또한, 164 단계에서 제 2 플레이어(8)는 디스크(7)로부터 난독 축약 교정 테이블을 독출하고, 첫 번째 난독 교정 테이블을 포함하는 첫 번째 패킷을 검색할 때만 이것을 메모리(89)에 로드한다. In step 164, the second player 8 reads the content code for protecting the AV title stored on the disc 7 from the disc 7, and executes the content code to execute the secret parameter value, the secret parameter ID, and the forensic expression. Create a mark ID. Further, in step 164, the second player 8 reads the obfuscation correction table from the disc 7 and loads it into the memory 89 only when retrieving the first packet including the first obfuscation correction table.

165 단계에서 제 2 플레이어(8)는 164 단계에서 생성된 비밀 파라미터 값, 비밀 파라미터 아이디, 및 포렌식 마크 아이디를 저장한다.In step 165, the second player 8 stores the secret parameter value, the secret parameter ID, and the forensic mark ID generated in step 164.

166 단계에서 제 2 플레이어(8)는 165 단계에서 저장된 비밀 파라미터 값들과 164 단계에서 메모리(87)에 로드된 난독 축약 교정 테이블을 배타적 논리합함으로서 원래의 축약 교정 테이블을 복원한다. In step 166 the second player 8 restores the original reduced calibration table by exclusive OR of the secret parameter values stored in step 165 and the obfuscated reduced calibration table loaded in the memory 87 in step 164.

167 단계에서 제 2 플레이어(8)는 166 단계에서 복원된 축약 교정 테이블로부터 첫 번째 난독 교정 테이블을 포함하는 PMT 패킷의 절대적 위치 정보를 획득한다.In step 167, the second player 8 obtains absolute position information of the PMT packet including the first obfuscation correction table from the reduced correction table restored in step 166.

168 단계에서 제 2 플레이어(8)는 167 단계에서 획득된 정보에 해당하는 위치의 PMT 패킷으로부터 첫 번째 난독 교정 테이블을 추출한다. In operation 168, the second player 8 extracts the first obfuscation correction table from the PMT packet at the position corresponding to the information obtained in operation 167.

169 단계에서 제 2 플레이어(8)는 165 단계에서 저장된 비밀 파라미터 값들과 167 단계에서 추출된 난독 교정 테이블을 배타적 논리합함으로서 원래의 교정 테이블을 복원한다. In operation 169, the second player 8 restores the original calibration table by exclusive OR of the secret parameter values stored in operation 165 and the obfuscation correction table extracted in operation 167.

170 단계에서 제 2 플레이어(8)는 169 단계에서 복원된 교정 테이블로부터 이 교정 테이블을 제공한 PMT 패킷의 절대적 위치 정보를 획득하고, 다른 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보를 획득한다. In step 170, the second player 8 obtains the absolute position information of the PMT packet which provided this calibration table from the calibration table restored in step 169, and obtains the relative position information of the next PMT packet including another obfuscation correction table. do.

171 단계에서 제 2 플레이어(8)는 170 단계에서 획득된 PMT 패킷의 절대적 위치 정보를 기준으로 스크램블로 인하여 변형된 패킷의 변형 부분의 위치를 계산한다. In operation 171, the second player 8 calculates the position of the modified portion of the modified packet due to the scramble based on the absolute position information of the PMT packet obtained in operation 170.

172 단계에서 제 2 플레이어(8)는 171 단계에서 계산된 위치에 스크램블로 인하여 변형된 패킷의 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기한다. In step 172, the second player 8 overwrites the descramble value for correcting the deformed portion of the deformed packet due to the scramble at the position calculated in step 171.

173 단계에서 플레이어(6)는 170 단계에서 획득된, 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보가 존재하는지 여부를 판단하고, 그 판단 결과 다음 PMT 패킷의 상대적 위치 정보가 존재하는 경우에는 174 단계로 진행하고, 다음 PMT 패킷의 상대적 위치 정보가 존재하지 않는 경우에는 175 단계로 진행한다. In step 173, the player 6 determines whether there is relative position information of the next PMT packet including the obfuscation correction table obtained in step 170, and if the relative position information of the next PMT packet exists as a result of the determination, The flow proceeds to step 174, and if there is no relative position information of the next PMT packet, the flow proceeds to step 175.

174 단계에서 플레이어(6)는 170 단계에서 획득된, 난독 교정 테이블을 포함하는 다음 PMT 패킷의 상대적 위치 정보를 기준으로 AV 스트림으로부터 난독 교정 테이블을 추출하고, 169 단계로 돌아간다. In step 174, the player 6 extracts the obfuscation correction table from the AV stream based on the relative position information of the next PMT packet including the obfuscation correction table obtained in step 170, and returns to step 169.

175 단계에서 플레이어(6)는 MPEG-2 규격에 따라 164 단계 ~ 174 단계에 의해 디스크램블된 AV 스트림을 디먹싱함으로서 163 단계에서 저장된 AV 스트림으로부터 부호화된 형태의 AV 컨텐트 및 원래의 AV 컨텐트를 복원하기 위한 여러 가지 정보를 추출한다. In step 175, the player 6 restores the encoded AV content and the original AV content from the AV stream stored in step 163 by demuxing the descrambled AV stream in steps 164 to 174 according to the MPEG-2 standard. Extract a variety of information for

176 단계에서 플레이어(6)는 MPEG-2 규격에 따라 175 단계에서 추출된 AV 컨텐트를 복호화함으로서 원래의 AV 컨텐트를 복원한다. In step 176, the player 6 restores the original AV content by decoding the AV content extracted in step 175 according to the MPEG-2 standard.

한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 본 발명의 실시예에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다.Meanwhile, the above-described embodiments of the present invention can be written as a program that can be executed in a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. In addition, the structure of the data used in the above-described embodiment of the present invention can be recorded on the computer-readable recording medium through various means.

상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.The computer-readable recording medium may be a magnetic storage medium (for example, ROM, floppy disk, hard disk, etc.), an optical reading medium (for example, CD-ROM, DVD, etc.) and a carrier wave (for example, the Internet). Storage medium).

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

본 발명에 따르면, 스크램블로 인하여 변형된 AV 스트림의 변형 부분을 교정하기 위한 교정 테이블로부터 이 스트림의 다른 변형 부분을 교정하기 위한 난독 교정 테이블을 포함하는 PMT 패킷의 위치 정보를 획득함으로서 AV 스트림으로부터 난독 교정 테이블을 포함하는 PMT 패킷의 정확한 위치를 신속하게 찾을 수 있다는 효과가 있다.According to the present invention, obfuscation from an AV stream is obtained by obtaining position information of a PMT packet including an obfuscation correction table for calibrating another modified portion of the stream from a calibration table for correcting the modified portion of the AV stream modified due to scramble. This has the effect of quickly finding the exact location of the PMT packet containing the calibration table.

또한, 본 발명에 따르면, 스크램블로 인하여 변형된 스트림의 변형 부분을 교정하기 위한 교정 테이블로부터 이 교정 테이블을 제공한 PMT 패킷의 절대적 위치 정보를 획득함으로서 스크램블로 인하여 변형된 패킷의 정확한 위치를 용이하게 찾을 수 있다는 효과가 있다. Further, according to the present invention, the absolute position information of the PMT packet providing the calibration table is obtained from the calibration table for correcting the deformed portion of the deformed stream due to scramble, so that the correct position of the deformed packet due to the scramble can be easily obtained. There is an effect that can be found.

또한, 본 발명에 따르면, 원래의 난독 교정 테이블보다 훨씬 용량이 작은 난독 축약 교정 테이블을 첫 번째 난독 교정 테이블을 포함하는 PMT 패킷을 검색할 때만 메모리에 로드함으로서 난독 교정 테이블 전체를 메모리에 로드한 상태에서 디스크램블을 동시에 수행해야 하는 부담을 제거할 수 있게 되었다. According to the present invention, the entire obfuscation table is loaded into the memory by loading the obfuscation correction table, which is much smaller than the original obfuscation table, into the memory only when the PMT packet including the first obfuscation table is retrieved. Eliminates the burden of concurrent descrambling.

나아가, 본 발명에 따르면, 상기된 바와 효과들로 인하여 디스크램블 작업의 속도가 증가되고, 디스크램블로 인한 시스템 부하가 줄어들게 되어, 이동 단말 등 저사양 CPU를 사용하는 디바이스도 디스크램블을 소프트웨어적으로 처리할 수 있게 되었다. Furthermore, according to the present invention, the speed of the descrambling operation is increased due to the above-described effects and the system load due to the descrambling is reduced, so that a device using a low specification CPU such as a mobile terminal can also process the descramble by software. I can do it.

Claims (18)

(a) 스크램블로 인하여 변형된 스트림의 제 1 변형 부분을 교정하기 위한 제 1 디스크램블 정보로부터 상기 스트림의 제 2 변형 부분을 교정하기 위한 제 2 디스크램블 정보의 위치 정보를 획득하는 단계; 및(a) obtaining position information of the second descramble information for correcting the second deformed portion of the stream from the first descramble information for correcting the first deformed portion of the stream deformed due to scramble; And (b) 상기 제 1 디스크램블 정보에 기초하여 상기 제 1 변형 부분을 디스크램블하는 단계를 포함하는 것을 특징으로 하는 디스크램블 방법.and (b) descrambling the first deformed portion based on the first descramble information. 제 1 항에 있어서,The method of claim 1, 상기 획득된 제 2 디스크램블 정보의 위치 정보를 기준으로 상기 스트림으로부터 상기 제 2 디스크램블 정보를 추출하는 단계; 및 Extracting the second descramble information from the stream based on the acquired position information of the second descramble information; And 상기 제 2 디스크램블 정보에 기초하여 상기 제 2 변형 부분을 디스크램블하는 단계를 더 포함하는 것을 특징으로 하는 디스크램블 방법.And descrambling the second deformable portion based on the second descramble information. 제 1 항에 있어서, The method of claim 1, 상기 스트림을 구성하는 패킷들 중 제 1 패킷으로부터 상기 제 1 디스크램블 정보를 추출하는 단계를 더 포함하고,Extracting the first descramble information from a first packet among packets constituting the stream; 상기 (a) 단계는 상기 추출된 제 1 디스크램블 정보로부터 상기 제 2 디스크램블 정보를 포함하는 제 2 패킷의 상대적 위치 정보를 획득하는 것을 특징으로 하는 디스크램블 방법.The step (a) of claim 1, wherein the relative position information of the second packet including the second descramble information from the extracted first descramble information. 제 3 항에 있어서,The method of claim 3, wherein 상기 제 2 패킷의 상대적 위치 정보는 상기 제 1 패킷으로부터 상기 제 2 패킷이 몇 패킷 떨어져 있는지를 나타내는 패킷 개수이고, The relative position information of the second packet is the number of packets indicating how many packets the second packet is from the first packet, 상기 제 1 패킷의 넘버에 상기 패킷 개수를 가산한 값에 해당하는 위치의 패킷으로부터 상기 제 2 디스크램블 정보를 추출하는 단계를 더 포함하는 것을 특징으로 하는 디스크램블 방법.And extracting the second descramble information from a packet at a position corresponding to a value obtained by adding the number of packets to the number of the first packet. 제 1 항에 있어서,The method of claim 1, 디스크의 별도 영역에 저장된 상기 스트림의 변형 부분들 중 첫 번째 변형 부분을 교정하기 위한 정보를 포함하는 패킷의 난독 위치 정보를 메모리에 로드하는 단계; 및Loading obfuscated position information of a packet including information for correcting a first modified portion of the modified portions of the stream stored in a separate area of the disk into a memory; And 상기 메모리에 로드된 난독 위치 정보로부터 복원된 정보에 해당하는 위치의 패킷으로부터 상기 첫 번째 변형 부분을 교정하기 위한 정보를 추출하는 단계를 더 포함하고, Extracting information for correcting the first deformed portion from a packet of a position corresponding to the information restored from the obfuscated position information loaded in the memory, 상기 (a) 단계는 상기 추출된 정보로부터 상기 변형 부분들 중 두 번째 변형 부분을 교정하기 위한 정보를 포함하는 패킷의 위치 정보를 획득하는 것을 특징으로 하는 디스크램블 방법.The step (a) of claim 1, wherein the descrambling method, characterized in that to obtain the position information of the packet including information for correcting the second modified part of the modified parts from the extracted information. 제 1 항에 있어서,The method of claim 1, 상기 스트림의 소정 단위를 구성하는 패킷들 중 첫 번째 패킷을 파싱함으로서 상기 제 1 디스크램블 정보를 포함하는 패킷을 검색하고, 상기 검색된 패킷으로부터 상기 제 1 디스크램블 정보를 추출하는 단계를 더 포함하는 것을 특징으로 하는 디스크램블 방법.Retrieving a packet including the first descramble information by parsing a first packet among packets constituting a predetermined unit of the stream, and extracting the first descramble information from the retrieved packet. A descrambling method characterized by the above. 제 1 항에 있어서,The method of claim 1, 상기 스트림을 구성하는 패킷들의 소정 플래그의 값을 검사함으로서 상기 패킷들이 상기 스트림의 변형 부분들을 교정하기 위한 정보를 포함하는지 여부를 판단하고, 상기 판단 결과에 기초하여 상기 제 1 디스크램블 정보를 포함하는 패킷을 검색하고, 상기 검색된 패킷으로부터 상기 제 1 디스크램블 정보를 추출하는 단계를 더 포함하는 것을 특징으로 하는 디스크램블 방법.Determining whether the packets contain information for correcting modified portions of the stream by examining a value of a predetermined flag of packets constituting the stream, and including the first descramble information based on the determination result. Retrieving a packet, and extracting the first descramble information from the retrieved packet. 제 1 항에 있어서,The method of claim 1, 상기 (b) 단계는 상기 제 1 디스크램블 정보로부터 계산된 제 1 변형 부분의 위치에 상기 제 1 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기함으로서 디스크램블하는 것을 특징으로 하는 디스크램블 방법.And the step (b) is descrambled by overwriting a descramble value for calibrating the first deformed portion to a position of the first deformed portion calculated from the first descrambled information. 스크램블로 인하여 변형된 스트림을 구성하는 패킷들 중 제 1 패킷으로부터 상기 제 1 패킷의 변형 부분을 교정하기 위한 제 1 디스크램블 정보를 추출하는 추출부; 및An extraction unit for extracting first descramble information for correcting a modified portion of the first packet from a first packet among packets constituting the modified stream due to scramble; And 상기 추출부에 의해 추출된 제 1 디스크램블 정보로부터 상기 패킷들 중 제 2 패킷의 변형 부분을 교정하기 위한 제 2 디스크램블 정보의 위치 정보를 획득하고, 상기 제 1 디스크램블 정보로부터 계산된 상기 제 1 패킷의 변형 부분의 위치에 상기 제 1 패킷의 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기하는 겹쳐쓰기부를 포함하는 것을 특징으로 하는 디스크램블 장치.Obtaining the position information of the second descramble information for correcting the modified part of the second packet among the packets from the first descramble information extracted by the extracting unit, and calculating the first information calculated from the first descramble information; And an overwrite portion for overwriting a descramble value for correcting the modified portion of the first packet at a position of the modified portion of the first packet. 제 9 항에 있어서,The method of claim 9, 상기 추출부는 상기 겹쳐쓰기부에 의해 획득된 제 2 디스크램블 정보의 위치 정보를 기준으로 상기 스트림으로부터 상기 제 2 디스크램블 정보를 추출하고, The extractor extracts the second descramble information from the stream based on the location information of the second descramble information obtained by the overwrite unit, 상기 겹쳐쓰기부는 상기 추출된 제 2 디스크램블 정보로부터 계산된 상기 제 2 패킷의 변형 부분의 위치에 상기 제 2 패킷의 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기하는 것을 특징으로 하는 디스크램블 장치.Wherein the overwrite unit overwrites a descrambling value for correcting the deformed portion of the second packet at a position of the deformed portion of the second packet calculated from the extracted second descramble information. . 제 1 항 내지 제 8 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체. A non-transitory computer-readable recording medium having recorded thereon a program for executing the method of claim 1. (a) 스크램블로 인하여 변형된 스트림의 변형 부분을 교정하기 위한 디스크램블 정보로부터 상기 디스크램블 정보를 제공한 패킷의 절대적 위치 정보를 획득하는 단계;(a) obtaining absolute position information of a packet providing the descrambled information from the descrambled information for correcting the deformed portion of the deformed stream due to scrambled; (b) 상기 획득된 절대적 위치 정보를 기준으로 상기 변형 부분의 위치를 계 산하는 단계; 및(b) calculating a position of the modified part based on the obtained absolute position information; And (c) 상기 계산된 위치에 상기 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기하는 단계를 포함하는 것을 특징으로 하는 디스크램블 방법.(c) overwriting the descramble value for correcting the deformed portion at the calculated position. 제 12 항에 있어서,The method of claim 12, 상기 절대적 위치 정보는 상기 스트림을 구성하는 패킷들 전체에서 상기 디스크램블 정보를 포함하는 패킷이 몇 번째인지를 나타내는 패킷 넘버인 것을 특징으로 하는 디스크램블 방법.The absolute position information is a descrambling method, characterized in that the packet number indicating the number of packets containing the descramble information in all the packets constituting the stream. 제 13 항에 있어서,The method of claim 13, 상기 스트림을 저장하는 단계를 더 포함하고,Storing the stream; 상기 (b) 단계는 상기 저장을 위하여 현재 입력 중인 패킷의 넘버로부터 상기 디스크램블 정보를 포함하는 패킷의 넘버와 상기 디스크램블 정보를 포함하는 패킷과 상기 변형 부분간의 패킷 개수의 합을 감함으로서 상기 스크램블된 부분의 위치를 계산하는 것을 특징으로 하는 디스크램블 방법.In the step (b), the scramble is performed by subtracting the sum of the number of packets including the descramble information, the number of packets including the descramble information, and the number of packets between the modified portions from the number of packets currently being input for the storage. A descrambling method comprising calculating a position of a portion. 제 12 항에 있어서,The method of claim 12, 상기 스트림에 포함된 컨텐트를 보호하기 위한 컨텐트 코드와 상기 디스크램블 방법이 수행되는 플레이어의 아이디에 기초하여 비밀 파라미터 값을 생성하는 단계; 및Generating a secret parameter value based on a content code for protecting content included in the stream and an ID of a player on which the descrambling method is performed; And 상기 생성된 비밀 파마미터 값과 난독 디스크램블 정보를 배타적 논리합함으로서 상기 디스크램블 정보를 복원하는 단계를 더 포함하고,Restoring the descramble information by performing an exclusive OR of the generated secret parameter value and the obfuscated descramble information. 상기 (c) 단계는 상기 복원된 디스크램블 정보에 기초하여 겹쳐쓰기하는 것을 특징으로 하는 디스크램블 방법.And the step (c) overwrites the descrambled information based on the restored descramble information. 스크램블로 인하여 변형된 스트림으로부터 상기 스트림의 변형 부분을 교정하기 위한 디스크램블 정보를 추출하는 추출부; 및An extraction unit for extracting descrambling information for correcting the deformed portion of the stream from the deformed stream due to scramble; And 상기 추출부에 의해 추출된 디스크램블 정보로부터 상기 디스크램블 정보를 포함하는 패킷의 절대적 위치 정보를 획득하고, 상기 획득된 절대적 위치 정보를 기준으로 계산된 위치에 상기 변형 부분을 교정하기 위한 디스크램블 값을 겹쳐쓰기하는 겹쳐쓰기부를 포함하는 것을 특징으로 하는 디스크램블 장치.A descramble value for acquiring absolute position information of a packet including the descramble information from the descramble information extracted by the extractor and correcting the deformed portion at a position calculated based on the obtained absolute position information. Descrambling device comprising an overwrite unit for overwriting a. 제 16 항에 있어서,The method of claim 16, 상기 절대적 위치 정보는 상기 스트림을 구성하는 패킷들 전체에서 상기 디스크램블 정보를 포함하는 패킷이 몇 번째인지를 나타내는 패킷 넘버인 것을 특징으로 하는 디스크램블 장치.And wherein the absolute position information is a packet number indicating a number of times a packet including the descramble information is included in all packets constituting the stream. 제 12 항 내지 제 15 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체. A computer-readable recording medium having recorded thereon a program for executing the method of claim 12 on a computer.
KR1020050079447A 2005-07-19 2005-08-29 Method and apparatus for descrambling AV stream KR100762957B1 (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US70033605P 2005-07-19 2005-07-19
US60/700,336 2005-07-19
US70149305P 2005-07-22 2005-07-22
US60/701,493 2005-07-22
US70300305P 2005-07-28 2005-07-28
US60/703,003 2005-07-28

Publications (2)

Publication Number Publication Date
KR20070011029A KR20070011029A (en) 2007-01-24
KR100762957B1 true KR100762957B1 (en) 2007-10-04

Family

ID=38012147

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020050079447A KR100762957B1 (en) 2005-07-19 2005-08-29 Method and apparatus for descrambling AV stream
KR1020060065179A KR100803603B1 (en) 2005-07-19 2006-07-12 Method and apparatus for fixing-up the transform part of content efficiently

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020060065179A KR100803603B1 (en) 2005-07-19 2006-07-12 Method and apparatus for fixing-up the transform part of content efficiently

Country Status (6)

Country Link
US (1) US8428256B2 (en)
JP (1) JP5539462B2 (en)
KR (2) KR100762957B1 (en)
CN (2) CN102646432B (en)
ES (1) ES2388173T3 (en)
TW (1) TWI328967B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8315988B2 (en) * 2006-08-31 2012-11-20 Sap Ag Systems and methods for verifying a data communication process

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0136458B1 (en) * 1994-12-08 1998-05-15 구자홍 Copy protection apparatus of digital magnetic recording and reproducing system
WO1996027155A2 (en) * 1995-02-13 1996-09-06 Electronic Publishing Resources, Inc. Systems and methods for secure transaction management and electronic rights protection
CA2169131C (en) * 1995-02-28 2004-08-10 Fabrizio Caffarelli Compact disc recording system and method
DE69630060T2 (en) 1995-07-14 2004-07-08 Sony Corp. Process for the transmission of digital data and recording medium
JPH09162859A (en) * 1995-12-07 1997-06-20 Fujitsu Ltd Scrambling method and device, descrambling method and device and data transmission method and system
JP3651721B2 (en) * 1996-11-01 2005-05-25 株式会社東芝 Mobile computer device, packet processing device, and communication control method
KR100611867B1 (en) * 1998-01-26 2006-08-11 마츠시타 덴끼 산교 가부시키가이샤 Method and system for data recording/reproducing, apparatus for recording/reproducing, and media for recording program
US6285774B1 (en) * 1998-06-08 2001-09-04 Digital Video Express, L.P. System and methodology for tracing to a source of unauthorized copying of prerecorded proprietary material, such as movies
US6430159B1 (en) * 1998-12-23 2002-08-06 Cisco Systems Canada Co. Forward error correction at MPEG-2 transport stream layer
US7016951B1 (en) 1999-04-30 2006-03-21 Mantech Ctx Corporation System and method for network security
WO2001033832A1 (en) * 1999-10-29 2001-05-10 Fujitsu Limited Image reproducing apparatus and image recording/reproducing apparatus
JP4457474B2 (en) * 2000-04-04 2010-04-28 ソニー株式会社 Information recording apparatus, information reproducing apparatus, information recording method, information reproducing method, information recording medium, and program providing medium
EP1215905B2 (en) * 2000-12-15 2010-04-21 Panasonic Corporation Reception apparatus having a storage unit for recording a scrambled broadcast signal and broadcast apparatus for scrambling a signal to be broadcast, and associated methods
CN1457495B (en) * 2001-02-28 2012-09-05 索尼公司 Information recording apparatus and method
US7987510B2 (en) 2001-03-28 2011-07-26 Rovi Solutions Corporation Self-protecting digital content
US7124303B2 (en) * 2001-06-06 2006-10-17 Sony Corporation Elementary stream partial encryption
US20030142560A1 (en) * 2001-12-07 2003-07-31 Pioneer Corporation Data recording medium, reproduction apparatus, recording apparatus, reproducing method, recording method, computer-readable recorded medium in which reproducing program is recorded, and computer-readable recorded medium in which recording program is recorded
US7242773B2 (en) * 2002-09-09 2007-07-10 Sony Corporation Multiple partial encryption using retuning
US6851084B2 (en) * 2002-06-10 2005-02-01 Harris Corporation Forward error correction method and system for reliable transmission of real time data over a packet based network
US7349386B1 (en) * 2003-02-18 2008-03-25 Cisco Technology, Inc. Method and apparatus for transporting MPEG streams on IP networks including removing null packets
US7292692B2 (en) * 2003-03-25 2007-11-06 Sony Corporation Content scrambling with minimal impact on legacy devices
CA2523055A1 (en) 2003-04-25 2004-11-11 Thomson Licensing Marking techniques for tracking pirated media
TWI250759B (en) * 2003-06-09 2006-03-01 Sony Corp Information recording medium, data processing method and computer program
EP1524659A1 (en) * 2003-10-13 2005-04-20 Deutsche Thomson-Brandt Gmbh Method and apparatus for decrypting an encrypted supplementary data set
US7278084B2 (en) * 2003-10-29 2007-10-02 Nokia Corporation Method and system for providing communications security
JP4352976B2 (en) * 2004-04-20 2009-10-28 株式会社日立製作所 Receiving apparatus and receiving method
US7634223B2 (en) * 2004-07-12 2009-12-15 Motorola Inc. Method and apparatus for controlling a delivery of a broadcast-multicast flow in a packet data communication system

Also Published As

Publication number Publication date
TW200721829A (en) 2007-06-01
TWI328967B (en) 2010-08-11
US8428256B2 (en) 2013-04-23
KR20070011107A (en) 2007-01-24
CN102646432A (en) 2012-08-22
CN102646432B (en) 2015-03-11
JP5539462B2 (en) 2014-07-02
CN1917071A (en) 2007-02-21
KR100803603B1 (en) 2008-02-15
JP2012252777A (en) 2012-12-20
US20070022088A1 (en) 2007-01-25
ES2388173T3 (en) 2012-10-10
CN1917071B (en) 2012-05-23
KR20070011029A (en) 2007-01-24

Similar Documents

Publication Publication Date Title
US7661000B2 (en) Information processing device, information recording medium and information processing method, and computer program
KR101278075B1 (en) Playing apparatus, method and apparatus for manufacturing information recording medium, recording medium, and authoring apparatus
US8422049B2 (en) Information processing device, information record medium manufacturing device, information record medium, method therefore, and computer program
US8325917B2 (en) Reproducing device, recording device, recording medium, data processing method, data processing program, data recording method, data recording program, and integrated circuit
US8510852B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium, method, and computer program
US20100183148A1 (en) Recording keys in a broadcast-encryption-based system
US7433488B2 (en) Information recording medium drive device, information processing apparatus, data replay control system, data replay control method, and computer program
KR100762957B1 (en) Method and apparatus for descrambling AV stream
US8964978B2 (en) Method and apparatus for efficiently fixing transformed part of content
EP3188405B1 (en) Information processing device, information recording medium, information processing method, and program
KR20070058288A (en) Method and apparatus for descrambling av stream
JP4905585B2 (en) Information recording medium and program
JP4862957B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP2011076616A (en) Information processing apparatus, information recording medium manufacturing device, information recording medium, method, and computer program
JP2016042687A (en) Content processing method, content processing device and recording medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120830

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130829

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140828

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150828

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee