KR20070011101A - Data reproducing method and data reproducing apparatus, recording medium and data reproducing method and data recording apparatus - Google Patents
Data reproducing method and data reproducing apparatus, recording medium and data reproducing method and data recording apparatus Download PDFInfo
- Publication number
- KR20070011101A KR20070011101A KR1020060055333A KR20060055333A KR20070011101A KR 20070011101 A KR20070011101 A KR 20070011101A KR 1020060055333 A KR1020060055333 A KR 1020060055333A KR 20060055333 A KR20060055333 A KR 20060055333A KR 20070011101 A KR20070011101 A KR 20070011101A
- Authority
- KR
- South Korea
- Prior art keywords
- stream
- forensic mark
- player
- forensic
- content
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 114
- 230000008569 process Effects 0.000 claims description 67
- 230000015654 memory Effects 0.000 claims description 25
- 230000009466 transformation Effects 0.000 claims description 10
- 238000003780 insertion Methods 0.000 claims description 6
- 230000037431 insertion Effects 0.000 claims description 6
- 238000009826 distribution Methods 0.000 abstract description 11
- 230000003287 optical effect Effects 0.000 description 85
- 230000006870 function Effects 0.000 description 21
- 238000003860 storage Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000009118 appropriate response Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00094—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
- G11B20/00115—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers wherein the record carrier stores a unique medium identifier
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
- G11B27/30—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
- G11B27/3027—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/10537—Audio or video recording
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
본 발명은 진정한 콘텐츠 제공자에 의해 제공되는 콘텐트를 불법 복제, 배포 등으로부터 보호하는 데이터 재생방법 및 재생장치, 기록매체와 데이터 기록방법 및 기록장치를 제공하는 데 그 목적이 있다.It is an object of the present invention to provide a data reproducing method and reproducing apparatus, a recording medium and a data recording method and a recording apparatus which protect contents provided by a true content provider from illegal copying, distribution, and the like.
본 발명은 플레이어를 식별가능한 정보를 이용한 포렌직 마크(forensic mark)를 생성하고, 상기 포렌직 마크를 스트림에 삽입하여 디코딩하는 것을 특징으로 하는 데이터 재생방법 및 재생장치를 제공한다.The present invention provides a data reproducing method and a reproducing apparatus, which generate a forensic mark using identifiable information of a player, insert the forensic mark into a stream, and decode the forensic mark.
본 발명에 의하면, 상기 포렌직 마크를 이용하여 콘텐트를 불법 복제한 데이터 재생장치를 추적하는 것이 가능하게 되어 콘텐트를 보호할 수 있게 되는 장점이 있다.According to the present invention, it is possible to track a data reproducing apparatus illegally copying content by using the forensic mark, thereby protecting the content.
Description
도 1은 본 발명의 개념적 이해를 돕기 위해 나타낸 것으로, 광기록재생장치와 주변기기 간의 통합적 사용의 일 예를 보여주기 위해 도시한 것이다.Figure 1 is shown to aid the conceptual understanding of the present invention, it is shown to show an example of the integrated use between the optical recording and reproducing apparatus.
도 2는 본 발명의 데이터 파일구조를 도시한 것이다.2 shows a data file structure of the present invention.
도 3은 본 발명의 광기록재생장치의 전체 구성에 관한 일 예를 나타낸 것이다.3 shows an example of the overall configuration of the optical recording and reproducing apparatus of the present invention.
도 4는 본 발명의 재생시스템(playback system)을 활용한 기록매체 재생장치의 일 실시예를 도시한 것이다. Figure 4 shows an embodiment of a recording medium reproducing apparatus utilizing the playback system of the present invention.
도 5는 본 발명의 데이터 재생방법의 구현을 위한 광기록재생장치 재생시스템 모델을 도시한 것이다.5 shows an optical recording / playback apparatus playback system model for implementing the data playback method of the present invention.
도 6a는 본 발명에 따른 광기록재생장치에 구비된 메모리 유닛의 일 실시예를 도시한 것이다.6A shows an embodiment of a memory unit provided in the optical recording and reproducing apparatus according to the present invention.
도 6b는 본 발명에 따른 메모리 유닛 구조의 일 실시예를 도시한 것이다. Figure 6b illustrates one embodiment of a memory unit structure in accordance with the present invention.
도 7은 본 발명에 따른 포렌직 마킹을 구현하는 플레이어 모델의 일 실시예를 도시한 것이다. Figure 7 illustrates one embodiment of a player model for implementing forensic marking according to the present invention.
도 8은 본 발명에 따른 데이터 재생방법의 흐름도를 도시한 것이다.8 shows a flowchart of a data reproduction method according to the present invention.
*도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
11 : 픽업 12 : 제어부 11
13 : 신호처리부 15 : 로컬 스토리지 13: signal processor 15: local storage
17 : 재생시스템 (playback system)17: playback system
171 : 유저 이벤트(User Event Manager)171: User Event Manager
171a : UO 컨트롤러(UO Controller)171a: UO Controller
172 : 모듈 매니저(Module Manager) 172: Module Manager
173 : 메타데이터 매니저(Metadata Manager)173: Metadata Manager
174 : HDMV 모듈(Movie Module) 174: HDMV module (Movie Module)
175 : BD-J 모듈(BD-J Module)175: BD-J Module
175a : 자바 가상 머신(Java Virtual Machine)175a: Java Virtual Machine
175b : 어플리케이션 매니저(Application Manager)175b: Application Manager
176 : 플레이백 컨트롤 엔진(Playback Control Engine)176: Playback Control Engine
176a : 플레이백 컨트롤 펑션(Playback control function)176a: Playback control function
176b : 플레이어 레지스터(Player registers)176b: Player registers
177 : 프레젠테이션 엔진(Presentation Engine)177: Presentation Engine
178 : 보안 가상 머신(Security Virtual Machine)178: Security Virtual Machine
19 : 디코더(Decoder)19: Decoder
40 : 가상 파일 시스템(Virtual File System)40: Virtual File System
본 발명은 콘텐츠 제공자에 의해 제공된 데이터의 재생에 관한 것으로, 특히 상기 데이터를 보호할 수 있는 데이터 재생방법 및 재생장치, 기록매체와 데이터 기록방법 및 기록장치에 관한 것이다. The present invention relates to the reproduction of data provided by a content provider, and more particularly to a data reproducing method and reproducing apparatus capable of protecting the data, and a recording medium and a data recording method and a recording apparatus.
기록매체로서 대용량의 데이터를 기록할 수 있는 광 디스크가 널리 사용되고 있다. 그 중에서도 최근에는 고화질의 비디오 데이터와 고음질의 오디오 데이터를 장시간 동안 기록하여 저장할 수 있는 새로운 고밀도 기록매체, 예를 들어 블루레이 디스크(BD: Blu-ray Disc)와 고밀도 디지털 비디오 디스크(HD-DVD: High Definition Digital Versatile Disc) 등이 개발되고 있다. As a recording medium, an optical disk capable of recording a large amount of data is widely used. Most recently, new high-density recording media, such as Blu-ray Discs (BDs) and high-density digital video discs (HD-DVDs), can record and store high-quality video data and high-quality audio data for a long time. High Definition Digital Versatile Disc) and the like are being developed.
차세대 기록매체 기술인 고밀도 기록매체는 기존의 DVD를 현저하게 능가하는 데이터를 구비할 수 있는 차세대 광기록 솔루션으로 근래에 다른 디지털기기와 함께 이에 대한 개발이 진행되고 있다.High-density recording media, the next-generation recording media technology, are next-generation optical recording solutions that can contain data that significantly surpasses existing DVDs.
관련하여, 고밀도 기록매체 규격을 응용한 광기록재생장치의 개발도 시작되었으나, 아직 고밀도 기록매체 규격이 완전히 완비되지 못한 관계로 완성된 광기록재생장치를 개발하는 데 어려움이 따르는 것이 사실이다.In relation to this, development of the optical recording and reproducing apparatus applying the high density recording medium standard has also begun, but it is true that the development of the optical recording and reproducing device is difficult due to the fact that the high density recording medium standard is not completely completed yet.
그러나, 상기와 같이 외부입력신호 및 고밀도 기록매체를 재생함에 있어, 콘텐츠 제공자에 의해 제공되는 콘텐트를 보호하는 바람직한 방법 등이 알려진바 없어, 본격적인 고밀도 기록매체 기반의 광기록재생장치를 개발하는데 많은 제약이 따르는 실정이다.However, in reproducing an external input signal and a high density recording medium as described above, there is no known method for protecting the content provided by the content provider. Therefore, there are many limitations in developing an optical recording and reproducing apparatus based on a high density recording medium in earnest. This is true.
본 발명은 상기와 같은 실정을 감안하여 창작된 것으로서, 진정한 콘텐츠 제공자에 의해 제공되는 콘텐트를 불법 복제, 배포 등으로부터 보호하는 데 그 목적이 있다.The present invention was created in view of the above circumstances, and an object thereof is to protect content provided by a true content provider from illegal copying, distribution, and the like.
따라서, 본 발명은 플레이어를 식별가능한 정보를 재생되는 콘텐트에 삽입하여, 콘텐츠 제공자에 의해 제공되는 콘텐트를 보호할 수 있는 데이터 재생방법 및 재생장치, 기록매체와 데이터 기록방법 및 기록장치를 제공하고자 한다.Accordingly, an aspect of the present invention is to provide a data reproducing method and reproducing apparatus, a recording medium and a data recording method and a recording apparatus capable of inserting a player's identifiable information into a content to be reproduced to protect content provided by a content provider. .
상기 목적을 달성하기 위하여, 본 발명은 플레이어를 식별가능한 정보를 이용한 포렌직 마크(forensic mark)를 생성하고, 상기 포렌직 마크를 스트림에 삽입하여 디코딩하는 것을 특징으로 하는 데이터 재생방법을 제공한다.In order to achieve the above object, the present invention provides a data reproduction method comprising generating a forensic mark using identifiable information of a player, and inserting the forensic mark into a stream and decoding the same.
또한, 상기 포렌직 마크의 삽입은, 기록매체 내 콘텐트 코드의 실행에 의해 상기 플레이어를 식별가능한 정보를 이용하여 생성된, 포렌직 마크 아이디를 이용할 수 있다.In addition, the insertion of the forensic mark may use the forensic mark ID, which is generated by using the information identifying the player by executing the content code in the recording medium.
또한, 상기 포렌직 마크의 삽입은, 기록매체에 저장된 콘텐트 코드의 실행에 의해 생성되는 비밀 파라미터와 상기 기록매체에 저장된 마스크된 픽스업테이블과의 배타적 논리합을 통해 생성된 픽스업테이블을 이용할 수 있다.In addition, the insertion of the forensic mark may use a fixup table generated through an exclusive OR between a secret parameter generated by execution of content code stored on a recording medium and a masked fixup table stored on the recording medium.
또한, 상기 픽스업테이블은 상기 픽스업테이블을 이용하는 프로세스를 식별하는 정보를 포함하고, 상기 프로세스 식별 정보가 포렌직 마킹을 나타내는 경우, 상기 포렌직 마크를 상기 스트림에 삽입할 수 있다.The fixup table may include information for identifying a process using the fixup table, and when the process identification information indicates forensic marking, the forensic mark may be inserted into the stream.
또한, 상기 포렌직 마크의 삽입은, 상기 프로세스 식별 정보가 포렌직 마킹을 나타내고, 상기 포렌직 마크 아이디의 비트 중 상기 픽스업테이블에 포함된 포렌직 마크 비트 정보에 의해 지정된 비트가 '1'로 설정된 경우, 상기 픽스업테이블에 포함된 오버라이트 값(overwrite value)을 상기 스트림에 오버라이트(overwrite)하고, 상기 프로세스 식별 정보가 포렌직 마킹을 나타내고, 상기 포렌직 마크 아이디의 비트 중 상기 픽스업테이블에 포함된 포렌직 마크 아이디 비트 정보에 의해 지정된 비트가 '0'으로 설정된 경우, 상기 픽스업테이블에 포함된 오버라이트 값(overwrite value)을 상기 스트림에 오버라이트(overwrite)하지 않음으로써 수행될 수 있다.In addition, when the forensic mark is inserted, the process identification information indicates forensic marking, and the bit designated by the forensic mark bit information included in the fixup table among the bits of the forensic mark ID is set to '1'. An overwrite value included in a fixup table is overwritten in the stream, the process identification information indicates a forensic marking, and a forensic mark included in the fixup table among bits of the forensic mark ID. When the bit specified by the ID bit information is set to '0', the bit may be performed by not overwriting the stream with the overwrite value included in the fixup table.
또한, 상기 플레이어를 식별가능한 정보는 플레이어의 재생상태를 나타하는 메모리 유닛에 저장될 수 있다.Further, the player identifiable information can be stored in a memory unit indicating the playing state of the player.
또한, 상기 플레이어를 식별가능한 정보는 플레이어에 따라 할당된 플레이어 아이디일 수 있다.In addition, the information identifying the player may be a player ID assigned according to the player.
또한, 상기 플레이어를 식별가능한 정보는 플레이어에 따라 할당된 시리얼 넘버일 수 있다.In addition, the player identifiable information may be a serial number assigned according to the player.
또한, 상기 플레이어를 식별가능한 정보는 플레이어 제작자 아이디일 수 있다.In addition, the information identifying the player may be a player producer ID.
또한, 본 발명은 플레이어를 식별가능한 정보를 이용하여 포렌직 마크를 생성하는 제어부와, 상기 포렌직 마크를 스트림에 삽입하는 포렌직 마크 삽입기를 포 함할 수 있다.In addition, the present invention may include a control unit for generating a forensic mark using information identifying the player, and a forensic mark inserter for inserting the forensic mark into a stream.
또한, 상기 제어부는 상기 플레이어를 식별가능한 정보를 이용하여 포렌직 마크 아이디를 생성하고, 상기 포렌직 마크 아이디를 이용하여 상기 포렌직 마크를 스트림에 삽입하도록 상기 포렌직 마크 삽입기를 제어할 수 있다.The control unit may generate the forensic mark ID using the information for identifying the player, and control the forensic mark inserter to insert the forensic mark into the stream using the forensic mark ID.
또한, 상기 포렌직 마크 삽입기는, 기록매체에 저장된 콘텐트 코드의 실행에 의해 생성되는 비밀 파라미터와 상기 기록매체에 저장된 마스크된 픽스업테이블과의 배타적 논리합을 통해 생성된 픽스업테이블을 이용하여 상기 포렌직 마크를 상기 스트림에 삽입할 수 있다.The forensic mark inserter may further include the forensic mark using a fixup table generated through an exclusive OR between a secret parameter generated by execution of content code stored on a recording medium and a masked fixup table stored on the recording medium. Can be inserted into the stream.
또한, 상기 포렌직 마크 삽입기는, 상기 픽스업테이블에 포함된, 상기 픽스업테이블을 이용하는 프로세스를 식별하는 정보가 포렌직 마킹을 나타내는 경우, 상기 포렌직 마크를 상기 스트림에 삽입할 수 있다.The forensic mark inserter may insert the forensic mark into the stream when information identifying a process using the fixup table included in the fixup table indicates forensic marking.
또한, 상기 포렌직 마크 삽입기는, 상기 프로세스 식별 정보가 포렌직 마킹을 나타내고, 상기 포렌직 마크 아이디 중 상기 픽스업테이블에 포함된 포렌직 마크 비트 정보에 의해 지정된 비트가 '1'로 설정된 경우, 상기 픽스업테이블에 포함된 오버라이트 값(overwrite value)을 상기 스트림에 오버라이트(overwrite)하고, 상기 프로세스 식별 정보가 포렌직 마킹을 나타내고, 상기 포렌직 마크 아이디 중 상기 픽스업테이블에 포함된 포렌직 마크 비트 정보에 의해 지정된 비트가 '0'으로 설정된 경우, 상기 픽스업테이블에 포함된 오버라이트 값(overwrite value)을 상기 스트림에 오버라이트(overwrite)하지 않음으로써 상기 포렌직 마크를 스트림에 삽입할 수 있다.The forensic mark inserter may include the fixup table when the process identification information indicates forensic marking and a bit designated by the forensic mark bit information included in the fixup table among the forensic mark IDs is set to '1'. Overwrites an overwrite value included in the stream, the process identification information indicates forensic marking, and is specified by forensic mark bit information included in the fixup table among the forensic mark IDs. If the bit is set to '0', the forensic mark may be inserted into the stream by not overwriting the stream with an overwrite value included in the fixup table.
또한, 상기 플레이어를 식별가능한 정보를 저장하는 메모리 유닛을 더 포함할 수 있다.The apparatus may further include a memory unit storing information identifying the player.
또한, 상기 콘텐트 코드가 실행되는 보안가상모듈(Security Virtual Machine)을 더 포함할 수 있다.The apparatus may further include a security virtual machine in which the content code is executed.
또한, 본 발명은 스트림이 기록되는 스트림 영역과 상기 스트림의 디코딩 과정에 이용되는 콘텐트 코드가 기록되는 프로그램 영역을 포함하는 것을 특징으로 하는 기록매체를 제공한다.The present invention also provides a recording medium comprising a stream area in which a stream is recorded and a program area in which a content code used in the decoding process of the stream is recorded.
또한, 상기 스트림의 미디어 트랜스폼에 이용되는 마스크드 픽스업테이블을 더 포함할 수 있다.The apparatus may further include a masked fixup table used for media transformation of the stream.
또한, 상기 마스크드 픽스업테이블은 상기 스트림으로 멀티플렉스될 수 있다.In addition, the masked fixup table may be multiplexed into the stream.
또한, 상기 마스크드 픽스업테이블은 독립된 파일로서 상기 기록매체에 기록될 수 있다.In addition, the masked fixup table may be recorded on the recording medium as an independent file.
또한, 본 발명은 기록매체에 스트림을 기록하고, 상기 스트림에 대한 디코딩 소프트웨어인 콘텐트 코드를 생성하여 상기 기록매체에 기록하되, 상기 콘텐트 코드는 플레이어를 식별가능한 정보를 이용한 포렌직 마크를 상기 스트림에 삽입하는데 이용되는 것을 특징으로 하는 데이터 기록방법을 제공한다.In addition, the present invention records a stream on a recording medium, and generates a content code, which is decoding software for the stream to record on the recording medium, wherein the content code inserts a forensic mark using information identifying the player in the stream. It provides a data recording method characterized in that it is used to.
또한, 상기 스트림은 미디어 트랜스폼에 의해 변형된 스트림이고, 상기 콘텐트 코드는 상기 변형된 스트림을 복원하는데 이용될 수 있다.Also, the stream is a stream modified by a media transform, and the content code may be used to recover the modified stream.
또한, 본 발명은 기록매체에 스트림을 기록하는 기록부와, 상기 스트림에 대 한 디코딩 소프트웨어인 콘텐트 코드를 생성하고, 상기 콘텐트 코드를 상기 기록매체에 기록하도록 상기 기록부를 제어하는 제어부를 포함하되, 상기 콘텐트 코드는 플레이어를 식별가능한 정보를 이용한 포렌직 마크를 상기 스트림에 삽입하는데 이용되는 것을 특징으로 하는 데이터 기록장치를 제공한다.The present invention also includes a recording unit for recording a stream on a recording medium and a control unit for generating a content code which is decoding software for the stream and controlling the recording unit to record the content code on the recording medium. The content code provides a data recording device, characterized in that it is used to insert a forensic mark into the stream using the identifiable information of the player.
또한, 상기 스트림은 미디어 트랜스폼에 의해 변형된 스트림이고, 상기 콘텐트 코드는 상기 변형된 스트림을 복원하는데 이용될 수 있다.Also, the stream is a stream modified by a media transform, and the content code may be used to recover the modified stream.
따라서, 본 발명에 의하면, 기록매체에 특별한 정보를 이용한 포렌직 마크를 스트림에 삽입함으로써, 콘텐트가 유출된 후에 상기 콘텐트를 불법적으로 복제한 플레이어를 추적하는 것이 가능해진다. Therefore, according to the present invention, by inserting a forensic mark using special information in a recording medium into a stream, it becomes possible to track a player who illegally copied the content after the content has been leaked.
이하, 본 발명은 설명의 편의를 위해 기록매체로서 광 디스크(optical disc) 특히 "블루레이 디스크(BD)"를 예로 하여 설명하고자 하나, 본 발명의 기술사상은 HD-DVD를 비롯한 다른 기록매체에도 동일하게 적용 가능함은 자명하다.Hereinafter, the present invention will be described using an optical disc, in particular, a "Blu-ray Disc (BD)" as a recording medium for convenience of explanation, but the technical concept of the present invention can be applied to other recording media including HD-DVD. Equally applicable is obvious.
관련하여, 본 발명에서 "로컬 스토리지(Local Storage)"라 함은, 광기록재생장치(도 1) 내에 구비된 일종의 저장수단으로서, 필요한 정보 및 데이터를 사용자가 임의로 저장하여 활용할 수 있는 요소를 의미한다. 즉, 현재 일반적으로 사용되는 로컬 스토리지로는 "하드디스크(hard disk)", "시스템 메모리(system memory)", "플래쉬 메모리(flash memory)"등이 있을 수 있으나, 본 발명이 반드시 이에 한정되는 것은 아니다. In this regard, in the present invention, "local storage" is a kind of storage means provided in the optical recording / reproducing apparatus (FIG. 1), and means an element that a user can arbitrarily store and utilize necessary information and data. do. That is, the local storage currently used generally may be a "hard disk", "system memory (system memory)", "flash memory" and the like, but the present invention is not limited thereto. It is not.
특히, 본 발명과 관련하여, 상기 "로컬 스토리지(Local Storage)"는 기록매체(예를 들어, 블루레이 디스크)와 연관된 데이터를 저장하는 수단으로도 활용되 며, 상기 기록매체와 연관되어 로컬 스토리지 내에 저장되는 데이터는 외부로부터 다운로드(download) 받은 데이터가 일반적이다. In particular, in the context of the present invention, "local storage" is also utilized as a means for storing data associated with a record carrier (e.g. Blu-ray Disc), and associated with the record carrier Data stored therein is generally data downloaded from the outside.
관련하여, 기록매체로부터 일부 허용된 데이터를 직접 독출하거나, 또는 기록매체의 기록재생과 관련된 시스템데이터(예를 들어, 메타데이터(metadata) 등)를 생성하여, 로컬 스토리지 내에 저장하는 것도 가능하다. In this regard, it is also possible to read some permitted data directly from the recording medium, or to generate system data (e.g., metadata, etc.) related to the recording and reproduction of the recording medium and store it in the local storage.
관련하여, 본 발명에서는 설명의 편의를 위해, 상기 기록매체 내에 기록된 데이터를 "오리지널 데이터(original data)"로 명명하고, 상기 로컬 스토리지 내에 저장된 데이터 중 기록매체와 관련된 데이터를 "어디셔널 데이터(additional data)"로 명명하고자 한다.In this regard, in the present invention, for convenience of description, data recorded in the recording medium is referred to as " original data ", and data related to the recording medium among the data stored in the local storage is " additional data " additional data) ".
또한, 본 발명에서 "타이틀(Title)"이라 함은, 사용자와의 인터페이스를 이루는 재생단위를 말한다. 각각의 타이틀은 특정의 오브젝트(Object)와 링크(link)되어 있다. 특히, 상기 오브젝트(Object) 내의 커맨드(command) 혹은 프로그램에 따라 디스크 내 기록된 해당 타이틀에 관련된 스트림이 재생된다. 특히, 본 발명에서는 설명의 편의를 위해 디스크 내 엠펙(MPEG) 압축방식에 의한 고화질의 동영상 정보가 기록된 타이틀 중 끊김 없는 멀티앵글, 멀티 스토리, 언어 크레딧, 디렉터 컷 등을 지원하는 타이틀을 특히 "HDMV 타이틀(Title)"이라 명한다. 또한, 엠펙(MPEG) 압축방식에 의한 고화질의 동영상 정보가 기록된 타이틀 중 기록매체 내 타이틀의 업데이트 또는 네트워크와의 연결성을 지원하여 높은 인터액티버티를 가능하게 하는 Java 프로그램 정보가 기록된 타이틀을 "BD-J 타이틀(BD-J Title)"이라 명할 것이다. In addition, in the present invention, the term "Title" refers to a playback unit that forms an interface with a user. Each title is linked to a specific object. In particular, a stream related to the title recorded in the disc is reproduced in accordance with a command or a program in the object. In particular, in the present invention, for the convenience of description, titles that support seamless multi-angle, multi-story, language credits, director cuts, etc. among the titles in which high-definition video information is recorded by the in-MPEG compression method are particularly referred to. HDMV Title (Title). Also, among the titles in which high-definition video information is recorded by MPEG compression, a title in which Java program information is recorded that enables high interactivity by supporting update of a title in a recording medium or connectivity with a network. BD-J Title. "
도 1은 본 발명의 개념적 이해를 돕기 위해 나타낸 것으로, 광기록재생장치(10)와 주변기기 간의 통합적 사용의 일 예를 보여주기 위해 도시한 것이다.Figure 1 is shown to aid the conceptual understanding of the present invention, it is shown to show an example of the integrated use between the optical recording and
관련하여, 본 발명의 "광기록재생장치(10)"는 여러 가지 규격의 광 디스크를 기록하거나 재생 가능한 기기로서, 설계에 따라서는 특정규격(예를 들면, BD)의 광 디스크만을 기록재생 가능하게 할 수도 있으며, 또한 기록은 제외하고 재생만 하는 것도 가능하다 할 것이다. 그러나, 특히 본 발명에서 해결하고자 하는 광 디스크와 주변기기와의 연계성을 고려하여 이하 광 디스크를 재생하는 플레이어(optical disc player) 또는 광 디스크를 기록재생하는 리코더(optical disc recorder)를 예로 하여 설명하고자 한다. 관련하여, 본 발명의 "광기록재생장치(10)"는 컴퓨터 등에 내장가능한 "드라이브(drive)"가 될 수 있음은 이미 널리 알려진 자명한 사실이다. In relation to this, the "optical recording and reproducing
본 발명의 광기록재생장치(10)는 광 디스크(30)를 기록재생하는 기능 이외에도, 외부입력신호를 수신받아 이를 신호처리한 후 또 다른 외부 디스플레이(20)를 통해 사용자에게 화면으로 전달하는 기능을 가지게 된다. 이 경우 입력가능한 외부신호에 대해서는 특별한 제한은 없으나, 디지털 방송(Digital multimedia broadcasting) 및 인터넷(Internet) 등이 대표적인 외부입력신호가 될 것이며, 특히, 인터넷(Internet)의 경우 현재 누구나 손쉽게 접근할 수 있는 매체로서 광기록재생장치(10)를 통해 인터넷(Internet)상의 특정 데이터를 다운로드(download) 받아 활용할 수 있게 된다. In addition to the function of recording and reproducing the
관련하여, 외부입력 소스(external source)로서 콘텐트(content)를 제공하는 자를 총칭하여 "콘텐츠 제공자(CP:contents provider)"로 명명한다. In this regard, a person providing content as an external input source is collectively called a "content provider (CP)".
또한, 본 발명에서 콘텐트(content)라 함은 타이틀을 구성하는 내용으로서 기록매체의 제작자(author)에 의해 제공되는 데이터(data)를 의미한다.In addition, in the present invention, content refers to data provided by an author of a recording medium as content constituting a title.
특히, 본 발명은 콘텐트가 무단 복제되어 배포되게 되더라도, 콘텐트의 무단 복제 또는 배포를 수행한 광기록재생장치를 추적하여 콘텐츠 제공자의 피해를 최소화하는 방법 및 장치를 제공한다. 이를 통해, 콘텐트의 무단 복제, 배포 등 악의적인 존재에 의해 일어나는 콘텐트의 약탈을 방지하는데 그 목적이 있다.In particular, the present invention provides a method and apparatus for minimizing damage to a content provider by tracking an optical recording / reproducing apparatus that has performed unauthorized copying or distribution of content even if the content is to be distributed without unauthorized copying. Through this, the purpose is to prevent the plunder of the content caused by malicious existence, such as unauthorized copying, distribution of the content.
오리지널 데이터와 어디셔널 데이터에 대해 구체적으로 설명하면, 예를 들어 광 디스크 내에 기록된 오리지널 데이터로는 특정 타이틀용의 멀티플렉싱된(multiplexed) AV스트림을 기록해두고, 인터넷상의 어디셔널 데이터로는 상기 오리지널 데이터의 오디오스트림(예를 들어, 한국어)과 상이한 오디오스트림(예를 들어, 영어)을 제공하면, 사용자에 따라서는 인터넷상의 어디셔널 데이터인 오디오스트림(예를 들어, 영어)을 다운로드 받아, 오리지널 테이터인 AV스트림과 함께 재생하거나, 또는 어디셔널 데이터만 재생하고자 하는 요구가 존재할 것이며, 이를 가능케 하기 위해서는 상기 오리지널 데이터와 어디셔널 데이터 간의 연관성을 규정하고, 이들 데이터들을 사용자의 요구에 따라 관리/재생하는 체계화된 방법이 필요하게 된다. The original data and the local data will be described in detail. For example, the multiplexed AV stream for a specific title is recorded as the original data recorded in the optical disc, and the original data is used as the international data on the Internet. If you provide an audio stream (e.g. English) that is different from the audio stream (e.g. Korean) of the user, the user may download an audio stream (e.g. English), which is an international data on the Internet, depending on the user. There may be a request to play with the AV stream, or to play only the local data. To enable this, the association between the original data and the local data is defined, and the data is managed / played according to the user's request. A systematic method is needed.
상기에서 설명의 편의를 위해 디스크 내에 기록된 신호를 오리지널 데이터로 하고, 디스크 외부에 존재하는 신호를 어디셔널 데이터라고 명명하였으나, 이는 각각의 데이터를 취득하는 방법에 따라 구분될 따름이지 오리지널 데이터와 어디셔널 데이터가 반드시 특정의 데이터로 한정되는 것은 아니라 할 것이다. 따라서, 광 디스크 외부에 존재하면서, 오리지널 데이터와 연관된 어떠한 속성의 데이터도 어디셔널 데이터로 가능하게 된다. 어디셔널 데이터는 인덱스 파일(index) 또는 플레이리스트 파일(*.m2ts), 클립인포 파일(*,clpi) 별로 각각 다운로드 될 수도 있으나, 콘텐트(content) 단위 또는 타이틀(Title) 단위로 다운로드 될 수도 있다.For convenience of explanation, the signal recorded in the disk is referred to as the original data, and the signal existing outside the disk is referred to as the local data, but this is classified according to the method of acquiring the respective data. National data is not necessarily limited to specific data. Thus, data of any attribute existing outside the optical disk and associated with the original data is possible as the local data. The local data may be downloaded for each index file, playlist file (* .m2ts), clip information file (*, clpi), or may be downloaded in content unit or title unit. .
관련하여, 상기 사용자의 요구를 실현 가능케 하기 위하여는 오리지널 데이터와 어디셔널 데이터 상호 간에 연관된 파일구조를 가짐이 필수적이라 할 것인바, 이하 도 2를 통해 광 디스크에서 사용가능한 파일구조 및 데이터 기록구조에 대해 상세히 설명하면 다음과 같다. In this regard, in order to realize the needs of the user, it is essential to have a file structure associated with the original data and the international data. Hereinafter, the file structure and data recording structure available on the optical disc will be described with reference to FIG. The detailed description is as follows.
먼저, 도 2는 본 발명의 데이터 파일구조를 도시한 것이다.First, Fig. 2 shows the data file structure of the present invention.
즉, 본 발명의 파일구조는 하나의 루트 디렉토리(root directory) 아래에 적어도 하나 이상의 BDMV 디렉토리(BDMV)가 포함한다. 상기 BDMV디렉토리(BDMV)에는 사용자와의 인터액티브티(interactivity)를 보장하기 위한 일반파일(상위파일) 정보로서 인덱스 파일("index.bdmv")과 오브젝트 파일("MovieObjet.bdmv")을 존재한다. 아울러, 실제 디스크 내에 기록된 데이터에 대한 정보와 이를 재생하는 방법 등에 대한 정보를 가지는 디렉토리로서, 플레이리스트 디렉토리(PLAYLIST), 클립인포 디렉토리(CLIPINF), 스트림 디렉토리(STREAM), 보조 디렉토리(AUXDATA), BD-J 오브젝트 디렉토리(BDJO)등이 구비되어 있다. 이하 상기 디렉토리 및 디렉토리 내에 포함되는 파일에 대해 상세히 설명하면 다음과 같다.That is, the file structure of the present invention includes at least one BDMV directory (BDMV) under one root directory. In the BDMV directory (BDMV), an index file ("index.bdmv") and an object file ("MovieObjet.bdmv") exist as general file (parent file) information for ensuring interactivity with a user. . In addition, as a directory having information on the data recorded on the physical disk and a method of playing the same, the playlist directory (PLAYLIST), clip information directory (CLIPINF), stream directory (STREAM), auxiliary directory (AUXDATA), A BD-J object directory (BDJO) is provided. Hereinafter, the directory and the files included in the directory will be described in detail.
메타데이터 디렉토리(META)는 데이터에 대한 데이터(data about a data)인 메타데이터(metadata) 파일을 포함한다. 즉, 서치(Search)파일, 디스크 라이브러리(Disc Library)를 위한 메타데이터 파일 등이 상기 디렉토리에 존재한다. The metadata directory META includes a metadata file that is data about a data. That is, a search file, a metadata file for a disc library, and the like exist in the directory.
BD-J 오브젝트 디렉토리(BDJO)는 BD-J 타이틀을 재생하기 위한 BD-J 오브젝트 파일을 포함한다.The BD-J object directory (BDJO) contains a BD-J object file for playing a BD-J title.
보조 디렉토리(AUXDATA)는, 디스크 재생에 필요한 부가적인 데이터 파일을 포함하며, 예를 들어, 인터액티브 그래픽(interactive graphic)의 실행시에 사운드를 제공하는 "Sound.bdmv" 파일, 디스크 재생시 폰트(font) 정보를 제공하는 "11111.otf"파일 등이 있다. The auxiliary directory (AUXDATA) contains additional data files required for disc playback, for example, a "Sound.bdmv" file that provides sound when executing interactive graphics, fonts for disc playback ( font) file "11111.otf".
스트림 디렉토리(STREAM)는, 디스크 내에 특정 포맷으로 기록된 AV 스트림에 대한 파일들이 존재한다. 각각의 스트림은 현재 널리 알려진 MPEG-2 방식의 트랜스포트(Transport) 패킷(packet)으로 기록되는 경우가 가장 일반적이며, 스트림 파일 (01000.m2ts, 02000.m2ts)의 확장명으로 "*.m2ts" 로 사용한다. 특히, 상기 스트림 중에 비디오/오디오/그래픽 정보가 모두 멀티플렉싱된(multiplexed) 스트림을 AV스트림이라 명하고, 적어도 하나 이상의 AV스트림 파일들로서 타이틀(Title)을 구성하게 된다. The stream directory STREAM contains files for an AV stream recorded in a specific format in the disc. The most common case is that each stream is recorded as a well-known MPEG-2 transport packet, and is "* .m2ts" as the extension of the stream file (01000.m2ts, 02000.m2ts). use. In particular, a stream in which all of the video / audio / graphic information is multiplexed is called an AV stream, and a title is configured as at least one or more AV stream files.
클립인포 디렉토리(CLIPINF)는 상기 각각의 스트림 파일("*.m2ts")과 일대일 대응하는 클립인포 파일(01000.clpi, 02000.clpi)들로 구성된다. 상기 클립인포 파일은 클립을 위한 데이터베이스 파일이다. 특히, 클립인포 파일("*.clpi")은 대응하는 스트림 파일("*.m2ts")의 속성정보 및 타임정보 (timing information)등을 기록하게 된다. 관련하여, 스트림 파일("*.m2ts")과 스트림 파일("*.m2ts")에 일대일 대응하는 클립인포 파일("*.clpi")을 묶어 이를 "클립(clip)"이라고 명명한다. 즉, "클립(clip)"은 스트림 파일("*.m2ts")과 이에 클립인포 파일("*.clpi")을 모두 포함한 데이터가 된다. The clip information directory CLIPINF is composed of clip stream files (01000.clpi, 02000.clpi) corresponding to each of the stream files ("* .m2ts"). The clip information file is a database file for a clip. In particular, the clip information file ("* .clpi") records attribute information and time information (timing information) of the corresponding stream file ("* .m2ts"). Relatedly, a clip information file ("* .clpi") corresponding to a stream file ("* .m2ts") and a stream file ("* .m2ts") one-to-one is named and named "clip". That is, "clip" is data including both a stream file ("* .m2ts") and a clip information file ("* .clpi").
플레이리스트 디렉토리(PLAYLIST)는 플레이리스트들을 위한 데이터베이스 파일인 플레이리스트 파일("*.mpls")들로 구성되며, 각각의 플레이리스트 파일("*.mpls")은 특정 클립(clip)이 재생되는 시간(playing interval)을 지정하는 적어도 하나 이상의 플레이아이템(PlayItem; PI) 및 서브플레이아이템(SubPlayItem; SPI)을 포함하고 있으며, 플레이아이템(PI) 및 서브플레이아이템(SPI)은 재생을 원하는 특정 클립(clip)의 재생 시작시간(IN-Time)과 재생 종료시간(OUT-Time)에 대한 정보를 가지고 있다.The playlist directory (PLAYLIST) consists of playlist files ("* .mpls"), which are database files for playlists, and each playlist file ("* .mpls") contains a specific clip to be played. It includes at least one PlayItem (PI) and a SubPlayItem (SPI) that specify a playing interval, and the Playitem (PI) and the subplayitem (SPI) are specific clips to be played. Contains information about the playback start time (IN-Time) and playback end time (OUT-Time) of the (clip).
관련하여, 플레이리스트 파일 내에서 상기 적어도 하나 이상의 플레이아이템(PI)에 의해 재생되는 과정을 "메인패스(main path)"라 하고, 각각의 서브플레이아이템(SPI)에 의해 재생되는 과정을 "서브패스(sub path)"라 정의하며, 또한, 플레이리스트 파일 내에서 상기 메인패스(main path)는 존재하여야 하며, 상기 서브패스(sub path)는 서브플레이아이템(SPI) 존재에 따라 적어도 하나 이상 필요에 따라 존재하게 된다. 결국, 플레이리스트 파일은 적어도 하나 이상의 플레이아이템의 조합에 의해 원하는 클립의 재생을 수행하는 전체 재생관리 파일구조 내의 기본적 재생관리 파일단위가 된다.In this regard, a process played by the at least one playitem PI in a playlist file is referred to as a "main path", and a process played by each subplayitem SPI is referred to as a "sub". "Sub path", and the main path must exist in a playlist file, and at least one sub path is required depending on the existence of a sub-playitem (SPI). Will exist. As a result, the playlist file becomes a basic reproduction management file unit in the entire reproduction management file structure for reproducing a desired clip by combining at least one playitem.
또한, 본 발명의 파일 구조는 루트 디렉토리 하에 BDSVM 디렉토리(BDSVM)를 포함한다. 상기 BDSVM 디렉토리는 보안가상머신(Security Virtual Machine; Security VM)을 위한 디렉토리 구조이다. 상기 BDSVM 디렉토리하에는 콘텐트 코드를 저장하는 콘텐트코드 파일("ContentCode.svm")이 존재한다. 상기 콘텐트코드 파일은 콘텐트 코드에 의해 사용되는 모든 필요한 정보(예를 들어, 스크램블된 픽스업 테이들)도 포함한다. 콘텐트 코드가 기록된 기록매체는 상기 콘텐트 코드 또한 포함한다. 또한, 상기 BDSVM 디렉토리는 상기 콘텐트코드 파일들의 백업 파일이 위치하는 백업(BACKUP) 디렉토리를 하위 디렉토리로 갖는다. 보안가상머신에 대해서는 도 4 이하에서 구체적으로 설명한다.The file structure of the present invention also includes a BDSVM directory (BDSVM) under the root directory. The BDSVM directory is a directory structure for a security virtual machine (Security VM). Under the BDSVM directory, there is a content code file ("ContentCode.svm") that stores content code. The content code file also contains all necessary information (eg, scrambled fixup tables) used by the content code. The recording medium on which the content code is recorded also includes the content code. In addition, the BDSVM directory has a backup directory where a backup file of the content code files is located as a subdirectory. The secure virtual machine will be described in detail with reference to FIG. 4.
관련하여, "콘텐트 코드(Content Code)"는 기록매체에 기록되어 플레이어에 제공되는 일종의 디코딩 소프트웨어로서, 사용자와 인터액트(interact)하거나, 플레이어 및 플레이어 주변기기 또는 드라이버에 질의(query)하거나 재생(playback) 프로세스를 제어한다. 보안 문제가 감지되는 경우, 상기 콘텐트 코드는 적절한 응답(response)이나 대책(countermeasure)을 전달(deliver)한다. 콘텐트 코드는 콘텐트 코드의 디코딩에 관여하여, 상기 콘텐트를 변형할 수 있는 능력을 갖는다. 상기 변형은 디코딩을 위해 원래의 형태로 복원하는 변형뿐만 아니라 포렌직 마크를 클립 AV 스트림에 심는 것과 같은 수정(modifications)을 포함할 수 있다. In this regard, "Content Code" is a type of decoding software that is recorded on a record carrier and provided to a player, which interacts with the user, or queries or plays back the player and player peripherals or drivers. Control the process If a security problem is detected, the content code delivers an appropriate response or countermeasure. The content code participates in the decoding of the content code and has the ability to modify the content. The modification may include modifications such as planting forensic marks in the clip AV stream, as well as modifications that restore the original form for decoding.
관련하여, 본 발명의 파일 구조가 상기 설명한 명칭 및 위치에 제한되는 것은 아님은 자명하다 할 것이다. 즉, 상기 디렉토리 및 파일들은 명칭 및 위치가 아닌 그 의미로서 파악되어야 할 것이다.In this regard, it will be apparent that the file structure of the present invention is not limited to the names and locations described above. In other words, the directories and files should be understood by their meaning and not by name and location.
도 3은 본 발명의 광기록재생장치(10)의 전체 구성에 관한 일 예를 나타낸 것이다.3 shows an example of the overall configuration of the optical recording and reproducing
우선 광 디스크에 기록된 오리지널 데이터 및 재생관리 파일정보를 포함한 관리정보를 재생하기 위한 픽업(11)과 픽업(11)의 동작을 제어하는 서보(14), 상기 픽업(11)으로부터 수신된 재생신호를 원하는 신호 값으로 복원해내거나, 기록될 신호를 광 디스크에 기록되는 신호로 변조(modulation)하여 전달하는 신호처리부(13)와 상기 동작을 제어하는 마이컴(16)이 기본적으로 구성된다. First, the pickup 11 for reproducing management information including the original data recorded on the optical disc and the reproduction management file information, the servo 14 for controlling the operation of the pickup 11, and the reproduction signal received from the pickup 11; The
또한, 제어부(12)는 사용자명령 등에 의해 광 디스크 외에 존재하는 어디셔널 데이터를 다운로드 받아 이를 로컬 스토리지(15)에 저장함과 아울러, 상기 광 디스크 내 오리지널 데이터 및/또는 상기 로컬 스토리지(15) 내 어디셔널 데이터를 사용자의 요구에 따라 재생하게 된다. In addition, the
재생시스템(17)은 상기 제어부(12)의 제어에 따라 데이터를 최종적으로 디코딩하여 사용자에게 제공한다. 재생시스템(17)은 특히 AV신호를 디코딩하는 디코더와, 전술한 특정 타이틀의 재생과 관련하여 오브젝트 커맨드 혹은 어플리케이션과, 제어부(12)를 통해 입력되는 사용자 명령을 해석하여 재생방향을 결정하는 광기록재생장치 모델로 구성된다. The
관련하여, 본 발명에서 상기 제어부(12)는 광기록재생장치(10)를 식별가능한 정보를 재생되는 스트림에 삽입하는 역할을 한다. 상기 정보는 불법 복제를 행한 광기록재생장치를 추적하는데 사용된다. 이를 포렌직 마킹(forensic marking)이라 한다. 포렌직 마킹을 통해 콘텐트가 불법 복제 또는 불법 배포 등을 통해 훼손된 경우, 상기 콘텐트를 훼손한 광기록재생장치를 추적하는 것이 가능하게 되어 콘텐트 복제 및 배포를 억제할 수 있게 된다. 상기 정보는 광기록재생장치를 구별하는 고유한 값으로서, 상기 정보로는 광기록재생장치에 따라 고유하게 주어지는 플레이어 아이디(player identifier; player ID), 광기록재생장치의 시리얼 넘버, 제작자 아이디(manufacturer identifier) 또는 이들의 조합 등이 이용될 수 있다. 상기 제어부(12)에는 콘텐트 코드(Content Code)의 실행에 따라 상기 정보를 스트림에 삽입하는 보안가상머신(178)이 소프트웨어로서 구비될 수 있다. 상기 정보는 광기록재생장치의 재생상태를 저장하는 메모리 유닛인 "Player Registers(176b)"에 저장될 수 있다. 상기 정보는 그 자체 또는 스트림에 삽입될 수 있는 형태로 변형되어 재생되는 스트림에 삽입되게 된다. 상기 정보가 삽입된 스트림은 디코더에서 디코딩되어 사용자에게 프리젠트된다. 보안가상머신(178)을 포함하는 재생시스템(17)에 대해서는 도 4에서 상세하게 다시 설명하도록 한다.In this regard, in the present invention, the
관련하여, 상기 보안가상머신에서 실행되는 콘텐트 코드는 콘텐트의 디코딩 과정에 관여하여 콘텐트를 변환(transformation)할 수 있다. 이를 미디어 트랜스폼(Media Transform)이라 한다. 상기 광기록재생장치를 구별하는 정보를 스트림에 삽입하는 과정(process)은 상기 미디어 트랜스폼의 일부로서 일어날 수 있다. 콘텐트 코드가 디코딩 과정에 관여한다는 것은 콘텐트 코드가 콘텐트를 전환(convert)하는 형태로 동작하기 때문에 불법 복제된 타이틀 또는 미디어 키를 인터넷을 통해 단순 전송될 수 없음을 의미한다. In this regard, the content code executed in the secure virtual machine may participate in the decoding process of the content to transform the content. This is called a media transform. The process of inserting information identifying the optical reproducing apparatus into a stream may occur as part of the media transform. The involvement of the content code in the decoding process means that an illegally copied title or media key cannot be simply transmitted over the Internet because the content code operates in the form of converting the content.
또한, AV 인코더(18)는 광 디스크에 신호를 기록하는 기능의 수행을 위해 제어부(12)의 제어에 따라 입력신호를 특정포맷의 신호, 예를 들어 MPEG2 트랜스포트 스트림으로 변환하여 신호처리부(13)에 제공하게 된다. 본 발명에서, AV 인코 더(18)는 미디어 트랜스폼에 이용되는 픽스업테이블(Fix-up Table)을 클립 AV 스트림으로 멀티플렉스하여 신호처리부(13)에 제공할 수 있다. 상기 픽스업테이블은 스크램블된 형태로 상기 클립 AV 스트림에 멀티플렉스될 수 있으며, 상기 스크램블된 픽스업테이블을 마스크드 픽스업테이블이라고 한다.In addition, the
도 4는 본 발명의 재생시스템(playback system)을 활용한 기록매체 재생장치의 일 실시예를 도시한 것이다. Figure 4 shows an embodiment of a recording medium reproducing apparatus utilizing the playback system of the present invention.
"재생시스템(playback system)"이라 함은, 광기록재생장치 내에 구비되는 프로그램(소프트웨어) 및/또는 하드웨어로 구성되는 집합적 재생처리 수단을 말한다. 광기록재생장치(10) 내에 로딩된 기록매체를 재생함은 물론, 상기 기록매체에 관련되어 스토리지 내에 저장된(예를 들어, 외부로부터 다운로드 받은) 데이터를 함께 재생 및 관리하기 위한 시스템을 의미한다. The term " playback system " refers to collective playback processing means composed of a program (software) and / or hardware provided in the optical recording / reproducing apparatus. A system for reproducing a recording medium loaded in the optical recording / reproducing
특히, 재생시스템(17)은 "User Event Manager(171)", "Module Manager(172)", "HDMV Module(174)", "BD-J Module(175)", "Playback control engine(176)", "Presentation engine(177)" 및 "Virtual File System(40)"으로 구성된다. 본 발명에서 상기 재생시스템은 기록매체와 관련된 타이틀에 부가적인 보안을 제공하는 "Security Virtual Machine(178)"을 포함한다. 이를 상세히 설명하면 다음과 같다. In particular, the
우선, HDMV 타이틀과 BD-J 타이틀을 재생하기 위한, 별도의 재생 처리 관리수단으로서, 각각 HDMV 타이틀을 위한 "HDMV Module(174)"과 BD-J 타이틀을 위한 "BD-J Module(175)"이 독립적으로 구성된다. 상기 "HDMV Module(174)" 및 "BD-J Module(175)"은 특히 전술한 오브젝트(Movie Object 또는 BD-J Object) 내의 커맨드(command) 혹은 프로그램을 수신하여, 이를 처리하도록 하는 제어기능을 가진다. "Metadata Manager(173)"는 언제든지 사용자의 제어 하에, 타이틀 선택을 수행할 수 있고 사용자에게 기록매체와 타이틀 메타데이터를 제공할 수 있다. 상기 "HDMV Module(174)" 및 "BD-J Module(175)"은 재생시스템의 하드웨어적 구성으로부터 커맨드(command) 혹은 어플리케이션을 분리하여, 상기 커맨드 혹은 어플리케이션의 이동(portability)을 가능하게 한다. 상기 커맨드(command) 혹은 어플리케이션 등을 수신하여 처리하는 수단으로서, "HDMV Module(174)"내에는 "Command processor(174a)"가, "BD-J Module(175)"내에는 어플리케이션이 실행되는 "Virtual Machine"인 "Java VM(175a)" 및 어플리케이션의 라이프사이클(lifecyle)을 관리하는 어플리케이션 관리 펑션(application management function)을 포함하는 "Application manager(175b)"가 각각 구비된다. First, as separate playback processing management means for reproducing the HDMV title and the BD-J title, "
또한, 상기 "HDMV Module(174)" 및 "BD-J Module(175)"에 사용자 명령을 전달함은 물론, "HDMV Module(174)" 및 "BD-J Module(175)"의 동작을 제어하는 "Module Manager(172)"가 구비된다. 상기 "HDMV Module(174)" 및 "BD-J Module(175)"의 재생명령에 따라 실제 디스크 내에 기록된 플레이리스트 파일 정보를 해석하고 이에 따른 재생기능을 수행하는 "Playback Control Engine(176)"이 구비된다. 또한, 상기 "Playback Control Engine(176)"에 의해 재생관리되는 특정 스트림을 디코딩하고 화면 내에 디스플레이하기 위한 "Presentation Engine(177)"이 구비된다. 특히, 상기 "Playback Control Engine(176)"은 실제 모든 재생을 관리하 는 "Playback Control Functions(176a)"과 광기록재생장치(10)의 재생상태 및 재생환경("Player status registers(PSR)" 및 "General purpose register(GPR)")을 저장하는 "Player Registers(176b)"로 구분된다. 경우에 따라서는 "Playback Control Functions(176a)"이 "Playback Control Engine(176)"을 의미하기도 한다. "Playback Control Functions(176a)"은 플레이리스트에 포함된 정적 시나리오를 처리한다. In addition, the user command is transmitted to the "
관련하여, HDMV 타이틀과 BD-J 타이틀은 각각 별도 방식의 사용자 명령을 수신하며, 상호 간에는 사용자명령을 수행하는 방식이 독립적이다. 사용자 명령을 수신하여 "HDMV Module(174)"과 "BD-J Module(175)"중 어느 하나로 전달하는 수단이 필요한데, 이는 "User Event Manager(171)"가 담당한다. 따라서, 예를 들어, "User Event Manager(171)"는, 수신된 명령이 "User Operation(UO)(171a)"에 의한 사용자 명령이면 이를 "Module Manager(172)" 또는 "UO Controller(171a)"로 전송하여 수행케 하고, 수신된 명령이 "Key Event"에 의한 사용자 명령이면 이를 "BD-J Module(175)"내의 "Java VM(175a)"으로 전송하여 수행케 한다. In this regard, the HDMV title and the BD-J title each receive a user command of a separate method, and the method of performing the user command is independent of each other. A means for receiving a user command and delivering it to either "
또한, 본 발명의 재생시스템(17)은 "Metadata Manager(173)"를 포함할 수 있는데, "Metadata Manager(173)"는 사용자에게 디스크 라이브러리와 인핸스드 서치 메타데이터 어플리케이션(Disc Library and Enhanced Search Metadata application)을 제공한다.In addition, the
전술한 본 발명의 재생시스템(playback system)에서 상기 "Module Manager(172)", "HDMV Module(174)", "BD-J Module(175)", "Playback Control Engine(176)"은 소프트웨어적인 처리가 가능하다. 실제 하드웨어 구성보다는 소프트웨어로 처리함이 설계에 더욱 유용하다. 단, "Presentation Engine(177)" 및 디코더(17b)와 플레인(Plane)은 하드웨어적으로 설계되는 것이 일반적이다. 특히, 소프트웨어적으로 처리되는 구성요소(예를 들어, 도면부호 172, 174, 175, 176)의 경우는 전술한 제어부(12)의 한 부분으로 구성될 수도 있을 것이다. 본 발명의 구성은 그 의미로서 이해하여야 하며, 하드웨어적 구성인지 소프트웨어적 구성인지에 국한되지 않는다. In the above-described playback system of the present invention, the "
최근 콘텐트를 재생 또는 복제할 수 있는 재생장치 및 인터넷의 발달에 따라 콘텐트의 불법 복제 및 배포가 문제되고 있다. 또한, 고해상도/고음질 콘텐트의 경우 해킹 등의 위험 또한 높아 보호의 필요성이 커지고 있다. 이에 따라, 콘텐트를 보호하기 위한 다양한 방법들이 제기되고 있다. 본 발명에서는 "Security Virtual Machine(178)"을 이용하는 콘텐트 보호방법을 제공하고자 한다. Recently, with the development of a reproducing apparatus capable of playing or copying content and the Internet, illegal copying and distribution of content has been a problem. In addition, in the case of high-resolution / high-quality content, the risk of hacking, etc. is also high, the need for protection is increasing. Accordingly, various methods for protecting content have been raised. In the present invention, to provide a content protection method using the "Security Virtual Machine (178)".
도 5는 본 발명의 데이터 재생방법의 구현을 위한 광기록재생장치 재생시스템 모델을 도시한 것으로서, 상기 시스템 모델은 보안가상머신(178)을 포함한다.5 shows an optical recording and reproducing system reproducing system model for implementing the data reproducing method of the present invention, wherein the system model includes a secure virtual machine (178).
본 발명의 시스템 모델 중 보안가상머신(Security VM)은 본 발명의 기록매체에 기록되는 타이틀에 부가적인 보안(additional security)을 제공한다. 상기 부가적인 보안이 적용된 타이틀을 자기 보호 디지털 콘텐트(Self-Protecting Digital Content; SPDC)라고도 한다. 상기 부가적인 보안의 주 특징은 갱신가능성(renewability)으로서, 상기 보안가상머신(178)의 사용에 의해 각 콘텐트에 대한 콘텐트 재생의 보안 메커니즘이 업데이트될 수 있다. 상기 갱신가능성은 상기 보안 가상머신(178) 상에서 구동하는 콘텐트 코드(content code)에 의해 실현된다. 이하, 보안가상머신(178)에 대해 구체적으로 설명한다.The Security VM of the system model of the present invention provides additional security to titles recorded on the recording medium of the present invention. Titles to which the additional security is applied are also referred to as self-protecting digital content (SPDC). The main feature of the additional security is renewability, whereby the security mechanism of content playback for each content can be updated by the use of the secure
보안가상머신(178)은 콘텐트 소유자(content owner)에게 디스커버리(Discovery), 미디어 트랜스폼(Media Transform), 포렌직 마크(Forensic Mark), 런 네이티브(Run Native), 어플리케이션 레이어 커뮤니케이션(application layer communication)과 광기록재생장치 스토리지 슬롯등과 같은 보안툴(security tool)을 제공한다. The secure
디스커버리 툴은 악의적인 환경과 공격들을 감지하기 위해 재생 환경(playback environment)에 대한 정보를 제공한다. 콘텐트 소유자에게 가장 심각한 공격 중의 하나 모방기는 적법한 플레이어로 가장하여 부정확한(incorrect) 방법으로 콘텐트를 재생한다. 이러한 종류의 공격에 대응하기 위하여, 보안가상머신(178)은 디스커버리 및 디스커버리 랜덤 엑세스 메모리(Random Access Memory; RAM)를 이용하여, 적법한 플레이어와 모방기를 구별한다. 일단 모방기가 감지되면, 다른 보안 툴들은 콘텐트의 재생을 방지할 수 있다.Discovery tools provide information about the playback environment to detect malicious environments and attacks. One of the most serious attacks on content owners is that the imitator pretends to be a legitimate player and plays the content in an incorrect way. To counter this kind of attack, secure
콘텐트 코드는 미디어 트랜스폼을 이용하여 디코딩 프로세스의 일부분으로서 콘텐트 스트림에 적용될 수정사항(modification)을 정의할 수 있다. 이를 통해 보안가상머신(178)은 본 발명에 따른 기록매체를 위한 복사 방지 시스템에 부가적인 레이어(layer)를 제공할 수 있다. 기록매체 제작(authoring) 동안, 기록매체 상의 콘텐트는 고의적으로 변형되어(corrupted), 기록매체 재생(playback) 동안, 보안가상머신(178)에 의해 정상적인 형태로 환원될 수 있다. 모방기가 디스커버리에 의해 감지되면, 보안가상머신(178)은 미디어 트랜스폼을 위한 어떠한 작용도 하지 않으며, 따라서 모방기에서 콘텐트가 정상적으로 재생될 수 없게 된다. 다시 말하면, 기록매체에 기록되는 콘텐트는 저작과정(authoring)에서, 의도적으로 손상될(corrupt) 수 있다. 본 발명의 보안가상모듈은 상기 손상된 콘텐트 즉, 미디어 트랜스폼이 적용된 콘텐트를 재생과정에서 원래의 형태로 복원할 있다. 결국, 상기 콘텐트가 모방기에서는 정상적으로 재생될 수 없으므로 콘텐트를 보호할 수 있게 된다.The content code may use media transform to define modifications to be applied to the content stream as part of the decoding process. This allows the secure
포렌직 마크(forensic mark)는 콘텐트가 재생될 때 사용자에 의해 인식되지는 않으나, 특수한 검출기에 의해 검출될 수 있도록 콘텐트에 내장되는 신호이다. 본 발명에서는 광기록재생장치를 식별가능한 정보를 이용한 포렌직 마크를 재생되는 스트림에 삽입하여 프리젠트한다. 포렌직 마크 그 자체는 콘텐트 소유자에 대한 공격을 방지하지 못한다. 그러나, 플레이어 특유의 정보를 상기 플레이어에서 재생되는(played back) 출력 콘텐트에 삽입하고, 상기 콘텐트가 공중에 유출된 경우에는 상기 유출된 콘텐트 내 포렌직 마크(forensic mark)를 확인함으로써, 콘텐트 소유자는 상기 콘텐트를 불법 복제하야 배포한 플레이어를 탐지하여 폐기(revoke)할 수 있다. A forensic mark is a signal embedded in the content that is not recognized by the user when the content is played but can be detected by a special detector. In the present invention, a forensic mark using identifiable information is inserted into a stream to be reproduced to present the optical recording and reproducing apparatus. Forensic marks themselves do not prevent attacks on content owners. However, by inserting player-specific information into the output content played back in the player, and identifying the forensic mark in the leaked content when the content is leaked into the air, the content owner may have identified the forensic mark. The pirated content can only be detected and revoked.
관련하여, 상기 광기록재생장치를 식별가능한 정보로는 제조자의 성명, 식별자(identifier), 제조 지역, 제조일 등과 같은 제조자 정보, 광기록재생장치의 생산 라인, 시리얼 넘버, 모델 넘버, 펌웨어/소프트웨어 버전, 인증서등과 같은 디바이스 정보 또는 광기록재생장치의 재생상태정보 등이 이용될 수 있다.In this regard, the identifiable information of the optical recording / reproducing apparatus may include manufacturer information such as a manufacturer's name, identifier, manufacturing region, manufacturing date, etc., production line, serial number, model number, firmware / software version of the optical recording / reproducing apparatus Device information such as a certificate or the like, or reproduction state information of the optical recording / reproducing apparatus may be used.
또한, 보안가상머신(178)은 광기록재생장치 내 보안 흠결(flaw)를 찾아내거나 고치는 런 네이티브, 보안가상머신(178)에서 동작하는(running) 콘텐트 코드는 어플리케이션 레이어와 데이터를 교환할 수 있도록 하는 어플리케이션 레이어 커뮤니케이션 성능, 그리고 콘텐트 코드에 의해 사용되는 비휘발성 스토리지인 플레이어 스토리지 슬랏(Player Storage Slots)을 제공한다. In addition, the secure
상기와 같은 보안툴을 통해, 보안가상머신(178)은 다양한 타입의 공격들로부터 콘텐트를 보호할 수 있는 갱신성을 제공할 수 있다. 또한, 디스커버리의 사용에 의해 모방기를 탐지함과 아울러 광기록재생장치의 결합을 회복할 수도 있다. Through such a security tool, the secure
관련하여, 상기 보안가상머신(178)은 소프트웨어로서 제어부의 일부로 구현될 수도 있고, 하드웨어로서 독립된 모듈로 구현되는 것도 가능하다.In this regard, the secure
도 5의 재생시스템 모델은 전술한 보안가상머신(178)의 보안툴에 기초하여 정의된 것으로서, 기록매체 네비게이션 시스템의 재생시스템과 보안가상머신(178)을 도시한 것이다. 보안가상머신(178)은 배경 가상머신(Virtual Machine; VM) 프로세스, 개입 인터럽트 가상머신 프로세스(Interrupt VM Process), 가상머신 메모리 스페이스, 디스커버리 메모리 스페이스와 변형 펑션(Transform Function)을 포함한다.The playback system model of FIG. 5 is defined based on the security tool of the secure
구체적으로, 본 발명의 보안가상머신(178)은 배경 가상머신 프로세스(Background VM Process)와 인터럽트 가상머신 프로세스(Interrupt VM Process)라는 두 가지 가상머신 프로세스로 구성된다. 보안가상머신(178)이 수행해야할 시간에 결정적인(time-critical) 작용(operation) (예를 들어, 보안 체크(security checks))이 없는 경우, 보안가상머신(178)은 콘텐트 코드가 고정된 타이밍을 가지지 않는 배경 모드(background mode)에서 동작한다. 배경 모드에서 보안가상머신(178)은 전 시간에 걸쳐 작동할 필요는 없으며, 광기록재생장치는 보안가상머신(178)에 프로세서 타임을 제공하는 것과 다른 작용들을 수행하는 것을 번갈아 행할 수도 있다. Specifically, the secure
상기 두 가상머신 프로세스는 고정된 크기의 메모리 영역을 공유하게 되는데, 상기 메모리 영역(area)을 가상머신 메모리 스페이스(VM Memory Space)라고 한다. 상기 가상머신 메모리 스페이스는 배경 가상머신 프로세스와 인터럽트 가상머신 프로세스를 위한 작업 메모리로서 콘텐트 코드와 그 데이터 또는 변수들이 저장된다. 타이틀의 재생시작 시점에 기록매체에 기록된 콘텐트 코드는 가상머신 메모리 스페이스에 로드되고, 배경 가상머신 프로세스와 인터럽트 가상머신 프로세스는 상기 가상머신 메모리 스페이스에 읽기/쓰기를 행하게 된다. 보안가상머신은 보통의 가상머신 메모리 스페이스 외에 디스커버리 램(Random Access Memory; RAM)를 포함한다. 디스커비리 램은 광기록재생장치 소프트웨어의 실제 메모리 스페이스 중 비기밀(non-confidential) 부분(portion)들로부터 데이터를 읽는다. The two virtual machine processes share a fixed size memory area. The memory area is called a virtual machine memory space. The virtual machine memory space is a working memory for a background virtual machine process and an interrupt virtual machine process, in which content code and its data or variables are stored. The content code recorded on the recording medium at the start of playback of the title is loaded into the virtual machine memory space, and the background virtual machine process and the interrupt virtual machine process read / write to the virtual machine memory space. Secure virtual machines include a random access memory (RAM) in addition to the normal virtual machine memory space. Discrete RAM reads data from non-confidential portions of the actual memory space of the optical recorder software.
관련하여, 콘텐트 코드 파일의 데이터가 가상머신 메모리 스페이스에 저장되기 전에, 보안가상머신은 상기 콘텐트 코드 파일의 서명을 검증하게 된다. 콘텐트 코드는 소유한 믿을 수 있는 인증기관(trusted certificate authority)의 비밀키에 의해 서명되어야 한다. 검증에 실패하는 경우 보안가상머신은 상기 콘텐트 코드 파일의 데이터를 읽지 않는다.In this regard, before the data of the content code file is stored in the virtual machine memory space, the secure virtual machine verifies the signature of the content code file. The content code must be signed by the private key of the owned trusted certificate authority. If the verification fails, the virtual machine does not read the data of the content code file.
인터럽트 가상머신 프로세스는 제한된 기간 내에 광기록재생장치가 보안가상머신(178)으로부터 결과를 요구하는 작용들을 수행하기 위해 제공된다. 예를 들면, 미디어 트랜스폼(Media Transform)에서 전술한 바와 같이, 클립 AV 스트림은 변형되어 제공될 수 있다. 클립 AV 스트림을 원래 상태로 변형하기 위해서는 비밀 파리미터 및 관련된 값들이 필요하다. 상기 비밀 파리미터는 보안가상머신(178)의 인터럽트 가상머신 프로세스에 의해 제공된다. 이 경우, "Playback Control Functions(176a)"은 인터럽트 가상머신 프로세스를 불러내어 활성화(active)시킨다. 액티브 모드에서, 상기 인터럽트 가상프로세스 프로세스는 할당된 콘텐트 코드를 계산하여 트랜스폼 펑션에 비밀 파라미터를 제공하고, 비활성화(non-active)모드로 돌아간다. 이 경우, 배경 가상머신 프로세스가 재개된다. An interrupt virtual machine process is provided for the optical recording and reproducing apparatus to perform operations requiring a result from the secure
관련하여, 보안가상머신(178)의 실행 모드는 미디어 초기화 모드, 배경모드, 타이틀 초기화 모드, 비밀파라미터 계산 모드, 어플리케이션 리퀘스트 모드, 타이틀 종료화 모드를 포함한다. 기록매체가 로딩될 때, 보안가상머신(178)은 미디어 초기화 모드에서 동작한다. 미디어 초기화 모드에서, 인터럽트 가상머신 프로세스가 활성화되고 미디어 엑세스가 일어난다. 콘텐트 코드가 전체 기록매체에 대한 초기화를 수행하면 배경모드 상태가 된다. 배경모드에서는 배경 가상머신 프로세스가 동작한다. In this regard, the execution mode of the secure
보안가상머신(178)에서 동작 중인 콘텐트 코드로부터의 실행결과(execution result)가 필요할 때, "Module Manager(172)", "Playback Control Function(176a)"과 "Command Processor(174a)"은 인터럽트(interrupt)를 발생시킨다. 인터럽트가 발생하면, 해당 모드로 상태가 이동한다. 예를 들어, "Module Manager(172)"가 타이틀의 재생을 시작하려고 하는 경우에는 타이틀 초기화 모드로, "Playback Control Engine(176a)"이 비밀 파라미터의 계산을 요구하는 경우에는 비밀 파라미터 계산 모드로, "Command Processor(174a)"가 "Player Status Registers"의 상태를 변경하고자 하는 경우에는 어플리케이션 리퀘스트 모드 상태가 된다. "Module Manager(172)"가 전체 기록매체의 재생을 멈추고자 하는 경우에는 미디어 종료화 모드 상태가 된다. 배경모드에서 인터럽트가 발생하는 경우, 배경 가상머신 프로세스가 중단되고, 인터럽트 가상머신 프로세스가 활성화된다. 콘텐트 코드가 상기 인터럽트에 대한 프로세스를 마치면, 배경모드 상태로 다시 돌아가고, 인터럽트 가상머신 프로세스트는 종료되며 배경 가상머신 프로세스가 재개된다.When execution results from content code running on the secure
본 발명에서 콘텐트의 클립 AV 스트림은 포렌직 마크가 삽입되어 디코딩되어 프레젠트된다. 포렌직 마크의 삽입은 미디어 트랜스폼의 한 형태로 이루어질 수 있다. 미디어 트랜스폼이라는 보안툴에서, 트랜스폼 펑션이 중요한 역할을 하게 된다. 트랜스폼 펑션은 기록매체 갱신 메커니즘의 중요한 부분을 담당하게 된다. 트랜스폼 펑션은 보안가상머신의 외부에 위치하게 되며, 마스크드 픽스업테이블 엔트리들(Masked Fix-up Table entries)을 보안가상머신에 의해 계상된 비밀 파라미커들(SPs)과 포렌직 마크 아이디(FM_ID) 값들을 결합하여 미디어 트렌스폼을 클립 AV 스트림에 적용한다. 상기 트랜스폼 펑션은 소프트웨어적으로 제어부(12)에 포함될 수 있으나, 포렌직 마크를 삽입하는 별도의 디바이스로서 하드웨어적으로 설계되는 것도 가능하다.In the present invention, the clip AV stream of the content is inserted with a forensic mark, decoded, and presented. Insertion of the forensic mark may be in the form of a media transform. In a security tool called media transform, transform functions play an important role. Transform functions are an important part of the record carrier update mechanism. The transform function is located outside of the virtual machine, and the secreted fixer (SPs) and forensic mark IDs (FM_ID) that are masked fix-up table entries are enumerated by the virtual machine. ) To apply the media transform to the clip AV stream. The transform function may be included in the
본 발명에서 상기 포렌직 마크는 광기록재생장치(플레이어)를 식별가능한 정보를 이용하여 생성된다. 상기 정보는 광기록재생장치의 재생상태를 저장하는 메모리 유닛에 저장될 수 있다. 이하, 상기 정보를 'Player ID'라 하고, 상기 'Player ID'가 "Player Status Register"에 저장된 경우를 예로 하여 설명한다.In the present invention, the forensic mark is generated using information that can identify the optical recording and reproducing apparatus (player). The information can be stored in a memory unit which stores the reproduction state of the optical recording and reproducing apparatus. Hereinafter, the information will be referred to as 'Player ID', and the case where the 'Player ID' is stored in the 'Player Status Register' will be described as an example.
도 6a는 본 발명에 따른 광기록재생장치에 구비된 메모리 유닛의 일 실시예를 도시한 것이고, 도 6b는 본 발명에 따른 메모리 유닛 구조의 일 실시예를 도시한 것이다. FIG. 6A illustrates an embodiment of a memory unit included in the optical recording and reproducing apparatus according to the present invention, and FIG. 6B illustrates an embodiment of the memory unit structure according to the present invention.
본 발명의 광기록재생장치에는 상기 플레이어의 기록재생 상태 및 기록재생 환경에 관한 정보가 저장되는 일종의 메모리 유닛(memory units)으로서 "Player Registers"(176b)가 구비된다. 상기 "Player Registers"(176b)는 플레이어의 상태를 나타내는 데 사용되는 변수들이 저장되는 "Player Status Registers (PSRs)"와 HDMV 어플리케이션들과 BD-J 어플리케이션 사이에서 데이터의 공유 및 프로그래밍에 사용되는 변수들이 저장되는 "General Purpose Registers (GPRs)"로 구분될 수 있다. 도 6a ~ 도 6b는 본 발명의 광기록재생장치를 식별가능한 정보가 "Player Status Register" (이하 PSR)에 저장되는 경우를 예로 한 것이다. The optical recording and reproducing apparatus of the present invention is provided with " Player Registers " The " Player Registers " 176b includes " Player Status Registers (PSRs) ", which store variables used to indicate player status, and variables used for sharing and programming data between HDMV applications and BD-J applications. Can be classified as "General Purpose Registers (GPRs)". 6A to 6B illustrate an example in which the information for identifying the optical recording and reproducing apparatus of the present invention is stored in the "Player Status Register" (hereinafter referred to as PSR).
도 6a를 참조하면, "Player Status Registers (PSRs)" 중 하나인 PSR32 (501)에 'Player ID'가 저장될 수 있다. 상기 'Player ID'는 광기록재생장치를 식별하는 정보이다. 본 발명의 보안가상머신은 상기 'Player ID'를 이용하여 콘텐트의 재생과정에서 클립 AV 스트림에 삽입될 포렌직 마크를 생성할 수 있다. 상기 네트워크를 통해 데이터를 전송하는 경우, 플레이어에 따라 데이터의 배포를 제한하 는데 이용될 수 있다. 또한, 해당 광기록재생장치의 확인 또는 권한없이(unauthorized) 데이터를 재생, 복제 또는 반포한 광기록재생장치의 추적 등에 이용될 수도 있다. 도 6b를 참조하면, 상기 'Player ID'가 PSR32 (501)의 일정 비트를 사용하여 저장된다. PSR32 (501) 이외의 레지스터에 광기록재생장치를 식별하는 상기 정보가 저장될 수도 있음은 자명하다. Referring to FIG. 6A, 'Player ID' may be stored in the
관련하여, 상기 "Player Status Register"는 재생 타이틀 넘버와 챕터 넘버와 같은 재생 상태 파라미터들을 저장하는 "Playback Status Registers"와 오디오 언어 코드나 컨트리 코드와 같은 광기록재생장치 구성 파라미터들을 저장하는 "Player Setting Registers"로 구성된다. 콘텐츠 제공자에 의해 제공된 데이터를 보호하고자 하는 본 발명의 목적에 비추어, 광기록재생장치는 사용자가 상기 'Player ID' 값을 설정하는 것을 허용하지 않는 것이 바람직하다. 그러므로, 상기 'Player ID'가 "Player Status Registers" 중 하나에 저장되는 경우, 상기 "Player Status Registers"를 구성하는 "Playback Status Registers"와 "Player Setting Registers" 중 "Player Setting Register"에 저장되는 것이 바람직할 것이다. 왜냐하면, 상기 "Player Setting Registers"에 포함된 값들은 "Playback Status Registers"를 초기화하는 초기화 과정(initialization process)이나 네비게이션 커맨드(navigation commands)에 의해 영향을 받지 않기 때문이다. In this regard, the " Player Status Register " is a " Playback Status Registers " that stores playback status parameters such as a playback title number and chapter number, and a " Player Setting " that stores optical recording / playback device configuration parameters such as audio language codes or country codes. Registers ". In view of the object of the present invention to protect the data provided by the content provider, the optical recording / reproducing apparatus preferably does not allow the user to set the 'Player ID' value. Therefore, when the 'Player ID' is stored in one of the "Player Status Registers", it is stored in the "Player Setting Register" of the "Playback Status Registers" and "Player Setting Registers" that constitute the "Player Status Registers". Would be desirable. This is because the values included in the "Player Setting Registers" are not affected by an initialization process or navigation commands that initialize the "Playback Status Registers."
관련하여, 상기 예에서는 'Player ID'가 "Player Status Register"에 저장되는 것으로 설명하였으나, 광기록재생장치에 대한 정보를 저장할 수 있는 메모리 유닛이면 족하다. 광기록재생장치를 식별할 수 있는 상기 정보로 'Player ID'를 외에 도 광기록재생장치의 시리얼 넘버, 광기록재생장치 제작자 아이디 등이 이용되는 것이 가능함은 전술한 바 있다.Regarding the above example, it has been described that the 'Player ID' is stored in the 'Player Status Register', but a memory unit capable of storing information on the optical recording and reproducing apparatus is sufficient. In addition to the 'Player ID' as the information for identifying the optical recording and reproducing apparatus, the serial number of the optical recording and reproducing apparatus, the ID of the optical recording and reproducing apparatus, and the like can be used.
도 7은 본 발명에 따른 포렌직 마킹을 구현하는 플레이어 모델의 일 실시예를 도시한 것이다. Figure 7 illustrates one embodiment of a player model for implementing forensic marking according to the present invention.
본 발명에서 포렌직 마크는 스트림의 미디어 트랜스폼 과정에서 삽입될 수 있다. 미디어 트랜스폼에는 픽스업테이블이 이용되는데, 픽스업테이블은 일련의 픽스업테이블 엔트리들(Fix-up Table entries)로 나누어진다. 미디어 트랜스폼을 구현하는 하나의 방법은 클립 AV 스트림에 멀티플렉스된 마스크드 픽스업테이블을 이용하는 것이고, 다른 하나의 방법은 기록매체에 독립된 파일로서 저장된 마스크드 픽스업테이블을 이용하는 것이다.In the present invention, the forensic mark may be inserted during media transformation of the stream. Fix-up tables are used in the media transform, which is divided into a series of fix-up table entries. One way to implement the media transform is to use a masked fixup table multiplexed onto the clip AV stream, and another method is to use a masked fixup table stored as a separate file on a recording medium.
클립 AV 스트림에 멀티플레스된 마스크드 픽스업테이블이 미디어 트랜스폼에 이용되는 경우, 실제 픽스업테이블 엔트리(마스크되지 않은 픽스업테이블 엔트리)는 마스크드 픽스업테이블 엔트리와 보안가상머신에 의해 제공되는 비밀 파라미터 사이의 논리연산(예를 들어, 배타적 논리합(XOR operation))에 의해 산출될 수 있다. 본 발명의 포렌직 마킹에 이용되는 픽스업테이블 엔트리는 보안가상머신에 의해 제공되는 비밀 파라미터와의 논리연산(예를 들어, 배타적 논리함)에 의해 마스크된 형태로 프로그램 맵 테이블(Program Map Table; PMT) 패킷의 디스크립터에 저장된다. 상기 픽스업테이블 엔트리는 상기 프로그램 맵 테이블 패킷이 속하는 비밀 파라미터 시그먼트(SP Segment)의 비밀 파라미터 식별자(SP_ID)를 포함한다. 상기 비밀 파라미터 식별자는 마스크되지 않으며, 상기 픽스업테이블 엔트리가 존재 하는 비밀 파라미터 시그먼트에 대한 비밀 파라미터 식별자와 동일하다. 또한, 상기 픽스업테이블 엔트리는 상기 픽스업테이블을 사용하는 프로세스를 식별하는 정보를 포함한다. 상기 프로세스 식별 정보(type_identifier)는 미디어 트랜스폼 또는 포렌직 마킹을 행하는지를 나타낸다. 예를 들어, 상기 프로세스 식별 정보가 '00b'로 설정된 경우 미디어 트랜스폼을 적용하지 않음을 의미하고, '01b'로 설정된 경우 미디어 트랜스폼 적용함을 의미하며, '11b'는 포렌직 마킹을 행함을 의미할 수 있다. When a masked fixup table multiplexed onto a clip AV stream is used for media transformation, the actual fixuptable entry (unmasked fixuptable entry) is provided by the masked fixuptable entry and the virtual machine. It can be calculated by a logical operation between secret parameters (eg, an XOR operation). The fixup table entry used in the forensic marking of the present invention is a program map table (PMT) in a masked form by a logical operation (for example, exclusive logic) with a secret parameter provided by a secure virtual machine. ) Is stored in the descriptor of the packet. The fixup table entry includes a secret parameter identifier (SP_ID) of a secret parameter segment (SP Segment) to which the program map table packet belongs. The secret parameter identifier is not masked and is the same as the secret parameter identifier for the secret parameter segment in which the fixup table entry exists. The fixup table entry also includes information identifying a process that uses the fixup table. The process identification information (type_identifier) indicates whether media transformation or forensic marking is performed. For example, when the process identification information is set to '00b', it means that no media transform is applied, and if it is set to '01b', it means to apply a media transform, and '11b' performs forensic marking. Can mean.
또한, 상기 픽스업테이블은 상기 포렌직 마킹을 위한 포레직 마크 아이디의 비트 위치(FM_ID_bit_position)를 나타내는 정보를 포함한다. 상기 포렌직 마크 아이디 비트 위치가 특정 값으로 설정된 경우(예를 들어, '1') 해당 픽스업 엔트리에서의 오버라이트 작용이 실행된다. 다만, 상기 포렌직 마크 아이디의 비트 중 상기 픽스업테이블에 포함된 포렌직 마크 아이디 비트 위치 정보에 의해 지정된 비트가 '0'으로 설정된 경우, 상기 픽스업테이블에 포함된 오버라이트 값(overwrite value)이 상기 스트림에 오버라이트(overwrite)되지 않는다. The fixup table may include information indicating a bit position FM_ID_bit_position of a forensic mark ID for the forensic marking. When the forensic mark ID bit position is set to a specific value (for example, '1'), the overwrite operation on the fixup entry is performed. However, when the bit designated by the forensic mark ID bit position information included in the fixup table is set to '0' among the bits of the forensic mark ID, an overwrite value included in the fixup table is determined. It is not overwritten by the stream.
또한, 상기 픽스업테이블은 프로그램 맵 테이블로부터 첫 번째 변형된 패킷까지의 상대적 패킷 넘버, 변형된 패킷으로부터 두 번째 변형된 패킷까지의 상대적 패킷 넘버와, 상기 변형된 패킷들에 각각 오버라이트될 오버라이트 값을 포함한다. The fixup table may also include a relative packet number from the program map table to the first modified packet, a relative packet number from the modified packet to the second modified packet, and an overwrite to be overwritten to the modified packets, respectively. Contains a value.
관련하여, 본 발명의 클립 AV 스트림들은 비밀 파라미터 시그먼트(SP Segments)로 나누어지고, 비밀 파라미터 식별자가 각 클립 AV 스트림 내 각 비밀 파라미터 시그먼트에 할당된다. 콘텐트 코드는 각 비밀 파라미터 시그먼트에 대한 비밀 파라미터를 생성하여 보안가상머신(178)에 제공한다. 상기 비밀 파라미터는 마스크드 픽스업테이블 엔트리들과의 논리연산을 통해 실제 픽스업테이블 엔트리들을 산출하는데 이용된다. 각 클립에 대한 비밀 파라미터의 수는 해당 클립 내의 비밀 파라미터 시그먼트의 수와 동일하며, 하나의 비밀 파라미터 시그먼트 내의 모든 픽스업테이블 엔트리들에 적용된다. . In this regard, the clip AV streams of the present invention are divided into secret parameter segments (SP Segments), and a secret parameter identifier is assigned to each secret parameter segment in each clip AV stream. The content code generates a secret parameter for each secret parameter segment and provides it to the secure
도 7을 참조하여 클립 AV 스트림에 멀티플렉스된 픽스업테이블을 이용한 미디어 트랜스폼을 설명하면, 광기록재생장치(10)는 기록매체로부터 마스크드 픽스업테이블을 포함하는 클립 AV 스트림을 읽는다. 상기 콘텐트는 암호화되어 광기록재생장치(10)에 제공될 수 있다. 이 경우, 상기 콘텐트는 복호화되어야 디코딩될 수 있다. 암호화(encryption)라 함은 특정 알고리즘을 사용하여 데이터를 변형함으로써 콘텐츠 제공자가 제공하는 콘텐트에 대한 불법 복재 및 배포(redistribution), 편집 등을 방지하는 복제 방지 방법의 일종을 말한다. 콘텐트의 복호화하는 콘텐트에 대한 권한없는 접근을 막는 일종의 자물쇠 역할을 하게 되며, 상기 특정 알고리즘은 자물쇠를 잠그는 키 역할을 하게 된다. 따라서, 콘텐트의 암호화에 사용되는 상기 특정 알고리즘을 암호화 키라 지칭할 수 있다. 상기 암호화된 콘텐트를 재생하기 위해서는 상기 콘텐트의 암호화에 사용된 특정 알고리즘을 해독할 수 있는 수단이 제공되어야 한다. 상기 특정 알고리즘 해독 수단은 자물쇠를 여는 일종의 키 역할을 하게 된다. 키가 제공되면, 상기 키를 사용하여 콘텐트 암호화에 사용된 알고리즘을 해독하고 상기 콘텐트를 원래 형태로 복원하게 되는데, 이를 복호화(decryption)라 한다. 상기 콘텐트의 암호화가 타이틀 단위로 이루어진 경우, 상 기 타이틀의 암호화와 복호화에 사용되는 키를 타이틀 키(Kt)라 한다. 광기록재생장치(10)는 상기 타이틀 키(Kt)를 이용하여 암호화된 클립 AV 스트림을 복호화한다. Referring to FIG. 7, a media transform using a fixup table multiplexed on a clip AV stream is described. The optical recording and reproducing
상기 기록매체 내 콘텐트 코드는 보안가상머신(178)에 제공된다. 상기 콘텐트 코드는 상기 보안가상머신(178)에서 실행되어, "Playback Control Engine(176)"에 의해 제공되는 클립 아이디(Clip_ID), 비밀 파라미터 아이디(SP_ID)와 플레이어 아이디(Player_ID)를 이용하여 각 비밀 파라미터와 함께 비밀 파라미터 아이디 및 포렌직 마크 아이디(FM_ID)를 출력한다. 본 발명에서, 상기 포렌직 마크 아이디는 플레이어를 식별가능한 정보에 근거하여 생성되며, 상기 포렌직 마크 아이디를 이용하여 포렌직 마크가 클립 AV 스트림에 삽입된다.The content code in the recording medium is provided to the secure
관련하여, "Playback Control Engine(176)"으로부터 보안가상머신(178)에 제공되는 상기 클립 아이디는 각 클립의 파일명에 사용된 수(number)와 동일하다. 예를 들어, 'Clip_ID=123'은 클립인포 파일 '00123.clpi'와 스트림 파일'00123.m2ts'를 참조하는 클립을 나타낸다.In this regard, the clip ID provided from the "
상기 콘텐트는 의도적으로 변형된(corrupted) 후 암호화되어 기록매체에 기록된 것일 수 있다. 광기록재생장치(10)는 상기 콘텐트를 미디어 트랜스폼을 통해 원래의 형태로 복원한다. 상기 미디어 트랜스폼에는 트랜스 폼 펑션이 이용되며, 상기 트랜스 폼 평션은 디멀티플렉서(Demux)에 의해 상기 복호화된 클립 AV 스트림으로부터 마스크드 픽스업테이블이 추출되도록 한다. 상기 추출된 마스크드 픽스업테이블 엔트리와 콘텐트 코드에 의해 출력된 비밀 파라미터와의 논리연산에 의해 실제 픽스업테이블 엔트리가 산출된다.The content may be intentionally corrupted and then encrypted and recorded on the recording medium. The optical recording and reproducing
상기 광기록재생장치(10)는 상기 픽스업테이블에 포함된 프로세스 식별 정보가 미디어 트랜스폼을 행하는 것으로 설정(예를 들어,'01b'), 또는 상기 프로세스 식별 정보가 포렌직 마킹을 행하는 것으로 설정(예를 들어, '11b')되고 포렌직 마크 아이디 비트 위치가 지시하는 포렌직 마크의 비트가 '1'로 설정되었는지를 확인한다. 상기와 같은 경우에, 미디어 트랜스폼 프로세스가 계속 진행되어, 상기 픽스업테이블에 포함된 오버라이트 값들이 트랜스포트 스트림 중 상기 픽스업테이블에서 지정된 패킷에 각각 오버라이트 되어 변형이 이루어진다. 프로세스 식별 정보가 미디어 트랜스폼을 행하지 않는 것으로 설정된 경우(예를 들어, '00b')에는 클립 AV 스트림이 변형되지 않는다. 또한, 포렌직 마킹을 행하는 것으로 설정되었으나 포렌직 마크 아이디가 지시하는 포렌직 마크의 비트가 '1'이 아닌 경우('0'으로 설정된 경우)에는 상기 오버라이트 값들이 지정된 패킷에 오버라이트되지 않는다. 결국, 포렌직 마크 아이디에 따라, 지정된 위치에서 오버라이트 작용이 일어나거나 일어나지 않게 되고, 콘텐트의 스트림은 오버라이트 유무에 따라 달라지는 고유한 패턴을 갖게 된다. 상기 고유한 패턴이 포렌직 마크가 되어 유출된 콘텐트를 프로세싱한 플레이어를 추적할 수 있다.The optical recording / reproducing
상기 전술한 과정 중 복호화된 클립 AV 스트림으로부터 마스크드 픽스업테이블을 추출하여 실제 픽스업테이블을 산출하고, 상기 픽스업테이블을 이용하여 특정 패킷에 오버라이트 값을 오버라이트 하는 과정들은 전체 클립 AV 스트림에 대해 반복되게 된다. 결국, 본 발명에서는 플레이어를 식별가능한 정보를 이용하여 생성된 포렌직 마크 아이디에 따라, 각 클립 AV 스트림의 각 비밀 파라미터 시그먼트 별로 픽스업테이블 엔트리에서 지정된 위치에 오버라이트 여부가 결정되게 된다. 따라서, 각 플레이어에 따라, 오버라이트 패턴이 달라지므로 콘텐트가 유출된 경우, 상기 오버라이트 패턴을 분석하여 콘텐트를 불법적으로 유출한 플레이어를 추적할 수 있다. The processes of extracting the masked fixup table from the decoded clip AV stream in the above-described process to calculate an actual fixup table, and overwriting an overwrite value in a specific packet using the fixup table may be performed for the entire clip AV stream. Will be repeated for. As a result, according to the present invention, whether or not to overwrite the position specified in the fixup table entry for each secret parameter segment of each clip AV stream is determined according to the forensic mark ID generated by using the player identification information. Therefore, since the overwrite pattern is different for each player, when the content is leaked, the player who illegally leaks the content can be tracked by analyzing the overwrite pattern.
관련하여, 상기 광기록재생장치(10)는 플레이어를 식별가능한 정보를 상기 클립 AV 스트림에 직접 삽입하는 것도 가능하다. 이 경우, 상기 정보가 삽입되는 위치를 지정하는 정보가 정의되어야 할 것이다.In this regard, the optical recording / reproducing
도 7을 참조하여 클립 AV 스트림에 멀티플렉스된 픽스업테이블을 이용한 미디어 트랜스폼을 설명하면, 광기록재생장치(10)는 콘텐트의 재생을 시작하기 전에 기록매체로부터 마스크드 픽스업테이블을 보안가상머신(178)으로부터 미리 로드한다. 상기 마스크드 픽스업테이블은 압퍼스케이트(obfuscate)되어 기록매체에 기록될 수 있으며, 상기 보안가상머신(178)은 상기 압퍼스케이트된 마스크드 픽스업테이블은 디압퍼스케이트(de-obfuscate)하여 재생시작시에 타이틀에 대한 마스크드 픽스업테이블을 트랜스폼 펑션 모듈에 보낸다. Referring to FIG. 7, a media transformation using a fixup table multiplexed onto a clip AV stream will be described. The optical recording / reproducing
상기 마스크드 픽스업테이블은 각 비밀 파라미터와 논리연산될 블락 구조를 갖는다. 픽스업테이블 블락(FUT block)에서 각 픽스업 엔트리(Fix-up entry)는 비밀 파라미터 아이디에 의해 지정되는 관련된 비밀 파라미터 값의 배타적 논리합에 의해 마스크된 것이다. 광기록재생장치(10)는 상기 마스크드 픽스업테이블을 스캔하여 클립 AV 스트림 중 현재 재생 위치에 사용될 필요한 픽스업테이블을 찾아낸 다. 상기 기록매체에 기록된 콘텐트가 상기 보안가상머신에서 실행되어 "Playback Control Engine(176)"에 의해 인보크된 명령에 대응하여 각 비밀 파라미터와 함께 비밀 파라미터 아이디 및 포렌직 마크 아이디를 출력한다. 상기 보안가상머신(178)으로부터의 비밀 파라미터 값과 상기 마스크드 픽스업테이블과의 논리연산(예를 들어, 배타적 논리합)이 클리어한 픽스업테이블을 얻기 위해 사용된다. 클립 AV 스트림의 현재 재생위치에 필요한 픽스업테이블 블락을 찾아내어 클리어한 픽스업테이블을 산출하는 상기 과정은 전체 클립 AV 스트림에 대하여 반복된다. 관련하여, 비밀 파라미터 시그먼트의 지속기간(duration) 후에 비밀 파라미터 값이 변경되면, 비밀 파라미터가 새로이 산출되어야 한다. The masked fixup table has a block structure to be logically operated with each secret parameter. Each Fix-up entry in the FUT block is masked by an exclusive OR of the associated secret parameter values specified by the secret parameter ID. The optical recording / reproducing
상기 기록매체 상의 클립 AV 스트림이 상기 광기록재생장치(10)에 의해 독출되어 타이틀 키를 사용하여 복호화된다. 상기 광기록재생장치(10)는 상기 픽스업테이블에 포함된 프로세스 식별 정보가 미디어 트랜스폼을 행하는 것으로 설정(예를 들어,'01b'), 또는 상기 프로세스 식별 정보가 포렌직 마킹을 행하는 것으로 설정(예를 들어, '11b')되고 포렌직 마크 아이디 비트 위치가 지시하는 포렌직 마크의 비트가 '1'로 설정되었는지를 확인한다. 상기와 같은 경우에, 하나의 픽스업테이블 당 지정된 위치에 오버라이트 값들을 오버라이트 한다. 그 외의 경우에는 해당 픽스업테이블에서 정의된 미디어 트랜스폼이 적용되지 않고, 상기 기록매체로부터 클립 AV 스트림을 읽고 타이틀 키를 사용하여 복호화하는 과정으로 되돌아가게 된다.The clip AV stream on the recording medium is read by the optical recording / reproducing
도 8은 본 발명에 따른 데이터 재생방법의 흐름도를 도시한 것이다.8 shows a flowchart of a data reproduction method according to the present invention.
본 발명에 따른 광기록재생장치(10)는 기록매체로부터 클립 AV 스트림과 상 기 클립 AV 스트림의 디코딩 과정에 관여하는 콘텐트 코드를 포함하는 데이터를 독출한다. 상기 콘텐트 코드는 보안가상머신(178)에서 실행(S10)되어, 비밀 파라미터(Secret Parameter)를 산출한다(S20). 아울러, 플레이어를 식별가능한 정보를 이용하여 포렌직 마크 아이디를 산출한다(S20). The optical recording and reproducing
상기 비밀 파라미터는 상기 기록매체에 저장된 마스크드 픽스업테이블의 픽스업 엔트리와의 논리연산되어(S30) 실제 픽스업테이블을 산출(S40)하는데 이용된다. 상기 산출된 픽스업테이블은 프로세스 식별 정보를 포함하며, 상기 프로세스 식별 정보에 따라 포렌직 마킹 여부가 결정된다(S50). 상기 프로세스 식별 정보가 포렌직 마킹을 나타내지 않는 경우(예를 들어, '10b' 이외의 값으로 설정된 경우), 상기 광기록재생장치(10)는 해당 클립 AV 스트림에 포렌직 마크를 삽입하지 않고 디코딩(S70)하여 프리젠트한다. The secret parameter is logically calculated with a fixup entry of a masked fixup table stored in the recording medium (S30) and used to calculate an actual fixup table (S40). The calculated fixup table includes process identification information, and forensic marking is determined according to the process identification information (S50). If the process identification information does not indicate forensic marking (e.g., is set to a value other than '10b'), the optical recording / reproducing
상기 프로세스 식별 정보가 포렌직 마킹을 나타내는 경우(예를 들어, '10b'로 설정된 경우)에는 상기 광기록재생장치(10)는 상기 플레이어를 식별가능한 정보를 아이디를 이용하여, 포렌직 마크를 클립 AV 스트림에 삽입한다(S60). 상기 포렌직 마크가 삽입된 클립 AV 스트림이 디코딩(S70)되어 프리젠트된다. When the process identification information indicates forensic marking (for example, when it is set to '10b'), the optical recording / reproducing
관련하여, 상기 플레이어를 식별가능한 정보는 도 6a ~ 도 6b에서 설명한 바와 같이, "Player Control Engine(176)"에 포함된 "Player Registers(176a)"에 저장될 수 있으며, 보안가상머신(178)은 상기 "Player Control Engine(176)"으로부터 플레이어를 식별가능한 정보를 받아 포렌직 마크 아이디를 생성하게 된다. 콘텐트 코드는 플레이어를 식별가능한 정보를 논리함수(예를 들어, 배타적 논리합, 비트 추출(bit extraction), 시프트(shift)/로테이션(rotation)등)에 적용하여 상기 포렌직 마크 아이디를 산출할 수 있다. In relation to this, the player identifiable information may be stored in the "Player Registers 176a" included in the "
관련하여, 상기 포렌직 마크는 상기 포렌직 마크 아이디를 이용하여 디코딩되는 클립 AV 스트림에 삽입된다고 할 수 있다. 상기 포렌직 마크 아이디가 포렌직 마크의 삽입에 이용되므로, 넓은 의미에서는 상기 포렌직 마크 아이디 자체가 포렌직 마크로 이해될 수도 있을 것이다. 상기 포렌직 마크는 플레이어를 식별하는데 사용되어야 하므로, 플레이어 그 자체 내에서 생성되는 것이 바람직하다.In this regard, it can be said that the forensic mark is inserted into a clip AV stream which is decoded using the forensic mark ID. Since the forensic mark ID is used to insert the forensic mark, in a broad sense, the forensic mark ID itself may be understood as a forensic mark. Since the forensic mark should be used to identify the player, it is preferably generated within the player itself.
전술한 본 발명에 따르면, 플레이어를 식별가능한 정보를 이용한 포렌직 마크가 재생되는 콘텐트에 삽입되게 된다. 콘텐츠 제공자는 불법적으로 유출된 콘텐트가 발견되는 경우, 상기 콘텐트에 삽입된 포렌직 마크를 확인하여 콘텐트를 훼손한(compromise) 플레이어를 추적하여 책임을 물을 수 있다. 따라서, 콘텐트에 대한 불법 복제를 방지할 수 있게 되는 장점이 있다.According to the present invention described above, the forensic mark using the information for identifying the player is inserted into the reproduced content. When the content provider illegally leaked content is found, the forensic mark inserted in the content can be checked to track the player compromising the content and take responsibility. Therefore, there is an advantage that can prevent illegal copying of the content.
본 발명을 상술한 실시예에 한정되지 않으며, 첨부된 청구범위에서 알 수 있는 바와 같이 본 발명이 속한 분야의 통상의 지식을 가진 자에 의해 변형이 가능하고 이러한 변형은 본 발명의 범위에 속한다. The present invention is not limited to the above-described embodiments, and as can be seen in the appended claims, modifications can be made by those skilled in the art to which the invention pertains, and such modifications are within the scope of the present invention.
상기에서 설명한 본 발명에 따른 데이터 재생방법 및 재생장치, 데이터 전송방법에 의하면, 플레이어를 식별가능한 정보를 재생되는 콘텐트에 삽입함으로써, 불법 복제, 배포 등에 의해 콘텐트를 훼손한 광기록재생장치를 추적하는 것이 가능하게 되어, 불법 복제, 배포 등 콘텐트에 대한 악의적인 행위로부터 콘텐트를 보호 하게 되는 장점이 있다.According to the data reproducing method, the reproducing apparatus, and the data transmitting method according to the present invention described above, it is possible to track an optical recording / reproducing apparatus that has damaged the contents by illegal copying, distribution, or the like by inserting the identifiable information into the reproduced content. It is possible to protect the content from malicious acts on the content, such as illegal copying and distribution.
Claims (24)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US70071805P | 2005-07-20 | 2005-07-20 | |
| US60/700,718 | 2005-07-20 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20070011101A true KR20070011101A (en) | 2007-01-24 |
Family
ID=38012179
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020060055333A Withdrawn KR20070011101A (en) | 2005-07-20 | 2006-06-20 | Data reproducing method and data reproducing apparatus, recording medium and data reproducing method and data recording apparatus |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR20070011101A (en) |
-
2006
- 2006-06-20 KR KR1020060055333A patent/KR20070011101A/en not_active Withdrawn
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR101278075B1 (en) | Playing apparatus, method and apparatus for manufacturing information recording medium, recording medium, and authoring apparatus | |
| RU2398293C2 (en) | Recording medium, device and method for data playback from recording medium using local memory | |
| TWI421861B (en) | Information processing apparatus and method, information recording medium manufacturing apparatus and method, and information recording medium | |
| US20060153017A1 (en) | Method and apparatus for protecting shared data and method and apparatus for reproducing data from recording medium using local storage | |
| JP4264551B2 (en) | Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program | |
| US8438651B2 (en) | Data reproducing method, data recording/ reproducing apparatus and data transmitting method | |
| JP4765485B2 (en) | Information processing apparatus, information recording medium, information processing method, and computer program | |
| JP4140624B2 (en) | Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program | |
| KR20070011101A (en) | Data reproducing method and data reproducing apparatus, recording medium and data reproducing method and data recording apparatus | |
| KR20060120396A (en) | Recording media, data reproducing method and reproducing apparatus | |
| KR20080012724A (en) | Recording media, data recording methods and recording devices and data reproducing methods and reproducing apparatus | |
| JP4905587B2 (en) | Information processing apparatus, information processing method, and computer program | |
| EP1836707A2 (en) | Method and apparatus for protecting shared data and method and apparatus for reproducing data from recording medium using local storage | |
| WO2006078099A2 (en) | Data transmitting method, recording medium, apparatus for reproducing data from recording medium using local storage and method thereof | |
| JP4905566B2 (en) | Information processing apparatus, information recording medium, information processing method, and computer program | |
| EP1839307A2 (en) | Recording medium, apparatus for decrypting data and method thereof |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20060620 |
|
| PG1501 | Laying open of application | ||
| PC1203 | Withdrawal of no request for examination | ||
| WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |