최근 방송의 디지털화가 진행되면서, 디지털 비디오 방송(DVB, Digital Video Broadcasting)과 디지털 오디오 방송(Digital Audio Broadcasting)과 같은 디지털 데이터 방송 서비스가 각광받고 있다. 디지털 데이터 방송 서비스에서 핵심이 되는 기술은 수신제한시스템(CAS, Conditional Access System)이다. CAS는 권한을 가진 가입자만이 방송 서비스를 이용할 수 있게 하는 시스템으로서, 수신가능 여부를 각각의 디지털 방송 수신기가 결정하도록 하는 일련의 과정을 의미한다. 수신제한시스템은 가입자가 서비스, 프로그램 및 이벤트에 접근할 수 있도록 제어한다. 방송 시스템에서 서비스, 프로그램 및 이벤트는 비디오, 오디오 및 데이터의 3가지 요소로 이루어진다. 이들 3가지 요소가 결합되어 이벤트를 형성한다. 방송장치의 제어하에 하나 이상의 이벤트의 결합이 프로그램을 형성한다. 서비스는 방송장치의 제어하에 스케줄에 따라 방송되는 일련의 프로그램이다.
CAS는 신호를 암호화하여 송신하는 송신측(CAS 서버, 'Head-End'라고도 함)와, 암호화된 신호를 수신하여 해독하는 수신측(CAS 클라이언트)으로 이루어진다. CAS 서버는 비디오, 오디오 및 데이터의 3가지 요소를 적절한 암호화 알고리즘으로 엔코딩하여 다중송신한다. 일반적으로 CAS 서버는 ECM 생성기(ECM Generator), EMM 생성기(EMM Generator), SMS(Subscriber Management System, 가입자 관리 시스템), TCS(Traffic Control System, 트래픽 제어 시스템), MUX(Multiplexer, 멀티플렉서)를 포함한다. ECM 생성기는 ECM(Entitlement Control Message, 자격 제어 메시지) 섹션(section)을 생성하고, CW(Control Word, 제어 워드)를 ECM 섹션으로 운반한다. SMS는 모든 가입자에 대한 상세한 정보를 저장하며, EMM 생성기를 통해 EMM(Entitlement Management Message, 자격 관리 메시지) 생성을 초기화한다. SCS(SimulCrypto Synchronizer)로부터의 요청에 따라, EMM 생성기는 EMM 섹션(section)을 생성하고 이것을 MUX로 전달한다. EMM는 CW의 암호화에 사용되는 서비스 키(Service Key)를 포함한다. EMM 생성기와 ECM 생성기의 출력 데이터는 암호화된다. CW로 스크램블된 A/V 방송 스트림은 EMM 및 ECM과 함께 CAS 클라이언트로 전송된다. CAS 클라이언트는 스마트 카드를 이용하여 EMM을 해독하여 서비스 키를 추출한다. 추출된 서비스 키를 이용하여 ECM은 해독되고 ECM 내의 CW가 추출된다. CW를 이용하여 방송 데이터가 해독된다.
종래에는 EMM 내의 서비스 키를 보낼 때, EMM은 많은 대역폭(bandwidth)을 차지하는 각 개인의 가입자에게 보내져야 한다. EMM 대역폭의 요구량은 가입자의 수에 비례하므로, 가입자 수가 증가함에 따라 보다 많은 대역폭이 요구되는데, 이는 송신측의 큰 부담으로 작용한다.
이하, 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.
도1을 참조하면, 수신제한시스템(10)은 유료 방송 시스템을 위한 것으로서, SMS(Subscriber Management System, 가입자 관리 시스템)(20), TCS(Traffic Control System, 트래픽 제어 시스템)(50), ECM 생성기(Entitlement Control Message Generator)(80), EMM 생성기(Entitlement Management Message Generator)(40), EIS(Event Information Scheduler, 이벤트 정보 스케쥴러)(60), CAS 데이터베이스(70), MUX(Multiplexer, 멀티플렉서)(99), 스크램블러 모듈(90)을 구비한다. 스크램블러 모듈(90)은 CW 생성기(92), 사이멀크립트 동기장치(SCS, SimulCrypt Synchronizer)(94)와, 스크램블러(scramber)(96)를 구비한다.
SMS(20)는 가입자 등록 정보 및 청구 정보와 같은 가입자 관리 정보를 감독하기 위한 시스템이다. SMS(20)는 가입, 계산 및 청구의 기능을 갖는 유료 방송 시스템에서 중심 시스템이다. 추가적으로, SMS(20)는 그룹 관리, 텍스트 메시지 명령 및 보안 명령과 같은 다른 기능도 갖는다. SMS(20)는 클라이언트이고 EMM 생성기(40)는 서버이다. SMS(20)로부터 명령어 메시지가 EMM 생성기(40)로 전달되고, EMM 생성기(40)로부터는 확인 메시지가 SMS(20)로 전달된다.
EMM 생성기(40)는 SMS 명령에 따라 EMM 섹션을 생성하는 장치이다. EMM 생성기(40)의 출력은 EMM 블록(Block)의 형태가 된다. EMM 블록은 유니크(unique)한 태그(tag)를 갖는다. EMM 생성기(40)는 수신제한시스템의 한명의 가입자 또는 그룹 또는 모든 가입자를 지정할 수 있다.
TCS(50)는 방송 시스템의 방송 스케줄을 관리하는 시스템이다. TCS(50)는 각 서비스 채널을 정해진 시간을 갖는 이벤트로 정의하고, 이벤트에 대한 작동 수단을 결정한다. TCS(50)는 각 이벤트의 정해진 시간 동안 접근 기준(access criteria)을 포함하는 ECM을 만들기 위해 각 서비스의 CAS 관련 이벤트 스케줄을 CAS 서버로 전달해야 한다. CAS 관련 이벤트 스케줄 정보는 CAS 제어 정보(접근 기준), PPV(Pay Per View) 정보, 및 특정 이벤트의 자녀 보호(Parental Control)이다. TCS(50)는 CAS 관련 이벤트 정보를 SIF(Schedule Information Format) 형식으로 조직한다.
EIS(60)는 TCS(50)와 CAS 데이터베이스(70) 사이를 연결하는 장치이다. EIS(60)는 SIF 형성 파일을 파스하고, 그 데이터를 CAS 데이터베이스(70)에 저장한다.
ECM 생성기(80)는 스크램블러 모듈(90)의 요청에 따라 특정 서비스에 대하여 ECM을 생성하는 장치이다. ECM 생성기(80)는 이벤트 스케줄 정보를 포함하는 CAS 데이터베이스(70)로부터 현 시점에 해당하는 서비스 이벤트를 검색한 후, 해당 이벤트를 위한 접근 기준을 생성한다. 스크램블러 모듈(90)의 CW 생성기(92)로부터 전달된 CW 및 생성된 접근 기준과 함께, ECM 생성기(80)는 ECM을 생성한 후 스크램블러 모듈(90)로 전달한다. 여기서, CW 생성기(92)로부터 전달된 CW는 모든 CAS 클라이언트를 위한 동일한 개인 키로 암호화되어 ECM의 생성에 사용되며, 모든 CAS 클라이언트를 위한 동일한 개인 키로 암호화된 CW는 ECM의 'CW Info' 필드(130, 130a)에 포함된다.
스크램블러 모듈(90)은 비디오/오디오/데이터 입력을 스크램블하여 보호하는 장치이다. 스크램블러 모듈(90)는 비디오, 오디오 및 데이터의 다양한 콘텐츠 형태를 지원하며 다양한 엔코딩 시스템과 멀티플렉서를 통합하고 협력하는 것이 가능하다. 스크램블러 모듈(90)은 CW 생성기(92), 동기장치(94)와, 스크램블러(96)를 구비한다. 또한 스크램블러 모듈(90)은 DVB 사이멀크립트 표준을 따르는 공유 스크램블러 기능을 제공하여, 하나 이상의 CAS로 통합함으로써 스크램블러(96)에서 CW로 스크램블된 비디오, 오디오 및 데이터를 ECM와 함께 CAS 클라이언트로 전송한다.
이제, 도1 내지 도5를 참조하여 상기 실시예의 작용을 상세히 설명한다.
SMS(20)는 XML 형식의 명령을 만들고, 이를 HTTP 요청을 통해 EMM 생성기(40)로 전달한다. EMM 생성기(40)는 요청을 처리하고 결과를 XML 형식으로 HTTP 응답을 통해 SMS(20)로 보낸다.
TCS(50)는 CAS 관련 이벤트 스케줄 정보를 SIF 형식으로 조직한다. EIS(60)는 SIF 파일을 다운로드하고 업로드 하기 위한 내부 버퍼(buffer)를 포함한다. EIS(60)는 업로드된 파일을 계속 체크하며, 성공적으로 수행되었을 때 EIS(60)는 SIF 정보를 CAS 데이터베이스(70)의 이벤트 스케쥴 정보로서 기록한다. 만일 받은 파일에 대한 체크 중에 에러가 발생할 경우, EIS(60)는 에러 로그 파일을 만들고 이를 에러 폴더에 저장한다.
ECM 생성기(80)와 스크램블러 모듈(90) 사이의 인터페이스(interface)는 DVB 사이멀크립트 포로토콜에 기반한다.
클라이언트인 EMM 생성기(40)와 서버인 ECM 생성기(80)는 도2에 도시한 바와 같이 연결 지향(connection-oriented) TLV(Type-Length-Value) 프로토콜을 사용한다. TCP 프로토콜은 DVB 사이멀크립트 표준에서 사용되는 바와 같이 데이터 제공 및 제어를 위해 사용된다.
SMS 요청이 EMM 생성기(40)에 전달되면, EMM 생성기(40)는 EMM 섹션을 생성하고, 이를 제어 데이터 프로토콜을 이용하여 ECM 생성기(80)로 전달한다. EMM 생성기(40)의 데이터를 수신하면, ECM 생성기(80)는 EMM 섹션을 큐 버퍼(queue buffer)에 저장하고, 도4에 도시된 바와 같이 SCS(94)의 요청에 따라 최초 수신 EMM 블록(150)을 ECM 섹션에 삽입한다. 만일 ECM 큐 버퍼에 둘 이상의 EMM 블록이 있다면, ECM 생성기(80)는 도5에 도시된 바와 같이 EMM 블록(150a)을 ECM 센션 내에 가능한 크기로 삽입한다. ECM 생성기(80)는 각 EMM의 발송/미발송 상태를 유지한다. SCS(94)의 다음 요청이 있으면, ECM 생성기(80)는 큐 버퍼로부터 발송 EMM 메시지를 삭제하고, ECM 섹션의 미발송 EMM 메시지를 발송한다. 에러 메시지를 접수하면, ECM 생성기(80)는 이미 발송한 메시지의 상태를 토글(toggle)한다.
ECM 생성기(80)와 EMM 생성기(40)는 동일한 모듈 또는 분리된 모듈로 형성될 수 있는데, 동일한 모듈로 형성될 경우 제어 정보를 위한 TCP/IP 프로토콜 및 데이터 정보를 위한 UDP 프로토콜을 따르며, 분리된 모듈로 형성될 경우에는 제어 및 데이터 정보를 위해 TCP/IP 프로토콜을 따른다.
본 발명은 EMM 및 ECM 섹션을 암호화하는 대신에 제어 워드(CW)를 암호화하고자 한다. 이를 지원하고자, EMM 블록은 어떠한 키(Key) 섹션도 포함하지 않으며, EMM 블록이 유니크한 태그에 의해 식별됨을 의미하는 TLV 형식을 따른다. EMM 블록은 주로 2가지 섹션을 포함하는데, 첫째는 타겟(target) 상세부이고, 둘째는 메시지 상세부에 관한 것이다. 도3에 도시된 바와 같은 ECM 데이터 구조에 EMM 섹션이 삽입될 때, EMM 섹션은 도4 및 도5에 도시된 바와 같이 각각의 태그를 갖는 ECM 섹션 안으로 삽입될 수 있다. EMM 블록이 없는 경우, ECM 섹션은 도3에 도시된 바와 같이 ECM 정보 블록 만을 포함한다.
제어 워드(CW)를 암호화하기 위하여 비대칭 암호화 방법이 사용된다. 각 가입자(CAS 클라이언트)는 암호화된 제어 워드를 해독하는 동일한 개인 키를 갖는다. 본 실시예의 CAS는 비대칭 암호화 알고리즘으로서 NTRU 암호화, RSA 및 EIGamal을 사용한다.
본 발명은 DVB 및 DAB 표준에 따라 데이터를 제어하고 관리하고 방송하는 디지털 방송 시스템에 이용할 수 있다.
이상 본 발명을 상기 실시예를 들어 설명하였으나, 본 발명은 이에 제한되는 것이 아니다. 당업자라면, 본 발명의 취지 및 범위를 벗어나지 않고 수정, 변경을 할 수 있으며 이러한 수정과 변경 또한 본 발명에 속하는 것임을 알 수 있을 것이다.