KR102066299B1 - 정보 처리 장치, 서버 장치, 정보 처리 방법, 서버 처리 방법 및 프로그램 - Google Patents

정보 처리 장치, 서버 장치, 정보 처리 방법, 서버 처리 방법 및 프로그램 Download PDF

Info

Publication number
KR102066299B1
KR102066299B1 KR1020147015869A KR20147015869A KR102066299B1 KR 102066299 B1 KR102066299 B1 KR 102066299B1 KR 1020147015869 A KR1020147015869 A KR 1020147015869A KR 20147015869 A KR20147015869 A KR 20147015869A KR 102066299 B1 KR102066299 B1 KR 102066299B1
Authority
KR
South Korea
Prior art keywords
application
mode
information
broadcast
electronic signature
Prior art date
Application number
KR1020147015869A
Other languages
English (en)
Other versions
KR20140103115A (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 KR20140103115A publication Critical patent/KR20140103115A/ko
Application granted granted Critical
Publication of KR102066299B1 publication Critical patent/KR102066299B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/8352Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/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
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4722End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting additional data associated with the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Storage Device Security (AREA)

Abstract

방송 콘텐츠와 함께 처리되는 애플리케이션의 신뢰성의 향상을 도모하는 것을 과제로 한다. 정보 처리 장치의 애플리케이션 컨트롤러는, 전자 서명이 첨부되고, 방송 콘텐츠와 함께 처리되는 애플리케이션을 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보 테이블을 취득하고, 전자 서명을 검증한다. 애플리케이션 컨트롤러는, 그 검증에 성공한 경우에, 로케이션 정보를 기초로 애플리케이션을 취득하는 것을 가능하게 한다.

Description

정보 처리 장치, 서버 장치, 정보 처리 방법, 서버 처리 방법 및 프로그램{INFORMATION PROCESSING DEVICE, SERVER DEVICE, INFORMATION PROCESSING METHOD, SERVER PROCESSING METHOD, AND PROGRAM}
본 발명은, 애플리케이션 관리 테이블을 이용하여 방송 콘텐츠에 관련된 애플리케이션을 실행하는 것이 가능한 정보 처리 장치, 애플리케이션 관리 테이블을 공급하는 서비스를 행하는 서버 장치, 이들 장치에 관련된 정보 처리 방법, 서버 처리 방법 및 프로그램에 관한 것이다.
최근 들어, 방송 콘텐츠의 재생과 동시에, 인터넷 등의 네트워크를 통하여 배신되는 애플리케이션의 실행을 가능하게 하는 기술이 알려져 있다. 이러한 기술로서, 하이브리드 브로드밴드 방송(Hybrid Broadcast Broadband TV, 이하 「HbbTV」라고 칭함)이라 불리는 기술이 알려져 있다. HbbTV의 표준 규격으로서, 유럽에서는 「ETSI TS 102 796」(비특허문헌 1 참조)이 책정되어 있다. 또한, 일본에서도 이에 준거한 표준 규격 「ARIB STD-B23」(비특허문헌 2 참조)이 책정되어 있다.
ETSI(European Telecommunications Standards Institute) 「ETSI TS 102 796 V1.1.1(2010-06)」http://www.etsi.org/deliver/etsi_ts/102700_102799/102796/01.01.01_60/ts_102796v010101p.pdf(2011년 10월 21일 열람) 사단법인 전파 산업회 「디지털 방송에 있어서의 애플리케이션 실행 환경 표준규격 ARIB STD-B23 1.2판」http://www.arib.or.jp/english/html/overview/doc/2-STD-B23v1_2.pdf(2011년 10월 21일 열람)
예를 들어 HbbTV 등과 같이 방송 콘텐츠의 재생과 동시에 애플리케이션이 실행되는 시스템에서는, 애플리케이션의 기동에서 종료까지의 라이프 사이클이, 방송 콘텐츠에 중첩된 AIT(Application Information Table) 섹션이라 불리는 데이터 구조에 의해 관리된다. AIT 섹션을 취득한 정보 단말기는, AIT 섹션에 포함되는 애플리케이션 제어용 코드를 기초로 애플리케이션의 제어를 행한다.
또한, 방송 AIT 섹션과 동등한 정보를 갖고, 인터넷 등 통신망을 이용하여 수신기에 애플리케이션에 관한 정보를 제공하기 위해 최적의 포맷으로서, XML 형식으로 기술된 AIT 섹션인 XML-AIT가 있다.
그러나, XML-AIT는, 인터넷을 통하여 제공되는 파일이기 때문에, 악의가 있는 제3자에 의한 개찬(改竄; falsification) 등의 위험에 노출된 것이라 할 수 있다. XML-AIT가 개찬되면, 의도하지 않은 애플리케이션 서버의 애플리케이션을 다운로드하도록 유도되거나, 정규와는 다른 애플리케이션의 제어가 실행되거나 하는 등의 가능성이 발생한다.
또한, 애플리케이션에는, 방송으로부터 프로그램이나 데이터를 수신하여 제시하는 등, 다양한 기능을 이용할 수 있는 것이 많다. 그러나, 이와 같은 애플리케이션에 이용 가능한 기능 중의 일부를 이용 불가로 하기 위해서는, 애플리케이션 그 자체에 변경을 가하는 등, 시간과 수고를 요한다.
이상과 같은 사정을 감안하여, 본 발명의 목적은, 애플리케이션의 신뢰성의 향상을 도모할 수 있는 정보 처리 장치, 서버 장치, 정보 처리 방법, 서버 처리 방법 및 프로그램을 제공하는 데 있다.
상기한 과제를 해결하기 위해, 본 발명에 따른 정보 처리 장치는, 방송 콘텐츠를 수신하고 처리하는 방송 콘텐츠 처리부와, 전자 서명이 첨부되고, 상기 방송 콘텐츠와 함께 처리되는 애플리케이션을 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보 테이블을 취득하고, 상기 전자 서명을 검증하고, 적어도 상기 검증에 성공한 경우에, 상기 로케이션 정보를 기초로 상기 애플리케이션을 취득하는 것을 가능하게 하는 컨트롤러를 구비한다.
상기 애플리케이션 정보 테이블에는, 상기 애플리케이션으로부터 소정의 연산에 의해 구해진, 상기 애플리케이션을 대표하는 제1 대푯값이 저장되고,
상기 컨트롤러는, 상기 취득된 애플리케이션에 대하여 상기 소정의 연산에 의해 상기 애플리케이션을 대표하는 제2 대푯값을 산출하고, 상기 제1 대푯값과 상기 제2 대푯값을 비교하여 상기 애플리케이션의 검증을 행하는 것이어도 된다.
상기 애플리케이션 정보 테이블에는, 모드 정보가 저장되고, 상기 컨트롤러는, 상기 애플리케이션 정보 테이블에 기술된 상기 모드 정보를 기초로, 상기 애플리케이션에 이용 가능한 기능을 제어하는 것이어도 된다.
상기 컨트롤러는, 상기 애플리케이션 정보 테이블에 기술된 상기 모드 정보를 기초로, 상기 전자 서명의 검증의 필요 여부를 판정하는 것이어도 된다.
본 발명에 따른 서버 장치는, 전자 서명이 첨부되고, 방송 콘텐츠와 함께 처리되는 애플리케이션을 정보 처리 장치에 취득시키기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보 테이블을 생성하고, 상기 정보 처리 장치로부터의 상기 애플리케이션 정보 테이블의 취득 요구에 따라서 응답하는 생성부를 갖는다.
상기 생성부는, 상기 애플리케이션으로부터 소정의 연산에 의해 구해진, 상기 애플리케이션을 대표하는 제1 대푯값을 상기 애플리케이션 정보 테이블에 부가하는 것이어도 된다.
상기 생성부는, 상기 애플리케이션에 이용 가능한 기능을 제어하는 모드 정보를 상기 애플리케이션 정보 테이블에 부가하는 것이어도 된다.
본 발명에 따른 정보 처리 방법은, 컨트롤러가, 전자 서명이 첨부되고, 방송 콘텐츠와 함께 처리되는 애플리케이션을 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보 테이블을 취득하고, 상기 전자 서명을 검증하고, 적어도 상기 검증에 성공한 경우에, 상기 로케이션 정보를 기초로 상기 애플리케이션을 취득하는 것을 가능하게 한다.
본 발명에 따른 서버 처리 방법은, 생성부가, 전자 서명이 첨부되고, 방송 콘텐츠와 함께 처리되는 애플리케이션을 정보 처리 장치에 취득시키기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보 테이블을 생성하고, 상기 정보 처리 장치로부터의 상기 애플리케이션 정보 테이블의 취득 요구에 따라서 응답한다.
본 발명에 따른 프로그램은, 방송 콘텐츠를 수신하고 처리하는 방송 콘텐츠 처리부와, 전자 서명이 첨부되고, 상기 방송 콘텐츠와 함께 처리되는 애플리케이션을 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보 테이블을 취득하고, 상기 전자 서명을 검증하고, 적어도 상기 검증에 성공한 경우에, 상기 로케이션 정보를 기초로 상기 애플리케이션을 취득하는 것을 가능하게 하는 컨트롤러로서 컴퓨터를 기능시킨다.
이상과 같이, 본 발명에 의하면, 애플리케이션의 신뢰성의 향상을 도모할 수 있다.
도 1은, 본 실시 형태의 정보 처리 시스템의 개요를 나타내는 도면이다.
도 2는, AIT 섹션의 데이터 구조를 나타내는 도면이다.
도 3은, XML-AIT의 데이터 구조를 나타내는 도면이다.
도 4는, 애플리케이션 모드 기술자(記述子) 및 애플리케이션 해시(hash) 기술자(記述子)의 데이터 구조를 나타내는 도면이다.
도 5는, AIT 섹션 및 XML-AIT로 지정되는 애플리케이션 제어 코드의 정의를 나타내는 도면이다.
도 6은, 본 실시 형태의 정보 처리 장치의 구성을 나타내는 블록도이다.
도 7은, AIT 섹션을 이용한 애플리케이션의 제어의 동작예를 나타내는 도면이다.
도 8은, 도 7의 동작예의 흐름도이다.
도 9는, XML-AIT를 이용한 애플리케이션의 기동의 동작예를 나타내는 도면이다.
도 10은, 도 9의 동작예의 흐름도이다.
도 11은, 방송 BML 데이터로부터 애플리케이션을 기동하는 경우의 동작예를 나타내는 도면이다.
도 12는, 도 11의 동작예의 흐름도이다.
도 13은, 방송 연동형 애플리케이션을 기동한 후, XML-AIT에 의해 방송 비연동형 애플리케이션을 기동하는 경우의 동작예를 나타내는 도면이다.
도 14는, 도 13의 동작예의 흐름도이다.
도 15는, 도 13의 동작예의 흐름도이다.
도 16은, 애플리케이션 론처(launcher)로부터 방송 비연동형 애플리케이션을 기동하는 경우의 동작예를 나타내는 도면이다.
도 17은, 도 16의 동작예의 흐름도이다.
도 18은, 전자 서명 및 해시값의 생성과 검증 방법을 설명하는 도면이다.
도 19는, 전자 서명 및 해시값의 생성과 검증 방법의 변형예를 설명하는 도면이다.
이하, 본 발명의 실시 형태를 도면을 기초로 설명한다.
<제1 실시 형태>
[정보 처리 시스템]
도 1은, 본 실시 형태의 정보 처리 시스템의 개요를 나타내는 도면이다.
본 실시 형태의 정보 처리 시스템(1)은, 방송 설비(100)와, 인터넷 등의 제1 네트워크(200)와, 애플리케이션 서버(300)와, XML-AIT 서버(400)와, 에지 라우터(500)와, LAN(Local Area Network) 등의 제2 네트워크(600)와, 정보 처리 장치(700)를 갖는다.
방송 설비(100)는, 예를 들어 지상파, 위성파, IP(Internet Protocol) 네트워크 등의 통신 매체를 통해 디지털 방송 신호를 송신한다. 방송 설비(100)는, 영상, 음성, 자막 등의 각 스트림이 다중화된 AV 스트림과, AV 스트림에 부수되는 데이터 등이 중첩된 소위 방송 스트림을 송출한다. AV 스트림에 부수되는 데이터로서는, HTML, BML 등의 마크업 언어, Java(등록상표) 스크립트 등의 스크립트 언어로 기술된 애플리케이션, 애플리케이션을 관리하기 위한 정보를 포함하는 AIT(Application Information Table) 섹션 등이 포함된다. 여기서 방송 설비(100)로부터 방송되는 애플리케이션을 「방송 애플리케이션」이라고 부른다.
애플리케이션 서버(300)는, 제1 네트워크(200)에 접속 가능하게 되고, 제1 네트워크(200)를 통하여 정보 처리 장치(700)로, 방송 스트림과 함께 처리되는 애플리케이션을 제공한다. 여기서, 방송 스트림과 함께 처리되는 애플리케이션에는, 방송 콘텐츠에 관련된 방송 제휴형 애플리케이션과, 방송 콘텐츠에 관련되지 않은 방송 비제휴형 애플리케이션이 있다. 방송 제휴형 애플리케이션은, 방송으로부터 프로그램이나 데이터 등의 다양한 리소스를 취득하여 제시할 수 있는 애플리케이션이다. 한편, 방송 비제휴형 애플리케이션은 방송 콘텐츠와 관련되지 않기 때문에, 방송 리소스에 액세스하는 일이 없는 애플리케이션이다.
XML-AIT 서버(400)는, 제1 네트워크(200)에 접속 가능하게 되고, 제1 네트워크(200)를 통하여 정보 처리 장치(700)에, 애플리케이션 서버(300)로부터 제공되는 애플리케이션을 관리하기 위한 XML(Extensible Markup Language)-AIT를 배신한다.
또한, 애플리케이션 서버(300)와 XML-AIT 서버(400)는 1개의 서버이어도 된다.
에지 라우터(500)는, 제1 네트워크(200)와 제2 네트워크(600)를 접속하기 위한 라우터이다. 제2 네트워크(600)는 유선, 무선에 구애받지 않는다.
정보 처리 장치(700)는, 예를 들어 퍼스널 컴퓨터, 휴대 전화, 스마트폰, 텔레비전 장치, 게임기, 태블릿 단말기, 오디오·비디오 재생 기기 등이지만, 구체적으로 제품 형태에 구애받지 않는다.
정보 처리 장치(700)는, 방송 설비(100)로부터 디지털 방송 신호를 수신하고, 복조하여 트랜스포트 스트림을 얻는다. 정보 처리 장치(700)는, 이 트랜스포트 스트림으로부터 방송 스트림을 분리하고, 디코드하여 정보 처리 장치(700)에 접속되는 표시부(도시생략) 및 스피커부(도시생략)나, 기록 장치(도시생략)로 출력하는 것이 가능하다.
또한, 표시부, 스피커부 및 기록 장치는 각각, 정보 처리 장치(700)와 일체이어도 되고, 서로 독립된 기기로서 직접 또는 제2 네트워크(600)를 통해 정보 처리 장치(700)에 접속되어 있어도 된다. 또는, 표시부 및 스피커부를 갖는 기기(도시생략)가 직접 또는 제2 네트워크(600)를 통해 정보 처리 장치(700)에 접속되어 있어도 된다.
또한, 정보 처리 장치(700)는, 취득한 트랜스포트 스트림으로부터 애플리케이션이나, AIT 섹션을 포함하는 PSI/SI를 추출하고, 그 AIT 섹션을 해석하여 애플리케이션의 제어를 행하는 것이 가능하다. 정보 처리 장치(700)는, 애플리케이션이 가시적인 애플리케이션인 경우에는, 이 애플리케이션의 실행에 의해 생성된 영상 신호를, 상기 방송 콘텐츠의 영상 신호 및 자막 신호와 합성하여 표시부로 출력하는 것이 가능하다.
또한, 정보 처리 장치(700)는, 제1 네트워크(200), 에지 라우터(500) 및 제2 네트워크(600)를 통하여, 애플리케이션 서버(300)로부터 애플리케이션을 취득할 수 있다. 마찬가지로 정보 처리 장치(700)는, XML-AIT 서버(400)로부터 XML-AIT의 파일을 취득할 수 있다. 정보 처리 장치(700)는 취득한 XML-AIT를 해석하고, 애플리케이션 서버(300)로부터 취득한 애플리케이션이나 방송을 통하여 취득한 애플리케이션을 제어하는 것이 가능하다.
[애플리케이션]
여기서, 애플리케이션에 대하여 설명한다. 애플리케이션은, 방송 설비(100) 및 애플리케이션 서버(300)로부터 정보 처리 장치(700)에 제공된다. 애플리케이션은, 예를 들어 HTML(Hyper Text Markup Language) 문서, BML 문서(Broadcast Markup Language), MHEG 문서(Multimedia and Hypermedia information coding), Java(등록상표) 스크립트, 정지 화상 파일, 동화상 파일 등으로 구성된다.
애플리케이션은 가시적인 것이어도 비가시적인 것이어도 된다. 가시적인 애플리케이션이란, 화면을 통하여 그 상태를 유저가 볼 수 있는 애플리케이션이다. 비가시적인 애플리케이션은, 화면을 통하여 그 상태를 유저가 볼 수 없는 애플리케이션이다. 예를 들어, 브라우저가 유저에게 비가시적인 투명한 상태에서 기동 중일 때 이용되는 애플리케이션이나, 시청률 조사 등을 목적으로 하여 정보 처리 장치에서 시청된 방송 콘텐츠를 특정하기 위한 정보나 시청 시간을 기록하여 특정한 서버에 배신하거나 하는 애플리케이션 등이 고려된다.
또한, 애플리케이션은, 정보 처리 장치(700)의 유저 조작에 따라서 제시하는 정보나 기능을 바꿀 수 있는 쌍방향형 애플리케이션이어도 되고, 유저에 대하여 일방향으로 정보를 제시하는 애플리케이션이어도 된다.
또한, 애플리케이션에는, 방송 콘텐츠에 연동한 방송 연동형 애플리케이션과, 방송 콘텐츠에 연동하지 않는 방송 비연동형 애플리케이션이 있다.
[AIT 섹션 및 XML-AIT의 데이터 구조]
여기서, 방송 설비(100)로부터 AIT 섹션으로서 전송되는 AIT의 데이터 구조와, 애플리케이션 서버(300)로부터 제공되는 XML-AIT의 데이터 구조에 대하여 설명한다. 또한, 본 명세서에서 단순히 「AIT」라고 기술할 때에는, 방송 설비(100)로부터 AIT 섹션으로서 전송되는 AIT를 의미한다.
도 2는, 본 실시 형태의 AIT의 데이터 구조를 나타내는 도면이다.
AIT는, 애플리케이션에 관한 다양한 정보나, 애플리케이션을 제어하기 위한 애플리케이션 제어 코드 등이 저장되는 테이블이다. 구체적으로는, AIT에는, 테이블 ID, 섹션 신택스 지시, 섹션 길이, 애플리케이션 형식, 버전 번호, 커런트 넥스트 지시, 섹션 번호, 최종 섹션 번호, 공통 기술자(記述子) 루프 길이, 애플리케이션 정보 루프 길이, 애플리케이션 식별자, 애플리케이션 제어 코드(11), 애플리케이션 기술자 루프 길이, 애플리케이션 기술자 등이 저장된다.
도 3은, 본 실시 형태의 XML-AIT의 데이터 구조를 나타내는 도면이다.
XML-AIT에는, 애플리케이션마다의, 애플리케이션명, 애플리케이션 식별자, 애플리케이션 기술자, 애플리케이션 타입, 애플리케이션 제어 코드(21), 애플리케이션의 가시성, 현재의 서비스 내에서만 유효한지를 나타내는 플래그, 애플리케이션의 우선도, 애플리케이션의 버전, 플랫폼 프로파일에 맞춘 버전, 아이콘, 스토리지 기능의 성능, 트랜스포트 프로토콜 기술자, 애플리케이션 로케이션 기술자, 애플리케이션 바운더리 기술자, 애플리케이션 스페시픽 기술자, 애플리케이션 사용 기술자, 애플리케이션 모드 기술자(22), 애플리케이션 해시 기술자(23) 등이 저장된다.
이 XML-AIT에는, 개찬을 검출하기 위한 전자 서명이 첨부된다. 전자 서명으로서는, 예를 들어 XML 서명 등이 이용된다. XML 서명의 형식은, XML-AIT에 대하여 독립된 detached 서명, XML-AIT를 포함한 형식을 갖는 enveloping 서명, XML-AIT에 포함된 형식의 enveloped 서명 중 어느 것이든지 구애받지 않는다. 또한, XML-AIT의 포맷에의 영향을 억제하기 위해서는 detached 서명을 채용하는 것이 좋다.
정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 레퍼런스 검증(Reference Validation)과 서명 검증(Signature Validation)을 포함하는 코어 검증(Core Validation)의 수속에 따라서, XML 서명을 검증한다.
레퍼런스 검증이란, 리소스(XML-AIT)에 정규화 변환 프로세스(Transform) 및 다이제스트 계산 알고리즘(DigestMethod)을 적용함으로써, 레퍼런스(Reference)의 다이제스트값(DigestValue)을 검증하는 방식이다. 레퍼런스 검증에 의해 얻어진 결과와, 등록된 다이제스트값(DigestValue)이 비교되고, 이들이 일치하지 않는 경우, 검증 실패로 된다.
서명 검증이란, 서명 정보(SignatureInfo) 요소를 XML 정규화 알고리즘(CanonicalizationMethod)으로 지정된 정규화 방식에 의해 시리얼화하고, 키 정보(KeyInfo) 등을 이용하여 키 데이터를 취득하고, 서명 알고리즘(Signature Method)으로 지정된 방식을 이용하여 서명을 검증하는 방식이다.
상기한 XML-AIT의 데이터 구조에 있어서, 애플리케이션 모드 기술자(22) 및 애플리케이션 해시 기술자(23)는 본 발명에 따른 실시 형태의 시스템으로부터 신규로 도입된 정보이다.
도 4는, 애플리케이션 모드 기술자(22) 및 애플리케이션 해시 기술자(23)의 데이터 구조를 나타내는 도면이다.
애플리케이션 모드 기술자(22)는, 애플리케이션 모드 기술자(22)를 식별하는 기술자 태그, 기술자 길이, 애플리케이션의 모드를 나타내는 애플리케이션 모드 등으로 구성된다.
애플리케이션 모드는, 애플리케이션에 이용 가능한 기능(API: Application Program Interface)을 제어하기 위한 정보이다. 애플리케이션에 의해 이용이 제한되는 기능으로서는, 예를 들어 방송의 프로그램이나 데이터 등의 다양한 방송 리소스에 액세스하여 제시하는 방송 리소스 제시 기능 등을 들 수 있다. 보다 상세하게는, 방송 연동형 애플리케이션에는, 그 방송 리소스 제시 기능을 이용할 수 있도록 애플리케이션 모드의 값이 설정되고, 방송에 무관계한(연동하지 않는) 방송 비연동형 애플리케이션에는, 그 방송 리소스 제시 기능을 이용할 수 없도록 애플리케이션 모드의 값이 설정된다. 또한, 애플리케이션 모드에 따라, 이용 가능과 이용 불가능 사이에 전환되는 기능은 방송 리소스 제시 기능에 한정되지 않는다.
여기서, 방송 연동형 애플리케이션에 대하여 설정되는 애플리케이션 모드를"mode1", 방송 비연동형 애플리케이션에 대하여 설정되는 애플리케이션 모드를 "mode2"로 한 경우를 상정한다.
이 상정에 있어서는, 애플리케이션 모드는, 정보 처리 장치에 있어서 전자 서명의 검증의 필요 여부를 알기 위한 정보로서 이용할 수 있다. 즉, 정보 처리 장치는 애플리케이션 모드가 "mode1"일 때 전자 서명의 검증이 불필요하다고 판정하고, "mode2"일 때 전자 서명의 검증이 필요함을 판정한다. 단, 이것은 하나의 운용 형태에 지나지 않으며, 방송 연동형 애플리케이션에 대해서도 전자 서명의 검증을 필요로 하는 것으로 하여도 된다.
애플리케이션 해시 기술자(23)는, 기술자 태그, 기술자 길이, 해시값의 계산 방법을 나타내는 해시 알고리즘, 해시값 길이, 해시값 등으로 구성된다. 해시값은, 애플리케이션의 해시값이며, 소정의 해시 함수 등에 의해 애플리케이션의 실체로부터 생성된 값이며, 그 애플리케이션을 대표하는 값이라 할 수 있다. 이 해시값의 이용 방법에 대해서는 후술한다.
[애플리케이션 제어 코드의 정의]
애플리케이션의 라이프 사이클은, AIT 섹션 및 XML-AIT에 저장되는 애플리케이션 제어 코드(11, 21)를 기초로, 정보 처리 장치(700)에 의해 동적으로 제어된다.
도 5는, AIT 섹션 및 XML-AIT에 저장되는 애플리케이션 제어 코드(11, 21)의 정의를 나타내는 도면이다.
도 5에 도시한 바와 같이, 애플리케이션 제어 코드로서는, "AUTOSTART", "PRESENT", "DESTROY", "KILL", "PREFETCH", "REMOTE", "DISABLED", "PLAYBACK_AUTOSTART"가 표준 규격상 존재한다. 이들 애플리케이션 제어 코드의 정의는 이하와 같다.
"AUTOSTART"는, 서비스의 선택에 수반하여 애플리케이션을 자동으로 기동하는 것을 지시하는 코드이다. 애플리케이션이 이미 실행되어 있는 경우에는 이에 한정되지 않는다.
"PRESENT"는, 서비스가 선택되고 있는 동안, 애플리케이션을 실행 가능한 상태로 하는 것을 지시하는 코드이다. 단, 대상의 애플리케이션은, 서비스의 선택에 수반하여 자동적으로 애플리케이션은 기동되지 않으며, 유저로부터의 기동 지시를 받아 기동된다.
"DESTROY"는, 애플리케이션의 종료 허가를 지시하는 코드이다.
"KILL"은, 애플리케이션의 강제적인 종료를 지시하는 코드이다.
"PREFETCH"는, 애플리케이션의 캐쉬를 지시하는 코드이다.
"REMOTE"는, 현재의 트랜스포트 스트림에서는 취득할 수 없는 애플리케이션임을 나타내는 코드이다. 그 애플리케이션은, 별도의 트랜스포트 스트림 혹은 캐쉬로부터 취득하여 이용 가능하게 된다.
"DISABLED"는, 애플리케이션의 기동을 금지하는 것을 나타내는 코드이다.
"PLAYBACK_AUTOSTART"는, 스토리지(기록 장치)에 녹화된 방송 콘텐츠의 재생에 수반하여 애플리케이션을 기동시키기 위한 코드이다.
[제1 정보 처리 장치의 구성]
도 6은, 본 실시 형태의 정보 처리 장치(700)의 구성을 나타내는 블록도이다.
정보 처리 장치(700)는, 방송 인터페이스(701), 디멀티플렉서(702), 출력 처리부(703), 영상 디코더(704), 음성 디코더(705), 자막 디코더(706), 통신 인터페이스(707), 애플리케이션 컨트롤러(708: 컨트롤러)를 갖는다.
방송 인터페이스(701)는, 안테나 및 튜너를 갖고, 이들을 이용하여 유저에 의해 선국된 디지털 방송 신호를 수신한다. 방송 인터페이스(701)는, 수신한 디지털 방송 신호에 대하여 복조 처리 등을 실시하여 얻은 트랜스포트 스트림을 디멀티플렉서(702)로 출력한다.
디멀티플렉서(702)는, 트랜스포트 스트림으로부터 방송 콘텐츠의 스트림 패킷, 애플리케이션의 패킷, AIT 섹션의 패킷을 각각 분리한다. 디멀티플렉서(702)는, 방송 콘텐츠의 스트림 패킷으로부터 영상 ES(Elementary Stream), 음성 ES, 자막 ES를 분리한다. 디멀티플렉서(702)는, 영상 ES를 영상 디코더(704)로, 음성 ES를 음성 디코더(705)로, 자막 ES를 자막 디코더(706)로, 그리고 애플리케이션의 패킷 및 AIT 섹션을 포함하는 PSI/SI(Program Specific Information/Service Information)의 패킷을 애플리케이션 컨트롤러(708)로 각각 분배한다.
영상 디코더(704)는, 영상 ES를 디코드하여 영상 신호를 생성하고, 생성한 영상 신호를 출력 처리부(703)로 출력한다. 음성 디코더(705)는, 음성 ES를 디코드하여 음성 신호를 생성하고, 생성된 음성 신호를 출력 처리부(703)로 출력한다.
자막 디코더(706)는, 자막 ES를 디코드하여 자막 신호를 생성하고, 생성된 자막 신호를 출력 처리부(703)로 출력한다.
방송 인터페이스(701), 디멀티플렉서(702), 출력 처리부(703), 영상 디코더(704), 음성 디코더(705), 자막 디코더(706)는, 방송 콘텐츠를 수신하여 처리하는 방송 콘텐츠 처리부이다.
통신 인터페이스(707)는, LAN 등의 제2 네트워크(600)를 통하여 외부의 기기와 통신을 행하기 위한 인터페이스이다. 통신 인터페이스(707)는 무선에 의한 통신, 유선에 의한 통신을 불문한다.
애플리케이션 컨트롤러(708)는, 애플리케이션의 제어에 관한 처리를 행하는 컨트롤러이다.
출력 처리부(703)는, 영상 디코더(704)로부터의 영상 신호, 음성 디코더(705)로부터의 음성 신호, 자막 디코더(706)로부터의 자막 신호 및 애플리케이션 컨트롤러(708)로부터의 영상 신호나 음성 신호 등을 합성하고, 정보 처리 장치(700)에 접속된 기록 장치(도시생략), 표시부 및 스피커부(도시생략)로 출력한다.
상기한 정보 처리 장치(700)의 적어도 애플리케이션 컨트롤러(708)를 포함하는 구성의 일부 또는 전부는, CPU(Central Processing Unit) 및 메모리를 갖는 컴퓨터와 프로그램에 의해 제공하는 것이 가능하다.
[정보 처리 시스템(1)의 동작]
다음으로, 본 실시 형태의 정보 처리 시스템(1)의 동작을 설명한다.
동작의 설명은,
1. AIT 섹션을 이용한 애플리케이션의 기동
2. XML-AIT를 이용한 애플리케이션의 기동
3. 방송 BML 데이터로부터의 애플리케이션의 기동
4. 방송 비연동형의 애플리케이션의 기동
5. 애플리케이션 론처로부터 방송 비연동형 애플리케이션의 기동
6. 전자 서명 및 해시값의 생성과 검증
의 순으로 행한다.
(1. AIT 섹션을 이용한 애플리케이션의 기동)
도 7은, AIT 섹션을 이용한 애플리케이션의 기동의 동작예를 나타내는 도면이다.
도 8은, 도 7의 동작예의 흐름도이다.
정보 처리 장치(700)는, 예를 들어 리모콘 등을 사용하여 유저에 의해 선국된 방송 설비(100)로부터의 방송 콘텐츠를 수신하고, 영상 데이터, 음성 데이터, 자막 데이터 등의 디코드 처리 등을 행하여, 정보 처리 장치(700)에 접속된 표시부 및 스피커부로 방송 콘텐츠를 출력한다(스텝 S101).
구체적으로는, 방송 인터페이스(701)가 유저에 의해 선국된 방송 설비(100)로부터 방송 콘텐츠의 디지털 방송 신호를 수신하고, 복조 처리 등을 실시하여 얻은 트랜스포트 스트림을 디멀티플렉서(702)로 출력한다. 디멀티플렉서(702)는 트랜스포트 스트림으로부터 방송 콘텐츠의 스트림 패킷을 분리하고, 나아가 방송 콘텐츠의 스트림 패킷을 영상 ES, 음성 ES, 자막 ES로 분리한다. 분리된 영상 ES, 음성 ES, 자막 ES는 각각, 영상 디코더(704), 음성 디코더(705), 자막 디코더(706)에서 디코딩되고, 출력 처리부(703)에서 합성되어 표시부 및 스피커부로 출력된다.
이 예에서는, 방송 설비(100)로부터 시각 T1에, 방송 연동형 애플리케이션 App1에 관한 AIT가 저장된 AIT 섹션이 방송 콘텐츠에 중첩하여 전송된다. 이 AIT 섹션에는 방송 연동형 애플리케이션 App1의 로케이션 정보와 기동을 지시하는 애플리케이션 제어 코드 "AUTOSTART"가 저장되어 있다. 여기서, 방송 연동형 애플리케이션 App1은 애플리케이션 서버(300)로부터 취득되는 경우를 상정하고 있기 때문에, 로케이션 정보는 그 애플리케이션 서버(300)로부터 그 방송 연동형 애플리케이션 App1을 취득하기 위해 필요한 정보로서, HTTP(Hypertext Transfer Protocol) 등의 통신 프로토콜 정보와 URL(Uniform Resource Locator) 등으로 구성된다.
디멀티플렉서(702)는 트랜스포트 스트림으로부터 방송 연동형 애플리케이션 App1의 패킷과 AIT 섹션의 패킷을 분리하여 애플리케이션 컨트롤러(708)에 공급한다. 애플리케이션 컨트롤러(708)는 AIT 섹션을 취득하면(스텝 S102), 이것을 해석한다(스텝 S103).
또한, 본 실시 형태에서는, AIT 섹션은 악의가 있는 제3자에 의해 개찬될 가능성은 극히 낮다는 이유에서, 전자 서명의 검증은 불필요로 되어 있다.
이 동작예에서는, AIT 섹션에 애플리케이션 제어 코드로서 "AUTOSTART"가 지정되어 있으므로, 애플리케이션 컨트롤러(708)는, 그 AIT 섹션에 기술된 로케이션 정보를 기초로 애플리케이션 서버(300)에 액세스하여 방송 연동형 애플리케이션 App1을 취득하고, 이것을 기동시킨다(스텝 S104의 '아니오', 스텝 S105의 '예', 스텝 S106). 기동된 방송 연동형 애플리케이션 App1은, 예를 들어 표시부에 표시된 방송 프로그램 A의 영상과 함께 가시화(제시)된다.
계속해서, 시각 T2에 AIT 섹션의 갱신이 발생한 것으로 한다. 정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, AIT 섹션의 데이터 구조 중 버전 넘버를 기초로 AIT 섹션의 갱신이 발생한 것을 알 수 있다. 여기서, 갱신된 AIT 섹션에는, 방송 연동형 애플리케이션 App1의 종료를 지시하는 애플리케이션 제어 코드"DESTROY" 또는 "KILL"과, 다음의 방송 연동형 애플리케이션 App2의 기동을 지시하는 애플리케이션 제어 코드 "AUTOSTART"가 기술되어 있는 것으로 한다.
정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 새로운 AIT 섹션을 취득하면(스텝 S102), 이 AIT 섹션에 기술된 방송 연동형 애플리케이션 App1에 대한 애플리케이션 제어 코드 "DESTROY" 또는 "KILL"에 따라서 방송 연동형 애플리케이션 App1을 종료시킨다(스텝 S104의 '예', 종료). 또한, 애플리케이션 컨트롤러(708)는, 그 AIT 섹션에 방송 연동형 애플리케이션 App2에 대한 애플리케이션 제어 코드로서 저장된 "AUTOSTART"에 따라서 방송 연동형 애플리케이션 App2를 취득하고(스텝 S105의 '예', S106), 이것을 기동시킨다(스텝 S105). 이에 의해, 방송 연동형 애플리케이션 App1을 대신하여 방송 연동형 애플리케이션 App2가 방송 프로그램 A의 영상과 함께 제시된다.
또한, 애플리케이션 컨트롤러(708)는, 취득한 AIT 섹션에 "AUTOSTART", "DESTROY", "KILL" 이외의 애플리케이션 제어 코드가 기술되어 있는 경우에는, 그 애플리케이션 제어 코드에 따라서 방송 연동형 애플리케이션의 상태를 천이시키는 등의 처리를 행한 후(스텝 S107), 다음의 AIT 섹션을 대기한다.
도 7에 있어서, 방송 연동형 애플리케이션 App1 및 방송 연동형 애플리케이션 App2는 방송 프로그램의 영상에 대하여 영역을 나누어 L자형으로 표시되는 것으로 하였지만, 반드시 방송 프로그램의 영상과 동시에 표시될 필요는 없으며, 전체 화면에 표시하여도 된다. 또한, 방송 프로그램의 영상에 대하여 영역을 나누어 표시하는 경우에도, 종횡으로 분리하여 표시하거나, 좌우로 분리하여 표시시키도록 하여도 된다. 애플리케이션을 전체 화면에 표시시키는 경우, 방송 프로그램의 영상이 표시되지 않게 되지만, 이 상태에 있어서도, 방송 인터페이스(701)의 튜너는 선국 상태에 있으며, AIT 섹션을 포함하는 방송 스트림의 수신 상태가 계속된다.
상기한 바와 같이, 방송 연동형 애플리케이션을 시간에 따라 전환하여 정보 처리 장치(700)에 제시시키는 서비스의 구체적인 형태로서는, 예를 들어 다음과 같은 것을 들 수 있다.
1. 가수의 콘서트 전체를 비추는 동화상이 주 영상으로서 AV 스트림을 통해 전송되는 경우에, 그 모습을 다른 각도에서 촬영하거나, 가수를 줌 촬영하거나 한 부(副) 영상, 그 가수나 콘서트에 관한 문자 데이터 등의 정보를 제공하기 위한 애플리케이션.
2. 여러 나라의 언어에 의한 스포츠 실황의 음성이나 자막을 제공하기 위한 애플리케이션.
3. 눈에 장애가 있는 사람을 위해 AV 스트림을 통해 전송되는 영상의 내용을 음성으로 설명하기 위한 오디오 디스크립션의 애플리케이션.
(2. XML-AIT를 이용한 애플리케이션의 기동)
도 9는, XML-AIT를 이용한 애플리케이션의 기동의 동작예를 나타내는 도면이다.
도 10은, 도 9의 동작예의 흐름도이다.
유저에 의한 리모콘의 조작에 의한 방송의 선국(스텝 S201)으로부터 AIT 섹션에 기초하는 방송 연동형 애플리케이션의 취득, 제시(스텝 S208)까지의 동작은, 상기 1. AIT 섹션을 이용한 애플리케이션의 기동과 동일하다.
이 동작예에서는, 제시 중의 방송 연동형 애플리케이션 App1에, 다음으로 제시시키는 방송 연동형 애플리케이션 App2용의 XML-AIT를 정보 처리 장치(700)에 취득시키기 위한 createApplication() 함수 등을 포함하는 스크립트가 내장되어 있는 경우를 상정하고 있다. createApplication() 함수에는, 인수로서, 그 방송 연동형 애플리케이션 App2용의 XML-AIT에 액세스하기 위해 필요한 통신 프로토콜에 관한 정보와 XML-AIT의 로케이션 정보 등이 기술되어 있다.
방송 연동형 애플리케이션 App1의 제시 중, 유저로부터의 지시 혹은 시간 등 소정의 조건이 성립하면(스텝 S209의 '예'), 방송 연동형 애플리케이션 App1에 내장된 상기 스크립트가 실행됨으로써, 정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 새로운 XML-AIT를 XML-AIT 서버(400)로부터 취득하고(스텝 S210), 해석한다(스텝 S211).
이 새로운 XML-AIT에는, 실행 중인 방송 연동형 애플리케이션 App1에 관한 정보와 이제부터 실행되는 방송 연동형 애플리케이션 App2에 관한 정보가 기술되어 있다. 여기서, 방송 연동형 애플리케이션 App1에 관한 정보로서, 방송 연동형 애플리케이션 App1의 종료를 지시하는 애플리케이션 제어 코드 "DESTROY" 또는 "KILL"과, 애플리케이션 모드 "mode1"이 기술되고, 방송 연동형 애플리케이션 App2에 관한 정보로서는, 그 방송 연동형 애플리케이션 App2의 기동을 지시하는 애플리케이션 제어 코드 "AUTOSTART"와 애플리케이션 모드 "mode1"이 기술되어 있다. 즉 각 애플리케이션 App1, App2 모두 방송 연동형의 애플리케이션이기 때문에 애플리케이션 모드는 "mode1"로 되어 있다.
애플리케이션 컨트롤러(708)는, 취득한 XML-AIT에 있어서 각 애플리케이션 App1, App2 모두 애플리케이션 모드가 "mode1"이기 때문에, 전자 서명의 검증을 요하지 않고, 이 XML-AIT에 기술된 애플리케이션 제어 코드에 따라서 각 애플리케이션 App1, App2에 관한 제어를 개시한다.
즉, XML-AIT에 기술된 방송 연동형 애플리케이션 App1에 대한 애플리케이션 제어 코드 "DESTROY" 또는 "KILL"에 따라서 방송 연동형 애플리케이션 App1을 종료시킨다. 또한, 애플리케이션 컨트롤러(708)는, XML-AIT에 기술된 방송 연동형 애플리케이션 App2에 대한 애플리케이션 제어 코드 "AUTOSTART"에 따라서(스텝 S212의 '예'), 그 XML-AIT에 기술된 방송 연동형 애플리케이션 App2의 로케이션 정보를 기초로 애플리케이션 서버(300)로부터 방송 연동형 애플리케이션 App2를 취득하고, 이것을 기동시킨다(스텝 S213). 이때, 애플리케이션 컨트롤러(708)는, 방송 연동형 애플리케이션 App2의 애플리케이션 모드가 "mode1"로 설정되어 있으므로, 방송 리소스 제시 기능 등을 이용할 수 있는 모드에서 방송 연동형 애플리케이션 App2를 기동시킨다.
(3. 방송 BML 데이터로부터의 애플리케이션의 기동)
다음으로, 방송 BML 데이터로부터 애플리케이션을 기동하는 경우의 동작을 설명한다.
도 11은, 방송 BML 데이터로부터 애플리케이션을 기동하는 경우의 동작예를 나타내는 도면이다.
도 12는, 도 11의 동작예의 흐름도이다.
본 동작예는, BML 데이터 방송에 방송 연동형 애플리케이션 App1의 XML-AIT를 정보 처리 장치(700)에 취득시키기 위한 스크립트가 내장되어 있는 경우를 상정하고 있다. 또한, 데이터 방송은 BML인 것으로 한정되지 않는다. 예를 들어, MHEG(Multimedia and Hypermedia Experts Group) 등, 멀티미디어를 취급할 수 있는 다른 마크업 언어에 의한 데이터 방송도 가능하다.
정보 처리 장치(700)는, 예를 들어 리모콘 등을 사용하여 유저에 의해 선국된 방송 설비(100)로부터의 방송 콘텐츠를 수신하고, 영상 데이터, 음성 데이터, 자막 데이터 등의 디코드 처리 등을 행하여, 정보 처리 장치(700)에 접속된 표시부 및 스피커부에 AV 콘텐츠(방송 프로그램)를 출력한다(스텝 S301).
AV 콘텐츠(방송 프로그램)의 출력 중, 예를 들어 리모콘 등을 사용하여 유저에 의해 데이터 방송을 재생하는 지시가 입력되면(스텝 S303), 그 시청 중의 AV 콘텐츠(방송 프로그램)에 부수되어 전송되는 BML 데이터 방송이 AV 콘텐츠(방송 프로그램)와 함께 제시된다(스텝 S304).
BML 데이터 방송의 제시 중, 유저로부터의 지시 또는 시간 등 소정의 조건이 성립되면(스텝 S305의 '예'), BML 데이터 방송에 내장된 상기 스크립트가 실행됨으로써, 정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 방송 연동형 애플리케이션 App1용의 XML-AIT를 XML-AIT 서버(400)로부터 취득하고(스텝 S306), 해석한다(스텝 S307).
이 방송 연동형 애플리케이션 App1용의 XML-AIT에는, 애플리케이션 제어 코드로서 "AUTOSTART"가 지정되고, 애플리케이션 모드로서는 "mode1"이 기술되어 있다.
애플리케이션 컨트롤러(708)는, 방송 연동형 애플리케이션 App1의 애플리케이션 모드가 "mode1"이기 때문에, 전자 서명의 검증을 요하지 않고, 그 XML-AIT에 기술된 로케이션 정보를 기초로 애플리케이션 서버(300)에 액세스하여 방송 연동형 애플리케이션 App1을 취득하고, 이것을 기동시킨다(스텝 S308의 '예', 스텝 S309). 이때, 애플리케이션 컨트롤러(708)는, 방송 연동형 애플리케이션 App1의 애플리케이션 모드가 "mode1"이기 때문에, 방송 리소스 제시 기능을 이용할 수 있는 모드에서 방송 연동형 애플리케이션 App1을 기동시킨다.
또한, 전자 서명의 검증의 필요 여부의 판정은 애플리케이션 모드만으로 행해진다고는 할 수 없다. 예를 들어, 취득한 XML-AIT가, 개찬될 가능성이 적은 방송의 BML 문서에 기술된 URL을 기초로 취득된 것인 경우에는, 전자 서명의 검증은 불필요하다고 판정된다. 반대로, XML-AIT가, 후술하는 애플리케이션 론처 등, 방송 이외의 전송계를 통하여 취득된 것인 경우에는, 전자 서명의 검증은 필요하다고 판정된다.
이 후, 정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 새롭게 취득한 XML-AIT에 방송 연동형 애플리케이션 App1의 종료를 지시하는 애플리케이션 제어 코드 "DESTROY" 또는 "KILL"이 기술되어 있는 경우에는, 이 애플리케이션 제어 코드에 따라서 방송 연동형 애플리케이션 App1을 종료시킨다(스텝 S302의 '예').
또한, 정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 새롭게 취득한 XML-AIT에 "AUTOSTART", "DESTROY", "KILL" 이외의 애플리케이션 제어 코드가 기술되어 있는 경우에는, 그 애플리케이션 제어 코드에 따라서 방송 연동형 애플리케이션 App1의 상태를 천이시키는 등의 처리를 행한 후(스텝 S310), 다음의 XML-AIT를 대기한다.
(4. 방송 비연동형 애플리케이션의 기동)
다음으로, 방송 비연동형 애플리케이션의 기동에 관한 동작을 설명한다.
도 13은, 방송 연동형 애플리케이션 App1을 기동한 후, XML-AIT에 의해 방송 비연동형 애플리케이션 App3을 기동하는 경우의 동작예를 나타내는 도면이다.
도 14 및 도 15는, 도 13의 동작예의 흐름도이다.
리모콘의 조작에 의한 방송의 선국(스텝 S401)으로부터 AIT 섹션에 기초하는 방송 연동형 애플리케이션의 취득, 제시(스텝 S405)까지의 동작은, 상기 1. AIT 섹션을 이용한 방송 연동형 애플리케이션의 제어와 동일하다.
이 동작예에서는, 방송 연동형 애플리케이션 App1에 방송 비연동형 애플리케이션 App3용 XML-AIT를 정보 처리 장치(700)에 취득시키기 위한createApplication() 함수를 포함하는 스크립트가 내장되어 있는 경우를 상정하고 있다.
방송 연동형 애플리케이션 App1의 실행 중, 유저로부터의 지시 또는 시간 등 소정의 조건이 성립하면(스텝 S407의 '예'), 방송 연동형 애플리케이션 App1에 내장된 상기 스크립트가 실행됨으로써, 정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 방송 비연동형 애플리케이션 App3용 XML-AIT를 XML-AIT 서버(400)로부터 취득하고, 해석한다(스텝 S408).
여기서, 방송 비연동형 애플리케이션은, 일반적으로, 방송 사업자와는 다른 애플리케이션 제공 사업자로부터 제공된다. 이로 인해, 방송 비연동형 애플리케이션의 XML-AIT에는 애플리케이션 모드로서 "mode2"가 설정된다. 따라서, 그XML-AIT에는 본래, 전자 서명이 첨부되어 있을 것이며, 정보 처리 장치(700)의 측에서 XML-AIT를 이용함에 있어서 그 전자 서명의 검증이 필수 조건으로 된다.
또한, 이 XML-AIT에는, 실행 중인 방송 연동형 애플리케이션 App1에 관한 정보로서, 방송 연동형 애플리케이션 App1의 종료를 지시하는 애플리케이션 제어 코드 "DESTROY" 또는 "KILL"과, 애플리케이션 모드 "mode1"이 기술되고, 이제부터 실행되는 방송 비연동형 애플리케이션 App3에 관한 정보로서 그 방송 비연동형 애플리케이션 App3의 기동을 지시하는 애플리케이션 제어 코드 "AUTOSTART"와 애플리케이션 모드 "mode2"가 기술되어 있다. 또한, 이 XML-AIT에는, 방송 비연동형 애플리케이션 App3의 해시값(제1 대푯값)이 기술되어 있다.
정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 취득한 XML-AIT에 전자 서명이 첨부되어 있는지 여부를 판정한다(스텝 S410). XML-AIT에 전자 서명이 첨부되어 있는 경우에는 애플리케이션 컨트롤러(708)는 그 전자 서명의 검증이 필요함을 판정하고, 검증을 행한다(스텝 S411).
또한, XML-AIT에 전자 서명이 첨부되어 있지 않은 경우(스텝 S410의 '아니오'), 애플리케이션 컨트롤러(708)는, XML-AIT에 기술된 애플리케이션 모드가, 전자 서명의 검증을 필요로 하지 않는 모드의 값인 "mode1"인지 여부를 확인한다(스텝 S412). 이 확인에서, 애플리케이션 모드가 "mode1"이면, 전자 서명의 검증이 불필요함이 판정된다.
전자 서명의 검증에 실패한 경우에는 에러가 표시된다(스텝 S423). 전자 서명의 검증에 성공한 경우(스텝 S411의 '예'), 혹은, 전자 서명의 검증이 불필요함이 판정된 경우(스텝 S412의 '예'), 애플리케이션 컨트롤러(708)는, XML-AIT에 기술된 애플리케이션 제어 코드가 "AUTOSTART"인지 여부를 판정한다(스텝 S413). 애플리케이션 제어 코드가 "AUTOSTART"이면, 애플리케이션 컨트롤러(708)는, XML-AIT에 애플리케이션 모드의 값과 해시값이 기술되어 있는지 여부를 판정한다(스텝 S414, S415). XML-AIT에 애플리케이션 모드의 값이 설정되어 있지 않은 경우에는에러가 표시된다(스텝 S423). XML-AIT에 애플리케이션 모드의 값이 기술되어 있으면, 애플리케이션 컨트롤러(708)는, XML-AIT에 기술되어 있는 해시값 (A)(제1 대푯값)를 유지한다(스텝 S416).
다음으로, 애플리케이션 컨트롤러(708)는, XML-AIT에 기술되어 있는 방송 비연동형 애플리케이션 App3의 로케이션 정보를 기초로 애플리케이션 서버(300)로부터 방송 비연동형 애플리케이션 App3을 취득하여, XML-AIT에 기술되어 있는 해시값의 계산 방법을 나타내는 해시 알고리즘에 의해 그 방송 비연동형 애플리케이션 App3의 해시값 (B)(제2 대푯값)를 계산한다(스텝 S417).
다음으로, 애플리케이션 컨트롤러(708)는 해시값 (A)와 해시값 (B)를 비교한다(스텝 S418). 일치하는 경우, 애플리케이션 컨트롤러(708)는, 그 방송 비연동형 애플리케이션 App3의 애플리케이션 모드가 "mode2"이기 때문에, 그 방송 비연동형 애플리케이션 App3을 방송 리소스 제시 기능을 이용할 수 없는 모드에서 기동시킨다(스텝 S419). 일치하지 않는 경우에는 에러 표시가 행해진다(스텝 S423). 이 후에는, 새로운 XML-AIT에 기술되어 있는 애플리케이션 제어 코드에 따라서, 방송 비연동형 애플리케이션 App3의 상태 천이, 종료 등의 제어나, 그 밖에, 유저의 리모콘 조작이나 이벤트 메시지에 의한 이벤트 처리가 행해진다(스텝 S420, S421, S422).
(5. 애플리케이션 론처로부터 방송 비연동형 애플리케이션의 기동)
다음으로, 애플리케이션 론처로부터 방송 비연동형 애플리케이션을 기동하는 경우의 동작을 설명한다.
도 16은, 애플리케이션 론처로부터 방송 비연동형 애플리케이션을 기동하는 경우의 동작예를 나타내는 도면이다.
도 17은, 도 16의 동작예의 흐름도이다.
정보 처리 장치(700)는, 예를 들어 리모콘 등을 사용하여 유저에 의해 선택된 애플리케이션 론처 화면을 표시한다. 애플리케이션 론처 화면이란, 정보 처리 장치(700)에 실장된, 소위 레지던트 애플리케이션이나, HTML 브라우저에 의해 제시되는 HTML5 등의 문서에 의해 실현된다. 애플리케이션 론처 화면에는, 애플리케이션의 메뉴 등이 표시된다(스텝 S501). 유저는 예를 들어 리모콘 등을 사용하여 제시시키고 싶은 애플리케이션을 선택할 수 있다. 애플리케이션의 개개의 메뉴에는, 그 메뉴에 대응하는 애플리케이션용 XML-AIT를 정보 처리 장치(700)에 취득시키기 위한 스크립트 등이 내장되어 있다.
애플리케이션 론처 화면에 표시된 애플리케이션의 메뉴상에서, 리모콘을 사용한 유저의 조작에 의해 임의의 방송 비연동형 애플리케이션 App3이 선택되면(스텝 S502), 그 애플리케이션에 대응하는 상기 스크립트가 실행됨으로써, 정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 그 애플리케이션용의 XML-AIT를 XML-AIT 서버(400)로부터 취득하고, 해석한다(스텝 S503).
여기서, 애플리케이션 론처 화면으로부터 선택 가능한 방송 비연동형 애플리케이션은, 일반적으로, 방송 사업자와는 다른 애플리케이션 제공 사업자로부터 제공된다. 이로 인해, 방송 비연동형 애플리케이션의 XML-AIT에는 애플리케이션 모드로서 "mode2"가 설정된다. 따라서, 그 XML-AIT에는 본래, 전자 서명이 첨부되어 있었을 것이며, 정보 처리 장치(700)의 측에서는, XML-AIT를 이용함에 있어서 그 전자 서명의 검증이 필수 조건으로 된다.
또한, 이 XML-AIT에는, 방송 비연동형 애플리케이션 App3에 관한 정보로서, 방송 비연동형 애플리케이션 App3의 기동을 지시하는 애플리케이션 제어 코드 "AUTOSTART"와 애플리케이션 모드 "mode2"가 기술되어 있다. 또한, 이 XML-AIT에는, 방송 비연동형 애플리케이션 App3의 해시값이 기술되어 있다.
정보 처리 장치(700)의 애플리케이션 컨트롤러(708)는, 취득한 XML-AIT에 전자 서명이 첨부되어 있는지 여부를 판정한다(스텝 S504). XML-AIT에 전자 서명이 첨부되어 있는 경우에는 애플리케이션 컨트롤러(708)는 그 전자 서명의 검증이 필요함을 판정한다. 이후의 동작은, 상기 4. 방송 비연동형 애플리케이션의 기동과 동일하다.
(6. 전자 서명 및 해시값의 생성과 검증)
다음으로, 전자 서명 및 해시값의 생성과 검증에 대하여 설명한다.
XML-AIT 서버(400) 및 애플리케이션 서버(300)는 1대의 서버이어도 되고, 별도의 서버이어도 된다. 여기에서는, XML-AIT 서버(400) 및 애플리케이션 서버(300)를 총칭하여 「서버」라고 부른다. 서버는, 전형적인 컴퓨터의 구성을 갖는 기기이다. 따라서, CPU, 메인 메모리, HDD 등의 스토리지 디바이스, 마우스나 키보드 등의 입력 장치, 액정 디스플레이 등의 표시부 등으로 구성된다. 메인 메모리 및 스토리지 디바이스에는, OS(Operating System), 서버용 애플리케이션 프로그램 등의 소프트웨어, 정보 처리 장치(700)에 제공되는 애플리케이션(방송 연동형 애플리케이션, 방송 비연동형 애플리케이션), 애플리케이션마다의 XML-AIT의 파일, 서명 생성 키 등이 저장된다. 서버용 애플리케이션 프로그램으로서는, 전자 서명 및 해시값의 생성을 행하는 프로그램 등이 포함된다.
도 18은, 서버에서의 전자 서명 및 해시값의 생성과, 정보 처리 장치(700)에서의 전자 서명 및 해시값의 검증 방법을 설명하는 도면이다.
서버는, AIT 생성부(350)를 갖는다. AIT 생성부(350)는, 구체적으로는 메인 메모리에 로드된, 전자 서명 및 해시값의 생성을 행하는 프로그램과, 이 프로그램을 실행하는 CPU에 의해 실현된다.
AIT 생성부(350)는, 이하의 처리를 행한다.
1. AIT 생성부(350)는, 애플리케이션(351)의 실체(바이너리 코드)로부터 소정의 해시 연산기(352)를 이용하여 해시값(353)을 산출한다. 해시의 알고리즘으로서는, 예를 들어 FIPS PUB 180-1, 180-2로 표준 규격화되어 있는 SHA-1이나 SHA-2 등이 있다.
2. AIT 생성부(350)는, 그 애플리케이션(351)의 XML-AIT(362)에 해시값(353)을 합성(354)하여, 해시값이 부여된 XML-AIT(355)를 생성한다.
3. AIT 생성부(350)는, 서명 생성기(356)에서, 해시값이 부여된 XML-AIT(355)에 대하여 서명용 해시 함수를 이용하여 다이제스트를 생성하고, 이 다이제스트를 서명 생성 키(357: 비밀 키)로 암호화하여 XML 서명(358)을 생성한다.
4. AIT 생성부(350)는, XML 서명(358)을 해시값이 부여된 XML-AIT(355)에 부가(359)하여 전자 서명이 부여된 XML-AIT(360)를 생성한다.
5. 그리고, 전자 서명이 부여된 XML-AIT(360)는 정보 처리 장치(700)에 제공된다.
정보 처리 장치(700)의 컨트롤러(708)는, 이하의 처리를 행한다.
1. 컨트롤러(708)는, 서명 생성기(753)에서, 서버로부터 취득한 전자 서명이 부여된 XML-AIT(360)로부터 XML 서명을 추출하고, 이 XML 서명을 서명 검증 키(754: 공개 키)를 이용하여 검증하여 서명 검증 결과(755)를 얻는다.
2. XML 서명의 검증에 성공한 경우, 컨트롤러(708)는 서버로부터 취득한 애플리케이션(351)의 실체(바이너리 코드)로부터 소정의 해시 연산기(751: 해시 함수)를 이용하여 해시값(752)을 산출한다. 여기에서 이용되는 해시 함수는, 서버의 AIT 생성부(350)의 해시 연산기(352)의 그것과 동일할 필요가 있다. 따라서 컨트롤러(708)는, 서버로부터 취득한 전자 서명이 부여된 XML-AIT(360)에 기술된 해시 알고리즘을 확인하여, 해시 연산기(751: 해시 함수)의 해시 알고리즘과의 정합이 취해져 있는지 여부를 판정한다. 만약 해시 알고리즘의 부정합이 판정된 경우, 컨트롤러(708)는 해시 연산기(751: 해시 함수)를 전환하여 서버의 AIT 생성부(350)의 해시 연산기(352)의 그것과 정합시킨다.
3. 컨트롤러(708)는, 서버로부터 취득한 전자 서명이 부여된 XML-AIT(360)로부터 추출한 해시값(353)과 해시값(752)을 해시 비교기(756)를 이용하여 비교하고, 일치/불일치의 결과(757)를 얻는다.
4. XML 서명의 검증에 실패한 경우, 혹은 XML 서명의 검증에 성공하여도 해시값(353)과 해시값(752)이 불일치한 경우에는 에러로서 종료한다.
[실시 형태의 효과 등]
본 실시 형태에서는, 다음과 같은 효과가 얻어진다.
1. 예를 들어, 인터넷망과 같은 통신로에 의해 XML-AIT 및 애플리케이션을 전송하는 서비스에 있어서, 그들의 신뢰성을 유지하면서 정보 처리 장치(700)에 전송할 수 있다. 악의가 있는 제3자에 의한 XML-AIT 및 애플리케이션의 개찬 등을 방지하는 것이 가능하며, 정보 처리 장치(700)에 있어서 안전하게 애플리케이션을 이용할 수 있다.
2. 보다 구체적으로는, XML-AIT에 애플리케이션의 해시값을 기술하여 정보 처리 장치(700)에 제공되므로, 정보 처리 장치(700)는 애플리케이션 서버(300)로부터 취득한 애플리케이션에 대하여 산출한 해시값과 XML-AIT에 의해 전달된 해시값을 비교함으로써, 애플리케이션의 정당성을 판정할 수 있다.
3. 또한, 해시값을 포함하는 XML-AIT에는 전자 서명이 첨부되고, 정보 처리 장치(700)는 이 전자 서명의 검증에 성공하지 않으면, 애플리케이션을 취득할 수도 없도록 하였으므로, XML-AIT의 개찬 등에 의해, 부정한 애플리케이션이 정보 처리 장치(700)에 있어서 실행되는 것을 방지할 수 있다.
4. XML-AIT에 애플리케이션 모드를 기술할 수 있도록 함으로써, 애플리케이션에 이용 가능한 기능을 제어할 수 있다. 또한, 정보 처리 장치(700)는, XML-AIT에 기술된 애플리케이션 모드 등에 기초하여 전자 서명의 검증의 필요 여부를 일의적으로 알 수 있다. 이에 의해 예를 들어, 방송 사업자에 의해 제작된 애플리케이션용 XML-AIT에 대해서는 전자 서명의 검증을 스킵할 수 있음으로써, 전체적인 속도 향상을 기대할 수 있다.
<변형예 등>
또한, 상기한 실시 형태에서는, 해시 함수를 이용하여 애플리케이션의 해시값을 산출하기로 하였지만, 그 변형예로서, 도 19에 도시한 바와 같이, HMAC(Keyed-Hashing for Message Authentication) 연산기(352A, 751A)를 이용하는 방법이 있다. HMAC 연산기(352A, 751A)는, SHA-1, SHA-2 등의 해시 함수를 비밀의 공유 키(361A, 758A: 해시 키)와 조합하여 사용함으로써 해시값(353A, 752A)을 산출한다. 그 밖에는, 상기한 실시 형태와 마찬가지이다.
또한, 이상의 실시 형태에서는, 애플리케이션의 대푯값으로서 해시값을 이용하는 경우에 대하여 설명하였지만, 애플리케이션의 바이너리 코드로부터 소정의 연산에 의해 얻어지는 값이면, 해시 연산 이외의 방식을 채용하여도 된다.
HbbTV의 표준 규격을 전제로 한 실시 형태를 설명하였지만, 본 발명은, HbbTV의 표준 규격을 전제로 하는 것으로 반드시 한정되는 것은 아니다.
그 밖에, 본 발명은, 전술한 실시 형태에만 한정되는 것이 아니라, 본 발명의 요지를 일탈하지 않는 범위 내에 있어서 종종 변경을 가할 수 있는 것은 물론이다.
1: 정보 처리 시스템
11, 21: 애플리케이션 제어 코드
22: 애플리케이션 모드 기술자
23: 애플리케이션 해시 기술자
100: 방송 설비
200: 제1 네트워크
300: 애플리케이션 서버
350: AIT 생성부
351: 애플리케이션
352: 해시 연산기
353: 해시값
355: AIT
356: 서명 생성기
357: 서명 생성 키
358: XML 서명
360: AIT
400: AIT 서버
600: 제2 네트워크
700: 정보 처리 장치
701: 방송 인터페이스
702: 디멀티플렉서
703: 출력 처리부
704: 영상 디코더
705: 음성 디코더
706: 자막 디코더
707: 통신 인터페이스
708: 애플리케이션 컨트롤러
751: 해시 연산기
752: 해시값
753: 서명 생성기
754: 서명 검증 키
755: 서명 검증 결과
756: 해시 비교기

Claims (22)

  1. 정보 처리 장치로서,
    방송 콘텐츠를 수신하고 처리하도록 구성된 방송 콘텐츠 처리부와,
    네트워크를 통해 외부 서버와 통신하기 위한 통신 인터페이스와,
    전자 서명이 첨부되고, 상기 방송 콘텐츠와 함께 처리되는 애플리케이션을 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보를 상기 방송 콘텐츠로부터 취득하고, 상기 전자 서명을 검증하고, 적어도 상기 검증에 성공한 경우에, 상기 로케이션 정보를 기초로 상기 애플리케이션을 취득하는 것을 가능하게 하는 컨트롤러
    를 구비하고,
    애플리케이션 모드 정보가 애플리케이션 정보 테이블에 저장되고, 상기 애플리케이션 모드 정보는 제1 모드 또는 제2 모드를 나타내고, 상기 제1 모드는 방송 기능을 이용할 수 있는 방송 연동형 애플리케이션을 나타내고, 상기 제2 모드는 상기 방송 기능을 이용할 수 없는 방송 비연동형 애플리케이션을 나타내며,
    상기 컨트롤러는 상기 모드 정보가 상기 제1 모드 또는 상기 제2 모드를 나타내는지에 기초하여 상기 전자 서명의 검증이 요구되는지의 여부를 판정하도록 구성되어, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제1 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되지 않는 것으로 판정하고, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제2 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되는 것으로 판정하는, 정보 처리 장치.
  2. 제1항에 있어서,
    상기 애플리케이션 정보에는, 상기 애플리케이션으로부터 연산에 의해 구해진, 상기 애플리케이션을 대표하는 제1 대푯값이 저장되고,
    상기 컨트롤러는, 상기 취득된 애플리케이션에 대하여 상기 연산에 의해 상기 애플리케이션을 대표하는 제2 대푯값을 산출하고, 상기 제1 대푯값과 상기 제2 대푯값을 비교하여 상기 애플리케이션의 검증을 행하는, 정보 처리 장치.
  3. 제2항에 있어서,
    상기 애플리케이션 정보에는, 모드 정보가 저장되고,
    상기 컨트롤러는, 상기 애플리케이션 정보에 기술된 상기 모드 정보를 기초로, 상기 애플리케이션에 이용 가능한 기능을 제어하는, 정보 처리 장치.
  4. 제3항에 있어서,
    상기 컨트롤러는, 상기 애플리케이션 정보에 기술된 상기 모드 정보를 기초로, 상기 전자 서명의 검증의 필요 여부를 판정하는, 정보 처리 장치.
  5. 정보 처리 방법으로서,
    정보 처리 장치의 컨트롤러에 의해,
    전자 서명이 첨부되고, 방송 콘텐츠와 함께 처리되는 애플리케이션을 외부 서버로부터 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보 테이블을 방송 설비로부터 취득하는 단계와,
    상기 전자 서명을 검증하는 단계와,
    적어도 상기 검증에 성공한 경우에, 상기 로케이션 정보를 기초로 상기 애플리케이션을 네트워크를 통해 상기 외부 서버로부터 취득하는 단계
    를 포함하고,
    애플리케이션 모드 정보가 애플리케이션 정보 테이블에 저장되고, 상기 애플리케이션 모드 정보는 제1 모드 또는 제2 모드를 나타내고, 상기 제1 모드는 방송 기능을 이용할 수 있는 방송 연동형 애플리케이션을 나타내고, 상기 제2 모드는 상기 방송 기능을 이용할 수 없는 방송 비연동형 애플리케이션을 나타내며,
    상기 방법은, 상기 컨트롤러에 의해, 상기 모드 정보가 상기 제1 모드 또는 상기 제2 모드를 나타내는지에 기초하여 상기 전자 서명의 검증이 요구되는지의 여부를 판정하는 단계를 더 포함하여, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제1 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되지 않는 것으로 판정하고, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제2 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되는 것으로 판정하는, 정보 처리 방법.
  6. 제5항에 있어서,
    상기 애플리케이션 정보에는, 상기 애플리케이션으로부터 연산에 의해 구해진, 상기 애플리케이션을 대표하는 제1 대푯값이 저장되고,
    상기 컨트롤러는, 상기 취득된 애플리케이션에 대하여 상기 연산에 의해 상기 애플리케이션을 대표하는 제2 대푯값을 산출하고, 상기 제1 대푯값과 상기 제2 대푯값을 비교하여 상기 애플리케이션의 검증을 행하는, 정보 처리 방법.
  7. 제6항에 있어서,
    상기 애플리케이션 정보에는, 모드 정보가 저장되고,
    상기 컨트롤러는, 상기 애플리케이션 정보에 기술된 상기 모드 정보를 기초로, 상기 애플리케이션에 이용 가능한 기능을 제어하는, 정보 처리 방법.
  8. 제7항에 있어서,
    상기 컨트롤러는, 상기 애플리케이션 정보에 기술된 상기 모드 정보를 기초로, 상기 전자 서명의 검증의 필요 여부를 판정하는, 정보 처리 방법.
  9. 컴퓨터 판독가능 기록 매체로서,
    방송 콘텐츠를 수신하고 처리하도록 구성된 방송 콘텐츠 처리부와,
    네트워크를 통해 외부 서버와 통신하기 위한 통신 인터페이스와,
    전자 서명이 첨부되고, 상기 방송 콘텐츠와 함께 처리되는 애플리케이션을 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보를 상기 방송 콘텐츠로부터 취득하고, 상기 전자 서명을 검증하고, 적어도 상기 검증에 성공한 경우에, 상기 로케이션 정보를 기초로 상기 애플리케이션을 취득하는 것을 가능하게 하는 컨트롤러로서 컴퓨터를 기능시키는 프로그램을 저장하고,
    애플리케이션 모드 정보가 애플리케이션 정보 테이블에 저장되고, 상기 애플리케이션 모드 정보는 제1 모드 또는 제2 모드를 나타내고, 상기 제1 모드는 방송 기능을 이용할 수 있는 방송 연동형 애플리케이션을 나타내고, 상기 제2 모드는 상기 방송 기능을 이용할 수 없는 방송 비연동형 애플리케이션을 나타내며,
    상기 컨트롤러는 상기 모드 정보가 상기 제1 모드 또는 상기 제2 모드를 나타내는지에 기초하여 상기 전자 서명의 검증이 요구되는지의 여부를 판정하도록 구성되어, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제1 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되지 않는 것으로 판정하고, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제2 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되는 것으로 판정하는, 컴퓨터 판독가능 기록 매체.
  10. 제1항 내지 제4항 중 어느 한 항의 정보 처리 장치를 포함하는 텔레비전 장치.
  11. 제1항 내지 제4항 중 어느 한 항의 정보 처리 장치를 포함하고, 상기 정보 처리 장치는 퍼스널 컴퓨터, 휴대 전화, 스마트폰, 게임기, 태블릿 단말기, 오디오-비디오 재생 기기 중 하나인 장치.
  12. 정보 처리 장치로서,
    방송 설비로부터, 방송 콘텐츠 및 애플리케이션 정보 테이블의 정보를 갖는 방송 신호를 수신하기 위한 방송 인터페이스와,
    상기 수신된 방송 신호로부터 상기 애플리케이션 정보 테이블의 상기 정보를 취득하기 위한 디멀티플렉서와,
    인터넷 네트워크를 통해 외부 서버와 통신하기 위한 통신 인터페이스와,
    (i) 애플리케이션이 저장되는 상기 외부 서버 내의 로케이션을 나타내는 로케이션 정보를 상기 애플리케이션 정보 테이블의 상기 정보로부터 취득하고, (ii) 상기 애플리케이션 정보 테이블의 상기 정보와 함께 제공되는 전자 서명을 검증하고, (iii) 상기 전자 서명의 검증이 성공적일 때 상기 로케이션 정보에 기초하여 상기 인터넷 네트워크를 통해 상기 외부 서버로부터 상기 애플리케이션을 취득하기 위한 컨트롤러
    를 포함하고,
    애플리케이션 모드 정보가 애플리케이션 정보 테이블에 저장되고, 상기 애플리케이션 모드 정보는 제1 모드 또는 제2 모드를 나타내고, 상기 제1 모드는 방송 기능을 이용할 수 있는 방송 연동형 애플리케이션을 나타내고, 상기 제2 모드는 상기 방송 기능을 이용할 수 없는 방송 비연동형 애플리케이션을 나타내며,
    상기 컨트롤러는 상기 모드 정보가 상기 제1 모드 또는 상기 제2 모드를 나타내는지에 기초하여 상기 전자 서명의 검증이 요구되는지의 여부를 판정하도록 구성되어, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제1 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되지 않는 것으로 판정하고, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제2 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되는 것으로 판정하는, 정보 처리 장치.
  13. 제12항에 있어서,
    상기 애플리케이션 정보에는, 상기 애플리케이션으로부터 연산에 의해 구해진, 상기 애플리케이션을 대표하는 제1 대푯값이 저장되고,
    상기 컨트롤러는, 상기 취득된 애플리케이션에 대하여 상기 연산에 의해 상기 애플리케이션을 대표하는 제2 대푯값을 산출하고, 상기 제1 대푯값과 상기 제2 대푯값을 비교하여 상기 애플리케이션의 검증을 행하는, 정보 처리 장치.
  14. 제13항에 있어서,
    상기 애플리케이션 정보에는, 모드 정보가 저장되고,
    상기 컨트롤러는, 상기 애플리케이션 정보에 기술된 상기 모드 정보를 기초로, 상기 애플리케이션에 이용 가능한 기능을 제어하는, 정보 처리 장치.
  15. 제14항에 있어서,
    상기 컨트롤러는, 상기 애플리케이션 정보에 기술된 상기 모드 정보를 기초로, 상기 전자 서명의 검증의 필요 여부를 판정하는, 정보 처리 장치.
  16. 제12항 내지 제15항 중 어느 한 항의 정보 처리 장치를 포함하는 텔레비전 장치.
  17. 제12항 내지 제15항 중 어느 한 항의 정보 처리 장치를 포함하고, 상기 정보 처리 장치는 퍼스널 컴퓨터, 휴대 전화, 스마트폰, 게임기, 태블릿 단말기, 오디오-비디오 재생 기기 중 하나인 장치.
  18. 정보 처리 방법으로서,
    방송 콘텐츠를 수신하고 처리하는 단계와,
    네트워크를 통해 외부 서버와 통신하는 단계와,
    전자 서명이 첨부되고, 상기 방송 콘텐츠와 함께 처리되는 애플리케이션을 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보를 상기 방송 콘텐츠로부터 취득하고, 상기 전자 서명을 검증하고, 적어도 상기 검증에 성공한 경우에, 상기 로케이션 정보를 기초로 상기 애플리케이션을 취득하는 단계
    를 포함하고,
    애플리케이션 모드 정보가 애플리케이션 정보 테이블에 저장되고, 상기 애플리케이션 모드 정보는 제1 모드 또는 제2 모드를 나타내고, 상기 제1 모드는 방송 기능을 이용할 수 있는 방송 연동형 애플리케이션을 나타내고, 상기 제2 모드는 상기 방송 기능을 이용할 수 없는 방송 비연동형 애플리케이션을 나타내며,
    상기 방법은, 상기 모드 정보가 상기 제1 모드 또는 상기 제2 모드를 나타내는지에 기초하여 상기 전자 서명의 검증이 요구되는지의 여부를 판정하여, 상기 애플리케이션 모드 정보가 상기 제1 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되지 않는 것으로 판정하고, 상기 애플리케이션 모드 정보가 상기 제2 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되는 것으로 판정하는 단계를 더 포함하는, 정보 처리 방법.
  19. 제18항에 있어서,
    상기 애플리케이션 정보에는, 상기 애플리케이션으로부터 연산에 의해 구해진, 상기 애플리케이션을 대표하는 제1 대푯값이 저장되고,
    상기 방법은, 상기 취득된 애플리케이션에 대하여 상기 연산에 의해 상기 애플리케이션을 대표하는 제2 대푯값을 산출하고, 상기 제1 대푯값과 상기 제2 대푯값을 비교하여 상기 애플리케이션의 검증을 행하는 단계를 더 포함하는, 정보 처리 방법.
  20. 제19항에 있어서,
    상기 애플리케이션 정보에는, 모드 정보가 저장되고,
    상기 방법은, 상기 애플리케이션 정보에 기술된 상기 모드 정보를 기초로, 상기 애플리케이션에 이용 가능한 기능을 제어하는 단계를 더 포함하는, 정보 처리 방법.
  21. 제20항에 있어서,
    상기 애플리케이션 정보에 기술된 상기 모드 정보를 기초로, 상기 전자 서명의 검증의 필요 여부를 판정하는 단계를 더 포함하는, 정보 처리 방법.
  22. 컴퓨터 판독가능 기록 매체로서,
    전자 서명이 첨부되고, 방송 콘텐츠와 함께 처리되는 애플리케이션을 외부 서버로부터 취득하기 위해 필요한 로케이션 정보가 저장된 애플리케이션 정보 테이블을 방송 설비로부터 취득하고, 상기 전자 서명을 검증하고, 적어도 상기 검증에 성공한 경우에, 상기 로케이션 정보를 기초로 상기 애플리케이션을 네트워크를 통해 상기 외부 서버로부터 취득하는 컨트롤러로서 컴퓨터를 기능시키는 프로그램을 저장하고,
    애플리케이션 모드 정보가 애플리케이션 정보 테이블에 저장되고, 상기 애플리케이션 모드 정보는 제1 모드 또는 제2 모드를 나타내고, 상기 제1 모드는 방송 기능을 이용할 수 있는 방송 연동형 애플리케이션을 나타내고, 상기 제2 모드는 상기 방송 기능을 이용할 수 없는 방송 비연동형 애플리케이션을 나타내며,
    상기 컨트롤러는 상기 모드 정보가 상기 제1 모드 또는 상기 제2 모드를 나타내는지에 기초하여 상기 전자 서명의 검증이 요구되는지의 여부를 판정하도록 구성되어, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제1 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되지 않는 것으로 판정하고, 상기 컨트롤러는 상기 애플리케이션 모드 정보가 상기 제2 모드를 나타낼 때 상기 전자 서명의 상기 검증이 요구되는 것으로 판정하는, 컴퓨터 판독가능 기록 매체.
KR1020147015869A 2011-12-21 2012-11-08 정보 처리 장치, 서버 장치, 정보 처리 방법, 서버 처리 방법 및 프로그램 KR102066299B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011279850 2011-12-21
JPJP-P-2011-279850 2011-12-21
PCT/JP2012/007172 WO2013094110A1 (ja) 2011-12-21 2012-11-08 情報処理装置、サーバ装置、情報処理方法、サーバ処理方法およびプログラム

Publications (2)

Publication Number Publication Date
KR20140103115A KR20140103115A (ko) 2014-08-25
KR102066299B1 true KR102066299B1 (ko) 2020-01-14

Family

ID=48668030

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147015869A KR102066299B1 (ko) 2011-12-21 2012-11-08 정보 처리 장치, 서버 장치, 정보 처리 방법, 서버 처리 방법 및 프로그램

Country Status (9)

Country Link
US (1) US9723376B2 (ko)
EP (1) EP2797023B1 (ko)
JP (2) JPWO2013094110A1 (ko)
KR (1) KR102066299B1 (ko)
CN (1) CN103988210B (ko)
BR (1) BR112014014585A8 (ko)
IN (1) IN2014MN00981A (ko)
RU (1) RU2602355C2 (ko)
WO (1) WO2013094110A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5857636B2 (ja) * 2011-11-02 2016-02-10 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
KR20140029049A (ko) * 2012-08-31 2014-03-10 삼성전자주식회사 디스플레이 장치 및 이를 이용한 입력 신호 처리 방법
KR102447792B1 (ko) 2013-07-10 2022-09-27 소니그룹주식회사 수신 장치, 수신 방법 및 송신 방법
JP6418162B2 (ja) * 2013-09-30 2018-11-07 ソニー株式会社 受信装置および受信方法
JPWO2015076178A1 (ja) * 2013-11-21 2017-03-16 シャープ株式会社 ウェブアプリケーションアクセス制御システム
JP6213197B2 (ja) 2013-12-05 2017-10-18 ソニー株式会社 情報処理装置および受信方法
JP6328045B2 (ja) * 2014-12-11 2018-05-23 東芝メモリ株式会社 メモリデバイス
GB2538934A (en) * 2015-01-28 2016-12-07 British Broadcasting Corp Broadcasting data in MPEG transport streams
GB2535146B (en) * 2015-02-03 2019-07-24 Samsung Electronics Co Ltd Broadcast application security
WO2016126023A1 (en) 2015-02-03 2016-08-11 Samsung Electronics Co., Ltd. Broadcast apparatus and method of authenticating broadcast data
US10820041B2 (en) * 2015-07-23 2020-10-27 Saturn Licensing Llc Reception apparatus, transmission apparatus and data processing method
EP3343938A4 (en) * 2015-08-28 2019-03-13 Sony Corporation RECEIVING DEVICE, TRANSMISSION DEVICE, AND DATA PROCESSING METHOD
JPWO2017122554A1 (ja) * 2016-01-15 2018-11-01 ソニー株式会社 受信装置、送信装置、及び、データ処理方法
EP3494707B1 (en) * 2016-08-04 2022-06-01 SmarDTV S.A. Method and device for checking authenticity of a hbbtv related application
JP6663892B2 (ja) * 2017-09-19 2020-03-13 ソニー株式会社 送信システム及び送信方法
JP6766918B2 (ja) * 2019-05-13 2020-10-14 ソニー株式会社 受信装置および受信方法
JP6984709B2 (ja) * 2019-05-13 2021-12-22 ソニーグループ株式会社 受信装置および受信方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030217369A1 (en) * 2002-05-17 2003-11-20 Heredia Edwin Arturo Flexible application information formulation
US20050138401A1 (en) * 2003-12-18 2005-06-23 Matsushita Electric Industrial Co., Ltd. Program data file storage method and authenticated program execution method
US20050257059A1 (en) 2001-05-23 2005-11-17 Thomson Licensing S.A. Signing and authentication devices and processes and corresponding products, notably for dvb/mpeg mhp digital streams
US20110138164A1 (en) 2009-12-04 2011-06-09 Lg Electronics Inc. Digital broadcast receiver and booting method of digital broadcast receiver

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2825209A1 (fr) 2001-05-23 2002-11-29 Thomson Licensing Sa Dispositifs et procede de securisation et d'identification de messages
US20030023770A1 (en) * 2001-07-26 2003-01-30 Barmettler James W. Automated software driver installation
JP3880384B2 (ja) * 2001-12-06 2007-02-14 松下電器産業株式会社 Icカード
CA2486937C (en) * 2002-05-22 2011-09-13 Thomson Licensing S.A. Signing and authentication devices and processes and corresponding products, notably for dvb/mpeg mhp digital streams
US20070140650A1 (en) 2005-12-19 2007-06-21 Matsushita Electric Industrial Co., Ltd. Broadcast receiving apparatus
US9674869B2 (en) * 2006-03-20 2017-06-06 Qualcomm Incorporated Apparatus and method for fast access in a wireless communication system
KR20080022805A (ko) 2006-09-07 2008-03-12 엘지전자 주식회사 데이터 방송 신호를 처리하는 방법 및 수신하는 장치
US9071414B2 (en) * 2007-03-23 2015-06-30 Qualcomm Incorporated Method and apparatus for distinguishing broadcast messages in wireless signals
JP2010004498A (ja) * 2008-06-23 2010-01-07 Panasonic Corp コンテンツ表示装置およびコンテンツ表示方法
WO2011013303A1 (ja) 2009-07-30 2011-02-03 パナソニック株式会社 受信データ認証方法及びデジタル放送受信機
JP5965723B2 (ja) * 2011-05-19 2016-08-10 日本放送協会 受信機

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050257059A1 (en) 2001-05-23 2005-11-17 Thomson Licensing S.A. Signing and authentication devices and processes and corresponding products, notably for dvb/mpeg mhp digital streams
US20030217369A1 (en) * 2002-05-17 2003-11-20 Heredia Edwin Arturo Flexible application information formulation
US20050138401A1 (en) * 2003-12-18 2005-06-23 Matsushita Electric Industrial Co., Ltd. Program data file storage method and authenticated program execution method
US20110138164A1 (en) 2009-12-04 2011-06-09 Lg Electronics Inc. Digital broadcast receiver and booting method of digital broadcast receiver

Also Published As

Publication number Publication date
JP6456426B2 (ja) 2019-01-23
RU2602355C2 (ru) 2016-11-20
BR112014014585A8 (pt) 2017-07-04
EP2797023A1 (en) 2014-10-29
EP2797023A4 (en) 2015-06-10
CN103988210B (zh) 2018-04-03
RU2014124119A (ru) 2015-12-20
CN103988210A (zh) 2014-08-13
US20140331250A1 (en) 2014-11-06
WO2013094110A1 (ja) 2013-06-27
US9723376B2 (en) 2017-08-01
JP2017158195A (ja) 2017-09-07
KR20140103115A (ko) 2014-08-25
JPWO2013094110A1 (ja) 2015-04-27
IN2014MN00981A (ko) 2015-04-24
BR112014014585A2 (pt) 2017-06-13
EP2797023B1 (en) 2022-04-06

Similar Documents

Publication Publication Date Title
KR102066299B1 (ko) 정보 처리 장치, 서버 장치, 정보 처리 방법, 서버 처리 방법 및 프로그램
JP7110166B2 (ja) 送信装置、送信方法、受信装置及び受信方法
JP5983741B2 (ja) 情報処理装置、情報処理方法およびプログラム
US20200128302A1 (en) Information processing apparatus, broadcast apparatus, and receiving method
US20150188929A1 (en) Signature validation information transmission method, information processing apparatus, information processing method, and broadcast delivery apparatus
US10798449B2 (en) Information processing apparatus and information processing method for validating an application
US11012747B2 (en) Controlling an operation of an application based on application information table
JP7334772B2 (ja) 情報処理装置及び受信方法
JP6984709B2 (ja) 受信装置および受信方法
JP6766918B2 (ja) 受信装置および受信方法
JP2024074819A (ja) 情報処理装置、情報処理方法、プログラムおよびサーバ装置
JP6663892B2 (ja) 送信システム及び送信方法

Legal Events

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