KR20020019576A - 암호문 토큰을 이용하는 허가 - Google Patents

암호문 토큰을 이용하는 허가 Download PDF

Info

Publication number
KR20020019576A
KR20020019576A KR1020027001070A KR20027001070A KR20020019576A KR 20020019576 A KR20020019576 A KR 20020019576A KR 1020027001070 A KR1020027001070 A KR 1020027001070A KR 20027001070 A KR20027001070 A KR 20027001070A KR 20020019576 A KR20020019576 A KR 20020019576A
Authority
KR
South Korea
Prior art keywords
plain text
secure
content receiver
message
top box
Prior art date
Application number
KR1020027001070A
Other languages
English (en)
Inventor
스프룬크에릭제이
Original Assignee
션 엘. 맥클린톡
제너럴 인스트루먼트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 션 엘. 맥클린톡, 제너럴 인스트루먼트 코포레이션 filed Critical 션 엘. 맥클린톡
Publication of KR20020019576A publication Critical patent/KR20020019576A/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/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/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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/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/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/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4117Peripherals receiving signals from specially adapted client devices for generating hard copies of the content, e.g. printer, electronic paper
    • 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/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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4424Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
    • 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
    • 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/8355Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed
    • 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
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/913Television signal processing therefor for scrambling ; for copy protection
    • H04N2005/91357Television signal processing therefor for scrambling ; for copy protection by modifying the video signal
    • H04N2005/91364Television signal processing therefor for scrambling ; for copy protection by modifying the video signal the video signal being scrambled

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Systems (AREA)
  • Circuits Of Receivers In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명에는 콘텐츠 수신기 내에 평문 객체를 보호하는 방법이 개시된다. 일 단계에서, 보안 객체의 보안 부분 및 상기 보안 객체의 평문 나머지는 수신된다. 상기 보안 객체의 어떤 부분이 보안 객체인지가 결정된다. 상기 보안 부분은 평문 부분을 제공하기 위하여 해독된다. 상기 평문 부분 및 상기 평문 나머지를 포함하는 상기 평문 객체는 형성된다. 상기 평문 객체는 기억된다.

Description

암호문 토큰을 이용하는 허가{AUTHORIZATION USING CIPHERTEXT TOKENS}
케이블 텔레비젼(TV) 제공업체는 조건부 액세스(CA) 시스템에 의해 비디오 스트림을 가입자에게 분배한다. CA 시스템은 그 케이블 TV 제공업체의 헤드엔드 (headend)로부터 가입자의 셋톱 박스로 비디오 스트림을 분배한다. 그 헤드엔드에는 비디오 스트림을 수신하여 상기 CA 시스템 내의 셋톱 박스로 분배하는 하드웨어가 있다. 선택된 셋톱 박스들은 상기 케이블 TV 제공업체에 의해 상기 셋톱 박스로 보내지는 자격 정보(entitlement information)에 따라 특정 비디오 스트림을 디코딩할 수 있다. 비슷한 방법으로, 다른 비디오 프로그램 제공업체들은 위성 접시 안테나를 이용하여 비디오 콘텐츠를 셋톱 박스에 무선으로 분배한다.
비디오 프로그램들은 모든 셋톱 박스로 전송되지만, 일부의 셋톱 박스만이 특정 비디오 프로그램에 액세스 된다. 예컨대, 유료 시청 복싱 경기에 대한 암호화 데이터 스트림을 모든 셋톱 박스가 수신할지라도, 그 유료 시청 복싱 경기를 주문한 사람만 시청할 수 있다. 사용자가 유료 시청 프로그램을 주문할 때, 자격 메세지는 모든 셋톱 박스에 암호화 형태로 전송된다. 특정 셋톱 박스만이 그 자격 메세지를 해독할 수 있다. 이 해독 자격 메세지 속에는 상기 유료 시청 프로그램을 해독할 키(key)가 있다. 상기 셋톱 박스는 실시간으로 수신되는 유료 시청 프로그램을 상기 키로 해독한다. 일부의 시스템들은 자격 메세지를 표시한다.
최근에는 수시간용 비디오 기억 장치가 실용화 되었다. 각 비디오 프로그램은 압축 MPEG2 데이터 스트림으로서 셋톱 박스로 전송된다. 한 시간용 비디오는 약 1 기가바이트의 압축 데이터에 해당한다. 오늘날에는 멀티기가바이트 기억 장치가 흔하기 때문에, 현재는 수시간의 비디오를 기억할 수 있다. 이와 반대로, 종래의 CA 시스템들은 콘텐츠가 일시적이고 기억될 수 없는 것이라고 간주해 버렸다. 다르게 말하자면, 종래의 시스템들은 상기 비디오 프로그램의 용량이 너무 커서 특정 시간 동안 보유할 수 없다고 간주해 버렸다. 당업자라면 알 수 있는 바와 같이, 멀티기가바이트 비디오 프로그램을 기억하는 능력에 의해서 CA 시스템에 부가적으로 보안 조치를 취할 필요성이 생겼다.
일부의 시스템들은 개인용 처리 장치(personal computing)와 TV를 통합하여 콘텐츠를 디스플레이한다. WebTVTM등의 제품은 TV에 웹 브라우징 및 이메일 기능을 통합한다. 다른 시스템에 있어서, 개인용 컴퓨터(PC)는 상기 웹 브라우징 및 이메일 특성용 콘텐츠를 제공하는 인터넷 서비스 제공업체(ISP)에 접속된다. 상기 이메일 프로그램 등의 소프트웨어 프로그램들은 용량이 적어서 쉽게 기억될 수 있다. 당업자들은 이러한 PC들이 보안에 취약하기 때문에 바이러스 및 해커에 민감하다는것을 알고 있다.
전술한 바와 같이, 종래의 CA 시스템들은 단지 비디오 스트림의 자격만을 점검한다. 대용량 기억 장치 및 소용량 인터넷 관련 프로그램의 출현으로, 콘텐츠는 기억되어 영구히 사용자에게 남길 수 있다. 이러한 콘텐츠를 통제하기 위해서는 추가적인 보안 조치들이 필요하다.
본원은 2000년 5월 26일에 출원된 미국 특허 출원 제09/580,303호의 일부 연속 출원이다.
본 발명은 일반적으로 보안 액세스 시스템에 관한 것으로써, 특히 조건부 액세스 시스템과 관련된 콘텐츠 수신기의 보안 정보에 관한 것이다.
도 1은 콘텐츠 전달 시스템의 일 실시예를 도시하는 블록도.
도 2는 중계 장치 역활을 하는 셋톱 박스 환경의 일 실시예를 도시하는 블록도.
도 3은 제1 보안 레벨에서 객체를 분배하는 프로세스의 실시예를 도시하는 흐름도.
도 4는 제2 보안 레벨에서 객체를 분배하는 프로세스의 실시예를 도시하는 흐름도.
도 5는 허가 메세지의 일 실시예를 도시하는 블록도.
도 6은 소프트웨어 메세지의 일 실시예를 도시하는 블록도.
도 7은 허가 메세지 및 소프트웨어 메세지의 일부분을 포함하는 서명에 참여한 그룹의 일 실시예를 도시하는 블록도.
도 8은 "권리" 메세지의 일 실시예를 도시하는 블록도.
도 9는 기능 장치사이의 대화의 일 실시예를 도시하는 블록도.
도 10은 제3 보안 레벨에서 객체를 로딩하는 프로세스의 실시예를 도시하는 흐름도.
도 11은 제4 보안 레벨에서 객체를 로딩하는 프로세스의 실시예를 도시하는 흐름도.
도 12는 제4 보안 레벨에서 객체를 로딩하는 프로세스의 다른 실시예를 도시하는 흐름도.
도 13은 제5 보안 레벨에서 실행 객체를 연속적으로 점검하는 프로세스의 실시예를 도시하는 흐름도.
도 14a는 제6 보안 레벨에서 객체의 자유로운 미리 보기(free preview)를 허용하는 프로세스의 실시예를 도시하는 흐름도.
도 14b는 제6 보안 레벨에서 객체의 자유로운 미리 보기를 허용하는 프로세스의 다른 실시예를 도시하는 흐름도.
도 15a는 제7 보안 레벨에서 헤드엔드로 돌아가는 보고서를 감시하는 프로세스의 실시예를 도시하는 흐름도.
도 15b는 제7 보안 레벨에서 보안 점검을 감시하는 프로세스의 실시예를 도시하는 흐름도.
도 15c는 제7 보안 레벨에서 보안 점검을 감시하는 프로세스의 다른 실시예를 도시하는 흐름도.
도 16a는 제8 보안 레벨에서 부분적으로 암호화된 객체를 발생하는 프로세스의 실시예에 대한 흐름도.
도 16b는 제8 보안 레벨을 달성하기 위하여 실행 토근을 이용하는 프로세스의 실시예를 도시하는 흐름도.
도 16c는 제8 보안 레벨을 달성하기 위하여 부분 다운로드를 이용하는 프로세스의 실시예를 도시하는 흐름도.
도 17은 셋톱 박스에서 다른 객체사이의 관계를 도시하는 블록도.
본 발명은 본 발명의 범위, 이용가능성 또는 배치에 한정됨이 없이 바람직한 실시예만을 제공한다. 오히려, 바람직한 실시예에 대한 상세한 설명은 본 발명의 바람직한 실시예를 실시하기 위한 설명을 당업자에게 제공할 것이다. 첨부한 청구 범위는 본 발명의 정신 및 범위에 벗어남이 없이 구성 요소의 기능 및 배치에 다양한 변경이 이루어질 수 있다는 것을 이해할 것이다.
본 발명은 텔레비젼(TV) 셋톱 박스 내에서 보안 조치가 적당하게 실행되게 한다. 정상적인 동작 중에, 상기 셋톱 박스의 다양한 기능으로 보안 점검이 실행된다. 이러한 보안 점검의 결과는 헤드엔드로 보고된다. 새도우 프로세스 (shadow process)는 상기 보안 점검이 실행되고 보고되는 것을 독립적으로 확인한다.
본 발명의 도면에서 있어서, 유사한 구성 요소 및/또는 특징부는 동일한 참조 번호를 붙일 수 있고, 또한 동일한 종류의 다양한 구성 요소는 다음과 같이 파선에 의한 기준 레벨 및 비슷한 구성 요소를 구별하는 제2 레벨로 구별될 수 있다. 명세서에서 제1 기준 레벨만을 이용하는 경우에, 상세한 설명은 제2 기준 레벨에 상관 없이 동일한 제1 기준 레벨을 갖는 비슷한 구성 요소 중 하나에 적용할 수 있다.
도 1에는 콘텐츠 전달 시스템(100)의 일 실시예에 대한 블록도가 도시된다. 상기 전달 시스템(100)은 많은 사용자들이 만족할 특정 조건을 토대로 사용자에게 선택적으로 콘텐츠를 제공한다. 상기 시스템(100)에는 헤드엔드(104), 복수의 셋톱 박스(108), 지역 프로그래밍 수신기(112), 위성 접시 안테나(116) 및 인터넷(120)이 포함된다.
상기 헤드엔드(104)는 콘텐츠를 수신하여 사용자에게 분배한다. 콘텐츠는 비디오, 오디오, 대화식 비디오, 소프트웨어, 펌웨어 및/또는 데이터를 포함할 수 있다. 이러한 콘텐츠는 상기 위성 접시 안테나(116), 상기 지역 프로그래밍 수신기 (112), 마이크로웨이브 수신기, 패킷 스위칭 네트워크, 인터넷(120) 등을 포함할 수 있는 다양한 소오스로부터 수신된다. 각 셋톱 박스(108)는 자격 정보를 각각의 셋톱 박스(108)로 보낼 수 있는 유일한 어드레스를 갖는다. 이러한 방법으로, 한 개의 셋톱 박스(108-1)에게 일부의 특정 콘텐츠를 얻을 자격이 부여될 수 있는 반면, 다른 셋톱 박스(108-2)에는 자격이 부여되지 않는다. 상기 케이블 TV 송출국 (104) 내의 장비는 일부의 특정 콘텐츠를 얻을 자격이 일부 셋톱 박스(108)에 부여되는 것을 조정한다.
상기 콘텐츠는 일반적으로 복수의 콘텐츠 스트림을 포함하는 아날로그 반송파 채널을 통하여 디지털 형태로 분배된다. 이러한 모든 콘텐츠 스트림들은 상기 아날로그 반송파 채널 상에서 변조되는 디지털 스트림으로 함께 멀티플렉싱된다. 상기 각각의 콘텐츠 스트림은 패킷 식별(PID) 정보에 의해 추적됨으로써, 그 각각의 콘텐츠 스트림이 그들의 유일한 PID 정보에 따라 제거될 수 있도록 한다. 상기 시스템(100)의 이러한 실시예에는 120개의 아날로그 반송파 채널이 있다. 다른 실실시예들은 위성 접시 안테나, 마이크로웨이브 안테나, RF 송신기, 패킷 스위칭 네트워크, 셀룰러 데이터 모뎀, 반송파 전류, 전화선 및/또는 인터넷을 포함하는 전송 매커니즘으로 상기 콘텐츠를 분배한다.
도 2에는 디스플레이 시스템(200)의 일 실시예가 블록도로 도시된다. 이러한 일 실시예에서는 다양한 보안 메커니즘을 통하여 복수 레벨의 객체 및 자원 보안이 제공된다. 상기 디스플레이 시스템(200)에는 셋톱 박스(108), 네트워크(208), 프린터(212), TV 디스플레이(216) 및 무선 입력 장치(218)가 포함된다. 이러한 항목들은 콘텐츠 제공업체에 의해 조건부로 분배된 콘텐츠를 사용자가 즐길 수 있는 그러한 방법에 협조한다. 상기 콘텐츠는 비디오, 오디오, 소프트웨어, 펌웨어, 대화식 TV, 데이터, 텍스트 및/또는 다른 정보를 포함할 수 있다. 이러한 실시예에 있어서, 상기 콘텐츠 제공업체는 케이블 TV 제공업체 또는 다수의 시스템 운용자(MSO)이다.
상기 네트워크(208)는 셋톱 박스(108)와 상기 케이블 TV 제공업체의 헤드엔드(104)사이에 이동하는 정보 통로로서 작용한다. 이러한 실시예에 있어서, 상기 네트워크(208)는 120 아날로그 채널 및 양방향 제어 데이터 채널을 갖는다. 일반적으로, 상기 아날로그 채널들은 콘텐츠를 운반하고, 상기 제어 데이터 채널은 제어 및 자격 정보를 운반한다. 각각의 아날로그 반송파 채널에는 하나의 데이터 스트림으로 멀티플렉스되는 복수의 디지털 채널이 있는데, 그 디지털 채널들은 패킷 식별기(PIDs)에 의해 구별된다. 상기 양방향 제어 채널은 하나의 주파수에서 상기 셋톱 박스(108)로 데이터를 전달하고 다른 주파수에서 상기 셋톱 박스(108)로부터 데이터를 수신하는 대역외 채널(out-of band channel)이다. 복귀 데이터는 종래 기술에 널리 알려진 기억 전달 방식(store-and-forward methodology)을 이용하는 피크 사용 기간 동안에 과부하를 줄이기 위하여 대기 상태에 있을 수 있다. 다른 실시예에서는 케이블 모뎀, 디지털 가입자 회선(DSL), 셀룰러 데이터, 위성 링크, 마이크로웨이브 링크, 반송파 전류 전송 또는 양쪽 제어 정보에 대한 다른 네트워크 접속 및 패킷 스위칭 데이터로서 포멧되는 콘텐츠를 이용할 수 있다.
상기 프린터(212)는 일부의 사용자들이 구입하여 그들의 디스플레이 시스템에 추가할 수 있는 선택적인 부속품이다. 개인용 컴퓨터 작업을 위해 셋톱 박스 (108)를 이용할 때, 상기 프린터(212)는 이메일, 웹페이지, 과금 정보 등의 데이터를 프린팅할 수 있다. 이후에 설명되겠지만, 프린터 등의 주변 기기를 사용하는 능력은 허가 점검에 의해 조절된다. 이러한 조절 특성을 이용하면, 상기 셋톱 박스 (108)와 호환가능한 프린터(212)는 상기 셋톱 박스(108)에 대하여 상기 프린터 (212)를 동작시키는 적합한 허가를 얻지 못하는 경우에 동작하지 않는다.
상기 TV 디스플레이(216)는 상기 콘텐츠에 해당하는 오디오, 텍스트 및/또는 비디오를 사용자에게 제시한다. 상기 디스플레이(216)는 통상적으로 채널 3, 채널 4 또는 복합 채널에 해당하는 반송파 상에서 변조된 아날로그 비디오 신호를 수신한다. 상기 셋톱 박스(108)는 NTSC 신호, 예컨대, 상기 적합한 채널로 변조된 신호를 발생한다. 다른 실시예에서는 텔레비젼 디스플레이(216) 대신에 비디오 모니터또는 디지털 디스플레이를 이용할 수 있다. 디지털 디스플레이를 사용함으로써 상기 셋톱 박스(108)에 의한 아날로그 변환 필요성을 경감할 수 있는데, 그 이유는 액정 표시 장치 등의 디지털 표시 장치가 디지털 정보를 이용하여 디스플레이되는 영상을 명확히 나타내기 때문이다.
상기 무선 입력 장치(218)는 사용자와 셋톱 박스(108) 사이의 대화를 허용한다. 이러한 장치(218)는 원격 제어, 마우스, 키보드, 게임 제어기, 펜 테블릿(pen tablet) 또는 다른 입력 메커니즘이 될 수 있다. 상기 입력 장치(218)에 적외선 송수신기는 상기 셋톱 박스(108) 상에서 비슷한 송수신기와 통신하여 무선 통신을 할 수 있다. 다른 실시예에 있어서, 상기 적외선 송수신기 대신에 RF 링크 또는 유선 링크를 이용할 수 있다.
상기 셋톱 박스(108)에는 객체 및 자원들의 인증 및 허가를 실행하는 구성 부품이 있다. 객체들은 소프트웨어, 드라이버, 펌웨어, 데이터, 비디오 또는 오디오 등의 디지털 정보의 집합체이다. 상기 소프트웨어는 소프트웨어 프로그램 및/또는 소프트웨어 동적 링크 라이브러리 또는 라이브러리를 포함할 수 있다. 자원들은 다른 객체 또는 물리적인 장치 등을 의도한 대로 동작시키기 위해서 객체가 필요로 하는 어떤 것이다. 상기 셋톱 박스(108)에는 제어기(220), 메모리(228), 프린터 포트 (232), 네트워크 포트(236), 액세스 제어 프로세서(240), 디스플레이 인터페이스 (244) 및 적외선(IR) 포트(248)가 포함된다. 이러한 블록들은 버스(230)를 통하여 서로 통신하는데, 그 각각의 블록은 그 버스 (230) 상에서만 유일하게 식별하기 위한 다른 어드레스를 가지고 있다. 통상적으로, 상기 셋톱 박스(108)는 개별 장치이지만, TV 디스플레이(216), 컴퓨터, 정보 장치 또는 개인용 비디오 레코더(PVR)와 통합될 수 있다.
상기 제어기(220)는 신뢰성 있는 보안 오퍼레이팅 시스템을 이용하여 상기 셋톱 박스(108)의 동작을 관리한다. 디지털 객체 해독 및 압축 해제와 같은 그러한 기능과 사용자를 위해 TV 채널을 스위칭하여 사용자에게 메뉴를 제시하는 그러한 기능들이 제어기(220)에서 실행된다. 상기 제어기(220)에는 프로세서, 암호화 엔진, 국부 메모리 및 컴퓨팅 시스템에 공통인 다른 항목들이 포함된다.
다른 실시예에 있어서, 상기 제어기(220)는 또한 키 보호 또는 암호 그래픽 처리를 위하여 보안 마이크로프로세서를 조정하는 것을 포함한다. 이것은 고급 보안을 원하는 일부 시스템에 적합할 수 있다.
상기 셋톱 박스(108)는 메모리 블록(228)을 포함한다. 이 메모리(228)는 RAM, ROM, 프래쉬를 포함하는 반도체 메모리 및 다른 종류의 휘발성 및 비휘발성 메모리이다. 객체 및 자원들은 나중에 실행하는 메모리에 기억된다. 실행하는 동안에 프로그램들은 상기 메모리(228)로 로딩되어 실행되고, 또한 스크래치패드 스페이스(scratchpad space)용 메모리를 이용한다. 키, 일련 번호 및 허가는 비휘발성 프래쉬 메모리에 기억될 수 있다.
이러한 실시예는 선택 사양인 프린터(212)로 인터페이스하는 프린터 포트 (232)를 포함한다. 상기 프린터 포트(232) 자원은 허가없이 프로그램들을 이용할 수 없다. 이후에 설명된 바와 같이, 각 객체는 상기 프린터 포트(232) 등의 자원을 이용하기 위해서 허가를 받아야 한다. 데이터는 유선 또는 무선 전송 메커니즘에의해 직렬 또는 병렬 방식으로 상기 프린터 포트(232)로부터 상기 프린터(212)로 보내진다.
일반적으로 언급되는 검사점은 기능 장치의 인증 및/또는 허가 상태를 확인하는 처리 단계 또는 처리 시점이다. 프린팅이 요청될 때가 검사점의 처리 시점이다. 상기 검사점은 상기 프린팅을 요청하는 객체를 확인하고 인증한다. 검사점은 다른 객체 상에서 인증 및/또는 허가를 실행하는(예컨대, 오퍼레이팅 시스템이 실행 중인 애플리케이션의 인증 및 허가를 점검한다) 한 객체에 위치한다. 이상적으로, 검사점은 객체의 목적이 명백히 될 때 실행된다. 프린터 포트(232)의 경우에, 그 목적은 프린팅 포트를 이용하여 어떤 것을 프린팅할 때 명백해진다. 따라서, 검사점은 어떤 것을 프린팅할 때 상기 프린터 포트(232) 자원을 이용하는 객체를 점검하기 위하여 트리거된다. 통상적으로, 상기 프린팅 검사점은 운영 체계 내에 있을 것이다.
다른 종류의 객체들은 그 목적이 명백해지는 인증 및/또는 허가를 요청하기 위하여 검사점에 해당할 다른 목적을 가질 것이다. 예컨대, 객체는 장기 메모리 (long-term memory)에 기억될 수 있다. 장기 메모리로부터 상기 객체의 판독은 검사점을 트리거할 것이다. 상기 객체를 단기 반도체 메모리(short-term solid-state memory)로 로드하는 경우, 다른 검사점과 만나게 된다. 상기 객체가 장기 메모리로부터 단기 메모리로 이동될 때, 새로운 시그니처(signature)는 계산될 수 있다. 상기 객체가 단기 메모리로부터 판독되어 상기 제어기(220)에 의해 처리될 때마다, 다른 검사점을 만날 수 있을 것이다. 또한, 다른 검사점은 스크린 상에서 디스플레이하거나 스피커를 통하여 플레이하는 경우에 만날 수 있다. 다양한 실시예서는 상기 셋톱 박스(200)에 의해 처리하는 다른 단계에서 실행된 한 개 이상의 이러한 점검이 있을 수 있다.
상기 네트워크 포트(236)는 상기 셋톱 박스(108)와 헤드엔드(104)사이의 양방향 통신을 허용한다. 상기 네트워크 포트(236)는 콘텐츠의 일방향 전송을 허용하기 위해 아날로그 반송파 채널로 동조하고 MPEG 데이터 스트림을 복조하는 동조기 및 복조기가 포함된다. 또한, 상기 네트워크 포트(236)에는 제어 데이터 정보 및/또는 콘텐츠의 양방향 통신을 허용하는 제어 데이터 송수신기 또는 케이블 모뎀이 있다. 상기 제어 데이터 경로의 로딩을 상기 헤드엔드(104)로 더욱 균일하게 분배하기 위해서, 기억 전달 방식이 이용될 수 있다.
상기 TV 디스플레이(216)와 호환가능한 아날로그 신호 상에서 디지털 비디오 신호의 변조는 상기 디스플레이 인터페이스(244)에 의해 실행된다. 앞서 토론한 바와 같이, 상기 TV 디스플레이(216)는 일반적으로 채널 3, 채널 4 또는 복합 채널 상에 변조되는 신호를 받아들인다. LCD 디스플레이와 같은 디지털 입력을 받아들이는 디스플레이를 위하여, 상기 디스플레이 인터페이스(244)는 상기 디지털 입력에 의해 요청되는 임의의 포멧팅을 실행한다.
상기 IR 포트(248)는 무선 입력 장치(218)와 양방향으로 통신한다. 상기 IR 포트(248)에는 상기 입력 장치(218)에 무선 통신 경로를 제공하는 IR 송수신기가 포함된다. 상기 IR 포트(248)의 다른 전자 장치는 상기 송수신기에 의해 수신되는 아날로그 신호를 해당하는 디지털 신호로 변환하고, 해당하는 디지털 신호로부터상기 송수신기로 보내지는 아날로그 신호를 변환한다. 상기 제어기(220)는 상기 디지털 신호를 처리함으로써, 사용자가 상기 셋톱 박스(108) 내의 일부의 기능을 제어할 수 있도록 한다.
상기 액세스 제어 프로세서(ACP)(240)는 상기 셋톱 박스(108) 내의 보안 기능을 조정한다. 예컨대, 상기 ACP(240)는 이후에 명백히 설명될 제어기(220)의 방향 또는 상기 제어기(220)와 독립적으로 인증 및 허가를 실행한다. 그 임무를 수행하기 위하여, 상기 ACP(240)는 프로세서, 즉 상기 제어기(220)와 독립적으로 소프트웨어를 실행하기 위해 협조하는 RAM 및 ROM을 포함한다. 또한, 상기 ACP(240)는 콘텐츠를 해독하여 시그니처를 계산하는 해독 엔진 및 해시 함수를 포함한다. 검사점은 상기 ACP(240)를 트리거하여 보안 점검을 실행하는 소프트웨어에 내장된다. 이러한 실시예에 있어서, 상기 ACP(240)는 하드웨어로 실행되지만, 다른 실체는 소프트웨어에서 ACP(240)의 기능을 실행할 수 있다.
상기 ACP(240)는 상기 OS의 적합한 기능을 확보하기 위하여 상기 오퍼레이팅 시스템(OS)을 새도우(shadow)할 수 있다. 객체의 런치(launch)를 감시함으로써, 상기 ACP(240)는 어떤 애플리케이션 객체가 실행 중인지를 모니터할 수 있다. 필요한 경우, 상기 ACP(240)는 검사점이 에러를 검출하는 경우 또는 허가가 만료하는 경우, 실행 중인 애플리케이션의 실행을 제거 또는 중지할 수 있다. 또한, 상기 ACP (240)는 메모리(228)를 모니터하여 메모리(228)에 있는 허가 받지 못한 특정 애플리케이션을 검출할 수 있다. 부가적으로, 상기 ACP(240)는 메모리(228)의 객체 상에서 랜덤하게 검사점을 실행하여 그 인증 및/또는 허가를 확인할 수 있다. 상기ACP(240)에 의해 직면하게 되는 문제점들은 OS 또는 상기 헤드엔드(104) 중 하나에 보고된다. 이러한 방법으로, 상기 ACP(240)는 비정상적인 동작을 검출하여 보고하도록 상기 셋톱 박스(108) 내에서 소프트웨어 보안 보호 보트(software security guard bot)로서 동작한다.
도 3에는 상기 제1 보안 레벨에서 객체를 분배하는 프로세스의 실체에 대한 흐름도가 도시된다. 상기 프로세스는 자격 메세지가 상기 헤드엔드(104)에 명확하게 나타나는 단계(304)에서 시작한다. 상기 자격 메세지에는 그 관련 객체를 해독할 수 있는 키가 포함된다. 단계(308)에서, 상기 자격 메세지 및 객체는 상기 네트워크(208)를 통하여 상기 셋톱 박스(108)로 보내진다. 상기 자격 메세지 및 객체의 수신 후에, 그들은 단계(316)에서 상관된다. 상기 키는 상기 자격 메세지로부터 추출되고, 단계(320, 324 및 328)에서 메모리(228)에 기록되기 전에 상기 객체를 해독하는데 이용된다. 이러한 프로세스는 암호화를 이용함으로써 상기 객체의 인증 및 허가를 제공한다.
일부 실시예에 있어서, 상기 키들은 상기 셋톱 박스(108)를 소비자에게 수송하기 전에 통제된 환경에서 상기 셋톱 박스(108)에 로드된다. 예컨대, 대칭 및 비대칭 키들은 공장에서 조립하는 동안 셋톱 박스(108)에 로드된다. 암호화 채널을 통하여 콘텐츠의 보안 멀티캐스트 또는 싱글캐스트를 허용하는 각 셋톱 박스(108)에 기억된 유일 키 또는 글로벌 키가 될 수 있다. 이러한 채널은 키를 나중에 부가, 삭제 또는 변경하는데 이용될 수 있다. 상기 MSO는 사용자와 대화할 필요없이 상기 키를 사용하여 콘텐츠에 액세스하는 것을 제어할 수 있다.
도 4에는 제2 보안 레벨에서 객체를 분배하는 프로세스의 실체에 대한 흐름도가 도시된다. 제2 보안 레벨에 있어서, 시그너처는 다운로드시 객체를 확인하는데 이용된다. 다르게 말해서, 상기 제2 보안 레벨은 다운로드될 때 상기 객체에 검사점을 부여한다. 그 시그너처는 단계(104)에서 상기 헤드엔드(104) 안에 허가 메시지 및 객체 메시지의 일부분을 포함하는 서명(signatory) 그룹에서 발생된다. 상기 허가 메시지는 상기 객체 메시지와 관련된 메타 데이터 (meta-data)이고, 상기 객체 메시지는 상기 셋톱 박스(108)용 객체를 포함한다.
단계(408)에서, 상기 허가 메시지 및 객체의 시그너처는 상기 네트워크(208)을 통해 셋톱 박스(108)로 각각 보내진다. 바람직하게는 비대칭 시그너처를 이용하지만(예컨대, RSA, DSA 또는 ESC 기반), 대칭 시그너처(예컨대, DES 또는 3중 DES)도 이용될 수 있다. 상기 시그너처와 객체의 수신시 및 상기 객체를 기억하기 전에, 상기 시그너처는 단계(420 및 424)에서 상기 ACP(240)에 의해 계산되고 점검된다. 상기 계산되고 수신된 시그너처가 일치하는 경우, 상기 객체는 단계(428)에서 기억된다. 대안으로, 시그너처가 일치하지 않는 경우에, 단계(432)에서 상기 객체는 폐기되고, 단계(412)로 복귀시켜 상기 객체의 다른 복사를 위하여 대기한다.
도 5-7을 참조하면, 허가 메시지(500), 소프트웨어 메시지(600) 및 시그너처 그룹(700)은 블록도 형태로 도시된다. 도 5의 허가 메시지(500)에는 허가 헤더 (504), 허가 데이터 구조(508), 시그너처(512) 및 제1 체크섬(516)이 포함된다. 상기 허가 메시지(500)는 상기 소프트웨어 메시지(600)를 허가 및 인증하는데 이용된 정보를 갖고 있다. 도 6의 소프트웨어 메시지를 형성하는 것은 객체 헤더(604), 소프트웨어 객체(608) 및 제2 체크섬(612)이 있다. 상기 소프트웨어 메시지(600)는 상기 소프트웨어 객체(608)를 전달하는 작용을 한다. 상기 서명 그룹(700)은 엔드 투 엔드(end to end)에 배열된 상기 허가 메시지(500) 및 소프트웨어 메시지(600)의 구성 요소를 포함한다. 특히, 도 7의 서명 그룹은 허가 헤더(504), 허가 데이터 구조 (508), 객체 헤더(604) 및 소프트웨어 객체(608)를 포함한다. 상기 시그너처(512)는 전체의 서명 그룹(700)에서 계산된다.
상기 허가 헤더(504)는 상기 허가 메시지(500)의 구성을 지시한다. 상기 헤더(504)에는 서브타입 식별기 및 메시지 버젼이 포함된다. 상기 서브타입 식별기는 다양한 종류의 허가 메시지(500)를 서로 구별한다. 이러한 실체에 있어서, 소프트웨어 객체 및 자원에 해당하는 허가 메시지 서브타입들이 있다. 소프트웨어 객체 서브타입들은 해당하는 소프트웨어 메시지(600)를 갖지만, 자원 서브타입들은 갖지 않는다. 따라서, 상기 서브타입 식별기를 이용하여 허가 메시지(500)와 관련된 소프트웨어 메시지가 있는지 여부를 결정한다. 소정의 시스템에 대하여 여러 종류의 소프트웨어 객체 서브타입 및 자원 서브타입이 있을 수 있고, 그 메시지 버젼은 다양한 타입들을 구별할 수 있다.
상기 허가 데이터 구조(508)는 기능성 장치의 요구를 셋톱 박스(108)에 제공한다. 기능성 장치는 소프트웨어 객체 또는 자원 중 하나가 될 수 있다. 소프트웨어 객체에 해당하는 허가 메시지 서브타입의 경우에, 상기 허가 데이터 구조(508)는 객체 또는 기능 장치 식별기, 소프트웨어 버젼, 비용 정보, 자격 정보, 수명 정보 및 1개 이상의 프로그램 계층(program tier)을 포함한다. 상기 객체 식별기는각 소프트웨어 객체(608)에 대하여 유일한 것이고, 허가 메시지(500)를 그 해당하는 소프트웨어 메시지(600)에 속하게 할 수 있다. 버젼 정보는 상기 데이터 구조(508)에 포함되어 상기 소프트웨어 객체(608)의 버젼을 지시한다.
상기 허가 데이터 구조(508)의 일부분을 이용하여 상기 소프트웨어 객체 (608)를 상기 셋톱 박스(108)에 이용할 수 있는지를 결정한다. 상기 비용 정보는 상기 셋톱 박스(108)에 지시하고, 때로는 사용자에게 지시하며, 그 가격은 소프트웨어 객체(608)와 관련된다. 자격 정보는 상기 특정 셋톱 박스(108)가 상기 소프트웨어 객체(608)를 받아들이는 것이 허가되었는지 여부를 결정는데 이용된다. 상기 자격 정보는 상기 소프트웨어 객체(608)가 대칭 키로 암호화되는 경우의 키를 포함할 수 있다. 상기 셋톱 박스(108)가 상기 소프트웨어 객체(608)에 대하여 허가되지 않는 경우, 소프트웨어 객체가 수신될 때 그 해당하는 소프트웨어 객체(608)를 처리할 필요가 없다. 수명 정보에 의해 상기 소프트웨어 객체(608)의 허가 소멸은 특정 날짜 또는 시간 후의 사용을 예방할 수 있다. 프로그래밍 계층을 이용하여 소프트웨어 객체(608)의 허가를 미리 정의된 타이어들로 제한함으로써, 셋톱 박스 (108)는 미리 정해진 계층 내에서 소프트웨어 객체(608)만을 액세스할 수 있다.
상기 시그너처는 상기 허가 메시지(500)와 해당하는 소프트웨어 메시지(600)의 일부분이 인증되었다는 것을 입증하는데 이용된다. SHA-1 또는 MD5 등의 해시 함수는 전체의 서명 그룹에 걸쳐 실행되고, 그 결과는 RSA, ECC 및 DSA 등의 표시알고리즘을 통해 실행되어 상기 시그너처를 발생한다. 대안으로, 간단한 CPC 알고리즘은 해시 함수에 이용될 수 있고, 그 결과에 의해 3중 DES 또는 DES 등의 암호화 알고리즘을 통하여 전송되어 상기 시그너처(512)를 발생한다. 상기 허가 메시지 (500)를 수집할 때, 상기 헤드엔드(104)는 상기 시그너처(512)를 상기 허가 메시지 (500)에 삽입하기 전에 전체의 서명 그룹(700) 상에 시그너처(512)를 계산한다. 상기 셋톱 박스 (108)는 상기 허가 및 소프트웨어 메시지(500, 600)의 수신시 상기 서명 그룹(700)의 시그너처를 계산한다. 상기 시그너처를 계산할 때, 상기 시그너처는 상기 서명 및 소프트웨어 메시지(500, 600) 부분을 인증하기 위하여 상기 수신된 시그너처 (512)에 대하여 점검된다. 상기 시그너처들이 일치하지 않는 경우에, 상기 셋톱 박스(108)는 상기 소프트웨어 메시지(600)를 폐기하는데, 그 이유는 상기 소프트웨어 메시지가 부적합한 소오스로부터 발생하였기 때문이다. 일부의 실체에는 복수의 시그너처를 이용하여 상기 시스템(100) 안에 다른 셋톱 박스(108)를 제공할 수 있다.
상기 제1 및 제2 체크섬(516, 612)은 선형 또는 비선형 알고리즘으로 계산된다. 이러한 체크섬(516, 612)은 상기 네트워크(216)를 통하여 상기 셋톱 박스(108)로 전송되는 데이터의 무결성을 확인한다. 예컨대, 상기 체크섬은 상기 메시지의 각 바이트에 대한 자리올림 없이 2진수를 부가하는 순환 중복 검사(CRC)가 이루어질 수 있다. 상기 메시지 스풀러(208)는 상기 메시지가 전송되는 것과 같이 상기 체크섬(516)을 계산하여 그 체크섬(516)을 상기 메시지(500)의 끝에 붙인다. 이와 반대로, 상기 셋톱 박스(108)는 상기 메시지(500)가 수신되는 체크섬을 계산하고, 그 수신된 메시지(500)의 체크섬(516)에 대하여 계산된 체크섬을 계산한다. 그 계산되고 수신된 체크섬이 일치하지 않는 경우, 전송시에 에러가 발생한다. 에러가발생한 메시지(500, 600)들은 상기 헤드엔드(104)가 대체 메시지(500,600)를 전송한 후에 폐기된다. 일부의 실체는 체크섬보다는 오히려 디지털 시그너처를 이용할 수 있다.
상기 객체 헤더(604)는 상기 소프트웨어 메시지(600)의 속성을 포함한다. 상기 객체 헤더(604)에는 헤더 길이, 소프트웨어 객체 길이, 객체 식별기, 소프트웨어 버젼 및 도메인 식별기가 포함된다. 상기 헤더 길이 및 소프트웨어 객체 길이는 상기 객체 헤더(604) 및 소프트웨어 객체(608)의 길이를 각각 지시한다. 전술한 바와 같이, 상기 객체 식별기는 상기 허가 메시지(500)를 상기 소프트웨어 메시지 (600)에 제공할 수 있는 유일한 코드를 제공한다. 상기 소프트웨어 버젼은 상기 소프트웨어 객체의 버전을 지시한다. 다른 케이블 제공자에게는 도메인 식별기가 할당되어, 소프트웨어 객체(608)를 수신할 수 있는 모든 셋톱 박스(108)가 그 도메인과 관련된 소프트웨어 객체(608)를 스크린할 수 있게 한다.
상기 소프트웨어 객체(608)는 상기 시스템(200)이 셋톱 박스(108)로 전달하기 위하여 설계되는 콘텐츠를 포함한다. 몇가지 종류의 정보는 실행가능한 프로그램, 펌웨어 업그레이드, 실행 시간 프로그램(예컨대, Java 또는 ActiveX), 프로그래밍 스케쥴, 과금 정보, 비디오, 오디오 또는 데이터 등의 소프트웨어 객체 내에 내장될 수 있다. 상기 소프트웨어 객체(608)는 인증 및 허가 후에 또는 이후에 즉시 이용될 수 있다. 또한, 허가는 특정 시간 후에 만료되도록 프로그램될 수 있다.
특히, 도 7을 참조하면, 상기 서명 그룹(700)이 도시된다. 이러한 그룹(700)은 상기 허가 메시지(500) 및 소프트웨어 메시지(600) 부분으로 구성된다. 상기 시그너처(512)를 계산하는데 이용되는 모든 데이터는 상기 서명 그룹(700)에 포함된다. 상기 시그너처(512)가 상기 허가 메시지(500) 및 소프트웨어 메시지(600)로부터 구성 요소를 요구하기 때문에, 불량 시그너처 점검은 상기 허가 메시지(500) 중 하나를 지시하고, 상기 소프트웨어 메시지(600)는 참 소오스로부터 발생한 것으로입증될 수 없다. 상기 참 소오스는 상기 시그너처(512)를 발생한 헤드엔드(104)이다. 복수의 시그너처(512)가 있는 경우, 상기 셋톱 박스(108)는 상기 서명 그룹(700)을 인증하는 적어도 하나의 시그너처(512)를 선택한다.
도 8을 참조하면, "권리" 메시지(800)의 실시예가 블록도 형태로 도시된다. 그 권리 메시지(800)는 기능 장치를 이용할 수 있는 권리를 전달한다. 상기 기능 장치는 객체 또는 자원이 될 수 있다. 통상적으로, 각 셋톱 박스(108)에 대하여 하나의 권리 메시지가 있는데, 이 메시지는 모든 기능성 장치에 대한 권리를 특정한다. 객체 및 자원과 관련된 허가 메시지(500)로부터의 요구는 상기 권리들을 점검하여 다른 객체 또는 자원과의 대화가 허가되는 경우를 결정한다. 상기 권리 메시지(800)에 의해 새로운 권리를 상기 셋톱 박스(108)와 관련된 기능 장치에 원격으로 부가할 수 있다. 도면에 도시하지 않았지만, 상기 권리 메시지(800)는 디지털 시그니처를 포함하여 전송 중에 상기 메시지(800)의 무결성을 확인한다. 일부 실시예에 있어서, 체크섬은 디지털 시그니처 대신에 이용될 수 있다.
상기 권리 헤더(804)는 상기 권리 메시지(800)의 속성을 포함한다. 상기 권리 헤더(804)에는 헤더 길이, 권리 데이터 구조 길이, 셋톱 박스(108) 식별기 및 도메인 식별기가 포함된다. 상기 헤더 길이 및 권리 데이터 구조 길이는 상기 권리헤더(804) 및 권리 데이터 구조(808)의 길이를 각각 지시한다. 인증을 받기 위하여, 상기 셋톱 박스(108) 식별기는 상기 권리 메시지(800)가 상기 시스템(100)의 특정 셋톱 박스(108)에 속한다고 생각하게 할 수 있는 유일한 코드를 제공한다.
상기 권리 데이터 구조(808)의 정보를 이용하여 모든 기능 장치에 권리가 운반된다. 소정의 기능 장치는 일부의 다른 기능 장치를 이용할 수 있는 권리를 가질 수 있다. 이러한 권리들은 상기 권리 데이터 구조(808)에 포함된다. 각 기능 장치 식별기는 특정 기능 장치예 계층 권리를 속하게하는데 이용되는 계층 권리를 목록화한다. 그 기능 장치는 상기 셋톱 박스(108)에 이미 있거나 약간의 시간 후에 다운로드 될 수 있다.
다음에, 도 9를 참조하면, 기능 장치들 사이의 대화는 블록도 형태로 도시된다. 상기 셋톱 박스(108)와 관련된 기능 장치들은 셋톱 박스 자원(904), 프린터 드라이버 객체(908), 이메일 객체(912) 및 프린터 포트 자원(914)을 포함한다. 이러한 기능 장치의 정상적인 대화 동안, 검사점들은 허가 검사를 트리거하는데 직면하게 된다. 표는 권리 및 요구를 도 9의 각 기능 장치와 서로 관련시킨다. 상기 기능 장치 식별기는 상기 객체 메시지(600)를 상기 권리 메시지(800)와 서로 관련시켜 제공한다.
기능 장치 ID 기능 장치 요구 권리
904 셋톱 박스 NA 이메일, 프린터 드라이버 등
912 이메일 프린터 드라이버
908 프린터 드라이버 프린터 포트
914 프린터 포트 없음
상기 셋톱 박스 자원(904)은 상기 이메일 객체(912)에 대한 상위 관계(superordinate)이다. 상기 이메일 객체가 로딩될 때, 상기 객체(912)의 검사점은 적합한 권리를 검사한다. 그 적합한 권리들은 이메일 객체(912) 자체의 요구(920-2)에 의해 정의된다. 상기 이메일 권리(916-1)가 이메일 객체 요구(920-2)의 표준을 충족시키면, 상기 이메일 객체(912)는 상기 검사점을 지나서 실행을 지속한다. 상기 ACP(240)는 상기 이메일 권리(916-1) 후에 실제로 인증하고, 이메일 객체 요구 (920-2)는 그 관련 기능 장치(904, 912)에 의해 각각 로드된다.
사용자가 상기 셋톱 박스(904)를 수신한 후에, 사용자는 최적의 프린터를 부가할 수 있다. 이러한 실시예에 있어서, 이러한 프린팅은 모든 셋톱 박스(904)에 포함되지 않은 추가적인 특징이다. 상기 프린터(212)가 상기 콘텐츠 제공업체에 의해 인정된 구매인 경우, 프린터 드라이버 권리(916-2, 916-4) 및 프린터 포트 권리 (916-3)는 상기 헤드엔드(104)로부터 셋톱 박스(904)로 권리 메시지로서 보내진다.
일부 실시예에서는 권리들을 상기 프린터 포트(920-3)를 이용할 수 있는 일부의 기능 장치에 제공할 수 있다. 예컨대, 상기 이메일 객체(912)에는 상기 프린터 드라이버 권리(916-4)가 제공될 수 있지만, 그 셋톱 박스 자원(904)은 상기 프린터 드라이버 권리(916-2)를 수신할 수 없다. 이러한 방법으로, 상기 이메일 객체(916-2)는 상기 프린터 포트(920-3)를 이용할 수 있지만, 다른 객체들은 이용할 수 없다.
상기 프린터(212)를 상기 프린터 포트(914)로 후킹(hook)함으로써 상기 프린터 (212)에 포함된 비밀 코드를 요청하는 TV(216) 상에서 메시지의 디스플레이를 트리거할 수 있다. 상기 사용자가 비밀 코드를 입력한 후에, 상기 프린터(212)를인에이블하는 권리 메시지(800)는 핸드엔드(104)에 요청된다. 상기 헤드엔드(104)가 상기 비밀 코드를 수신하여 확인할 때, 권리 메시지(800)의 인에이블링 세트는 상기 비밀 코드에 의한 키로 암호화된다. 이러한 실시예에 있어서, 상기 프린터 드라이버 객체(908)는 로딩된 공장이지만, 다른 실체는 객체 메시지를 이용하여 필요할 때 이러한 객체(908)를 로드할 수 있다.
이메일 객체(912)를 실행하는 동안, 사용자는 이메일 메시지를 프린트할 수 있다. 일부의 검사점들은 적합한 권리가 프린팅 전에 나타나 있는지를 확인한다. 상기 이메일 객체(912)는 정보 요구 프린팅으로 프린터 드라이버(908)를 호출한다. 상기 프린터 드라이버(908)의 검사점은 이메일 객체의 허가 검사가 이루어질 때까지 프로세싱을 중단한다. 프린터를 구매하였을 때 다운로드되는 프린터 드라이버 권리(916-4)는 인증을 받기 위하여 프린터 드라이버 요구(920-1)에 따라 ACP(240)로 로드된다. 인증이 성공하는 경우, 상기 프린터 드라이버 객체(908)는 상기 프린터(212)에 대한 프린트 정보를 포멧하여, 상기 프린터 포트 자원(914)으로 통과시킨다.
상기 프린터 포트 자원(914)은 상기 프린터(212)에 접속된 케이블에 인터페이스하는 하드웨어 포트이다. 정보를 상기 프린터 포트 자원(914)으로 보낼 때, 검사점은 상기 프로세스를 중지하고 상기 프린터 드라이버 객체(908)에 적합한 권한이 있는지 여부를 점검한다. 상기 요구(920-3) 및 권리(916-3)는 인증을 받기 위하여 상기 ACP(240)로 로드된다. 상기 프린터 드라이버 객체(08)의 사용이 인증되었을 때, 상기 프린트 작업의 나머지는 프린팅을 위하여 프린터 포트 자원으로 스풀된다.
일부 실시예에 있어서, 상기 기능 장치의 권리(916)는 다른 기능 장치에 의해 물려받을 수 있다. 그 권리(916)는 상기 기능 장치를 이용할 수 있는 다른 객체 (608)로 운반될 수 있다. 예컨대, 상기 프린터(232)를 이용하는 권리(916)는 초기에 이메일 객체(912)와 관련될 수 있는데, 이러한 권리(916)는 사용자가 프린터 (212)를 구매했을 때 이메일 객체(912)로 운반된다. 이후의 시간에, 상기 헤드엔드 (104)는 모든 다른 기능 장치 또는 상기 프린터 포트 (232)를 이용할 수 있는 상기 일부의 기능 장치에 상기 권리(196)의 상속을 허가할 수 있다. 이러한 방법으로, 추가적인 기능 장치는 상기 프린트 특성을 이용할 수 있다.
도 10에는 제3 보안 레벨에서 객체를 로딩하는 프로세스의 일례가 도시된다. 이러한 실시예에서는 네트워크 운용자가 런치전의 객체 소오스라는 것을 인증한다. 제1 단계 (1004)에서, 상기 제어기(220)는 상기 메모리(228)의 비휘발성 부분으로부터 상기 허가 및 객체 메시지(500, 600)를 판독한다. 상기 객체 메시지(600)는 단계 (1008)에서 ACP(240)로 로딩되고, 그 허가 메시지(500)는 단계(1012)로 로딩된다.
객체 및 허가 메시지(600, 500)가 로딩될 때, 서명 그룹의 모든 구성 요소들은 상기 ACP(240)에서 이용할 수 있다. 단계(1016)에서, 상기 ACP(240)는 상기 서명 그룹(700)에 시그니처를 계산한다. 상기 ACP(240)는 상기 허가 메시지(500)의 시그니처(512)가 그 계산된 시그니처와 일치하는지 여부에 대하여 단계(1024)에서 결정한다. 일치하는 경우, 상기 객체(608)는 허가되고, 그 객체(608)는 상기 OS에의해 메모리(228)로 로딩되어 실행된다. 대안으로, 상기 ACP(240)는 상기 객체 (608)를 폐기하고, 상기 서명이 일치하지 않는 경우에 OS에 에러를 통지한다. 서명 (512) 불일치는 기억하는 동안에 손상의 원인이 될 수 있다, 즉 상기 객체(608)를 대체하는 해적판 또는 상기 객체(608)를 손상시키는 바이러스의 원인일 수 있다.
도 11은 제4 보안 레벨로 객체를 로딩하는 프로세스의 실체가 흐름도로 도시된다. 이러한 실시예에서는 셋톱 박스(108)가 상기 객체(608)를 런칭(launch)하기 전에 객체의 이용이 허가되었는지 여부를 점검한다. 전술한 제1 보안 레벨과 유사하게, 이러한 실시예에서는 암호화를 이용하여 그 허가 점검을 한다. 대칭 또는 비대칭 키 중에 하나의 키는 암호화에 이용될 수 있다. 제1 단계(1104)에 있어서, 상기 객체 메시지(600)는 상기 메모리(228)의 비휘발성 부분에 암호화 형태로 기록된다. 일부 실시예에 있어서, 상기 객체 메시지(600)는 암호화 형태로 상기 네트워크 (208)로부터 수신됨으로써 기억전에 추가적인 암화화 단계는 불필요해진다.
상기 객체(608)를 바람직하게 로딩할 때, 그 허가 및 객체 메시지(500, 600)는 단계(1108)에서 상기 비휘발성 메모리(228)로부터 검색된다. 상기 허가 메시지 (500)는 상기 객체 메시지(600)를 해독하는데 필요한 키를 포함한다. 상기 키 및 객체 메시지(600)는 단계(1112)에서 상기 ACP로 로딩된다. 상기 객체(608)는 단계 (1116)에서 해독된다. 해독에 사용된 키가 상기 객체(608)에 대하여 허용된 키가 아닌 경우, 상기 해독 프로세스는 성공하지 못할 것이고, 그 결과의 발생물은 해독 불가능하게 될 것이다. 대안으로, 단계(1120)에서 상기 평문 객체는 그 키가 정확한 경우에 실행하는 OS로 복귀된다.
일 실시예에 있어서, 상기 객체(608)는 암화화 형태로 휘발성 메모리에 로딩된다. 상기 객체 메시지(600)로부터의 객체(608)만이 메모리에 기억되기 때문에, 그 객체(608)는 자체가 암호화 된다. 동일한 키 또는 기타 키는 암호화하는데 이용될 수 있다. 뒤이은 검사점들과 만날 때, 메모리의 암호화 객체(608) 상에서 그 허가는 실행될 수 있다. 예컨대, 상기 객체(608)를 재생하거나 관측하기 위해 메모리로부터 판독할 때, 다시 한번 허가를 입증하기 위하여 해독된다. 패스워드 입력 등의 사용자 상호 동작은 허가 프로세스 동안에는 필요 없다.
도 12에는 제4 보안 레벨로 객체를 로딩하는 프로세스의 다른 실시예가 흐름도 형태로 도시된다. 이러한 실시예에 있어서, 상기 허가 메시지(500)의 자격은 객체(608)를 로딩하기 전에 객체의 허가를 확인하기 위해서 검사된다. 단계(1204)에서, 허가 메시지(500)는 상기 메모리(228)로부터 판독된다. 다음 단계(1208)에서, 상기 제어기(220)는 상기 허가 메시지(500)를 상기 ACP(240)로 로딩한다.
상기 ACP(240)가 상기 허가 메시지(500)를 갖을 때, 그 자격 정보는 단계 (1212)에서 점검된다. 상기 자격 정보를 점검하는 것에 의해 상기 객체(608)가 허가되는지 여부에 대하여 단계(1216)에서 결정된다. 상기 객체(608)가 허가되는 경우, 그것은 상기 OS에 의해 메모리로 로딩되어 실행된다. 대안으로, 상기 OS는 실패한 허가 시도가 통지되고, 객체(608)를 이용할 자격이 없는 경우에, 상기 객체는 폐기된다.
앞서 설명하지는 않았지만, 제4 보안 레벨의 허가는 통상적으로 제3 인증 레벨과 동일한 시간에 및 객체(608)를 로딩하기 전에 실행된다. 허가는 고속 프로세스이기 때문에 인증전에 허가된다. 인증 및 허가의 실행 후에, 상기 OS로 복귀되는 상태는허가 안됨,허가는 되었지만 인증되지 않음또는허가 및 인증됨이다.
도 13은 제5 보안 레벨에서 객체를 연속적으로 실행하는 점검 프로세스의 일 실시예가 흐름도로 도시된다. 상기 제5 보안 레벨 또는 제6 보안 레벨(이후에 설명)은 시간 및 사용에 의해 트리거되는 검사점에 관한 것이다. 이해할 수 있는 바와 같이, 실행 중인 객체는 그것이 실행되거나 대체되지 않도록 인증되어야 한다. 부가적으로, 허가의 확인은 시간 주기 동안에 연속적으로 실행되는 애플리케이션을 주기적으로 만료한다. 미리 정해진 주기는 이용될 수 있고, 또한, 예측할 수 없게 변하는 주기도 이용될 수 있다.
상기 프로세스는 상기 메모리(228)로부터 객체(608)를 판독하는 단계(1304)에서 개시한다. 상기 객체(608)를 로딩하기 전에는 제1 시그너처를 갖고, 메모리 (228)로 상기 객체(608)를 로딩한 후에는 상기 로딩한 객체(608)의 시그너처를 변경할 수 있다. 당업자라면 이해할 수 있는 바와 같이, 상기 어드레스는 상기 시그너처를 변경할 수 있도록 가상 어드레싱에서 물리적인 어드레싱으로 변환된다. 따라서, 상기 시그너처는 상기 로딩된 객체를 지시하는 제2 시그너처를 발생하기 위하여 단계(1308)에서 다시 계산된다. 주목할 점은 상기 제2 서명이 변하지 않게하는 방법으로 상기 객체(608)를 메모리(228)에 로딩하고 유지해야 한다는 것이다. 예컨대, 상기 로딩된 객체는 서명을 변경할 수 있는 자체 수정 코드를 갖지 않아야 한다. 그러나, 일부의 실시예에서는 변경한 제2 시그너처로 수정할 수 있다.
상기 OS에는 주기적인 인증 및 허가를 트리거하는 일정한 간격으로 계획된검사점이 있다. 단계(1312)에 있어서, 상기 프로세스는 다음의 예정된 검사점을 대기한다. 통상적으로, 이러한 예정된 검사점은 적어도 매주 또는 매달 발생한다. 케이블 TV 서비스 요금이 매달 청구됨으로써, 요금 청구 주기 후에 권한없이 지속적으로 애플리케이션을 실행하는 것에 대한 점검은 바람직하지만, 특정 간격으로 이용되어야 한다. 단계 (1316)에서는 상기 허가 메시지(500), 즉 로딩된 객체 및 제2 시그너처를 상기 ACP (240)로 로딩함으로써 인증 및 허가를 실행한다. 상기 제2 시그너처는 인증에 이용된다.
단계(1316)에서는 인증 및 허가가 성공적으로 실행되었는지 여부에 대하여 결정한다. 성공적으로 인증 및 허가를 실행하였다면, 상기 프로세스는 다음 검사점을 대기하는 단계(1312)로 복귀한다. 대안으로, 상기 객체는 메모리(228)로부터 제거되고, 인증 또는 허가 검사중 하나가 실패한 경우에 폐기된다. 바람직하게, 상기 ACP(240)는 상기 예정된 검사점을 결정하는 시간 소오스이다. 상기 ACP(240)는 허가 기간의 만료를 피하기 위하여 시간을 다시 설정하는 일에 덜 민감하다. 부가적으로, 상기 ACP(240)는 상기 시간을 변경할 수 있는 애플리케이션 소프트웨어를 실행할 수 없고, 상기 시간을 변경하기 위해서는 보안 명령이 필요하다. 보안 명령들은 암호화 또는 서명을 이용하여 특정 시간 변화를 확인할 수 있다. 허가를 만료하기 위하여 해독에 사용된 키는 만료될 수 있고, 또한 새로운 권리 메시지(800)는 객체를 이용할 권리를 겹쳐쓰고 제거한 것이 보내질 수 있다.
전술한 실시예는 검사점을 트리거하기 위한 시간 주기에 의존하더라도, 다른 실시예는 다른 방법으로 검사점을 트리거할 수 있다. 예컨대, 사용량은 검사점을트리거하는 카운터로 모니터될 수 있다. 미리 정해진 로드 또는 미리 정해진 누적 실행 시간 후에, 검사점은 상기 객체의 재확인을 요구할 수 있다.
다음의 도 14a에는 제6 보안 레벨에서 객체의 자유로운 미리 보기를 허용하는 프로세스의 실체가 흐름도로 도시된다. 상기 제6 보안 레벨은 구입하기 전에 평가판 소프트웨어를 이용할 수 있다. 종래 기술에 널리 공지된 바와 같이, 사용자는 소프트웨어를 구입하기 전에 소프트웨어를 사용해보는 것이 바람직하다. 따라서, 상기 제6 보안 레벨은 소프트웨어를 구입하기 전에 시간 주기 동안 소프트웨어를 이용할 수 있다.
상기 프로세스는 상기 메모리(228)의 기억부로부터 객체(608)를 검색하는 단계(1404)에서 개시한다. 단계(1408)에서, 상기 객체(608)는 객체(608)의 실행을 개시하는 메모리(228)의 실행부로 로딩된다. 카운트다운 타이머는 실험 주기의 끝을 표기하기 위하여 제로로 카운트다운하는 단계(1412)에서 개시된다. 카운트업 타이머가 실험 주기의 만료를 결정할 수 있다는 것을 이해할 것이다. 단계(1416)에서,사용자는 실험 주기가 끝날 때까지 상기 객체(608)를 샘플링한다. 단계(1420)에서, 상기 샘플 주기의 종료는 상기 카운트다운 타이머가 제로인 하한에 도달하여 만료한 경우를 통지함으로서 결정된다. 타이머가 멈추었을 때, 상기 실험 주기의 일시적인 허가를 행한다.
단계(1424)에서,사용자에게는 애플리케이션의 허가를 중단하는 동안 객체를 구입하기 위한 옵션이 제공된다. 구입은 허가로 복귀시킬 것이다. 구입 스크린은 상기 객체(608)의 구입을 프롬프트하기 위하여 상기 셋톱 박스(108)에 의해 사용자에게 명확하게 나타낸다. 구입을 선택하지 않으면, 상기 객체(608)는 메모리 (228)로부터 제거되어 단계(1432)에서 폐기된다. 대안으로, 단계(1428)에서, 상기 객체 (608)는 메모리(228)에 남아 있고, 그 자격 정보는 구매에 동의하는 경우 구매 및 허가를 반영하기 위하여 갱신된다.
다른 실시예는 영원히 실행할 수 있는 손상된 예시 소프트웨어를 이용할 수 있지만, 일부의 특징들은 그 구입된 버젼에 나타난다. 사용자가 상기 손상된 버젼을 좋아하는 경우, 사용자는 그 누락된 특징을 얻기 위해서 전체 버젼을 구입할것이다. 손상되지 않은 객체(608)를 구입하여 그 누락 특징들에 허가를 받는다. 주목할 점은 일부의 실시예에 있어서, 그 완전한 버젼이 도 13에 도시된 것과 동일한 방법으로 상기 애플리케이션을 이용할 권리를 만료시킬 수 있다는 것이다.
도 14b는 메모리(228)의 기억부로부터 객체(608)를 검색하는 단계(1436)에서 개시한다. 단계(1440)에 있어서, 상기 객체(608)는 실행되는 메모리(228)의 실행부로 로딩된다. 카운트업 사용 카운터는 객체를 이용할 때 카운트업하는 단계(1444)에서 개시된다. 대안으로, 카운트다운 카운터가 사용 한도에 도달된 때를 결정할 수 있다는 것을 이해할 것이다. 사용자는 단계(1448)에서 객체(608)를 샘플링하고, 그 샘플링은 단계(1452)에서 사용 카운터를 증가시킨다. 이러한 실시예에서 각 사용 카운트는 프로그램 로드 또는 일부의 다른 동작에 해당한다. 단계(1456)에서, 상기 샘플 주기의 만료는 상기 사용 카운터가 상한에 도달한 때를 통지함으로서 결정된다. 그 한도에 도달했을 때, 그 실험 주기의 임시 허가는 만료된다.
단계(1460)에서, 사용자에게는 상기 애플리케이션 허가를 중단하는 동안 상기 객체를 구입하기 위한 옵션이 제공된다. 구입은 허가를 복귀시킬 것이다. 구매 스크린은 상기 셋톱 박스(108)에 의해 사용자에게 명확하게 나타냄으로써 상기 객체(608)의 구매를 프롬프트한다. 구매를 선택하지 않으면, 상기 객체(608)는 메모리(228)로부터 제거되어, 단계(1468)에서 폐기된다. 대안으로, 단계(1464)에 있어서,상기 객체는 메모리에 남아 있고, 그 자격 정보는 구매에 동의하는 경우 그 구매 및 허가를 반영하기 위하여 갱신된다.
전술의 실시예가 전체 객체(608)의 사용을 측정하더라도, 다른 실시예는 더욱 정교한 방법으로 사용을 모니터할 수 있다. 상기 객체(608)의 개별적인 기능은 액세스를 측정할 수 있다. 예컨대, 이메일 프로그램은 상기 프린트 능력의 구매를 요구하기 전에 20개의 이메일 메시지를 프린팅하기 위하여 허용될 수 있다.
도 15a에는 제7 보안 레벨에서 헤드엔드(104)로 돌아가는 보고서를 모니터링하는 프로세스의 실시예를 흐름도로 도시한다. 상기 헤드엔드(104)에서 모니터링 컴퓨터는 상기 네트워크(208)를 통하여 상기 헤드엔드(104)로 다시 보안 보고서를 주기적으로 전송하기 위하여 상기 시스템(100)에서 각 ACP(240)를 기다린다. 미리 정해진 주기 내에서 다시 보고하는 것을 실패한 ACPs(240)는 오동작 ACPs (240)이라고 가정하며, 이것은 해킹 또는 셋톱 박스(108)의 오동작을 지칭한다. 이러한 실시예에 있어서, 상기 헤드엔드는 적어도 하나의 보안 보고서를 매일 기다린다. 단지 하나의 셋톱 박스(108)를 모니터링하는 프로세스는 도 15a에 도시되지만, 그 프로세스는 상기 시스템(100)의 많은 셋톱 박스(108)에 병렬로 실행된다는 것을 이해할 것이다.
단계(1502)에 있어서, 역보고 타이머(reportback timer)는 1일의 초기 값으로 설정된다. 그 초기값을 설정한 후에, 상기 역보고 타이머는 시간의 카운팅 다운을 시작한다. 이러한 프로세스에 제공된 셋톱 박스(108)에 대하여, 상기 헤드엔드 (104)는 상기 셋톱 박스(108)로부터 제공된 역보고를 모니터한다(단계 1506). 단계 (1510)에 있어서, 상기 보안 보고서를 수신했는지 여부를 결정하기 위하여 테스트된다. 그 보고서를 받은 경우, 프로세싱은 식별된 보안 문제점을 그 보고서를 통하여 분석하는 단계(1546)로 진행한다. 어디에 보안 문제점이 있는지, 상기 셋톱 박스(1518)는 단계(1518)에서 디저블될 수 있다. 보안 문제점이 없으면, 프로세싱은 단계(1502)로 복귀한다.
단계(1510)전에 보고서를 받지 못하는 경우, 프로세싱은 역보고 타이머가 만료했지는 여부를 결정하기 위하여 또 다른 테스트를 실행하는 단계(1514)로 진행한다. 타이머가 만료하지 않은 경우, 프로세싱은 단계(1506)로 복귀한다. 상기 만료된 타이머에 해당하는 셋톱 박스(108)는 타이머가 만료한 경우에 단계(1518)에서 디저블된다. 만료된 타이머는 ACP(240)가 더 이상 보안 문제를 보고하지 않는다고 지시할 것이다. 상기 셋톱 박스(108)를 디저블하기 위하여, 새로운 권리 메시지 (800)는 상기 적외선 포트 자원과 같이 단계(1518)에 상기 셋톱 박스(30)의 키 기능을 디저블하는 것이 보내질 수 있다. 또한, 고객 지원과 접촉하여 상기 적외선 포트 자원을 다시 인에이블하는 것을 사용자에게 알리기 위하여 셋톱 박스 (108)에 메시지를 디스플레이할 수 있다.
이러한 실시예가 불행한 보안 보고서에 응답하여 전체의 셋톱 박스를 디저블하더라도, 일부이 실시예는 상기 보안 문제를 일으키는 객체(608)만을 디저블할 수 있다. 상기 셋톱 박스(108)의 운용 체계(OS)가 메모리에서 손상되는 경우, 예컨대, 차후의 검사점은 바람직하게 응답하지 않을 것이다. 상기 ACP(240)는 실행하지 않은 검사점을 관찰한 후에 이러한 에러를 보고할 것이다. 상기 셋톱 박스(108)로의 명령을 헤드엔드(104)로 보내서 OS를 다시 로드하는 것에 의해 에러를 소거한다. 또 다른 보고서를 수신한 경우, 상기 셋톱 박스(108)는 디저블될 수 있다.
도 15b는 제7 보안 레벨에서 셋톱 박스(108)에 의해 보안 점검을 보고하는 프로세스를 흐름도 형태로 도시한다. 상기 ACP(240)는 검사점에 직면하거나 직면해야 될 때 객체(608) 및 OS의 바람직한 동작을 모니터한다. 예컨대, 일부의 실시예는 객체(608)를 로딩, 런칭 또는 액세스할 때마다 검사점을 실행한다. 상기 ACP (240)는 허가 및/또는 인증을 실행하고, 바람직하지 못한 결과에 영향을 미치는 것이 확실하다. 검사점 취급의 실패는 보안 보고서에서 상기 헤드엔드(104)로 보고된다.
단계(1522)에서는 역보고 타이머가 설정된다. 상기 역보고 타이머는 상기 셋톱 박스(108)가 상기 헤드엔드(104)로 보안 보고서를 정상적으로 보내는 기간을 설정한다. 이러한 실시예에 있어서, 상기 ACP(240)는 매시간 보고서를 보낸다. 이러한 보고서는 상기 OS 및 제어기(220)로부터 허가 및 인증 에러 보고서에 부가한다. 상기 ACP(240)는 단계(1526)에서 상기 OS 및 객체(608)에 의해 검사점이 만나야 하는 시간을 독립적으로 결정한다. 단계(1530 및 1534)에 있어서, 상기 ACP (240)는 상기 검사점에 응답하여 인증 및/또는 허가를 실행했는지 여부를 결정한다. 이러한 테스트를 실패한 경우에, 상기 ACP(240)는 상기 제어기(220)에 의해 헤드엔드(104)로 에러가 보고되었는지 여부를 더욱 결정한다. 상기 ACP(240)는 인증 및/또는 허가 프로세스에 포함되고, 이러한 프로세스를 실행할 때를 결정할 수 있다. 상기 에러 보고서의 모니터링은 상기 시스템 버스(230) 상에서 트래픽을 검사하는 ACP(240)에 의해 행함으로써 상기 네트워크 포트(208)가 상기 에러 보고서를 바람직하게 보내는지를 알 수 있다.
검사점이 무시되거나 다른 방법으로 동작되지 않는 경우, 보안 보고서는 단계(1542)에서 즉시 헤드엔드(104)로 보내진다. 상기 보안 보고서는 최근에 역보고 타이머 주기를 개시했기 때문에 발생한 모든 에러를 포함한다. 상기 검사점을 바람직하게 실행하면, 프로세싱은 한시간 역보고 주기의 만료가 테스트되는 단계(1538)로 진행한다. 보안 보고서는 단계(1542)에서 타이머가 만료할 때 ACP(240)에 의해 보내지고, 다른 방법으로, 프로세싱은 단계(1538)로부터 단계(1526)로 또 다른 모니터링을 위하여 복귀한다. 이러한 실시예에 있어서, 상기 ACP(240)는 상기 셋톱 박스(108)의 나머지에 간단한 점검을 실행하여 독립적으로 보안 문제를 점검하고, 또한 이러한 문제점을 상기 헤드엔드(104)에 보고한다.
도 15c는 제7 보안 레벨에서 보안 점검을 모니터링하는 프로세스의 다른 실시예를 흐름도 형태로 도시한다. 이러한 실시예에 있어서, 상기 ACP(240)는 검사점이 규칙적으로 만나는 이중 검사에 새도우(shadow)한다. 상기 프로세스는 마지막 OS 검사점의 시간을 기록하는 단계(1504)에서 개시한다. 상기 ACP(240)가 이러한 실시예의 인증 및 허가 프로세스에 포함되기 때문에, 상기 ACP(240)는 검사점의 실행을 추적할 수 있다. 단계(1508)에 있어서, 상기 카운트다운 타이머는 개시된다. 우리는 이러한 카운터가 카운트다운보다는 카운트업할 수 있다는 것을 다시 한 번 주목해야 한다.
단계(1512)에서는 상기 ACP(240)에 의해 검사점이 관찰되었는지 여부에 대하여 결정한다. 검사점이 관찰된 경우, 프로세싱은 카운트다운 타이머를 리셋하여 처음부터 다시 시작하는 단계(1504)로 복귀한다. 대안으로, 상기 타이머의 점검은 검사점이 관찰되지 않은 경우에 단계(1516)에서 실행된다. 카운터가 만료하지 않은 경우, 프로세싱은 검사점을 관찰하기 위해 다시 한번 테스트하는 단계(1512)로 복귀한다. 상기 타이머가 검사점에 도달하지 않고 만료할 때, 프로세싱은 ACP(240)가 헤드엔드(104)에 에러를 보고하는 단계(1520)로 진행한다.
상기 실시예가 한 개의 객체(608)에 있는 검사점의 테스트를 기술하고 있지만, 검사점의 테스트는 전술한 방법으로 상기 셋톱 박스(108)의 각 객체에 대하여 시행함으로써 많은 프로세스를 병렬로 실행할 수 있다는 것으로 이해될 것이다. 일부 실시예에 있어서, 일반적인 범주는 상기 객체(608)의 한 번 실행으로 에러를 검출하기 위하여 각 객체(608)에 대하여 설계될 수 있다. 또한, 우리는 신뢰성 있는 보안 운용 체계가 그러한 엄격한 방법으로 비정상적인 동작을 점검하는데 ACP(240)를 필요로 하지 않을 수도 있다는 점에 주목한다. 해커, 해적판, 바이러스 및 메모리 에러를 차단하기 위하여, 상기 운용 체계의 정상적인 기능 점검(즉, 규칙적인 검사점 점검)에 보안 임시층을 부가한다.
도 16a는 제8 보안 레벨에서 부분적으로 암호화된 객체를 발생하는 프로세스의 실시예를 흐름도로 도시한다. 상기 객체의 일부분은 객체(608)를 구입할 때까지 객체의 무권한 런칭을 예방하기 위하여 암호화된다. 예컨대, 상기 객체(608)의 손상된 버젼은 구매에 의해 토큰을 해독하여 상기 객체(608)의 비손상 버젼을 개량할 때까지 이용할 수 있다. 상기 토큰의 해독에 의해 상기 비손상된 버젼의 사용을 허락함으로써, 그 전체의 객체(608)는 평문 형태로 이용할 수 있다. 이러한 실시예에 있어서, 상기 토큰에 이용된 객체의 일부분은 그 전체 객체(608)의 크기의 1/2 이하이다.
프로세싱은 토큰으로 암호화하기 위해 객체(608)의 일부분을 선택하는 단계 (1602)에서 개시한다. 그 부분은 그 객체(608)로부터의 부재가 상기 객체(608)의 실행을 허용하지 않도록 선택된다. 상기 제거 부분은 단계(1606)에서 토큰으로 암호화된다. 대칭 또는 비대칭 중 하나는 실행될 수 있지만, 이러한 실시예는 대칭 암호화를 이용한다. 단계(1610)에 있어서, 상기 손상된 객체 또는 보안 객체는 상기 셋톱 박스(108)로 보내진다. 상기 보안 객체에는 평문 형태의 객체(608)의 나머지 및 토큰이 포함된다. 단계(1614)에 있어서, 상기 대칭 키는 보안 채널을 통하여 상기 셋톱 박스(108)로 보내진다.
사용자가 상기 객체(608)를 구매하는 경우, 상기 토큰은 해독되어 상기 객체(608)에 다시 삽입됨으로써 상기 개량된 객체는 실행될 수 있다. 구매되었다는 것을 지시하는 메시지를 상기 셋톱 박스(108)로부터 헤드엔드(104)로 보낸다. 단계 (1622)에서, 사용자의 계정에 대해 상기 객체(608)의 구매에 대한 요금 청구가 이루어진다. 갱신된 권리 메시지(800)는 단계(1626)에서 객체의 사용을 허가하는 것이 전송된다. 이러한 실시예가 상기 헤드엔드(104)로부터 최종 허가를 얻을지라도, 일부의 실시예는 이러한 허가를 피하여 상기 객체의 사용을 즉시 개시한다. 예컨대, 상기 헤드엔드(104)로부터 허가는 기억 전달 시스템에 실용적이지 못할 수 있다.
도 16b에는 제8 보안 레벨을 달성하기 위하여 토큰을 이용하는 프로세스의 실시예를 흐름도로 도시한다. 이러한 실시예는 암호문 토큰을 이용하여 상기 객체 (608)의 허가를 제어한다. 상기 암호문 토큰은 상기 객체(608)의 정상 동작 또는 일부 보조 동작에 필요한 객체(608)의 암호화 부분이다. 상기 암호문 토큰의 해독은 상기 객체(608)에 삽입되는 평문 토큰을 발생함으로써, 상기 객체는 평문 형태로 개량된다.
단계(1604)에 있어서, 상기 프로세스는 상기 객체(608)의 암호문 토큰 및 평문 나머지를 상기 헤드엔드로부터 수신함으로써 개시한다. 이러한 실시예가 상기 헤드엔드(104)에 의존하여 암호문 토큰을 발생하더라도, 일부 실시예는 객체(608)를 수신한 후에 상기 셋톱 박스(108)에서 토큰의 암호화를 실행할 수 있다. 상기 평문 나머지 및 암호문 토큰은 단계(1608)에서 기억 메모리(228)에 기억된다. 단계 (1612)에 있어서, 상기 암호문 토큰을 해독하는데 필요한 키는 수신되어, 상기 ACP(240)에 기억된다.
상기 프로세스는 사용자가 객체(608)를 구입할 때까지 단계(1616)에서 대기한다. 단계(1618)에 있어서, 상기 암호문 토큰은 상기 객체(608)로부터 제거되고 해독하기 위해 상기 ACP(240)로 보내진다. 그 결과의 평문 토큰은 상기 OS로 복귀되고, 상기 객체(608)에 통합되어 단계(1620 및 1624)에서 기능적인 객체(608)를 만든다. 단계(1628)에 있어서, 상기 구매는 상기 헤드엔드(104)로 보고된다. 상기 객체(608)의 실행전에, 권리 메시지(800)의 형태로 상기 헤드엔드(104)로부터 허가를 받을 필요가 있다. 전체의 객체(608)보다 오히려 상기 객체(608)의 일부분만을 암호화 함으로써, 상기 해독 프로세스는 가속된다.
이러한 토론은 OS 상에서 애플리케이션 또는 객체(608)를 실행하는 것에 관한 것이다. 이러한 개념들은 OS의 상부에 실행하는 JavaTM가상 기계 상에서 실행하는 JavaTM애플리케이션에 동일하게 적용할 수 있다. 이러한 추상적인 개념을 돕기 위해서, 상위 배치 및 하위 배치의 개념은 다른 객체에 검사점을 부과할 책임이 있다. 검사점들은 다른 객체(608) 및 자원에 발생하는 정상적인 상호 동작동안에 부과된다.
도 16c는 제8 보안 레벨을 달성하기 위하여 부분적인 다운로드를 이용하는 프로세스의 다른 실시예를 도시한다. 이러한 실시예는 상기 객체를 평문 부분 및 평문 나머지로 분할한다. 그 헤드엔드(104)는 상기 평문 나머지를 분배하지만, 상기 평문 부분을 분배하기 전에 구매를 기다린다. 상기 평문 부분 없이, 상기 객체 (608)는 실행될 수 없도록 손상된다. 이러한 실시예에 있어서, 상기 평문 부분은 상기 평문 나머지의 크기의 1/10 이하이다.
단계(1650)에 있어서, 상기 객체(608)의 평문 나머지는 상기 셋톱 박스(108)에 의해 수신되어 메모리(228)에 기억된다(단계 1654). 단계(1658)에서, 사용자가평문 나머지의 사용을 구매하지 않으면, 그 평문 나머지로 아무것도 행하지 않는다. 상기 구매 요청시에 입증을 실행할 때, 상기 헤드엔드(104)는 단계(1666)에서 수신되는 누락 평문 부분을 보낸다. 보안 채널은 상기 평문 부분을 상기 객체(608)를 구매한 셋톱 박스(108)로 보내는데 이용된다.
단계(1670)에 있어서, 상기 평문 부분 및 나머지는 상기 셋톱 박스(108)에서 상기 객체(608)를 다시 명확하게 나타내기 위하여 결합된다. 이러한 실시예는 상기 객체를 이용하기 위하여 상기 헤드엔드(104)로부터 새로운 권리 메시지를 요구한다. 상기 새로운 권리 메시지(800)는 오래된 권리 메시지(800)를 대체한 권리를 제공함으로써 상기 객체(608)를 이용할 것이다.
도 17에는 셋톱 박스(108)의 일부 기능 장치가 도시된다. 도 17의 하부에 있는 기능 장치들은 도 17의 상부 근처의 기능 장치에 상위 관계이다. 말하자면, 도 17의 상부쪽의 기능 장치들은 도면의 아래쪽의 기능 장치에 하위 관계이다. 상위 관계 기능 장치들은 하위 관계 기능 장치에 검사점을 부여할 책임이 있다. 예컨대, 상기 하드웨어(1704)는 상기 BIOS(1708), OS(1712) 및 상기 하위 관계 계층상에 검사점을 부여한다. 상기 BIOS(1708)는 OS(1712)에 검사점을 부여하지만, 상기 하드웨어(1704)에는 검사점을 부여하지 않는다. 동일한 배치 계층에 있는 기능 장치들은 그들이 상호 동작할 때 상기 배치 계층으로 다른 기능 장치에 검사점을 부여할 수 있다. 예컨대, 애플리케이션(1716)은 드라이버(1718)에 검사점의 실행을 요구할 수 있다.
상위 관계 기능 장치들은 상기 ACP(240)와 결합하여 상기 검사점의 실행을초기화할 수 있게 설계되고, 하위 관계 객체들은 그들에 부여된 검사점을 갖도록 설계된다. 예컨대, 상기 BIOS(1708)는 부트 프로세스 동안, 실행하는 동안 및/또는 주기적으로 실행하는동안 상기 OS(1712)에 검사점의 실행을 요구한다. 드라이버 객체(1718)는 정상 동작 동안에 설치되거나 수행될 때 검사점에 영향을 미친다. 데이터 파일 객체(1722)는 상기 파일 속의 데이터를 엑세스할 때마다 검사점에 영향을 미친다. HTML 객체(1728)는 브라우저 애플리케이션(1716)에 의해 HTML 객체 (1728)를 해석할 때마다 검사점의 일부분으로써 검토된다.
상기 설명의 견지에서, 본 발명의 장점들은 쉽게 명백해진다. 보안 매커니즘의 바람직한 동작은 독립적으로 모니터된다. 부가적으로, 상기 ACP는 상기 헤드엔드에 직접 보안 관찰을 보고한다. 이러한 독립적인 모니터링은 해커, 바이러스 및메모리 에러가 상기 셋톱 박스의 보안 기능을 손상시키는 것을 예방한다.
본 발명의 원리를 특정 장치 및 방법에 따라 설명하였지만, 이러한 설명은 단지 일예일 뿐이지 본 발명의 범위를 한정하는 것이 아니라는 것을 이해할 것이다.

Claims (19)

  1. 콘텐츠 수신기 내의 평문 객체를 보호하는 방법에 있어서,
    보안 객체의 보안 부분을 수신하는 단계와,
    상기 보안 객체의 나머지 평문을 수신하는 단계와,
    상기 보안 객체의 어떤 부분이 상기 보안 부분인지를 결정하는 단계와,
    상기 보안 부분을 해독하여 평문 부분을 제공하는 단계와,
    상기 평문 부분 및 나머지 평문을 갖는 상기 평문 객체를 형성하는 단계와,
    상기 평문 객체를 기억하는 단계를 포함하는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  2. 제1항에 있어서, 상기 평문 객체의 보안 부분을 암호화하기 위하여 선택하는단계와,
    상기 보안 부분을 암호화하는 단계와,
    상기 보안 부분 및 나머지 평문을 콘텐츠 수신기로 전송하는 단계와,
    상기 보안 부분의 해독에 이용되는 키를 제공하는 단계를 더 포함하는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  3. 제1항에 있어서, 상기 평문 객체의 구매를 콘텐츠 수신기로부터 떨어져 있는 지점에 보고하는 단계를 더 포함하는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  4. 제3항에 있어서, 상기 보안 객체의 나머지 평문 수신 단계는 상기 보고 단계 전에 실행되는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  5. 제1항에 있어서, 상기 해독 단계는 상기 보안 부분을 액세스 제어 프로세서로 해독하는 단계를 포함하는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  6. 제1항에 있어서,상기 보안 부분은 상기 보안 객체의 크기의 1/2 미만인 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  7. 조건부 액세스 시스템 내에 평문 객체를 보호하는 방법에 있어서,
    상기 평문 객체의 보안 부분을 암호화하기 위하여 선택하는 단계와,
    상기 보안 부분을 암호화하는 단계와,
    상기 평문 객체의 보안 부분을 콘텐츠 수신기로 전송하는 단계와,
    상기 평문 객체의 나머지 평문을 상기 콘텐츠 수신기로 전송하는 단계와,
    상기 보안 부분의 해독에 이용되는 키를 상기 콘텐츠 수신기에 제공하는 단계를 포함하는 것인 조건부 액세스 시스템 내에 평문 객체를 보호하는 방법.
  8. 제7항에 있어서, 보안 객체의 상기 보안 부분을 수신하는 단계와,
    상기 보안 객체의 상기 나머지 평문을 수신하는 단계와,
    상기 보안 객체의 어떤 부분이 상기 보안 부분인지를 결정하는 단계와,
    상기 보안 부분을 해독하여 평문 부분을 제공하는 단계와,
    상기 평문 부분 및 상기 나머지 평문을 포함하는 상기 평문 객체를 형성하는 단계와,
    상기 평문 객체를 기억하는 단계를 더 포함하는 것인 조건부 액세스 시스템 내에 평문 객체를 보호하는 방법
  9. 제7항에 있어서, 상기 평문 객체의 구매를 콘텐츠 수신기로부터 떨어져 있는 지점에 보고하는 단계를 더 포함하는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  10. 제9항에 있어서, 상기 보고 단계는 상기 평문 객체의 평문 나머지를 전송하는 단계 전에 실행되는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  11. 제7항에 있어서, 상기 보안 부분을 결정하는 단계를 더 포함하되, 상기 평문 객체로부터 보안 부분의 제거는 상기 평문 객체를 동작 불가능한 상태로 되게 하는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  12. 제7항에 있어서, 상기 콘텐츠 수신기의 원격 지점에서 상기 콘텐츠 수신기의 허가를 변경하는 단계를 더 포함하는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  13. 제7항에 있어서, 원격 위치에 있는 상기 콘텐츠 수신기로부터의 구매 정보를 상기 콘텐츠 수신기로 수신하는 단계를 더 포함하는 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  14. 제7항에 있어서, 상기 키는 대칭 키인 것인 콘텐츠 수신기 내의 평문 객체를 보호하는 방법.
  15. 콘텐츠 수신기 내의 객체를 보호하는 방법에 있어서,
    상기 객체의 제1 부분을 수신하는 단계와,
    상기 콘텐츠 수신기의 사용자로부터 상기 객체에 대한 구매 요구를 인식하는 단계와,
    상기 구매 요구를 상기 콘텐츠 수신기로부터 떨어져 있는 지점에 보고하는 단계와,
    상기 보고 단계 후에 상기 객체의 제2 부분을 수신하는 단계와,
    상기 콘텐츠 수신기 내에 상기 객체를 기억하는 단계를 포함하는 것인 콘텐츠 수신기 내의 객체를 보호하는 방법
  16. 제15항에 있어서, 상기 제2 부분은 암호화 형태로 수신되는 것인 콘텐츠 수신기 내의 객체를 보호하는 방법
  17. 제15항에 있어서, 상기 제1 부분은 상기 제2 부분보다 큰 900% 이상인 것인 콘텐츠 수신기 내의 객체를 보호하는 방법
  18. 제15항에 있어서, 상기 제1 및 제2 부분으로부터 상기 객체를 다시 명확하게 나타내는 단계를 더 포함하는 것인 콘텐츠 수신기 내의 객체를 보호하는 방법.
  19. 제15항에 있어서, 상기 객체의 제2 부분을 수신하는 단계는 보안된 분산 채널에 의해 상기 제2 부분을 수신하는 단계를 포함하는 것인 콘텐츠 수신기 내의 객체를 보호하는 방법.
KR1020027001070A 2000-05-26 2001-05-02 암호문 토큰을 이용하는 허가 KR20020019576A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US58030300A 2000-05-26 2000-05-26
US09/580,303 2000-05-26
PCT/US2001/014282 WO2001093577A2 (en) 2000-05-26 2001-05-02 Authorization using ciphertext tokens

Publications (1)

Publication Number Publication Date
KR20020019576A true KR20020019576A (ko) 2002-03-12

Family

ID=24320541

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020027001068A KR20020019575A (ko) 2000-05-26 2001-05-02 허가 및 인증 시점
KR1020027001071A KR20020019577A (ko) 2000-05-26 2001-05-02 액세스 제어 프로세서
KR1020027000974A KR20020019562A (ko) 2000-05-26 2001-05-02 인증 및/또는 허가 개시 방법
KR1020027001070A KR20020019576A (ko) 2000-05-26 2001-05-02 암호문 토큰을 이용하는 허가

Family Applications Before (3)

Application Number Title Priority Date Filing Date
KR1020027001068A KR20020019575A (ko) 2000-05-26 2001-05-02 허가 및 인증 시점
KR1020027001071A KR20020019577A (ko) 2000-05-26 2001-05-02 액세스 제어 프로세서
KR1020027000974A KR20020019562A (ko) 2000-05-26 2001-05-02 인증 및/또는 허가 개시 방법

Country Status (8)

Country Link
US (6) US20020032903A1 (ko)
EP (4) EP1290887A2 (ko)
JP (4) JP2003535519A (ko)
KR (4) KR20020019575A (ko)
CN (4) CN1192623C (ko)
AU (4) AU2001261146A1 (ko)
CA (4) CA2377729A1 (ko)
WO (4) WO2001093577A2 (ko)

Families Citing this family (139)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7394347B2 (en) * 1997-10-27 2008-07-01 World Wide Innovations, Llc Locking device for electronic equipment
US6968364B1 (en) * 2000-03-30 2005-11-22 Microsoft Corporation System and method to facilitate selection and programming of an associated audio/visual system
US7565692B1 (en) * 2000-05-30 2009-07-21 At&T Wireless Services, Inc. Floating intrusion detection platforms
US7315389B2 (en) 2001-03-23 2008-01-01 Toshiba Tec Kabushiki Kaisha Electronic document assembly, proofing and printing system
US8001594B2 (en) * 2001-07-30 2011-08-16 Ipass, Inc. Monitoring computer network security enforcement
EP1430715B1 (en) * 2001-09-10 2010-10-27 Koninklijke Philips Electronics N.V. Method and device for providing conditional access
US8966527B1 (en) * 2001-10-16 2015-02-24 The Directv Group, Inc. System and method for media inserts in a media distribution system
FR2831757B1 (fr) * 2001-10-26 2004-01-30 Canal Plus Technologies Procede de verification de recepteurs de television a controle d'acces et recepteur correspondant
US8068610B2 (en) * 2001-11-21 2011-11-29 General Instrument Corporation Method and system for providing security within multiple set-top boxes assigned for a single customer
US7792978B2 (en) * 2001-12-28 2010-09-07 At&T Intellectual Property I, L.P. System and method to remotely manage and audit set top box resources
JP4157709B2 (ja) * 2002-01-31 2008-10-01 富士通株式会社 アクセス制御方法及び記憶装置
JP2003304523A (ja) * 2002-02-08 2003-10-24 Ntt Docomo Inc 情報配信システム、情報配信方法、情報配信サーバ、コンテンツ配信サーバ及び端末
AU2003273157A1 (en) * 2002-05-28 2003-12-12 Sheng Lee System update protocol and bootable cd controller
US8234165B2 (en) * 2002-08-28 2012-07-31 Funn Holdings LLC Digital tuner regulator platform (DTR)
US7380265B2 (en) * 2002-10-16 2008-05-27 The Directv Group, Inc. System for monitoring direct broadcast wireless signals
US7287052B2 (en) * 2002-11-09 2007-10-23 Microsoft Corporation Challenge and response interaction between client and server computing devices
US7346927B2 (en) 2002-12-12 2008-03-18 Access Business Group International Llc System and method for storing and accessing secure data
US7613932B2 (en) * 2003-04-24 2009-11-03 International Business Machines Corporation Method and system for controlling access to software features in an electronic device
JP4881538B2 (ja) 2003-06-10 2012-02-22 株式会社日立製作所 コンテンツ送信装置およびコンテンツ送信方法
KR100547136B1 (ko) * 2003-08-05 2006-01-26 삼성전자주식회사 방송/예비 컨텐츠를 부호화/복호화하는 장치 및 방법
US20070245369A1 (en) * 2003-09-05 2007-10-18 Remote Security Systems, Llc Lockbox management system and method
US20050055709A1 (en) * 2003-09-05 2005-03-10 Thompson James Alfred Cable network access control solution
US8191160B2 (en) * 2003-10-16 2012-05-29 Rene Juneau Method and system for auditing and correcting authorization inconsistencies for reception equipment in a content delivery network
CA2542624C (en) * 2003-10-16 2015-06-16 Maxxian Technology Inc. Method and system for detecting and preventing unauthorized signal usage in a content delivery network
JP2005149129A (ja) * 2003-11-14 2005-06-09 Sony Corp ライセンス管理方法、情報処理装置および方法、並びにプログラム
JP4982031B2 (ja) 2004-01-16 2012-07-25 株式会社日立製作所 コンテンツ送信装置、コンテンツ受信装置およびコンテンツ送信方法、コンテンツ受信方法
US7519999B2 (en) * 2004-02-27 2009-04-14 Scientific-Atlanta, Inc. Secure negotiation and encryption module
JP4645049B2 (ja) 2004-03-19 2011-03-09 株式会社日立製作所 コンテンツ送信装置およびコンテンツ送信方法
US20050229220A1 (en) * 2004-04-06 2005-10-13 William Fisher System and method for interactive video services
US20050229205A1 (en) * 2004-04-13 2005-10-13 Alan Azralon Encrypted trigger and associated methods
US20050235283A1 (en) * 2004-04-15 2005-10-20 Wilson Christopher S Automatic setup of parameters in networked devices
US8543737B2 (en) * 2004-05-12 2013-09-24 Broadcom Corporation System and method to control access to data stored in a data storage device
US20050235336A1 (en) * 2004-04-15 2005-10-20 Kenneth Ma Data storage system and method that supports personal video recorder functionality
US7555613B2 (en) * 2004-05-11 2009-06-30 Broadcom Corporation Storage access prioritization using a data storage device
US20050235063A1 (en) * 2004-04-15 2005-10-20 Wilson Christopher S Automatic discovery of a networked device
US20050231849A1 (en) * 2004-04-15 2005-10-20 Viresh Rustagi Graphical user interface for hard disk drive management in a data storage system
US7681007B2 (en) * 2004-04-15 2010-03-16 Broadcom Corporation Automatic expansion of hard disk drive capacity in a storage device
US20050262322A1 (en) * 2004-05-21 2005-11-24 Kenneth Ma System and method of replacing a data storage drive
GB0411053D0 (en) * 2004-05-18 2004-06-23 Ricardo Uk Ltd Data processing
US9021529B2 (en) 2004-07-15 2015-04-28 Microsoft Technology Licensing, Llc Content recordation techniques
US8151110B2 (en) * 2004-08-05 2012-04-03 Digital Keystone, Inc. Methods and apparatuses for configuring products
US7711954B2 (en) * 2004-08-05 2010-05-04 Digital Keystone, Inc. Methods and apparatuses for configuring products
US7549054B2 (en) * 2004-08-17 2009-06-16 International Business Machines Corporation System, method, service method, and program product for managing entitlement with identity and privacy applications for electronic commerce
JP2006074209A (ja) * 2004-08-31 2006-03-16 Toshiba Corp 放送受信装置と放送受信方法及び放送送受信システム
US8671457B2 (en) * 2004-10-15 2014-03-11 Maxxian Technology Inc. Method and system for identifying and correcting location discrepancies for reception equipment in a content delivery network
US7477653B2 (en) * 2004-12-10 2009-01-13 Microsoft Corporation Accelerated channel change in rate-limited environments
US7823214B2 (en) 2005-01-07 2010-10-26 Apple Inc. Accessory authentication for electronic devices
US20060230136A1 (en) * 2005-04-12 2006-10-12 Kenneth Ma Intelligent auto-archiving
PL1773055T3 (pl) * 2005-10-07 2015-04-30 Nagra France Sas Sposób weryfikacji uprawnień zawartych w module zabezpieczającym
KR100774172B1 (ko) * 2005-12-02 2007-11-08 엘지전자 주식회사 영상기기 및 그의 제어 방법
US8205243B2 (en) * 2005-12-16 2012-06-19 Wasilewski Anthony J Control of enhanced application features via a conditional access system
CN100525434C (zh) * 2005-12-31 2009-08-05 华为技术有限公司 一种在数字电视条件接收系统中对用户授权的方法
KR20080109521A (ko) * 2007-06-13 2008-12-17 엘지전자 주식회사 데이터 방송 신호를 처리하는 방법 및 수신하는 장치
US20090113491A1 (en) * 2007-10-31 2009-04-30 Kuether David J Method and system of retrieving lost content segments of prior broadcasted programming at a user device from a service provider
US9281891B2 (en) * 2007-11-27 2016-03-08 The Directv Group, Inc. Method and system of wirelessly retrieving lost content segments of broadcasted programming at a user device from another device
US8127235B2 (en) 2007-11-30 2012-02-28 International Business Machines Corporation Automatic increasing of capacity of a virtual space in a virtual world
US20090164919A1 (en) 2007-12-24 2009-06-25 Cary Lee Bates Generating data for managing encounters in a virtual world environment
WO2009104873A2 (en) * 2008-02-19 2009-08-27 Lg Electronics Inc. Method and device for managing authorization of right object in digital rights management
JP5159375B2 (ja) 2008-03-07 2013-03-06 インターナショナル・ビジネス・マシーンズ・コーポレーション メタバースにおけるオブジェクトの真贋判断システム、方法及びそのコンピュータ・プログラム
US20090254599A1 (en) * 2008-04-02 2009-10-08 Lee Sean S Method and system of sharing content from a memory of a first receiving unit with a second receiving unit through a network
US8289898B2 (en) * 2008-05-15 2012-10-16 At&T Intellectual Property I, L.P. System, method, and apparatus for an integrated antenna and satellite dish
US9740441B2 (en) * 2008-12-12 2017-08-22 At&T Intellectual Property, L.P. System and method for distributing software updates
US8487739B2 (en) * 2008-12-22 2013-07-16 Zenith Electronics Llc Television theft deterrence
US20100254357A1 (en) * 2009-04-03 2010-10-07 Charles Abraham Method and System for Remotely Communicating Information to a Plurality of Devices Within a Femtocell Network
US20100296498A1 (en) * 2009-05-22 2010-11-25 Jeyhan Karaoguz Integrated femtocell and wlan access point
US8929331B2 (en) * 2009-05-22 2015-01-06 Broadcom Corporation Traffic management in a hybrid femtocell/WLAN wireless enterprise network
US9060311B2 (en) * 2009-05-22 2015-06-16 Broadcom Corporation Enterprise level management in a multi-femtocell network
US9205328B2 (en) 2010-02-18 2015-12-08 Activision Publishing, Inc. Videogame system and method that enables characters to earn virtual fans by completing secondary objectives
US9682324B2 (en) 2010-05-12 2017-06-20 Activision Publishing, Inc. System and method for enabling players to participate in asynchronous, competitive challenges
US8782434B1 (en) 2010-07-15 2014-07-15 The Research Foundation For The State University Of New York System and method for validating program execution at run-time
CN101902333B (zh) * 2010-07-20 2015-08-19 中兴通讯股份有限公司 数字版权管理的应用方法及终端设备
US9449324B2 (en) 2010-11-11 2016-09-20 Sony Corporation Reducing TV licensing costs
US8447983B1 (en) 2011-02-01 2013-05-21 Target Brands, Inc. Token exchange
US9262631B2 (en) * 2011-11-15 2016-02-16 Mstar Semiconductor, Inc. Embedded device and control method thereof
CN104205863B (zh) * 2012-03-27 2017-10-27 三菱电机株式会社 数字广播接收装置和数字广播接收方法
EP2645711A1 (en) * 2012-03-28 2013-10-02 Nagravision S.A. Method to bind the use of a television receiver to a particular network
US10089335B2 (en) * 2012-07-10 2018-10-02 Microsoft Technology Licensing, Llc Data lineage across multiple marketplaces
US9122873B2 (en) 2012-09-14 2015-09-01 The Research Foundation For The State University Of New York Continuous run-time validation of program execution: a practical approach
US9069782B2 (en) 2012-10-01 2015-06-30 The Research Foundation For The State University Of New York System and method for security and privacy aware virtual machine checkpointing
US10001008B2 (en) * 2012-11-20 2018-06-19 Trinity Solutions System and method for providing broadband communications over power cabling
TWI456427B (zh) * 2012-12-12 2014-10-11 Inst Information Industry 進行授權管理之主要管理裝置、代理管理裝置、電子裝置及其授權管理方法
US10137376B2 (en) 2012-12-31 2018-11-27 Activision Publishing, Inc. System and method for creating and streaming augmented game sessions
US10286326B2 (en) 2014-07-03 2019-05-14 Activision Publishing, Inc. Soft reservation system and method for multiplayer video games
US11351466B2 (en) 2014-12-05 2022-06-07 Activision Publishing, Ing. System and method for customizing a replay of one or more game events in a video game
US10118099B2 (en) 2014-12-16 2018-11-06 Activision Publishing, Inc. System and method for transparently styling non-player characters in a multiplayer video game
US10486068B2 (en) 2015-05-14 2019-11-26 Activision Publishing, Inc. System and method for providing dynamically variable maps in a video game
US10286314B2 (en) 2015-05-14 2019-05-14 Activision Publishing, Inc. System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session
US10315113B2 (en) 2015-05-14 2019-06-11 Activision Publishing, Inc. System and method for simulating gameplay of nonplayer characters distributed across networked end user devices
US10213682B2 (en) 2015-06-15 2019-02-26 Activision Publishing, Inc. System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game
TWI559170B (zh) * 2015-07-23 2016-11-21 jian-zhi Lin The control method of the rewritable file protection device, and the method of reducing the file protection
US10471348B2 (en) 2015-07-24 2019-11-12 Activision Publishing, Inc. System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks
KR102071365B1 (ko) * 2015-08-04 2020-01-30 한국전자통신연구원 리던던트 시스템에서의 프로세스 인증 장치 및 방법
US11185784B2 (en) 2015-10-08 2021-11-30 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10099140B2 (en) 2015-10-08 2018-10-16 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10376781B2 (en) 2015-10-21 2019-08-13 Activision Publishing, Inc. System and method of generating and distributing video game streams
US10232272B2 (en) 2015-10-21 2019-03-19 Activision Publishing, Inc. System and method for replaying video game streams
US10245509B2 (en) 2015-10-21 2019-04-02 Activision Publishing, Inc. System and method of inferring user interest in different aspects of video game streams
US10694352B2 (en) 2015-10-28 2020-06-23 Activision Publishing, Inc. System and method of using physical objects to control software access
CN105491060B (zh) * 2015-12-30 2019-07-02 北京神州绿盟信息安全科技股份有限公司 防御分布式拒绝服务攻击的方法、装置、客户端及设备
US10226703B2 (en) 2016-04-01 2019-03-12 Activision Publishing, Inc. System and method of generating and providing interactive annotation items based on triggering events in a video game
US10226701B2 (en) 2016-04-29 2019-03-12 Activision Publishing, Inc. System and method for identifying spawn locations in a video game
MX2018014751A (es) * 2016-06-08 2019-04-29 Sony Corp Dispositivo de recepcion, dispositivo de transmision y metodo de procesamiento de datos.
US10179289B2 (en) 2016-06-21 2019-01-15 Activision Publishing, Inc. System and method for reading graphically-encoded identifiers from physical trading cards through image-based template matching
US10573065B2 (en) 2016-07-29 2020-02-25 Activision Publishing, Inc. Systems and methods for automating the personalization of blendshape rigs based on performance capture data
US10463964B2 (en) 2016-11-17 2019-11-05 Activision Publishing, Inc. Systems and methods for the real-time generation of in-game, locally accessible heatmaps
US10709981B2 (en) 2016-11-17 2020-07-14 Activision Publishing, Inc. Systems and methods for the real-time generation of in-game, locally accessible barrier-aware heatmaps
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
US10055880B2 (en) 2016-12-06 2018-08-21 Activision Publishing, Inc. Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional
US10482280B2 (en) 2017-01-30 2019-11-19 Symantec Corporation Structured text and pattern matching for data loss prevention in object-specific image domain
US10489685B1 (en) * 2017-02-22 2019-11-26 Symantec Corporation Image data identifiers and validators for data loss prevention
US10861079B2 (en) 2017-02-23 2020-12-08 Activision Publishing, Inc. Flexible online pre-ordering system for media
US10818060B2 (en) 2017-09-05 2020-10-27 Activision Publishing, Inc. Systems and methods for guiding motion capture actors using a motion reference system
US10561945B2 (en) 2017-09-27 2020-02-18 Activision Publishing, Inc. Methods and systems for incentivizing team cooperation in multiplayer gaming environments
US11040286B2 (en) 2017-09-27 2021-06-22 Activision Publishing, Inc. Methods and systems for improved content generation in multiplayer gaming environments
US10537809B2 (en) 2017-12-06 2020-01-21 Activision Publishing, Inc. System and method for validating video gaming data
US10981051B2 (en) 2017-12-19 2021-04-20 Activision Publishing, Inc. Synchronized, fully programmable game controllers
US11278813B2 (en) 2017-12-22 2022-03-22 Activision Publishing, Inc. Systems and methods for enabling audience participation in bonus game play sessions
US10864443B2 (en) 2017-12-22 2020-12-15 Activision Publishing, Inc. Video game content aggregation, normalization, and publication systems and methods
US10596471B2 (en) 2017-12-22 2020-03-24 Activision Publishing, Inc. Systems and methods for enabling audience participation in multi-player video game play sessions
US11192028B2 (en) 2018-11-19 2021-12-07 Activision Publishing, Inc. Systems and methods for the real-time customization of video game content based on player data
US11263670B2 (en) 2018-11-19 2022-03-01 Activision Publishing, Inc. Systems and methods for dynamically modifying video game content based on non-video gaming content being concurrently experienced by a user
US11115712B2 (en) 2018-12-15 2021-09-07 Activision Publishing, Inc. Systems and methods for indexing, searching for, and retrieving digital media
US11679330B2 (en) 2018-12-18 2023-06-20 Activision Publishing, Inc. Systems and methods for generating improved non-player characters
US11305191B2 (en) 2018-12-20 2022-04-19 Activision Publishing, Inc. Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
US11344808B2 (en) 2019-06-28 2022-05-31 Activision Publishing, Inc. Systems and methods for dynamically generating and modulating music based on gaming events, player profiles and/or player reactions
US11097193B2 (en) 2019-09-11 2021-08-24 Activision Publishing, Inc. Methods and systems for increasing player engagement in multiplayer gaming environments
US11423605B2 (en) 2019-11-01 2022-08-23 Activision Publishing, Inc. Systems and methods for remastering a game space while maintaining the underlying game simulation
US11712627B2 (en) 2019-11-08 2023-08-01 Activision Publishing, Inc. System and method for providing conditional access to virtual gaming items
US11537209B2 (en) 2019-12-17 2022-12-27 Activision Publishing, Inc. Systems and methods for guiding actors using a motion capture reference system
US11420122B2 (en) 2019-12-23 2022-08-23 Activision Publishing, Inc. Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
US11563774B2 (en) 2019-12-27 2023-01-24 Activision Publishing, Inc. Systems and methods for tracking and identifying phishing website authors
US20230179828A1 (en) * 2020-04-28 2023-06-08 Lg Electronics Inc. Signal processing device and video display device comprising same
US11524234B2 (en) 2020-08-18 2022-12-13 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically modified fields of view
US11833423B2 (en) 2020-09-29 2023-12-05 Activision Publishing, Inc. Methods and systems for generating level of detail visual assets in a video game
US11724188B2 (en) 2020-09-29 2023-08-15 Activision Publishing, Inc. Methods and systems for selecting a level of detail visual asset during the execution of a video game
US11717753B2 (en) 2020-09-29 2023-08-08 Activision Publishing, Inc. Methods and systems for generating modified level of detail visual assets in a video game
US11439904B2 (en) 2020-11-11 2022-09-13 Activision Publishing, Inc. Systems and methods for imparting dynamic and realistic movement to player-controlled avatars in video games
US11853439B2 (en) 2020-12-30 2023-12-26 Activision Publishing, Inc. Distributed data storage system providing enhanced security
US11794107B2 (en) 2020-12-30 2023-10-24 Activision Publishing, Inc. Systems and methods for improved collision detection in video games

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4230990C1 (en) * 1979-03-16 2002-04-09 John G Lert Jr Broadcast program identification method and system
US4685131A (en) * 1985-03-11 1987-08-04 General Instrument Corp. Program blocking method for use in direct broadcast satellite system
EP0266748B1 (en) * 1986-11-05 1995-02-08 International Business Machines Corporation A software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US5005200A (en) * 1988-02-12 1991-04-02 Fischer Addison M Public key/signature cryptosystem with enhanced digital signature certification
US5157716A (en) * 1988-04-27 1992-10-20 Scientific-Atlanta, Inc. Dynamic callback technique
US5166886A (en) * 1989-07-31 1992-11-24 Molnar Charles E System to demonstrate and sell computer programs
US5565909A (en) * 1992-08-31 1996-10-15 Television Computer, Inc. Method of identifying set-top receivers
FR2698510B1 (fr) * 1992-11-26 1994-12-23 Schlumberger Ind Sa Réseau de communication.
US5341429A (en) * 1992-12-04 1994-08-23 Testdrive Corporation Transformation of ephemeral material
US5581270A (en) * 1993-06-24 1996-12-03 Nintendo Of America, Inc. Hotel-based video game and communication system
US5666293A (en) * 1994-05-27 1997-09-09 Bell Atlantic Network Services, Inc. Downloading operating system software through a broadcast channel
US5614940A (en) * 1994-10-21 1997-03-25 Intel Corporation Method and apparatus for providing broadcast information with indexing
US5654746A (en) * 1994-12-01 1997-08-05 Scientific-Atlanta, Inc. Secure authorization and control method and apparatus for a game delivery service
US5646997A (en) * 1994-12-14 1997-07-08 Barton; James M. Method and apparatus for embedding authentication information within digital data
CN1183841A (zh) * 1995-02-13 1998-06-03 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US5619247A (en) * 1995-02-24 1997-04-08 Smart Vcr Limited Partnership Stored program pay-per-play
US6105134A (en) * 1995-04-03 2000-08-15 Scientific-Atlanta, Inc. Verification of the source of program information in a conditional access system
US6157719A (en) * 1995-04-03 2000-12-05 Scientific-Atlanta, Inc. Conditional access system
US6108365A (en) 1995-05-05 2000-08-22 Philip A. Rubin And Associates, Inc. GPS data access system
US5619571A (en) * 1995-06-01 1997-04-08 Sandstrom; Brent B. Method for securely storing electronic records
US5625693A (en) 1995-07-07 1997-04-29 Thomson Consumer Electronics, Inc. Apparatus and method for authenticating transmitting applications in an interactive TV system
JP3506814B2 (ja) * 1995-07-11 2004-03-15 東芝機械株式会社 数値制御装置
US5754646A (en) 1995-07-19 1998-05-19 Cable Television Laboratories, Inc. Method for protecting publicly distributed software
US5857020A (en) * 1995-12-04 1999-01-05 Northern Telecom Ltd. Timed availability of secured content provisioned on a storage medium
EP0880840A4 (en) * 1996-01-11 2002-10-23 Mrj Inc DEVICE FOR CONTROLLING ACCESS AND DISTRIBUTION OF DIGITAL PROPERTY
US5951639A (en) * 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements
JP3633092B2 (ja) * 1996-03-18 2005-03-30 日産自動車株式会社 マイコン故障監視装置
US5848397A (en) * 1996-04-19 1998-12-08 Juno Online Services, L.P. Method and apparatus for scheduling the presentation of messages to computer users
US5838790A (en) * 1996-04-19 1998-11-17 Juno Online Services, L.P. Advertisement authentication system in which advertisements are downloaded for off-line display
US5862220A (en) * 1996-06-03 1999-01-19 Webtv Networks, Inc. Method and apparatus for using network address information to improve the performance of network transactions
US5844986A (en) * 1996-09-30 1998-12-01 Intel Corporation Secure BIOS
US5892904A (en) * 1996-12-06 1999-04-06 Microsoft Corporation Code certification for network transmission
KR20000064791A (ko) 1997-01-27 2000-11-06 엠. 제이. 엠. 반 캄 콘텐트 정보 및 그것과 관련된 추가정보를전송하는 방법 및 시스템
US5805663A (en) 1997-05-08 1998-09-08 Futec, Inc. Radiation imaging method and system
EP1653463A1 (en) * 1997-05-13 2006-05-03 Kabushiki Kaisha Toshiba License information copying method and apparatus, license information moving method
US6028600A (en) * 1997-06-02 2000-02-22 Sony Corporation Rotary menu wheel interface
US5968136A (en) 1997-06-05 1999-10-19 Sun Microsystems, Inc. Apparatus and method for secure device addressing
EP0988754B1 (en) 1997-06-06 2004-12-22 Thomson Multimedia Inc. Global conditional access system for broadcast services
DE69802540T2 (de) 1997-08-01 2002-05-23 Scientific Atlanta System mit bedingtem zugang
US6185678B1 (en) * 1997-10-02 2001-02-06 Trustees Of The University Of Pennsylvania Secure and reliable bootstrap architecture
EP0909094A1 (en) 1997-10-07 1999-04-14 CANAL+ Société Anonyme Multithread data processor
US6351467B1 (en) * 1997-10-27 2002-02-26 Hughes Electronics Corporation System and method for multicasting multimedia content
EP0914001A1 (en) 1997-10-28 1999-05-06 CANAL+ Société Anonyme Downloading of applications in a digital decoder
US6125447A (en) 1997-12-11 2000-09-26 Sun Microsystems, Inc. Protection domains to provide security in a computer system
US6069647A (en) * 1998-01-29 2000-05-30 Intel Corporation Conditional access and content security method
EP0936813A1 (en) 1998-02-16 1999-08-18 CANAL+ Société Anonyme Processing of digital picture data in a decoder
EP0946019A1 (en) 1998-03-25 1999-09-29 CANAL+ Société Anonyme Authentification of data in a digital transmission system
US6745245B1 (en) * 1998-04-09 2004-06-01 Webtv Networks, Inc. Managing access to set-top box objects using television conditional access system
US6219788B1 (en) * 1998-05-14 2001-04-17 International Business Machines Corporation Watchdog for trusted electronic content distributions
US6256393B1 (en) * 1998-06-23 2001-07-03 General Instrument Corporation Authorization and access control of software object residing in set-top terminals
US6865675B1 (en) * 1998-07-14 2005-03-08 Koninklijke Philips Electronics N.V. Method and apparatus for use of a watermark and a unique time dependent reference for the purpose of copy protection
US6377690B1 (en) * 1998-09-14 2002-04-23 Lucent Technologies Inc. Safe transmission of broadband data messages
US6550008B1 (en) * 1999-02-26 2003-04-15 Intel Corporation Protection of information transmitted over communications channels
CN1214620C (zh) * 1999-09-03 2005-08-10 通用器材公司 目标和资源的权利
WO2001028232A1 (en) * 1999-10-08 2001-04-19 General Instrument Corporation Object and resource security system

Also Published As

Publication number Publication date
CA2377679A1 (en) 2001-12-06
WO2001093581A2 (en) 2001-12-06
CN1381129A (zh) 2002-11-20
JP2003535520A (ja) 2003-11-25
JP2003535517A (ja) 2003-11-25
US20020092015A1 (en) 2002-07-11
CN1192623C (zh) 2005-03-09
WO2001093580A3 (en) 2002-06-27
KR20020019577A (ko) 2002-03-12
CN1381138A (zh) 2002-11-20
EP1285532A2 (en) 2003-02-26
US8904424B2 (en) 2014-12-02
CA2377678A1 (en) 2001-12-06
AU2001261146A1 (en) 2001-12-11
US20020003884A1 (en) 2002-01-10
US8356314B2 (en) 2013-01-15
US20060053439A1 (en) 2006-03-09
CA2379128A1 (en) 2001-12-06
WO2001093580B1 (en) 2002-07-25
WO2001093586A3 (en) 2002-04-18
EP1290887A2 (en) 2003-03-12
CN1179549C (zh) 2004-12-08
WO2001093577A3 (en) 2002-04-11
US20130104199A1 (en) 2013-04-25
CA2377729A1 (en) 2001-12-06
KR20020019575A (ko) 2002-03-12
WO2001093586A2 (en) 2001-12-06
AU2001261152A1 (en) 2001-12-11
CN100361526C (zh) 2008-01-09
JP2003535519A (ja) 2003-11-25
EP1297704A2 (en) 2003-04-02
US20020032903A1 (en) 2002-03-14
CN1381136A (zh) 2002-11-20
WO2001093581A3 (en) 2002-05-23
KR20020019562A (ko) 2002-03-12
US20020002706A1 (en) 2002-01-03
CN1381130A (zh) 2002-11-20
AU2001261179A1 (en) 2001-12-11
CN1202652C (zh) 2005-05-18
AU2001261177A1 (en) 2001-12-11
WO2001093580A2 (en) 2001-12-06
EP1285534A2 (en) 2003-02-26
WO2001093580A9 (en) 2002-02-28
WO2001093577A2 (en) 2001-12-06
JP2003535518A (ja) 2003-11-25
WO2001093577B1 (en) 2002-07-11

Similar Documents

Publication Publication Date Title
KR20020019576A (ko) 암호문 토큰을 이용하는 허가
EP1228634B1 (en) Intrusion detection for object security
US20060020790A1 (en) Authorization using ciphertext tokens in a content receiver
KR20020038807A (ko) 객체 및 자원 보안 시스템
KR100679498B1 (ko) 오브젝트와 자원에 대한 액세스 자격 부여 방법

Legal Events

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