KR100567921B1 - 콘텐츠 제공 및 보호용의 유연 및 공통 ipmp 시스템의장치 및 방법 - Google Patents

콘텐츠 제공 및 보호용의 유연 및 공통 ipmp 시스템의장치 및 방법 Download PDF

Info

Publication number
KR100567921B1
KR100567921B1 KR1020037001390A KR20037001390A KR100567921B1 KR 100567921 B1 KR100567921 B1 KR 100567921B1 KR 1020037001390 A KR1020037001390 A KR 1020037001390A KR 20037001390 A KR20037001390 A KR 20037001390A KR 100567921 B1 KR100567921 B1 KR 100567921B1
Authority
KR
South Korea
Prior art keywords
ipmp
content
tool
terminal
ipmp tool
Prior art date
Application number
KR1020037001390A
Other languages
English (en)
Other versions
KR20030022879A (ko
Inventor
쉔쉥메이
지밍
세노다카노리
고구레다쿠요
Original Assignee
마츠시타 덴끼 산교 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마츠시타 덴끼 산교 가부시키가이샤 filed Critical 마츠시타 덴끼 산교 가부시키가이샤
Publication of KR20030022879A publication Critical patent/KR20030022879A/ko
Application granted granted Critical
Publication of KR100567921B1 publication Critical patent/KR100567921B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption
    • H04N21/44055Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption by partially decrypting, e.g. decrypting a video stream that has been partially encrypted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234318Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into objects, e.g. MPEG-4 objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption
    • H04N21/23476Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25816Management of client data involving client authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Abstract

유연 및 공통 IPMP 시스템(지적소유권 관리 및 보호) 장치는, 콘텐츠 스트림에 포함된, 또는 URL 위치로부터 다운로드된 완전한 IPMP 툴 리스트를 도입함으로써, 유연성 및 상호 운용성을 부여한다. 전처리(前處理) 모듈로서의 기능을 하는 준거 IPMP 단말의 IPMP 툴 매니저를 제공하여, IPMP 툴 리스트를 구문(構文) 해석하고, IPMP 툴 ID, 이것에 관련되는 위치 식별자, 및 IPMP 툴 포맷 ID에 근거해서 IPMP 툴을 취득한다. IPMP 툴을, 2진 포맷으로 프리컴파일(precompile)해서 IPMP 단말에 전송 또는 다운로드할 수 있고, IPMP 단말의 상이한 플랫폼상의 대상에 대하여 상이한 2진 포맷을 콘텐츠 제공자가 준비한다.

Description

콘텐츠 제공 및 보호용의 유연 및 공통 IPMP 시스템의 장치 및 방법 {APPARATUS AND METHOD OF FLEXIBLE AND COMMON IPMP SYSTEM FOR PROVIDING AND PROTECTING CONTENT}
본 발명은 콘텐츠의 제공 및 보호에 관한 것으로, 특히 보호 콘텐츠를 상이한 IPMP(intellectual property management and protection; 지적 소유권 관리 및 보호) 시스템에 의해서 소비하는, 및 동일 콘텐츠를 상이한 IPMP 시스템에 의해서 보호하도록 하는 용도에 관한 것이다.
콘텐츠 제공은, 멀티미디어 데이터로서 점점 수요가 증대하고 있고, 콘텐츠는, 어디라도 언제라도 도달 가능하다. 이용자는, 편리함 및 유연성에 만족하고 있고, 오락을 용이하고 또한 효율적으로 즐길 수 있다.
한편, 콘텐츠의 소유자는, 고객의 요구를 만족시키도록 노력하고 있지만, 동시에, 이러한 프로퍼티(property)의 부정 사용에도 우려하고 있다. 2개의 측면의 사이의 밸런스이다.
상기 콘텐츠를 보호하는 보호 기법은, 데이터 암호화, 투과 정보 (watermark), 암호 방법 등 다수 있다. 상기 보호 기법은, 많은 콘텐츠 제공 애플리케이션에서 실시되고 있다. 상이한 시스템이 이종(異種)의 기구 및 보호 기법을 사용해서 보호된 콘텐츠를 제공하는 것 같이 보인다. 이 경우에 있어서의 모든 단말 또는 콘텐츠 소비 장치는, 동일한 콘텐츠 제공자에 의해서 제공되는 콘텐츠를 실행해서 소비할 수 있을 뿐이다. 상기 보호 기법에서는, 이러한 단말 또는 장치를 교환해서 상이한 콘텐츠를 재생할 수는 없다.
MPEG 표준화 그룹에 있어서, 사람들은, 준거(準據) 단말을 포함하는 IPMP 시스템을 표준화하는 방향으로 노력하고 있다. 모든 단말은, 예로서 어떠한 종류의 IPMP 툴(tool)을 사용해도, 다음과 같은 동일한 IPMP 표준에 의해서 암호화되어서 보호되는 보호 콘텐츠를 재생할 수 있다.
이러한 단말은 음성 및 영상 디코더와 같은 콘텐츠 디코더로 구성되고, 또한, 상기 단말은, 상기 콘텐츠를 복호(復號)해서 재생하기 전에 상기 보호 콘텐츠로부터 보호를 해제할 필요가 있다. 따라서, IPMP 툴 리스트를 포함하는 보호 정보는, 보호를 해제하는 방법을 이해하는 데에 필요하게 되고, 상기 단말이 콘텐츠를 이용하는 데에 필요하게 된다.
한편, IPMP 툴은 미리 어떠한 특정한 툴에 고정되지 않는다. 이것은, 벤더가 이러한 IPMP 시스템에서 원하는 툴을 선택하는 유연성을 더욱 높이는 것이다. 이러한 경우, 더욱 높은 유연성과 보안의 양쪽을 동시에 제공하는 데에 어떠한 표준 방법 및 인터페이스를 정의할 필요가 있다.
이러한 단말에 관한 선행 기술이 기본적으로 도 1에 도시되어 있고, 도 1은, 실시간(實時間)으로 이용자 인증, IPMP 툴 검색 및 콘텐츠 복호까지의 작업의 흐름을 나타낸다.
상이한 벤더는, 동일한 콘텐츠 디코더, 예를 들면 MPEG-2 또는 MPEG-4를 사용하지만, 상기 선행 기술에 있어서의 이용자 인증 및 IPMP 툴 검색은, 상이한 벤더에 관해서 전혀 다르게 실시되고 있다. 이러한 경우에 상이한 콘텐츠 제공자에 의해서 제공되는 상이한 콘텐츠를 실행하기 위해서 동일한 단말을 제조하는 것은 매우 곤란하다. 환언하면, 동일한 보호 콘텐츠를 상이한 IPMP 시스템으로써 재생할 수 없다.
(발명이 해결하려고 하는 기술적 과제)
해결해야 하는 과제는, 동일한 IPMP 시스템 구조를 정의하여 상이한 IPMP 시스템이 동일한 보호 콘텐츠를 소비 가능하게 하는 것, 및 IPMP 시스템 실시자에 대하여 표준 방법을 제공해서 안전한 방법으로써, 인코더, 채널 제공에서 단말까지의 전(全) 시스템을 구축하는 것이다.
(그 해결 방법)
본 발명에 의하면, 유연 및 공통 IPMP 시스템(지적소유권 관리 및 보호) 장치는, 콘텐츠 스트림에 포함된, 또는 URL 위치로부터 다운로드된 완전한 IPMP 툴 리스트를 도입함으로써, 유연성 및 상호 운용성을 부여한다.
전처리(前處理) 모듈로서의 기능을 하는 준거 IPMP 단말의 IPMP 툴 매니저에 의해서, IPMP 툴 리스트를 구문(構文) 해석하고, IPMP 툴 ID, 이것에 관련되는 위치 식별자, 및 IPMP 툴 포맷 ID에 근거해서 IPMP 툴을 취득한다.
IPMP 툴을, 2진 포맷으로 프리컴파일(precompile)해서 IPMP 단말에 전송 또 는 다운로드할 수 있도록, IPMP 단말의 상이한 플랫폼상의 대상에 대하여 상이한 2진 포맷을 콘텐츠 제공자가 준비한다.
3종류의 주요하고 또한 일반적인 인터페이스는, 매우 유용하고 또한 전형적인 용도 요건에 따라서, 데이터 암호 해독, 투과 정보(watermark) 매입(埋入), 및 투과 정보 및 데이터 암호 해독의 방법용으로 지정된다.
본 발명의 하나의 실시예에서는 최소 2층 구조를 제안하여, 이용자 인증 출력 메시지를 지정하고, 상이한 IPMP 시스템에 관해서 더욱 높은 보안 및 단말 호환성을 부여한다.
단말 복잡성 및 IPMP 툴 다양성은, IPMP 툴을 취득해서 사용하는 경우에 상이한 프로파일(profile)을 지정함으로써, 처리된다.
우선 제1로, IPMP 툴 리스트를, 콘텐츠 스트림 내에 위치하는 어떠한 특정한 패킷(packet)으로서 정의하고, 하기의 내용을 나타낸다.
ㆍ콘텐츠를 보호하는 데에 사용되는 IPMP 툴의 리스트
ㆍ다운로드된 IPMP 툴의 포맷 ID
ㆍIPMP 툴의 위치 타입
ㆍIPMP 툴을 취득 가능한 위치
IPMP 툴 리스트 플래그(flag)는, 상기 패킷의 앞에 헤더(header)로서 위치하고 있다.
IPMP 툴 매니저는, 콘텐츠 디코더의 앞에 위치하는 어떠한 모듈로서 설계되어서, 콘텐츠 스트림에 포함된, 또는 어딘가에 저장된 IPMP 툴 리스트를 구문 해석 하여, 콘텐츠 스트림으로부터 보호를 해제하기 위한 IPMP 툴을 취득한다.
범용의 인터페이스가, 다운로드된 IPMP 툴을 IPMP 단말에서 사용할 수 있도록 IPMP 단말용으로 지정된다. 이 인터페이스는 어느 종류의 툴에 의한 대부분의 상이한 알고리즘을 취급할 수 있도록 정의된다.
2층의 보안 구조를 도입하여, 더욱 높은 보안성을 부여하는 동시에, 단말 호환성을 위해서 임의의 상이한 이용자 인증 방법에 관한 출력 요건을 결정한다.
IPMP 툴 ID는 미리 결정한 테이블로서 정의되어서, 상기 테이블을 사전 부호화, 또는 단말에 다운로드해 두어도 좋다. 콘텐츠 제공자측과 단말측의 양쪽은, 동일한 테이블을 참조해서 동일한 IPMP 툴에 동일한 IPMP 툴 ID를 사용할 필요가 있다.
단말은, 표준 IPMP 툴이라고 생각되는 IPMP 툴을 사전에 실장해도 좋고, 상기 단말이 다운로드 기능을 가지고 있는 경우, 콘텐츠 스트림에 포함된 IPMP 툴 리스트에 따라서 독자적인 IPMP 툴을 다운로드해도 좋다.
암호화 키는, 상기 2층 보안 구조에 따라서 추가로 암호화해서 IPMP 정보에 삽입되어서, 콘텐츠 스트림과 함께 단말에 전송된다.
콘텐츠 제공자측에서는, 미디어 콘텐츠는, MPEG-2 또는 MPEG-4와 같은 부호화 기술을 이용해서 부호화되어서, DES 또는 AES와 같은 IPMP 툴을 이용해서 암호화된다. 상기 콘텐츠는, 부호화전에 투과 정보를 매입해도 좋다.
동시에, 콘텐츠 ID는, 콘텐츠 저작권 정보, 콘텐츠 작성 정보 등에 따라서 생성된다. 또한, IPMP 툴 리스트는, 콘텐츠를 보호할 때에 사용되는 IPMP 툴에 따 라서 생성된다. 상기 IPMP 툴 리스트는, IPMP 툴 ID, IPMP 툴 포맷 ID, 위치 타입, IPMP 툴의 위치 및 예약 필드를 포함한다. 위치 식별자는, 위치 타입 및 위치 상세가 특정한 IPMP 툴 ID를 따르므로, 특정한 IPMP 툴과 밀접하게 관련이 있다.
IPMP 툴 리스트 플래그는, 그 후에 후속하는 것이 IPMP 툴 리스트인 것을 나타낸다.
임의의 단말은, 이러한 콘텐츠를 취득 또는 검색할 수 있지만, 적절한 사용 라이선스, 및 대응하는 또는 올바른 IPMP 툴 없이는 재생은 할 수 없다.
단말측에서는, IPMP 툴 리스트를 IPMP 툴 매니저 모듈에 인도하여, IPMP 툴을 취득한다.
취득된 IPMP 툴은, 단말에서 사용 가능한 것이고, IPMP 단말에 저장되어서 미리 결정한 인터페이스용으로 준비된다.
콘텐츠 스트림이, 콘텐츠 디코더를 통과하기 시작하면, IPMP 시스템은, 이용자 인증 모듈을 기동하여, 이용자 단말 ID, 콘텐츠 ID 및 그 밖의 관련 정보를 부여함으로써, 콘텐츠 제공자 또는 제공 에이전트에게 요구를 송신한다. 라이선스는, 이용자 인증이 잘 실행된 후, 단말에 발행된다.
최후로, 암호화된 키는 암호 해독되고, 암호화된 콘텐츠도 암호 해독되어서, 콘텐츠는 단말에서 복호 및 재생 가능하게 된다.
도 1은, 선행 기술의 콘텐츠 제공 및 보호의 기존 IPMP 시스템.
도 2는, 준거 IPMP 시스템의 일반도.
도 3은, 콘텐츠 스트림에 포함된 IPMP 툴 리스트 패킷의 구성.
도 4는, MPEG-4의 IPMP 시스템과 함께 작동하는 IPMP 툴 매니저의 구성.
도 5는, MPEG-2의 시스템과 함께 작동하는 IPMP 툴 매니저의 구성.
도 6은, MPEG-4의 IPMP 시스템 및 IPMP 툴 매니저 모듈과 함께 작동하는 이용자 인증 모듈의 구성.
도 7은, MPEG-2의 시스템 및 IPMP 툴 매니저 모듈과 함께 작동하는 이용자 인증 모듈의 구성.
도 8(a)는, 인코더를 갖는 부분적 암호화의 구성.
도 8(b)는, 인코더를 갖지 않는 부분적 암호화의 구성.
도 8(c)는, 부분적 암호 해독의 구성.
도 9는, 본 발명의 기타 실시예의 IPMP 시스템의 구성도.
도 10은, 본 발명의 실시형태에 있어서의 IPMP 시스템에 있어서, 제공자로부터 이용자 단말에 전송되는 메시지의 흐름도.
도 11은, 메시지의 구체예.
도 12는, 메시지 내의 IPMP 정보의 일례.
도 13은, 이용규칙 관리 모듈의 처리 플로차트.
도 1은, 현재의 전형적인 IPMP(지적소유권 관리 보호) 시스템을 나타낸다.
유닛(1.0)의 콘텐츠 소유자는, 유닛(1.1, 1.5, 및 1.9)의 상이한 콘텐츠 제공자 A, B 및 C를 통하여 콘텐츠를 제공한다. 상이한 IPMP 시스템은, 3조의 IPMP 시스템으로써 실시되고 있다.
각각의 프로토콜이 상이한 IPMP 툴(예를 들면 암호화 툴) 및 상이한 이용자 인증 툴 등을 사용하고 있으므로, IPMP 툴을 취득해서 검사하는 방법은 그것들 자체의 프로토콜에 의거한다. 상이한 이용자 인증 방법은, 유닛(1.2, 1.6, 및 1.10)에 나타나 있고, IPMP 툴을 취득하는 상이한 방법은, 유닛(1.3, 1.7, 및 1.11)에 나타나 있다. 따라서, 유닛(1.4, 1.8, 및 1.12)에 나타내는 바와 같이, 콘텐츠 복호 또는 콘텐츠 소비 단말도 서로 상이하다. 단말 A가 콘텐츠 제공자 B에 의해서 제공되는 보호 콘텐츠를 재생할 수는 없다는 것이 명확하다.
이하의 내용에 대해서는, 본 출원의 발명자에 의한 전번의 출원(특원2001-058236)에서 해결되었다.
1) IPMP 툴 정보를 스트림에 포함시켜서, 콘텐츠 제공자 및 콘텐츠 디스트리뷰터(distributor)에 따라서 어떠한 IPMP 툴을 사용할 것인가를 표시하는 것.
2) 준거 IPMP 단말에서 IPMP 툴 관리를 이용해서 IPMP 정보를 처리하는 것.
3) 상이한 처리 능력을 갖는 IPMP 단말에 관한 프로파일을 정의하여, IPMP 시스템을 실현하는 것.
그러나 전번의 출원에서는 미해결인 문제점이 2가지가 있고, 다음과 같다.
1) 단말 OS 및 플랫폼에 의존하는 다운로드 툴 포맷의 문제.
2) IPMP 단말에서 사용되어야 하는 IPMP 툴용의 인터페이스의 문제.
본 출원에서는, 추가로, 전번의 출원에서 제시된 IPMP 시스템을 더욱 상세하고 또한 더욱 완전한 형태로 설명하고, 2가지의 문제점을 상세히 취급하여 설명한 다.
도 2는, MPEG-n의 IPMP 시스템을 나타낸다.
서버(server)는, 모듈(2.1)로써 나타내고, 콘텐츠 제공자나 콘텐츠 디스트리뷰터의 어느 하나로서 기능을 하고, 또는 상이한 용도 시나리오의 경우에는 양쪽의 기능을 실행한다.
네트워크층은, 모듈(2.3)로써 나타내고, 준거 IPMP 단말과 서버와의 사이의 통신, 및 상기 서버로부터 상기 단말로의 콘텐츠 스트림의 전송을 실행한다.
처음에는, 모듈(2.4)의 권리 인증이, 상기 서버와 대화하기 시작하여, 권리 인증 모듈의 출력 메시지 등의 상세한 사용 규칙과 함께 콘텐츠 액세스 및 소비 권리를 얻는다. 미리 결정된 포맷의 이들 메시지는, 이후에 사용되기 위해서 상기 단말의 메모리에 저장된다. 출력 메시지 란을 지정하는 상세에 대해서는, 이후에 설명한다.
모듈(2.4)에 의해서 콘텐츠 액세스용 권리가 허가되면, 상기 서버는, 상기 네트워크층을 통해서 요구된 콘텐츠 스트림을 상기 단말에 송신한다.
모듈(2.2)에서는, 기타의 전용 플랫폼 및 OS용의 기타의 포맷 이외에 JBC(Java 바이트 코드), DLL(다이내믹 링크 라이브러리) 등의 상이한 포맷의 2진 툴에 추가하여, 툴 ID, 툴 위치 ID, 툴 포맷 ID를 포함하는 툴 리스트 정보와 함께 콘텐츠 스트림을 전송한다. 툴 리스트 정보를 지정하는 상세에 대해서는, 이후에 설명한다.
모듈(2.5)에 나타내는 IPMP 툴 매니저에서는, 툴 리스트 정보를 구문 해석( 解析)/해석(解釋)하는 동시에, 툴 위치 ID 및 툴 포맷 ID 정보에 따라서 IPMP 툴을 검색한다. 모듈(2.5)로부터의 출력 메시지는, 툴의 내용을 나타내는 기술자(記述子; descriptor)용 툴 ID를 갖는 적절한 IPMP 툴이다. IPMP 툴 자체는, IPMP 기준으로 미리 결정된 공통 툴 포맷 ID에 따른 단말 플랫폼용으로 선택 검색하여 적합한 2진 포맷이다.
라이선스/키 및 사용 규칙은, 추가적인 처리를 위해서 모듈(2.6) 형태로서 상기 단말의 메모리에 저장된다. 대응하는 툴 ID를 갖는 2진 IPMP 툴은, 모듈(2.7) 형태로서 상기 단말의 메모리에 저장된다. 상기 툴의 각각은, 일반적인 표준화 인터페이스에 따라서 구축되고, 플랫폼에 적합시키기 위해서 컴파일러를 이용해서 프리컴파일된다. 예를 들면, 데이터 암호화 및 암호 해독 툴은, 1개의 범용 지정 인터페이스에 의해서 구축 가능하다. 예를 들면, Java 가상(假想) 컴퓨터로써 전 플랫폼/단말용의 Java 바이트 코드(JBC)로 프리컴파일 가능하고, 또한 Windows에 의한 플랫폼/단말용의 다이내믹 링크 라이브러리(DLL)로 프리컴파일 가능하다.
2진 형식의 툴은, zip형식 등의 압축 형식으로 전송 가능하다. 상기 툴은, 부정 변경 방지 소프트웨어를 이용함으로써, 부정 변경 가능하거나, 또는, 2진 코드가 깨어지거나 또는 해킹되는 것을 방지하는 서명(署名) 기법을 이용하여 서명 가능하다.
모듈(2.8)은, IPMP 툴 제공자 및 단말 실시자가 미리 결정되어 따르는 것이 필요한 IPMP 툴용의 인터페이스를 나타낸다.
베이스층은, 모듈(2.9)에 나타내는 콘텐츠 디코더 및 프리젠터이다. 이 층 은, 상기 베이스층의 기타의 구성 요소에 위치하여 상기 구성 요소와 함께 원활하게 동작하는, 2진 형식으로서 IPMP 툴용의 훅(hook) 인터페이스를 이용해서 구축된다.
범용 인터페이스는, 3종류의 IPMP 툴(암호 해독용 인터페이스, 투과 정보 매입용 인터페이스, 투과 정보 기능과 암호 해독용 인터페이스)에 대해서 이후에 명기한다. 권리 인증용 인터페이스는, 용도에 크게 좌우되므로 미리 정의할 수 없고, 이 때문에, 여기에서 정의 및 고정되는 것이 아니고 파라메트릭(parametric) 툴에 의해서 처리된다.
상세한 설명을 여기에서 4개의 부분으로 나누어서, 설명한다.
1. IPMP 툴 리스트 및 IPMP 툴 매니저
1.1 IPMP 툴 리스트 및 IPMP 툴 매니저의 정의
IPMP의 개요에 있어서, IPMP 정보는, 소정의 IPMP 툴이 소정의 보호 콘텐츠를 요구하여 올바르게 처리하는 정보로 정의되어 있다.
IPMP 툴은, 미리 결정된 방법으로써 인증, 암호화, 투과 정보 등의 IPMP 기능을 실행하는 모듈인 것으로 정의되어 있다.
이 발명에 있어서, IPMP 툴 리스트의 정의를 도입한다.
IPMP 툴 리스트는, IPMP 툴 매니저가 IPMP 툴을 식별해서 상기 IPMP 툴을 검색할 필요가 있는 정보를 포함한다. 이것은, IPMP 툴의 고유의 식별, IPMP 툴의 위치 식별자, 및 IPMP 툴 ID와 콘텐츠 ID와의 사이의 관계 정의를 포함한다.
또한, IPMP 툴 매니저를 다음과 같이 정의한다.
IPMP 툴 매니저는, 그 유일한 역할이 IPMP 툴 리스트를 처리해서 콘텐츠 스트림 전체를 소비하는 데에 필요한 IPMP 툴을 검색하는 엔티티(entity)이다.
1.2 IPMP 툴 리스트
이 IPMP 툴 리스트 패킷의 상세 구조는, 다음과 같은 도 3에 가장 잘 나타내어져 있다.
상기 IPMP 툴 리스트 패킷은, 보호 콘텐츠를 소비하는 데에 필요한 전 IPMP 툴의 정보를 포함한다. 상기 콘텐츠가 2종류 이상의 콘텐츠를 포함하는 경우, 예를 들면, 상기 콘텐츠의 제1의 부분은 콘텐츠 제공자 A로부터이고, 제2의 부분은 콘텐츠 제공자 B로부터 온 경우, 각각의 IPMP 툴에 관련되는 정보는, 각각 관련되는 콘텐츠 ID마다 분류된다.
이어서, 각각의 콘텐츠 ID용의 IPMP 툴 리스트는, 각각의 IPMP 툴 정보로써 구성되면 좋고, 이들 각각의 IPMP 툴 정보의 순서는 중요하지 않다.
각각의 IPMP 툴 정보는, 3개의 주요한 부분, 즉 IPMP 툴 ID, IPMP 툴 위치 식별자 및 IPMP 포맷 ID로 구성되어 있다.
상기 IPMP 툴 ID는, 소정의 방법으로써 툴을 식별하고, 적어도 2개의 부분, 툴 타입 ID 및 툴 서브 ID를 가지고 있다.
툴 타입 ID는, 이 특정한 IPMP 툴이(툴 기능의 점에서) 어떠한 카테고리, 예를 들면 암호 해독, 투과 정보 추출, 투과 정보 검출, 권리 추출 등에 속하는가를 지정한다. 하기의 표는, IPMP 툴의 16카테고리를 취급할 수 있는 4비트로써 툴 타입 ID의 길이를 가상으로 설정한다.
또한, 툴 서브 ID는 어느 특정한 IPMP 툴을 식별하고, 상기 서브 ID는, 하기의 표와 같이, 1툴 타입간의 4096의 상이한 툴을 식별할 수 있는 길이 12비트로써 가상으로 설정된다.
(표 1)
IPMP 툴 ID 리스트
툴 기능 IPMP 툴 ID IPMP 툴 명칭
암호 해독 툴 ... 0001 000000000000 ... DESDecrypt 12비트로써 4096의 상이한 툴이 가능하게 된다.
... 0001 000000000001 ... AESDecrypt
... 0001 000000000010 ... SC2000Decrypt
... 0001 000000000011 ... CamelliaDecrypt
... 0001 000000000100 ... Xxxx
... 0001 000000000101 ... Xxxx
... 0001 000000000110 ... Xxxx
... 0001 000000000111 ... Xxxx
... 0001 000000001000 ... Xxxx
... 0001 00000000xxxx ... Xxxx
... 0001 00000000xxxx ... Xxxx
... 0001 100000000000 ... 예약 금후/독점 툴에 예약
... 0001 100000000001 ... 예약
투과 정보 매입 툴 ... 0010 000000000000 ... 투과 정보 툴 1 12비트로써 4096의 상이한 툴이 가능하게 된다.
... 0010 000000000001 ... 투과 정보 툴 2
... 0010 000000000010 ... 투과 정보 툴 3
... 0010 000000000011 ... Xxxx
... 0010 000000000100 ... Xxxx
... 0010 00000000xxxx ...
금후/독점 툴에 예약
예약
예약
주: 상기의 최초의 4비트는 툴 타입 ID이다.
이 표는 단말에 사전 로드(load)되어야 하고, 또는, 단말은 상기에 나타내는 표준화 툴 ID표에 따라서 구축된다.
위치 식별자는 전송(轉送) 기구를 암시하고, 1개의 IPMP 툴에 관해서 2개 이상의 위치 식별자가 가능하다. IPMP 툴 매니저는, 상기 식별자의 각각을 이용해서 상기 툴을 검색하려고 시도한다. IPMP 툴 A의 제1의 위치 식별자가 성공한 경우, 이하의 위치 식별자가 스킵되고, 그렇지 않으면, 제2의 위치 식별자에 이어진다.
예를 들면, 위치 식별자는 하기와 같이 기술된다.
1. 로컬(local): 단말 시스템의 내부 또는 주변장치
2. 외부: 지정된 단말 시스템의 외부(http:, ftp:)
IPMP 툴 식별자는, 2개의 부분(위치 타입 및 위치 상세)으로 이루어진다. 위치 타입은, 다음 중, 1개가 아니면 안된다. 위치 타입과 위치 상세와의 사이의 대응은, 표 2에 나타내어져 있다.
(표 2)
가능한 위치 타입과 그 상세
위치 타입 ID 위치 타입 위치 상세
0000 "로컬" N/A
0001 "주변장치" N/A
0010 "원격 다운로드 가능" Website(http, ftp...)
0011 "원격 다운로드 불가능" Java servelet 등의 원격 위치
0100 "콘텐츠 스트림 내부" 이 부분은 IPMP 툴 자체를 포함해야 한다.
... ... ...
1*** 예약 예약

툴 포맷 ID는, IPMP 툴 ID 및 툴 위치 ID와 함께 전송되고, 통지하는 데에 8비트를 이용하고 있으며 표 3에 명기되어 있다.
제공된 IPMP 툴이 어떠한 2진 포맷인가를 IPMP 단말은, DLL, JBC, 또는 기타 등의 툴 포맷 ID로부터 인지하고, 상기 IPMP 단말은, 그 OS와 합치하는 적절한 포맷으로서 상기 툴을 다운로드 또는 검색할 수 있다.
(표 3)
다운로드된 IPMP 툴의 포맷 ID
8비트 다운로드된 포맷 대상 플랫폼 컴파일러 IPMP 단말
00000000 JBC(Java 바이트 코드) JVM 인터프리터 매입 머신 JAVA 컴파일러 대부분의 휴대전화 및 STBs
00000001 DLL1 Windows 머신 Microsoft C 컴파일러 Windows상에 실행중인 전 PC
00000010 DLL2 Unix 머신 gcc 및 기타의 컴파일러 전 Unix, Linux OS
00000011
예약 DLL-AM33 파나소닉 칩 AM33 컴파일러 칩 의존 제조에 예약, 및 특정 컴파일러를 필요로 한다.
예약
예약
예약

다운로드되는 IPMP 툴의 툴 포맷 ID를 정의해서 단말 상호 운용성을 달성하는 목적은, 이하와 같다.
1 최근, 대부분의 휴대전화 및 DTV STB(desk-top video set-top box)는, Java 가상 컴퓨터(JVM)로써 구축되어 있고, 스트림 내에 포함 또는 URL로부터의 다운로드를 통해서 IPMP 툴을 Java 바이트 코드로 컴파일해서 단말에 다운로드할 수 있다.
2 DLL은, PC 또는 Unix에서 사용되는 많이 보급되어 있는 포맷이다. 상이한 비트 수의 플래그를 사용하여, 이용자의 단말이 어떠한 DLL 포맷을 다운로드할 필요가 있는가를 통지한다.
3 JVM(Java Virtual Machine)도 표준 C/C++ 컴파일러도 구비하지 않은 기타의 단말에 관해서, 예를 들면, 어떠한 DTV STB에, IPMP 툴을, 그것들의 컴파일러를 이용해서 프리컴파일하여 브로드캐스트 스트림 또는 백 채널(back channel)을 통해서 다운로드할 수 있다. 이것은, 방송업자 또는 제조업자가 그것들의 소프트웨어를 갱신하고 싶을 때에 현재 DTV STB가 실행하고 있는 것이다.
이 경우, 상기 표의 동일한 예약 비트 플래그를, 방송업자와 제조업자 양쪽에서 선택 및 참조하여, 상기 업자가 IPMP 툴의 어떠한 포맷을 검색해서 사용할 수 있는가를 DTV STB에 통지한다.
IPMP 툴 리스트용 구문은, 이하와 같이 정의된다.
(수식 1)
class IPMP_Tool_List
{
bit(128)IPMP_Tool_ID;
//whether this IPMP Tool is a parametric tool or normal tool is
implicitly
// indicated by the IPMP_Tool_ID.
if (parametricRepresentation)
{
//...detailed syntax of parametric representation.
}
else
{
bit(1) hasAlternativeToolLocation;
while (hasAlternativeToolLocation)
{
bit(1) hasAlternativeToolLocation;
bit(7) Tool_Location_ID;
if (Tool_Location_ID == 0b0000000) //tool carried in
bitstream.
{
}
else if (Tool_Location_ID == 0b0000001) //remote method
call
{
bit(8) Remote_Call_Mechanism; //CORBA, DCOM, RMI,
//SOAP ...
bit(1) Client_In-Bitstream;
}
else if (Tool_Location_ID == 0b0000001 ||
Tool_Location_ID=0b0000011)
// Remote Downloadable, http protocol or ftp
protocol
{
bit(8) Tool_Format_ID;
unsigned int(16) serverAddressLen;
bit(8) serverAddress[serverLen];
unsigned int(16) fullPathLen;
bit(8) fullPath[fullPathLen];
bit(1) isCompressed;
if (isCompressed)
{
bit(7) compressionMethod;
}
}
else if (Tool_Location_ID == 0b0000100 .. 0b1000000)
//ISO reserved
{
}
else // user defined.
{
}
}
}
}
의미
IPMP_Tool_ID는, 유니버설 레벨로서 툴을 반드시 식별한다. 최초의 16비트는 특정의 IPMP 툴의 타입 카테고리를 식별하는 것에 대해서, 다음 112비트는 상기 IPMP 툴을 상세하게 식별한다. 하기의 표에, 상기 IPMP_Tool_ID를 설명한다. 등록 당국이, 이러한 표를 보수하는 책임을 가지고 있다.
몇 개의 통상 이용되는 IPMP 툴을 표준화할 필요가 있고, 이러한 기본적인 IPMP 툴을 포함하는 테이블을 정의할 필요가 있으며, 이 테이블을 모든 IPMP 단말에 사전 로드해야 한다. 하기의 표는 이러한 개념을 설명한다. 표준화되어야 하는 기본 툴의 내용에 관해서, 그것은 IPMP 위원회에서 또한 논의하는 사항이다.
Tool_Location_ID는, 전송 기구를 암시하고, 툴이 콘텐츠 스트림에 포함될 것인가, 원격 위치로부터 다운로드할 필요가 있는가, 또는 IPMP 툴이 원격 위치에서 실행 가능한 것인가 아닌가를 나타낸다.
1개의 IPMP 툴에 관해서 2개 이상의 위치 식별자가 가능하다. hasAlternativeToolLocation은, IPMP 툴이 별도의 검색 대상을 가지고 있는가 아닌가를 나타낸다. IPMP 툴 매니저는, 상기 식별자의 각각을 이용해서 상기 툴을 검색하고자 시도한다. IPMP 툴 A의 제1의 위치 식별자가 성공한 경우, 다음 위치 식별자가 스킵되고, 그렇지 않으면, 제2의 위치 식별자를 조사한다.
(표 4)
IPMP 툴 위치 식별자(IPMP Tool_Location_ID)
Tool_Location_ID 위치 타입
000 0000 콘텐츠 스트림 내부에 포함된 툴
000 0001 원격 위치에서 실행되는 툴
000 0010 http 프로토콜에 의한 다운로드
000 0011 ftp 프로토콜에 의한 다운로드
000 0100 -- 100 0000 ISO 예약
100 0001 -- 111 1111 예약

Tool_Location_ID가 ObOOOOOOO인 경우, 이것은, IPMP 툴이 콘텐츠 스트림에 포함되어 있는 것을 의미한다. Mpeg4 데이터에 있어서, 본 발명에서는, IOD와 관련이 있는 제안된 IPMP 툴 ES 내에 2진 IPMP 툴이 포함되어 있다. 그 상세한 것은, 이후에 설명한다.
Tool_Location_ID가 ObOOOOOOl인 경우, 이것은, 이 IPMP 툴이 원격측에서 실행되는 것이라는 것을 의미하고, IPMP 단말은, RPC(remote procedure call; 원격 절차 호출)를 통해서 이 IPMP 툴을 호출한다. 8비트 원격 호출 방법은, 이 IPMP 툴이 어떠한 RPC 기구, 예를 들면 CORBA, RMI, XML-RPC, DCOM에 대응하고 있는가를 나타낸다. 이 Remote_Call_Mechanism에 관한 상세한 것은, 하기의 표에서 정의된다. IPMP 툴 매니저는, 상기 단말이 상기 RPC 기구에 대응하고 있는가 아닌가를 검사한다.
(표 5)
IPMP Remote_Call_Mechanism
Remote_Call_Mechanism RPC 기구
0000 0000 DCOM
0000 0001 RMI
0000 0010 CORBA
0000 0011 XML-RPC
0000 0100 SOAP
... ... ... ...
0000 1000 -- 1000 0000 ISO 예약
1000 0001 -- 1111 1111 예약

상기 IPMP 툴이 원격에서 실행되는 것인 경우, IPMP 단말은, 원격 IPMP 툴과 인터페이스를 취해서 통신하는 클라이언트와 같은 경량(輕量) 코드를 필요로 한다. 예를 들면, 상기 원격 IPMP 툴이 CORBA만을 통해서 호출될 수 있는 경우, 상기 IPMP 단말은, IIOP(인터넷 ORB간 프로토콜)를 통해서 상기 원격 IPMP 툴에 적절하게 파라미터를 일괄하여 전달하는 방법을 알고 있는 스터브(stub)를 필요로 한다. 본 발명에서는, 이 경량 2진 코드를 IPMP 툴 클라이언트로서 호출한다. IPMP 툴 클라이언트는 경량이라고 간주되고 있으므로, 그것은 가능하고, 콘텐츠 스트림 내에 포함된다. 이 IPMP 툴 클라이언트를 콘텐츠 스트림 내에 포함시키는 방법은, 이후에 설명한다.
원격에서 실행되는 IPMP 툴과 통신하는 IPMP 툴 클라이언트를 갖는 것만으로서는, IPMP 단말이 이 원격 IPMP 툴을 이용하는 것을 가능하게 하는 데에 충분하지 않다. IPMP 단말은, 상기 IPMP 툴 클라이언트를 초기 설정해서 이것과 대화하는 방법을 필요로 한다. 이것을 처리하는 방법은, 이 제안의 범위를 벗어나 있다. 이 면에서, IPMP 툴 클라이언트는 기타의 통상의 IPMP 툴과 동일하게 보인다. 따라서, 상기 IPMP 툴을 정확히 기타의 IPMP 툴과 같이 초기 설정해서 호출해야 하고, 예를 들면, IPMP 툴 클라이언트와 IPMP 단말과의 사이의 인터페이스 정의는, 이 IPMP 툴 클라이언트가 동작하게 되어 있는 OD 또는 ESD 사이의 IPMP 기술자에 포함되어도 좋다.
Tool_Location_ID가 ObOOOOOlO인 경우, 이것은, IPMP 툴 매니저가 http 프로토콜에 의해서 특정의 IPMP 툴을 다운로드해야 하는 것을 의미한다. ObOOOOOll은, ftp 프로토콜을 사용해야 하는 것을 의미한다. ServerAddress(예를 들면, www.panasonic.com) 및 fullpath(예를 들면, /ipmptools/encryption/tool1.zip)는, 이 특정의 IPMP 툴을 검색하는 장소를 확실하게 정의한다. IPMP 툴 매니저가 http 또는 ftp 프로토콜을 실시해서 필요한 IPMP 툴을 검색하는 방법은, 본 발명의 응용 과제이다. 특정의 IPMP 툴을 검색하는 데에 사용 가능한 복수 종류의 프로토콜(https, ssl)이 있는 경우도 있다. ISO 예약 비트 범위 0000100--1000000은, 복수 종류의 프로토콜을 포함하도록 설계되어 있다.
IPMP 툴 제공자가 그 자체의 독점 프로토콜을 사용하고 싶은 경우에는, 비트 범위 1000001-1111111을 사용하면 좋다.
IsCompressed 비트는, 지정 툴이 압축되어 있는 것인가 아닌가의 플래그를 설정한다. 압축되어 있는 경우, IPMP 툴 매니저는, compressionMethod 란에 명시된 압축 방법에 따라서 상기 툴을 신장(伸張)할 필요가 있다. PC용 압축 방법은 다수 있고, 특히 PKZip, LHArc, ARJ, 및 ZOO가 있다. 매킨토시에서는, StuffIt, CompactPro 및 기타가 있다. 복수의 압축 방법을 IPMP에서 사용할 수 있도록 할 수도 있고, 또는 1개의 압축 방법을 디폴트로서 지정할 수도 있다.
IPMP_ToolES
Mpeg4 시스템의 데이터에 있어서, 본 발명에서는, 기본 스트림 간에(상기에서 제안한 IPMP 툴 클라이언트를 포함하는) 2진 IPMP 툴을 포함한다. 그 목적을 달성하기 위해서, 본 발명에서는, 기본 스트림에 대응하는 디코더 구성 기술자에 새로운 스트림 타입을 정의한다.
스트림 타입 "IPMPToolStream"을 이하와 같이, 제안한다. 0xOA-0x1F가 ISO 사용을 위해서 예약되어 있으므로, 이 스트림 타입에 할당되는 값을 0xOA로 설정한다. 따라서, Mpeg4 시스템 규격의 현재의 버전에서 정의된 스트림 타입 표를, 하기와 같이 변경한다.
(표 6)
IPMP Remote_Call_Mechanism
스트림 타입 값 스트림 타입 기술(記述)
0x00 금지
0x01 ObjectDescriptorStream (ISO/IEC 14496-1 참조)
0x02 ClockReferenceStream (ISO/IEC 14496-1 참조)
0x03 SceneDescriptionStream (ISO/IEC 14496-1 참조)
0x04 VisualStream
0x05 AudioStream
0x06 MPEG7Stream
0x07 IPMPStream (ISO/IEC 14496-1 참조)
0x08 ObjectContentInfoStream (ISO/IEC 14496-1 참조)
0x09 MPEGJStream
0x0A IPMPToolStream
0x0B - 0x1F ISO 사용에 예약
0x20 - 0X3F 이용자 전용
상기 IPMPToolStream을 복호하는 디코더는, IPMP 툴 매니저이다. 0x0A의 스트림 타입을 참조하는 경우에, IPMP 단말은, 구문 해석하는 IPMP 툴 매니저에 상기 기본 스트림을 인도한다. IPMPToolStream은, 초기 오브젝트ㆍ디스크립터 OD에 통상 배치되어 있다.
IPMP_ToolES의 구문(構文)
(수식 2)
class IPMP_ToolES
{
IPMP_Tool ipmp_tools[0 .. 255];
}
class IPMP_Tool
{
bit(128)IPMP_Tool_ID;
bit(8) Tool_Format_ID;
bit(1) isCompressed;
if (isCompressed)
{
bit(7) compressionMethod;
}
bit(1) isSigned;
if (isSigned)
{
bit(8) signature_Algorithm[];
bit(8) signature_Parameters[];
bit(1) IPMP_Tool_List_Signature[];
}
bit(16) Tool_Size;
bit(Tool_Size) Tool_Body;
}
IPMP_ToolES의 의미
IPMP_Too1_ID, Tool_Format_ID는, 상기에서 정의되어 있는 내용과 동일한 의미를 갖는다.
상기 기본 스트림에 포함된 IPMP_Tool은, IPMP_Tool의 보전성을 보증하는 데에 어떠한 특정의 서명 알고리즘을 이용해서 서명 가능하다.
상기 서명의 확인 후, IPMP 툴 매니저는, Tool_Size에 의해서 지정된 크기의 Tool_Body를 하드디스크 또는 물리적인 메모리에 적절하게 저장한다. 상기 단말 또는 메시지 라우터(router)는, 그것을 인식하고 있다.
상기 IPMPToolStream에 포함 가능한 IPMP 툴은, 제안한 IPMP 툴 클라이언트를 포함한다. 기본 스트림으로부터의 검색 및 IPMP 단말에 의한 초기 설정 후에, IPMP 툴 클라이언트는, 원격 IPMP 툴과 대화한다. 그러나 상기 단말에 있어서, 상기 IPMP 툴 클라이언트는, 고유한 IPMP_Tool_ID를 갖는 통상의 IPMP 툴과 별로 다르지 않다.
1.3 IPMP 툴 매니저
IPMP 툴 매니저는, 시스템의 디멀티플렉서의 전 또는 후에 위치할 수 있다. 그 기능성은, 콘텐츠 스트림 내에 있는 IPMP 툴 리스트를 구문 해석하는 것이다.
도 4에 나타내는 선도(線圖)는, IPMP 툴 매니저가 Mpeg4-IPMP 시스템에 구성된 예를 나타낸다.
IPMP 툴 매니저는, 다음 4개의 단계를 실행한다.
ㆍ단계 1: 입력 IPMP 데이터를, IPMP 툴 리스트를 취득하여 구문 해석한다. 상기 리스트가 없는 경우, 단계 4로 진행하고, 기타의 경우, 정규의 구문에 따라서 상기 IPMP 툴 리스트간의 IPMP 툴 정보를 구문 해석한다.
ㆍ단계 2: 모든 요구 IPMP 툴이 단말에 입수되는 경우, 단계 4로 진행한다.
ㆍ단계 3: IPMP 툴 정보에 의해서 지정된 필요한 IPMP 툴을 검색하고, 검색이 성공하지 않은 경우, 중지하고, 기타의 경우, 단계 4로 진행한다.
ㆍ단계 4: 전 IPMP 툴을 양호하게 취득한 후, 액세스 허가가 있는 경우, 이용 가능한 콘텐츠는, 데이터 버퍼에 흐르기 시작할 수 있게 된다.
콘텐츠 스트림을 수신할 때에, IPMP 툴 매니저는, 모든 콘텐츠 스트림에 관한 고유의 헤더인 IPMP 툴 리스트 패킷 플래그를 탐색함으로써, 상기 콘텐츠 스트림을 우선 조사한다. IPMP 툴 정보 패킷의 상기 플래그가 발견되지 않는 경우, 단 계 4로 점프한다.
제3의 단계에 있어서, IPMP 툴 매니저는, 위치 식별자 타입 ID 및 위치 식별자 상세를 조사함으로써, 각각의 IPMP 툴을 검색하고자 시도한다. 1개의 IPMP 툴에 대응하는 2개 이상의 위치 식별자가 있는 경우, 상기 IPMP 툴 매니저는, 우선 위치 식별자(1)를 이용해서 상기 IPMP 툴을 검색하려고 시도하고, 그것이 실패한 경우, 이어서 위치 식별자(2)를 이용해서 검색하고자 시도한다.
위치 식별자 타입이 「로컬」인 경우, IPMP 툴 매니저는, 지정된 IPMP 툴 명칭 또는 IPMP 툴 ID에 따라서 단말 자체 내를 탐색한다.
위치 식별자 타입이 「주변장치」인 경우, IPMP 툴 매니저는, 지정된 IPMP 툴 명칭 또는 IPMP 툴 ID에 따라서 모든 주변장치를 탐색한다.
위치 식별자 타입이 「원격-다운로드 가능」인 경우, IPMP 툴 매니저는, 지정된 원격 어드레스에 접속하고, 필요하면, 서로 수신 가능한 통신 채널을 IPMP 툴 매니저와 툴 제공자와의 사이에 설정한다.
위치 식별자 타입이 「원격-다운로드 불가능」인 경우, IPMP 툴 매니저는, 상기 원격 어드레스를 IPMP 시스템에 인도하는 것 뿐이다.
위치 식별자 타입이 「콘텐츠 스트림 내부」인 경우, IPMP 툴 매니저는, 툴 포맷 ID를 검사함으로써, 단말에 적합한 2진 포맷으로 상기 툴을 로드하고, 툴 기술자로서 저장된 툴 엔티티에 IPMP 툴 ID를 할당한다.
디멀티플렉서 인터페이스(304)의 다음에, 음성 디코더 버퍼(306), 영상 디코더 버퍼(307), IPMP 톨 디코더 버퍼(301), 오브젝트 디스크립터 디코더 버퍼(308), 2진 데이터 포 신(binary data for scene)(BIFS) 디코더 버퍼(309), IPMP 디코더 버퍼(310)가 포함된다. 2진 데이터 포 신은, 세그먼트화된 신(scene)의 배치 장소를 나타내는 데이터가 포함된다. 306, 307, 309의 출력인, 음성 신호, 영상 신호, BIFS 신호는 아직 암호화된 그대로의 상태이다. 메모리(302)에는 툴 A(하나, 또는 복수)가 각각의 단말에 미리 설치되어 있다.
음성 디코더 버퍼(306)는 제어 포인트(331)를 통해서 음성 복호(311)에 접속되고, 영상 디코더 버퍼(307)는 제어 포인트(332)를 통해서 영상 복호(312)에 접속되고, 오브젝트 디스크립터 디코더 버퍼(308)는, 그대로 오브젝트 디스크립터 복호 (313)에 접속되고, 2진 데이터 포 신(binary data for scene)(BIFS) 디코더 버퍼 (309)는 제어 포인트(333)를 통해서 BISF 복호(314)에 접속된다. 또한, IPMP 디코더 버퍼(310)는, IPMP 메시지 라우터(324)의 IPMP 엘리멘터리 스트림(325)에 접속된다. IPMP 엘리멘터리 스트림(325)에는 암호화된 스크램블 키가 포함되어 있다.
도면에서, 흑색 동그라미로 나타낸 제어 포인트(331∼339)는, IPMP 제어 포인트이고, 제어 포인트를 통과하는 데이터는, IPMP 시스템(324)에 있는 툴을 이용하여, 필요한 처리(디스크램블, 투과 정보 검출, 카피 가드 등)가 부가된다.
이 실시형태에서는, 제어 포인트(331, 332, 333)에서는 디스크램블이 실행된다. 디스크램블에 필요한 툴(소프트)은, IPMP 메시지 라우터(324), 단말-툴 메시지 인터페이스(321)를 통해서 IPMP 툴(1, 2, 또는 3)로부터 취득한다.
음성 복호(311)는, 제어 포인트(334)를 통해서 음성 콤포지터 버퍼(315)에 접속되고, 영상 복호(312)는, 제어 포인트(335)를 통해서 영상 콤포지터 버퍼(316) 에 접속되고, BIFS 복호(314)는, 제어 포인트(336)를 통해서 복호 BIFS(317)에 접속된다.
제어 포인트(334, 335, 336)에서는 투과 정보 검출이 실행된다. 투과 정보 검출에 필요한 툴(소프트)은, IPMP 메시지 라우터(324), 단말-툴 메시지 인터페이스(321)를 통해서 IPMP 툴(1, 2, 또는 3)로부터 취득한다. 예를 들면, IPMP 툴(2)은, 디스크램블에 필요한 툴이 포함되어 있고, IPMP 툴(3)은, 투과 정보 검출에 필요한 툴이 포함되어 있다.
음성 콤포지터 버퍼(315)는, 제어 포인트(337)를 통해서 합성기(318)에 접속되고, 영상 콤포지터 버퍼(316)는, 제어 포인트(338)를 통해서 합성기(318)에 접속되고, 복호 BIFS(317)는, 제어 포인트(339)와 BIFS 트리(319)를 통해서 합성기 (318)에 접속된다. 합성기(318)는 또한 출력인 렌더링(rendering)(320)에 접속된다.
제어 포인트(337, 338, 339)에서는 별개의 투과 정보 검출이나, 카피 가드 처리가 실행된다. 투과 정보 검출이나 카피 가드 처리에 필요한 툴(소프트)은, IPMP 메시지 라우터(324), 단말-툴 메시지 인터페이스(321)를 통해서 IPMP 툴(1, 2, 또는 3)로부터 취득한다.
IPMP 툴 매니저(300)는, IPMP 툴 리스트를 해석하는 해석부(350)와, IPMP 툴을 검색하는 검색부(351)가 있다. 오브젝트 디스크립터 디코더 버퍼(308)는, 그대로 오브젝트 디스크립터 복호(313)에 접속되고, 콘텐츠 스트림에 포함되는 오브젝트 디스크립터를 복호한다. 복호된 오브젝트 디스크립터는, IPMP 툴 매니저(300)에 보내어지고, 필요로 되는 툴이 존재하는 위치에 대해서 특정되어서, 그 툴을 취득하기 위한 데이터가 IPMP 툴 매니저(300)로부터 툴 메시지 인터페이스(321)에 전송된다. 툴 메시지 인터페이스(321)는, 특정된 툴이 메모리(302)에 있으면 그 툴을 IPMP 툴(2 또는 3)에 이동하여, 필요한 처리를 실행한다. 특정된 툴이 메모리(302)에 없는 경우는, 인터넷 등의 전송로를 통하여, 리모트(remote) 툴(360)에 액세스하여, 필요한 툴을 IPMP 툴(1)에 다운로드한다. 또한, 필요한 툴이 원격 IPMP 툴 B(362)에만 있고, 다운로드를 할 수 없는 경우는, 암호화된 데이터를 그대로, IPMP 툴 B의 로컬 클라이언트(364)를 통해서 원격 IPMP 툴 B(362)에 보내고, 원격 IPMP 툴 B(362)에서 해독한 데이터를 되돌려 보내도록 동작한다.
IPMP 툴 매니저 및 IPMP 툴 리스트를 포함하는 이 아키텍처는, 임의의 MPEG-n 시스템에 적용할 수 있고, 도 5는, IPMP 툴 매니저가 MPEG2-IPMP 시스템에 포함되는 경우를 나타낸다. 여기에 나타내는 예에서는, 오브젝트가 포함되지 않는다. PES로 표시된 흑색 동그라미로 나타내는 제어 포인트에서 디스크램블이나, 투과 정보 정보의 해독이 실행된다.
콘텐츠의 동일 부분에 대해서는, MPEG-n의 IPMP 시스템에 관한 일반적인 구문은, 다음과 같은 흐름으로 정의 가능하다.
(수식 3)
Class UserAuthentication( )
{
Class ReceivingContentStream( )
{
Class DemuxContent( )
{
Class IPMPToolsManagenent( )
{
Class ParseIPMPToolsInformation( ); //IPMP Tool
Management module, see 2.3 for details;
Class RetrieveIPMPTools( ); //IPMP
Tool Management module, see 2.3 for
details;
{
Class ContentConsumptionStart( );
}
}
}
}
}
2. 이용자 권리 인증으로 지정되어야 하는 출력 메시지
이용자 권리 인증(RA) 방법을 표준화하는 것은 권장되고 있지 않지만, 인증 결과 또는 RA용 출력 메시지는, 기준을 정하거나, 또는 미리 정할 필요가 있다. 이 메시지는, 보호 콘텐츠의 허가 사용을 위해서 MPEG-n의 IPMP 시스템을 통과할 필요가 있다.
우리는, 인증 출력 메시지를 표준 규격으로서 설정할 것을 제안하며, 그 표준은, 하기와 같이 적어도 3개의 필드로 구성되어야 한다.
(표 7)
유효성 (진(眞)/위(僞)) 라이선스 이용 룰(rule) 공백

이용자 권리 인증(RA)의 기능에 관한 구문은, 다음과 같이 리스트된다.
(수식 4)
Class RightAuthenticationMessages( )
{
bit(1) Valid;
if(valid)
{
Class RetrieveLicence( );
Bit(16) Licence;
Class UsageRule( );
Bit(length) UsageRule;
}
}
타당성은, 이용자(단말)가 정당한가 아닌가를 나타내고, 그 결과는 단순한 진위(眞僞)의 표시라도 좋다. 사용 규칙은, 콘텐츠에 액세스하는 이용자 권리의 상세를 포함해야 한다(예를 들면, 1회 또는 복수회의 플레이). 라이선스는, 이하에 설명한다.
IPMP 데이터에 나타내는 바와 같이(예를 들면, Mpeg4-IPMP의 IPMP-ES), 콘텐츠에 스크램블이 걸리고, 그 스크램블 키를 콘텐츠 스트림 내에 전송하는 것이 공지되어 있다. 예를 들면, IPMP-ES에는 암호화된 스크램블 키가 들어 있다. 더욱 높은 보안을 확보하기 위해서, 상기 스크램블 키는, 2층의 보안을 달성하도록 추가로 암호화 가능하다. 스크램블이 걸려 있는 콘텐츠용의 스크램블 키를 암호 해독하는 데에 사용되는 제2층의 키는, 「라이선스」라고 한다. 「라이선스」는, 보호 콘텐츠를 소비하는 최소 요건이다. 라이선스는, 비기준 이용자 인증 처리 동안에 안전한 채널을 통해서 라이선스 서버로부터 검색되어야 한다.
상기 인증 출력 메시지는, 예로서 IPMP 단말이 어떠한 종류의 이용자 인증 방법을 사용해도, 이용자 인증 중에 제공되어서 출력되어야 한다.
여기서 사용 규칙은, 소비 타입 및 규칙용의 2진 포맷에 관한 표 4에서 또한 정의 가능하다. 대신에, 상기 사용 규칙을, 2진 포맷이 아니고 XML 포맷으로서 정의해서 대화할 수도 있다.
(표 8)
2진 포맷으로써 정의된 소비 타입 및 규칙
소비 타입 8비트 소비 규칙 타입 4비트+변수
액세스 00000000 액세스 콘텐츠
플레이(스트리밍) 00000001 스트리밍 방식 재생
저장 및 플레이 00000010 저장 및 재생
0001 + 플레이 카운트
0010 + 플레이 시간
0011 + 플레이 기간
0100 + 카피 카운트
0101 + 이동 카운트
예약
신 그래프(scene graph) 편집 00000010
시간 라인 편집 00000100
텍스트 또는 기타의 추가
예약

도 6에 나타내는 선도는, MPEG-4의 IPMP 시스템과 함께 작동하는 이용자 인증 모듈을 나타내고, 이용자 인증 실행 후에 콘텐츠 에이전트를 요구해서 라이선스를 이용자에게 발행한다. 이용자 ID 정보는, IPMP 시스템 내에 포함되어 있다. 이 이용자 ID 정보가 표준에서는 정의하지 않는 이용자 인증에 있어서 이용자 ID의 조회(照會)가 실행된다. 이 조회에는 예를 들면 난수(亂數)가 이용된다. 조회가 성립하면, 올바른 이용자로서 서버에 대하여 이용자 등록을 실행한다.
도 7의 선도에 나타내는 바와 같이, 2중 보안 구조는, MPEG-n의 IPMP에 관해서 실현 가능하다. 서버로부터 전송되어 온 라이선스 키는, IPMP 툴 보존부에 전송된다. 또한, 콘텐츠 스트림에 포함되는 암호화된 스크램블 키가 점선으로서 나타내는 경로를 거쳐서, IPMP 툴 보존부에 보내어진다. IPMP 툴 보존부에서는, 라이선스 키를 이용해서 스크램블 키의 해독을 실행한다. 해독된 스크램블 키는, 스크램블 키 보존부에서 보존되어서, IPMP 툴의 동작에 사용된다. 이와 같이, IPMP 툴은, 스 크램블 키와 라이선스 키에 의한 2중의 보안이 걸려져 있다.
3. IPMP 툴용의 일반적인 인터페이스
데이터 암호화/암호 해독, 투과 정보, 및 결합 투과 정보 및 암호 해독을 사용하는 전형적인 용도 시나리오를 우리가 설정한 경우, 범용의 인터페이스를 정의할 수 있다.
데이터 검출 인터페이스
블록 베이스 데이터 암호화/암호 해독 툴은, 독자적인 IPMP 시스템에 있어서 더욱 중요하게 더욱 널리 사용되고, 특히 그 알고리즘은 어떠한 종류의 수렴성을 갖는 것이 공지되어 있다. 따라서, 그 인터페이스를 잘 지정해서 데이터 암호화 및 암호 해독 기법의 대부분을 나타낼 수 있고, 상기 기법의 일부는 알려져 있지 않지만, 그 인터페이스는 예측 범위 내에 있다.
데이터 암호화/암호 해독의 대칭 알고리즘용의 NESSIE 인터페이스
모든 액세스 유닛의 블록 베이스 데이터 암호화/암호 해독용의 범용 인터페이스는, IPMP 시스템으로써 정의 가능하다. IPMP 툴 제공자와 IPMP 단말 실시자의 양쪽은, 동일한 인터페이스에 따라서, 툴 제공자측에서 툴을 2진 포맷으로 컴파일하여, IPMP 단말측에 올바른 2진 툴을 전달할 수 있다. 하기의 인터페이스는, NESSIE(서명, 보전성 및 암호화에 관한 신 유럽 방식)에 의해서 정의되어 있고, 우리는, 블록 데이터 암호화/암호 해독용으로 우리가 정의한 IPMP 시스템으로써 상기 인터페이스에 적합시킬 수 있다. 상기 인터페이스는, 하기와 같이 나타내어지고, 3종류, NESSIEkeysetup( ), NESSIEencrypt( ) 및 NESSIEdecrypt( )로 구성된다.
void NESSIEkeysetup(const unsigned char*const key, struct NESSIEstruct
*const structpointer);
void NESSIEencrypt(const struct NESSIEstruct*const structpointer,
const unsigned char*const plaintext, unsigned char*const
ciphertext);
void NESSIEdecrypt(const struct NESSIEstruct*const structpointer,
const unsigned char*const ciphertext, unsigned char*const
plaintext);
투과 정보 인터페이스
투과 정보를 사용하는 목적에 관해서, 4개의 주요 분야가 있다.
ㆍ저작권 보호--미디어 데이터의 정당한 소유권을 결정한다.
ㆍ위법 카피 추적--위법 제조 카피를 감시하여 추적한다.
ㆍ카피 보호--미디어의 허가되지 않은 카피를 금지한다.
ㆍ화상 인증--데이터의 개조를 검출한다.
상기 분야의 각각을 분석함으로써, 다음과 같은 것을 알 수 있다. 저작권 보호의 경우, 부호화측에서 매입(埋入)을 실행하고, 오프 라인으로 검출을 실행한다. 여기서는, 기타의 실시간 암호 해독 및 복호 모듈과 함께 IPMP 단말에서 실시간 실시될 필요는 없다.
카피 보호의 경우에는, 투과 정보의 사용보다도 권리 인증 툴쪽이 훨씬 복잡한 사용 규칙을 제공할 수 있으므로, 더욱 잘 처리할 수 있다.
콘텐츠 암호화 및 복호를 제어하는 투과 정보를 사용하는 경우, 투과 정보 검출기는, IPMP 단말에서 지정해서 실장할 필요가 있다.
예로서 투과 정보 카피 제어 매입 및 검출에 어떠한 알고리즘을 사용해도, 투과 정보 검출용의 범용 인터페이스는, 다음과 같이 준거 IPMP 단말에 관해서 지정 가능하다.
PSL 투과 정보 검출(Unsigned Char* Input, Unsigned Char* WatermarkInfor)
카피 제어를 콘텐츠 제공자/디스트리뷰터측에서 채워 넣고, 암호화 및 복호 후에 카피 제어 검출을 실행하므로, 상기 인터페이스를, IPMP 단말에서 지정해서 실장함으로써, 상이한 투과 정보 검출 기법도 IPMP 단말에서 사용 가능하게 할 필요가 있다.
화상 인증에 관해서, 이 경우는 저작권 보호와 마찬가지이다. 이것은, 오프 라인으로 실행할 수 있다.
위법 카피 추적용에는, 기타의 시스템에서 널리 제안되어 사용되고 있는 콘텐츠 추적의 목적으로 이용자 ID 또는 단말 ID를 매입하는 투과 정보 매입은 우수한 기능이다. 또한, 기본적인 특징으로서 투과 정보 매입을 사용하는 것을 여기서 제안하여, IPMP 시스템에 저장되거나 재생 용도로서 콘텐츠가 위법으로 복사되는 것을 또한 방지한다. 여기서 IPMP 시스템에서는, 널리 알려져 있는 바와 같이, 처음에는 보호가 데이터 암호화/암호 해독을 통해서 실행되고, 위법 카피에 관한 추적이 투과 정보 매입을 통해서 실행된다.
예로서 투과 정보 매입, 공간 정의 영역 또는 주파수 정의 영역에 어떠한 기 술을 사용해도, 예로서 이것들을 어떠한 분야, 영상 또는 음성에 사용해도, 입력 메시지 및 출력 메시지는 동일해야 하고, 그것은 다음과 같다.
PSLWatermarkEmbedding (Unsigned Char* Input, Unsigned Char*
WatermarkInfor, Unsigned Char* Output)
이 경우, 투과 정보의 검출을 오프 라인으로 실행할 수 있다.
어떠한 종류의 알고리즘이 이용자 ID 또는 단말 ID의 투과 정보 매입에 사용되는가에 관해서는, IPMP 단말 실시자의 책임이다. 이 경우, 준거 IPMP 단말이 투과 정보 매입 기능을 실시하여 ID 또는 단말 ID를 매입하고 위법 카피를 추적할 필요가 있는 IPMP 시스템에서 요건을 설정하는 한, 상기 인터페이스는, IPMP 시스템에서 지정할 필요조차도 없다.
IPMP 단말에서 사용된 독립형 투과 정보에 관한 결론에서는, 범용 인터페이스는 투과 정보를 이용한 카피 제어 검출의 경우에만 정의된다.
결합 투과 정보 검출 및 데이터 암호 해독
콘텐츠에 매입되는 암호 해독용 키는, 키 자체를 처리함으로써 콘텐츠를 보호하는 우수한 방법이다. 이러한 경우, 2개의 인터페이스를 다음과 같이 지정 가능하다.
PSLWatermarkExtraction(Unsigned Char* Input, Unsigned Char* Key)
PSLDecryption(Unsigned Char* Input, Unsigned Char* Key, Unsigned Char*
Output)
처리는, 하기와 같다.
AU용 콘텐츠 복호 →키 추출 →상기의 AU에서 추출된 키를 이용한 다음의 AU 암호 해독, 순환 규칙으로써 실행 가능하다.
4. 부분적 데이터 암호 해독
도 8에서는, 데이터 암호화 및 암호 해독을 비트 스트림 전체가 아니고 비트에 적용해서 선택할 수 있는 것을 나타내고 있다.
도 8(a)에서는, 인코더를 갖는 부분적 암호화를 나타내고 있고, 콘텐츠 제공자측에서 부호화 처리중에 중요한 비트에 관해서 암호화를 선택적으로 실행할 수 있는 것을 설명한다.
도 8(a)에 있어서, 모듈(8.1)은, MPEG2, MPEG4 등에 따라서 음성 또는 영상 등의 원래의 입력원을 스트림으로 부호화하는 인코더이다. 모듈(8.2)에서는, 선택된 비트 또는 정보가 기타의 비트 중에서 필수 또는 중요하기 때문에, 이들 비트 또는 정보를 암호화하여 콘텐츠를 보호한다. 8.0은 스위치이고, 8.8은 스위치(8.0)를 절환하는 선택기이다. 도 8(a)에서는, 선택기(8.8)는 미리 결정된 주기 또는 시간 구분에 의해서 절환 신호를 출력한다. 이에 따라서, 인코더의 출력은 결정된 시간 구분에 있어서 암호화가 실행되고, 기타의 시간은 암호화가 되지 않는다.
도 8(b)에서는, 인코더에서 인코드된 데이터 중, 암호화를 중요한 비트에 관해서 선택적으로 실행할 수 있는 예를 나타낸다. 또한, 인코더(8.1)는 콘텐츠 디스트리뷰터 중에 있는 경우만이 아니고, 콘텐츠 디스트리뷰터의 밖에 있는 경우도 포함한다. 후자의 경우이면, 콘텐츠 디스트리뷰터는, 인코드된 스트림을 수신하여, 그것을 배신(配信)한다. 이것은, 콘텐츠 디스트리뷰터가 기존 또는 그것들 자체의 암호화 툴을 이용해서 부호화 콘텐츠를 보호하고 싶은 경우이다.
도 8(b)에 있어서, 모듈(8.3)은, 모듈(8.4)에서 실행되는 암호화용의 중요한 비트를 구문 해석해서 선택하는 선택기를 갖는 부분적 디코더이다. 인코드된 스트림은, 그대로 스위치(8.0)에 보내어지는 동시에, 부분적 디코더 및 선택기(8.3)에도 보내어진다. 부분적 디코더 및 선택기(8.3)는, 인코드된 데이터를 디코드하고, 중요한 데이터 부분, 예를 들면 영상 신호의 경우, I-픽처 부분이나 P-픽처 부분을 검출한다. 그리고, 중요한 데이터 부분이 검출되었을 때에, 그 부분에 대응하는 인코드 스트림의 구분을 암호기(8.4)에 보내도록 스위치(8.0)를 동작시킨다. 이 때문에, 인코더(8.1)로부터의 분기점과 스위치(8.0)와의 사이에 필요한 지연부(遲延部)를 설치해도 좋다. 부분적 디코더 및 선택기(8.3)는, 입력되는 인코드된 신호를 부분적으로 디코드해도 좋고, 전체를 디코드해도 좋다.
도 8(c)는, 디코드측의 구성을 나타낸다. 여기에는, 부분적 암호 해독을 나타내고 있다. IPMP 단말측에서 생성되는, 부분적 암호화 스트림의 암호 해독을 선택적으로 실행하는 실시형태를 나타낸다.
도 8(c)에서, 모듈(8.5)은, 모듈(8.6)에서 실행되는 암호 해독용의 비트를 구문 해석해서 검출하는 검출기를 갖는 부분적 디코더이다. 동시에, 복호된 음 또는 화상은, 모듈(8.7)로부터 출력된다. 검출기(8.5)는, 디코드를 시도함으로써, 디코드가 가능한 부분과 불가능한 부분을 검출한다. 불가능한 부분에 대해서는, 그 부분에 상당하는 스트림은 암호화되어 있는 구분이라고 판단하고, 암호화되어 있는 구분을 검출한다. 스트림 내, 암호화되어 있는 구분은 암호 해독기(8.6)에 보내져 서, 암호가 해독된다.
5. IPMP 시스템용의 가능한 프로파일
상이한 애플리케이션, 상이한 단말, 상이한 벤더는, IPMP 시스템에 관한 상이한 요건을 구비하여, 다만 1개의 기준으로써 전부를 취급하는 것은 곤란하다. 기본적으로, 이 과제는, IPMP 툴이 사전 로드될 것인가, 또는 다운로드 가능한 것인가에 의존한다. 단순한 하드웨어 실현에 관해서는, 많은 경우가 Java 가상 컴퓨터를 구비하고 있으므로 어느 특정의 툴이 다운로드 가능한 세트 톱 박스의 새로운 플랫폼이나 모바일 장치에 의해서 조차도 많은 경우, 대부분의 툴은 사전 로드되거나, 또는 포함된다.
복잡함이 적은 실시를 요구하는 경우에는, 어느 모바일 또는 포터블 단말은 사전 부호화 IPMP 툴을 가질 필요가 있다. PC 애플리케이션은 매우 융통성이 있고, 툴은, 다운로드 가능 또는 사전 부호화되어 있어도 좋다.
IPMP 툴을 다운로드할 수 있는 경우, 다운로드된 IPMP 툴의 인터페이스도, 정의될 필요가 있다. 메시지 인터페이스는, 미지(未知) 또는 전용 IPMP 툴을 처리하는 IPMP 단말에 높은 유연 구조를 부여하는 우수한 해결책이지만, IPMP 단말에 대하여 더욱 복잡한 실장을 요구한다.
3개의 프로파일을 지정하는 경우, 표 9에 나타내는 바와 같이 단말 기능에 따라서 3개의 경우를 취급한다. 즉, 고정 IPMP 툴용의 단순 프로파일, 유연 IPMP 툴 및 고정 인터페이스용의 코어 프로파일, 및 유연 IPMP 툴 및 유연 인터페이스용의 고 프로파일의 3개이다.
(표 9)
상이한 단말용의 3개의 프로파일
프로파일 IPMP 툴 취득
사전 부호화 다운로드 완료
단순 프로파일 고정 IPMP 툴 있음 없음
코어 프로파일 유연 IPMP 툴 및 고정 인터페이스 있음 있음
고 프로파일 유연 IPMP 툴 및 인터페이스 있음 있음, 더욱 많은 툴을 지원할 수 있다.

툴이 고정되는 경우는, 표준 방법으로서 권장되는 IPMP 툴의 종류를 정의해서 제조자가 단말에 실장 가능하게 할 필요가 있다. 이 경우, 인터페이스는, IPMP 단말 실장자에 의해서 결정된다.
툴은 고정되지 않지만 인터페이스가 고정되는 경우에 관해서, 표준 방법으로서 이종(異種)의 IPMP 툴에 관한 몇 개의 범용 인터페이스를 지정할 필요가 있다.
툴과 인터페이스의 양쪽이 고정되지 않는 경우에 관해서, 메시지 인터페이스를 상세히 지정해서 표준 방법으로서 동작을 통지할 필요가 있다.
이 발명은, IPMP 툴 리스트를 구문 해석해서 IPMP 툴을 취득하는 IPMP 툴 매니저 모듈과 함께 콘텐츠 스트림 전의 IPMP 툴 리스트 패킷을 도입함으로써, 이종의 IPMP 시스템에 의해서 동일한 보호 콘텐츠를 재생하는 과제를 해결한다. IPMP 툴 포맷 ID를 지정함으로써, 상이한 포맷의 IPMP 툴을 다운로드해서 IPMP 단말에 일치시킬 수 있다. 또한, 3개의 주요한 IPMP 툴용의 일반적인 툴 인터페이스도, 이 발명에서 지정해서 IPMP 시스템을 완전하게 한다.
2층 구조는, 더욱 높은 보안을 부여할 뿐만 아니라, 상이한 이용자 인증 방법용의 출력 구조도 고정해서, 단말 호환성을 갖게 한다. 이러한 구조에서는, 이용자 인증을 상이한 벤더에 관해서 상이한 방법으로써 실시하여, 상호 운용성을 확보할 수 있다.
상이한 프로파일은, IPMP 툴을 취득해서 사용하는 단말 복잡성 및 유연성을 고려하여 정의되고, 상이한 단말 및 상이한 IPMP 툴 벤더에 관해서 광범위한 적용을 부여하면서 동일한 규준(規準)을 사용하는 것을 가능하게 한다.
도 9는, 상이한 실시의 일례에 있어서의 저작권 보호 시스템의 구성도이다. 도 9에 있어서, 1은 제공자, 2는 이용자 단말, 3은 네트워크이고, 제공자(1)와 이용자 단말(2)을 접속하고 있다. 제공자(1)는, 암호화 콘텐츠(11)와, 그 해독 키(12), 및, 저작권 보호 툴의 하나인 해독 모듈(13)과, 저작권 보호 정보의 하나인 콘텐츠의 이용 규칙(14)과, 그 이용 규칙을 관리하는 저작권 보호 툴의 하나인 이용 규칙 관리 모듈(15)을 구비하고, 이용자 단말(2)은, 초기 상태로서 아무 것도 구비하고 있지 않다.
이상과 같이 구성된 본 발명의 하나의 실시예에 있어서의 저작권 보호(IPMP) 시스템에 있어서, 저작권 보호 시스템을 갱신하고, 암호화 콘텐츠를 이용 규칙에 따라서 해독, 재생하는 방법을 이하에 설명한다.
도 10은, 본 발명의 실시예의 저작권 보호 시스템에 있어서, 제공자와 이용자 단말의 사이에서 교환하는 메시지의 흐름을 나타내는 도면이다.
도 11은, 메시지의 구체예이고, 각각의 메시지는, 「=」 기호의 좌변에 나타 내는 미리 등록되어 있는 메시지 항목 이름과, 「=」에 후속하는 메시지 항목의 값(데이터)의 조합으로서 구성된다.
우선, 이용자 단말(2)은, 시청하고 싶은 콘텐츠를 보유한 제공자에 이용자 등록을 해서 필요한 저작권 보호(IPMP) 툴을 입수하기 위하여, 메시지 1을 제공자 (1)에게 보낸다. 메시지 1은, 메시지 항목으로서, 메시지 ID(식별자), 이용자 이름, 지불 방법, 및 이용자 단말 정보로 구성된다. 각각의 메시지 항목의 값은 이하와 같다. 메시지 1의 목적은, 이용자 등록이므로, 메시지 ID의 값은 「이용자 등록」을 나타내는 값이고, 등록에 필요한 이용자 이름의 값은, 「마츠시타 타로」이다. 또한, 시청하는 콘텐츠의 대가의 지불 방법의 값은, 이용자의 크레디트 카드의 종류, 번호, 유효 기한을 포함하는 암호화된 「크레디트 카드 번호」이다. 이용자 단말 정보의 값은, Windows OS 상에서 동작하는 컴퓨터이므로 「Windows OS」이다.
이들 정보는, 네트워크(3)의 입구에서 또한 암호화되고, 출구에서 그 암호가 해독된다.
암호의 방법은, 공개 키 암호 방식이나 공통 키 암호 방식이 이용되지만, 이 내용은, 예를 들면, "오카모토외 「현대 암호」 산업도서, 1997년"에 상세히 기재되어 있다.
메시지 1을 수신한 제공자는, 이용자 이름, 해독된 크레디트 번호를 기록하고, 이용자 ID 「XYZ」를 이용자 단말(2)에 할당하여, 이용자 단말(2)에 메시지 2를 다시 보낸다. 메시지 2는, 이용자가 콘텐츠를 시청하기 위해서 필요한 초기 설정을 실행하는 것으로서, 메시지 ID의 값은, 「초기 설정」이고, 이용자 ID의 값 「XYZ」와, 제공자가 보유하고 있는 콘텐츠의 일람표인 「콘텐츠 리스트」를 IPMP 정보의 값으로서 포함하고, 또한, 암호화 콘텐츠를 해독하기 위한 해독 모듈의 식별자(해독 모듈 ID)와, 그 존재하는 장소(로케이션)를, IPMP 툴 정보의 값으로서 포함한다. 또한, 콘텐츠를 이용 규칙에 따라서 시청하게 하기 위해서, 이용 규칙 관리 모듈의 식별자(이용 규칙 관리 모듈 ID)와 그 존재하는 장소(로케이션)를 IPMP 툴 정보의 값으로서 포함한다. 이 때, 해독 모듈과 이용 규칙 관리 모듈은, Windows 컴퓨터인 이용자 단말에 직접 구성되는 것이 선택된다. 메시지 2도, 이후의 메시지도, 네트워크(3)를 통과할 때에 암호화되는 것은, 말할 필요도 없다.
메시지 2를 수신한 이용자 단말은, 해독 모듈 ID와 그 로케이션에서 지정되는 해독 모듈과, 마찬가지로 이용 규칙 관리 모듈 ID와 그 로케이션에서 지정되는 이용 규칙 관리 모듈을, 파일 전송 등의 수단으로서 입수하고, 자체에 저작권 보호 툴(IPMP 툴)로서 포함한다. 이 파일 전송도 또한, 암호화된 파일 전송이고, 기타의 이용자 단말은 암호 해독의 키를 가지고 있지 않기 때문에, 모듈을 방수(傍受)했다고 해도 해독할 수 없다.
이어서, 이용자 단말(2)은, 콘텐츠 리스트로부터 시청을 희망하는 콘텐츠 1을 선택하고, 콘텐츠 요구를 메시지 ID로서 갖는 메시지 3을 제공자에게 전송한다. 메시지 3은, 또한, 이용자 ID로서 값 「XYZ」를 포함하고, 콘텐츠 정보로서 요구하는 콘텐츠 1의 ID를 포함한다.
이것을 수신한 제공자(1)는, 요구된 콘텐츠 1의 대가를, 이용자의 크레디트 카드 번호를 사용하여 크레디트 카드 회사에 청구한 후, 암호화 콘텐츠 1을 이용자 단말(2)에 보내기 위해서, 메시지 4를 다시 보낸다. 메시지 4는, 메시지 ID와, 2개의 저작권 보호(IPMP) 정보, 및 콘텐츠 정보로 구성된다. 메시지 ID의 값은 「콘텐츠 배신(配信)」이고, IPMP 정보의 값은, 요구된 콘텐츠 1의 이용 규칙 1과, 암호화된 콘텐츠 1의 암호를 해독하기 위한 해독 키 1이다. 콘텐츠 정보는, 요구된 암호화 콘텐츠 1 그 자체이다. 해독 키 1은, 공개 키 암호 방식으로 암호화되어서 이용자 단말(2)에 전송되므로, 이 메시지 4를 제3자가 방수해도 해독 키의 암호를 해독할 수 없고, 콘텐츠의 누설은 일어나지 않는다.
메시지 4를 수신한 이용자 단말(2)에서는, 조금 전에 구성한 이용 규칙 관리 모듈(25)이, 이용 규칙 1을 확인하면서, 해독 모듈(23)을 제어하고, 해독 모듈(23)은, 해독 키 1을 사용하여, 암호화 콘텐츠 1을 해독하고, 해독된 콘텐츠 1을 표시 출력한다. 해독 모듈(23)이 암호화 콘텐츠 1의 암호를 해독하는 동작은, 공통 키 암호 방식이고, 상기의 문헌에 상세하게 설명되어 있다.
이어서, 도 12에 나타내는 이용 규칙 1의 하나의 실시예에 따라서, 암호화 콘텐츠 1의 해독을 실행하는 해독 모듈(23)을 제어하는 이용 규칙 관리 모듈(25)의 동작을, 도 13의 흐름도를 이용해서 이하에 설명한다.
우선, 이용 규칙 관리 모듈(25)은, 이용 규칙 1의 제1행을 조사하여, 이 콘텐츠가 이용 가능 기간 내에 들어 있는가 아닌가를, 이용자 단말이 구비하고 있는 시계로써 확인하고, 들어 있지 않으면, 처리를 종료한다.
들어 있으면 이어서, 이용자에게 이 콘텐츠를 별도의 메모리에 이동할 것인가 아닌가를 확인하고, 이동하는 경우는, 이용 규칙 1 내의 이동 가능 회수를 조사 하여, 이 값이 0보다 크면, 이용자가 지정하는 메모리에 콘텐츠를 이동하고, 이동 가능 회수를 1만큼 감한다.
이어서, 이용자에게 이 콘텐츠의 카피를 만들 것인가 아닌가를 확인하고, 만드는 경우는, 이용 규칙 1 내의 카피 가능 회수를 조사하여, 이 값이 0보다 크면, 이용자가 지정하는 메모리에 콘텐츠와 그 이용 규칙을 복사하고, 카피 가능 회수를 1만큼 감한다. 카피 대상 콘텐츠의 카피 가능 회수는, 처리의 간단화를 위해서 0으로 하지만, 총 카피 회수가 초기의 카피 가능 회수를 초과하지 않도록 제어해도 좋다.
이어서, 이용자에게 이 콘텐츠를 재생할 것인가 아닌가를 확인하고, 재생하는 경우는, 이용 규칙 1 내의 재생 가능 회수를 조사하여, 이 값이 0보다 크면, 해독 모듈(23)에 콘텐츠의 해독ㆍ표시 출력을 지령한다.
지령을 받은 해독 모듈(23)은, 콘텐츠 1의 암호 해독을 실행하여 그 결과를 표시 출력하는 것은 상기와 같다.
이어서, 이용 규칙 관리 모듈(25)은, 재생 종료를 검출하고, 그때까지 재생한 시간이 무료 재생 시간을 초과했는가 아닌가를 조사하여, 초과한 경우는, 재생 가능 회수를 1만큼 감하고 종료한다.
이상 설명한 이용 규칙 관리 모듈(25)에 의한 이용 규칙 1의 관리에 따라서, 제공자(1)가 의도한 회수의 재생만이 실행된다. 동시에, 카피 회수나, 이동 회수도 제공자의 의도대로 관리된다.
또한, 본 실시예에서는, 메시지는, 미리 결정된 메시지 항목과 「=」로써 연 결된 그 항목의 값(데이터)과의 조합으로서 구성되어 있지만, 메시지의 값의 의미를 알 수 있는 방법이면 무엇이라도 좋고, 예를 들면, 메시지 중의 비트의 위치에 미리 결정된 의미를 할당하는 방법이라도 좋다.
이상과 같은 구성 및 방법에 의해서, 본 발명의 갱신 가능한 저작권 보호 시스템에서는, 제공자로부터 이용자 단말에 전송되는 메시지를 이용자 단말이 해독함으로써, 저작권 보호 모듈의 갱신과, 제공자가 부여하는 이용 규칙에 따른 콘텐츠의 시청이 가능하게 된다.
즉, 메시지 중에 모듈 ID가 존재하는가 아닌가로써, 모듈의 갱신을 실행할 것인가 아닌가를 판정할 수 있고, 모듈 ID가 존재하는 경우는 로케이션의 값으로써, 어디에 모듈이 있는가를 알 수 있고, 모듈의 다운로드가 가능하게 된다.
또한, 메시지 항목 이름이 미리 결정되어 있으므로, 이 메시지 항목 이름을 탐색함으로써, 메시지 항목의 값을 얻을 수 있으므로, 메시지 항목과 그 값의 조합은 메시지 중에 어떠한 순서로 들어가 있어도 좋다.
또한, 상기와 같이, 제공자(1)는, 메시지 1에 의해서 이용자 단말(2)의 OS의 종류를 알고, 그 이용자 단말(2)에 적합한 저작권 보호 모듈(1)을 선택하여, 이용자 단말(2)에 다운로드함으로써, 이용자 단말(2)은, 가상 컴퓨터를 실장할 필요는 없다.

Claims (40)

  1. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하고 있는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치에 있어서,
    부호화 기술을 이용해서 콘텐츠를 콘텐츠 스트림으로 부호화하는 수단과,
    데이터 암호화 툴을 이용해서 해당 부호화 콘텐츠 스트림을 암호화하는 수단과,
    투과 정보 툴을 이용해서 해당 콘텐츠에 투과 정보를 매입하는 수단과,
    상기 단계에서 이용된 해당 콘텐츠에 관한 콘텐츠 ID 및 IPMP(지적소유권 관리 보호) 툴 리스트(IPMP 툴 정보)를 작성하는 수단과,
    각각의 콘텐츠 스트림의 헤더로서 포함되어야 하는 IPMP 툴 리스트 플래그를 작성하는 수단과,
    IPMP 툴 리스트 플래그, 이어서 IPMP 툴 리스트, 콘텐츠 ID 및 실제의 부호화 콘텐츠 스트림을 포함하는 콘텐츠 스트림을 구성하는 수단을 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  2. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치에 있어서,
    부호화 기술을 이용해서 콘텐츠를 콘텐츠 스트림으로 부호화하는 수단과,
    데이터 암호화 툴 또는 기타의 툴을 이용해서 해당 부호화 콘텐츠 스트림을 암호화하는 수단과,
    상기 단계에서 이용된 해당 콘텐츠에 관한 콘텐츠 ID 및 IPMP(지적소유권 관리 보호) 툴 리스트(IPMP 툴 정보)를 작성하는 수단과,
    각각의 콘텐츠 스트림의 헤더로서 포함되어야 하는 IPMP 툴 리스트 플래그를 작성하는 수단과,
    IPMP 툴 리스트 플래그, 이어서 IPMP 툴 리스트, 콘텐츠 ID 및 실제의 부호화 콘텐츠 스트림을 포함하는 콘텐츠 스트림을 구성하는 수단을 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  3. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치에 있어서,
    부호화 기술을 이용해서 콘텐츠를 콘텐츠 스트림으로 부호화하는 수단과,
    암호화 키를 갖는 암호화 툴 또는 기타의 툴을 이용해서 해당 콘텐츠 스트림을 암호화하는 수단과,
    더욱 높은 보안을 위해서, 별도의 암호화 키를 갖는 임의의 암호화 툴을 이용해서 해당 암호화 키를 암호화하는 수단과,
    해당 콘텐츠 스트림과 동일한 스트림에 포함된 IPMP 정보에 상기 해당 암호화된 키를 매입하는 수단과,
    상기 단계에서 사용된 해당 콘텐츠에 관한 콘텐츠 ID 및 IPMP(지적소유권 관리 보호) 툴 리스트(IPMP 툴 정보)를 작성하는 수단과,
    각각의 콘텐츠 스트림의 헤더로서 포함되어야 하는 IPMP 툴 리스트 플래그를 작성하는 수단과,
    IPMP 툴 리스트 플래그, 이어서 IPMP 툴 리스트, 콘텐츠 ID 및 실제의 부호화 콘텐츠 스트림을 포함하는 콘텐츠 스트림을 구성하는 수단을 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 해당 콘텐츠에 관한 콘텐츠 ID 및 IPMP 툴 리스트를 작성하도록,
    IPMP 툴 ID를 각각의 콘텐츠에 할당하여, 어떠한 툴을 데이터 보호에 사용할 것인가를 표시하는 수단과,
    위치 타입 ID를 각각의 IPMP 툴에 할당하여, 이 IPMP 툴이 입수 가능한 위치의 타입을 통지하는 수단과,
    포맷 ID를 할당하여, 다운로드된 IPMP 툴 포맷을 표시해서, 준거 IPMP 단말이 그것들의 플랫폼에 따라서 선택 및 검색하는 것을 가능하게 하는 수단과,
    해당 IPMP 툴의 위치를 표시하여, 단말이 해당 IPMP 툴을 해당 위치로부터 취득하는 것을 가능하게 하는 수단을 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  5. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치에 있어서,
    IPMP 단말의 IPMP 툴 매니저로써 콘텐츠 스트림 내를 구문 해석하는 수단과,
    IPMP 툴 리스트 플래그, 콘텐츠 ID 및 IPMP 툴 리스트를 해석하는 수단과,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하는 수단을 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  6. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치에 있어서,
    IPMP 단말의 IPMP 툴 매니저로써 콘텐츠 스트림 내를 구문 해석하는 수단과,
    IPMP 툴 리스트 플래그, 콘텐츠 ID 및 IPMP 툴 리스트를 해석하는 수단과,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하는 수단과,
    요구를 콘텐츠 디스트리뷰터에 자동적으로 출력하여, 이용자 권리 인증을 실행하는 수단과,
    상기 이용자 권리 인증이 성공한 후, 해당 콘텐츠 디스트리뷰터로부터 라이선스 또는 키 정보를 수신하는 수단과,
    상기 이용자 권리 인증이 성공한 후, 요구된 콘텐츠의 소비용 사용 규칙을 취득하는 수단을 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  7. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치에 있어서,
    요구를 콘텐츠 디스트리뷰터에 자동적으로 출력하여, 이용자 권리 인증을 실행하는 수단과,
    상기 이용자 권리 인증이 성공한 후, 해당 콘텐츠 디스트리뷰터로부터 라이선스 또는 키 정보를 수신하는 수단과,
    해당 라이선스 또는 키 정보를 IPMP 단말에서 구문 해석하는 수단과,
    해당 라이선스 또는 키 정보를 해당 IPMP 단말의 메모리에 저장하는 수단과,
    해당 IPMP 단말의 IPMP 툴 매니저로써 콘텐츠 스트림 내를 구문 해석하는 수단과,
    IPMP 툴 리스트 플래그, 콘텐츠 ID 및 IPMP 툴 리스트를 해석하는 수단과,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하는 수단과,
    IPMP 툴 리스트 정보의 해당 부분과 함께 상기 단계에서 검색된 해당 IPMP 툴을 해당 IPMP 단말의 메모리에 저장하는 수단과,
    해당 메모리에 저장된 해당 IPMP 툴과 함께 해당 라이선스/키 정보를 이용해서 해당 콘텐츠 스트림을 암호 해독 및 복호하는 수단을 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  8. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치에 있어서,
    요구를 콘텐츠 디스트리뷰터에 송신하여, 이용자 인증을 실행하는 수단과,
    해당 콘텐츠 디스트리뷰터로부터 라이선스 또는 키 정보를 수신하는 수단과,
    해당 라이선스 또는 키 정보를 IPMP 단말에서 구문 해석하는 수단과,
    해당 라이선스 또는 키 정보를 해당 IPMP 단말의 메모리에 저장하는 수단과,
    해당 IPMP 단말의 IPMP 툴 매니저로써 콘텐츠 스트림 내를 구문 해석하는 수단과,
    IPMP 툴 리스트 플래그, 콘텐츠 ID 및 IPMP 툴 리스트를 해석하는 수단과,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하는 수단과,
    IPMP 툴 리스트 정보의 해당 부분과 함께 상기 단계에서 검색된 해당 IPMP 툴을 해당 IPMP 단말의 메모리에 저장하는 수단과,
    해당 라이선스 또는 키 정보를 이용해서 해당 IPMP 정보 내의 해당 암호화된 키를 암호 해독하는 수단과,
    콘텐츠 제공자측에서 해당 콘텐츠를 암호화하기 위해서 사용된 암호화 키를 상기 단계로부터 취득하는 수단과,
    상기 단계로부터 취득된 해당 암호화 키를 이용해서 해당 콘텐츠를 암호 해독하여, 최초의 콘텐츠를 취득하는 수단과,
    이 최초의 콘텐츠를 해당 IPMP 단말에서의 재생을 위해서 복호하는 수단을 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  9. 제5항 내지 제8항 중 어느 한 항에 있어서, IPMP 툴 리스트는,
    IPMP 툴의 대부분에 관한 IPMP 툴 ID를 테이블 형식으로 정의하고 있고, 해당 테이블에 예약 가능한 미사용 스페이스가 있고, IPMP 툴 타입이라고도 하는 IPMP 툴의 카테고리로서 IPMP 툴 ID의 일부가 정의되어 있으며,
    해당 테이블을 IPMP 단말에 사전 로드, 사전 부호화 또는 다운로드하는 수단과,
    상기 콘텐츠 스트림 내에 포함된 해당 IPMP 툴 리스트로부터 해당 IPMP 툴 ID를 추출하는 수단과,
    상기 콘텐츠 스트림에 포함된 해당 IPMP 툴 리스트에 표시된 IPMP 툴 위치 식별자를 취득하는 수단과,
    IPMP 툴 위치 식별자에 추가하여, IPMP 툴 ID와 함께, 해당 콘텐츠 스트림에 포함된 IPMP 툴 포맷 ID를 취득하는 수단과,
    적절한 포맷인 IPMP 툴을 선택하여, IPMP 단말 플랫폼에 적합시키는 수단과,
    상기 수단에서 취득된 해당 위치로부터 해당 IPMP 툴을 검색하는 수단을 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  10. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치에 있어서,
    미리 결정한 테이블에 따라서 IPMP 툴 리스트를 구축하여 콘텐츠에 사용된 IPMP 툴의 내용을 IPMP 단말에 통지하도록,
    데이터 암호 해독, 투과 정보 등의 IPMP 툴의 카테고리로서 상기 미리 결정한 테이블로부터 IPMP 툴 타입 ID를 선택하는 수단과,
    해당 IPMP 툴 타입 ID의 아래인 특정의 알고리즘을 갖는 어느 특정의 IPMP 툴에 관해서 상기 미리 결정한 테이블로부터 IPMP 툴 ID를 선택하는 수단과,
    상기 미리 결정한 테이블로부터 IPMP 툴 위치 ID를 선택하여, IPMP 툴을 다운로드 또는 검색 가능한 장소를 통지하는 수단과,
    IPMP 툴을 원격으로 검색하는 경우, 해당 IPMP 툴 리스트에 URL 위치를 부여하는 수단과,
    2진 포맷으로 프리컴파일된 IPMP 툴의 각각의 세트에 관한 IPMP 툴 포맷 ID를 선택하는 수단을 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  11. 제1항 내지 제3항 중 어느 한 항에 있어서, 암호화 툴을 이용하여 사전 부호화 콘텐츠 스트림을 암호화하도록,
    인트라 부호화 프레임(Ⅰ프레임) 등의 사전 부호화 영상 스트림에서 키 액세스 유닛을 탐색하는 수단과,
    모든 액세스 유닛을 암호화하는 대신에 암호화 툴을 이용해서 해당 키 액세스 유닛만을 암호화하여, 암호 해독측의 처리를 고속화하는 수단을 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  12. 제1항 내지 제3항 중 어느 한 항에 있어서, 암호화 툴을 이용해서 사전 부호화 콘텐츠 스트림을 암호화하도록,
    사전 부호화 영상 스트림 또는 음성 스트림에서 중요 비트를 탐색하는 수단과,
    모든 액세스 유닛을 암호화하는 대신에 암호화 툴을 이용해서 해당 중요 비트만을 암호화하여, 암호 해독측의 처리를 고속화하는 수단을 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  13. 제11항에 있어서,
    키 액세스 유닛에 관해서 암호화를 부분적으로 실행한 보호 콘텐츠 스트림을 복호하는 수단과,
    미리 정한 규칙에 따라서 암호화된 비트 또는 액세스 유닛을 탐색하여, 소정의 데이터 암호 해독 툴을 이용해서 상기 비트 또는 액세스 유닛을 암호 해독하는 수단을 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  14. 제1항 내지 제3항 중 어느 한 항에 있어서,
    지정 인터페이스에 따라서 IPMP 툴이 구성되어 있고, 해당 인터페이스를 포함한 IPMP 단말이 구축되어, 해당 IPMP 툴을 검색해서 해당 단말의 해당 인터페이스에 적합시키는 수단을 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  15. 제1항 내지 제3항 중 어느 한 항에 있어서,
    MPEG-4 시스템에 있는 기본 스트림에 대응하는 디코더 구성 기술자에 새로운 스트림 타입을 지정하는 수단과,
    MPEG-4의 IPMP 기본 스트림에 IPMP 툴을 포함시키는 수단을 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  16. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법에 있어서,
    부호화 기술을 이용해서 콘텐츠를 콘텐츠 스트림으로 부호화하는 단계와,
    데이터 암호화 툴을 이용해서 해당 부호화 콘텐츠 스트림을 암호화하는 단계와,
    투과 정보 툴을 이용해서 해당 콘텐츠에 투과 정보를 매입하는 단계와,
    상기 단계에서 이용된 해당 콘텐츠에 관한 콘텐츠 ID 및 IPMP(지적소유권 관리 보호) 툴 리스트(IPMP 툴 정보)를 작성하는 단계와,
    각각의 콘텐츠 스트림의 헤더로서 포함해야 하는 IPMP 툴 리스트 플래그를 작성하는 단계와,
    IPMP 툴 리스트 플래그, 이어서 IPMP 툴 리스트, 콘텐츠 ID 및 실제의 부호화 콘텐츠 스트림을 포함하는 콘텐츠 스트림을 구성하는 단계를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  17. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법에 있어서,
    부호화 기술을 이용해서 콘텐츠를 콘텐츠 스트림으로 부호화하는 단계와,
    데이터 암호화 툴 또는 기타의 툴을 이용해서 해당 부호화 콘텐츠 스트림을 암호화하는 단계와,
    상기 단계에서 이용한 해당 콘텐츠에 관한 콘텐츠 ID 및 IPMP(지적소유권 관리 보호) 툴 리스트(IPMP 툴 정보)를 작성하는 단계와,
    각각의 콘텐츠 스트림의 헤더로서 포함해야 하는 IPMP 툴 리스트 플래그를 작성하는 단계와,
    IPMP 툴 리스트 플래그, 이어서 IPMP 툴 리스트, 콘텐츠 ID 및 실제의 부호화 콘텐츠 스트림을 포함하는 콘텐츠 스트림을 구성하는 단계를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  18. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법에 있어서,
    부호화 기술을 이용해서 콘텐츠를 콘텐츠 스트림으로 부호화하는 단계와,
    암호화 키를 갖는 암호화 툴 또는 기타의 툴을 이용해서 해당 콘텐츠 스트림을 암호화하는 단계와,
    더욱 높은 보안을 위해서, 별도의 암호화 키를 갖는 임의의 암호화 툴을 이용해서 해당 암호화 키를 암호화하는 단계와,
    해당 콘텐츠 스트림과 동일한 스트림에 포함된 IPMP 정보에 상기 해당 암호화된 키를 매입하는 단계와,
    상기 단계에서 이용한 해당 콘텐츠에 관한 콘텐츠 ID 및 IPMP(지적소유권 관리 보호) 툴 리스트(IPMP 툴 정보)를 작성하는 단계와,
    각각의 콘텐츠 스트림의 헤더로서 포함해야 하는 IPMP 툴 리스트 플래그를 작성하는 단계와,
    IPMP 툴 리스트 플래그, 이어서 IPMP 툴 리스트, 콘텐츠 ID 및 실제의 부호화 콘텐츠 스트림을 포함하는 콘텐츠 스트림을 구성하는 단계를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  19. 제16항 내지 제18항 중 어느 한 항에 있어서, 해당 콘텐츠에 관한 콘텐츠 ID 및 IPMP 툴 리스트를 작성하도록,
    IPMP 툴 ID를 각각의 콘텐츠에 할당하여, 어느 툴을 데이터 보호에 사용할 것인가를 표시하는 단계와,
    위치 타입 ID를 각각의 IPMP 툴에 할당하여, 해당 IPMP 툴이 입수 가능한 위치의 타입을 통지하는 단계와,
    포맷 ID를 할당하여, 다운로드된 IPMP 툴 포맷을 표시해서, 준거 IPMP 단말이 그것들의 플랫폼에 따라서 선택 및 검색하는 것을 가능하게 하는 단계와,
    해당 IPMP 툴의 위치를 표시하여, 단말이 해당 IPMP 툴을 해당 위치로부터 취득하는 것을 가능하게 하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  20. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법에 있어서,
    IPMP 단말의 IPMP 툴 매니저로써 콘텐츠 스트림 내를 구문 해석하는 단계와,
    IPMP 툴 리스트 플래그, 콘텐츠 ID 및 IPMP 툴 리스트를 해석하는 단계와,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하는 단계를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  21. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법에 있어서,
    IPMP 단말의 IPMP 툴 매니저로써 콘텐츠 스트림 내를 구문 해석하는 단계와,
    IPMP 툴 리스트 플래그, 콘텐츠 ID 및 IPMP 툴 리스트를 해석하는 단계와,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하는 단계와,
    요구를 콘텐츠 디스트리뷰터에 자동적으로 출력하여, 이용자 권리 인증을 실행하는 단계와,
    상기 이용자 권리 인증이 성공한 후, 해당 콘텐츠 디스트리뷰터로부터 라이선스 또는 키 정보를 수신하는 단계와,
    상기 이용자 권리 인증이 성공한 후, 요구된 콘텐츠의 소비용 사용 규칙을 취득하는 단계를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  22. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법에 있어서,
    요구를 콘텐츠 디스트리뷰터에 자동적으로 출력하여, 이용자 권리 인증을 실행하는 단계와,
    상기 이용자 권리 인증이 성공한 후, 해당 콘텐츠 디스트리뷰터로부터 라이선스 또는 키 정보를 수신하는 단계와,
    해당 라이선스 또는 키 정보를 IPMP 단말에서 구문 해석하는 단계와,
    해당 라이선스 또는 키 정보를 해당 IPMP 단말의 메모리에 저장하는 단계와,
    해당 IPMP 단말의 IPMP 툴 매니저로써 콘텐츠 스트림 내를 구문 해석하는 단계와,
    IPMP 툴 리스트 플래그, 콘텐츠 ID 및 IPMP 툴 리스트를 해석하는 단계와,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하는 단계와,
    IPMP 툴 리스트 정보의 해당 부분과 함께 상기 단계에서 검색된 해당 IPMP 툴을 해당 IPMP 단말의 메모리에 저장하는 단계와,
    해당 메모리에 저장된 해당 IPMP 툴과 함께 해당 라이선스/키 정보를 이용해서 해당 콘텐츠 스트림을 암호 해독 및 복호하는 단계를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  23. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법에 있어서,
    요구를 콘텐츠 디스트리뷰터에 송신하여, 이용자 인증을 실행하는 단계와,
    해당 콘텐츠 디스트리뷰터로부터 라이선스 또는 키 정보를 수신하는 단계와,
    해당 라이선스 또는 키 정보를 IPMP 단말에서 구문 해석하는 단계와,
    해당 라이선스 또는 키 정보를 해당 IPMP 단말의 메모리에 저장하는 단계와,
    해당 IPMP 단말의 IPMP 툴 매니저로써 콘텐츠 스트림 내를 구문 해석하는 단계와,
    IPMP 툴 리스트 플래그, 콘텐츠 ID 및 IPMP 툴 리스트를 해석하는 단계와,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하는 단계와,
    IPMP 툴 리스트 정보의 해당 부분과 함께 상기 단계에서 검색된 해당 IPMP 툴을 해당 IPMP 단말의 메모리에 저장하는 단계와,
    해당 라이선스 또는 키 정보를 이용해서 해당 IPMP 정보 내의 해당 암호화된 키를 암호 해독하는 단계와,
    콘텐츠 제공자측에서 해당 콘텐츠를 상기 단계에서 암호화하기 위해서 사용된 암호화 키를 취득하는 단계와,
    상기 단계로부터 취득된 해당 암호화 키를 이용해서 해당 콘텐츠를 암호 해독하여, 최초의 콘텐츠를 취득하는 단계와,
    이 최초의 콘텐츠를 해당 IPMP 단말에서 재생하기 위해서 복호하는 단계를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  24. 제20항 내지 제23항 중 어느 한 항에 있어서,
    로컬(사전 로드 또는 사전 부호화), 주변 장치, 원격측, 또는 해당 콘텐츠 스트림으로부터 해당 IPMP 툴 리스트에 따라서 IPMP 툴을 취득하도록,
    IPMP 툴의 대부분에 관한 IPMP 툴 ID가 테이블로 정의되어 있고, 금후의 또는 미지(未知)/전용의 IPMP 툴에 사용되어야 하는 IPMP 툴 ID에 관한 항목을 해당 테이블에 예약할 여지가 있으며, IPMP 툴 타입이라고도 하는 IPMP 툴의 카테고리로서 IPMP 툴 ID의 일부가 정의되어 있는, 해당 테이블을 IPMP 단말에 사전 로드, 사전 부호화 또는 다운로드하는 단계와,
    상기 콘텐츠 스트림 내에 포함된 해당 IPMP 툴 리스트로부터 해당 IPMP 툴 ID를 추출하는 단계와,
    상기 콘텐츠 스트림에 포함된 해당 IPMP 툴 리스트에 표시된 IPMP 툴 위치 식별자를 취득하는 단계와,
    IPMP 툴 위치 식별자에 추가하여, IPMP 툴 ID와 함께, 해당 콘텐츠 스트림에 포함된 IPMP 툴 포맷 ID를 취득하는 단계와,
    적절한 포맷인 IPMP 툴을 선택하여, IPMP 단말 플랫폼에 적합시키는 단계와,
    상기 수단에 의해서 취득된 해당 위치로부터 해당 IPMP 툴을 검색하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  25. 제20 내지 제23항 중 어느 한 항에 있어서,
    미리 결정한 테이블에 따라서 IPMP 툴 리스트를 구축하여, 콘텐츠에 사용된 IPMP 툴의 내용을 IPMP 단말에 통지하는 단계와,
    대응하는 콘텐츠 스트림의 앞에 해당 IPMP 툴 리스트를 삽입하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  26. 콘텐츠 제공자와 이용자 IPMP 단말을 포함하는, 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법에 있어서,
    미리 결정한 테이블에 따라서 IPMP 툴 리스트를 구축하여 콘텐츠에 사용된 IPMP 툴의 내용을 IPMP 단말에 통지하도록,
    데이터 암호 해독, 투과 정보 등의 IPMP 툴의 카테고리로서 상기 미리 결정한 테이블로부터 IPMP 툴 타입 ID를 선택하는 단계와,
    해당 IPMP 툴 타입 ID의 아래인 특정의 알고리즘을 갖는 어느 특정의 IPMP 툴에 관해서 상기 미리 결정한 테이블로부터 IPMP 툴 ID를 선택하는 단계와,
    상기 미리 결정한 테이블로부터 IPMP 툴 위치 ID를 선택하여, IPMP 툴을 다운로드 또는 검색 가능한 장소를 통지하는 단계와,
    IPMP 툴을 원격으로 검색하는 경우, 해당 IPMP 툴 리스트에 URL 위치를 부여하는 단계와,
    2진 포맷으로 프리컴파일된 IPMP 툴의 각각의 세트에 관한 IPMP 툴 포맷 ID를 선택하는 단계를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  27. 제16항 내지 제18항 중 어느 한 항에 있어서, 암호화 툴을 이용해서 사전 부호화 콘텐츠 스트림을 암호화하도록,
    인트라 부호화 프레임(Ⅰ프레임) 등의 사전 부호화 영상 스트림에서 키 액세스 유닛을 탐색하는 단계와,
    모든 액세스 유닛을 암호화하는 대신에 암호화 툴을 이용해서 해당 키 액세스 유닛만을 암호화하여, 암호 해독측의 처리를 고속화하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  28. 제16항 내지 제18항 중 어느 한 항에 있어서, 암호화 툴을 이용해서 사전 부호화 콘텐츠 스트림을 암호화하도록,
    사전 부호화 영상 스트림 또는 음성 스트림에서 중요 비트를 탐색하는 단계와,
    모든 액세스 유닛을 암호화하는 대신에 암호화 툴을 이용해서 해당 중요 비트만을 암호화하여, 암호 해독측의 처리를 고속화하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  29. 제27항에 있어서,
    키 액세스 유닛에 관해서 암호화를 부분적으로 실행하도록,
    보호 콘텐츠 스트림을 복호하는 단계와,
    미리 정한 규칙에 따라서 암호화된 비트 또는 액세스 유닛을 탐색하여, 소정의 데이터 암호 해독 툴을 이용해서 상기 비트 또는 액세스 유닛을 암호 해독하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  30. 제16항 내지 제18항 중 어느 한 항에 있어서,
    MPEG-4 시스템에 있는 기본 스트림에 대응하는 디코더 구성 기술자에 새로운 스트림 타입을 지정하는 단계와,
    MPEG-4의 IPMP 기본 스트림에 IPMP 툴을 포함시키는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  31. 제1항 내지 제3항 중 어느 한 항에 있어서,
    암호화된 콘텐츠와, 그 해독 키와, 해독 모듈과, 콘텐츠의 이용 규칙과, 이용 규칙 관리 모듈을 갖는 콘텐츠 제공자는, 네트워크를 통해서 접속된 이용자 IPMP 단말에 전송하는 메시지 중에, 해독 모듈의 식별자와 그 존재하는 장소를 나타내는 정보 및 이용규칙 관리모듈의 식별자와 그 존재하는 장소를 나타내는 정보를 포함함으로써, 이용자 IPMP 단말은 콘텐츠 제공자로부터 수신한 메시지에 근거하여 저작권 보호 시스템의 갱신을 실행하고, 갱신된 해독 모듈과 갱신된 이용 규칙 관리 모듈을 포함함으로써, 상기 콘텐츠 제공자가 의도하는 이용 규칙에 따라서 콘텐츠의 해독ㆍ시청을 실행하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  32. 제1항 내지 제3항 중 어느 한 항에 있어서,
    암호화된 콘텐츠와, 그 해독 키와, 해독 모듈과, 콘텐츠의 이용 규칙과, 이용 규칙 관리 모듈을 갖는 콘텐츠 제공자와 네트워크를 통해서 접속된 이용자 IPMP 단말은, 상기 콘텐츠 제공자로부터 이용 규칙 관리 모듈을 수취하여 자체에 구성하고, 이것을 이용하여 상기 콘텐츠 제공자로부터 수취하는 저작권 보호 정보 내에 있는 콘텐츠의 이용 규칙에 따라서, 상기 콘텐츠 제공자로부터 수취하는 콘텐츠의 재생을 실행하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  33. 제31항에 있어서,
    상기 이용 규칙은 콘텐츠의 이용 가능 기간, 무료 재생 가능 시간, 재생 가능 횟수, 카피 가능 횟수, 이동 가능 횟수 중 어느 하나를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  34. 제31항에 있어서,
    상기 콘텐츠 제공자로부터 이용자 IPMP 단말에 전송되는 메시지는 메시지 항목 이름과 직후에 후속하는 메시지 항목의 값의 조합으로서 구성되고, 이용자 IPMP 단말에 전송하는 메시지 항목의 순서를 묻지 않는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  35. 제31항에 있어서,
    상기 이용자 IPMP 단말로부터 상기 콘텐츠 제공자에 전송되는 메시지는, 이용자 IPMP 단말 정보를 포함함으로써, 이용자 IPMP 단말에 적합한 모듈을 콘텐츠 제공자로부터 수신할 수 있는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  36. 제12항에 있어서,
    키 액세스 유닛에 관해서 암호화를 부분적으로 실행한 보호 콘텐츠 스트림을 복호하는 수단과,
    미리 정한 규칙에 따라서 암호화된 비트 또는 액세스 유닛을 탐색하여, 소정의 데이터 암호 해독 툴을 이용해서 상기 비트 또는 액세스 유닛을 암호 해독하는 수단을 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  37. 제28항에 있어서,
    키 액세스 유닛에 관해서 암호화를 부분적으로 실행하도록,
    보호 콘텐츠 스트림을 복호하는 단계와,
    미리 정한 규칙에 따라서 암호화된 비트 또는 액세스 유닛을 탐색하여, 소정의 데이터 암호 해독 툴을 이용해서 상기 비트 또는 액세스 유닛을 암호 해독하는 단계를 더 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 방법.
  38. 제32항에 있어서,
    상기 이용 규칙은 콘텐츠의 이용 가능 기간, 무료 재생 가능 시간, 재생 가능 횟수, 카피 가능 횟수, 이동 가능 횟수 중 어느 하나를 포함하는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  39. 제32항에 있어서,
    상기 콘텐츠 제공자로부터 이용자 IPMP 단말에 전송되는 메시지는 메시지 항목 이름과 직후에 후속하는 메시지 항목의 값의 조합으로서 구성되고, 이용자 IPMP 단말에 전송하는 메시지 항목의 순서를 묻지 않는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
  40. 제32항에 있어서,
    상기 이용자 IPMP 단말로부터 상기 콘텐츠 제공자에 전송되는 메시지는, 이용자 IPMP 단말 정보를 포함함으로써, 이용자 IPMP 단말에 적합한 모듈을 콘텐츠 제공자로부터 수신할 수 있는 것을 특징으로 하는 콘텐츠를 제공하여 보호하기 위한 유연 및 공통 IPMP 시스템의 장치.
KR1020037001390A 2001-06-04 2002-06-04 콘텐츠 제공 및 보호용의 유연 및 공통 ipmp 시스템의장치 및 방법 KR100567921B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JPJP-P-2001-00168259 2001-06-04
JP2001168259 2001-06-04
JP2001172451 2001-06-07
JPJP-P-2001-00172451 2001-06-07
PCT/JP2002/005468 WO2002100037A1 (fr) 2001-06-04 2002-06-04 Appareil et procede destines a un systeme ipmp(gestion et protection de la propriete intellectuelle) souple et commun de fourniture et de protection de contenu

Publications (2)

Publication Number Publication Date
KR20030022879A KR20030022879A (ko) 2003-03-17
KR100567921B1 true KR100567921B1 (ko) 2006-04-05

Family

ID=26616293

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037001390A KR100567921B1 (ko) 2001-06-04 2002-06-04 콘텐츠 제공 및 보호용의 유연 및 공통 ipmp 시스템의장치 및 방법

Country Status (5)

Country Link
US (1) US8126810B2 (ko)
EP (1) EP1398902A4 (ko)
KR (1) KR100567921B1 (ko)
CN (1) CN100512102C (ko)
WO (1) WO2002100037A1 (ko)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4311899B2 (ja) 2001-03-02 2009-08-12 パナソニック株式会社 コンテンツの配信および保護を行なう方法および装置
EP1430720B1 (en) * 2001-09-03 2006-09-27 Matsushita Electric Industrial Co., Ltd. Apparatus of a flexible and common ipmp system for mpeg-2 content distribution and protection
KR20040060950A (ko) 2001-10-29 2004-07-06 마츠시타 덴끼 산교 가부시키가이샤 베이스라인 dvb-cpcm 장치
KR20040088464A (ko) * 2002-03-05 2004-10-16 마츠시타 덴끼 산교 가부시키가이샤 Ipmp에 의해서 보호된 콘텐츠의 처리에 사용되는 툴을지정하는 정보의 전송방법
WO2004100442A1 (ja) * 2003-05-09 2004-11-18 Matsushita Electric Industrial Co., Ltd. Mpeg-4 ipmp拡張されたisma媒体ストリームの送信装置
US7493499B1 (en) 2003-05-22 2009-02-17 Copyright Clearance Center, Inc. Method and apparatus for secure delivery and rights management of digital content
US7324648B1 (en) * 2003-07-08 2008-01-29 Copyright Clearance Center, Inc. Method and apparatus for secure key delivery for decrypting bulk digital content files at an unsecure site
US20050081218A1 (en) * 2003-08-26 2005-04-14 Acott Troy Steven Configurable simulation of virtual machine behavior
EP1662693B1 (en) 2003-09-04 2015-09-02 Panasonic Intellectual Property Corporation of America Digital literary work protection system and digital literary work protection method
EP1691553B1 (en) * 2003-12-02 2012-03-28 Panasonic Corporation Method and device for distributing av content in download type file format
KR101244308B1 (ko) 2003-12-08 2013-03-18 삼성전자주식회사 동영상 파일의 암호화 방법 및 그를 이용한 디지털 저작권관리방법
KR100600812B1 (ko) * 2003-12-19 2006-07-14 한국전자통신연구원 엠펙-21 멀티미디어 프레임워크 환경에서의 툴 제공 장치및 그 방법
EP1723562A1 (en) * 2004-03-10 2006-11-22 Nokia Corporation Storage of content-location information
JP4787525B2 (ja) * 2004-04-08 2011-10-05 株式会社リコー 画像処理装置、真偽性判定方法、真偽性判定プログラム、記録媒体、及び真偽性判定システム
JP4478871B2 (ja) * 2004-05-19 2010-06-09 ソニー株式会社 コンテンツデータ再生装置、コンテンツデータ提供装置、コンテンツデータ再生方法、コンテンツデータ提供方法、コンテンツデータ再生プログラム及びコンテンツデータ提供プログラム
KR20060002654A (ko) * 2004-07-03 2006-01-09 주식회사 넷앤티비 멀티미디어 콘텐츠 보호 및 관리를 위한 언어 표현 방법및 장치
US7831965B1 (en) * 2004-08-12 2010-11-09 Oracle America, Inc. Method and apparatus for facilitating intermediate linking of binary files in a virtual machine
KR20070046113A (ko) * 2004-08-16 2007-05-02 마츠시타 덴끼 산교 가부시키가이샤 송신장치 및 수신장치
CN101069423A (zh) * 2004-11-29 2007-11-07 松下电器产业株式会社 发送装置以及接收装置
KR100692589B1 (ko) * 2005-01-06 2007-03-13 삼성전자주식회사 Drm 시스템에 적용되는 컨텐츠 재생장치 및 방법그리고 모바일코드 제공장치 및 방법
WO2006075904A1 (en) * 2005-01-17 2006-07-20 Electronics And Telecommunications Research Institute Method for representing description language and data structure to update ipmp tool, ipmp tool updating method and client apparatus using the same
JP4273424B2 (ja) * 2005-06-29 2009-06-03 ソニー株式会社 コンテンツ取得装置、コンテンツ取得方法及びコンテンツ取得プログラム
KR100734397B1 (ko) * 2005-09-12 2007-07-02 엘지전자 주식회사 멀티미디어 파일을 제공하는 장치 및 그 방법, 그리고 그멀티미디어 파일을 제공받아 재생하는 장치 및 그 방법
US8131995B2 (en) * 2006-01-24 2012-03-06 Vixs Systems, Inc. Processing feature revocation and reinvocation
CN100362791C (zh) * 2006-01-26 2008-01-16 华为技术有限公司 Drm中内容数据包获取的方法及装置
US20090307749A1 (en) * 2006-07-14 2009-12-10 Ho-Jae Lee Apparatus and method for intellectual property management and protection
US8296569B2 (en) * 2006-10-09 2012-10-23 Microsoft Corporation Content protection interoperability infrastructure
KR101463808B1 (ko) * 2007-10-17 2014-11-20 엘지전자 주식회사 방송수신 휴대단말기
EP2107808A1 (fr) * 2008-04-03 2009-10-07 Nagravision S.A. Module de sécurité (SM) pour unité de traitement de données audio/vidéo
US8935528B2 (en) * 2008-06-26 2015-01-13 Microsoft Corporation Techniques for ensuring authentication and integrity of communications
US20100312810A1 (en) * 2009-06-09 2010-12-09 Christopher Horton Secure identification of music files
CN103582889B (zh) * 2011-06-06 2015-11-25 株式会社索思未来 内容数据再生方法及缩略图图像生成方法
WO2013074795A1 (en) * 2011-11-16 2013-05-23 Nl Systems, Llc System and method for secure software license distribution
US9317702B2 (en) * 2011-11-29 2016-04-19 Sony Corporation System and method for providing secure inter-process communications
GB2533279B (en) * 2014-12-08 2019-08-14 Gurulogic Microsystems Oy Secure media player
CN108595940A (zh) * 2018-03-29 2018-09-28 深圳市风云实业有限公司 设备的认证授权装置、方法和系统
CN113259718B (zh) * 2021-04-27 2023-06-09 深圳市锐明技术股份有限公司 视频流的加密方法、装置、通信设备及存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6236727B1 (en) * 1997-06-24 2001-05-22 International Business Machines Corporation Apparatus, method and computer program product for protecting copyright data within a computer system
EP1521467A3 (en) * 1998-03-16 2005-04-13 Intertrust Technologies Corp. Methods and apparatus for continuous control and protection of media content
US7809138B2 (en) * 1999-03-16 2010-10-05 Intertrust Technologies Corporation Methods and apparatus for persistent control and protection of content
US6535919B1 (en) * 1998-06-29 2003-03-18 Canon Kabushiki Kaisha Verification of image data
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
KR100484209B1 (ko) * 1998-09-24 2005-09-30 삼성전자주식회사 디지털컨텐트암호화/해독화장치및그방법
SG75189A1 (en) * 1998-12-04 2000-09-19 Canon Kk Image processing apparatus method therefor and recording medium storing image processing program
US6173269B1 (en) * 1998-12-16 2001-01-09 Zowi.Com, Inc Method and apparatus for executing electronic commercial transactions with minors
US7079655B1 (en) * 1999-10-25 2006-07-18 Kabushiki Kaisha Toshiba Encryption algorithm management system
SG103829A1 (en) * 2000-01-28 2004-05-26 Canon Kk Digital contents distribution system, digital contents distribution method, roaming server, information processor, and information processing method
JP2001359069A (ja) 2000-04-13 2001-12-26 Canon Inc 情報処理装置及びその方法並びにプログラムコード、記憶媒体
AU2001258831A1 (en) * 2000-05-26 2001-12-03 Canon Kabushiki Kaisha Contents forming method and contents reproducing apparatus and method
US20020156712A1 (en) * 2001-02-20 2002-10-24 Soft Park Group, Ltd. Parametric representation scheme and systems for description and reconstruction of an intellectual property management and protection system and corresponding protected media
US7308717B2 (en) * 2001-02-23 2007-12-11 International Business Machines Corporation System and method for supporting digital rights management in an enhanced Java™ 2 runtime environment
JP2002297496A (ja) * 2001-04-02 2002-10-11 Hitachi Ltd メディア配信システム及びマルチメディア変換サーバ
US20030120541A1 (en) * 2001-12-21 2003-06-26 Siann Jonathan I. Storage and delivery of electronic media content with advertising
US7203844B1 (en) * 2002-06-20 2007-04-10 Oxford William V Method and system for a recursive security protocol for digital copyright control
US6985856B2 (en) * 2002-12-31 2006-01-10 Nokia Corporation Method and device for compressed-domain packet loss concealment

Also Published As

Publication number Publication date
EP1398902A4 (en) 2007-02-28
KR20030022879A (ko) 2003-03-17
US8126810B2 (en) 2012-02-28
EP1398902A1 (en) 2004-03-17
CN1463517A (zh) 2003-12-24
CN100512102C (zh) 2009-07-08
WO2002100037A1 (fr) 2002-12-12
US20040236956A1 (en) 2004-11-25

Similar Documents

Publication Publication Date Title
KR100567921B1 (ko) 콘텐츠 제공 및 보호용의 유연 및 공통 ipmp 시스템의장치 및 방법
KR100518094B1 (ko) 콘텐츠의 배신 및 보호를 실행하는 방법 및 장치
EP1430720B1 (en) Apparatus of a flexible and common ipmp system for mpeg-2 content distribution and protection
EP1732005B1 (en) Access control method, access control system, meta data controller, and transmission system device
CA2323781C (en) Methods and apparatus for continuous control and protection of media content
CA2602226C (en) System and method for a variable key ladder
KR100411846B1 (ko) 디지털 콘텐츠 배급 시스템, 디지털 콘텐츠 배급 방법,로밍 서버, 정보 처리 장치 및 정보 처리 방법
US20060137015A1 (en) System and method for secure conditional access download and reconfiguration
JP5379129B2 (ja) 安全性を向上させたトリック再生を可能にする選択的暗号化
MXPA04005607A (es) Procesamiento de datos.
KR20090117942A (ko) 조건부 액세스 오디오/비디오 콘텐츠에 대한 액세스 제어 방법
KR20060044745A (ko) 공통 스크램블링 방법
RU2541923C1 (ru) Способ передачи и приема мультимедийного содержания
KR20090090332A (ko) 스크램블된 디지털 콘텐트로의 액세스를 제어하는 방법
JP2003078519A (ja) コンテンツ提供及び保護用の柔軟及び共通ipmpシステムの装置及び方法
CN105308973A (zh) 在用于提供多媒体内容的系统中的终端的识别方法
CA2856456C (en) Method, cryptographic system and security module for descrambling content packets of a digital transport stream
CA2617900C (en) Method for processing conditional access contents by a user unit
KR100600810B1 (ko) 디지털 방송 컨텐츠 재생 제어 장치와 그를 이용한 디지털 방송 컨텐츠 보호 장치
KR20040057742A (ko) 다중 컨텐츠 보호 툴을 적용할 수 있는 컨텐츠 보호 장치및 그 방법과 이에 적용되는 보호 툴 및 그 적용 방법
CN100556135C (zh) 内容的传递及保护的方法及装置
Cho et al. Broadcasting System Compliant with MPEG‐2/4 IPMPX
GB2423662A (en) Media player arranged to decode video content blocks having digital fingerprints

Legal Events

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

Payment date: 20130228

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140303

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150302

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160219

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170221

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180220

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee