KR100725782B1 - 방송 콘텐츠 보호 시스템 및 방법 - Google Patents

방송 콘텐츠 보호 시스템 및 방법 Download PDF

Info

Publication number
KR100725782B1
KR100725782B1 KR1020050109781A KR20050109781A KR100725782B1 KR 100725782 B1 KR100725782 B1 KR 100725782B1 KR 1020050109781 A KR1020050109781 A KR 1020050109781A KR 20050109781 A KR20050109781 A KR 20050109781A KR 100725782 B1 KR100725782 B1 KR 100725782B1
Authority
KR
South Korea
Prior art keywords
key
information
packet
channel
time
Prior art date
Application number
KR1020050109781A
Other languages
English (en)
Other versions
KR20070052120A (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 한국전자통신연구원
Priority to KR1020050109781A priority Critical patent/KR100725782B1/ko
Publication of KR20070052120A publication Critical patent/KR20070052120A/ko
Application granted granted Critical
Publication of KR100725782B1 publication Critical patent/KR100725782B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • 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 or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • 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/4343Extraction or processing of packetized elementary streams [PES]
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • H04N21/43853Multiplex stream processing, e.g. multiplex stream decrypting involving multiplex stream decryption
    • H04N21/43856Multiplex stream processing, e.g. multiplex stream decrypting involving multiplex stream decryption by partial decryption, e.g. decrypting a multiplex stream that has been partially encrypted
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 방송 콘텐츠 보호 시스템 및 방법에 관한 것으로서, MPEG-2 TS 형식의 원본 동영상을 스트리밍 패킷 형태로 수신하고, 수신한 스트리밍 패킷을 해석하여 각 방송 채널별로 동영상을 실시간으로 암호화한 후에 이를 다시 멀티캐스트로 전송하는 실시간 암호화 서버; 보호된 동영상을 복호화하는데 필요한 키를 관리하며, 보호된 동영상 스트림 재생 장치로부터의 키 정보 요청시 암호화된 미디어 데이터를 복호화하기 위한 키 정보를 보호된 동영상 스트림 재생 장치로 전송하는 키 발급 서버; 상기 키 발급 서버에서 수신한 키 정보를 이용하여 상기 실시간 암호화 서버로부터 스트리밍으로 전송된 보호된 형태의 동영상을 실시간으로 복호화하는 보호된 동영상 스트림 재생 장치를 포함하여 구성함으로써, 멀티캐스트 방식으로 스트리밍 서비스되는 방송 콘텐츠 보호시스템에 있어서 암호화 키의 잦은 변경에도 복호화 키 발급 서버의 과부하나 서비스의 지연을 최소화 하면서 기존의 스트리밍 시스템에 영향을 주지 않고 방송 콘텐츠를 보호할 수 있는 효과가 있다.
MPEG-2 TS(Transport Stream), DRM, 스트리밍, 불법 복제, 콘텐츠 보호

Description

방송 콘텐츠 보호 시스템 및 방법{BROADCASTING CONTENT PROTECTION SYSTEM AND METHOD}
도 1은 본 발명에 따른 방송 콘텐츠 보호 시스템의 일실시예 구성도,
도 2는 본 발명에 따른 실시간 암호화 서버의 구성도,
도 3은 본 발명에 따른 키 발급 서버의 구성도,
도 4는 본 발명에 따른 보호된 동영상 스트림 재생 장치의 구성도,
도 5는 본 발명에 이용되는 키 테이블의 구성도.
<도면의 주요부분에 대한 부호의 설명>
10 : 실시간 암호화 서버
20 : 키 발급 서버
30 : 보호된 동영상 스트림 재생 장치
본 발명은 스트리밍 서비스되는 방송 콘텐츠 보호 시스템 및 방법에 관한 것 으로, 더욱 상세하게는 MPEG-2 TS(Transport Stream) 형식으로된 동영상의 멀티캐스트 스트리밍을 이용한 방송 서비스 환경에서 방송 콘텐츠의 불법 저장 및 불법 복제를 통한 콘텐츠의 불법적인 사용 및 유통을 막기 위한 방송 콘텐츠 보호 시스템 및 방법에 관한 것이다.
MPEG-2는 1994년 ISO 13818로 규격화한 영상압축 기술로 이는 디지털 TV, DVD 등과 같이 높은 화질과 음질을 필요로 하는 동영상을 위하여 MPEG-1을 개선한 것이다. MPEG-2 TS(Transport Stream)는 스트리밍에 적합하도록 MPEG-2 시스템을 다중화하는 방식으로 네트워크상의 오류를 고려하여 188바이트의 비교적 작은 크기의 패킷에 MPEG-2 데이터를 실어 보낸다.
디지털 정보는 제작과 유통이 용이하므로 디지털화된 동영상의 제작이 증가하고 있다. 그러나 디지털 콘텐츠는 복제, 변형, 유포 등이 용이하고 안전하지 않은 인터넷을 통해 유통되고 있어 보안과 저작권 문제가 중요한 쟁점으로 대두되고 있다. 이러한 문제점은 특히 사용자의 PC에 저장되어 재생되는 동영상에서 주로 발생하였으며, 종래에는 사용자의 PC에 저장된 동영상 파일의 보호를 위해 동영상 파일의 전체를 암호화한 후 암호화된 콘텐츠를 사용자의 로컬 시스템에 다운로드 하고, 적법한 사용자에게만 암호화된 동영상 파일을 복호화 할 수 있는 정보를 제공하는 방법을 사용하였다.
한편, 스트리밍(Streaming)은 로컬 시스템에 콘텐츠를 저장하지 않고 실시간으로 데이터를 전송하여 재생이 가능하도록 하는 기술로 주로, 대용량 동영상 콘텐 츠의 경우 주문형 비디오와 같은 방식으로 스트리밍을 통하여 서비스를 하는 것이 보편적이다. 통상, 사용자의 PC에 저장되어 재생되는 동영상에 비하여 스트리밍 서비스를 통하여 재생되는 동영상은 사용자의 PC에 저장되지 않도록 함으로써 불법 복제 등의 문제를 어느 정도 해결하였지만, 근래 스트리밍을 통하여 서비스되는 동영상을 저장할 수 있는 캡처 프로그램이 등장하면서 스트리밍을 통하여 서비스되는 동영상에 대한 보호 방안도 필요하게 되었다. 하지만, 종래에는 스트리밍 동영상에 대한 보호를 위하여 ID/PW를 이용한 사용자 인증 위주의 보안대책을 주로 사용하였으나, 콘텐츠에 대한 암호화를 통한 보호 방법의 경우 특정 스트리밍 포맷에 특화된 방법으로 범용으로 이용하기 힘들었다.
가장 통상적인 유형의 스트리밍 방식은 유니캐스트 통신, 즉 하나의 송신자가 다수의 수신자들에게 데이터를 전송하기 위해서는 각각의 수신자들에게 동일한 데이터를 반복적으로 보내야 하기 때문에 송신자 노드의 자원과 네트워크 대역폭의 낭비를 초래한다. 이러한 문제점을 해결하기 위한 IP 멀티캐스트 기술은 송신자와 수신자 사이에 존재하는 멀티캐스트 라우터들간의 데이터 경로(멀티캐스트 데이터 전달 경로)에 따라 중복적인 데이터가 발생하지 않도록 한다. IP 멀티캐스트 메커니즘을 사용하기 위해선 수신자들이 미리 IGMP를 통하여 특정 그룹에 가입하고, 송신자는 각각의 수신자들의 주소가 아닌 그룹 주소로 데이터를 전송한다. 이 데이터는 IP 멀티캐스트 라우터들간에 멀티캐스트 라우팅 프로토콜에 의해 구성된 데이터 경로에 따라 그룹에 가입한 모든 수신자들에게 도착할 때 까지 복사 후 전달하는 과정을 반복한다. 최종적으로 그룹에 가입한 수신자를 가지고 있는 에지 멀티캐스 트 라우터는 자신의 서브넷에 멀티캐스트 데이터를 브로드캐스팅한다. 이러한 과정을 통해 IP 멀티캐스트 메커니즘은 그룹에 참여하고 있는 수신자들의 수에 상관없이, 송신 노드의 자원과 망 대역을 모두 효율적으로 사용할 수 있는 방법이다.
멀티캐스트 스트리밍되는 방송 콘텐츠를 보호하기 위한 일반적인 방안은 방송 채널을 암호화 하여 전송하고, 방송 채널이 바뀔 때 마다 이를 복호화 하는데 필요한 정보를 별도의 서버에서 라이센스라는 형식으로 사용자에게 발급하는 방식을 이용한다. 그러나, 이러한 방식을 사용할 경우에는 콘텐츠를 암호화 하는데 이용된 암호화 키가 변경되었을 경우, 많은 수의 사용자가 변경된 복호화 키를 제공받기 위해 라이센스 발급 서버에 한꺼번에 몰리게 되어 서버의 과부하 및 서비스의 지연을 발생하게 한다. 또한 기존의 스트리밍 서버와 독립적으로 콘텐츠 보호 시스템을 적용할 수 있어야 한다.
따라서, 멀티캐스트 방식으로 스트리밍 서비스 되는 방송 콘텐츠의 보호 시스템에 있어서 암호화 키의 잦은 변경에도 복호화 키 발급 서버(20)의 과부하나 서비스의 지연을 최소화 하면서 기존의 스트리밍 시스템에 영향을 주지 않고 쉽게 적용 가능한 방송 콘텐츠 보호 방안이 절실히 요구된다.
따라서, 본 발명은 상기한 종래 기술의 문제점을 해결하기 위해 이루어진 것으로서, 본 발명의 목적은 멀티캐스트 스트리밍을 이용한 방송 서비스 환경에서 방송 콘텐츠의 불법 저장으로부터 콘텐츠를 보호하기 위하여, 방송 콘텐츠를 서비스 하는 서버측에서는 암호화 기술을 적용하여 스트리밍되는 동영상을 실시간으로 암호화(보호된 동영상 스트림 생성)하여 서비스하고, 방송을 시청하는 클라이언트측에서는 보호된 동영상 스트림을 실시간으로 복호화(보호된 동영상 스트림 재생)하여 재생하는 방송 콘텐츠 보호 시스템 및 방법을 제공하는데 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 MPEG-2 TS 형식의 동영상 파일을 이용한 방송 서비스 환경에서 방송 콘텐츠 보호 시스템 및 방법은, MPEG-2 TS 형식의 원본 동영상을 스트리밍 패킷 형태로 수신하고, 수신한 스트리밍 패킷을 해석하여 각 방송 채널별로 동영상을 실시간으로 암호화한 후에 이를 다시 멀티캐스트로 전송하는 실시간 암호화 서버(10); 보호된 동영상을 복호화하는데 필요한 키를 관리하며, 보호된 동영상 스트림 재생 장치로부터의 키 발급 요청시 암호화된 미디어 데이터를 복호화하기 위한 키 정보를 보호된 동영상 스트림 재생 장치(30)로 전송하는 키 발급 서버(20); 상기 키 발급 서버(20)에서 수신한 키 정보를 이용하여 상기 실시간 암호화 서버(10)로부터 스트리밍으로 전송된 보호된 형태의 동영상을 실시간으로 복호화하는 보호된 동영상 스트림 재생 장치(30)를 포함하여 이루어진 것을 특징으로 한다.
이하, 본 발명의 MPEG-2 TS 형식의 동영상을 파일을 이용한 방송 서비스 환경에서 방송 콘텐츠 보호 시스템 및 방법에 대하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명에 따른 방송 콘텐츠 보호 시스템의 일실시예 구성도로서, 방송 콘텐츠를 보호하면서 방송 서비스를 하는 본 발명의 전체 시스템 구성을 나타낸다.
도 1에 도시된 것을 살펴보면, 스트리밍 서버는 MPEG-2 TS 형식의 동영상 파일이나 카메라로부터 입력되는 동영상 라이브 스트림을 각 방송 채널별로 원본 동영상 멀티캐스트 주소를 이용하여 실시간 암호화 서버(10)로 스트리밍한다. 이때 사용하는 멀티캐스트 주소는 스트리밍 서버에서 전송되는 스트리밍 패킷을 실시간 암호화 서버(10)에서만 수신할 수 있도록 스트리밍 서버와 실시간 암호화 서버(10)와 사이에 내부적으로 미리 협의된 멀티캐스트 주소를 의미한다.
실시간 암호화 서버(10)는 스트리밍 서버에서 전송되는 스트리밍 패킷을 수신하여 각 방송 채널별로 스트리밍 패킷을 구분하고 암호화 키 정보를 이용해 실시간으로 암호화 한다. 암호화된 스트리밍 패킷은 방송 채널별로 암호화된 동영상 멀티캐스트 주소로 재전송 된다. 이때 사용하는 멀티캐스트 주소는 방송을 시청하는 사용자가 방송 서비스를 요청할 때 이용하는 주소가 된다. 스트리밍 패킷을 해석하고 암호화하여 재전송하는 일련의 작업은 응용 계층(application layer)이 아닌 커널 계층(kernel layer)에서 수행된다. 또한 실시간 암호화 서버(10)는 암호화할 때 이용한 키 정보와 현재 시간 정보를 키 발급 서버(20)에 전송하여 이 정보를 키 발급 서버(20)와 동기화 하고 키 테이블이 변경되면 해당 채널의 채널 ID와 키 테이블의 버전 정보를 콘텐츠 서비스 서버에 전달한다.
키 발급 서버(20)는 실시간 암호화 서버(10)에서 전송된 키 정보를 관리하며, 보호된 동영상 스트림 재생 장치(30)에서 보호된 동영상을 복호화하는데 필요한 키 정보 발급 요청시 키 정보를 발급해 주고 이는 동영상의 복호화에 쓰인다. 또한 보호된 동영상 스트림 재생 장치(30)에서 시간 동기 요청이 들어오면 현재 시간을 전송하여 키 발급 서버(20)와 보호된 동영상 스트림 재생 장치(30)의 현재 시간을 동기화 한다.
콘텐츠 서비스 서버는 사용자가 방송 서비스를 받기 위해 접속하는 웹 서버로 웹 페이지에서는 현재 서비스 되고 있는 방송 채널의 목록이나 방송 편성표, 방송 프로그램에 대한 정보를 제공한다. 사용자가 웹 페이지에서 시청할 방송 채널을 선택하면 콘텐츠 서비스 서버는 사용자가 스트리밍 서비스를 받기 위해 필요한 정보인 해당 채널의 채널 ID, 멀티캐스트 주소, 해당 채널을 암호화 할 때 이용한 키 테이블의 버전 정보, 키 발급 서버(20)의 주소 등을 보호된 동영상 스트림 재생 장치(30)로 전달한다. 콘텐츠 서비스 서버는 이 정보가 바뀔 때 마다 웹 페이지를 수정하여 설정하거나 데이터베이스 형태로 자동 관리하면서 사용자가 방송 채널을 선택할 때 마다 데이터베이스해서 해당채널에 대한 정보를 추출하여 사용자에게 전달 할 수 있고 전달 방법 또한 웹 프로토콜인 HTTP를 그대로 이용하거나 별도의 방법을 이용 하는 등 별도로 정의하지 않는다.
보호된 동영상 스트림 재생 장치(30)는 콘텐츠 서비스 서버로부터 수신한 방송 채널의 암호화된 동영상 멀티캐스트 주소에 접속하여 실시간 암호화 서버(10)에서 전송하는 암호화된 동영상 스트림을 수신하고, 키 발급 서버(20)의 주소에 접속 하여 해당 채널에 대한 키 정보를 요청하여 수신한다. 수신된 키 정보를 이용하여 암호화된 동영상 스트림을 실시간으로 복호화하고 복호화된 동영상 스트림은 디코더를 통해 재생된다.
기존의 방송 콘텐츠 서비스 시스템에 콘텐츠 보호 방법을 쉽게 적용할 수 있도록 본원발명은 스트리밍 서버에서 원본 콘텐츠가 스트리밍 된 후 이 스트리밍 패킷을 실시간으로 암호화하여 재전송하는 구조로 되어 있다. 스트리밍 서버에서 송출된 후 암호화가 수행되므로 기존의 스트리밍 시스템과 독립적으로 적용이 가능하다. 또한 실시간 암호화 서버(10)에서는 응용 계층이 아닌 커널 계층에서 스트리밍 패킷을 실시간으로 암호화하여 재전송함으로써 암호화로 인한 지연시간을 최소화하고 암호화 후의 데이터 사이즈도 암호화 전과 동일하므로 데이터 비트율에 영향을 주지 않는다.
도 2는 본 발명에 따른 실시간 암호화 서버(10)의 구성도이다. 본 발명의 실시간 암호화 서버(10)는 암호화에 이용할 키, 각 키가 암호화에 이용될 시간을 계산할 때 필요한 기준시간(base time)을 생성하고, 생성된 키, 기준시간, 키의 변경 주기 정보를 이용해 키 테이블과 키 테이블의 버전 정보를 생성하는 암호화 정보 생성부(103); 암호화 정보 생성부(103)에서 생성된 키 테이블의 변경 주기 및 키 테이블에 포함된 키의 변경 주기를 입력할 수 있는 인터페이스를 제공하고 키 테이블의 변경 주기를 체크하여 키를 생성하도록 암호화 정보 생성부(103)에 요청하는 키 테이블 관리부(104); 키 테이블 새로 생성시 키 발급 서버(20)에 변경된 키 테 이블, 키 테이블의 버전 정보를 전송하여 실시간 암호화 서버(10)와 키 발급 서버(20)에서 관리하는 키 테이블과 키 테이블의 버전 정보를 동기화하고 암호화에 사용할 키 테이블이 변경되어 키 테이블의 버전 정보가 바뀔 경우 키 테이블의 버전 정보를 콘텐츠 서비스 서버에 전달하는 키 테이블 동기화부(102); 시간 동기화 프로토콜을 이용해 키 발급 서버(20)의 시간 동기화부(201)와 주기적으로 현재 시간을 동기화 하고 현재시간을 암호화 정보 생성부(103)에 보내주는 시간 동기화부(101); 서비스할 방송 채널에 대한 정보로 스트리밍 서버에서 원본 동영상을 스트리밍할 때 이용하는 원본 동영상 멀티캐스트 주소(IP와 Port 정보)와 암호화된 동영상을 멀티캐스트로 전송할 때 이용할 암호화된 동영상 멀티캐스트 주소, 그리고 채널 ID 정보를 입력할 수 있는 인터페이스를 제공하고 입력된 채널정보를 관리하는 채널 정보 관리부(105); 스트리밍 서버로부터 송출되는 원본 스트리밍 패킷을 수신하여 스트리밍 패킷에 포함된 IP, Port 정보와 채널 정보 관리부(105)로부터 수신 받은 채널 ID, 원본 동영상 멀티캐스트 주소를 이용해 방송 채널별로 스트리밍 패킷을 구분하여 채널 암호화부(107)에 전달하는 스트리밍 패킷 분석부(106); 및 상기 스트리밍 패킷 분석부(106)에서 전달 받은 스트리밍 패킷에서 TS 스트림을 추출하고, 이 TS 스트림에서 TS 패킷단위로 동영상 데이터를 포함하는 TS 패킷의 유료부하 부분만을 암호화한 후 채널 정보 관리부(105)에서 수신 받은 채널 ID, 암호화된 동영상 멀티캐스트 주소를 이용하여 멀티캐스트 방식으로 재전송하는 채널 암호화부(107)를 포함한다.
다음은 본 발명에 따른 실시간 암호화 서버(10)에서 수신된 스트리밍 패킷을 실시간으로 암호화하는 과정이다. A, B, C, D, E 과정은 스트리밍 패킷을 암호화하기 전에 미리 실행되거나 암호화 과정과는 별도로 이벤트가 발생시 수행되어야 하는 과정들이며, 1)부터 6)까지의 과정은 실시간 암호화 서버(10)에 원본 동영상의 패킷이 수신될 때 마다 반복적으로 수행되는 암호화 과정이다.
A. 채널정보 관리부에는 채널에 대한 정보인 원본 동영상의 멀티캐스트 주소와 암호화된 동영상의 멀티캐스트 주소, 채널 ID 정보가 입력되어 있다.
B. 키 테이블 관리부(104)에는 각 채널에 대한 키 테이블의 변경 주기 및 키 의 변경 주기에 대한 정보가 입력되어 있다.
C. 실시간 암호화 서버(10)의 시간 동기화부(101)는 현재 시간 정보를 키 발급 서버(20)의 시간 동기화부(201)에 전송하여 주기적으로 동기화 한다.
D. 실시간 암호화 서버(10)의 키 테이블 동기화부(102)는 각 채널에서 현재 암호화에 이용할 현재 키 테이블과 다음에 사용할 다음 키 테이블을 생성하고 생성된 키 테이블과 키 테이블의 버전 정보를 키 발급 서버(20)의 키 정보 관리부(203)에 전송하여 키 발급 서버(20)와 키 테이블 정보를 동기화 한다.
E. 현재 암호화에 이용할 키 테이블의 버전이 변경되면 키 테이블의 버전 정보를 콘텐츠 서비스 서버에 전송 한다.
1) 스트리밍 서버로부터 수신받은 원본 동영상의 스트리밍 패킷에서 IP와 Port 정보를 추출하여 상기 단계 A에서 입력되어 있는 채널 정보 중 원본 동영상 멀티캐스트 주소와 비교하여 해당되는 채널로 스트리밍 패킷을 분류한다.
2) 분류된 스트리밍 패킷에서 TS 스트림을 추출하고, 이 TS 스트림에서 TS 패킷 단위로 읽어서 PID(Program ID)값이 '0'인지 확인하여 PAT(Program Association Table) 정보를 담고 있는 TS 패킷을 찾는다. PAT 정보를 담고 있는 TS 패킷이 나올 때까지 다음 TS 패킷을 읽는다. PAT 정보를 담고 있는 TS 패킷을 찾으면 PMT(Program Map Table) 정보를 담고 있는 TS 패킷의 PID값을 추출한다.
3) 다음 TS 패킷을 읽어서 PMT 패킷의 PID를 갖는 TS 패킷을 찾는다. PMT 정보를 담고 있는 TS 패킷이 나올 때까지 다음 TS 패킷을 읽는다. PMT 정보를 담고 있는 TS 패킷을 찾으면 PMT에서 비디오 데이터를 담고 있는 TS 패킷의 PID값과 오디오 데이터를 담고 있는 TS 패킷의 PID값을 추출한다.
4) 다음 TS 패킷을 읽어서 비디오 또는 오디오 데이터를 담고 있는 TS 패킷의 PID인지 확인한다. 비디오 또는 오디오 TS 패킷이면 TS 패킷의 헤더를 제외한 유료부하 부분만 암호화 하고 헤더의 scrambling control bit값을 '11'로 설정한다. 비디오 또는 오디오 TS 패킷이 아니면 암호화 하지 않는다.
5) 상기 단계 A에서 입력되어 있는 채널 정보 중 현재 처리하고 있는 채널의 암호화된 동영상 멀티캐스트 주소로 스트리밍 패킷의 IP와 Port 정보를 설정하고 멀티캐스트 방식으로 스트리밍 패킷을 재전송한다.
도 3은 본 발명에 따른 키 발급 서버(20)의 구성도이다. 본 발명의 키 발급 서버(20)는 시간 동기화 프로토콜을 이용해 주기적으로 실시간 암호화 서버(10)의 시간 동기화부(101)에 현재 시간을 요청, 수신하여 실시간 암호화 서버(10)와 키 발급 서버(20)의 현재시간을 동기화하고, 보호된 동영상 스트림 재생 장치(30)로부터 현재 시간 요청시 상기 보호된 동영상 스트림 재생 장치(30)의 시간 동기화부(301)에 현재 시간을 전송하는 시간 동기화부(201); 실시간 암호화 서버(10)의 키 테이블 동기화부(102)로부터 전송된 키 테이블과 키 테이블 버전 정보, 기준시간 정보를 각 방송 채널별로 저장소(204)(하드디스크, 메모리 등 물리적인 저장 공간)에 저장, 관리하는 키 정보 관리부(203); 상기 보호된 동영상 스트림 재생 장치(30)로부터 특정 채널에 대한 키 발급 요청이 들어오면 상기 시간 동기화부로(201)부터 전달받은 현재 시간, 상기 키 정보 관리부(203)로부터 전달 받은 해당 채널의 채널 ID, 키 테이블과 기준시간 정보를 이용해 키 정보를 생성하여 보호된 동영상 스트림 재생 장치(30)에 전달하는 키 정보 생성부(201)를 포함한다.
도 4는 본 발명에 따른 보호된 동영상 스트림 재생 장치(30)의 구성도이다. 본 발명의 보호된 동영상 스트림 재생 장치(30)는 전원을 켜거나 또는 설정된 시간마다 주기적으로 시간 동기화 프로토콜을 이용해 키 발급 서버(20)의 시간 동기화부(201)에 현재 시간을 요청하여 키 발급 서버(20)와 보호된 동영상 스트림 재생 장치(30)의 현재 시간을 동기화하고, 키 발급 서버(20)로부터 키 정보 수신시 여기에 포함된 현재 시간 정보를 이용해 키 발급 서버(20)와 보호된 동영상 스트림 재생 장치(30)의 현재시간을 동기화하는 시간 동기화부(301); 콘텐츠 서비스 서버로 부터 방송 채널을 시청하기 위해 필요한 정보인 방송 채널의 멀티캐스트 접속 주소, 채널 ID, 키 테이블 버전 정보, 키 발급 서버(20) 주소를 수신하는 콘텐츠 서비스 정보 처리부(303); 콘텐츠 서비스 서버로부터 채널 ID, 키 테이블 버전 정보, 키 발급 서버(20) 주소를 수신 받고, 상기 수신 받은 채널 ID를 이용해 해당 채널의 키 정보가 저장소(304)에 저장되어 있는지 여부, 상기 수신 받은 현재 키 테이블의 버전 정보를 이용해 저장소(304)에 저장되어 있는 현재 키 테이블의 버전 정보의 일치 여부를 확인하고, 키 발급 서버(20)에 해당 채널에 대한 키 정보를 요청, 수신하고 이 키 정보를 저장소(304)에 저장하는 키 정보 처리부(302); 상기 콘텐츠 서비스 정보 처리부(303)로부터 암호화 동영상 멀티캐스트 주소를 수신하고, 해당 채널의 암호화된 동영상 멀티캐스트 주소로 접속하여 멀티캐스트 스트리밍 패킷을 수신한후 이를 TS 스트림으로 조합하는 스트리밍 클라이언트(305); 상기 스트라밍 클라이언트로부터 수신한 암호화된 TS 스트림을 저장소(304)로부터 수신한 키 정보를 이용하여 TS 패킷 단위로 복호화를 수행하는 패킷 복호화부(306); 보호된 동영상 스트림 재생 장치(30)의 고유 식별 정보, 인증서, 키 발급 서버(20)로부터 수신한 키 정보(채널 ID, 키 테이블 버전 정보, 키 테이블, 기준시간)을 저장하는 저장소(304)를 포함한다. 상기 보호된 동영상 스트림 재생 장치(30)에서 키 테이블, 기준시간 등 키 정보 및 기타 정보가 저장되는 저장소(304)는 메모리, 하드 디스크, 스마트카드 등 물리적 저장매체가 될 수 있다.
본 발명에 따른 보호된 동영상 스트림 재생 장치(30)에서 암호화된 스트리밍 패킷을 복호화하는 과정은 다음과 같다.
1) 보호된 동영상 스트림 재생 장치(30)가 설치된 사용자 장치(PC 또는 셋톱박스 등)의 전원을 켜면 시간 동기화 프로토콜을 통해 키 발급 서버(20)로부터 현재 시간을 요청하고 수신하여 사용자 장치의 현재 시간을 동기화 하는 단계;
2) 사용자가 시청할 방송 채널을 선택하고 콘텐츠 서비스 서버로부터 해당 채널의 멀티캐스트 주소, 채널 ID, 현재 키 테이블의 버전 정보, 키 발급 서버(20)의 주소를 수신하는 단계;
3) 수신된 채널 ID를 이용해 해당 채널의 키 정보가 저장소(304)에 저장되어 있는지 확인하는 단계;
4) 해당 채널의 키 정보가 저장되어 있다면 콘텐츠 서비스 서버로부터 수신된 현재 키 테이블의 버전 정보와 저장소(304)에 저장된 키 테이블의 버전 정보가 동일한지 확인하는 단계;
5-a-1) 해당 채널에 대한 키 정보가 저장되어 있지 않거나 키 테이블의 버전 정보가 일치하지 않으면 콘텐츠 서비스 서버로부터 수신된 키 발급 서버(20)의 주소에 접속하여 키 정보를 요청, 수신하는 단계;
5-a-2) 키 발급 서버(20)로부터 수신된 키 정보에서 채널 ID를 이용해 요청한 채널에 대한 키 정보가 맞는지, 현재 복호화에 사용할 키 테이블의 버전 정보와 일치하는지 확인하여 키 정보를 추출하여 저장소(304)에 저장하는 단계;
5-b) 해당 채널에 대한 키 정보가 저장되어 있고 키 테이블의 버전 정보가 일치하면 단계 6)을 실행하는 단계;
6) 콘텐츠 서비스 서버로부터 수신된 해당 채널의 암호화된 동영상 멀티캐스트 주소에 접속하여 스트리밍 패킷을 수신하고 TS 스트림으로 조합하는 단계;
7) 키 테이블의 키 적용시간을 체크하여 복호화에 적용할 키를 설정하는 단계;
8) TS 스트림을 TS 패킷 단위로 읽어서 TS 패킷 헤더의 scrambling control bit 필드 값이 '11'로 설정되어 있는지 확인하는 단계;
9-a) scrambling control bit 필드 값이 '11'로 설정되어 있으면 TS 패킷의 유료부하를 복호화 하고 scrambling control bit 필드 값을 '00'으로 다시 설정하고 다음 TS 패킷을 처리하기 위해 단계 7)부터 다시 실행하는 단계;
9-b) scrambling control bit 필드 값이 '11'로 설정되어 있지 않으면 복호화를 수행하지 않고 다음 TS 패킷을 처리하기 위해 단계 7)부터 다시 실행하는 단계;
로 구성된다.
보호된 동영상 스트림 재생 장치(30)의 스트리밍 패킷을 복호화 하는 과정에서 키 테이블 내의 여러 키 중 복호화에 사용할 키를 선택하고 키가 적용되어야 할 시간에 따라 키를 동기화하는 방법은 다음과 같다. 현재 키 테이블에서 인덱스 순서로 '기준시간 + 키 적용시간'값을 계산하여 이 값이 현재 시간보다 더 큰 값이 나올 때 까지 찾는다. 만일 '기준시간 + 키 적용시간' 값이 현재 시간보다 크면 해당 인덱스의 키를 현재 복호화할 때 이용할 키로 설정한 후 복호화를 수행한다. TS 패킷을 복호화 할 때마다 시간을 비교하여 만일'기준시간 + 키 적용시간'값이 현재 시간과 같아지게 되면 다음 인덱스에 해당하는 키를 복호화키로 설정한다.
while(TS 패킷) {
// 현재 키 테이블에서
for(i=0; i< 최대 인덱스 값; i++) {
if(기준시간 + 키 적용시간[i] > 현재시간) {
키[i]를 복호화 키로 설정;
break;
}
else continue;
}
if(현재 키 테이블에 조건을 만족하는 키가 없으면) {
// 다음 키 테이블에서
for(i=0; i< 최대 인덱스 값; i++) {
if(기준시간 + 키 적용시간[i] > 현재시간) {
키[i]를 복호화 키로 설정;
break;
}
else continue;
}
}
if(다음 키 테이블에 조건을 만족하는 키가 없으면) {
return 에러 발생;
}
패킷 복호화 수행;
}
}
도 5는 본 발명에 이용되는 키 테이블의 구성도이다. 키 발급 서버(20)에서 발급되는 키 정보는 채널 ID, 현재시간 정보, 현재(current) 키 테이블의 버전 정보, 현재 키 테이블, 현재 키 테이블의 기준시간, 다음(next) 키 테이블의 버전 정보, 다음 키 테이블, 다음 키 테이블의 기준시간 으로 구성된다. 상기 채널 ID는 요청한 채널에 대한 정보가 맞는지 확인할 때 이용하고 현재 시간 정보는 키 정보를 수신한 보호된 동영상 스트림 재생 장치(30)의 현재 시간을 키 발급 서버(20)의 현재 시간과 동기화 할 때 이용한다. 키 테이블의 버전 정보는 복호화할 때 이용할 키 테이블의 버전이 맞는지 확인할 경우와 방송 채널 선택시 해당 방송 채널에 대한 키 테이블이 저장소(304)에 저장되어 있는지 확인할 때 이용된다. 기준시간 정보는 키 테이블에 포함되어 있는 여러 키 들 중 복호화에 적용되는 시간을 계산할 때 이용한다. 키 발급 서버(20)에서 생성하는 키 정보에는 현재 복호화할 때 이용 될 현재 키 테이블과 현재 사용 중인 키 테이블의 변경 주기가 되어 다음에 이용할 다음 키 테이블을 포함하고 있다. 이렇게 함으로써 채널 시청 중 키 테이블을 변경해야 할 때 키 발급 서버(20)로부터 키 정보를 다시 발급 받아야 하는 과정 없이 바로 다음 키 테이블로 변경이 가능하다. 키 정보를 구성하는 상기 키 테이블은 인덱스, 키, 키 적용시간으로 구성되어 있다. 상기 키 테이블에서 인덱스는 키의 일련번호이고, 키는 복호화시 이용되는 것이며, 키 적용시간은 기준시간과 함께 키 테이블 내의 키가 복호화시 적용되는 시간을 계산할 때 이용된다. 이때 상기 키 적용시간에 따라 복호화시 이용할 키 값을 변경하게 된다.
이상에서 몇 가지 실시예를 들어 본 발명을 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것이 아니고 본 발명의 기술 사상을 벗어나지 않는 범위 내에서 다양하게 변형실시될 수 있다.
상술한 바와 같이, 본 발명에 의한 MPEG-2 TS 형식의 동영상 파일을 이용한 방송 서비스 환경에서 방송 콘텐츠 보호 시스템 및 방법은, MPEG-2 TS 형태의 동영상을 멀티캐스트 스트리밍 전송을 이용한 방송 서비스 환경에서 기존의 스트리밍 서버에 영향을 주지 않고 MPEG-2 TS 패킷의 유료부하만을 암호화하여 보호하고, 전송된 동영상을 복호화 하기 위해 필요한 키 정보를 한꺼번에 전송하여 클라이언트에서 키 동기화 방법에 의해 복호화시 적용함으로써 빈번히 변경되는 키 정보를 발 급받기 위해 키 발급 서버(20)에 대한 접속 집중과 이로 인한 서버의 과부하 문제를 해결하고, 서비스의 지연이 발생하지 않도록 하는 효과가 있다.
또한, 키 발급 요청을 위해 키 발급 서버(20)에 대한 접속 집중과 이로 인한 서버의 과부하 문제가 해결됨으로써 동영상 콘텐츠를 암호화 하는데 이용하는 키를 자주 변경 가능하게 하여 콘텐츠에 대한 보안 레벨을 높이는 효과가 있다.
또한, 본 발명을 이용하면 기존의 스트리밍 서비스 환경을 그대로 유지하면서 동영상 파일을 보호할 수 있으므로, 저비용으로 저작권을 보호할 수 있는 효과가 있다.

Claims (12)

  1. MPEG-2 TS 형식으로된 동영상 파일의 멀티캐스트 스트리밍을 이용한 방송 콘텐츠 보호 시스템에 있어서,
    MPEG-2 TS 형식의 원본 동영상을 스트리밍 패킷 형태로 수신하고, 수신한 스트리밍 패킷을 해석하여 각 방송 채널별로 동영상을 실시간으로 암호화한 후에 이를 다시 멀티캐스트로 전송하는 실시간 암호화 서버(10);
    보호된 동영상을 복호화하는데 필요한 키를 관리하며, 보호된 동영상 스트림 재생 장치(30)로부터의 키 발급 요청시 암호화된 미디어 데이터를 복호화하기 위한 키 정보를 보호된 동영상 스트림 재생 장치(30)로 전송하는 키 발급 서버(20);
    상기 키 발급 서버(20)에서 수신한 키 정보를 이용하여 상기 실시간 암호화 서버(10)로부터 스트리밍으로 전송된 보호된 형태의 동영상을 실시간으로 복호화하는 보호된 동영상 스트림 재생 장치(30)를 포함하고,
    상기 키 발급 서버(20)는 시간 동기화 프로토콜을 이용해 주기적으로 상기 실시간 암호화 서버(10)에 현재시간을 요청, 수신하여 상기 실시간 암호화 서버(10)와 현재시간을 동기화하고, 상기 보호된 동영상 스트림 재생 장치(30)로부터 현재시간 요청이 들어오면 현재시간을 전송하는 시간 동기화부(202);
    각 방송 채널에 대해 상기 실시간 암호화 서버(10)로부터 전송되는 키 테이블과 키 테이블 버전 정보, 기준시간 정보를 관리하는 키 정보 관리부(203);
    상기 보호된 동영상 스트림 재생 장치(30)로부터 특정 채널에 대한 키 발급 요청이 들어오면 현재시간, 상기 특정 채널의 채널 ID, 현재 키 테이블, 현재 키 테이블의 버전 정보, 현재 키 테이블의 기준시간 정보, 다음(next) 키 테이블, 다음 키 테이블의 버전 정보, 다음 키 테이블의 기준시간 정보를 이용해 키 정보를 생성하여 상기 보호된 동영상 스트림 재생 장치(30)에 전달하는 키 정보 생성부(201)를 포함하여 이루어지는 것을 특징으로 하는 방송 콘텐츠 보호 시스템.
  2. 제 1항에 있어서,
    실시간 암호화 서버(10)는 암호화에 이용할 키, 각 키가 암호화에 이용될 시간을 계산할 때 필요한 기준시간(base time)을 생성하고, 생성된 키, 기준시간, 키의 변경 주기 정보를 이용해 키 테이블과 키 테이블의 버전 정보를 생성하는 암호 화 정보 생성부(103);
    암호화 정보 생성부(103)에서 생성된 키 테이블의 변경 주기 및 키 테이블에 포함된 키의 변경 주기를 입력할 수 있는 인터페이스를 제공하고 키 테이블의 변경 주기를 체크하여 키를 생성하도록 암호화 정보 생성부(103)에 요청하는 키 테이블 관리부(104);
    키 테이블 새로 생성시 키 발급 서버(20)에 변경된 키 테이블, 키 테이블의 버전 정보를 전송하여 실시간 암호화 서버(10)와 키 발급 서버(20)에서 관리하는 키 테이블과 키 테이블의 버전 정보를 동기화하고 암호화에 사용할 키 테이블이 변경되어 키 테이블의 버전 정보가 바뀔 경우 키 테이블의 버전 정보를 콘텐츠 서비스 서버에 전달하는 키 테이블 동기화부(102);
    시간 동기화 프로토콜을 이용해 키 발급 서버(20)의 시간 동기화부(202)와 주기적으로 현재 시간을 동기화 하고 현재시간을 암호화 정보 생성부(103)에 보내주는 시간 동기화부(101);
    서비스할 방송 채널에 대한 정보로 스트리밍 서버에서 원본 동영상을 스트리밍할 때 이용하는 원본 동영상 멀티캐스트 주소(IP와 Port 정보)와 암호화된 동영상을 멀티캐스트로 전송할 때 이용할 암호화된 동영상 멀티캐스트 주소, 그리고 채널 ID 정보를 입력할 수 있는 인터페이스를 제공하고 입력된 채널정보를 관리하는 채널 정보 관리부(105);
    스트리밍 서버로부터 송출되는 원본 스트리밍 패킷을 수신하여 스트리밍 패킷에 포함된 IP, Port 정보와 채널 정보 관리부(105)로부터 수신 받은 채널 ID, 원 본 동영상 멀티캐스트 주소를 이용해 방송 채널별로 스트리밍 패킷을 구분하여 채널 암호화부(107)에 전달하는 스트리밍 패킷 분석부(106);
    및 상기 스트리밍 패킷 분석부(106)에서 전달 받은 스트리밍 패킷에서 TS 스트림을 추출하고, 이 TS 스트림에서 TS 패킷단위로 동영상 데이터를 포함하는 TS 패킷의 유료부하 부분만을 암호화한 후 채널 정보 관리부(105)에서 수신 받은 채널 ID, 암호화된 동영상 멀티캐스트 주소를 이용하여 멀티캐스트 방식으로 재전송하는 채널 암호화부(107)를 포함하는 것을 특징으로 하는 방송 콘텐츠 보호 시스템.
  3. 삭제
  4. 제 1항에 있어서,
    보호된 동영상 스트림 재생 장치(30)는 전원을 켜거나 또는 설정된 시간마다 주기적으로 시간 동기화 프로토콜을 이용해 키 발급 서버(20)에 현재 시간을 요청하여 키 발급 서버(20)와 보호된 동영상 스트림 재생 장치(30)의 현재 시간을 동기화하고, 키 발급 서버(20)로부터 키 정보 수신시 여기에 포함된 현재 시간 정보를 이용해 키 발급 서버(20)와 보호된 동영상 스트림 재생 장치(30)의 현재시간을 동기화하는 시간 동기화부(301);
    콘텐츠 서비스 서버로부터 방송 채널을 시청하기 위해 필요한 정보인 방송 채널의 멀티캐스트 접속 주소, 채널 ID, 현재 키 테이블의 버전 정보, 키 발급 서버(20)의 주소를 수신하는 콘텐츠 서비스 정보 처리부(303);
    채널 ID를 이용해 해당 채널의 키 정보가 저장소(304)에 저장되어 있는지, 현재 키 테이블의 버전 정보를 이용해 저장소(304)에 저장되어 있는 현재 키 테이블의 버전 정보가 일치하는지 확인하고, 키 발급 서버(20)에 해당 채널에 대한 키 정보를 요청, 수신하고 이 키 정보를 저장소(304)에 저장하는 키 정보 처리부(302);
    해당 채널의 암호화된 동영상 멀티캐스트 주소로 접속하여 멀티캐스트 스트리밍 패킷을 수신하고 TS 스트림으로 조합하는 스트리밍 클라이언트(305);
    키 테이블의 키를 이용해 TS 스트림을 TS 패킷 단위로 복호화를 수행하는 패킷 복호화부(306);
    보호된 동영상 스트림 재생 장치(30)의 고유 식별 정보, 인증서, 키 발급 서버(20)로부터 수신한 키 정보 등을 저장하는 저장소(304)를 포함하는 것을 특징으로 하는 방송 콘텐츠 보호 시스템.
  5. 제 1항 또는 제 4항에 있어서,
    사용자에게 서비스하는 방송 채널에 대한 목록 및 정보를 보여주고, 사용자가 원하는 방송 채널 선택시 스트리밍 서비스를 받기위해 필요한 정보를 보호된 동영상 스트림 재생 장치(30)로 전송하는 콘텐츠 서비스 서버를 부가한 것을 특징으로 하는 방송 콘텐츠 보호 시스템.
  6. 스트리밍 서버로부터 송출된 원본 동영상의 스트리밍 패킷을 수신하고, 수신된 스트리밍 패킷에서 IP와 port 정보를 추출한 후 원본 동영상 멀티캐스트 주소와 비교하여 채널별로 스트리밍 패킷을 분류하는 스트리밍 패킷 분류단계;
    분류된 스트리밍 패킷에서 TS 스트림을 추출한 후, TS 스트림에서 암호화에 필요한 PMT 패킷의 PID와 비디오,오디오 패킷의 PID를 분류하여 검출하는 PID 검출단계;
    검출된 PID를 PMT 패킷의 PID와 비디오,오디오 패킷의 PID를 분류하여 암호화하는 암호화 처리 단계;
    현재 처리하고 있는 채널의 암호화된 동영상 멀티캐스트 주소로 스트리밍 패킷의 IP와 Port정보를 설정하고 멀티캐스트 방식으로 스트리밍을 재전송하는 스트리밍 패킷 전송 단계;
    사용자가 원하는 방송 채널을 선택시 필요한 해당 채널의 멀티캐스트 주소, 채널 ID, 현재 키 테이블의 버전 정보, 키 발급 서버(20)의 주소를 포함하는 콘텐츠 서비스 정보를 콘텐츠 서비스 서버로 요청하여 수신하고, 수신한 채널 ID를 이용해 해당 채널의 키 정보가 저장소(304)에 저장되어 있는지, 저장된 키 테이블의 버전 정보가 수신된 현재 키 테이블의 버전 정보와 동일한지 확인하고, 해당 채널에 대한 키 정보가 저장되어 있지 않거나 키 테이블의 버전 정보가 일치하지 않으면 수신된 키 발급 서버(20)의 주소를 이용해 키 발급 서버(20)에 접속하여 키 정보를 요청, 수신하고, 수신된 키 정보에서 채널 ID를 이용해 요청한 채널에 대한 키 정보가 맞는지, 현재 키 테이블의 버전 정보와 일치하는지 확인 후 키 정보를 추출하여 저장소(304)에 저장하고, 키 테이블의 키 적용시간을 체크하여 복호화에 적용할 키를 설정하는 키 정보 설정 단계; 및
    암호화된 멀티캐스트 주소에 접속하여 스트리밍 패킷을 수신하고 TS 패킷 헤더의 scambling control bit 필드 값에 따라 분류하여 복호화하는 복호화 처리 단계를 포함하는 것을 특징으로 하는 방송 콘텐츠 보호 방법.
  7. 제 6항에 있어서,
    PID 검출 단계는 분류된 스트리밍 패킷에서 TS 스트림을 추출하고, 이 TS 스트림에서 TS 패킷 단위로 읽어서 PID(Program ID)값이 '0'인지 확인하여 PAT(Program Association Table) 정보를 담고 있는 TS 패킷을 찾는 단계;
    상기 PAT 정보를 담고 있는 TS 패킷이 나올 때까지 다음 TS 패킷을 읽는 단계;
    상기 PAT 정보를 담고 있는 TS 패킷을 찾으면 PMT(Program Map Table) 정보를 담고 있는 TS 패킷의 PID 값을 추출하고, 다음 TS 패킷을 읽어서 PMT 패킷의 PID를 갖는 TS 패킷을 찾는 단계;
    상기 PMT 정보를 담고 있는 TS 패킷을 찾으면 PMT에서 비디오 데이터를 담고 있는 TS 패킷의 PID 값과 오디오 데이터를 담고 있는 TS 패킷의 PID 값을 추출하는 단계를 포함하여 이루어지는 것을 특징으로 하는 방송 콘테츠 보호 방법.
  8. 제 6항 또는 제 7항에 있어서,
    암호화 처리 단계는 다음 TS 패킷을 읽어서 비디오 또는 오디오 데이터를 담고 있는 TS 패킷의 PID인지 확인하여, 비디오 또는 오디오 TS 패킷이면 TS 패킷의 헤더를 제외한 유료부하 부분만 암호화하고 헤더의 scrambling control bit값을 '11'로 설정하며 비디오 또는 오디오 TS 패킷이 아니면 암호화 하지 않는 것을 특징으로 하는 방송 콘텐츠 보호 방법.
  9. 제 8항에 있어서,
    복호화 처리 단계는 해당 채널의 암호화된 동영상 멀티캐스트 주소에 접속하여 스트리밍 패킷을 수신하고 TS 스트림으로 조합하여 이것을 TS 패킷 단위로 읽어서 TS 패킷 헤더의 scrambling control bit 필드 값이 '11'로 설정되어 있는지 확인하여, scrambling control bit 필드 값이 '11'로 설정되어 있지 않으면 복호화를 수행하지 않고, scrambling control bit 필드 값이 '11'로 설정되어 있으면 TS 패킷의 유료부하를 복호화 하고 scrambling control bit 필드 값을 '00'으로 다시 설정하고 다음 TS 패킷을 처리하는 것을 특징으로 하는 방송 콘텐츠 보호 방법.
  10. 삭제
  11. 삭제
  12. 제 9항에 있어서,
    복호화 처리 단계에서 복호화시 키 테이블 내의 여러 키들 중 복호화에 사용할 키를 선택하고 키가 적용되어야 할 시간에 따라 키를 동기화하는 방법은
    (1) 현재 키 테이블에서 인덱스 순서로 '기준시간 + 키 적용시간'값을 계산하여 이 값이 현재 시간보다 더 큰 값이 나올 때 까지 찾는 단계;
    (2) 만일 '기준시간 + 키 적용시간' 값이 현재 시간보다 크면 해당 인덱스의 키를 현재 복호화할 때 이용할 키로 설정하는 단계;
    (3) 만일 '기준시간 + 키 적용시간'값이 현재 시간과 같아지게 되면 다음 인덱스에 해당하는 키를 복호화키로 설정하는 단계;
    (4) 복호화를 수행하고 TS 패킷이 입력될 때 마다 다시 단계 (1)부터 반복하는 단계를 포함하는 것을 특징으로 하는 방송 콘텐츠 보호 방법.
KR1020050109781A 2005-11-16 2005-11-16 방송 콘텐츠 보호 시스템 및 방법 KR100725782B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050109781A KR100725782B1 (ko) 2005-11-16 2005-11-16 방송 콘텐츠 보호 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050109781A KR100725782B1 (ko) 2005-11-16 2005-11-16 방송 콘텐츠 보호 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20070052120A KR20070052120A (ko) 2007-05-21
KR100725782B1 true KR100725782B1 (ko) 2007-06-08

Family

ID=38274961

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050109781A KR100725782B1 (ko) 2005-11-16 2005-11-16 방송 콘텐츠 보호 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR100725782B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117560231A (zh) * 2024-01-12 2024-02-13 安徽科大擎天科技有限公司 一种视频流安全传输方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020019668A (ko) * 2000-09-06 2002-03-13 변희철 웹서버 시스템, 스트리밍서버 시스템 및 그 파일 제공방법
KR20040028092A (ko) * 2002-09-28 2004-04-03 주식회사 케이티 스트리밍 데이터 보호 장치 및 그 방법과 그를 이용한스트리밍 보안 시스템
KR20040083686A (ko) * 2003-03-24 2004-10-06 주식회사 마크애니 스트리밍 컨텐츠의 제공 방법 및 장치
KR20050043473A (ko) * 2003-11-06 2005-05-11 한국전자통신연구원 스트리밍 서비스되는 에이에스에프 파일의 보호장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020019668A (ko) * 2000-09-06 2002-03-13 변희철 웹서버 시스템, 스트리밍서버 시스템 및 그 파일 제공방법
KR20040028092A (ko) * 2002-09-28 2004-04-03 주식회사 케이티 스트리밍 데이터 보호 장치 및 그 방법과 그를 이용한스트리밍 보안 시스템
KR20040083686A (ko) * 2003-03-24 2004-10-06 주식회사 마크애니 스트리밍 컨텐츠의 제공 방법 및 장치
KR20050043473A (ko) * 2003-11-06 2005-05-11 한국전자통신연구원 스트리밍 서비스되는 에이에스에프 파일의 보호장치 및 방법

Also Published As

Publication number Publication date
KR20070052120A (ko) 2007-05-21

Similar Documents

Publication Publication Date Title
CA2590000C (en) Method for transmitting digital data in a local network
KR20060064469A (ko) 멀티캐스트 방식으로 스트리밍 서비스되는 동영상 파일의보호 장치 및 그 방법
US20070124252A1 (en) Reception device, transmission device, security module, and digital right management system
KR101660065B1 (ko) 스크램블링 및 워터마킹 기술을 사용한 멀티캐스트 시청각 프로그램의 기록된 복제본의 안정된 공유를 위한 장치 및 방법
US8782688B2 (en) Process and system for the secure broadcasting of protected audiovisual streams to a dynamic group of receivers
US20040199771A1 (en) Method for tracing a security breach in highly distributed content
KR20130085926A (ko) Hls 기반 보안 처리 시스템 및 그 방법
TWI452888B (zh) 記錄的多媒體內容之保護方法
KR20050117526A (ko) 디지털 권리 관리용 콘텐츠 이용 실적 수집을 위한 시스템 및 방법
KR101705010B1 (ko) 스트림에서의 레코딩가능한 콘텐트의 프로세싱
KR20060044745A (ko) 공통 스크램블링 방법
KR20110004333A (ko) 스트림에서의 레코딩가능한 콘텐트의 프로세싱
JP4666015B2 (ja) コンテンツ配信システム、コンテンツ受信端末、及びコンテンツ配信方法
US20080298580A1 (en) Content delivery server and content delivery system
US10440409B2 (en) Method and device allowing an access control system to be applied to the protection of streamed video
JP2004294474A (ja) コンテンツ提供システム、方法およびプログラム
KR101005844B1 (ko) 메모리 카드 기반의 ts 패킷 처리를 위한 수신 제한 시스템
KR100725782B1 (ko) 방송 콘텐츠 보호 시스템 및 방법
US10489559B2 (en) Method for providing protected multimedia content
KR100635128B1 (ko) 아이에스오 베이스 미디어 파일 형식의 암호화된 동영상파일 생성 장치 및 암호화된 동영상 복원 장치와, 그 복원방법
JP2009077073A (ja) 映像配信システムおよび映像配信方法
KR100860003B1 (ko) H.264 형식의 동영상 방송프로그램 보호 장치 및 방법
KR100728242B1 (ko) 스트리밍 서비스되는 동영상 파일의 보호 시스템 및 그의보호 동영상 생성/재생 장치 및 그 방법
US20090316051A1 (en) Moving picture distribution apparatus
KR101806006B1 (ko) 녹화 및 스트리밍 방송콘텐츠 접근제어 시스템과 그 운영방법

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
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20130424

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140430

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee