KR100467298B1 - 디지털 비디오 데이터를 처리 및 디코딩하기 위한 시스템/방법, 저장 매체 및 삽입형 전자 스마트 카드 - Google Patents

디지털 비디오 데이터를 처리 및 디코딩하기 위한 시스템/방법, 저장 매체 및 삽입형 전자 스마트 카드 Download PDF

Info

Publication number
KR100467298B1
KR100467298B1 KR10-1999-7004478A KR19997004478A KR100467298B1 KR 100467298 B1 KR100467298 B1 KR 100467298B1 KR 19997004478 A KR19997004478 A KR 19997004478A KR 100467298 B1 KR100467298 B1 KR 100467298B1
Authority
KR
South Korea
Prior art keywords
encrypted
algorithm
encryption
data
key
Prior art date
Application number
KR10-1999-7004478A
Other languages
English (en)
Other versions
KR20000057174A (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 KR20000057174A publication Critical patent/KR20000057174A/ko
Application granted granted Critical
Publication of KR100467298B1 publication Critical patent/KR100467298B1/ko

Links

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/41Structure of client; Structure of client peripherals
    • H04N21/418External card to be used in combination with the client device, e.g. for conditional access
    • H04N21/4181External card to be used in combination with the client device, e.g. for conditional access for conditional access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/418External card to be used in combination with the client device, e.g. for conditional access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG 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/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
    • 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/4408Processing 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 encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • 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/4623Processing of entitlement messages, e.g. ECM [Entitlement Control Message] or EMM [Entitlement Management Message]
    • 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
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42646Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM

Abstract

디코더 (25)의 조건부 접근 시스템 (115, 130, 50)은 상이한 소스에서 도출된 프로그램으로의 접근을 제공하기 위해 상이한 암호 시스템을 구비한다. 암호화된 프로그램 데이터와 관련 암호 코드를 처리하기 위한 조건부 접근 프로세서 (115, 130, 50)는 암호 키를 제공하기 위해 암호 코드 복호용 제 1 알고리즘 수단(115, 130)을 포함한다. 상기 조건부 접근 프로세서는 암호 키 암호화용 제 2 알고리즘 수단(115, 130)을 또한 포함하며, 상기 제 2 암호 알고리즘은 상기 제 1 암호 알고리즘과는 상이하다. 프로그램을 나타내는 데이터스트림은 암호화된 프로그램 데이터와 관련 암호 코드로부터 생성된다(33, 115, 110, 60, 65, 50). 제 1 알고리즘을 이용하여 암호 키를 제공하기 위해, 상기 암호 코드는 복호된다(115, 130). 상기 암호 키는 상기 제 1 암호 알고리즘과는 상이한 제 2 알고리즘을 이용하여 암호화되며(115, 130), 상기 프로그램 데이터스트림은 암호화된 프로그램 데이터와 암호화된 암호 키로부터 형성된다. 상기 프로그램 데이터스트림은 암호 키를 제공하기 위해 제1 및 제 2 복호 알고리즘 중 하나를 선택하고, 암호 코드를 복호화함으로써(115, 130) 복호된다. 상기 암호 키는 상기 암호화된 프로그램을 복호(50,115)하는데 이용된다. 암호화된 프로그램 데이터를 기록하기 위한 저장 매체(105)의 데이터 포맷도 역시 개시된다.

Description

디지털 비디오 데이터를 처리 및 디코딩하기 위한 시스템/방법, 저장 매체 및 삽입형 전자 스마트 카드{SYSTEM/METHOD FOR PROCESSING AND DECODING DIGITAL VIDEO DATA, STORAGE MEDIUM AND INSERTABLE ELECTRONIC SMART CARD}
비디오 처리 및 저장의 응용에 있어서, 디지털 비디오 데이터는 일반적으로 공지된 표준의 요구사항에 부합하도록 인코드(encode)된다. 이러한 널리 채택되고 있는 표준의 하나는 동화상 전문가 그룹 (Moving Pictures Expert Group : MPEG2) 이미지 인코딩 표준이며, 이후부터는 MPEG 표준이라 칭한다. 상기 MPEG 표준은 시스템 인코딩 부 (ISO/IEC 13818-1, 1994년 6월 10일)와 비디오 인코딩 부 (ISO/IEC 13818-2, 1995년 1월 20일)로 구성되며, 이들은 이후부터 각각 "MPEG 시스템 표준"과 "MPEG 비디오 표준"이라 칭한다. MPEG 표준으로 인코딩 된 비디오 데이터는 일반적으로 다수의 프로그램 채널(예를 들어 유선 TV에서 채널 1 - 125와 유사함)의 데이터 콘텐트를 포함하는 패킷화된 데이터스트림의 형태를 갖는다. 예를 들어,과 같은 프리미엄 프로그램 채널의 데이터 콘텐트는 보통 암호화 및 스크램블링과 같은 방법에 의해 비인가 된 접근으로부터 보호된다. 이 방법들은 독자적으로, 반복적으로, 또는 복수의 보호 수준을 제공하기 위해 이들의 조합으로 사용될 수 있다.
디코더에 있어서, 프리미엄 채널들에 대한 접근은 일반적으로 사용자 자격 정보를 기반으로 사용자 과금을 관리하고, 프로그램의 디스크램블링(descrambling) 및 복호를 제어하는 조건부 접근 시스템에 의해 지배된다. 상기 조건부 접근 시스템은 다양한 방법으로 접근 허용 여부를 결정할 수 있다. 예를 들어, 인가(authorization) 여부는 소위 "스마트 카드" 상에 있는 미리 프로그램 된 사용자 자격 정보(user entitlement information)로부터 디코더 내에서 결정될 수 있다. 대안으로, 인가 여부는 원격지에서 결정될 수 있으며, 유선 TV 페이-퍼-뷰 서비스에서와 같이 원격지로부터 전송된 사용자 자격 정보를 사용하여 디코더 내에서 구현될 수 있다. 상기 자격 정보는 프로그램 디스크램블링 및 복호화를 위해 사용되는 디스크램블링 및 복호 키들을 생성하기 위해서 사용되는 코드를 일반적으로 포함한다. 그러나, 상기 자격 정보는 그 대신에 키 자체를 포함할 수도 있다.
암호화된 프로그램 데이터 및 암호화되지 않은 프로그램 데이터의 처리와 저장, 과금 및 기타 응용을 위한 관련 암호화 및 스크램블링 코드의 관리에는 몇가지 문제점이 있다. 그러한 문제점들 중 하나는 프로그램이 나중에 보기 위해 사용자에 의해 암호화되거나 또는 암호화되지 않은 형태로 저장될 때 암호화 코드 보안을 관리할 필요성에 의해 제기된다. 다른 문제점들은 프로그램 저장 또는 재생에 대한 과금을 허용하고, 또한 암호화된 및 암호화되지 않은 프로그램 데이터의 복사 금지처리를 허용하는 시스템을 제공하는데서 비롯된다.
본 발명은 디지털 신호 처리 분야에 관련된 것으로, 보다 구체적으로는 예를 들어 방송, 위성 또는 유선 비디오 자료의 소비자 수신기에 의한 저장을 위한 암호화된 패킷 데이터의 조건부 접근 처리, 디코딩 및 포맷팅에 관한 것이다.
도 1은 프로그램을 나타내는 데이터스트림을, 사용자 선택이 가능하며 암호화된 또는 암호화되지 않은 형태로 적절하게 생성하기 위한 본 발명에 따른 비디오 수신기 시스템.
도 2와 도 3은 선택 가능한 저장 매체에 저장 및 관련 사용자 과금 처리에 적합한, 프로그램을 나타내는 데이터스트림을 제공하기 위한 프로세스 흐름도.
도 4는 선택된 저장 장치로부터 암호화된 또는 암호화되지 않은 선택된 프로그램을 복구하고 프로그램 복구시 사용자에게 과금 처리하기 위한 프로세스 흐름도.
상기 문제점들은 본 발명에 따른 시스템에 의해 다루어진다. 이후부터 용어 "암호화"는 비인가 된 사용을 방지하는 정도의 스크램블링 기능을 포함한다.
암호화된 형태의 프로그램을 처리하는 디코더 시스템에 있어서, 암호 코드 보안을 유지하기 위해 사용되는 하나의 기법(technique)은 주기적인 또는 그 밖의 것을 기반으로 하는 암호 알고리즘 및 암호 키의 변경을 포함한다. 그러한 알고리즘 변경은 암호 시스템 보안을 안전하게 하고, 코드-파괴 및 비인가 된 프로그램 접근을 방지하기 위해 일반적으로 서비스 제공자에 의해 개시된다. 이에 따라 본 발명자는 암호 알고리즘 및 암호 키의 변경을 수반하는 암호시스템의 사용에는 암호화된 형태로 프로그램을 저장하는데 문제점이 있다는 것을 인지하여 왔다. 특히, 관련 방송 암호 키와 함께 암호화된 형태로 저장된 프로그램은 암호 알고리즘이 일단 갱신되면 복호되지 않을 수도 있다. 새로운 암호 알고리즘은 이전에 저장된 암호 키와 호환성이 없을 수 있다. 결과적으로, 일단 알고리즘이 변경되면 저장된 암호화된 프로그램은 복호될 수 없으며 사용이 불가능하다.
이 문제점을 극복하기 위해, 다른 알고리즘이 디코더의 조건부 접근 시스템에 적절하게 구비된다. 예를 들어 동시 방송과 같은 "실황(live)" 소스로부터 도출되는 프로그램으로의 접근을 제공하는데 있어서, 상기 조건부 접근 시스템은 저장 매체(medium)와 같은 로컬 저장 소스로부터 도출되는 프로그램과는 다르게 작동한다.
암호화된 프로그램 데이터 및 암호 코드를 처리하기 위한 조건부 접근 프로세서는 암호 키를 제공하기 위한 암호 코드 해독용 제 1 알고리즘 수단을 포함한다. 상기 조건부 접근 프로세서는 암호 키의 암호화를 위한 제 2 알고리즘을 또한 포함하는데, 상기 제 2 암호 알고리즘은 제 1 암호 알고리즘과 같지 않다.
본 발명의 특징으로, 암호화된 프로그램 데이터와 관련 암호 코드에서 프로그램을 나타내는 데이터스트림을 생성하기 위한 방법은 제 1 알고리즘을 이용하여 암호 키를 제공하기 위해서 암호 코드를 해독하는 단계를 수반한다. 상기 암호 키는 제 1 암호 알고리즘과는 다른 제 2 알고리즘을 사용하여 암호화되고, 상기 프로그램 데이터스트림은 상기 암호화된 프로그램 데이터와 상기 암호화된 암호 키로부터 형성된다.
본 발명의 다른 특징으로, 프로그램을 나타내는 데이터스트림을 디코딩하기 위한 방법은 암호 코드를 해독하기 위해 제 1 및 제 2 알고리즘 중 하나를 선택하는 단계를 수반한다. 상기 암호 코드는 암호 키를 제공하기 위해 선택된 알고리즘을 사용하여 해독되며, 상기 암호화된 프로그램은 상기 암호 키를 사용하여 해독된다.
본 발명의 또 다른 특징으로, 제 1 암호 알고리즘과 암호 코드를 사용하여 암호화된 프로그램 데이터를 기록하기 위한 저장 매체 데이터 포맷이 개시된다. 상기 암호 코드는 제 1 암호 알고리즘과는 상이한 제 2 암호 알고리즘을 사용하여 암호 키를 암호화함으로써 얻어 진다.
도 1은 프로그램을 나타내는 데이터스트림을, 사용자 선택이 가능하며 암호화된 또는 암호화되지 않은 형태로 적절하게 생성하기 위한 본 발명에 따른 비디오 수신기 시스템을 보여준다. 비록 상기 개시된 시스템이 방송 프로그램을 나타내는 MPEG으로 인코드된 전송 스트림을 수신하기 위해 MPEG 호환 시스템과 관련하여 기술되어 있지만, 그것은 예증적인 것일 뿐이다. 본 발명의 원리는 다른 유형의 인코딩 된 데이터스트림을 수용하는 비-MPEG 호환 시스템을 포함하는 다른 유형의 시스템에도 역시 적용될 수 있을 것이다. 나아가, 비록 상기 개시된 시스템이 방송 프로그램을 처리하는 것으로 기술되어 있지만, 그것은 예증적일 뿐이다. 상기 용어 "프로그램(program)"은 예를 들어 전화 메시지, 컴퓨터 프로그램, 인터넷 데이터 또는 기타 통신과 같은 임의의 형태의 패킷화된 데이터를 나타내는데 사용된다.
도 1의 비디오 수신기 시스템을 개략적으로 살펴보면, 비디오 데이터로 변조된 캐리어(carrier)는 안테나(10)에 의해 수신되고, 입력 프로세서 유니트(15)에 의해 처리된다. 그 결과로 생기는 디지털 출력 신호는 복조기(20)에 의해 복조되고, 디코더(30)에 의해 디코드된다. 디코더(30)의 출력은 원격 제어 유니트(125)로부터 나오는 명령에 따라 전송 시스템(25)에 의해 처리된다. 시스템(25)은 저장, 추가적인 디코딩 또는 다른 장치들로의 전달을 위해 압축된 데이터 출력을 제공한다. 시스템(25)은, 사용자 과금을 관리하고 사용자 자격 정보를 기반으로 프로그램의 디스크램블링(descrambling) 및 복호화를 제어하기 위해 조건부 접근 시스템을 병합한다. 비디오 수신기 사용자는 원격 제어 유니트(125)를 사용하여 스크린 상에서 메뉴를 선택함으로써 시청하기를 원하는 프로그램, 저장하기를 원하는 프로그램, 사용될 저장 매체의 유형, 및 상기 프로그램을 암호화된 형태로 저장할 것인가 또는 암호화되지 않은 형태로 저장할 것인가를 선택한다. 시스템(25)은 암호화되지 않은 프로그램 데이터스트림으로부터 암호 코드의 실시간 또는 비-실시간 제거를 허용하기 위한 메커니즘을 또한 제공한다.
비디오 디코더(85)와 오디오 디코더(80)는 각각 디스플레이용 출력을 제공하기 위해 시스템(25)으로부터의 압축된 데이터를 디코딩한다. 데이터 포트(75)는 시스템(25)으로부터, 예를 들어 컴퓨터 또는 고화질 TV(High Definition Television : HDTV) 수신기와 같은 다른 장치들로 압축된 데이터를 전달하기 위해 인터페이스를 제공한다. 저장 장치(90)는 시스템(25)으로부터의 압축된 데이터를 저장 매체(105) 상에 저장한다. 재생 모드에서, 저장 장치(90)는 디코딩, 다른 장치로의 전달, 또는 다른 저장 매체(도면의 간략화를 위해 표시되지 않음)로의 저장을 위한 시스템(25)에 의한 처리를 위해 저장 매체(105)로부터 압축된 데이터의 검색을 또한 지원한다. 시스템(25) 내부에 있는 조건부 접근 시스템은 프로그램 저장, 재생, 또는 다른 장치들로의 전달을 포함한 추가적인 처리를 위한 복호 및 과금을 지원한다. 시스템(25)의 상기 조건부 접근 시스템은 로컬 저장 소스로부터 재생되는 데이터에 대한 것과는 다른 방송 소스로부터 수신되는 프로그램 데이터의 처리를 위해 복호 및 과금 메커니즘을 채택한다.
도 1을 구체적으로 살펴보면, 안테나(10)에 의해 수신된 비디오 데이터로 변조된 캐리어는 입력 프로세서(15)에 의해 디지털 형태로 변환되고 처리된다. 프로세서(15)는 무선 주파수(Radio Frequency: RF) 튜너와 중간 주파수(Intermediate Frequency: IF) 믹서를 포함하며, 또한 추가적인 처리에 적합하도록 입력 비디오 신호를 저 주파수 대역으로 하향-변환하기 위한 증폭 단계를 포함한다. 그 결과로 생기는 디지털 출력 신호는 복조기(20)에 의해 복조되며, 디코더(30)에 의해 디코드된다. 디코더(30)의 출력은 전송 시스템(25)에 의해 추가적으로 처리된다.
서비스 검출기(33)의 멀티플렉서(먹스)(37)는 선택기(35)를 통하여 디코더(30)의 출력 또는 NRSS (National Renewable Standards Committee) 디스크램블링(descrambling) 유니트(40)에 의해 추가적으로 처리된 디코더(30)의 출력 중 하나를 제공받는다. 선택기(35)는, 삽입 가능하며 NRSS 호환인 디스크램블링 카드가 존재하는지를 검출하고, 상기 카드가 비디오 수신기 유니트(상기 NRSS 제거가능한 조건부 접근 시스템은 EIA Draft Document IS-679, Project PN-3639에 정의되어 있음)에 현재 삽입되어 있는 경우에 한하여 NRSS 유니트(40)의 출력을 멀티플렉서(37)에게 제공한다. 만약 삽입되어 있지 않으면, 선택기(35)는 디코더(30)의 출력을 멀티플렉서(37)에게 제공한다. 만약 삽입형 카드가 존재하면, 유니트(40)로 하여금 예를 들어 추가적인 프리미엄 프로그램 채널은 디스크램블링하고, 시청자에게 부가적인 프로그램 서비스를 제공하도록 허용한다. NRSS 유니트(40)와 스마트 카드 유니트(130){스마트 카드 유니트(130)는 추후 기술됨}는 한번에 NRSS 카드 또는 스마트 카드 중 단 하나 만이 삽입될 수 있도록 동일한 시스템(25) 인터페이스를 공유한다는 점에 주의해야 한다. 대안으로, 상기 인터페이스는 직렬 또는 병렬 동작이 허용되도록 분리될 수 있다.
선택기(35)로부터 멀티플렉서(37)에 제공되는 상기 데이터는 MPEG 시스템 표준 2.4절에 정의된 바와 같이 MPEG을 따르는 패킷화된 전송 데이터스트림의 형태를 가지며, 하나 이상의 프로그램 채널의 데이터 콘텐트를 포함한다. 특정 프로그램 채널을 포함하는 상기 개별 패킷들은 패킷 식별자(Packet Identifiers: PIDs)에 의해 식별된다. 상기 전송 스트림은 인코딩 된 전송 데이터의 전송 및 디코딩을 지원하기 위한 보조 데이터를 갖는다. 상기 보조 데이터는 패킷화된 데이터스트림을 포함하는 모든 프로그램 채널의 콘텐트를 복구하기 위하여 상기 PIDs의 식별 및 개별 데이터 패킷들의 어셈블링용 프로그램 특정 정보(Program Specific Information : PSI)를 갖는다. 비디오 수신기 사용자는 원격 제어 유니트(125)를 이용하여 스크린 상에 나타난 메뉴를 선택함으로써 시청하기를 원하는 프로그램, 저장하기를 원하는 프로그램, 저장에 사용될 매체 및 상기 프로그램이 암호화된 형태로 저장될 것인가 또는 암호화되지 않은 형태로 저장될 것인가를 선택한다. 시스템 제어기(115)는 저장 및 디스플레이용 프로그램을 선택하고, 그리고 선택된 저장 장치 및 매체에 적합한 PSI를 생성하도록 시스템(25)을 구성(configure)하기 위해 인터페이스(120)를 통해 제공되는 선택 정보를 사용한다. 제어기(115)는 데이터 버스를 통하여 구성요소들 내부에 있는 제어 레지스터 값을 설정함으로써 또한 멀티플렉서(37과 110)를 통해 제어신호(C)로 신호 경로를 선택함으로써, 시스템(25)의 구성요소(45, 47, 50, 55, 65, 및 95)를 구성한다. 제어기(115)는 저장되거나 그렇지 않을 경우 처리될 암호화되지 않은 프로그램 데이터스트림으로부터 암호 코드의 실시간 또는 비-실시간 제거를 허용하도록 역시 프로그램 될 수 있다. 이 특징은 암호 키가 시스템(25)으로부터 외부로 유출되는 것을 방지하여, 결과적으로 제 3자에게 가용성을 제한함으로써 암호 보안을 향상시킨다.
제어 신호(C)에 따라, 멀티플렉서(37)는 유니트(35)로부터의 전송 스트림을 선택하거나 또는 재생 모드에서 저장 인터페이스(95)를 통하여 저장 장치(90)에서 검색된 데이터스트림을 선택한다. 통상적인 비-재생 동작에 있어서, 사용자가 시청하기 위해 선택한 프로그램을 구성하는 데이터 패킷들은 선택 유니트(45)에 의해 그들의 PID로 식별된다. 상기 선택된 프로그램 패킷의 헤더 데이터에 있는 암호 표시기가 상기 패킷들이 암호화되어 있음을 나타내면, 선택 유니트(45)는 상기 패킷을 복호 유니트(50)에게 제공한다. 만약 암호화되어 있지 않으면, 선택 유니트(45)는 암호화되지 않은 패킷을 전송 디코더(55)에게 제공한다. 마찬가지로, 사용자가 저장하고자 선택한 프로그램을 구성하는 데이터 패킷은 선택 유니트(47)에 의해 그들의 PIDs로 식별된다. 선택 유니트(47)는 상기 패킷 헤더의 암호 표시기 정보에 따라 암호화된 패킷을 복호 유니트(50)에게 제공하거나, 암호화되지 않은 패킷을 멀티플렉서(110)에게 제공한다.
유니트(45와 47)는 멀티플렉서(37)에 의해 제공되는 입력 패킷의 PIDs와 제어기(115)에 의해 유니트(45와 47)의 제어 레지스터에 미리 적재된 PID 값들과 매치(match)시키는 PID 검출 필터를 채택한다. 상기 미리 적재된 PIDs는 저장될 데이터 패킷을 식별하고, 또한 비디오 이미지 제공에 사용하기 위해 디코드될 데이터 패킷을 식별하기 위해 유니트(47과 45)에서 사용된다. 상기 미리 적재된 PIDs는 유니트(45와 47)의 룩업 테이블(look-up tables) 내에 저장된다. 상기 PID 룩업 테이블은 암호 키와 미리 적재된 각 PID를 연관시키는 유니트(45와 47)에 있는 암호 키 테이블에 메모리 맵(memory mapped)된다. 상기 메모리 맵 된 PID와 암호 키 룩업 테이블은 유니트(45와 47)로 하여금 미리 적재된 PID를 포함하는 암호화된 패킷과 그들의 복호를 허용하는 관련 암호 키를 매치(match)할 수 있도록 한다. 암호화되지 않은 패킷들은 연관된 암호 키를 갖지 않는다. 유니트(45와 47)는 식별된 패킷과 그들의 관련 암호 키를 복호기(50)에 제공한다. 유니트(45)에 있는 상기 PID 룩업 테이블은 또한 미리 적재된 PID를 포함하는 패킷과 패킷 버퍼(60)의 해당 목적지 버퍼 위치를 매치시키는 목적지 테이블에 메모리 맵 된다. 사용자에 의해 시청하거나 저장하기 위해 선택된 프로그램과 관련된 암호 키와 목적지 버퍼 위치 주소는 제어기(115)에 의해 할당된 PIDs와 함께 유니트(45와 47)내에 미리 적재된다.
상기 암호 키는 ISO 7816-3에 부합하는 스마트 카드 시스템(130)에 의해 상기 입력 데이터스트림에서 추출된 암호 코드로부터 생성된다. 상기 암호 키의 생성은 삽입형 스마트 카드 자체(1989년 판 International Standards Organization 문서 ISO 7816-3은 스마트 카드 시스템 용 인터페이스 및 신호 구조를 정의한다)에 미리 저장된 코드화 된 정보로부터 결정되는 고객 자격 정보에 종속적이다. 고객자격 정보는 삽입형 스마트 카드의 코드화 된 정보를 입력 데이터스트림에 있는 명령을 통하여 갱신함으로써 주기적으로 변경될 수 있다.
상기 삽입 가능하며, ISO 7816-3에 부합하는 스마트 카드는 3개의 알고리즘 함수를 적절하게 갖는다. 방송 암호 알고리즘이라 명명된 세 개의 알고리즘 함수 중 두 개는 시스템(25)의 재생이 아닌 모드에서 입력 데이터스트림에서 추출된 방송 암호 코드로부터 암호 키들을 생성하기 위해 할당된다. 방송 암호 알고리즘은 스마트 카드(130) 자체에 있는 방송 암호 코드를 복호함으로써 암호 키들을 생성한다. 3번째 알고리즘 함수는 시스템(25)의 저장 및 재생 모드에서 도출된 방송 암호 키들을 암호화 및 복호화하기 위해 시스템(25)에 적용된다. 상기 재생 알고리즘은 삽입형 스마트 카드 자체에 있는 상기 방송 암호 키들을 암호화 및 복호화한다. 그러나 기타 시스템에서는, 재생 알고리즘 함수는 예를 들어 디코더처럼 다른 곳에 존재할 수 있다.
스마트 카드(130)에서 사용되는 상기 세 개의 암호 알고리즘은 다양한 유형 중 어떤 하나일 수 있으며, 상기 재생 알고리즘은 상기 방송 알고리즘과 동일한 유형일 필요는 없다. 예증 적인 목적으로, 상기 방송 및 재생 알고리즘들은 미국 상무성의 국가 기술 정보 서비스(National Technical Information Service)에 의해 제공된 연방 정보 표준(Federal Information Standards : FIPS) Publications 46, 74 및 81에 정의된 데이터 암호 표준(Data Encryption Standards : DES) 알고리즘 함수로 간주될 수 있다. 그러나, 이들 알고리즘 함수들은 대안으로 Rivest-Shamir-Adlemann(RSA)형 함수와 같은 다른 유형이 될 수 있다.
상기 스마트 카드 상에 있는 상기 두 개의 방송 암호 알고리즘 각각은 입력 데이터스트림 내부에 있는 제어 정보에 의해 활성화될 수 있다. 두개의 방송 암호 알고리즘은 서비스 제공자로 하여금 모든 고객의 방송 암호 알고리즘을 동시에 변경할 수 있도록 허용하기 위해 상기 스마트 카드 속에 포함된다. 서비스 제공자는 새로운 알고리즘이 채택되기 이전 날짜에 새로운 알고리즘을 갖는 새로운 스마트 카드를 모든 고객에게 안전하게 발급함으로써 방송 암호 알고리즘을 변경한다. 변경 날짜에 서비스 제공자는, 동시적으로, 방송 데이터스트림 내부에 있는 제어 정보를 갱신함으로써 스마트 카드가 새로운 알고리즘으로 변경되도록 명령하고; 상기 새로운 알고리즘으로 프로그램을 암호화하고; 그리고 갱신된 암호 코드를 방송 데이터스트림에 삽입한다. 알고리즘의 변경은 암호 시스템 보안을 보호하고 코드-파괴 및 비인가 된 프로그램 접근을 방지하기 위해 정기적으로 또는 원하는 만큼 자주 서비스 제공자에 의해 구현될 수 있다.
본 발명자는 암호 키의 변경을 수반하는 이러한 암호 시스템의 이용이 암호화된 형태로 프로그램을 저장하는데 문제점을 안고 있다는 것을 인지하여 왔다. 특히, 일단 스마트 카드가 변경되고 스마트 카드 알고리즘이 갱신되면, 관련 방송 암호 코드와 함께 암호화된 형태로 저장된 프로그램은 복호화될 수 없을 지도 모른다. 이것은 스마트 카드 상의 새로운 알고리즘이 이전 버전의 스마트 카드와 연관된 암호 코드와 호환되지 않기 때문이다. 결과적으로, 새로운 스마트 카드 알고리즘은 저장된 암호 코드로부터 요청 받은 방송 암호 키를 도출할 수 없다. 이것은 일단 시스템 스마트 카드가 변경되면, 저장된 암호화된 프로그램은 복호될 수 없으며 사용이 불가능하다는 것을 의미한다.
이 문제점을 극복하기 위해서는, 제 3의 다른 알고리즘, 즉 재생 알고리즘이 스마트 카드 상에 적절하게 구비되어야 한다. 재생 알고리즘이라고 명명된 상기 제 3의 알고리즘 함수는 시스템(25)의 저장 및 재생 모드에서 재생 암호 코드를 생성하기 위하여 시스템(25)의 특정 작동 및 특정 모드에서 방송 암호 키를 암호화하는데 이용된다.
일단 상기 재생 알고리즘으로 암호화되면, 상기 재생 암호 코드는 암호화된 프로그램 콘텐트와 함께 저장 매체에 안전하게 저장될 수 있을 것이다. 상기 암호화된 프로그램의 재생 시, 상기 재생 알고리즘 함수는 암호화된 프로그램 콘텐트를 복호화할 수 있도록 원래의 방송 암호 키들을 도출하기 위해 저장된 암호 코드를 복호한다. 상기 도출된 방송 암호 키들은 나중에 기술된 바와 같이 암호화된 프로그램 콘텐트 패킷들을 복호하기 위해 유니트(50)에 의해 사용된다. 상기 재생 알고리즘은 상기 두 개의 방송 알고리즘처럼 자주 변경되지 않고, 차기 버전의 스마트 카드에 변경되지 않은 상태로 남아 있을 수 있다. 이렇게 하면 스마트 카드 및 방송 암호 알고리즘이 변경되더라도 저장된 암호화된 프로그램의 복호화 및 사용을 가능케 할 수 있다.
유니트(45와 47)에 의해 유니트(50)에 제공된 패킷들은 DES로 암호화된다. 도 1에서 시스템(25)의 복호 유니트(50)는 상기 암호화된 패킷들을 복호하는데 DES 알고리즘 함수를 채택한다. 시스템(25)의 다른 구현에서 유니트(50)는 앞서 언급된 RSA 함수와 같은 다른 알고리즘 함수를 대안으로 사용할 수 있다. 유니트(50)는 유니트(45와 47)를 통하여 스마트 카드(130)에 의해 제공된 해당 암호 키들을 사용하여 암호화된 패킷을 복호하는데 공지된 기법을 사용한다. 디스플레이용 프로그램을 포함하는, 유니트(50)로부터의 복호화된 패킷과, 유니트(45)로부터의 암호화되지 않은 패킷들은 디코더(55)에게 제공된다. 저장용 프로그램을 포함하는, 유니트(50)로부터의 복호화된 패킷과 유니트(47)로부터의 암호화되지 않은 패킷은 멀티플렉서(110)에게 제공된다.
유니트(60)는 제어기(115)가 접근 가능한 패킷 버퍼들을 갖는다. 상기 버퍼 중 하나는 제어기(115)가 사용할 데이터를 보관하도록 할당된다. 그리고 다른 세 개의 버퍼는 응용 장치(75, 80 및 85)가 사용할 패킷을 보관하도록 할당된다. 또 하나의 버퍼인, 나중에 기술될 대체(substitution) 버퍼는 암호 코드 데이터를 대체하기 위한 데이터를 보관하는데 사용되어 진다. 제어기(115) 및 응용 인터페이스(70)에 의해 유니트(60)의 버퍼에 저장된 패킷에 대한 접근은 버퍼 제어 유니트(65)에 의해 제어된다. 유니트(45)는 디코딩하기 위해 유니트(45)에 의해 식별된 각 패킷에 대한 목적지 플래그를 유니트(65)에 제공한다. 상기 플래그(flag)들은 식별된 패킷에 대한 개별 유니트(60)의 목적지 위치를 나타내며, 제어 유니트(65)에 의해 내부 메모리 테이블에 저장된다. 제어 유니트(65)는 선입선출(First-In-First-Out: FIFO) 원리에 따라 버퍼(60)에 저장된 패킷에 관련된 일련의 읽기 및 쓰기 포인터들을 결정한다. 상기 목적지 플래그에 관련된 상기 쓰기 포인터들은 유니트(45 또는 50)에서 식별된 패킷이 유니트(60)의 해당 목적지 버퍼 내부의 다음 빈 위치에 순차적으로 저장되도록 허용한다. 상기 읽기 포인터들은 제어기(115)와 응용 인터페이스(70)로 하여금 적절한 유니트(60)의 목적지 버퍼로부터 패킷을 순차적으로 읽도록 허용한다.
유니트(45와 50)에 의해 디코더(55)에게 제공된 암호화되지 않은 패킷 및 복호화된 패킷은 MPEG 시스템 표준의 2.4.3.2절에 의해 정의된 전송 헤더를 갖는다. 디코더(55)는 상기 암호화되지 않은 패킷 및 복호화된 패킷이(MPEG 시스템 표준에 따른) 적응(adaptation) 필드를 갖는지를 상기 전송 헤더로부터 결정한다. 상기 적응 필드는, 예를 들어 콘텐트 패킷의 동기화 및 디코딩을 가능하게 하는 Program Clock References(PCRs)를 포함하는 타이밍 정보를 갖는다. 적응 필드를 갖는 패킷과 같은 타이밍 정보 패킷을 검출하게 되면, 디코더(55)는 인터럽트 메커니즘 내부의 시스템 인터럽트를 설정(setting)함으로써 패킷이 수신되었다는 신호를 제어기(115)에게 보낸다. 더불어서 디코더(55)는 유니트(65)에 있는 타이밍 패킷 목적지 플래그를 변경하고, 상기 패킷을 유니트(60)에 제공한다. 상기 유니트(65) 목적지 플래그를 변경함으로써, 유니트(65)는 디코더(55)에 의해 제공된 타이밍 정보 패킷을 응용 버퍼 위치로 분기하지 않고, 제어기(115)가 사용할 데이터를 보관하도록 할당된 유니트(60) 버퍼 위치로 분기시킨다.
디코더(55)에 의해 설정된 상기 시스템 인터럽트를 수신하면, 제어기(115)는 타이밍 정보 및 PCR 값을 읽어 내부 메모리에 저장한다. 연속되는 타이밍 정보 패킷의 PCR 값은 시스템(25) 마스터 클럭(27 MHz)을 조정하기 위해 제어기(115)에 의해 사용된다. 제어기(115)에 의해 생성된 연속하는 두 타이밍 패킷의 수신시간 간격의 PCR 기반 예측과 마스터 클럭 기반 예측간의 차이는 시스템(25) 마스터 클럭(도면의 간략화를 위해 표시하지 않음)을 조정하는데 사용된다. 제어기(115)는 도출된 시간 예측 차이를 상기 마스터 클럭을 생성하는데 사용되는 전압 제어 오실레이터의 입력 제어 전압을 조정하는데 이용함으로써 이것을 달성한다. 제어기(115)는 상기 타이밍 정보를 내부 메모리에 저장한 후 상기 시스템 인터럽트를 리셋(reset)한다.
디코더(55)에 의해 유니트(45와 50)로부터 수신된 오디오, 비디오, 캡션(caption), 및 기타 정보를 포함하는 프로그램 콘텐트를 갖는 패킷들은 유니트(65)에 의해 디코더(55)에서 패킷 버퍼(60)의 지정된 응용 장치 버퍼로 향하게 된다. 응용 제어 유니트(70)는 버퍼(60)의 지정된 버퍼에서 오디오, 비디오, 캡션, 및 기타 데이터를 순차적으로 검색하여 해당하는 응용 장치(75, 80 및 85)에게 제공한다. 상기 응용 장치는 오디오 디코더(80)와 비디오 디코더(85) 및 고속 데이터 포트(75)를 포함한다. 데이터 포트(75)는 컴퓨터 프로그램과 같은 고속 데이터를 예를 들어 컴퓨터에게 제공하는데 사용될 수 있다. 대안으로, 포트(75)는 예를 들어 데이터를 HDTV 디코더에 출력하는데 사용될 수 있다.
유니트(45)는 PSI 정보를 갖는 패킷이 유니트(60)에서 제어기(115) 버퍼로 간다는 것을 알고 있다. 상기 PSI 패킷들은, 프로그램 콘텐트를 포함하는 패킷에 관하여 기술한 것과 유사한 방법으로, 유니트(45, 50 및 55)를 통하여 유니트(65)에 의해 상기 제어기 버퍼로 향하게 된다. 제어기(115)는 상기 PSI를 유니트(60)에서 읽어 내부 메모리에 저장한다.
제어기(115)는 저장 매체(105)에 저장하기 적합하도록 프로그램 데이터스트림을 생성하고, 또한 저장에 대한 사용자 과금을 위해 도 2 및 도 3의 프로세스를 채택한다. 제어기(115)는 또한 저장 매체(105)에 저장할 재생 암호 코드를 생성하고, 또한 저장될 프로그램 데이터스트림에서 원래의 방송 암호 코드를 제거하기 위해 도 2 및 도 3의 프로세스를 채택한다. 도 2와 도 3의 패킷 식별 및 지시 프로세스는 제어기(115), 제어 유니트(65)에 의해 지배되며, 또한 앞서 기술된 방법으로 유니트(45와 47)의 PID, 목적지 및 암호 키 룩업 테이블에 의해 지배된다.
상기 PSI가 시스템(25)에 입력된 데이터스트림의 모든 프로그램에 관련된 정보를 갖는데 반해서, 상기 CPSI(Condensed Program Specific Information)는 저장될 특정 프로그램에 관련된 정보를 갖는다. 결과적으로 CPSI는 PSI에 비해 보다 적은 저장 용량을 차지하고, 보다 적은 오버헤드를 부과한다. 추가적으로, 고정된 오버헤드 제약이 주어지면, CPSI는 데이터스트림에서 PSI보다 더 자주 반복될 것이다. 따라서 CPSI는 도출되어 프로그램 콘텐트의 복구 지연을 축소하는데 이용될 수 있을 것이다.
MPEG 시스템 표준 2.4.4절에서 정의된 바와 같은, 상기 PSI는 4개의 암호화되지 않은 요소 또는 정보 테이블을 포함한다. 이들은 Program Association Table(PAT), Program Map Table(PMT), Network Information Table(NIT) 및 Conditional Access Table(CAT)이다. 각 테이블은 특정 PID에 의해 인지되는 데이터 패킷으로부터 형성된다. 상기 PMT는 프로그램을 구성하는 패킷화 된 개별 데이터스트림을 식별하는 PID 레벨을 정의한다. 이들 개별 스트림들은 MPEG 표준에서 기본 스트림(elementary stream)으로 명명된다. 기본 스트림은 비디오, 다양한 언어를 위한 오디오 및 캡션 데이터스트림과 같은 데이터스트림을 포함한다. 상기 PAT는 프로그램 번호와, PMT를 포함하는 패킷의 식별 및 조립을 허용하는 PID를 상호 연결짓는다. 상기 NIT는 선택사항이며, 또한 상기 NIT는 구조화(structured)되어, 예를 들어 위성 전송 채널 주파수 및 트랜스폰더(transponder) 채널과 같은 물리적인 네트워크 파라미터들을 정의하는데 사용될 수 있다. 상기 CAT는 사용자의 자격에 따라 프로그램에 대한 접근을 관할하는 암호 코드와 같은 조건부 접근 정보를 갖는다.
도 2의 단계(205)에서 제어기(115)(도 1)는, 단계(200)에서 시작에 이어서, 시스템 전원-투입 시 초기화 절차를 수행한다. 단계(205)에서, 제어기(115)는 MPEG에서 정의된 PAT와 CAT 테이블을 위한 PID 값(각각 PID 16진수 값 0000과 0001)을 유니트(45)(도 1)의 PID 검출 필터에 적재(load)한다. 추가적으로, 제어기(115)는 유니트(45) 목적지 테이블을 갱신함으로써, 상기 PAT와 CAT 패킷을 유니트(60)의 상기 제어기 버퍼에 미리 할당한다. 유니트(45)에 의해 검출된 PAT와 CAT 패킷은 유니트(65)의 통제하에서 디코더(55)를 통하여 유니트(60)에 있는 상기 제어기 버퍼로 향하게 된다. 단계(205)에서, 제어 유니트(65)는 PSI 패킷들이 유니트(60)에 존재한다는 신호를 PSI 인터럽트를 통해 제어기(115)에게 보낸다. PSI 인터럽트를 수신하면, 제어기(115)는 자신의 지정된 유니트(60) 버퍼에 저장된 패킷을 반복해서 엑세스하여, 상기 완전한(complete) CAT 및 PAT 데이터를 내부 메모리에 저장한다. 제어기(115)는 PAT로부터 PMT와 NIT 패킷을 식별하는 PID를 결정한 다음, 완전한 PMT 및 NIT 데이터를 내부 메모리에 저장하기 위해 이 프로세스를 반복한다. 제어기(115)는 수신기의 전원이 켜져 있는 동안 PSI 인터럽트의 수신시 버퍼(60)를 연속적으로 엑세스하여, 내부 메모리에서 PSI 패킷들을 획득(capture)한다. 그 결과로, 제어기(115)는 시스템(25)에 입력되는 전송 데이터스트림의 전체(full) PSI를 구성하는 PAT, PMT, NIT 및 CAT 데이터를 제어기 내부 메모리에서 획득한다.
도 2의 단계(210)에서, 암호화된 형태로 저장될 프로그램뿐만 아니라, 사용자가 저장하기를 원하는 프로그램과 저장에 사용될 매체 및 장치를 식별하는 사용자 생성 데이터(SP, SM, SE)는 제어기(115)(도 1)에 입력된다. 여러 가지 이유로 사용자는 암호화되지 않은 저장보다는 암호화된 저장을 선호하여 선택할 것이다. 예를 들어, 서비스 제공자는 사용자가 수행할 수 있는 복사의 횟수를 제한하는 방법으로 암호화된 형태로 저장하는 것을 더 저렴하게 할 수 있을 것이다. 서비스 제공자는 사전에 저장된 스마트 카드 자격 정보를 통해 암호화된 프로그램으로의 접근을 제어함으로써 이것을 달성할 수 있을 것이다. 제어기(115)로의 선택 데이터 입력은 인터페이스(120)를 통하여 사용자가 원격 제어 유니트(125)로 화면상에서 메뉴를 선택함으로써 입력된다. 단계(215)에서, 입력된 선택 데이터(SP)에 따라 제어기(115)는 저장하기 위해 선택된 프로그램의 PID를 저장된 PSI로부터 도출한다. 유니트(47) 검출 필터에 저장될 프로그램의 PID가 제어기(115)에 의해 적재된다. 이것은 유니트(47)로 하여금 저장을 위해 선택된 프로그램을 구성하는 패킷을 식별할 수 있도록 한다. 단계(215)에서, 제어기(115)는 또한 유니트(60) 대체 버퍼에 널(null) 데이터를 미리 적재한다. 상기 널 데이터는 저장을 위해 선택된 암호화된 형태의 프로그램 방송에서 발생하는 방송 암호 코드로 대체될 것이다.
도 2의 단계(215)에서, 유니트(47)(도 1)는 암호화되지 않은 패킷을 멀티플렉서(110)에게 제공하고, 관련 방송 암호 키와 함께 (패킷 헤더 데이터의 암호 지시기에 의해 식별되는) 암호화된 패킷을 복호 유니트(50)에 제공한다. 스마트 카드(130)(도 1)에 의한 암호 키의 생성에 이어, 상기 방송 암호 키들은 앞서 기술된 방법으로 CAT에서 얻은 선택된 프로그램(SP)에 대한 암호 코드를 복호화함으로써 도 2의 단계(215)에서 제어기(115)에 의해 유니트(47)에 제공된다. 그러나, 선택 데이터(SE)가 암호화된 저장을 요청하면, 유니트(47)는 저장될 암호화된 패킷을 멀티플렉서(110)에게 전달한다. 그 결과로서, 도 2의 단계(215)에서, 저장될 프로그램(SP)을 포함하는 패킷은 선택 데이터 SE에 따라 암호화되거나 복호화된 형태 중 하나로 멀티플렉서(110)에게 제공된다.
단계(217 - 227)에서, 제어기(115)는 시스템(25)에 입력된 전송 데이터스트림에서 획득된 전체 PSI로부터 저장하기 위해 선택된 프로그램(SP)용 CPSI를 형성한다. 만일 SE 데이터가 암호화된 저장을 요청하면, 제어기(115)는 판단 단계(217)에 이어 단계(227)를 수행한다. 단계(227)에서, 제어기(115)는 저장될 프로그램용 재생 암호 코드를 형성하기 위해 단계(215)에서(방송 암호 코드의 복호화에 의해) 이전에 생성된 방송 암호 키를 암호화하기 위해 스마트 카드 시스템(130)에 있는 재생 알고리즘 함수를 사용한다. 상기 CPSI는 시스템(25)에 입력된 전송 데이터스트림의 PSI에 원래 존재하는 방송 암호 코드를 제외하지만 재생 암호 코드는 포함하도록 형성된다. 결과적으로, 저장될 프로그램용으로 형성된 상기 데이터스트림은 자신의 관련 방송 암호 코드를 포함하지 않는다. 이것은 암호 키가 제 3자에 의해 접근 가능한 분리형 저장 매체 상에 저장될 때 발생하는 암호 키 보안상의 위협을 방지할 수 있다. 키가 일단 저장 매체 상에서 접근 가능하면, 상기 키 보안은 가용한 역-공학(reverse-engineering) 및 코드-파괴(code-breaking) 기법의 정교성에 종속된다. 본 시스템에서, 다중 보안 레벨은 방송 암호 키가 도출되는 방송 암호 코드를 저장하지 않음으로써, 그리고 방송 암호 키를 암호화된 형태로 저장함으로써 제공된다. 나아가, 키가 저장된 프로그램에서 추론될지라도, 그것은 방송 암호 알고리즘이 정기적으로 변경된 현행 방송 프로그램으로의 접근을 제공하지 않을 것이다.
만약 상기 SE 입력 데이터가 암호화된 저장을 요청하지 않으면, 제어기(115)는 판단 단계(217)에 이어서 단계(225)를 수행한다. 단계(225)에서, 제어기(115)는 시스템(25)에 입력된 전송 테이터스트림의 PSI로부터 저장될 프로그램의 CPSI를 형성하고, CPSI에서 암호 코드를 제외시킨다.
상기 기술된 암호 시스템은 예증적일 뿐이다. 대안적인 암호 메커니즘은 방송 및 재생 암호 코드를 상기 PSI 이외의 데이터스트림 정보 영역에서 운송할 수 있다. 다른 암호 메커니즘은 PSI의 생성에서 수반되는 것과는 다른 시간 간격으로 암호 코드의 생성 및 삽입을 또한 요청할 수도 있다. 만약 방송 암호 코드가 PSI에서 운송되지 않으면, 저장될 프로그램용으로 형성된 데이터스트림에서 방송 암호 코드를 제외하기 위해 상기 방송 암호 코드를 다른 데이터로 대체하는 것이 필요할 수도 있다. 상기 CPSI가 발생하는 것과는 다른 간격으로 방송 암호 코드를 널 데이터로 대체하기 위한 준비는 추후에 기술된다. 특히, 방송 암호 코드를, 실시간으로, 즉 예를 들어 방송 암호 코드가 패킷 헤더에서 운송되는 패킷 주기(packet frequency)로 대체하는 것은 단계(237-249)와 연계하여 논의된다.
단계(230)에서, MPEG 신택스(MPEG 시스템 표준 2.4.4.3 - 2.4.4.11 의 문단)에 따라, 제어기(115)는 상기 CPSI 데이터를 섹션으로 형성한다. 단계(230)에서, 제어기(115)는 저장할 데이터스트림에 삽입할 CPSI 데이터를 포맷(format)하고 패킷화 하기 위해 헤더 데이터를 CPSI 데이터 섹션에 역시 추가한다. 제어기(115)는 제어기(115)의 내부 메모리에 저장된 상기 PSI 헤더 데이터로부터 MPEG 시스템 표준의 2.4.3.2 와 2.4.3.3 절에 따라 헤더들을 생성한다. 그러나, CPSI 섹션 데이터는 해당하는 PSI 섹션 데이터와는 길이가 다르다. 따라서, '연속성 계수 지시기' 및 '페이로드(payload) 유니트 시작 지시기'를 포함하는 새로운 헤더 파라미터는 제어기(115)에 의해 생성되고, 헤더 데이터의 각 지시기 필드에 삽입된다. 제어기(115)에 의해 생성된 상기 새로운 '연속성 계수 지시기'는, 예를 들어 해당 PSI 요소들의 PID당 상이한 패킷의 수 대신에, CPSI 요소들의 PID당 패킷의 수를 반영한다. 제어기(115)에 의해 생성된 상기 새로운 '페이로드 유니트 시작 지시기'는, 예를 들어 해당 PSI 섹션의 첫 번째 바이트 대신에 상기 CPSI 섹션의 첫 번째 바이트를 식별한다.
단계(230)에 이어서, 도 2의 흐름도는 도 3의 단계(237)로 계속된다. 단계(237)에서, 제어기(115)는 방송 암호 코드를 CPSI 이외의 데이터스트림 필드로 운송할 것인가를 결정한다. 특히, 제어기(115)는 방송 암호 코드를 패킷 헤더의 MPEG 호환 적응 필드로 운송할 것인가를 결정한다(MPEG 시스템 표준 신택스 2.4.3.4절에 따라). 만약 그렇다면, 제어기(115)는 패킷 헤더에 있는 방송 암호 코드가 널 데이터로 대체되는 CPSI 패킷과 프로그램 콘텐트 패킷을 포함하는 복합 데이터스트림을 생성하기 위해 단계(249)를 수행한다. 상기 암호 코드 대체는 한 패킷씩 패킷 주기로 수행된다.
단계(249)에서, 단계(215)(도 2) 동안에 유니트(60)의 대체 버퍼에 미리 적재된 대체 패킷 데이터는 제어기(115)의 통제하에서 유니트(60)에서 멀티플렉서(110)에게 제공된다(도 1). 추가적으로, 단계(249)에서는, 단계(230)에서 형성된 패킷화 된 MPEG 호환 섹션 데이터 형태의 상기 CPSI는 제어기(115)에 의해 멀티플렉서(110)(도 1)에 제공된다. 단계(215)와 연계하여 앞서 기술한 것처럼, 유니트(47) 또는 유니트(50)로부터의 프로그램 콘텐트 패킷 데이터스트림은 또한 멀티플렉서(110)에 제공된다. 단계(249)에서, 제어기(115)는 멀티플렉서(110)에 의해 저장 인터페이스(95)에 출력되는 복합 데이터스트림을 생성하기 위해, 멀티플렉서(110)에 입력된 프로그램 콘텐트 데이터스트림, CPSI 데이터스트림, 및 대체 데이터들을 경로 선택 신호(C)를 이용하여 다중화한다. 상기 복합 데이터스트림은 프로그램 콘텐트 패킷과 패킷 헤더에 방송 암호 코드가 널 데이터로 대체된 CPSI 패킷을 포함한다.
제어 유니트(65)(도 1)로부터의 PSI 인터럽트 신호 및 대체 타이밍 신호에 따라, 제어기(115)는 상기 CPSI 패킷과 널 데이터를 저장될 프로그램 데이터스트림에 삽입하는 것을 동기화한다. 상기 PSI 인터럽트는 단계(205)와 연계해서 기술된 것처럼 버퍼(60)에 PSI 패킷이 존재하는 것을 나타낸다. 상기 대체 타이밍 신호는 널 데이터의 삽입을 패킷 헤더의 방송 암호 코드의 발생과 동기화 시킨다. 이러한 방법에 있어서, 패킷화 된 CPSI 섹션은 PSI의 해당 섹션을 대체하기 위해 PSI 위치에 삽입되며, 방송 암호 코드는 제거된다. 상기 암호화되지 않은 CPSI 데이터는 저장하기 위해 암호화된 프로그램 또는 암호화되지 않은 프로그램을 생성하기 위해 멀티플렉서(110)에 입력된 암호화된 프로그램 콘텐트 데이터스트림 또는 암호화되지 않은 프로그램 콘텐트 데이터스트림 중 하나에 삽입 가능하다.
단계(249)에서 수행된 방송 암호 코드 대체는 MPEG 패킷 헤더 적응 필드 이외의 데이터스트림 필드에서 운송되는 코드에 또한 사용될 수 있다는 점을 유의해야 한다. 나아가, 상기 암호 코드는 적응 필드가 발생하는 시간 간격 이외의 간격에서 대체될 수 있다. 예를 들어, 널 데이터는 독점적인 Digital Satellite System(DSSTM) 내에 있는 보조 패킷;(MPEG 시스템 표준 신택스 2.5.3.7 - 2.5.4.2 절에 따르는) Packetized Elementary Stream(PES) 필드;(MPEG 시스템 표준 신택스 부록 A에 따르는) Digital Storage Media Control Commands(DSMCC) 필드; 및 표준화된 CEBus 제어 프로토콜{가정 자동화 표준(CEBus), EIA/IS-60, 1989년 12월}과 같은 기타 데이터 전송 프로토콜에 따라 포매팅 된 비-MPEG 패킷을 포함하는 다양한 MPEG 및 비-MPEG 호환 데이터스트림 위치에서 발생하는 암호 코드를 대신할 수 있다.
만약 암호 코드가 코드 자체가 단지 중요한 데이터 항목인 패킷에서 운송된다면, 패킷을 운송하는 코드는 상기 출력 데이터스트림에서 통째로 생략될 수 있다. 이것은 PID 선택 유니트(45와 47)(도 1)를 통해 패킷을 폐기함으로써 달성될 수 있거나, 단계(249)에서 수행된 다중화 동작 기간에 패킷을 생략함으로써 달성할 수 있다. 그러나, 출력 데이터스트림 신택스(syntax) 내부에서의 데이터 속도 및 데이터 구조에 민감한 파라미터들은 이러한 패킷 데이터 생략으로 발생하는 데이터 속도의 변경을 반영하도록 갱신될 필요가 있을 것이다.
단계(249)에서, 저장 인터페이스(95)(도 1)는 CPSI와 널 데이터를 구비하는 패킷화 된 테이터스트림(이후부터 CPSI 스트림이라 명명함) 형태로 저장될 프로그램을 멀티플렉서(110)로부터 수신한다. 단계(249)에 이어 단계(254)(도 3)에서는, 시스템(25)의 조건부 접근 시스템은 프로그램 저장(또는 다른 장치와의 통신)에 대해 사용자에게 과금한다. 사용자는 삽입형 스마트 카드 자체 내에 과금 정보를 저장함으로써 요금이 부과된다. 과금 정보의 저장은 재생 알고리즘을 사용함으로써 개시되지만, 요금 청구는 알고리즘을 사용하는 것과 동시에 일어날 필요는 없다. 과금 정보는 사용자가 암호화된 방송 프로그램을 저장했다는 것을 나타낸다. 과금 정보는 서비스 제공자에 의한 전화 링크를 통해 추후 엑세스되며, 그 정보는 통상적인 과금 처리를 통해 사용자에게 청구하는데 사용된다. 다른 과금 메커니즘도 마찬가지로 가능하다. 예를 들어, 예금액은 스마트 카드에 있는 미리 저장된 총 예금액에서 공제될 수 있을 것이다. 나아가, 스마트 카드는 요구하는 저장 유형에 따라 과금액을 변경할 수 있을 것이다. 예를 들면 저장된 프로그램을 단지 한번만 복사 또는 재생할 수 있는 저장료(fee for storage) 방식과 프로그램을 무제한으로 복사 또는 재생할 수 있는 저장료 방식이 있을 수 있다. 신청된 저장 유형은 CPSI 스트림 자체 또는 CPSI 스트림 외부의 패킷 데이터의 지정된 복사 금지 데이터에 인코딩된다. 저장 매체(105) 상의 저장에 적합한 프로그램 데이터스트림(CPSI 스트림)을 생성하고, 사용자에게 저장에 대하여 과금하기 위해 제어기(115)에 의해 사용될 도 2-3의 프로세스는 단계(258)에서 종결된다.
단계(237)에서, 제어기(115)가 패킷 헤더의 MPEG 호환 적응 필드에서 방송 암호 코드가 운송되지 않았다고 판단하면, 제어기(115)는 단계(240 - 245)를 수행한다. 상기 단계들은 멀티플렉서(110)에 입력되는 저장될 프로그램을 나타내는 데이터스트림에 방송 암호 코드가 존재하지 않기 때문에 널 데이터를 삽입할 필요가 없다는 점 이외에는 단계(249-258)와 똑같다. 그러나 만약 방송 암호 코드가 존재하면, 제어기(115)는 저장 인터페이스(95)를 통해 저장용 CPSI 스트림을 생성하기 위해 단계(240)를 수행하며, 단계(249)와(254)와 연관하여 기술된 것과 유사한 방식으로 사용자에게 저장에 대한 요금을 부과하기 위해 단계(244)를 수행한다. 도 2-3의 처리 분기는 단계(245)에서 종결된다. 그러나, 상기 CPSI 스트림은 인터페이스(95)를 통한 저장 대신에 인터페이스(70)를 통한 디스플레이 또는 통신과 같은 단계(240과 249)에서의 다른 응용에 선택적으로 제공될 수 있을 것이라는 점을 주의해야 한다.
멀티플렉서(110)에서 출력되는 CPSI 스트림은 데이터의 간격 및 비트 율 변화를 감소시키기 위해 인터페이스(95)에 의해 버퍼링된다. 그 결과로 버퍼링 된 데이터는 저장 장치(90)에 의해 매체(105)에 저장되기 적합하도록 처리된다. 제어기(115)는 I/O 포트(100)을 통하여 표준 CEBus 제어 프로토콜{예를 들어 가정 자동화 표준(CEBus), EIA/IS-60, 1989년 12월}을 이용하여 명령을 내림으로써 저장 장치(90)(도 1)의 동작을 개시하고 제어한다. 저장 장치(90)는 선형 저장 매체인 DVHSTM형 장치이고, 매체(105)는 예를 들어 비디오 테이프와 같은 선형 순차 접근형 매체이다. 저장 장치(90)는 저장에 적합한 인코딩 된 데이터스트림을 생성하기 위해 채널 코딩, 인터리빙(interleaving) 및 리드 솔로몬(Reed Solomon) 인코딩과 같은 이미 알려진 에러 인코딩 기법을 사용하여 인터페이스(95)로부터의 버퍼링된 데이터스트림을 인코딩한다. 유니트(90)는 CPSI를 포함하는 최종 인코딩 된 데이터스트림을 테이프 매체(105)에 저장한다. 비록 도 1의 예증적인 실시에서 데이터를 선형 저장 매체에 저장하는 DVHSTM장치로 기술되었지만, 저장 유니트(90)는 어떤 유형의 저장 유니트라도 무방하다. 예를 들어, 유니트(90)는 데이터를 RAM 또는 비선형 매체에 저장하기 위해 솔리드 스테이트(solid state) 또는 비-선형 장치일 수 있다. 비-선형 매체는 예를 들어 CDROM이나 DVD를 포함하는 디스크 매체와 같이 비-순차적인 접근을 허용하는 매체이다. 만일 유니트(90)와 매체(105)가 비-선형이나 솔리드 스테이트형 저장 시스템이면, 유니트(90)는 CPSI 데이터를 CPSI 스트림에서 분리하여 그 매체의 지정된 디렉토리 지역에 CPSI 데이터를 저장한다. 이것은 CPSI의 반복 저장을 피하고, 요구되는 저장 용량을 감소시키는데 유용하다. 선택적인 안으로, 유니트(90)는 형성되어 유니트(90)에 입력된 그대로 CPSI 스트림을 저장할 수 있는데, 이는 CPSI 데이터의 한번 이상의 반복을 포함한다.
나아가, 도 1의 시스템(25)은 선형, 비-선형 및 솔리드 스테이트 형태를 포함한 복수의 다양한 유형의 저장 장치들의 동작을 지원하는 복수개의 저장/검색 경로를 구비할 수도 있다. 도 1에 보여주고 있는 단일 저장/검색 경로는 앞에서 기술한 바와 같이 유니트(47, 90, 95, 105 및 110)를 포함한다. 병렬 저장 기능을 만들기 위해 이들 요소를 반복함으로써, 시스템(25)은 복수의 저장 경로를 구비할 수 있도록 쉽게 확장될 수 있다. 특정 저장 장치로 향하는 저장 경로 및 프로그램은 앞에서 기술된 바와 같이, 원격 제어 유니트(125)를 이용하여 화면상의 메뉴 선택 이후에 인터페이스(120)를 통하여 제어기(115)에 입력된 사용자 생성 데이터(SP, SM)에 의해 선택된다. 도 1의 시스템(25)은 재생 모드에서 도 4의 프로세스를 이용하여 저장 장치(90)와 매체(105)로부터 프로그램을 복구한다. 상기 복구된 데이터스트림은 시스템(25)에 의해 처리된 후, 예를 들어 디스플레이 또는 출력을 위하여 응용 장치(75, 80 및 85)에게 제공된다. 대안으로, 상기 프로그램 데이터스트림은 다른 병렬 저장 장치(도면의 간략화를 위해 도 1에 표시하지 않음)에 저장될 수 있다.
도 4의 단계(500)에서의 시작에 이어 단계(505)에서, 사용자 생성 데이터(SR, SM)는 복구될 프로그램(SR)과 프로그램이 복구되는 저장 장치(SM)를 식별하는 시스템(25)(도 1)의 제어기(115)에 입력된다. 사용자가 원격 제어 장치(125)를 사용하여 화면상의 메뉴를 선택한 이후에, 사용자 선택 데이터는 인터페이스(120)를 통하여 제어기(115)에 입력된다. 여기에서 예증적인 목적을 위해 사용자가 복구될 프로그램을 저장 장치(90)(도1)로부터 선택하는 것으로 간주된다.
단계(510)에서, 제어기(115)는 앞서 기술한 바와 같이, 입출력 포트(100)를 통해 표준 CEBus 제어 프로토콜을 이용하여 명령하여, 매체(105)로부터 장치(90)에 의해 선택된 프로그램 데이터스트림의 복구를 개시한다. 장치(90)는 저장을 위해 원래 자신에게 주어진 해당 데이터를 복구하기 위해 매체(105)에서 검색된 에러가 인코딩 된 데이터를 디코딩한다. 장치(90)는와 같은 선형 저장 장치이거나 솔리드 스테이트 RAM이나 비-선형인 DVD 또는 CDROM형 장치와 같은 다른 유형의 저장 장치 일 수 있다. 상기 복구되어 디코딩된 데이터스트림은 단계(510)에서 장치(90)에 의해 인터페이스(95)로 전송된다. 상기 데이터 전송은 표준 CEBus를 통하여 제어기(115)에 의해 제어되고 동기화된다. 인터페이스(95)는 MPEG과 호환되며 MPEG의 비트 율 제약을 따르는 버퍼링된 데이터 출력을 제공하기 위해 데이터 패킷간 시간 간격을 조정하기 위해 유니트(90)로부터 수신한 데이터를 버퍼링한다.
단계(515)에서, 제어기(115)는 경로 선택 신호(C)를 이용하여 인터페이스(95)로부터의 상기 버퍼링된 출력(재생 데이터스트림)을 멀티플렉서(37)를 통해 PID 선택 유니트(45와 47)로 향하게 한다. 단계(515)에서, 제어기(115)는 단계(244와 254)(도 3)에서 지정된 복사 방지 데이터에 인코딩 된 일회 복사 또는 무제한 복사 한계가 상기 복구 프로그램에 의해 초과되었는지를 판단한다. 상기 복구가 허용되면, 단계(515)(도 4)에서 제어기(115)는 단계(227)(도 2)에서 생성된 재생 암호 코드를 선택된 프로그램(SR)의 CAT로부터 복구하고, 단계(215)(도 2)와 연관하여 이전에 설명된 방법으로 상기 복구된 코드를 스마트 카드 유니트(130)에게 제공한다. 제어기(115)의 제어 아래에서, 단계(515)(도 4)에서 스마트 카드(130)는 재생 암호 코드에서 원래의 방송 암호 키를 생성하기 위해 재생 알고리즘을 사용한다. 방송 암호 키는 단계(515)에서 제어기(115)에 의해 유니트(45와 47)의 PID, 목적지 및 암호 키 룩업 테이블에 제공된다.
단계(520)에서, 시스템(25)의 유니트(45와 47) 및 잔여 유니트들은 멀티플렉서(110)를 통해 저장하기 위해 또는 인터페이스(70)를 통해 응용 용도로 재생 데이터스트림을 처리한다. 유니트(95)에서 출력된 재생 데이터스트림과 선택기(35)에서 출력된 전송 데이터스트림 모두는, 멀티플렉서(37)에서 선택된 후, 시스템(25)에 의해 유사한 방법으로 처리된다. 이들 두 데이터스트림은 암호 키 생성 단계 와 CPSI 처리 단계를 제외하고는 전송 데이터스트림을 위해 앞서 설명된 방법으로 처리된다. 재생 모드에서, 스마트 카드(130)는 방송 암호 키 생성 알고리즘 대신에 재생 암호 키 생성 알고리즘을 사용한다. 스마트 카드(130)는 도 2의 단계(227)에서 재생 인코딩 알고리즘으로 전에 인코딩 된 암호 코드를 복호화하기 위해 재생 알고리즘 함수를 사용한다. 이에 따라, 유니트(130)는 재생하기 위해 선택된 프로그램(SR)용으로 원래의 방송 암호 키를 도출한다. 상기 방송 암호 키는 후속하는 단계(520)(도 4)에서, 전송 데이터스트림에 대해 앞서 설명된 방법으로, 암호화된 프로그램 콘텐트 패킷을 복호화하기 위해 DES 복호 유니트(50)에 의해 사용된다. 그러나, 멀티플렉서(37)에 의해 선택된 상기 재생 데이터스트림은 이미 상기 CPSI를 구비한다. 그러므로, 재생 모드에 있어서, 단계(520)에서 제어기(115)는 도 2-3과 연관하여 설명된 CPSI 형성에 관련된 단계를 수행하지 않는다.
도 4에서 보여준 상기 예증적인 재생 모드에 있어서, 단계(520)에서 전송 시스템(25)은 디스플레이를 위해 응용 디코더(80 및 85)에 디코드된 데이터를 제공하기 위하여 상기 재생 데이터스트림을 디코딩 전송한다. 상기 모드에서, 시스템(25)은 선택된 프로그램(SR)을 나타내는 디코드된 전송 데이터스트림을 제공하기 위해, MPEG 표준에 따라 상기 재생 데이터스트림에 포함된 가장 최근의 완전한 CPSI 데이터를 사용한다.
상기 CPSI는 PID 필터(45와 47), 복호기(50), 디코더(55), 버퍼(60) 및 제어 유니트(65)를 이용하여 재생 데이터스트림을 도 1과 연관하여 이전에 설명된 방법과 유사한 방법으로 디코딩 전송하는데 사용된다. 상기 CPSI를 제외한 상기 디코드된 전송 데이터스트림은 MPEG 디코딩 및 이미지 재생을 위해 인터페이스(70)를 통하여 응용 디코더(80과 85)에 제공된다. 기타 모드에서, 시스템(25)은 상기 CPSI를 구비하는 재생 데이터스트림을 예를 들어 고속 데이터 포트(75)와 같은 다른 응용 장치에게 제공한다. 상기 CPSI는 필요에 따라 재생 데이터스트림을 디코딩 전송하는데 사용하도록 상기 응용 장치 또는 후속 장치에 의해 사용될 수 있다. 만일 상기 재생 데이터스트림이 예를 들어 장치(90)가 아닌 제 2 저장 장치에 저장되면, 멀티플렉서(110)는 CPSI를 구비하는 상기 데이터스트림을 제 2 저장 인터페이스를 통해 제 2 저장 장치에게 제공한다. 나아가, 상기 제 2 저장 장치 및 인터페이스(둘 다 도1에 나타나 있지 않음)는 각각 유니트(90과 95)의 동작 및 기능을 모방한다. 응용 디코더(80과 85)에 의해 MPEG으로 디코드된 인터페이스(70)로부터의 상기 데이터는 각각 유니트(80과 85)의 오디오 및 이미지 재생 장치들을 통하여 제공된다.
단계(527)(도 4)에서, 시스템(25)의 상기 조건부 접근 시스템은 프로그램 재생에 대해 사용자에게 요금을 부과한다. 사용자는 재생 알고리즘을 이용할 때 과금 정보를 저장함으로써 삽입가능한 스마트 카드 내부에서 요금이 부과된다. 상기 과금 정보는 사용자가 암호화된 방송 프로그램을 복구하였다는 것을 나타낸다. 상기 과금 정보는 서비스 제공자에 의해 전화 링크를 통하여 추후에 엑세스되며, 그 정보는 종래의 과금 처리에 의해 사용자에게 요금을 부과하는데 사용된다. 앞에서 설명한 것처럼, 다른 과금 메커니즘이 동등하게 사용될 수 있다. 도 4의 재생 프로세스는 단계(530)에서 종결된다.도 1의 구조는 배타적인 것이 아니다. 다른 구조들이 동일한 목적을 달성하기 위해 본 발명의 원리에 따라 도출될 수 있다. 나아가, 도 1 구조의 요소들의 기능 및 도 2-4의 처리 단계는 통째로 또는 부분적으로 프로그램 된 마이크로프로세서의 명령 내에서 구현될 수 있다. 추가적으로, 본 발명의 원리는 MPEG PSI 테이블에서 운송되는 것으로 본 명세서에서 설명된 임의의 정보를 운송하는데 MPEG 또는 비-MPEG 호환 전자 프로그램 가이드를 사용하는 임의의 시스템에 이용된다. 본 발명의 원리는 MPEG 호환 PSI 테이블에서 운송되는 프로그램 가이드 또는 PSI에 한정되지 않는다.
상술된 바와 같이, 본 발명은 디지털 신호 처리 분야, 보다 구체적으로는 예를 들어 방송, 위성 또는 유선 비디오 자료의 소비자 수신기에 의한 저장을 위한 암호화된 패킷 데이터의 조건부 접근 처리, 디코딩 및 포맷팅에 이용가능하다.

Claims (27)

  1. 암호화된 형태로 저장하기 위해 디지털 비디오 데이터를 수신하고 처리하기 위한 비디오 디코더에서, 방송되는 암호화된 프로그램 데이터 및 암호 코드를 포함하는 디지털 비디오 데이터를 처리하기 위한 시스템에 있어서,
    조건부 접근 프로세서(conditional access processor)로서,
    상기 방송되는 암호화된 프로그램 데이터의 복호용 암호 키를 제공하기 위해 상기 암호 코드를 복호하기 위한 제 1 알고리즘 수단,
    저장 매체로부터 복구된 암호화된 프로그램 데이터의 복호용 암호 재생키를 제공하기 위해 상기 암호 키를 암호화하기 위한 제 2 알고리즘 수단, 및
    a)상기 암호 키 및 b)상기 재생 키 중 하나를 이용하여 암호화된 프로그램 데이터를 복호하기 위한 제 3 알고리즘 수단을 포함하는, 조건부 접근 프로세서와;
    암호화된 프로그램 데이터를 관련 암호화된 재생 키와 함께 저장 매체 상에 저장하기 적합하도록 포맷팅하는 수단을 포함하고,
    여기서, 상기 제 1 알고리즘은 상기 제 2 알고리즘과 다르며, 상기 제 2 알고리즘과는 다른 속도로, 그리고 독립적으로 갱신될 수 있는
    디지털 비디오 데이터 처리 시스템.
  2. 제 1항에 있어서, 상기 제 1 및 제 2 알고리즘들이 삽입형 스마트 카드(insertable smart card)에 포함되는 디지털 비디오 데이터 처리 시스템.
  3. 제 1항에 있어서, 상기 제 2 알고리즘 수단은 상기 재생 키를 제공하기 위하여 저장 매체로부터 복구되어진 암호화된 재생 키를 복호하기 위한 수단을 포함하는 디지털 비디오 데이터 처리 시스템.
  4. 제 1항에 있어서, 상기 제 1 알고리즘은 상기 제 2 알고리즘 보다 더 자주 갱신되는 디지털 비디오 데이터 처리 시스템.
  5. 제 1항에 있어서, 상기 조건부 접근 프로세서는 상기 제 3 알고리즘에 의해 사용될, a)상기 암호 키 및 b)상기 재생 키 중 하나를 선택하는 디지털 비디오 데이터 처리 시스템.
  6. 삭제
  7. 암호화된 형태로 저장하기 위해 디지털 비디오 데이터를 수신하고 처리하기 위한 비디오 디코더에서, 방송되는 암호화된 프로그램 데이터 및 암호 코드를 포함하는 디지털 비디오 데이터를 처리하기 위한 방법에 있어서,
    상기 방송되는 암호화된 프로그램 데이터를 복호하는데 사용하기 위한 암호 키를 제공하기 위해 제 1 알고리즘을 이용하여 상기 암호 코드를 복호화하는 단계와;
    저장 매체로부터 복구된 암호화된 프로그램 데이터를 복호하는데 사용하기 위한 암호화된 재생 키를 제공하기 위해 제 2 알고리즘을 이용하여 상기 암호화된 키를 암호화하는 단계와;
    a)상기 암호 키와 b)상기 재생 키 중 하나를 이용하여 제 3 알고리즘으로 암호화된 프로그램 데이터를 복호하는 단계와;
    암호화된 프로그램 데이터를 관련 암호화된 재생 키와 함께 저장 매체 상에 저장하기 적합하도록 포맷팅하는 단계를 포함하고,
    여기서, 상기 제 1 알고리즘은 상기 제 2 알고리즘과 다르며, 상기 제 2 알고리즘과는 다른 속도로, 그리고 독립적으로 갱신될 수 있는
    디지털 비디오 데이터 처리 방법.
  8. 제 7항에 있어서, 상기 포맷팅 단계는 MPEG 호환인 데이터스트림을 제공하는 디지털 비디오 데이터 처리 방법.
  9. 제 7항에 있어서, 상기 제 1 암호 알고리즘을 상기 제 2 알고리즘 보다 더 자주 갱신하는 단계를 포함하는 디지털 비디오 데이터 처리 방법.
  10. 제 8항에 있어서, 상기 포맷팅 단계에서, 상기 암호화된 재생 키는 프로그램 특정 정보(Program Specific Information : PSI)에 포함되는 디지털 비디오 데이터 처리 방법.
  11. 제 10항에 있어서, 상기 암호화된 재생 키는 상기 PSI의 프로그램 맵 테이블 (Program Map Table : PMT) 내에 포함되는 디지털 비디오 데이터 처리 방법.
  12. 제 10항에 있어서, 상기 암호화된 재생 키는 상기 PSI에 있는 조건부 접근 테이블 (Conditional Access Table : CAT) 내에 포함되는 디지털 비디오 데이터 처리 방법.
  13. 제 7항에 있어서, 상기 포맷팅 단계에서 생성된 데이터스트림을 저장 매체 상에 저장하는 단계를 더 포함하는 디지털 비디오 데이터 처리 방법.
  14. 제 7항에 있어서, 상기 제 2 암호 알고리즘의 이용에 따라 과금(billing)하는 것을 개시하는 단계를 더 포함하는 디지털 비디오 데이터 처리 방법.
  15. 비디오 디코더에서, 방송되는 암호화된 디지털 비디오 데이터와, 저장 매체로부터 검색되는 암호화된 디지털 비디오 데이터를 적절하게 디코딩하기 위한 방법에 있어서,
    방송되는 암호화된 프로그램 데이터 및 관련 방송 암호 코드를 수신하는 단계와;
    저장 장치로부터 검색된 암호화된 프로그램 데이터 및 관련 암호화된 재생 키를 수신하는 단계와;
    상기 방송되는 암호화된 프로그램 데이터의 복호용 암호 키를 제공하기 위하여 제 1 알고리즘을 이용하여 상기 방송되는 암호 코드를 복호하는 단계와;
    저장 장치로부터 검색된 상기 암호화된 프로그램 데이터의 복호용 재생 키를 제공하기 위하여 제 2 알고리즘을 이용하여 저장 장치로부터 검색된 상기 암호화된 재생 키를 복호하는 단계와;
    a)상기 암호 키를 갖는 방송되는 암호화된 프로그램 데이터, 및 b) 상기 재생 키를 갖는 저장 장치로부터 검색된 암호화된 프로그램 데이터 중 하나를 복호화하는데 제 3 알고리즘을 이용하는 단계를 포함하고,
    여기서, 상기 제 1 알고리즘은 상기 제 2 알고리즘과 다르며, 상기 제 2 알고리즘과는 다른 속도로, 그리고 독립적으로 갱신될 수 있는
    디지털 비디오 데이터 디코딩 방법.
  16. 제 15항에 있어서, 상기 제 1 및 제 2 알고리즘이 스마트 카드 내에서 사용되는 디지털 비디오 데이터 디코딩 방법.
  17. 제 15항에 있어서, 상기 상기 제 1 알고리즘을 상기 제 2 알고리즘 보다 더 자주 갱신하는 단계를 포함하는 디지털 비디오 데이터 디코딩 방법.
  18. 제 15항에 있어서, 상기 암호 코드를 수신된 PSI에서 도출하는 단계를 포함하는 디지털 비디오 데이터 디코딩 방법.
  19. 제 18항에 있어서, 상기 암호 코드를 상기 수신된 PSI에 있는 PMT에서 도출하는 단계를 포함하는 디지털 비디오 데이터 디코딩 방법.
  20. 제 18항에 있어서, 상기 수신된 PSI에 있는 조건부 접근 테이블(CAT)에서 상기 암호 코드를 도출하는 단계를 포함하는 디지털 비디오 데이터 디코딩 방법.
  21. 제 15항에 있어서, 상기 제 2 알고리즘의 사용에 따라 데이터스트림의 재생에 대한 과금을 개시하는 단계를 더 포함하는 디지털 비디오 데이터 디코딩 방법.
  22. 삭제
  23. 삭제
  24. 데이터 포맷으로 암호화된 프로그램 데이터를 기록한 저장 매체(105)있어서,
    제 1 암호 알고리즘을 사용하여 암호화된 프로그램 데이터(115,130)와;
    상기 암호화된 프로그램 데이터와 관련있는 암호 키를 제 2 암호 알고리즘을 사용하여 암호화함으로써 얻어진 암호 코드로서, 상기 암호 키는 상기 암호화된 프로그램 데이터의 복호(115, 33, 50, 130)에 이용할 수 있는, 상기 암호 코드를 포함하고,
    여기서, 상기 제 1 암호 알고리즘 및 상기 제 2 암호 알고리즘은 서로 다른
    저장 매체.
  25. 제 24항에 있어서, 상기 암호 코드는 상기 프로그램 데이터의 PSI에 포함되는 저장 매체.
  26. 방송 소스로부터 수신되는 방송되어진 암호화된 비디오 데이터 및 국부 저장 장치로부터 수신되는 암호화된 비디오 데이터를 처리하기 위한 비디오 디코더 조건부 접근 시스템용 삽입형 전자 스마트 카드에 있어서,
    상기 방송되는 암호화된 비디오 데이터의 복호용 암호 키를 제공하기 위해 방송 소스로부터 수신된 암호 코드를 복호하기 위한 제 1 알고리즘 수단과;
    a)암호화된 비디오 데이터와 함께 암호화된 재생 키를 저장 장치에 제공하기 위하여 암호 키를 암호화하고, b)국부 저장 장치로부터 수신된 상기 암호화된 비디오 데이터의 복호용으로 재생키를 제공하기 위해 상기 암호화된 재생 키를 복호하기 위한 재생 알고리즘 수단을
    포함하는 삽입형 전자 스마트 카드.
  27. 제 26항에 있어서, 상기 방송되는 암호화된 방송 비디오 데이터의 복호용으로 암호 키를 제공하기 위해 방송 소스로부터 수신된 암호 코드를 복호하기 위한 제 2 알고리즘 수단을 더 포함하고, 상기 스마트 카드는 상기 제 1 및 제 2 알고리즘 중에서 선택하는 것을 허용하는 삽입형 전자 스마트 카드.
KR10-1999-7004478A 1996-11-27 1997-10-28 디지털 비디오 데이터를 처리 및 디코딩하기 위한 시스템/방법, 저장 매체 및 삽입형 전자 스마트 카드 KR100467298B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/762,488 US6016348A (en) 1996-11-27 1996-11-27 Decoding system and data format for processing and storing encrypted broadcast, cable or satellite video data
US08/762,488 1996-11-27
US8/762,488 1996-11-27

Publications (2)

Publication Number Publication Date
KR20000057174A KR20000057174A (ko) 2000-09-15
KR100467298B1 true KR100467298B1 (ko) 2005-01-24

Family

ID=25065207

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-7004478A KR100467298B1 (ko) 1996-11-27 1997-10-28 디지털 비디오 데이터를 처리 및 디코딩하기 위한 시스템/방법, 저장 매체 및 삽입형 전자 스마트 카드

Country Status (15)

Country Link
US (1) US6016348A (ko)
EP (1) EP0941611B1 (ko)
JP (4) JP4554727B2 (ko)
KR (1) KR100467298B1 (ko)
CN (1) CN1155248C (ko)
AU (1) AU7402498A (ko)
BR (2) BR9714639B1 (ko)
CA (1) CA2272922C (ko)
DE (1) DE69726753T2 (ko)
ES (1) ES2213226T3 (ko)
HK (1) HK1024367A1 (ko)
MX (1) MX206274B (ko)
MY (1) MY118261A (ko)
TW (1) TW379505B (ko)
WO (1) WO1998024237A1 (ko)

Families Citing this family (162)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
USRE46310E1 (en) 1991-12-23 2017-02-14 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
USRE47908E1 (en) 1991-12-23 2020-03-17 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
USRE48056E1 (en) 1991-12-23 2020-06-16 Blanding Hovenweep, Llc Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US8574074B2 (en) 2005-09-30 2013-11-05 Sony Computer Entertainment America Llc Advertising impression determination
JPH10145773A (ja) * 1996-11-14 1998-05-29 Toshiba Corp 動画像データの暗号化方法およびその方法が適用されるコンピュータシステム並びに動画像データ符号化/復号化装置
KR19980073528A (ko) * 1997-03-15 1998-11-05 구자홍 엠펙시스템 복호기장치
WO1998054899A1 (fr) * 1997-05-30 1998-12-03 Sony Corporation Systeme et procede de transmission de donnees, et procede et dispositif de reception de donnees
JP3389843B2 (ja) * 1997-10-17 2003-03-24 日本電気株式会社 情報処理装置におけるデジタル放送受信システム
US20040186071A1 (en) * 1998-04-13 2004-09-23 Bennett C. Frank Antisense modulation of CD40 expression
US7321828B2 (en) * 1998-04-13 2008-01-22 Isis Pharmaceuticals, Inc. System of components for preparing oligonucleotides
WO2000011871A1 (en) * 1998-08-23 2000-03-02 Open Entertainment, Inc. Transaction system for transporting media files from content provider sources to home entertainment devices
JP2000076787A (ja) * 1998-09-02 2000-03-14 Sony Corp 情報記録再生装置および方法、並びに提供媒体
AU770251B2 (en) * 1998-11-03 2004-02-19 Thomson Licensing S.A. Method and apparatus for updating computer code using an integrated circuit interface
US6453159B1 (en) * 1999-02-25 2002-09-17 Telxon Corporation Multi-level encryption system for wireless network
US6526506B1 (en) 1999-02-25 2003-02-25 Telxon Corporation Multi-level encryption access point for wireless network
US6578203B1 (en) 1999-03-08 2003-06-10 Tazwell L. Anderson, Jr. Audio/video signal distribution system for head mounted displays
US7565546B2 (en) * 1999-03-30 2009-07-21 Sony Corporation System, method and apparatus for secure digital content transmission
US6697489B1 (en) * 1999-03-30 2004-02-24 Sony Corporation Method and apparatus for securing control words
US7730300B2 (en) 1999-03-30 2010-06-01 Sony Corporation Method and apparatus for protecting the transfer of data
US7210160B2 (en) * 1999-05-28 2007-04-24 Immersion Entertainment, L.L.C. Audio/video programming and charging system and method
US20020057364A1 (en) * 1999-05-28 2002-05-16 Anderson Tazwell L. Electronic handheld audio/video receiver and listening/viewing device
US20060174297A1 (en) * 1999-05-28 2006-08-03 Anderson Tazwell L Jr Electronic handheld audio/video receiver and listening/viewing device
US7010801B1 (en) * 1999-06-11 2006-03-07 Scientific-Atlanta, Inc. Video on demand system with parameter-controlled bandwidth deallocation
US6817028B1 (en) 1999-06-11 2004-11-09 Scientific-Atlanta, Inc. Reduced screen control system for interactive program guide
US7150031B1 (en) * 2000-06-09 2006-12-12 Scientific-Atlanta, Inc. System and method for reminders of upcoming rentable media offerings
US6986156B1 (en) * 1999-06-11 2006-01-10 Scientific Atlanta, Inc Systems and methods for adaptive scheduling and dynamic bandwidth resource allocation management in a digital broadband delivery system
US7992163B1 (en) * 1999-06-11 2011-08-02 Jerding Dean F Video-on-demand navigational system
US7336785B1 (en) * 1999-07-09 2008-02-26 Koninklijke Philips Electronics N.V. System and method for copy protecting transmitted information
US7039614B1 (en) * 1999-11-09 2006-05-02 Sony Corporation Method for simulcrypting scrambled data to a plurality of conditional access devices
US20060059525A1 (en) * 1999-12-13 2006-03-16 Jerding Dean F Media services window configuration system
US7647278B1 (en) * 1999-12-29 2010-01-12 Pitney Bowes Inc. Method for facilitating a transaction between a merchant and a buyer
JP4154825B2 (ja) * 2000-02-01 2008-09-24 三菱電機株式会社 ディジタル放送受信システム
US6974076B1 (en) 2000-02-14 2005-12-13 Sony Corporation Portable music player with pay per play usage and method for purchase of credits for usage
US7225164B1 (en) * 2000-02-15 2007-05-29 Sony Corporation Method and apparatus for implementing revocation in broadcast networks
JP2001237819A (ja) * 2000-02-24 2001-08-31 Nec Corp 著作物再生システム,著作物復号装置,およびユーザ固有情報格納装置
BR0108714A (pt) * 2000-03-02 2002-11-26 Scientific Atlanta Aparelho e método para fornecer uma pluralidade de arranjos iniciais de guia de programa interativo
DE50006287D1 (de) * 2000-03-10 2004-06-03 Rudolf Ritter Verfahren, kommunikationssystem und empfangsvorrichtung für die verrechnung von zugriffskontrollierten programmen und/oder daten von broadcastsendern
US7975277B1 (en) * 2000-04-03 2011-07-05 Jerding Dean F System for providing alternative services
US8516525B1 (en) 2000-06-09 2013-08-20 Dean F. Jerding Integrated searching system for interactive media guide
US20020007485A1 (en) * 2000-04-03 2002-01-17 Rodriguez Arturo A. Television service enhancements
US7200857B1 (en) * 2000-06-09 2007-04-03 Scientific-Atlanta, Inc. Synchronized video-on-demand supplemental commentary
US7647619B2 (en) * 2000-04-26 2010-01-12 Sony Corporation Scalable filtering table
US7934232B1 (en) * 2000-05-04 2011-04-26 Jerding Dean F Navigation paradigm for access to television services
US8069259B2 (en) * 2000-06-09 2011-11-29 Rodriguez Arturo A Managing removal of media titles from a list
US7149549B1 (en) 2000-10-26 2006-12-12 Ortiz Luis M Providing multiple perspectives for a venue activity through an electronic hand held device
US7782363B2 (en) 2000-06-27 2010-08-24 Front Row Technologies, Llc Providing multiple video perspectives of activities through a data network to a remote multimedia server for selective display by remote viewing audiences
US8583027B2 (en) 2000-10-26 2013-11-12 Front Row Technologies, Llc Methods and systems for authorizing computing devices for receipt of venue-based data based on the location of a user
US7812856B2 (en) * 2000-10-26 2010-10-12 Front Row Technologies, Llc Providing multiple perspectives of a venue activity to electronic wireless hand held devices
US20030112354A1 (en) * 2001-12-13 2003-06-19 Ortiz Luis M. Wireless transmission of in-play camera views to hand held devices
US7630721B2 (en) 2000-06-27 2009-12-08 Ortiz & Associates Consulting, Llc Systems, methods and apparatuses for brokering data between wireless devices and data rendering devices
US7796162B2 (en) * 2000-10-26 2010-09-14 Front Row Technologies, Llc Providing multiple synchronized camera views for broadcast from a live venue activity to remote viewers
US7962370B2 (en) * 2000-06-29 2011-06-14 Rodriguez Arturo A Methods in a media service system for transaction processing
US7242772B1 (en) 2000-09-07 2007-07-10 Eastman Kodak Company Encryption apparatus and method for synchronizing multiple encryption keys with a data stream
JP3811608B2 (ja) * 2000-10-03 2006-08-23 株式会社ジェイテクト チルトステアリング装置
US20020049978A1 (en) * 2000-10-20 2002-04-25 Rodriguez Arturo A. System and method for access and placement of media content information items on a screen display with a remote control device
US7340759B1 (en) * 2000-11-10 2008-03-04 Scientific-Atlanta, Inc. Systems and methods for adaptive pricing in a digital broadband delivery system
EP1340346A4 (en) * 2000-11-10 2005-05-25 Ip Blue Llc UNITED COMMUNICATION CLIENT
US6959090B1 (en) * 2000-11-20 2005-10-25 Nokia Corporation Content Protection scheme for a digital recording device
US7912220B2 (en) * 2001-02-05 2011-03-22 Broadcom Corporation Packetization of non-MPEG stream data in systems using advanced multi-stream POD interface
US8751310B2 (en) 2005-09-30 2014-06-10 Sony Computer Entertainment America Llc Monitoring advertisement impressions
US6725459B2 (en) 2001-02-09 2004-04-20 Scientific-Atlanta, Inc. Descrambling device for use in a conditional access system
EP1251449A1 (en) * 2001-04-17 2002-10-23 Thomson Licensing S.A. System with IC card deactivation before a hardware reset
US7895616B2 (en) * 2001-06-06 2011-02-22 Sony Corporation Reconstitution of program streams split across multiple packet identifiers
US7151831B2 (en) * 2001-06-06 2006-12-19 Sony Corporation Partial encryption and PID mapping
US7350082B2 (en) * 2001-06-06 2008-03-25 Sony Corporation Upgrading of encryption
US7747853B2 (en) * 2001-06-06 2010-06-29 Sony Corporation IP delivery of secure digital content
US7512964B2 (en) 2001-06-29 2009-03-31 Cisco Technology System and method for archiving multiple downloaded recordable media content
US8006262B2 (en) * 2001-06-29 2011-08-23 Rodriguez Arturo A Graphic user interfaces for purchasable and recordable media (PRM) downloads
US7526788B2 (en) 2001-06-29 2009-04-28 Scientific-Atlanta, Inc. Graphic user interface alternate download options for unavailable PRM content
US7496945B2 (en) * 2001-06-29 2009-02-24 Cisco Technology, Inc. Interactive program guide for bidirectional services
US7203319B2 (en) * 2001-07-09 2007-04-10 Qualcomm, Inc. Apparatus and method for installing a decryption key
US7463737B2 (en) * 2001-08-15 2008-12-09 Digeo, Inc. System and method for conditional access key encryption
JP2003076432A (ja) * 2001-09-05 2003-03-14 Nec Corp プログラム実行装置及びそれに用いるプログラム実行方法並びにそのプログラム
CN100352172C (zh) * 2001-10-24 2007-11-28 中兴通讯股份有限公司 一种个人手持系统中实现两种手机鉴权方式兼容的方法
US7242773B2 (en) * 2002-09-09 2007-07-10 Sony Corporation Multiple partial encryption using retuning
US7823174B2 (en) * 2002-01-02 2010-10-26 Sony Corporation Macro-block based content replacement by PID mapping
US7376233B2 (en) * 2002-01-02 2008-05-20 Sony Corporation Video slice and active region based multiple partial encryption
US7218738B2 (en) * 2002-01-02 2007-05-15 Sony Corporation Encryption and content control in a digital broadcast system
US7292690B2 (en) * 2002-01-02 2007-11-06 Sony Corporation Video scene change detection
US7155012B2 (en) * 2002-01-02 2006-12-26 Sony Corporation Slice mask and moat pattern partial encryption
US7765567B2 (en) * 2002-01-02 2010-07-27 Sony Corporation Content replacement by PID mapping
US7334251B2 (en) * 2002-02-11 2008-02-19 Scientific-Atlanta, Inc. Management of television advertising
US7130911B2 (en) * 2002-02-11 2006-10-31 Intel Corporation Method for monitoring unauthorized access to data stored in memory buffers
KR20040103891A (ko) * 2002-04-05 2004-12-09 마쯔시다덴기산교 가부시키가이샤 컨텐츠 이용 시스템
US20090180025A1 (en) * 2002-05-28 2009-07-16 Sony Corporation Method and apparatus for overlaying graphics on video
US7933411B2 (en) * 2002-06-28 2011-04-26 Trident Microsystems (Far East) Ltd. Method of constructing MPEG program streams from encrypted MPEG transport streams
US8818896B2 (en) * 2002-09-09 2014-08-26 Sony Corporation Selective encryption with coverage encryption
US7725073B2 (en) 2002-10-07 2010-05-25 Immersion Entertainment, Llc System and method for providing event spectators with audio/video signals pertaining to remote events
US8572408B2 (en) * 2002-11-05 2013-10-29 Sony Corporation Digital rights management of a digital device
US7724907B2 (en) * 2002-11-05 2010-05-25 Sony Corporation Mechanism for protecting the transfer of digital content
CN1717639A (zh) 2002-11-27 2006-01-04 皇家飞利浦电子股份有限公司 芯片集成保护装置
US7801820B2 (en) * 2003-01-13 2010-09-21 Sony Corporation Real-time delivery of license for previously stored encrypted content
US20040143851A1 (en) * 2003-01-21 2004-07-22 Nokia Corporation Active packet identifier table
US20100017627A1 (en) 2003-02-07 2010-01-21 Broadon Communications Corp. Ensuring authenticity in a closed content distribution system
US7322042B2 (en) 2003-02-07 2008-01-22 Broadon Communications Corp. Secure and backward-compatible processor and secure software execution thereon
US7779482B1 (en) 2003-02-07 2010-08-17 iGware Inc Delivery of license information using a short messaging system protocol in a closed content distribution system
US20040267384A1 (en) * 2003-02-07 2004-12-30 Broadon Communications, Inc. Integrated console and controller
US8131649B2 (en) * 2003-02-07 2012-03-06 Igware, Inc. Static-or-dynamic and limited-or-unlimited content rights
US7409702B2 (en) * 2003-03-20 2008-08-05 Sony Corporation Auxiliary program association table
US7292692B2 (en) * 2003-03-25 2007-11-06 Sony Corporation Content scrambling with minimal impact on legacy devices
US7660352B2 (en) * 2003-04-04 2010-02-09 Sony Corporation Apparatus and method of parallel processing an MPEG-4 data stream
IL155416A0 (en) * 2003-04-13 2003-11-23 Nds Ltd System for securing access to data streams
US20050036067A1 (en) * 2003-08-05 2005-02-17 Ryal Kim Annon Variable perspective view of video images
US20050066357A1 (en) * 2003-09-22 2005-03-24 Ryal Kim Annon Modifying content rating
US7593687B2 (en) * 2003-10-07 2009-09-22 Immersion Entertainment, Llc System and method for providing event spectators with audio/video signals pertaining to remote events
US7853980B2 (en) * 2003-10-31 2010-12-14 Sony Corporation Bi-directional indices for trick mode video-on-demand
US7620180B2 (en) * 2003-11-03 2009-11-17 Sony Corporation Preparation of content for multiple conditional access methods in video on demand
US7343013B2 (en) * 2003-12-16 2008-03-11 Sony Corporation Composite session-based encryption of video on demand content
US7263187B2 (en) * 2003-10-31 2007-08-28 Sony Corporation Batch mode session-based encryption of video on demand content
US20050097596A1 (en) * 2003-10-31 2005-05-05 Pedlow Leo M.Jr. Re-encrypted delivery of video-on-demand content
US20050097597A1 (en) * 2003-10-31 2005-05-05 Pedlow Leo M.Jr. Hybrid storage of video on demand content
US20050102702A1 (en) * 2003-11-12 2005-05-12 Candelore Brant L. Cablecard with content manipulation
US8161388B2 (en) 2004-01-21 2012-04-17 Rodriguez Arturo A Interactive discovery of display device characteristics
US7620179B2 (en) * 2004-01-29 2009-11-17 Comcast Cable Holdings, Llc System and method for security processing media streams
US20050169473A1 (en) * 2004-02-03 2005-08-04 Candelore Brant L. Multiple selective encryption with DRM
US20060018627A1 (en) * 2004-07-20 2006-01-26 Canon Kabushiki Kaisha Image reproducing apparatus and image reproducing method
US8359332B1 (en) 2004-08-02 2013-01-22 Nvidia Corporation Secure content enabled drive digital rights management system and method
US8402283B1 (en) 2004-08-02 2013-03-19 Nvidia Corporation Secure content enabled drive system and method
US7543317B2 (en) 2004-08-17 2009-06-02 The Directv Group, Inc. Service activation of set-top box functionality using broadcast conditional access system
US8763157B2 (en) 2004-08-23 2014-06-24 Sony Computer Entertainment America Llc Statutory license restricted digital media playback on portable devices
US8041190B2 (en) 2004-12-15 2011-10-18 Sony Corporation System and method for the creation, synchronization and delivery of alternate content
US8788425B1 (en) 2004-12-15 2014-07-22 Nvidia Corporation Method and system for accessing content on demand
US8346807B1 (en) 2004-12-15 2013-01-01 Nvidia Corporation Method and system for registering and activating content
US8751825B1 (en) 2004-12-15 2014-06-10 Nvidia Corporation Content server and method of storing content
US7895617B2 (en) * 2004-12-15 2011-02-22 Sony Corporation Content substitution editor
US8875309B1 (en) 2004-12-15 2014-10-28 Nvidia Corporation Content server and method of providing content therefrom
US20060170760A1 (en) * 2005-01-31 2006-08-03 Collegiate Systems, Llc Method and apparatus for managing and distributing audio/video content
US8893299B1 (en) 2005-04-22 2014-11-18 Nvidia Corporation Content keys for authorizing access to content
US8189786B2 (en) * 2005-05-25 2012-05-29 Zenith Electronics Llc Encryption system
US8144868B2 (en) * 2005-05-25 2012-03-27 Zenith Electronics Llc Encryption/decryption of program data but not PSI data
US8189472B2 (en) * 2005-09-07 2012-05-29 Mcdonald James F Optimizing bandwidth utilization to a subscriber premises
US8676900B2 (en) 2005-10-25 2014-03-18 Sony Computer Entertainment America Llc Asynchronous advertising placement based on metadata
US10657538B2 (en) 2005-10-25 2020-05-19 Sony Interactive Entertainment LLC Resolution of advertising rules
US20070118425A1 (en) 2005-10-25 2007-05-24 Podbridge, Inc. User device agent for asynchronous advertising in time and space shifted media network
US11004089B2 (en) 2005-10-25 2021-05-11 Sony Interactive Entertainment LLC Associating media content files with advertisements
EP1798975A1 (fr) * 2005-12-15 2007-06-20 Nagra France Sarl Procede de chiffrement et de dechiffrement d'un contenu a access conditionnel
US8185921B2 (en) 2006-02-28 2012-05-22 Sony Corporation Parental control of displayed content using closed captioning
US20070223870A1 (en) * 2006-03-23 2007-09-27 Seagate Technology Llc Single board digital video system
US20070255659A1 (en) * 2006-05-01 2007-11-01 Wei Yen System and method for DRM translation
EP2033350A2 (en) 2006-05-02 2009-03-11 Broadon Communications Corp. Content management system and method
CN103279874B (zh) 2006-05-05 2016-08-03 美国索尼电脑娱乐公司 广告旋转
US9679602B2 (en) 2006-06-14 2017-06-13 Seagate Technology Llc Disc drive circuitry swap
US7624276B2 (en) * 2006-10-16 2009-11-24 Broadon Communications Corp. Secure device authentication system and method
US7613915B2 (en) * 2006-11-09 2009-11-03 BroadOn Communications Corp Method for programming on-chip non-volatile memory in a secure processor, and a device so programmed
US8200961B2 (en) * 2006-11-19 2012-06-12 Igware, Inc. Securing a flash memory block in a secure device system and method
US9305590B2 (en) 2007-10-16 2016-04-05 Seagate Technology Llc Prevent data storage device circuitry swap
ES2641290T3 (es) 2007-11-20 2017-11-08 Ionis Pharmaceuticals, Inc Modulación de la expresión de CD40
US8769558B2 (en) 2008-02-12 2014-07-01 Sony Computer Entertainment America Llc Discovery and analytics for episodic downloaded media
US8301697B2 (en) * 2009-06-16 2012-10-30 Microsoft Corporation Adaptive streaming of conference media and data
US8763090B2 (en) 2009-08-11 2014-06-24 Sony Computer Entertainment America Llc Management of ancillary content delivery and presentation
US9244956B2 (en) 2011-06-14 2016-01-26 Microsoft Technology Licensing, Llc Recommending data enrichments
US9147195B2 (en) * 2011-06-14 2015-09-29 Microsoft Technology Licensing, Llc Data custodian and curation system
KR101892634B1 (ko) * 2011-12-22 2018-08-29 삼성전자주식회사 전자 장치, cas 시스템 및 그 제어 방법
US9066117B2 (en) * 2012-02-08 2015-06-23 Vixs Systems, Inc Container agnostic encryption device and methods for use therewith
US8627097B2 (en) 2012-03-27 2014-01-07 Igt System and method enabling parallel processing of hash functions using authentication checkpoint hashes
WO2014138789A1 (en) 2013-03-15 2014-09-18 Close The Loop Technologies Pty Ltd Asphalt including modified toner based additive
CN103780377B (zh) * 2014-01-09 2017-07-14 宇龙计算机通信科技(深圳)有限公司 一种对数据进行保密处理的方法及系统
US9860217B2 (en) * 2014-09-09 2018-01-02 Vizio Inc Encrypted streams to receivers
US20230058198A1 (en) * 2021-08-23 2023-02-23 Vmware, Inc. Dynamic cryptographic algorithm selection

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4908834A (en) * 1984-10-12 1990-03-13 Wiedemer John D High security pay television system
US4864494A (en) * 1986-03-21 1989-09-05 Computerized Data Ssytems For Mfg., Inc. Software usage authorization system with key for decrypting/re-encrypting/re-transmitting moving target security codes from protected software
JPH01256061A (ja) * 1988-04-04 1989-10-12 Pioneer Electron Corp 情報記録再生方式
JP2829974B2 (ja) * 1988-07-29 1998-12-02 松下電器産業株式会社 信号処理装置
JP2682030B2 (ja) * 1988-07-29 1997-11-26 松下電器産業株式会社 信号記録装置
US5237610A (en) * 1990-02-01 1993-08-17 Scientific-Atlanta, Inc. Independent external security module for a digitally upgradeable television signal decoder
JP3023160B2 (ja) * 1990-10-11 2000-03-21 日本放送協会 放送受信制御方式
US5581614A (en) * 1991-08-19 1996-12-03 Index Systems, Inc. Method for encrypting and embedding information in a video program
JP3372611B2 (ja) * 1993-10-18 2003-02-04 キヤノン株式会社 映像伝送システム、映像処理装置及び映像処理方法
US5504816A (en) * 1994-02-02 1996-04-02 Gi Corporation Method and apparatus for controlling access to digital signals
JPH07288798A (ja) * 1994-04-15 1995-10-31 Mitsubishi Electric Corp ディジタル録画記録再生装置及び再生装置並びにtv受信装置
US5513260A (en) * 1994-06-29 1996-04-30 Macrovision Corporation Method and apparatus for copy protection for various recording media
MY125706A (en) * 1994-08-19 2006-08-30 Thomson Consumer Electronics High speed signal processing smart card
JPH0879234A (ja) * 1994-09-07 1996-03-22 Hitachi Ltd データ受信装置
EP0704785B1 (en) * 1994-09-30 2003-11-19 Mitsubishi Corporation Data copyright management system
JP3729529B2 (ja) * 1994-10-28 2005-12-21 ソニー株式会社 デイジタル信号送受信システム
KR100332743B1 (ko) * 1994-11-26 2002-11-07 엘지전자주식회사 디지탈영상시스템의불법시청및복사방지방법및장치
EP0719045B1 (en) * 1994-12-13 2003-10-29 Mitsubishi Corporation Crypt key system for secure electronic transactions
JPH08195735A (ja) * 1995-01-18 1996-07-30 Toshiba Corp デコーダ装置
FR2738093B1 (fr) * 1995-08-23 1997-11-28 Trt Telecom Radio Electr Systeme de transmission de donnees impliquant un codage hdbn codeur et decodeur convenant a un tel systeme
SE9504206D0 (sv) * 1995-11-24 1995-11-24 Pharmacia Ab Optical coupling device and method for its production

Also Published As

Publication number Publication date
MX9904875A (es) 1999-11-30
CA2272922A1 (en) 1998-06-04
CN1155248C (zh) 2004-06-23
BR9714639A (pt) 2000-10-03
JP5046341B2 (ja) 2012-10-10
DE69726753T2 (de) 2004-11-25
TW379505B (en) 2000-01-11
BR9715352B1 (pt) 2012-03-06
HK1024367A1 (en) 2000-10-05
JP2008312233A (ja) 2008-12-25
JP2010088121A (ja) 2010-04-15
JP5046340B2 (ja) 2012-10-10
KR20000057174A (ko) 2000-09-15
WO1998024237A1 (en) 1998-06-04
EP0941611A1 (en) 1999-09-15
AU7402498A (en) 1998-06-22
CN1238885A (zh) 1999-12-15
JP2010057205A (ja) 2010-03-11
JP4554727B2 (ja) 2010-09-29
ES2213226T3 (es) 2004-08-16
MX206274B (es) 2002-01-30
US6016348A (en) 2000-01-18
EP0941611B1 (en) 2003-12-10
JP4392849B2 (ja) 2010-01-06
CA2272922C (en) 2005-12-06
BR9714639B1 (pt) 2011-02-08
JP2001507178A (ja) 2001-05-29
MY118261A (en) 2004-09-30
DE69726753D1 (de) 2004-01-22

Similar Documents

Publication Publication Date Title
KR100467298B1 (ko) 디지털 비디오 데이터를 처리 및 디코딩하기 위한 시스템/방법, 저장 매체 및 삽입형 전자 스마트 카드
KR100474209B1 (ko) 프로그램을 나타내는 데이터를 처리하기 위한 방법
JP4339388B2 (ja) 暗号化プログラム・データを適応的に処理する方法
AU716349B2 (en) Processing of digital data and program guide information
JP4646151B2 (ja) プログラムを表すパケット化されたデータストリームを復号化する方法
US20070258586A1 (en) Personal video recorder having dynamic security functions and method thereof
JP2010193463A (ja) プログラム内容を復元する方法
EP0903033A1 (en) Program specific information formation for digital data processing
KR100458843B1 (ko) 암호화된비디오데이터및암호화되지않은비디오데이터를처리하는적응디코딩시스템
KR20000016169A (ko) 디지털데이터저장매체용패킷화데이터포맷

Legal Events

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

Payment date: 20121220

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131219

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20141231

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20151217

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 13

EXPY Expiration of term