KR20060081338A - 공유 콘텐츠 보호방법, 로컬 스토리지를 이용한 기록매체재생방법 및 재생장치 - Google Patents

공유 콘텐츠 보호방법, 로컬 스토리지를 이용한 기록매체재생방법 및 재생장치 Download PDF

Info

Publication number
KR20060081338A
KR20060081338A KR1020050118681A KR20050118681A KR20060081338A KR 20060081338 A KR20060081338 A KR 20060081338A KR 1020050118681 A KR1020050118681 A KR 1020050118681A KR 20050118681 A KR20050118681 A KR 20050118681A KR 20060081338 A KR20060081338 A KR 20060081338A
Authority
KR
South Korea
Prior art keywords
shared data
data
shared
file
application
Prior art date
Application number
KR1020050118681A
Other languages
English (en)
Inventor
김건석
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to EP06700327A priority Critical patent/EP1836707A2/en
Priority to JP2007550284A priority patent/JP2008527598A/ja
Priority to BRPI0606404-3A priority patent/BRPI0606404A2/pt
Priority to PCT/KR2006/000002 priority patent/WO2006073251A2/en
Priority to US11/325,499 priority patent/US20060153017A1/en
Publication of KR20060081338A publication Critical patent/KR20060081338A/ko

Links

Images

Classifications

    • 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
    • G11B19/022Control panels
    • G11B19/025'Virtual' control panels, e.g. Graphical User Interface [GUI]
    • 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
    • G11B19/12Control of operating function, e.g. switching from recording to reproducing by sensing distinguishing features of or on records, e.g. diameter end mark
    • G11B19/122Control of operating function, e.g. switching from recording to reproducing by sensing distinguishing features of or on records, e.g. diameter end mark involving the detection of an identification or authentication mark
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00239Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is provided by a software application accessing the medium
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00246Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a local device, e.g. device key initially stored by the player or by the recorder
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00855Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a step of exchanging information with a remote server
    • 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
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/11Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information not detectable on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B7/00Recording or reproducing by optical means, e.g. recording using a thermal beam of optical radiation by modifying optical properties or the physical structure, reproducing using an optical beam at lower power by sensing optical properties; Record carriers therefor
    • G11B7/004Recording, reproducing or erasing methods; Read, write or erase circuits therefor
    • G11B7/005Reproducing

Abstract

본 발명은 콘텐츠 제공자에 의해 제공된 콘텐츠와 사용자의 재생시스템 보호를 위한 공유 콘텐츠 보호방법, 로컬 스토리지를 이용한 기록매체 재생방법 및 재생장치에 관한 것이다.
본 발명은 로컬 스토리지(Local Storage)에 콘텐츠 제공자(content provider)가 제공한 기록매체 사이에서 공유되는 데이터를 다운로드 받아, 상기 공유 데이터를, 상기 공유 데이터를 제공한 콘텐츠 제공자의 인증서(certificate)를 이용하여 인증(authenticate)하고, 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션(application)만이 상기 공유 데이터에 엑세스할 수 있도록 허용하는 것을 특징으로 하는 공유 데이터 보호방법과 로컬 스토리지를 이용한 기록매체 재생방법 및 재생장치를 제공한다.
본 발명에 의하면 진정한 콘텐츠 제공자에 의해 제공된 콘텐츠와 변질되지 않은 콘텐츠만이 재생될 수 있게 함으로써 공유 콘텐츠를 보호하게 된다. 또한, 권한없는 어플리케이션에 의한 악의적인 작용으로부터 공유 콘텐츠를 보호하는 효과가 있다.
기록매체, BD-ROM, 로컬 스토리지, 콘텐츠 보호, 크리덴셜

Description

공유 콘텐츠 보호방법, 로컬 스토리지를 이용한 기록매체 재생방법 및 재생장치{Protection method for shared content, method and apparatus for reproducing a data recorded in recording medium using a Local storage}
도 1은 본 발명의 개념적 이해를 돕기 위해 나타낸 것으로, 광 기록재생장치와 주변기기 간의 통합적 사용의 일 실시예를 보여주기 위해 나타낸 것이다.
도 2는 본 발명의 기록매체, 즉 예를 들어 BD-ROM과 같은 디스크 내에 기록되는 파일구조에 대한 일 실시예를 도시한 것이다.
도 3은 본 발명에 의해 광디스크에 기록되는 데이터 기록구조를 도시한 것이다.
도 4는 본 발명의 광 기록재생장치의 전체 구성에 관한 일 실시예를 나타낸 것이다.
도 5는 본 발명의 로컬 스토리지 내 파일구조의 예를 도시한 것이다.
도 6은 본 발명에 의한 공유 데이터 인증(authentication)의 일 실시예를 도시한 것이다.
도 7은 본 발명에 의한 데이터 인증에 이용되는 인증체인(Certificate Chain)을 도시한 것이다.
도 8은 본 발명에 의한 서명된 어플리케이션(application)을 구성하는 JAR 파일의 일 실시예를 도시한 것이다.
도 9는 서명된 어플리케이션을 구성하는 JAR 파일 내 파일(a file)의 인증 흐름의 일 실시예를 도시한 것이다.
도 10은 본 발명에 의한 어플리케이션(application)을 구성하는 JAR 파일 구성의 일 실시예를 도시한 것이다.
도 11은 본 발명에 의한 공유 데이터 재생의 일 실시예를 도시한 것이다.
도 12은 본 발명의 재생시스템(playback system)을 활용한 기록매체 재생장치의 일 실시예를 도시한 것이다.
도 13은 본 발명에 의한 공유 데이터 보호를 가상 파일구조를 예로 하여 구체적으로 도시한 것이다.
*도면의 주요부분에 대한 부호의 설명
11 : 픽업 12 : 제어부
13 : 신호처리부 15 : 로컬 스토리지
17 : 재생시스템
40 : 가상 파일시스템 (virtual File System)
421 : 디스크 파일구조 (Disc package)
51 : 가상 파일구조(Virtual package)
61 : 바인딩 유닛(Binding Unit)
17 : 재생시스템 (playback system)
171 : 키 이벤트 핸들러(Key Event Handler)
172 : 모듈 매니저(Module Manager)
173 : 네비게이터(Navigator)
174 : HDMV 모듈(Movie Module)
175 : BD-J 모듈(BD-J Module)
176 : 플레이백 컨트롤 엔진(Playback control engine)
177 : 프리젠테이션 엔진(Presentation engine)
176a : 컨맨드 프로세스(command processor)
175a : 자바VM(Java VM)
175b: 어플리케이션 매니저(Application Manager)
175c :어플리케이션 캐쉬(Application Cache)
176a : 플레이백 컨트롤 펑션(Playback control functions)
176b : 플레이어 레지스터(Player registers)
본 발명은 기록매체의 재생에 관한 것으로서, 특히 콘텐츠 제공자에 의해 제공되는 공유 콘텐츠를 보호하는 콘텐츠 보호방법, 상기 공유 콘텐츠를 기록매체 내 데이터와 바인딩하여 함께 재생하는 로컬 스토리지를 이용한 재생방법 및 재생장치에 관한 것이다.
기록매체로서 대용량의 데이터를 기록할 수 있는 광 디스크가 널리 사용되고 있다. 그 중에서도 최근에는 고화질의 비디오 데이터와 고음질의 오디오 데이터를 장시간 동안 기록하여 저장할 수 있는 새로운 고밀도 기록매체, 예를 들어 블루레이 디스크(BD: Blu-ray Disc)가 개발되고 있다.
차세대 기록매체 기술인 블루레이 디스크(BD)는 기존의 DVD를 현저하게 능가하는 데이터를 구비할 수 있는 차세대 광기록 솔루션으로 근래에 다른 디지털기기와 함께 이에 대한 개발이 진행되고 있다.
관련하여, 블루레이 디스크(BD) 규격을 응용한 광 기록재생장치의 개발도 시작되었으나, 아직 블루레이 디스크(BD) 규격이 완전히 완비되지 못한 관계로 완성된 광 기록재생장치를 개발하는 데 어려움이 따르는 것이 사실이다.
특히, 상기와 같은 광 기록재생장치는 블루레이 디스크(BD)를 기록재생하는 기본기능은 물론이거니와, 주변의 관련된 디지털기기와의 통합적 사용을 고려한 부가적인 기능도 고려되어야 하는바, 일반적으로 외부입력신호를 수신하고 이를 디스플레이하거나, 외부입력신호와 내장된 블루레이 디스크(BD)를 함께 활용하여 재생하는 등의 기능은 반드시 구비되어야 할 것으로 여겨진다.
그러나, 상기와 같이 외부입력신호 및 블루레이 디스크(BD)를 재생함에 있어, 콘텐츠 제공자에 의해 제공된 공유 콘텐츠를 보호하는 바람직한 방법 등이 알려진바 없어, 본격적인 블루레이 디스크(BD) 기반의 광 기록재생장치를 개발하는데 많은 제약이 따르는 실정이다.
본 발명은 상기와 같은 실정을 감안하여 창작된 것으로서, 진정한 콘텐츠 제 공자에 의해 제공되는 공유 콘텐츠를 보호하고, 권한없는 어플리케이션에 의해 상기 공유 콘텐츠가 사용되는 것을 제어하는 데 그 목적이 있다.
상기와 같은 목적을 달성하기 위하여, 본 발명은 공유 콘텐츠를 보호하는 공유 콘텐츠 보호방법, 로컬 스토리지를 이용한 기록매체 재생방법 및 재생장치를 제공하고자 한다.
상기와 같은 목적을 달성하기 위하여 본 발명이 제공하는 공유 데이터 보호방법은 로컬 스토리지(Local storage)에 동일한 콘텐츠 제공자(content provider)가 제공한 기록매체 사이에서 공유되는 데이터를 다운로드 받아, 상기 공유 데이터를 제공한 콘텐츠 제공자의 인증서(certificate)를 이용하여 인증(authenticate)하고, 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션(application)만이 상기 공유 데이터에 엑세스할 수 있도록 허용하는 것을 특징으로 한다.
상기 인증서는 상기 콘텐츠 제공자의 전자서명(digital signature)를 포함하는 것이 바람직하다.
또한, 상기 엑세스 정보는 상기 어플리케이션의 크리덴셜(Credential) 정보인 것이 바람직하다.
또한, 상기 크리덴셜 정보는 퍼미션 리퀘스트 파일(permission request file)에 포함되는 것이 바람직하다.
또한, 상기 퍼미션 리퀘스트 파일은 상기 어플리케이션을 구성하는 JAR 파일 내에 존재하는 것이 바람직하다.
또한, 상기 크리덴셜 정보는 제공자 아이디(Grantoridentifier), 만기일(Expirationdate), 파일명(Filename), 서명(Signature), 인증서파일아이디(Cerchainfileid)를 포함하여 이루어지는 것이 바람직하다.
또한, 본 발명이 제공하는 공유 데이터 보호방법은 로컬 스토리지(Local storage)에 기록매체와 관련되고 복수의 콘텐츠 제공자 사이에서 공유되는 데이터를 다운로드 받아, 상기 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 인증(authenticate)하고, 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션(application)만이 상기 공유 데이터에 엑세스할 수 있도록 허용하는 것을 특징으로 한다.
상기 인증서는 상기 콘텐츠 제공자들(content providers) 공동의 전자서명(common digital signature)를 포함하는 것이 바람직하다.
또한, 상기 엑세스 정보는 상기 어플리케이션의 크리덴셜(Credential) 정보인 것이 바람직하다.
또한, 상기 크리덴셜 정보는 퍼미션 리퀘스트 파일(permission request file)에 포함되는 것이 바람직하다.
또한, 상기 퍼미션 리퀘스트 파일은 상기 어플리케이션을 구성하는 JAR 파일 내에 존재하는 것이 바람직하다.
또한, 본 발명이 제공하는 기록매체 재생방법은 로컬 스토리지(Local storage)에 기록매체와 관련되고 암호화(encryption)된 공유 데이터(shared data) 를 다운로드 받아, 기록매체 내에 기록된 데이터와 로컬 스토리지 내 데이터를 바인딩하여 상기 공유 데이터를 포함하는 가상 파일구조(Virtual Package)를 생성하고, 상기 공유 데이터를 복호화(decryption) 후 상기 가상 파일구조 내 데이터와 함께 재생하는 것을 특징으로 한다.
상기 공유 데이터의 복호화는 상기 공유 데이터에 엑세스(access)하는 어플리케이션(applicaion)에 의해 수행되는 것이 바람직하다.
또한, 상기 어플리케이션은 상기 공유 데이터에 대한 엑세스 정보로서 상기 어플리케이션의 크리덴셜 정보를 포함하는 것이 바람직하다.
또한, 상기 공유 데이터의 복호화는 상기 어플리케이션에 포함된 키를 사용하여 이루어지는 것이 바람직하다.
또한, 상기 공유 데이터는 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 것이 바람직하다.
또한, 상기 가상 파일구조를 생성함에 있어서, 상기 공유 데이터를 상기 콘텐츠 제공자의 인증서(certificate)를 이용하여 인증(authentication)하고 가상 파일구조를 생성하는 것이 바람직하다.
또한, 상기 공유 데이터의 암호화는 상기 콘텐츠 제공자만의 키(key)를 사용하여 이루어진 것이 바람직하다.
또한, 상기 공유 데이터는 복수의 콘텐츠 제공자 사이에서 공유되는 것이 바람직하다.
또한, 상기 가상 파일구조를 생성함에 있어서, 상기 공유 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 인증(authentication)하고 가상 파일구조를 생성하는 것이 바람직하다.
또한, 상기 공유 데이터의 암호화는 상기 공유 데이터를 공유하는 콘텐츠 제공자들만이 함께 사용하는 키를 사용하여 이루어진 것이 바람직하다.
또한, 상기 공유 데이터의 복호화는 상기 기록매체 내에 저장된 키를 사용하여 이루어지는 것이 바람직하다.
또한, 상기 공유 데이터의 복호화는 광기록재생기 내 키스토어(keystore)에 저장된 키를 사용하여 이루어지는 것이 바람직하다.
또한, 본 발명이 제공하는 로컬 스토리지를 이용한 기록매체 재생장치는 기록매체로부터 기록매체의 정보를 독출하는 픽업과, 상기 기록매체와 관련된 공유 데이터가 다운로드 되어 저장되는 로컬 스토리지와, 상기 공유 데이터를 인증하고, 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션만이 상기 공유 데이터에 엑세스하도록 제어하는 제어부를 포함하여 구성되는 것을 특징으로 한다.
상기 엑세스 정보는 상기 어플리케이션의 크리덴셜(Credential) 정보인 것이 바람직하다.
또한, 상기 크리덴셜 정보는 퍼미션 리퀘스트 파일(permission request file)에 포함되는 것이 바람직하다.
또한, 상기 퍼미션 리퀘스트 파일은 상기 어플리케이션을 구성하는 JAR 파일 내에 존재하는 것이 바람직하다.
또한, 상기 공유 데이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터인 경우, 상기 공유 데이터의 인증은 상기 콘텐츠 제공자의 인증서(certificate)를 이용하여 이루어지는 것이 바람직하다.
또한, 상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데이터인 경우, 상기 공유 데이터의 인증은 상기 공유 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 이루어지는 것이 바람직하다.
또한, 본 발명이 제공하는 로컬 스토리지를 이용한 기록매체 재생장치는 기록매체로부터 기록매체의 정보를 독출하는 픽업과, 상기 기록매체와 관련된 암호화된 공유 데이터가 다운로드 되어 저장되는 로컬 스토리지와, 기록매체 내에 기록된 데이터와 로컬 스토리지 내 데이터를 바인딩하여 상기 공유 데이터를 포함하는 가상 파일구조(Virtual Package)를 생성하고, 상기 공유 데이터를 복호화(decryption) 후 상기 가상 파일구조 내 데이터와 함께 재생하도록 제어하는 제어부를 포함하여 구성되는 것을 특징으로 한다.
상기 공유 데이터를 복호화함에 있어서, 상기 제어부는 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션만이 상기 공유 데이터에 엑세스하도록 제어하는 것이 바람직하다.
또한, 상기 엑세스 정보는 상기 공유 데이터에 엑세스하는 어플리케이션의 크리덴셜 정보인 것이 바람직하다.
또한, 상기 제어부는, 상기 가상 파일구조를 생성함에 있어서, 상기 공유 데 이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터인 경우, 상기 콘텐츠 제공자의 인증서(certificate)를 이용하여 상기 공유 데이터를 인증(authentication)하고 가상 파일구조를 생성하는 것이 바람직하다.
또한, 상기 제어부는, 상기 가상 파일구조를 생성함에 있어서, 상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데이터인 경우, 상기 공유 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 상기 공유 데이터를 인증(authentication)하고 가상 파일구조를 생성하는 것이 바람직하다.
또한, 상기 공유 데이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터인 경우, 상기 공유 데이터는 상기 콘텐츠 제공자만의 키(key)를 사용하여 암호화된 데이터인 것이 바람직하다.
또한, 상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데이터인 경우, 상기 공유 데이터는 상기 공유 데이터를 공유하는 콘텐츠 제공자들만이 함께 사용하는 키를 사용하여 암호화된 데이터 것이 바람직하다.
또한, 상기 제어부는, 상기 공유 데이터를 복호화함에 있어서, 상기 공유 데이터에 엑세스하는 어플리케이션에 포함된 키를 사용하여 상기 공유 데이터를 복호화하는 것이 바람직하다.
또한, 상기 제어부는, 상기 공유 데이터를 복호화함에 있어서, 상기 기록매체 내에 저장된 키를 사용하여 상기 공유 데이터를 복호화하는 것이 바람직하다.
또한, 상기 제어부는, 상기 공유 데이터를 복호화함에 있어서, 광기록재생기 내 키스토어(keystore)에 저장된 키를 사용하여 상기 공유 데이터를 복호화하는 것이 바람직하다.
따라서,본 발명에 의하면 어플리케이션의 악의적인 작용으로부터 재생시스템을 보호하고, 나아가 안전한 콘텐츠의 제공이 가능하게 되어 사용자에게 더욱 편리한 기능을 제공할 수 있게 된다.
이하, 본 발명은 설명의 편의를 위해 기록매체로서 광 디스크(optical disc) 특히 "블루레이 디스크(BD)"를 예로 하여 설명하고자 하나, 본 발명의 기술사상은 다른 기록매체에도 동일하게 적용가능함은 자명하다 할 것이다.
관련하여, 본 발명에서 "로컬 스토리지(Local Storage)"라 함은, 광기록재생장치(도 1) 내에 구비된 일종의 저장수단으로서, 필요한 정보 및 데이터를 사용자가 임의로 저장하여 활용할 수 있는 요소를 의미한다. 즉, 현재 일반적으로 사용되는 로컬 스토리지로는 "하드디스크(hard disk)", "시스템 메모리(system memory)", "플래쉬 메모리(flash memory)"등이 있을 수 있으나, 본 발명은 반드시 이에 한정되지는 않는다.
특히, 본 발명과 관련하여, 상기 "로컬 스토리지(Local Storage)"는 기록매체(예를 들어, 블루레이 디스크)와 연관된 데이터를 저장하는 수단으로도 활용되며, 상기 기록매체와 연관되어 로컬 스토리지 내에 저장되는 데이터는 외부로부터 다운로드(download) 받은 데이터가 일반적이다.
관련하여, 기록매체로부터 일부 허용된 데이터를 직접 독출하거나, 또는 기록매체의 기록재생과 관련된 시스템데이터(예를 들어, 메타데이터(metadata) 등)를 생성하여, 로컬 스토리지 내에 저장하는 것도 가능함은 자명하다.
관련하여, 본 발명에서는 설명의 편의를 위해, 상기 기록매체 내에 기록된 데이터를 "오리지널 데이터(orginal data)"로 명명하고, 상기 로컬 스토리지 내에 저장된 데이터 중 기록매체와 관련된 데이터를 "어디셔널 데이터(additional data)"로 명명하고자 한다.
또한, 본 발명에서 "타이틀(Title)"이라 함은, 사용자와의 인터페이스를 이루는 재생단위로서, 각각의 타이틀은 특정의 오브젝트(Object)와 링크(link)되어 있고, 상기 오브젝트(Object) 내의 커맨드(command) 혹은 프로그램에 따라 디스크 내 기록된 해당 타이틀에 관련된 스트림이 재생된다. 특히, 본 발명에서는 설명의 편의를 위해 디스크 내에 기록된 타이틀 중 엠펙2(MPEG2) 압축방식에 의한 동영상 영화 및 인터액티브(interactive) 정보가 기록된 타이틀을 특히 "HDMV 타이틀(Title)"이라 명하고, 자바(Java) 프로그램에 의해 실행되는 동영상 영화 및 인터액티브(interactive) 정보가 기록된 타이틀을 "BD-J 타이틀(BD-J Title)"이라 명할 것이다.
도 1은 본 발명의 개념적 이해를 돕기 위해 나타낸 것으로, 광 기록재생장치(10)와 주변기기 간의 통합적 사용의 일 예를 보여주기 위해 나타낸 것이다.
관련하여, 본 발명의 "광 기록재생장치(10)"는 여러 가지 규격의 광 디스크를 기록하거나 재생 가능한 기기로서, 설계에 따라서는 특정규격(예를 들면, BD)의 광 디스크만을 기록재생 가능하게 할 수도 있으며, 또한 기록은 제외하고 재생만 하는 것도 가능하다 할 것이나, 특히 본 발명에서 해결하고자 하는 블루레이 디스 크(BD)와 주변기기와의 연계성을 고려하여 이하 블루레이 디스크(BD)를 재생하는 플레이어(BD-Player) 또는 블루레이 디스크(BD)를 기록재생하는 리코더(BD-Recorder)를 예로 하여 설명하고자 한다. 관련하여, 본 발명의 "광 기록재생장치(10)"는 컴퓨터 등에 내장가능한 "드라이브(driver)"가 될 수 있음은 이미 널리 알려진 자명한 사실이다.
본 발명의 광 기록재생장치(10)는 광 디스크(30)를 기록재생하는 기능 이외에도, 외부입력신호를 수신받아 이를 신호처리한 후 또 다른 외부 디스플레이(20)를 통해 사용자에게 화면으로 전달하는 기능을 가지게 된다. 이 경우 입력가능한 외부신호에 대해서는 특별한 제한은 없으나, 디지털 방송(Digital multimedia broadcasting) 및 인터넷(Internet) 등이 대표적인 외부입력신호가 될 것이며, 특히, 인터넷(Internet)의 경우 현재 누구나 손쉽게 접근할 수 있는 매체로서 광 기록재생장치(10)를 통해 인터넷(Internet)상의 특정 데이터를 다운로드(download) 받아 활용할 수 있게 된다.
관련하여, 외부 소스(external source)로서 콘텐츠(content)를 제공하는 자를 총칭하여 "콘텐츠 제공자(CP:content provider)"로 명명한다.
또한, 본 발명에서 콘텐츠(contents)라 함은 타이틀을 구성하는 내용으로서 기록매체의 제작자(author)에 의해 제공되는 데이터(data)를 의미한다.
특히, 본 발명에서 해결하고자 하는 바는 기록매체 외부로부터 공유 데이터를 다운로드 받는 경우, 상기 공유 데이터를 불법 복제 또는 편집 등으로부터 보호하는 경우이다.
오리지널 데이터와 어디셔널 데이터에 대해 구체적으로 설명하면, 예를 들어 광 디스크 내에 기록된 오리지널 데이터로는 특정 타이틀용의 멀티플렉싱된(multiplexed) AV스트림을 기록해두고, 인터넷상의 어디셔널 데이터로는 상기 오리지널 데이터의 오디오스트림(예를 들어, 한국어)과 상이한 오디오스트림(예를 들어, 영어)을 제공하면, 사용자에 따라서는 인터넷상의 어디셔널 데이터인 오디오스트림(예를 들어, 영어)을 다운로드 받아, 오리지널 테이터인 AV스트림과 함께 재생하거나, 또는 어디셔널 데이터만 재생하고자 하는 요구가 존재할 것이며, 이를 가능케 하기 위해서는 상기 오리지널 데이터와 어디셔널 데이터 간의 연관성을 규정하고, 이들 데이터들을 사용자의 요구에 따라 관리/재생하는 체계화된 방법이 필요하게 된다.
상기에서 설명의 편의를 위해 디스크 내에 기록된 신호를 오리지널 데이터로 하고, 디스크 외부에 존재하는 신호를 어디셔널 데이터라고 명명하였으나, 이는 각각의 데이터를 취득하는 방법에 따라 구분될 따름이지 오리지널 데이터와 어디셔널 데이터가 반드시 특정의 데이터로 한정되는 것은 아니라 할 것이다.
따라서, 어디셔널 데이터로서 일반적인 것은, 오디오(Audio), 프리젠테이션 그래픽(PG:Presentation Graphic), 인터액티브 그래픽(IG:Interactive Graphic), 텍스트 서브타이틀(Text subtitle)등이 될 수 있을 것이나, 이에 한정되지 않으며 상기 열거한 데이터들과 비디오(Video)를 전부 포함하는 멀티플렉싱된(multiplexed) AV스트림이 될 수도 있다. 즉, 광 디스크 외부에 존재하면서, 오리지널 데이터와 연관된 어떠한 속성의 데이터도 어디셔널 데이터로 가능하게 된다.
또한, 어디셔널 데이터는 인덱스 파일(index) 또는 플레이리스트 파일(*.m2ts), 클립인포 파일(*,clpi) 별로 각각 다운로드 될 수도 있으나, 콘텐츠(contents) 단위 또는 타이틀(Title) 단위로 다운로드 될 수도 있다.
관련하여, 상기 사용자의 요구를 실현 가능케 하기 위하여는 오리지널 데이터와 어디셔널 데이터 상호 간에 연관된 파일구조를 가짐이 필수적이라 할 것인바, 이하 도 2 ~ 도 3을 통해 블루레이 디스크(BD)에서 사용가능한 파일구조 및 데이터 기록구조에 대해 상세히 설명하면 다음과 같다.
도 2는 본 발명의 기록매체, 즉 예를 들어 BD-ROM과 같은 디스크 내에 기록되는 파일구조에 대한 하나의 실시예를 도시한 것이다. 도2의 파일구조를 설명하면 다음과 같다.
본 발명의 재생관리 파일구조는, 하나의 루트 디렉토리(root directory)아래에 적어도 하나 이상의 BDMV디렉토리 (BDMV directory)가 존재하고, BDMV디렉토리 내에는 사용자와의 인터액티브티(interactivity)를 보장하기 위한 일반파일(상위파일) 정보로서 인덱스 파일("index.bdmv")과 오브젝트 파일("MovieObjet.bdmv")을 포함함과 아울러, 실제 디스크 내에 기록된 데이터에 대한 정보와 이를 재생하는 방법 등에 대한 정보를 가지는 디렉토리로서, 플레이리스트 디렉토리 (PLAYLIST), 클립인포 디렉토리 (CLIPINF), 스트림 디렉토리 (STREAM)와, BD-J 오브젝트 파일을 포함하는 BDJO 디렉토리(BDJO)와 JAR 파일을 포함하는 자바 디렉토리(JAR)가 구비되며, 디스크 재생에 관련된 보조데이터로 이루어진 보조데이터 디렉토리(AUXDATA)가 구비되어 진다. 이하 상기 디렉토리 및 디렉토리 내에 포함되는 파일에 대해 상 세히 설명하면 다음과 같다.
스트림 디렉토리 (STREAM)는, 디스크 내에 특정 포맷으로 기록된 AV스트림 파일들이 존재하며, 예를 들어, 스트림파일(01000.m2ts, ...)의 확장명을 "*.m2ts" 로 사용한다. 즉, 스트림 파일 내에 본 발명과 관련된 콘텐츠로서 일반적으로 동영상 데이터가 기록되어 진다.
클립인포 디렉토리 (CLIPINF)는 상기 각각의 스트림 파일과 일대일 대응하는 클립인포 파일(01000.clpi,...)들로 구성되어 진다. 특히, 클립인포 파일(*.clpi)은 대응하는 스트림 파일의 속성정보 및 타임정보 (timing information)등을 기록하게 되며, 특히, 스트림 파일(*.m2ts)과 일대일 대응하는 클립인포 파일(*.clpi)을 묶어 BD 규격에서는 이를 "클립(clip)"이라고 명명한다. 즉, 하나의 스트림파일(*.m2ts)에 대해서는 반드시 대응하는 클립인포파일(*.clpi)이 존재하여야 함을 의미한다.
플레이리스트 디렉토리 (PLAYLIST)는 플레이리스트 파일(00000.mpls,...)들로 구성되며, 각각의 플레이리스트 파일(*.mpls)은 특정 클립(clip)이 재생되는 시간(playing interval)을 지정하는 적어도 하나 이상의 플레이아이템(PlayItem)을 포함하고 있으며, 플레이아이템 (PlayItem)은 재생을 원하는 특정 클립(clip), 즉 플레이아이템 (PlayItem)내에서 클립명 (clip_Information_File_name)으로 지정되는 클립(clip)의 재생 시작시간(IN-Time)과 재생 종료시간(OUT-Time)에 대한 정보를 가지고 있다.
즉, 플레이리스트 파일(*.mpls)은 적어도 하나 이상의 플레이아이템 (PlayItem)의 조합에 의해 원하는 클립(clip)의 재생을 수행하는, 전체 재생관리 파일구조내의 기본적 재생관리 파일단위가 된다.
특히, 플레이리스트 파일(*.mpls)은 전술한 오브젝트 파일 내의 특정 오브젝트(Object)에 의한 커맨드(command)에 의해서만 동작되며, 따라서, 디스크 재생 시나리오 관점에서, 오브젝트(Object)는 동적인 시나리오(Dynamic scenario)를, 플레이리스트 파일(*.mpls)은 정적인 시나리오(Static scenario)를 수행 또는 관리하게 된다.
BD-J 오브젝트 디렉토리(BDJO)는 BD-J 타이틀을 재생하기 위한 BD-J 오브젝트 파일을 포함한다.
자바 디렉토리(JAR)는 JAR(Java archive) 파일(PPPPP.jar,...)들이 기록되어 있으며, 다양한 어플리케이션(application)이 상기 JAR 파일에 의해 구성될 수 있다. JAR(Java archive) 파일은 복수의 파일 모음을 배포하기 위해 사용되는 압축파일로서, 상기 JAR 파일에는 보통 특정 프로그램과 관련된 Java 클래스(classes) 파일 및 보조 자원(auziliary resources), 메타데이터 등이 저장된다.
관련하여, 어플리케이션(application)이라 함은 어플리케이션 프로그램의 줄임말로써, 이는 사용자 또는 다른 어플리케이션에게 특정한 기능을 직접 수행하도록 설계된 프로그램을 말하며 후술할 재생시스템(17)의 "Java VM(Java Virtual Machine)"(175b)에서 실행된다. 상기 어플리케이션이 다른 프로그램에 공식적으로 작업을 요청(request)하거나 통신하는 수단으로 사용되는 것을 API(Application Programming Interface)라고 한다.
보조데이터 디렉토리(AUXDATA)는 디스크 재생과 관련된 보조적인 정보를 포함하는 파일들로 구성되어 지는바, 예를 들어, 재생시 클릭 사운드(click sound) 및 메뉴 사운드(menu sound)정보 등을 제공하는 사운드파일("Sound.bdmv")과, 텍스트 서브타이틀의 재생시 폰트(font)정보를 제공하는 폰트파일("11111.otf")들을 포함할 수 있다.
메타데이터 디렉토리(META)는 메타데이터(metadata)를 구비하는바, 상기 메타데이터는 데이터에 대한 데이터(data about a data)로서 서치파일 또는 디스크 라이브러리(Disc Library)에 대한 파일 등이 그 예이다.
관련하여, 상술한 파일 및 디렉토리의 위치는 일 실시예에 불과하며, 경우에 따라 그 위치가 변경될 수도 있다. 예를 들면, BD-J 오브젝트 디렉토리(BDJO)와 자바 디렉토리(JAR)를 서브 디렉토리로 갖는 디렉토리가 상기 루트 디렉토리 밑에 별도로 구성되거나, 자바 디렉토리가 상위 디렉토리로서 루트 디렉토리 밑에 구성될 수도 있을 것이다.
또한, 상기 루트 디렉토리는 기록매체 내 기록된 데이터 및/또는 로컬 스토리지에 다운로드 되는 데이터의 보호에 관한 정보를 포함하는 디렉토리를 포함할 수 있는바, 도 2의 실시예에서는 인증서 디렉토리(CERTIFICATES)가 이를 나타낸 것이다. 상기 인증서 디렉토리(CERTIFICATES)에는 인증서 파일이 존재하게 되며, 이를 사용하여 각 데이터가 인증(authentication)되게 된다. 예를 들면, 기록매체 내에 기록된 데이터의 인증에 사용되는 인증서로써 "content000.crt", 어플리케이션에 대한 인증에 사용되는 인증서로써 "app.discroot.crt"와 "Binding Unit Signaure file"에 위치하는 서명(singature)을 검증(verifiying)하기 위해 사용되는 인증서로써 "bu.discroot.crt" 등의 파일이 상기 인증서 디렉토리(CERTIFICATES) 내에 존재할 수 있다.
도 3은 본 발명에 의해 광디스크에 기록되는 데이터 기록구조를 도시한 것으로서, 상기 전술한 파일구조에 관련된 정보들이 디스크 내에 기록되는 형태를 보여준다. 디스크의 내주로부터 보면, 전체 파일을 관리하기 위한 시스템 정보로서 파일시스템 정보 영역 (File System Information area)과, 기록된 스트림 (*.m2ts)을 재생하기 위한, 인덱스 파일, 오브젝트 파일, 플레이리스트 파일, 클립인포 파일 및 메타데이터 파일이 기록된 영역(이를 "database area"라고도 한다), 및 오디오/비디오/그래픽 등으로 구성된 스트림 또는 JAR 파일이 기록되는 스트림 영역(stream area)이 존재함을 알 수 있다.
또한, 상기 스트림 영역 내의 콘텐츠를 재생하기 위한 파일정보 등을 기록하는 영역을 관리영역이라 하고, 상기 파일시스템 정보 영역 (File System Information area) 및 데이터베이스 영역(database area)이 이에 해당된다. 단, 도3의 각 영역은 하나의 예로 제시한 것으로서, 본 발명이 도 3과 같은 각 영역의 배열구조에 국한되지 않음은 자명할 것이다.
도 4는 본 발명의 광 기록재생장치(10)의 전체 구성에 관한 일 실시예를 나타낸 것이다.
우선 광 디스크에 기록된 오리지널 데이터 및 재생관리 파일정보를 포함한 관리정보를 재생하기 위한 픽업(11)과 픽업(11)의 동작을 제어하는 서보(14), 상기 픽업(11)으로부터 수신된 재생신호를 원하는 신호 값으로 복원해내거나, 기록될 신호를 광 디스크에 기록되는 신호로 변조(modulation)하여 전달하는 신호처리부(13)와 상기 동작을 제어하는 마이컴(16)이 기본적으로 구성된다.
또한, 제어부(12)는 사용자명령 등에 의해 광 디스크 외에 존재하는 어디셔널 데이터를 다운로드 받아 이를 로컬 스토리지(15)에 저장함과 아울러, 로컬 스토리지(15) 내에서 바인딩 유닛 매니페스트 파일(Binding Unit Manifest file)에 기록된 정보를 이용하여 바인딩 유닛을 생성하고, 기록매체 데이터와 로컬 스토리지 내 데이터를 재생하기 위해 로컬 스토리지(15) 내의 바인딩 유닛 매니페스트 파일(Binding Unit Manifest files)에 기록된 네임 매핑 정보(Name mapping information)를 이용하여 가상 파일구조(Virtual Package)를 생성하며, 상기 생성된 가상 파일구조(Virtual Package)를 활용하여 오리지널 데이터 및/또는 어디셔널 데이터를 사용자의 요구에 따라 재생하게 된다.
관련하여, 가상 파일구조(Virtual Package)는 가상 파일 시스템(Virtual File System)에 의해 수행되는 바인딩 동작(binding operation)을 통해 생성되며, 서로 다른 영역에 각각 저장되어 있는 디스크 내 오리지널 데이터로 구성된 오리지널 클립과 로컬 스토리지 내 어디셔널 데이터로 구성된 어디셔널 클립을 재생관리하는 파일구조가 된다.
관련하여, 바인딩 유닛 매니페스트 파일은 상기 가상 파일구조의 생성하는 바인딩 동작에 사용되는 정보를 포함하며, 상기 바인딩 유닛 매니페스트 파일 없이는 로컬 스토리지 내의 데이터를 기록매체 내의 디스크 파일구조(Disc Package)와 바인딩하여 가상 파일구조(Virtual Package)를 생성할 수 없다.
네임 매핑 정보(Name mapping information)는 바인딩 유닛 매니페스트 파일에 기록되어 있는 정보로서, 바인딩 유닛과 기록매체 내에 기록된 데이터가 가상 파일구조에서 어느 위치에 존재하게 되는지에 대한 정보이다..
상기에서 새로이 생성된 가상 파일구조(Virtual Package)를 추후 재활용을 위해 로컬 스토리지(15)에 저장해 두고 활용하거나, 또는 별도의 다이나믹 메모리(Dynamic Memory)를 이용하여 일시적으로 저장하여 활용하는 것이 모두 가능할 것이다.
관련하여, 본 발명에서 상기 제어부(12)는 어플리케이션과 콘텐츠가 진정한 콘텐츠 제공자(CP)에 의해 제공되었는지를 인증(authentication)하고, 상기 어플리케이션의 상기 콘텐츠로의 엑세스(access)를 제어하게 된다. 또한, 관련하여, 상기 인증(authentication)에 대해서는 도 5 이하에서 상술한다.
또한, 재생시스템(17)은 제어부(12)의 제어에 따라 출력데이터를 최종적으로 디코딩하여 사용자에게 제공하게 되는바, 이는 특히 AV신호를 디코딩하는 디코더와, 전술한 특정 타이틀의 재생과 관련하여 오브젝트 커맨드 혹은 어플리케이션과, 제어부(12)를 통해 입력되는 사용자 명령을 해석하여 재생방향을 결정하는 플레이어 모델로 구성된다. 재생시스템(17)에 대해서는 도 10에서 상세하게 다시 설명하도록 한다.
또한, AV 인코더(18)는 광 디스크에 신호를 기록하는 기능의 수행을 위해 제어부(12)의 제어에 따라 입력신호를 특정포맷의 신호, 예를 들어 MPEG2 트랜스포트 스트림으로 변환하여 신호처리부(13)에 제공하게 된다.
도 5는 본 발명의 로컬 스토리지(15) 내 파일구조의 예를 도시한 것이다.
로컬 스토리지에는 기록매체로부터 독출된 데이터 또는 기록매체 외부 소스로부터 다운로드 된 데이터가 저장될 수 있다. 상기 데이터가 저장되는 영역(space)은 크게 어플리케이션 데이터를 저장하기 위한 "Application Data Area(620)"와 가상 파일구조(Virtual Package)의 생성(construction)에 사용되는 "Binding Unit Data Area(610)"로 구분될 수 있다.
도 5의 실시예에서 로컬 스토리지(15) 내 "Bindig Unit Data Area"에는 조직 디렉토리(organization-dependent directory)가 세 개(org1_ID, org2_ID, org3_ID) 존재한다. 상기 조직은 각각 콘텐츠 제공자(CP)를 의미하며, 영화를 예로 하면, 영화사 또는 영화의 배급사들이 이에 해당할 수 있다.
관련하여, 조직 공유 디렉토리(organization-dependent shared directory)가 존재할 수도 있다. 상기 공유 디렉토리(610a, Shared)에는 콘텐츠 제공자 사이에서 공유되는 데이터가 존재하게 된다.
상기 조직 디렉토리(organization-dependent directory) 중 "org1_ID"은 하위 디렉토리로서 디스크 디렉토리(disc-dependent directory)로 "disc1_ID", "disc2_ID" 및 디스크 공유 디렉토리(610b)를 포함한다. 상기 디스크 공유 디렉토리(610b)에는 "org1_ID"인 콘텐츠 제공자가 제공한 "disc1_ID" 과 "disc2_ID"인 기록매체 사이에서 공유되는 데이터가 존재하게 된다.
상기 "disc1_ID"에는 "org1"이 제공하는 "disc1"과 바인딩하는 바인딩 유닛 이 존재한다. 상기 바인딩 유닛에는 플리케이리스트 파일인 "Apr2005.mpls(611)"와 클립인포 파일인 "Apr2005.clpi(612)", 스트림 파일인 "Apr2005.m2ts(613)"가 존재한다. 상기 파일들이 기록매체 내 데이터와 바인딩하여 가상 파일구조를 형성하는 방법에 대해서는 도 13에서 설명하도록 한다.
"Application Data Area(620)"에는 조직 디렉토리(organization-dependent directory)가 세 개(org1_ID, org2_ID, org3_ID) 존재하며, "org1_ID"의 하위 디렉토리로서 "disc1_ID"과 "disc2_ID" 디렉토리가 존재한다. "disc1_ID" 디렉토리는 특정 어플리케이션(application)을 포함하는 JAR 파일로서 "App0.jar(621)" 파일과 "App1.jar(622)"을 포함하고 "disc2_ID" 디렉토리는 "App0.jar(623)"을 포함한다.
관련하여, 어플리케이션은 특정 기능을 수행하는 프로그램을 의미하는바, 상기 기능을 수행하기 위해서 필요한 모든 데이터, 파일, 재생시스템(17)의 하드웨어적 구성 또는 소프트웨어적 구성 등에 엑세스(access)할 수 있어야 한다. 예를 들면, "disc1_ID" 디렉토리의 "App0.jar(621)"에 의해 구성되는(constructed) 어플리케이션(이하, App0라 한다.)이 특정 기능을 수행하고, 상기 기능을 수행하기 위해서 "org1_ID"인 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터 "japanese.otf(614)"가 필요한 경우, 상기 "App0"가 상기 "japanese.otf"에 엑세스하게 된다.
본 발명은 동일한 콘텐츠 제공자(CP)가 제공한 기록매체 사이에서 공유되는 데이터(예를 들면, disc-dependent shared directory(610b)에 존재하는 데이터 : 도면에서 "japanese.otf(614)") 또는 콘텐츠 제공자(CPs) 사이에서 공유되는 데이 터(organization-dependent shared directory(610a)에 존재하는 데이터)를 보호하기 위한 보안체계(security scheme)을 제공하고자 한다.
관련하여, 공유 데이터를 보호(protect)하기 위한 세 가지 보안(security) 레벨이 고려될 수 있다. 첫 번째는 모든 공유 데이터에 모든 어플리케이션의 엑세스를 허용하는 것이다. 이 경우 어떠한 보안 메커니즘도 요구되지 않으므로 본 발명에서는 논외로 한다.
본 발명이 제공하고자 하는 보안체계(security scheme)는 두 번째와 세 번째 레벨로서, 그 중 두 번째는 공유 데이터에 대한 인증(authentication)이 상기 공유 데이터를 보호하기에 충분하다고 가정한다. 이는 상기 공유 데이터를 이용하는 어플리케이션(applications)의 상기 공유 데이터로의 엑세스가 각각 허용되는(authorized) 경우, 상기 어플리케이션의 작용을 신뢰할 수 있다고 전제한다.
세 번째는 상기 공유 데이터로의 엑세스가 허용된 어플리케이션(authorized application)의 악의적인 작용(malicious function)을 배제할 수 없다는 가정하에, 상기 공유 데이터를 암호화하여 사용자에게 제공함으로써 공유 데이터를 보호하는 방법다. 관련하여, 상기 공유 데이터에 엑세스하는 어플리케이션은 상기 공유 데이터를 복호화할 수 있어야 할 것이다.
이하 도 6 ~ 도10에서 본 발명이 제공하는 두 번째 레벨 보안체계(security scheme)에 대하여 설명하고, 도 11에서 세 번째 레벨 보안체계와 상기 세 번째 레벤의 보안체계가 적용된 경우의 공유 데이터의 재생에 대하여 설명한다.
도 6 ~ 도 9는 본 발명에 따른 공유 데이터 보호를 위한 공유 데이터와 어플 리케이션의 인증에 대하여 도시한 것이며, 도 10은 상기 공유 데이터에 엑세스하는 어플리케이션을 위한 엑세스 정보를 두어 공유 데이터를 보호하는 방법에 대하여 도시한 것이다.
도 6은 본 발명에 의한 공유 데이터 인증(authentication)의 일 실시예를 도시한 것이다.
콘텐츠 제공자(CP)는 데이터를 제공함에 있어서, 상기 데이터에 대한 인증서(certificate)를 사용자에게 제공한다. 상기 인증서(certificate)는 기록매체 내에 기록된 형태로 사용자에게 제공될 수도 있고, 기록매체 외부로부터 사용자에게로 다운로드 될 수도 있다.
관련하여, 상기 인증서에는 버전(version), 시리얼 넘버(serial number), 서명 함수(signature algorithm), 발행인(issuer), 유효기간, 인증대상(subject), 공개키(public key) 등도 포함될 수 있다.
관련하여, 공개키(public key)라 함은 공개 키 암호 시스템에서 사용되는 한 실체(entity)의 비대칭 키 쌍 중에서 공개되는 키를 의미한다. 상기 공개키는 서명 시스템에서 서명의 진위를 판단하는 데 사용되며 검증 키라고도 한다. 개인키(private key)라 함은 공개 키 암호 시스템에서 사용되는 한 실체의 비대칭 키 쌍 중에서 공개되지 않는 키를 말한다. 대칭 키 암호화 방식에서 사용되는 키를 의미하는 경우도 있다.
인증서는 사용자에게 제공되는 데이터가 적법한(legitimate) 콘텐츠 제공자에 의해 제공되었음을 인증(authentication)하기 위해 사용되며, 상기 인증서를 인 증한 인증기관(CA)의 전자서명(digital signature)을 포함한다. 도 6의 실시예에서는 콘텐츠 제공자가 스스로를 인증한 경우를 예로 한 것이다. 따라서 상기 인증기관(CA)은 곧 콘텐츠 제공자(CA) 자신이 된다. 인증서의 인증에 대해서는 도 7에서 상세히 설명한다.
콘텐츠 제공자(CP)는 사용자에게 제공하는 콘텐츠를 다이제스트 알고리즘(6010) 예를 들어, SHA-1(Secure Hash Algorithm-1) 또는 MD5(Message Digest algorithm 5) 등을 이용하여 콘텐츠 다이제스트(6011)를 생성한다.
관련하여, 콘텐츠 다이제스트라 함은 각각의 콘텐츠마다 고유하게 산출되도록 만들어진 간단한 문자열을 의미한다. 상기 콘텐츠 다이제스트는 임의의 길이의 콘텐츠를 단방향 해시 함수를 반복 적용하여 축약된 일정한 길이의 비트열로 만들어 표현된다. 콘텐츠(또는 메시지, 문장, 파일)마다 단 하나의 콘텐츠 다이제스트가 산출되고, 서로 다른 문서에서 같은 콘텐츠 다이제스트가 산출될 수 없다. 결국, 상기 콘텐츠 다이제스트는 원문의 변조 여부를 확인하는 수단이 될 수 있다.
상기 생성된 콘텐츠 다이제스트(6011)는 콘텐츠 제공자의 개인키(CP's private key : 6013)를 이용한 서명 알고리즘(6012)을 통하여 전자서명이 된다. 콘텐츠 제공자는 콘텐츠와 함께 상기 전자서명을 포함하는 인증서(certificate)를 사용자에게 제공한다.
관련하여, 서명 알고리즘이란 일종의 암호화 알고리즘으로서, 상기 서명 알고리즘에는 RSA(Rivest-Shamir-Adelman), DSA(digital signature algorithm) 등이 이용될 수 있다.
전자서명은 상기 전자서명에 이용된 개인키(6013)에 대응하는 공개키(6017)를 이용한 서명 알고리즘(6016)을 통하여 콘텐츠 다이제스트(6018)로 복원될 수 있다. 상기 공개키(6017)는 인증서 내에 포함되어 사용자에게 제공된다. 전자서명의 생성에 사용된 개인키(6013)에 대응하는 공개키(6017)가 없는 경우 전자서명이 콘텐츠 다이제스트(6018)로 복원될 수 없다. 이 경우 제공된 콘텐츠가 적법한 콘텐츠 제공자에 의해 제공된 것임이 인증되지 않는다.
또한, 상기 공개키(6017)가 존재하여 전자서명이 콘텐츠 다이제스트(6018)로 복원되더라도 제공된 콘텐츠가 변질된 경우 인증에 실패하게 된다. 즉, content provider은 콘텐츠 제공자로부터 제공받은 콘텐츠를 다이제스트 알고리즘(6014)을 통하여 으로 콘텐츠 다이제스트(6015)로 산출하고, 이를 상기 전자서명을 이용하여 복원된 콘텐츠 다이제스트(6018)와 비교하게 된다. 콘텐츠가 변질된 경우 복원된 다이제스트(6018)와 제공받은 콘텐츠로부터 산출된 콘텐츠 다이제스트(6015)가 다르게 되는바 콘텐츠의 인증은 실패로 돌아가게 된다.
공유 콘텐츠, 즉 공유 데이터의 인증에 실패하는 경우 상기 공유 콘텐츠의 재생이 제한되는 것이 바람직하다. 즉, 본 발명에서 공유 데이터는 재생되는 기록매체 외부로부터 로컬 스토리지에 다운로드 될 수도 있다. 기록매체가 로딩되고, 로컬 스토리지 상에 존재하는 상기 공유 데이터가 로딩된 기록매체와 관련되는 경우, 상기 공유 데이터는 기록매체 내 디스크 파일구조(Disc Package)에 바인딩되게 된다. 상기 바인딩 작용은 재생시스템(17)의 가상 파일 시스템에 의해 수행된다. 만약, 상기 공유 데이터의 인증에 실패하는 경우 상기 가상 파일 시스템은 상기 공 유 데이터를 디스크 파일구조에 바인딩하지 않을 수 있다. 이를 통해, 다운로드 도중에서 손상되거나 해킹 등에 의해 변질된 공유 데이터가 기록매체와 함께 재생되는 것을 막을 수 있다. 또한, 권한 없는 콘텐츠 제공자가 제공한 공유 데이터가 재생되는 것을 방지할 수 있다. 결국, 기록매체의 콘텐츠 제공자와 공유 데이터의 제공자를 보호할 수 있게 된다.
도 7은 본 발명에 의한 데이터 인증에 이용되는 인증체인(Certificate Chain)을 도시한 것이다.
믿을 수 있는 루트 인증기관(CA)은 AACS를 인증(702)하거나, CPS을 인증(703)하거나 또는 다른 인증기관을 인증(704)할 수 있으며, 상기 AACS, CPS 또는 다른 인증기관은 광기록재생기, 컨텐츠 제공자 등과 같은 하부구조들을 독립적으로 인증(702a 및 702b, 702c, 702d)할 수 있는데, 이와 같은 구조를 인증체인(Certificate chain)이라 한다.
인증체인에서 믿을 수 있는 인증기관(CA)을 인증할 수 있는 상위의 인증기관이 존재하지 않게 되는데, 이 경우에 믿을 수 있는 인증기관은 스스로 자신을 인증(701)하게 되며, 이는 루트인증(701)에 해당된다.
상기 인증기관들은 상기와 같은 인증의 결과에 대하여 인증서를 제공하게 되는데 인증체인의 가장 하위의 인증기관이 제공하는 인증서를 리프 인증서라고 한다. 반면 인증체인의 가장 상위의 인증기관이 제공하는 인증서를 루트 인증서라고 한다. 상기 인증서들은 전자서명의 검증과정에서 상기 전자서명을 복원하는 공개키의 신뢰성을 담보하게 된다.
본 발명은 공유 데이터의 인증을 통하여 공유 데이터를 보호하고자 한다. 따라서, 공유 데이터가 동일한 콘텐츠 제공자, 예를 들면 콘텐츠 제공자 1((CP1)이 제공한 기록매체 사이에서 공유되는 경우에는 상기 콘텐츠 제공자 1의 인증서(702b)가 공유 데이터의 인증에 사용되게 된다.
또한, 공유 데이터가 복수의 콘텐츠 제공자, 예를 들면 콘텐츠 제공자 1(CP1)과 콘텐츠 제공자 2(CP2) 사이에서 공유되는 경우에는 상기 콘텐츠 제공자 공동의 인증서(702d)가 상기 공유 데이터의 인증에 사용되게 된다.
인증체인을 통해 만들어진 인증서는 기록매체의 특정한 영역에 파일과 같은 형태로 저장되어 인증에 이용되거나, 또는 네트워크상에서 인증에 이용될 수도 있다.
본 발명이 제공하는 두 번째 보안체계(security scheme)는 특정 기능을 수행하는 각 어플리케이션이 인정된(authorized) 경우, 상기 어플리케이션의 작용을 믿을 수 있다는 것을 전제로 한다. 어플리케이션의 작용을 믿을 수 있기 위해서는 우선 상기 어플리케이션이 인증되어야 할 필요가 있다. 또한, 공유 데이터로의 엑세스 권한이 있는 어플리케이션만이 상기 공유 데이터에 접근할 수 있어야 한다. 도 8 ~ 도 10에서 구체적으로 설명한다.
도 8 ~ 도 9는 본 발명에 따른 어플리케이션의 인증에 관하여 도시한 것이고, 도 10은 본 발명에 따라 공유 데이터에 대한 엑세스 정보를 가진 어플리케이션을 구성하는 JAR 파일을 도시한 것이다. 관련하여, 도 8 ~ 도 9는 서명된 어플리케이션을 예로 하여 설명한다.
도 8는 본 발명에 의한 서명된 어플리케이션(application)을 구성하는 JAR 파일의 일 실시예를 도시한 것이다.
JAR 파일은 일종의 압축 파일로서 복수의 파일을 하나로 모으는데 사용된다. 관련하여, 상기 JAR 파일 내 파일들이 서명된 경우, 상기 JAR 파일을 서명된 JAR 파일(Signed JAR file)이라고 하며, 상기 서명된 JAR 파일에 의해 구성된 어플리케이션을 서명된 어플리케이션(Sined Application)이라고 한다. 상기 서명된 JAR 파일은, JAR 매니페스트 파일이 업데이트되고 메타인포 디렉토리에 서명파일(Signature file)과 서명블락파일(Signature Block file)이 추가된다는 점을 제외하고, 본래의 자바 프로그램과 동일하다.
도 8의 어플리케이션은 서명된 어플리케이션으로서, 상기 어플리케이션을 구성하는 JAR 파일은 "App0" 파일과 메타인포 디렉토리(81)를 포함한다. "App0" 파일은 "classes" 파일과 데이터(data) 디렉토리를 포함하며, 상기 데이터 디렉토리에는 "App0.dat" 파일이 존재한다. "classes" 파일은 "App0.class" 파일과 "subclasses" 디렉토리를 포함하며, 상기 "subclasses" 디렉토리에는 "sub1.class"와 "sub2.class"를 존재한다. 관련하여, 도 8의 실시예에서는 JAR 파일 내 모든 클래스 파일(App1.class, sub1.class, sub2.class)이 서명된 경우를 예로 하여 설명한다.
상기 메타인포 디렉토리(81)는 JAR 매니페스트 파일(MANIFEST.MF : 811)과 서명파일(XXX.SF : 812), 서명블락파일(XXX.RSA : 813)을 포함하며, 상기 파일들에 의해 상기 어플리케이션의 인증(authentication)이 이루어지게 된다.
JAR 매니페스트 파일(811)은 서명된 파일 각각에 대한 메시지 다이제스트와 함께 JAR 파일 내 파일들의 엔트리에 대한 리스트가 포함한다. 관련하여, JAR 파일 내 모든 파일들이 상기 JAR 매니페스트 파일에 엔트리로서 리스트 될 필요는 없으나 서명된 모든 파일은 리스트 되어야 한다. 따라서, "App0.class" 파일 및 "sub1. class" 파일, "sub2. class" 파일에 대한 엔트리는 JAR 매니페스트 파일(811)에 리스트 되어야 한다.
서명파일(812)은 상기 JAR 매니페스트 파일의 다이제스트를 포함한다. 서명파일은 권위 있는 조직(authorizing organisation)에 의해 서명된 데이터(signed data)일 것이다.
서명파일(812)의 콘텐츠(contents)를 사용하여 메시지 다이제스트를 계산한 후, 상기 계산된 결과를 개인키를 이용하여 서명 알고리즘을 통해 암호화하면 전자서명이 생성된다. 전자서명은 서명파일의 서명된 버전이라고 할 수 있다. 상기 생성된 전자서명은 서명블락파일(813) 내에 위치하게 된다.
관련하여, 상기 개인키는 서명블락파일(813)에 존재하는 공개키에 대응하는 개인키이다. 상기 공개키는 서명블락파일 내 인증서(certificates)들의 리프 인증서(leaf certificates) 중 하나에 위치한다. 상기 공개키를 인증하는 인증서들 또한 상기 서명블락파일에 포함된다.
서명블락파일(813)은 전자서명파일(Digital Signature file)이라고도 한다. 전자서명파일은 서명파일(812)과 동일한 파일명을 갖지만 확장자가 다르다. 확장자는 서명 알고리즘에 의해 정해지며, 예를 들면 ".RSA" 또는 ".DSA" 등이 있다.
공유 데이터에 엑세스하는 어플리케이션의 인증은 상기 어플리케이션을 구성하는 JAR 파일 내 파일들을 인증함으로써 이루어지는바, 도 9에서 서명된 JAR 파일내 파일의 인증에 대하여 구체적으로 설명한다.
도 9는 서명된 어플리케이션을 구성하는 JAR 파일 내 파일(a file)의 인증 흐름의 일 실시예를 도시한 것으로서, 도 6에서 설명한 콘텐츠의 인증과 유사한 방식으로 어플리케이션의 인증이 이루어진다.
JAR 매니페스트 파일이 처음 분석될 때, 서명파일에 대한 서명 즉, 전자서명이 검증된다(S10). 상기 전자서명은 서명블락파일에 존재한다. 구체적으로 살펴보면, 상기 서명파일에 대응하는 서명블락파일을 찾아내어, 상기 서명블락파일로부터 인증서(certificates)를 독출한다. 상기 인증서들 중 리프 인증서 내에는 상기 서명파일의 생성에 사용된 개인키에 대응하는 공개키가 존재한다. 상기 공개키를 사용하여 상기 서명블락파일 내에 존재하는 개인키를 사용하여 암호화된 전자서명을 다이제스트로 복원하고 서명파일의 다이제스트와 비교한다. 상기 비교한 결과가 동일한 경우 전자서명이 검증되게 된다. 전자서명을 검증하여 검증에 실패하는 경우, 상기 파일에 대한 인증은 실패로 돌아간다(S70).
인증되는 파일의 유효성을 확인하기 위하여, JAR 매니페스트 파일에 대한 다이제스트가 계산되고(S20), 상기 계산된 다이제스트 값이 서명파일에 존재하는 다이제스트와 비교된다(S30). 비교된 결과가 다른 경우 파일의 인증(authentication)은 실패(S70)로 돌아간다. 비교된 결과가 동일한 경우 JAR 매니페스트 파일에 대한 무결성이 확인된다.
비교된 다이제스트 값이 동일한 경우, 인증되는 파일의 실제 데이터에 대한 다이제스트 값이 계산되어(S40), JAR 매니페스트 파일 내 다이제스트 값과 비교되게 된다(S50). 비교된 다이제스트 값들이 동일한 경우 상기 파일이 유효성이 확인되어 인증은 성공(S60)하게 되나, 다른 경우에는 파일의 인증은 실패(S70)하게 된다.
본 발명은 어플리케이션을 구성하는 JAR 파일 내 파일을 인증함에 있어서, 서명파일을 이용하여 JAR 매니페스트 파일의 무결성(integrity) 확인하고, 서명블락파일을 이용하여 전자서명을 검증하는 것을 특징으로 한다. 또한, 상기 JAR 매니페스트 파일을 이용하여 JAR 파일의 실제 데이터에 대한 무결성을 확인하는 것을 특징으로 한다.
따라서, JAR 파일의 실제 데이터에 대한 무결성 확인(S40 ~ S50), JAR 매니페스트 파일의 무결성 확인(S20 ~ S30)과 전자서명의 검증(S10)은 개별적으로 구현가능하며, 도 9의 실시예에서 설명한 인증 흐름과 동일한 순서로 구현되도록 제약되는 것은 아니며, 재생시스템에 따라 순서가 변동될 수도 있다.
관련하여, 어플리케이션을 인증함에 있어서, 인증되는 파일이 JAR 매니페스트 파일에서 리스트된 것인지를 인증되는 파일의 실제 데이터에 대한 다이제스트가 계산(S40)되기 전에 확인할 수도 있다.
또한, 전자서명에 대한 검증 결과(S10)와 매니페스트 파일에 대한 무결성 확인의 결과(S30)는 나중의 사용을 위해 저장될 수도 있으며, 이 경우 상기 단계(S10 ~ S30)는 하나의 JAR 파일의 인증 과정에서 한 번만 수행되게 될 것이다.
어플리케이션의 인증이 실패하더라도, 플레이어의 구현에 따라 공유 데이터로의 엑세스를 허용할 수도 있으나, 공유 콘텐츠의 보호를 위하여 엑세스가 제한되는 것이 바람직하다. 상기 엑세스의 제한 정도는 플레이어의 구현에 따라 인증되지 않은 어플리케이션은 모든 공유 데이터에 엑세스할 수 없도록 할 수 있다. 또한, 플레이어에 따라서는 제한된(limited) 범위의 공유 데이터에만 엑세스할 수 있도록 제어할 수도 있다.
도 10은 본 발명에 의한 어플리케이션(application)을 구성하는 JAR 파일 구성의 일 실시예를 도시한 것이다.
공유 데이터로의 엑세스 권한이 있는 어플리케이션만이 상기 공유 데이터에 접근할 수 있도록 하기 위하여 본 발명은 공유 데이터를 자원으로 하는 어플리케이션을 위해 공유 데이터에 대한 엑세스 정보를 둔다. 유효한 엑세스 정보를 가진 어플리케이션만이 공유 데이터에 엑세스할 수 있게 되어 권한 없는 어플리케이션에 의한 공유 데이터의 이용을 막을 수 있게 된다.
상기 엑세스 정보는 상기 어플리케이션에 대한 크리덴셜 정보(Credentials)일 수 있다. 상기 크리덴셜 정보는 퍼미션 리퀘스트 파일(Permission Request file)에 포함될 수 있다. 상기 퍼미션 리퀘스트 파일은 상기 어플리케이션을 구성하는 JAR 파일 내에 존재할 수 있다.
도 10의 JAR 파일(App0.jar)은 어플리케이션을 구성하는 파일로서, 상기 JAR 파일에는 크리덴셜 정보(Credentials)를 포함하는 퍼미션 리퀘스트 파일(App0.perm)이 존재한다. 크리덴셜 정보로는 "Grantor identifier" 및 "Expiration date", "Filename", "Signature", "Certchainfileid" 등이 있을 수 있다.
"Grantor identifier"는 어플리케이션을 제공하는 주체에 대한 정보이다. 예를 들어, "org1_ID" 등이 될 수 있다.
"Expiration date"는 상기 크리덴셜 정보의 유효기간을 의미한다. 예를 들어, "Expiration date"가 "23/02/2035"로 주어진 경우, 상기 크리덴셜 정보를 포함하는 어플리케이션은 2035년 02년 23일이 경과한 후에는 공유 데이터에 엑세스할 수 없게 된다.
"Filename"은 어플리케이션이 엑세스하고자 하는 공유 데이터의 위치와 상기 공유 데이터에 대해 인정되는(granted) 읽기/쓰기 권리에 관한 정보이다. 예를 들어, "filename read" 정보가 "true"로 주어지고 "filename"이 상기 파일이 존재하는 위치로 표현되어 " BUDA/org1_ID/Shared/Japanese.otf"로 주어질 수 있다. 도 6을 참조하여 설명하면, 상기 상기 크리덴셜 정보를 가진 어플리케이션은 로컬 스토리지 내 바인딩 유닛 데이터 영역의 "org1_ID" 디렉토리의 디스크 공유 디렉토리인 "Shared" 디렉토리 내에 존재하는 "Japanese.otf(614)" 파일에 엑세스하여 상기 "Japanese.otf(614)" 파일을 읽을 수 있음을 의미한다.
"Signature"는 상기 어플리케이션 제공자로부터의 서명을 포함한다.
"Certchainfileid"는 서명블락파일 내 특정 인증서(certificate)를 찾아내는 데 사용된다. 상기 "Certchainfileid"는 크리덴셜 정보의 인증(authenticatin)에 사용되는 리프 인증서의 시리얼 넘버와 인증에 사용되는 리프 인증서의 발부자(issure)에 관한 정보를 포함한다. 상기 리프 인증서는 상기 서명의 공개키를 포함 한다.
어플리케이션에 대한 크리덴셜 정보가 인증되고 공유 데이터에 대한 유효한 "filename"을 포함하는 경우, 상기 어플리케이션은 상기 공유 데이터에 엑세스할 수 있게 된다. 반면, 상기 크리덴셜 정보가 유효하지 않은 경우, 상기 어플리케이션은 믿을 수 없는 바 공유 데이터로의 엑세스가 제한되게 된다. 결국, 본 발명에 의하면, 공유 데이터에 엑세스하는 어플리케이션에 크리덴셜 정보를 둠으로써 공유 데이터를 보호하게 되는 효과가 있다.
관련하여, 가상 파일구조를 생성하는 동안 로컬 스토리지의 JAR 파일이 기록매체 내에 존재하는 대응하는 JAR 파일을 무효로 하는 경우(override)가 있다. 이 경우, 기록매체 내 JAR 파일이 크리덴셜 정보를 포함하더라도 로컬 스토리지의 크리덴셜 정보가 사용되는 것이 바람직하다.
관련하여, 퍼미션 리퀘스트 파일이 JAR 파일 내에 존재하는 경우, 상기 퍼미션 리퀘스트 파일도 인증되는 것이 바람직하다. 또한, 공유 데이터에 대한 크리덴셜 정보가 퍼미션 리퀘스트 파일에 존재하는 경우, 상기 크리덴셜 정보 역시 검증되는 것이 바람직하다.
도 11은 본 발명에 의한 공유 데이터 재생의 일 실시예를 도시한 것이다.
본 발명이 제공하는 또 다른 보안체계는 공유 데이터로의 엑세스가 허용된 어플리케이션(authorized application)의 악의적인 작용(malicious function)을 배제할 수 없다고 가정한다. 따라서, 본 발명은 공유 데이터의 보호를 위하여 공유 데이터를 암호화(encryption)하여 사용자에게 제공하는 것을 특징으로 한다. 상기 공유 데이터에 엑세스하는 어플리케이션은 상기 공유 데이터를 복호화할 수 있어야 할 것이다.
공유 데이터가 암호화되어 제공되는 경우, 어플리케이션이 상기 공유 데이터에 엑세스할 수 있게 되더라도, 상기 어플리케이션이 상기 공유 데이터를 이용하여 특정 기능을 수행하기 위해서는 상기 공유 데이터가 복호화되어야 한다.
도 11을 참조하여 본 발명에 따라 암호화되어 보호되는 공유 데이터를 재생하는 방법에 대하여 살펴보면 다음과 같다.
기록매체 외부로부터 기록매체와 관련되고 암호화되어 있는 공유 데이터를 로컬 스토리지에 다운로드 받는다(S1110). 관련하여, 상기 공유 데이터를 다운로드 받는 어플리케이션은 네트워크 상에 접속하여 상기 공유 데이터로 엑세스할 수 있는 어플리케이션이어야 할 것이다.
기록매체가 로딩되고 상기 기록매체와 관련된 공유 데이터가 로컬 스토리지에 존재하면, 상기 기록매체에 내에 기록된 데이터와 상기 공유 데이터가 바인딩 작용(binding operation)을 통해 바인딩되어 가상 파일 구조가 생성된다(S1120).
관련하여, 공유 데이터가 다운로드 되기 전에 이미 가상 파일구조가 존재하는 경우, 상기 가상 파일구조는 상기 다운로드 된 공유 데이터를 포함하여 업데이트 되게 될 것이다.
또한, 가상 파일구조의 생성 전에 상기 공유 데이터를 인증하는 것을 바람직하다. 상기 공유 데이터의 인증이 실패하는 경우 가상 파일 시스템은 로딩된 기록매체 내 디스크 파일구조(Disc Package)만을 사용하여 가상 파일 구조를 생성할 것 이다. 이 경우, 부정확한 공유 데이터를 포함하는 가상 파일구조의 생성이 차단됨으로써 진정한 콘텐츠 제공자를 보호할 수 있게 된다.
상기 가상 파일구조를 이용하여, 로컬 스토리지 내 데이터와 기록매체 내에 기록된 데이터가 함께 재생되게 된다. 재생을 수행하기 위해서 상기 재생을 수행하는 어플리케이션이 기록매체 내 데이터와 바인딩 된 공유 데이터에 엑세스한다(S30).
공유 데이터가 암호화된 경우, 상기 공유 데이터는 디코더가 재생할 수 있는 형태로 복원되어야 하므로 상기 암호화된 공유 데이터가 복호화(decryption)되어야 한다. 따라서, 상기 암호화된 공유 데이터에 엑세스하는 어플리케이션은 상기 공유 데이터를 복호화할 수 있는 정보를 포함하는 것이 바람직하다. 상기 정보는 공유 데이터에 엑세스하는 어플리케이션이 직접 상기 공유 데이터를 복호화할 수 있는 정보일 수도 있다. 또는 상기 공유 데이터를 복호화할 수 있는 어플리케이션을 실행시키는 정보일 수도 있다.
공유 데이터에 엑세스하는 어플리케이션이 상기 공유 데이터를 복호화할 수 있는 유효한 정보를 가지는 경우, 상기 정보를 이용하여 공유 데이터가 복호화되게 된다(S1140). 공유 데이터가 복호화되면, 디코더에 제공되어 가상 파일구조 내 다른 파일들과 함께 재생된다(S1150).
관련하여, 공유 데이터와 함께 로컬 스토리지에 존재하는 다른 데이터도 기록매체 내 데이터와 바인딩되어 재생될 수 있다. 공유 데이터와 함께 재생되는 다른 데이터들이 암호화된 경우 상기 암호화된 데이터들 역시 복호화되어야 재생이 가능하다.
본 발명에 따라 공유 데이터를 암호화하면, 오류가 있는 어플리케이션이 상기 공유 데이터에 엑세스하더라도, 상기 공유 데이터를 이용하여 특정 기능을 수행할 수 없게 되어 공유 데이터를 악의적인 작용으로부터 보호할 수 있게 되는 장점이 있다.
본 발명과 관련하여, 공유 데이터에 대한 다양한 암호화/복호화 체계가 가능하다. 상기 공유 데이터를 암호화/복호화하는 키 발생(key generation) 측면에서 살펴보면, 동일한 콘텐츠 제공자가 기록매체 사이에서 공유되는 데이터에는 상기 콘텐츠 제공자만의 고유한 키가 사용될 수 있다. 반면 복수의 콘텐츠 제공자 사이에서 공유되는 데이터에는 상기 데이터를 공유하는 콘텐츠 제공자들만의 고유한 키가 사용될 수 있다.
공유 데이터가 암호화된 경우, 상기 공유 데이터를 복호화할 수 있도록 암호화/복호화 키 또는 상기 키를 발생시키는 비밀 정보가 사용자에게 배포될 필요가 있다. 상기 키(key pairs) 또는 키 발생 비밀 정보는 기록매체 내에 저장되어 사용자에게 제공될 수 있다. 이 경우 로컬 스토리지 내 공유 데이터는 상기 키를 가진 기록매체가 광 기록재생장치 내에 로딩되는 경우에만 엑세스 될 수 있을 것이다. 상기 키(key pairs) 또는 키 발생 비밀 정보는 상기 공유 데이터를 이용하는 어플리케이션에 동봉되어 사용자에게 제공될 수도 있다. 또한, 경우에 따라서는 광기록재생기 내 키스토어(keystore)에 저장될 수도 있다.
플레이어는 암호화된 공유 데이터를 이용하여 특정 기능을 수행하여야 하는 경우 기록매체 또는 어플리케이션, 키스토어 등에서 상기 암호화된 공유 데이터를 복호화할 수 있는 키를 독출하고(키 발생 비밀 정보인 경우, 키 발생 비밀 정보를 독출하여 키를 생성하고), 상기 공유 데이터를 복호화하게 될 것이다.
데이터의 암호화 체계에는 대칭 키 암호방식(symmetric cryptographic method)과 비대칭 키 암호방식(asymmetric cryptographic method)가 있다. 대칭 키 암호 방식 대칭 키 암호 방식(symmetric cryptographic method)의 대표적 방식에는 AES(Advanced Encryption Standard)와 DES(Data Encryption Standard), IDEA(International Data Encryption Algorithm)등이 있다. 비대칭 키 암호 방식(asymmetric cryptographic method)의 대표적 방식에는 RSA(Rivest-Shamir-Adelman)와 DSA(Digital Signature Algorithm)등이 있다.
본 발명이 제공하는 공유 데이터를 암호화하여 공유 데이터를 보호하는 보안체계에서, 암호화된 공유 데이터에 엑세스하는 어플리케이션은 상기 공유 데이터에 대한 엑세스 정보를 포함하는 어플리케이션일 수 있다. 상기 엑세스 정보는 상기 어플리케이션의 크리덴셜 정보일 수 있다. 경우에 따라, 크리덴셜 정보가 없는 어플리케이션도 상기 암호화된 공유 데이터에 엑세스할 수 있도록 허용될 수 있음은 물론이다.
플레이어가 상기 암호화된 공유 데이터에 엑세스하는 어플리케이션의 인증을 수행하여 인증이 실패로 돌아가는 경우가 있을 수 있다. 이 경우 상기 어플리케이션의 공유 데이터로의 엑세스를 허용할지 여부는 플레이어 구현(implementation)에 달려 있다. 즉, 인증이 실패하더라도 상기 어플리케이션이 공유 데이터에 엑세스할 수 있도록 할 수 있다. 본 발명에 따라 공유 데이터가 암호화되어 제공되면, 인증되지 않은 어플리케이션이 엑세스 하더라도 상기 공유 데이터는 보호될 수 있게 된다.
관련하여, 도 8 ~ 도 9에서는 서명된 어플리케이션을 예로 하여 설명하였으나, 서명되지 않은 어플리케이션(unsigned application)이 존재할 수 있다. 서명되지 않은 어플리케이션의 경우 그 유효성이 검증될 수 없을 것인바, 공유 데이터로의 엑세스가 허용되지 않는 것이 바람직하다.
도 12은 본 발명의 재생시스템(playback system)을 활용한 기록매체 재생장치의 일 실시예를 도시한 것이다.
"재생시스템(playback system)"이라 함은, 광기록재생기 내에 구비되는 프로그램(소프트웨어) 및/또는 하드웨어로 구성되는 집합적 재생처리 수단으로서, 광기록재생기 내에 로딩된 기록매체를 재생함은 물론, 상기 기록매체에 관련되어 로컬 스토리지 내에 저장된(예를 들어, 외부로부터 다운로드 받은) 데이터를 함께 재생 및 관리하기 위한 시스템을 의미한다.
특히, 재생시스템(17,playback system)은 "Key Event Handler(171)", "Module Manager(172)", "HDMV Module(174)", "BD-J Module(175)", "Playback control engine(176)", "Presentation engine(177)" 및 "Virtual File System(40)"으로 구성되며, 이를 상세히 설명하면 다음과 같다.
우선, 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) 혹은 프로그램을 수신하여, 이를 처리하도록 하는 제어기능을 가진다. 상기 "HDMV Module(174)" 및 "BD-J Module(175)"은 재생시스템의 하드웨어적 구성으로부터 커맨드(command) 혹은 어플리케이션을 분리하여, 상기 커맨드 혹은 어플리케이션의 이동(portability)을 가능하게 한다.
상기 커맨드(command) 혹은 어플리케이션 등을 수신하여 처리하는 수단으로서, "HDMV Module(174)"내에는 "Command processor(174a)"가, "BD-J Module(175)"내에는 "Java VM(175a)" 및 "Application manager(175b)", "Application Cache(173c)"가 각각 구비되어 있다.
"Java VM(175a)"은 어플리케이션이 실행되는 "Virtual Machine"이다. "Application manager(175b)"는 어플리케이션의 라이프사이클(lifecyle)을 관리하는 어플리케이션 관리 펑션(a application management function)을 포함한다. 상기 "Application manager(175b)"는 "Application Cache(173c)"로부터 어플리케이션들을 로드할 수 있다. 즉, 상기 "Application Cache(173c)"는 BD-J를 위한 일종의 사전로드(preload) 버퍼이다. 다만, 로컬 스토리지 내 JAR 파일로부터의 데이터의 로딩과 같이 어플리케이션은 사전로드되지 않는 어디셔널 데이터를 사용할 수도 있다. "Application Cache(173c)"는 어플리케이션이 로딩되는 동안 기록매체로부터 AV 데이터의 끊김없는 재생을 보장하고 데이터를 로딩하면서 생기는 지연을 감소시킨다.
또한, 상기 "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)"과 플레이어의 재생환경 및 재생상태("Player status registers(PSR)" 및 "General purpose register(GPR)")를 저장하는 "Player Registers(176b)"로 구분되며, 경우에 따라서는 "Playback Control Functions(176a)"이 "Playback Control Engine(176)"을 의미하기도 한다.
전술한 본 발명의 재생시스템(playback system)에서 상기 "Module Manager(172)", "HDMV Module(174)", "BD-J Module(175)", "Playback Control Engine(176)"은 소프트웨어적인 처리가 가능하며, 실제 하드웨어 구성보다는 소프트웨어로 처리함이 설계에 더욱 유용하다. 단, "Presentation Engine(177)" 및 디코더와 플레인(Plane)은 하드웨어적으로 설계되는 것이 일반적이다. 특히, 소프트웨어적으로 처리되는 구성요소(예를 들어, 도면부호 172, 174, 175, 176)의 경우는 전술한 제어부(12)의 한 부분으로 구성될 수도 있을 것이므로, 본 발명의 구성은 그 의미로서 이해하여야 하며, 하드웨어적 구성인지 소프트웨어적 구성인지에 국한되지 않음을 밝혀두고자 한다.
관련하여, 본 발명의 재생시스템(17, playback system)의 특징은 다음과 같다.
첫째, 전술한 바와 같이, HDMV 타이틀을 위한 "HDMV Module(174)"과 BD-J 타이틀을 위한 "BD-J Module(175)"이 독립적으로 구성되고, 동시에 두 Module(174, 175)이 실행되지 않는다. 즉, HDMV 타이틀 재생 중에는 BD-J 타이틀을 재생할 수 없으며, 그 반대도 마찬가지이다.
둘째, 외부로부터 어디셔널 데이터를 다운로드 받는 동작과 같이 광기록재생기 내의 네트워크(network) 기능을 관리하고, 로컬 스토리지(15) 내에 저장된 파일들을 편집하거나 또는 디스크 파일구조에 바인딩(binding)하여 가상 파일구조(Virtual Package)를 생성하는 동작과 같이 로컬 스토리지(15)를 관리하는 프로그램인 어플리케이션이 재생시스템(17) 내에 구비되어 진다. 즉, 어플리케이션(application)은, 디스크 내에 파일시스템과 로컬 스토리지 파일시스템을 마치 하나의 시스템으로 관리하는 가상 파일시스템(40, Virtual File System)을 형성하고, 형성된 가상 파일시스템(40, Virtual File System)을 통해 오리지널 데이터 및 어디셔널 데이터를 재생하기 위한 가상 파일구조(Virtual Package)를 생성 및 관리하게 된다.
세째, HDMV 타이틀과 BD-J 타이틀은 각각 별도 방식의 사용자 명령을 수신하며, 상호 간에는 사용자명령을 수행하는 방식이 독립적이다. "Key Event Handler(171)"는 사용자명령을 수신하여 "HDMV Module(174)" 또는 "BD-J Module(175)", "Module Manager(172)/Navigator(171)" 중 어느 하나로 전달하는 역할을 한다.즉, 예를 들어, "Key Event Handler(171)"는 수신된 명령이 "User Operation(UO)"에 의한 사용자 명령이면 이를 "Module Manager(172)" 로 전송하여 수행케 하고, 수신된 명령이 "Key Event"에 의한 사용자 명령이면 이를 "BD-J Module(175)"로 전송한다.
네째, 전술한 "Playback Control Engine(176)"의 관리(이를 "마스터(master)"라고도 한다)는 현재 동작중인 모듈(174, 175) 중의 하나가 담당한다. 즉, HDMV 타이틀 재생중에는 "HDMV Module(174)"이 마스터(master)가 되고, BD-J 타이틀을 재생중에는 "BD-J Module(175)"이 마스터(master)가 된다. .
관련하여, "Navigator(173)"는 언제든지 사용자의 제어하에, 타이틀 선택을 수행할 수 있고 사용자에게 기록매체와 타이틀 메타데이터를 제공할 수 있다.
도 13은 본 발명에 의한 공유 데이터 보호를 가상 파일구조를 예로 하여 구체적으로 도시한 것이다.
로딩된 디스크 내에는 특정 파일구조(예를 들어, 도 2와 같은 구조)가 기록되어 있으며, 이를 특히 디스크 패키지(Disc package)라고도 한다. 로컬 스토리지 내에는 로컬 스토리지 파일시스템이 존재하고, 해당 파일시스템 내에는 로딩된 디스크(예를 들어, disc1_ID)에 바인딩(binding)되는 바인딩 유닛(Binding Unit)과 바인딩 유닛 매니페스트 파일이 포함되어 있다.
관련하여, 상기 바인딩 유닛 매니페스트 파일은 네임 매핑 정보(Name mapping information)를 포함하는바, 상기 네임 매핑 정보는 바인딩 유닛(Binding Unit)에 대한 정보이다. 예를 들어, 상기 바인딩 유닛을 생성하는 파일들의 리스트와 디스크와 바인딩하는 경우에 바인딩 유닛의 파일들이 가상 파일구조 내의 위치, 가상 파일구조 내에서의 파일명 등에 대한 정보를 포함한다.
따라서, 가상 파일시스템(40, Virtual File System)은 상기 네임 매핑 정보를 활용하여, 로딩된 디스크 내의 디스크 패키지(Disc package)에 바인딩 유닛(Binding Unit)을 바인딩(binding)하는 바인딩 동작(binding operation)을 통해 새로운 가상 파일구조(Virtual package)을 생성하게 되는 것이다. 또한, 상기 가상 파일시스템은 가상 파일구조에 속하는 파일로의 엑세스 메카니즘을 제어하는 역할을 한다.
가상 파일시스템에 의해 생성된 가상 파일구조는 BD-J 모드와 HDMV 모드 둘 다에서 사용된다. BD-J 모드에서는 기록매체 또는 로컬 스토리지 상에 위치된 어플리케이션들이 가상 파일시스템을 통해 가상 파일구조에 엑세스할 수 있다. HDMV 모드에서, MovieObject가 가상 파일구조에 엑세스할 수 있다.
도 13에서 디스크 내의 기록매체 파일구조(Disc pakage:421)에는 루트 디렉토리(root)의 하위 디렉토리인 BD디렉토리(BDMV)에 인덱스 파일(Index.bdmv), 오브젝트 파일(MovieObject.bdmv), 플레이리스트 파일(00000.mpls), 클립인포 파일(01000.clpi), 스트림 파일(01000.m2ts), 보조데이터 파일(sound.bdmv)을 포함되어 있다. 로딩된 디스크(예를 들어, org1_ID이고 disc2_ID인 디스크)에 관련된 바인딩 유닛(Binding Unit:61)에는 특정의 플레이리스트 파일(611, Apr2005.mpls)과 상기 플레이리스트 파일(611, Apr2005.mpls)에 의해 관리되는 클립 즉, 클립인포 파일(612, Apr2005.clpi)과 스트림 파일(613, Apr2005.m2ts)을 포함된다.
또한, 콘텐츠 제공자가 제공한 공유 데이터로서 보조데이터 파일(614, Japanese.otf)이 디스크 공유 디렉토리(Shared)에 존재하는 경우에 있어서 가상 파일구조(51, Virtual package)를 생성하는 관계를 설명한다.
네임 매핑 정보(Name mapping information)에 따라 바인딩 유닛 내의 플레이리스트 파일(611, Apr2005.mpls)은 가상 파일구조(51, Virtual package)에서 플레이리스트(PLAYLIST) 디렉토리의 플레이리스트 파일(511, 00000.mpls)로, 클립인포 파일(612, Apr2005.clpi)은 가상 파일구조에서 클립인포(CLIPINF) 디렉토리의 클립인포 파일(512, 02000.clpi)로, 스트림 파일(613, Apr2005.m2ts)은 가상 파일구조에서 스트림(STREAM) 디렉토리의 스트림 파일(513, 02000.m2ts)로 보조데이터 파일(614, Japanese.otf)은 보조데이터(AUXDATA) 디렉토리의 보조데이트 파일(514, 11111.otf)로 하는 파일명이 변경된다.
가상 파일구조(51, Virtual package)는 루트 디렉토리(root)의 하위 디렉토리인 BD디렉토리(BDMV)에 가상 파일구조에 따른 인덱스 파일(Index), 오브젝트 파일(MovieObject)을 포함하고, 플레이리스트(PLAYLIST) 디렉토리에는 바인딩 유닛의 플레이리스트 파일로 대체(replacing)되어 플레이리스트 파일(511, 00000.mpls)이 오고, 클립인포(CLIPINF) 디렉토리에는 기록매체의 클립인포 파일(01000.clpi)에 바인딩 유닛의 클립인포 파일(512, 02000.clpi)이 추가(appending)되고, 스트림(STREAM) 디렉토리에는 기록매체의 스트림 파일(01000.m2ts)에 바인딩 유닛의 스트 림 파일(513, 02000.m2ts)이 추가(appending)되고, 보조데이터(AUXDATA) 디렉토리에는 기록매체의 보조데이터 파일(sound.bdmv)에 바인딩 유닛의 보조데이트 파일(11111.otf:514)이 추가(appending)되어 구성된다.
관련하여, 상기 가상 파일구조(Virtual package) 내의 상위파일로서 인덱스 파일(Index)과 오브젝트 파일(MovieObject)은 새로이 생성되는 플레이리스트 파일(511, 00000.mpls)에 근거하여 기존 디스크 내 인덱스 테이블(Index)과 오브젝트 파일(MovieObject)로부터 업데이트(update) 될 수도 있으며, 이는 특히, 가상 파일구조 내의 플레이리스트 파일(511, 00000.mpls)에 의해 타이틀(Title)의 변경, 예를 들어, 새로운 타이틀이 추가되었거나 또는 기존 타이틀이 삭제되었거나 또는 타이틀 재생의 시나리오가 변경되는 등의 경우가 이에 해당 될 것이다.
본 발명이 제공하는 보안체계 중 공유 데이터의 인증을 통하여 공유 데이터를 보호하는 보안체계에 의하는 경우, 공유 데이터에 대한 인증에 실패하면 광기록재생기의 가상 파일 시스템(40)은 상기 공유 데이터를 포함하는 가상 파일구조(51)를 생성하지 않는 것이 바람직하다. 다만, 기록매체 내 디스크 파일구조(Disc Package)만을 사용하여 가상 파일구조를 생성하게 된다. 이 경우, 플레이어는 로컬 스토리지 내에 저장된 공유 데이터인 "11111.otf"를 재생할 수 없게 된다. 결국, 권한없는 자의 공유 데이터가 기록매체와 함께 재생되는 것을 방지하여 진정한 콘텐츠 제공자를 보호하게 된다.
또한, 공유 데이터에 대한 인증에 성공하여 상기 공유 데이터를 포함하는 가상 파일구조를 생성하더라도 상기 공유 데이터에 엑세스하는 어플리케이션의 크리 덴셜 정보가 유효하지 않은 경우, 상기 어플리케이션은 공유 데이터에 엑세스할 수 없다. 따라서, 공유 데이터가 재생되지 않게 되고, 유효하지 않은 어플리케이션에 의한 재생을 방지하게 됨으로써 결과적으로 공유 데이터가 보호되게 된다.
본 발명이 제공하는 또 다른 보안체계에 의하면, 암호화된 데이터를 복호화할 수 없는 어플리케이션에 의해서는 공유 데이터를 재생할 수 없다. 따라서, 가상 파일구조 내 공유 데이터인 "11111.otf(514)"가 암호화된 파일인 경우, 상기 암호화된 파일을 복호화할 수 있는 어플리케이션에 의해서만 상기 파일이 재생된다. 어플리케이션이 권한없는 공여자(grantor)에 의해 제공된 경우, 상기 공유 데이터를 복호화할 수 있는 정보를 갖고 있지 않을 것이다. 따라서, 권한없는 어플리케이션이 상기 공유 데이터에 엑세스할 수 있다고 하더라도, 상기 공유 데이터를 복호화할 수 없는 바 상기 공유 데이터가 보호되게 된다.
이하, 전술한 도 4의 구성을 참조하여, 본 발명에 따른 기록매체 재생장치에 대해 설명한다.
본 발명에 따른 로컬 스토리지를 이용한 기록매체 재생장치는 기록매체로부터 기록매체의 정보를 독출하는 픽업(11)과, 상기 기록매체와 관련된 공유 데이터가 다운로드 되어 저장되는 로컬 스토리지(15)와, 상기 공유 데이터를 인증하고 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션만이 상기 공유 데이터에 엑세스하도록 제어하는 제어부를 포함하여 구성된다.
관련하여, 상기 엑세스 정보는 상기 어플리케이션의 크리덴셜(Credential) 정보인 것이 가능하다.
관련하여, 상기 크리덴셜 정보는 퍼미션 리퀘스트 파일(permission request file)에 포함될 수 있다. 상기 퍼미션 리퀘스트 파일은 상기 어플리케이션을 구성하는 JAR 파일 내에 존재할 수 있다.
관련하여, 상기 퍼미션 리퀘스트 파일이 상기 어플리케이션을 구성하는 JAR 파일 내에 존재하는 경우에는 상기 JAR 파일이 인증될 때, 상기 퍼미션 리퀘스트 파일 역시 인증되는 것이 바람직하다.
공유 데이터의 인증과 관련하여, 상기 제어부(12)는 상기 공유 데이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터인 경우, 상기 콘텐츠 제공자의 인증서(certificate)를 이용하여 상기 공유 데이터의 인증을 수행하는 것이 바람직하다.
또한, 상기 제어부는, 상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데이터인 경우에는 상기 공유 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 상기 공유 데이터를 인증하는데 이용할 것이다.
본 발명에 따른 로컬 스토리지를 이용한 기록매체 재생장치는 기록매체로부터 기록매체의 정보를 독출하는 픽업(11)과, 상기 기록매체와 관련된 암호화된 공유 데이터가 다운로드 되어 저장되는 로컬 스토리지(15)와, 기록매체 내에 기록된 데이터와 로컬 스토리지 내 데이터를 바인딩하여 상기 공유 데이터를 포함하는 가상 파일구조(Virtual Package)를 생성하고, 상기 공유 데이터를 복호화(decryption) 후 상기 가상 파일구조 내 데이터와 함께 재생하도록 제어하는 제어 부(12)를 포함하여 구성된다.
관련하여, 상기 제어부(12)는, 상기 공유 데이터를 복호화함에 있어서 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션만이 상기 공유 데이터에 엑세스하도록 제어할 수 있다.
상기 엑세스 정보는 상기 공유 데이터에 엑세스하는 어플리케이션의 크리덴셜 정보일 수 있다. 즉, 상기 제어부는 어플리케이션의 크리덴셜 정보를 확인하여, 상기 크리덴셜 정보의 유효 여부에 따라 상기 어플리케이션의 공유 데이터로의 엑세스를 제어할 수 있다.
또한, 상기 제어부(12)는, 상기 가상 파일구조를 생성함에 있어서 상기 공유 데이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터인 경우, 상기 콘텐츠 제공자의 인증서(certificate)를 이용하여 상기 공유 데이터를 인증(authentication)하고 가상 파일구조를 생성하는 것이 바람직하다.
관련하여, 상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데이터인 경우에는 상기 공유 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 상기 공유 데이터를 인증(authentication)하고 가상 파일구조를 생성하는 것이 바람직할 것이다.
상기 제어부(12)의 제어에 의해 복호화되는 상기 공유 데이터는 상기 공유 데이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 경우, 상기 콘텐츠 제공자만의 키(key)를 사용하여 암호화된 데이터인 것이 바람직하다.
관련하여, 상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데 이터인 경우에는 상기 공유 데이터를 공유하는 콘텐츠 제공자들만이 함께 사용하는 키를 사용하여 암호화된 데이터 것이 바람직할 것이다.
상기 공유 데이터를 복호화함에 있어서 상기 제어부(12)는 상기 공유 데이터에 엑세스하는 어플리케이션에 포함된 키를 사용하여 상기 공유 데이터를 복호화할 수 있다.
또한, 상기 제어부(12)는, 상기 공유 데이터를 복호화함에 있어서 상기 기록매체 내에 저장된 키를 사용하여 상기 공유 데이터를 복호화할 수도 있다.
또한, 상기 제어부(12)는, 상기 공유 데이터를 복호화함에 있어서 광기록재생기 내 키스토어(keystore)에 저장된 키를 사용하여 상기 공유 데이터를 복호화하는 것도 가능하다.
본 발명을 통해 진정한 콘텐츠 제공자에 의해 제공된 콘텐츠와 변질되지 않은 콘텐츠만이 재생될 수 있게 함으로써 공유 콘텐츠를 보호할 수 있게 되는 효과가 있다.
본 발명을 상술한 실시예에 한정되지 않으며, 첨부된 청구범위에서 알 수 있는 바와 같이 본 발명이 속한 분야의 통상의 지식을 가진 자에 의해 변형이 가능하고 이러한 변형은 본 발명의 범위에 속한다.
상기에서 설명한 본 발명에 따른 공유 콘텐츠 보호방법, 공유 콘텐츠 재생방법 및 재생장치에 의하면, 공유 콘텐츠를 인증하여, 진정한 콘텐츠 제공자에 의해 제공된 콘텐츠와 변질되지 않은 콘텐츠만이 재생될 수 있게 함으로써 공유 콘텐츠 를 보호하게 된다. 또한, 어플리케이션에 공유 콘텐츠에 대한 엑세스 정보를 둠으로써, 권한없는 어플리케이션에 의한 악의적인 작용으로부터 공유 콘텐츠를 보호하는 것이 가능하게 된다. 공유 콘텐츠를 암호화함으로써 권한없는 어플리케이션에 의한 상기 공유 콘텐츠의 사용을 방지하는 효과가 있다.

Claims (39)

  1. 로컬 스토리지(Local storage)에 동일한 콘텐츠 제공자(content provider)가 제공한 기록매체 사이에서 공유되는 데이터를 다운로드 받아,
    상기 공유 데이터를, 상기 공유 데이터를 제공한 콘텐츠 제공자의 인증서(certificate)를 이용하여 인증(authenticate)하고,
    상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션(application)만이 상기 공유 데이터에 엑세스할 수 있도록 허용하는 것을 특징으로 하는 공유 데이터 보호방법.
  2. 제 1 항에 있어서,
    상기 인증서는 상기 콘텐츠 제공자의 전자서명(digital signature)를 포함하는 것을 특징으로 하는 공유 데이터 보호방법.
  3. 제 1 항에 있어서,
    상기 엑세스 정보는 상기 어플리케이션의 크리덴셜(Credential) 정보인 것을 특징으로 하는 공유 데이터 보호방법.
  4. 제 3 항에 있어서,
    상기 크리덴셜 정보는 퍼미션 리퀘스트 파일(permission request file)에 포 함되는 것을 특징으로 하는 공유 데이터 보호방법.
  5. 제 4 항에 있어서,
    상기 퍼미션 리퀘스트 파일은 상기 어플리케이션을 구성하는 JAR 파일 내에 존재하는 것을 특징으로 하는 공유 데이터 보호방법.
  6. 제 3 항에 있어서,
    상기 크리덴셜 정보는 제공자 아이디(Grantoridentifier), 만기일(Expirationdate), 파일명(Filename), 서명(Signature), 인증서파일아이디(Cerchainfileid)를 포함하여 이루어지는 것을 특징으로 하는 공유 데이터 보호방법.
  7. 로컬 스토리지(Local storage)에 기록매체와 관련되고 복수의 콘텐츠 제공자 사이에서 공유되는 데이터를 다운로드 받아,
    상기 공유 데이터(shared contents)를, 상기 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 인증(authenticate)하고,
    상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션(application)만이 상기 공유 데이터에 엑세스할 수 있도록 허용하는 것을 특징으로 하는 공유 데이터 보호방법.
  8. 제 7 항에 있어서,
    상기 인증서는 상기 콘텐츠 제공자들(content providers) 공동의 전자서명(common digital signature)를 포함하는 것을 특징으로 하는 공유 데이터 보호방법.
  9. 제 7 항에 있어서,
    상기 엑세스 정보는 상기 어플리케이션의 크리덴셜(Credential) 정보인 것을 특징으로 하는 공유 데이터 보호방법.
  10. 제 9 항에 있어서,
    상기 크리덴셜 정보는 퍼미션 리퀘스트 파일(permission request file)에 포함되는 것을 특징으로 하는 공유 데이터 보호방법.
  11. 제 9 항에 있어서,
    상기 퍼미션 리퀘스트 파일은 상기 어플리케이션을 구성하는 JAR 파일 내에 존재하는 것을 특징으로 하는 공유 데이터 보호방법.
  12. 로컬 스토리지(Local storage)에 기록매체와 관련되고 암호화(encryption)된 공유 데이터(shared data)를 다운로드 받아,
    기록매체 내에 기록된 데이터와 로컬 스토리지 내 데이터를 바인딩하여 상기 공유 데이터를 포함하는 가상 파일구조(Virtual Package)를 생성하고,
    상기 공유 데이터를 복호화(decryption) 후 상기 가상 파일구조 내 데이터와 함께 재생하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  13. 제 12 항에 있어서,
    상기 공유 데이터의 복호화는 상기 공유 데이터에 엑세스(access)하는 어플리케이션(applicaion)에 의해 수행되는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  14. 제 13 항에 있어서,
    상기 어플리케이션은 상기 공유 데이터에 대한 엑세스 정보로서 상기 어플리케이션의 크리덴셜 정보를 포함하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  15. 제 13 항에 있어서,
    상기 공유 데이터의 복호화는 상기 어플리케이션에 포함된 키를 사용하여 이루어지는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  16. 제 11 항에 있어서,
    상기 공유 데이터는 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  17. 제 16 항에 있어서,
    상기 가상 파일구조를 생성함에 있어서,
    상기 공유 데이터를 상기 콘텐츠 제공자의 인증서(certificate)를 이용하여 인증(authentication)하고 가상 파일구조를 생성하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  18. 제 16 항에 있어서,
    상기 공유 데이터의 암호화는 상기 콘텐츠 제공자만의 키(key)를 사용하여 이루어진 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  19. 제 12 항에 있어서,
    상기 공유 데이터는 복수의 콘텐츠 제공자 사이에서 공유되는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  20. 제 19 항에 있어서,
    상기 가상 파일구조를 생성함에 있어서,
    상기 공유 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 인증(authentication)하고 가상 파일구조를 생성하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  21. 제 19 항에 있어서,
    상기 공유 데이터의 암호화는 상기 공유 데이터를 공유하는 콘텐츠 제공자들만이 함께 사용하는 키를 사용하여 이루어진 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  22. 제 12 항에 있어서,
    상기 공유 데이터의 복호화는 상기 기록매체 내에 저장된 키를 사용하여 이루어지는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  23. 제 12 항에 있어서,
    상기 공유 데이터의 복호화는 광기록재생기 내 키스토어(keystore)에 저장된 키를 사용하여 이루어지는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생방법.
  24. 기록매체로부터 기록매체의 정보를 독출하는 픽업과,
    상기 기록매체와 관련된 공유 데이터가 다운로드 되어 저장되는 로컬 스토리지와,
    상기 공유 데이터를 인증하고, 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션만이 상기 공유 데이터에 엑세스하도록 제어하는 제어부를 포함하여 구성되는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  25. 제 24 항에 있어서,
    상기 엑세스 정보는 상기 어플리케이션의 크리덴셜(Credential) 정보인 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  26. 제 25 항에 있어서,
    상기 크리덴셜 정보는 퍼미션 리퀘스트 파일(permission request file)에 포함되는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  27. 제 26 항에 있어서,
    상기 퍼미션 리퀘스트 파일은 상기 어플리케이션을 구성하는 JAR 파일 내에 존재하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  28. 제 26 항에 있어서,
    상기 공유 데이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터인 경우,
    상기 공유 데이터의 인증은 상기 콘텐츠 제공자의 인증서(certificate)를 이용하여 이루어지는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  29. 제 26 항에 있어서,
    상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데이터인 경우,
    상기 공유 데이터의 인증은 상기 공유 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 이루어지는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  30. 기록매체로부터 기록매체의 정보를 독출하는 픽업과,
    상기 기록매체와 관련된 암호화된 공유 데이터가 다운로드 되어 저장되는 로컬 스토리지와,
    기록매체 내에 기록된 데이터와 로컬 스토리지 내 데이터를 바인딩하여 상기 공유 데이터를 포함하는 가상 파일구조(Virtual Package)를 생성하고,
    상기 공유 데이터를 복호화(decryption) 후 상기 가상 파일구조 내 데이터와 함께 재생하도록 제어하는 제어부를 포함하여 구성되는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  31. 제 30 항에 있어서,
    상기 공유 데이터를 복호화함에 있어서,
    상기 제어부는 상기 공유 데이터에 대한 유효한 엑세스(access) 정보를 가진 어플리케이션만이 상기 공유 데이터에 엑세스하도록 제어하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  32. 제 31 항에 있어서,
    상기 엑세스 정보는 상기 공유 데이터에 엑세스하는 어플리케이션의 크리덴셜 정보인 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  33. 제 30 항에 있어서,
    상기 제어부는, 상기 가상 파일구조를 생성함에 있어서,
    상기 공유 데이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터인 경우, 상기 콘텐츠 제공자의 인증서(certificate)를 이용하여 상기 공유 데이터를 인증(authentication)하고 가상 파일구조를 생성하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  34. 제 30 항에 있어서,
    상기 제어부는, 상기 가상 파일구조를 생성함에 있어서,
    상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데이터인 경 우, 상기 공유 데이터를 공유하는 콘텐츠 제공자들의 인증서(content providers' certificate)를 이용하여 상기 공유 데이터를 인증(authentication)하고 가상 파일구조를 생성하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  35. 제 30 항에 있어서,
    상기 공유 데이터가 동일한 콘텐츠 제공자가 제공한 기록매체 사이에서 공유되는 데이터인 경우,
    상기 공유 데이터는 상기 콘텐츠 제공자만의 키(key)를 사용하여 암호화된 데이터인 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  36. 제 30 항에 있어서,
    상기 공유 데이터가 복수의 콘텐츠 제공자 사이에서 공유되는 데이터인 경우,
    상기 공유 데이터는 상기 공유 데이터를 공유하는 콘텐츠 제공자들만이 함께 사용하는 키를 사용하여 암호화된 데이터 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  37. 제 30 항에 있어서,
    상기 제어부는, 상기 공유 데이터를 복호화함에 있어서,
    상기 공유 데이터에 엑세스하는 어플리케이션에 포함된 키를 사용하여 상기 공유 데이터를 복호화하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  38. 제 30 항에 있어서,
    상기 제어부는, 상기 공유 데이터를 복호화함에 있어서,
    상기 기록매체 내에 저장된 키를 사용하여 상기 공유 데이터를 복호화하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
  39. 제 30 항에 있어서,
    상기 제어부는, 상기 공유 데이터를 복호화함에 있어서,
    광기록재생기 내 키스토어(keystore)에 저장된 키를 사용하여 상기 공유 데이터를 복호화하는 것을 특징으로 하는 로컬 스토리지를 이용한 기록매체 재생장치.
KR1020050118681A 2005-01-07 2005-12-07 공유 콘텐츠 보호방법, 로컬 스토리지를 이용한 기록매체재생방법 및 재생장치 KR20060081338A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP06700327A EP1836707A2 (en) 2005-01-07 2006-01-02 Method and apparatus for protecting shared data and method and apparatus for reproducing data from recording medium using local storage
JP2007550284A JP2008527598A (ja) 2005-01-07 2006-01-02 共有データ保護方法及び保護装置並びにローカルストレージを用いた記録媒体再生方法及び再生装置
BRPI0606404-3A BRPI0606404A2 (pt) 2005-01-07 2006-01-02 método e aparelho de proteger dados compartilhados, método e aparelho de reproduzir meio de gravação utilizando uma armazenagem local
PCT/KR2006/000002 WO2006073251A2 (en) 2005-01-07 2006-01-02 Method and apparatus for protecting shared data and method and apparatus for reproducing data from recording medium using local storage
US11/325,499 US20060153017A1 (en) 2005-01-07 2006-01-05 Method and apparatus for protecting shared data and method and apparatus for reproducing data from recording medium using local storage

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US64177905P 2005-01-07 2005-01-07
US60/641,779 2005-01-07
US65590805P 2005-02-25 2005-02-25
US60/655,908 2005-02-25

Publications (1)

Publication Number Publication Date
KR20060081338A true KR20060081338A (ko) 2006-07-12

Family

ID=37172375

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050118681A KR20060081338A (ko) 2005-01-07 2005-12-07 공유 콘텐츠 보호방법, 로컬 스토리지를 이용한 기록매체재생방법 및 재생장치

Country Status (5)

Country Link
US (1) US20060153017A1 (ko)
JP (1) JP2008527598A (ko)
KR (1) KR20060081338A (ko)
BR (1) BRPI0606404A2 (ko)
RU (1) RU2007130079A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103124256A (zh) * 2011-11-21 2013-05-29 国民技术股份有限公司 可信密码模块及可信计算方法
WO2018212456A1 (ko) * 2017-05-19 2018-11-22 소프트캠프(주) 데이터 분산형 통합 관리시스템

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080133564A1 (en) 2004-11-09 2008-06-05 Thomson Licensing Bonding Contents On Separate Storage Media
KR20060081337A (ko) * 2005-01-07 2006-07-12 엘지전자 주식회사 비밀키를 이용한 암호화 및 복호화 방법
CN101310525B (zh) * 2005-11-15 2010-09-08 松下电器产业株式会社 再现装置和再现方法
US8280982B2 (en) * 2006-05-24 2012-10-02 Time Warner Cable Inc. Personal content server apparatus and methods
US8024762B2 (en) 2006-06-13 2011-09-20 Time Warner Cable Inc. Methods and apparatus for providing virtual content over a network
US8473739B2 (en) * 2006-11-30 2013-06-25 Microsoft Corporation Advanced content authentication and authorization
JP2009129520A (ja) * 2007-11-26 2009-06-11 Taiyo Yuden Co Ltd 光情報記録媒体及び光情報記録媒体への情報記録方法並びに光情報記録装置
US20090217057A1 (en) * 2008-02-26 2009-08-27 Dell Products L.P. Download And Burn To Rent System
US20090288076A1 (en) * 2008-05-16 2009-11-19 Mark Rogers Johnson Managing Updates In A Virtual File System
JP5889099B2 (ja) * 2012-04-27 2016-03-22 三菱電機ビルテクノサービス株式会社 映像データ作成装置
US20140282786A1 (en) 2013-03-12 2014-09-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing and uploading content to personalized network storage
DE112014001637T5 (de) * 2013-03-28 2015-12-24 Mitsubishi Electric Corporation Wiedergabevorrichtung, Steuerverfahren und Programm
JP6623553B2 (ja) * 2015-05-22 2019-12-25 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにプログラム
US10754755B2 (en) 2018-09-28 2020-08-25 Cotiviti, Inc. Automatically validating data incorporated into a computer program

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003533112A (ja) * 2000-05-11 2003-11-05 松下電器産業株式会社 コンテンツ受信端末及び記録媒体
US6766353B1 (en) * 2000-07-11 2004-07-20 Motorola, Inc. Method for authenticating a JAVA archive (JAR) for portable devices
US7088822B2 (en) * 2001-02-13 2006-08-08 Sony Corporation Information playback device, information recording device, information playback method, information recording method, and information recording medium and program storage medium used therewith
CN1568446A (zh) * 2001-10-12 2005-01-19 皇家飞利浦电子股份有限公司 安全的内容分发方法和系统
EP1650671B1 (en) * 2003-07-28 2016-05-11 Sony Corporation Information processing device and method, recording medium, and program
JP4822663B2 (ja) * 2003-12-12 2011-11-24 ソニー株式会社 情報処理装置および方法、並びに、プログラム
US7715558B2 (en) * 2004-03-11 2010-05-11 Panasonic Corporation Encrypted-content recording medium, playback apparatus, and playback method
EP2270806A3 (en) * 2004-07-22 2011-02-09 Panasonic Corporation Playback apparatus for performing application-synchronized playback
US20060077773A1 (en) * 2004-09-13 2006-04-13 Seo Kang S Method and apparatus for reproducing data from recording medium using local storage
EP1792246A1 (en) * 2004-09-14 2007-06-06 Koninklijke Philips Electronics N.V. Method, apparatus, and medium for protecting content

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103124256A (zh) * 2011-11-21 2013-05-29 国民技术股份有限公司 可信密码模块及可信计算方法
CN103124256B (zh) * 2011-11-21 2017-03-29 国民技术股份有限公司 可信密码模块及可信计算方法
WO2018212456A1 (ko) * 2017-05-19 2018-11-22 소프트캠프(주) 데이터 분산형 통합 관리시스템

Also Published As

Publication number Publication date
BRPI0606404A2 (pt) 2009-12-22
US20060153017A1 (en) 2006-07-13
RU2007130079A (ru) 2009-02-20
JP2008527598A (ja) 2008-07-24

Similar Documents

Publication Publication Date Title
US7668439B2 (en) Apparatus for reproducing data, method thereof and recording medium
KR20060081338A (ko) 공유 콘텐츠 보호방법, 로컬 스토리지를 이용한 기록매체재생방법 및 재생장치
TWI511128B (zh) 光學唯讀儲存媒體
RU2414757C2 (ru) Носитель записи, устройство и способ для воспроизведения данных, устройство и способ для сохранения данных
JP4687424B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
US7664262B2 (en) Playback apparatus and playback control method
KR101216070B1 (ko) 로컬 스토리지를 이용한 기록매체 재생방법 및 재생장치,기록매체
KR101313825B1 (ko) 정보 처리 장치, 정보 기록 매체 제조 장치, 정보 기록매체
EP1834329A2 (en) Apparatus for reproducing data, method thereof and recording medium
TWI360810B (en) Information processing apparatus, information reco
US8438651B2 (en) Data reproducing method, data recording/ reproducing apparatus and data transmitting method
WO2006073251A2 (en) Method and apparatus for protecting shared data and method and apparatus for reproducing data from recording medium using local storage
US20060262710A1 (en) Recording medium, and method and apparatus for reproducing data from the recording medium
KR20090042126A (ko) 어플리케이션의 실행 제한 방법 및 그 장치
KR20080014881A (ko) 기록 매체, 데이터 재생 장치, 데이터 재생 방법, 데이터저장 장치, 그리고 데이터저장 방법
KR20080012724A (ko) 기록매체, 데이터 기록방법 및 기록장치와 데이터 재생방법및 재생장치
KR20070011101A (ko) 데이터 재생방법 및 데이터 재생장치, 기록매체와 데이터재생방법 및 데이터 기록장치

Legal Events

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