KR101330947B1 - 해싱된 키와의 사이멀크립트 키 공유 - Google Patents

해싱된 키와의 사이멀크립트 키 공유 Download PDF

Info

Publication number
KR101330947B1
KR101330947B1 KR1020117006204A KR20117006204A KR101330947B1 KR 101330947 B1 KR101330947 B1 KR 101330947B1 KR 1020117006204 A KR1020117006204 A KR 1020117006204A KR 20117006204 A KR20117006204 A KR 20117006204A KR 101330947 B1 KR101330947 B1 KR 101330947B1
Authority
KR
South Korea
Prior art keywords
key
value
content
encryption
cav1
Prior art date
Application number
KR1020117006204A
Other languages
English (en)
Other versions
KR20110053359A (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 KR20110053359A publication Critical patent/KR20110053359A/ko
Application granted granted Critical
Publication of KR101330947B1 publication Critical patent/KR101330947B1/ko

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • 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/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2221Secondary servers, e.g. proxy server, cable television Head-end being a cable television head-end
    • 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/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
    • H04N21/26606Channel 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 for generating or managing entitlement messages, e.g. Entitlement Control Message [ECM] or Entitlement Management Message [EMM]
    • 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
    • H04N21/26613Channel 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 for generating or managing keys in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/601Broadcast encryption

Landscapes

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

Abstract

배포 헤드엔드에서 사용되는 키를 서로 다른 CA 시스템을 가지는 복수의 CA(conditional access) 공급업체 간에 공유하는 방법은 헤드엔드에서 복수의 CA 공급업체 각각으로부터 CA 값 기여분을 수신하는 단계, 해싱 함수를 사용하여 복수의 CA 공급업체 각각으로부터의 CA 값들을 서로 해싱하여 출력 제어 워드를 생성하는 단계, 및 헤드엔드에 있는 암호화기에서, 출력 제어 워드를 콘텐츠 키로서 사용하는 단계를 포함하며, 콘텐츠 키는 CA 시스템들 중 임의의 것을 사용하여 콘텐츠를 복호화하는 복수의 수신기에게 제공되는 콘텐츠를 암호화하는 암호화 키로서 사용된다. 다른 실시예들이 이 요약에 기술된 특징들로부터 벗어날 수 있기 때문에, 이 요약이 제한하는 것으로 생각되어서는 안된다.

Description

해싱된 키와의 사이멀크립트 키 공유{SIMULCRYPT KEY SHARING WITH HASHED KEYS}
관련 문서의 상호 참조
본 출원은 EBU(European Broadcast Union)에 의해 발표된 초안 ETSI(European Telecommunications Standards Institute) TS 103 197 V 1.3.1 (02-06) TM2117r3 Technical Specification for "Digital Video Broadcasting (DVB); Head-end implementation of DVB SimulCrypt"(이는 본 명세서에서 일반적으로 사이멀크립트(SimulCrypt) 규격이라고 하며 참조 문헌으로서 본 명세서에 포함됨) 등의 키 공유 시스템에 관한 것이다.
저작권 및 상표권 고지
이 특허 문서의 개시 내용의 일부분은 저작권 보호를 받는 내용을 포함하고 있다. 저작권 소유자는 특허청의 특허 파일 또는 기록에 나와 있는 그대로 특허 문서 또는 특허 개시 내용을 팩시밀리 재현하는 것에 대해서는 이의를 제기하지 않지만, 그렇지 않은 어떤 경우에도 모든 저작권을 보유한다. 상표는 그 각자의 소유자의 자산이다.
상기한 DVB(Digital Video Broadcast) 사이멀크립트 표준은 CA(conditional access) 공급자가 스크램블러(scrambler)[또는 암호화기(encrypter)]와 인터페이스하여, 스크램블링 키(scrambling key)("제어 워드"라고도 함)를 수신하고 ECM(Entitlement Control Message)의 배포를 동기화하는 통상의 방식을 제공한다. 이 인터페이스는 콘텐츠가 다수의 CA(Conditional Access) 공급자에 의해 보호될 수 있게 해주는데, 그 이유는 이들 각각이 동일한 스크램블링 키를 수신하기 때문이다. 이 방식은 "키 공유"라고 하며, 전체 시스템이 앞서 언급한 DVB 사이멀크립트 규격에 기술되어 있다. DVB 사이멀크립트는 CA 공급자가 키 공유를 통해 "협력"하고 있는 상황에서 선택적 다중 암호화(Selective Multiple Encryption)에 대한 대안으로서 종종 언급된다.
목적 및 이점과 함께, 동작의 구성 및 방법을 설명하는 예시적인 특정 실시예가 첨부 도면과 관련하여 기술된 이하의 상세한 설명을 참조함으로써 가장 잘 이해될 수 있을 것이다.
도 1은 상기한 사이멀크립트 규격에 기술되어 있는 종래의 사이멀크립트 헤드엔드를 나타낸 블록도.
도 2는 본 발명의 특정 실시예에 따른 수정된 사이멀크립트 헤드엔드의 예시적인 실시예를 나타낸 블록도.
도 3은 본 발명의 특정 실시예에 따른 방식의 수신기 키 관리를 나타낸 도면.
도 4는 본 발명의 특정 실시예에 따른, 2개의 CA 값에 대한 해싱 함수의 일례를 나타낸 도면.
도 5는 본 발명의 특정 실시예에 따른, 2개의 CA 값에 대한 해싱 함수의 일례를 나타낸 도면.
도 6은 본 발명의 특정 실시예에 따른, 2개의 CA 값에 대한 해싱 함수의 일례를 나타낸 도면.
도 7은 본 발명의 특정 실시예에 따른, 3개의 CA 값에 대한 해싱 함수의 일례를 나타낸 도면.
도 8은 본 발명의 특정 실시예에 따른, 2개의 CA 값에 대한 해싱 함수의 일례를 나타낸 도면.
도 9는 특정 실시예에 따른 헤드엔드 프로세스의 예시적인 구현예를 나타낸 플로우차트.
도 10은 특정 실시예에 따른 수신기 프로세스의 예시적인 구현예를 나타낸 플로우차트.
본 발명이 많은 서로 다른 형태로 구현될 수 있지만, 구체적인 실시예가 도면에 도시되고 본 명세서에 상세히 기술될 것이며, 이러한 실시예의 본 개시 내용이 본 발명을 도시되고 기술된 구체적인 실시예로 제한하기 위한 것이 아니라 본 발명의 원리의 일례로서 생각되어야 한다는 것을 잘 알 것이다. 이하의 설명에서, 몇개의 도면에서 동일하거나 유사하거나 대응하는 부분을 설명하는 데 동일한 참조 번호가 사용된다.
본 명세서에서 사용되는 "한" 또는 "하나"라는 용어는 '하나 또는 둘 이상'으로서 정의된다. 본 명세서에서 사용되는 "복수"라는 용어는 '둘 또는 셋 이상'으로서 정의된다. 본 명세서에서 사용되는 "또 하나의"라는 용어는 '적어도 제2 또는 추가의'로서 정의된다. 본 명세서에서 사용되는 "구비하는" 및/또는 "갖는"이라는 용어는 '포함하는'(즉, 개방형 문언)으로서 정의된다. 본 명세서에서 사용되는 "결합된"이라는 용어는 '연결된'으로서 정의되지만, 반드시 직접 연결될 필요가 없고 또한 반드시 기계적으로 연결될 필요가 없다. 본 명세서에서 사용되는 "프로그램" 또는 "컴퓨터 프로그램"이라는 용어 또는 유사한 용어는 컴퓨터 시스템 상에서 실행되도록 설계된 '명령어 시퀀스'로서 정의된다. "프로그램" 또는 "컴퓨터 프로그램"은 서브루틴, 함수, 프로시저, 객체 메서드, 객체 구현, 실행가능 응용 프로그램, 애플릿, 서블릿, 소스 코드, 오브젝트 코드, 공유 라이브러리/DLL(dynamic load library) 및/또는 컴퓨터 시스템 상에서 실행되도록 설계된 기타 명령어 시퀀스를 포함할 수 있다.
본 문서 전반에 걸쳐 언급되는 "일 실시예", "특정 실시예", "실시예", "일례", "구현예" 또는 유사한 용어는 그 실시예, 일례 또는 구현예와 관련하여 기술된 특정의 특징, 구조 또는 특성이 본 발명의 적어도 하나의 실시예에 포함된다는 것을 의미한다. 따라서, 본 명세서 전반에 걸쳐 여러 곳에서 나오는 이러한 문구가 모두 동일한 실시예를 말하는 것은 아니다. 게다가, 특정의 특징, 구조 또는 특성이 하나 이상의 실시예, 일례 또는 구현예에서 임의의 적절한 방식으로 결합될 수 있지만, 이들로 제한되지 않는다.
본 명세서에서 사용되는 "또는"이라는 용어는 포함적이거나 임의의 하나 또는 임의의 조합을 의미하는 것으로 해석되어야 한다. 따라서, "A, B 또는 C"는 "A, B, C, A와 B, A와 C, B와 C, A와 B와 C 중 임의의 것"을 의미한다. 요소, 기능, 단계 또는 동작의 조합이 어떤 면에서 본질적으로 상호 배타적일 때에만 이 정의에 대한 예외가 될 것이다.
본 명세서에서 사용되는 "프로세서", "제어기", "CPU(Central Processor Unit)", "컴퓨터" 등의 용어는 하드 프로그램된(hard programmed), 전용, 범용 및 프로그램가능 장치 모두를 포함하며, 분산 구성 또는 중앙집중식 구성으로 되어 있는 복수의 이러한 장치 또는 단일 장치를 포함할 수 있지만, 이들로 제한되지 않는다.
앞서 언급한 바와 같이, 사이멀크립트 표준은 CA(conditional access) 공급자가 스크램블러와 인터페이스하여, 스크램블링 키를 수신하고 ECM 및 EMM을 배포하는 통상의 방식을 제공한다. 이 인터페이스는 콘텐츠가 다수의 CA 공급자에 의해 보호될 수 있게 해주는데, 그 이유는 이들 각각이 동일한 스크램블링 키를 수신하기 때문이다. 그렇지만, DVB 사이멀크립트 표준을 사용하는 CA 공급자의 보안이 손상을 입는 이유는 제어 워드의 도출에서 단방향 암호화 함수[트랩 도어(trap door) 함수라고도 함]를 사용할 수 없기 때문이다.
DVB 사이멀크립트 표준에서는, 제어 워드로서 사용하기 위해 난수가 발생되고 CA(Conditional Access) 공급자와 공유된다. 난수는 스크램블러에서 콘텐츠를 스크램블링하는 데 암호화 키로서 사용된다. CA 공급자는 독점 CA 알고리즘 및 방법을 사용하여 키를 암호화하고, 수신기가 콘텐츠에 액세스할 수 있게 해주는 ECM(Entitlement Control Message)을 발생한다.
그렇지만, 일부 CA 공급자의 시스템은 접근 기준의 단방향 함수인 키를 발생하도록 설계되어 있다. 접근 기준은 ECM과 어쩌면 EMM(Entitlement Management Message)을 통해 보조 필드로서 전송된다. 이들 CA 공급자에 대해 그렇게 하는 것이 바람직한 이유는, 암호 프로세서 및 전역 또는 그룹 키의 내부 동작을 알고 있을 수 있는 해커가 해킹 과정에서 수신기의 SW 및 HW를 재사용하기 위해 보다 자유로운 접근 기준으로 ECM을 재암호화하는 것을 방지하기 때문이다. 접근 기준이 이러한 방식으로 인증되고 해커가 그 접근 기준을 수정하려고 시도할 때, 발생된 키가 수정되고 콘텐츠가 디스크램블링 및 디코딩될 수 없다. CA 공급자는 이러한 키 발생 방법에서는, 자신의 시스템의 보안을 상당히 축소시키지 않고는 - 어쩌면 일련의 서비스에 대해 허가된 암호 프로세서가 적절한 수신료가 지불되지 않은 서비스를 수신할 수 있는 소위 "삼총사(Three Musketeer)" 공격에 자신의 시스템을 더욱 노출시키지 않고는 -, 사이멀크립트 또는 유사한 키 공유 프로세스를 구현할 수 없다. 또한, 현재의 사이멀크립트 시스템에서는, 해커가 하나의 CA 시스템에서 알아낸 제어 워드를 사용하여, 제어 워드를 공유하는 다른 CA 시스템(들)의 키 계층구조를 공격할 수 있을지도 모른다. 특정의 제안된 실시예에서, 발생된 키가 동일할 수 있지만, 처리는 키 계층구조의 최하위 지점에 있는 단방향 함수에 의해 격리된다.
접근 기준의 인증은 3총사 공격을 피하는 데 도움을 준다. 이들 공격은 하드웨어가 재사용될 수 있도록 ECM(Entitlement Control Message)을 재암호화하기 위해 전역 키 및 알고리즘에 대한 지식을 이용한다. 해적들은 가능하다면 하드웨어를 재사용하기를 좋아하는데 그 이유는 대용 하드웨어에 대한 자본 투자를 최소화해주기 때문이다. CA 공급자는 전역 키 및 알고리즘을 누출시키지 않기 위해 스마트 카드 및 기타 암호 장치를 보다 안전하게 만들려고 시도한다. 그렇지만, 암호 프로세서[암호부(crypto)]가 아직은 FIB(Focused Ion Beam) 기술, 탐침 및 기타 기법을 사용하는 하드코어 리버스 엔지니어링(hardcore reverse engineering)에 취약할지도 모른다. 하나의 암호부로부터의 비밀은 나중에 다른 암호부에 대한 3총사 공격을 수행하는 데 사용될 수 있다.
본 발명의 특정 구현예에 따르면, CA 공급자와 스크램블러 및 디스크램블러가 알고 있는 공용 해싱 함수는 키 계층구조의 하단에 생성된다. 해싱 함수는 키를 공유할 것으로 예상되는 각각의 CA 공급자로부터 기여분을 받고 그 기여분(들)을 다른 당사자(키를 공유하는 다른 CA 공급자)에게 전달한다. 각각의 CA 공급자는 각각의 기여분(들)을 받고 각각의 기여분을 사용하는 공용 해시 함수로 키 도출을 마무리한다. 스크램블러는 2개 이상의 키 CA 값을 받고, "키 에포크(key epoch)"라고 하는 특정의 기간에 대한 콘텐츠를 암호화하는 데 사용되는 콘텐츠 키(제어 워드라고도 함)를 발생한다.
이러한 방식으로, DVB 사이멀크립트는 키를 공유할 것으로 예상되는 하나 이상의 CA 공급자로부터 해싱된 키를 받도록 향상된다. 키가 더 이상 사이멀크립트 동기화기에 의해 생성되는 간단한 "난수"일 필요는 없다. 오히려, 사이멀크립트 동기화기는 "CA 값" 교환을 용이하게 해주는 데 사용되며, CA 공급자는 CA 값을 사용하여 콘텐츠를 암호화하는 데 사용되는 공용의 해싱된 키(사이멀크립트 표준에서 "제어 워드"라고 함)를 계산할 수 있다. 전체적인 키가 단방향 함수이기 때문에, 해커가 전역 키와 비밀 알고리즘 및 값을 알고 있더라도, 적절한 요금이 지불되지 않은 경우 콘텐츠를 훔치기 위해 (ECM 및 심지어 EMM로 전송되는) 프로그램의 접근 기준을 변경하는 것이 가능하지 않을 것이다. 각각의 CA 시스템의 기여분(CA 값)은 CA 공급자가 원하는 어느 것이라도 될 수 있다. CA 공급자는, CA 처리 중 자신의 부분에서 단방향 함수를 사용하고자 하지 않는 경우, 단순히 그 자체적으로 발생하는 난수를 사용할 수 있다. 이는 전적으로 CA 공급자에게 달려 있다.
이제 도 1을 참조하면, 블록도(100)는 상기 사이멀크립트 규격(그림 1 - 시스템 구조 참조)에 정의된 사이멀크립트 헤드엔드의 다양한 구성요소를 나타내고 있다. 본 명세서에서 사용되는 모든 두문자어는 사이멀크립트 규격에서 사용되는 것에 따른 것이며, 따라서, 다시 엄격히 정의될 필요는 없다. 블록도(100)로서 도시된 시스템 구조는 어느 정도 완비한 사이멀크립트 헤드엔드 구조를 나타내고 있지만, 본 논의는 제어 워드 발생기(104)에서의 CW(Control Word)의 발생과 주로 연관되어 있다. 사이멀크립트 규격에 따르면, CW 발생기(104)는 104에서 제어 워드로서 사용되는 난수를 발생한다. CW 발생기(104)는 이 CW를 사이멀크립트 동기화기(108)에 공급한다.
사이멀크립트 규격에서 설명되는 바와 같이, 사이멀크립트 동기화기의 역할은 제어 워드 발생기(104)로부터 제어 워드(CW)를 가져오는 것, CW는 물론 임의의 CA 고유 정보를 관련 스트림을 통해 관련 ECM 발생기(ECMG)(112)에 공급하는 것, ECMG으로부터 ECM을 획득하는 것, 채널 매개변수에 따라 ECM을 그의 연관된 암호 기간과 동기화시키는 것, 이들 ECM을 멀티플렉서(MUX)(116)로 전송하고 채널 매개변수에 따라 그의 반복을 요청하는 것, 및 지정된 암호 기간(에포크)에서 사용하기 위해 CW를 스크램블러(120)에 공급하는 것을 포함한다.
도 2는 본 발명에 따른 특정 실시예에 따라 표준의 사이멀크립트 시스템이 어떻게 수정되는지를 나타낸 것이다. 표준의 사이멀크립트 시스템에 대해 행해지는 변경이 동 도면의 하부 부분에 있는 점선 상자(150)에 도시되어 있다. CW 발생기(104)는 ECM 발생기(ECMG)(112)와 같이 각각의 CA 공급자의 일부를 형성하는 CA 값 발생기로 대체되어 있다. ECMG(112)는 CW 해셔(Hasher) 및 사이멀크립트 동기화기(160)로부터 특정의 CA 공급자에 대한 특정의 CA 값을 수신하고, ECM을 CW 해셔 및 사이멀크립트 동기화기(160)로 반환한다. CW 해셔 및 사이멀크립트 동기화기(160)는 ECM에 포함시키기 위한 접근 기준(AC)도 포함시킬 수 있다. 또는 ECMG가 다른 소스, 예를 들어, ACG(Access Control Generator)(164)로부터 직접 또는 다른 메커니즘으로부터 접근 기준을 획득할 수 있다.
각각의 CA 공급자는, CW를 발생하는 해싱 함수를 추가로 제공하도록 수정되어 있는 수정된 사이멀크립트 동기화기(160)[CW 해셔 및 사이멀크립트 동기화기(160)로서 도시되어 있음]에 제공되는 CA 값 발생기(154)로서 표현된 CA 값 기여분(CA1V, CA2V... 등)을 제공한다.
동 도면에 도시된 바와 같이, 해시 함수는 160에서 수행되지만, 다른 실시예에서, CA 값은 스크램블러(120)로 또는 별도의 해셔 장치(hasher device)(도시 생략)로 전달된다. 본 개시 내용을 고려하면, 당업자에게는 다른 변형들이 안출될 것이다.
스크램블러는 키 길이(key length)에 대해 정부 수출 통제를 받을 수 있다. 이것은 유럽의 DVB CSA(Common Scrambling Algorithm)에서의 상황이다. 키는 스크램블러에 적용되기 전에 키 감소(key reduction)를 거칠 수 있다. 생성되는 키의 각각의 비트가 감소된 키로 표현될 수 있게 해주는 미국 특허 제7,366,302호에 기술되어 있는 키 감소 알고리즘이 사용될 수 있다. 키 감소가 가능하게 되는 경우, CW 해셔 및 사이멀크립트 동기화기(160)는 이것을 헤드엔드 또는 브로드캐스트 설비에서 달성하게 될 것이다. 수신기에서, 암호 프로세스는 키 감소를 적용하여 최종 키를 계산할 것이다. CA 값 해싱 이후에 키 감소가 수행된다.
160의 해싱 함수는 키를 공유할 것으로 예상되는 각각의 CA 공급자로부터 CA 값(154)의 기여분을 받고 그 기여분(들)을 키를 공유하는 다른 CA 공급자에게 전달한다. 각각의 CA 공급자는 각각의 기여분(들)을 받고 각각의 기여분을 사용하는 해싱으로 키 도출을 마무리한다. 스크램블러(120)는 2개 이상의 키 값 기여분을 받고 키 에포크에 대한 콘텐츠를 암호화하는 데 사용되는 콘텐츠 키 CW를 발생하거나, [도시된 바와 같이 동기화기(160)에서 해싱이 행해지는 경우, 동기화기(160)로부터의 다수의 키 값의 해싱에 의해 발생되는] CW를 수신한다. 각각의 CA 공급자는 CW를 도출하는 데 사용되는 CA 값을 발생할 책임이 있다. 각각의 CA 값은 이전과 같이 단지 CA 공급자에 의해 공급되는(또는 헤드엔드에서 발생되는) 난수일 수 있거나, 단방향 값(one-way value)일 수 있다. CA 값을 어떻게 이용하고 싶은지는 CA 공급자에게 달려 있다.
이 일례에서, 해싱이 동기화기(160)에서 수행되는 것으로 도시되어 있지만, 앞서 언급한 바와 같이, 해시 함수는 또한 스크램블러에서, 동기화기 이전에 또는 다른 곳에서(이들로 제한되지 않음)도 수행될 수 있다. 따라서, 특정 구현예에 따르면, 표준의 사이멀크립트 CWG를 사용하는 대신에, 사이멀크립트 동기화기는 CA 1 값 및 CA 2 값을 CA 공급자로부터 획득한다(여기서 2개의 CA 공급자를 가정하지만, 더 많이 있을 수 있기 때문에 이것이 제한하는 것은 아니다). CA 1 값이 CA 공급자 2와 공유되고, CA 2 값이 CA 공급자 1와 공유된다. CA 1 값 및 CA 2 값이 적절한 위치에서 해싱되어, 표준의 사이멀크립트에서와 동일한 목적으로 스크램블러에서 사용되는 CW를 생성한다. 그렇지만, CA 공급자가 CW를 생성하기 위해 해싱되는 값을 제공하기 때문에, CA 공급자의 CA 시스템의 보안을 향상시키기 위해 단방향 함수가 구현될 수 있다.
수신기 측에서, ECM 처리로부터 CA 1 값 및 CA 2 값이 계산된다. CA 1 값은 CA 1 접근 기준의 함수이다. CA 1에 대해, CA 2 값은 키 계층구조의 하부에서 해싱되는 "난수"처럼 전달된다. CA 2 값은 CA 2 접근 기준의 함수이다. CA 2에 대해, CA 1 값은 키 계층구조의 하부에서 해싱되는 "난수"처럼 전달된다.
도 3을 참조하면, 수신기 측에는, 키가 관리될 수 있는 적어도 2개의 방식이 있다. 암호부(crypto)가 해싱을 수행하여 CW 자체를 발생할 수 있거나, 호스트가 해싱을 수행할 수 있다. 첫번째 경우에, 암호부는 내부적으로 CA 1 값 및 CA 2 값을 계산하고, CW가 얻어지는 해시를 수행한다. 암호부는 이어서 CW를 호스트로 출력한다. CW는 호스트까지의 인터페이스에 걸쳐 자신을 보호하기 위해, 예를 들어, OTP(One-Time-Programmable) 보안을 사용하여 암호화될 수 있다. 두번째 경우에, 암호부는 내부적으로 CA 1 값 및 CA 2 값을 계산한다. 암호부는 이어서 각각을 호스트로 출력한다. 호스트는 CW가 얻어지는 해싱을 수행한다. CA 1 값 및 CA 2 값은 인터페이스에 걸쳐 자신을 보호하기 위해, 예를 들어, OTP 보안을 사용하여 암호화될 수 있다.
양 구현예가 도 3에서, 상기한 방식으로 제어 워드(192)를 발생하기 위해 암호 프로세서 또는 호스트 내에서, CA 1 값(180) 및 CA 2 값(184)이 해시 함수(188)에 대한 입력으로서 전달되는 것으로 대체로 기술되어 있다. 이후부터, CA 값들이 CA 공급자 1로부터의 CA 값에 대해서는 CAV1으로서 표현되고, 이하 마찬가지로 표현된다.
도 4 내지 도 9는 본 발명에 따른 예시적인 실시예를 구현하는 데 사용될 수 있는 해싱 함수의 많은 변형들 중 몇개를 나타낸 것이다. 도 4에서, CAV1은 128 비트 키로서 나타내어져 있고, CAV2는 128 비트의 데이터로서 나타내어져 있다. CAV1 키는 AES(Advanced Encryption Standard) 암호화 엔진(200)에서 암호화된 출력을 생성하는 데 사용된다. 이 출력은 이어서 CAV1 키와 함께 EXOR(Exclusive OR)(204)에 적용되어 CW를 생성한다.
도 5는, CAV1이 또 다시 AES 암호화기(200)에 대한 128 비트 키로서 사용되고 CAV2 데이터가 AES 암호화기(200)를 사용하여 CAV1 키로 암호화되는, AES 암호화기(200) 및 EXOR(204)의 재구성을 제공한다. 이 경우에, CAV2 데이터는 암호화기의 출력과 EXOR되어 CW를 생성한다.
도 6에, CAV1이 AES 암호화기(200)에 대한 키로서 사용되고 CAV2가 데이터로서 사용되는 다른 예시적인 해싱이 제공된다. 출력은 CAV2가 키인 CAV1로 암호화된 것이고, 그 출력은 EXOR(204)에 제공되며 이곳에서 출력이 처음으로 CAV2와 EXOR된다. EXOR(204)의 출력은 제2 EXOR(208)에 제공되고 이곳에서 그 출력이 CAV1과 EXOR되어 CW를 출력으로서 생성한다.
명백하게도, 해싱 함수의 많은 변형들이 출력에 단방향 함수를 생성하는 데 사용될 수 있다. 상기 3개의 일례 모두가 AES 암호화를 사용하지만, 이것이 제한하는 것으로 간주되어서는 안된다. 도 7은 3개의 CA 공급자가 CAV1, CAV2 및 CAV3를 제공하는 경우에 대해 사용될 수 있는 해싱의 일례를 제공한다. 이 해시는 도 4에 도시된 것의 변형 및 직렬 확장(cascaded extension)으로서 볼 수 있다. 이 경우에, CAV1은 AES 암호화기(200)에 대한 키로서 역할하고 CAV2를 암호화하는 데 사용된다. 암호화된 출력은 204에서 CAV1와 EXOR되어 제1 단계 출력(CAV12)을 생성하며, 제1 단계 출력(CAV12)은 제2 AES 암호화기(212)[또는 제1 AES 암호화기(200)의 제2 인스턴스]에 의해 암호화된다. AES 암호화기(212)는 AES 암호화기(212)에 의해 키로서 사용되는 CAV3 하에서 CAV12 해시를 암호화하여 212로부터의 출력을 생성하고, 이 출력은 이어서 208에서 CAV3와 EXOR되어 CW를 생성한다.
이 개념이, 예를 들어, 도 8에 도시된 바와 같이, 4개의 CA 공급자로 추가적으로 확장될 수 있다. 이 경우에, 도 7과 관련하여 기술된 것과 동일한 방식으로 CAV12가 생성된다. CAV3 및 CAV4가 AES 암호화기(212) 및 EXOR(208)을 사용하여 이와 유사하게 결합되어 CAV34를 생성하며, 여기서 CAV3는 키로서 사용되고 CAV4는 암호화기(212)에 대한 데이터로서 사용된다. AES 암호화기(216, 220)의 유사한 구성이 이어서, 데이터인 CAV12가 키인 CAV34로 암호화되는 것으로부터, CW를 생성하는 데 사용되며, 이 키는 암호화기 출력과 EXOR되어 CW를 생성한다.
이 일례에서, 사이멀크립트 동기화기는 다음과 같이
1) CA1에게: CAV2 및 CAV34,
2) CA2에게: CAV1 및 CAV34,
3) CA3에게: CAV4 및 CAV12, 그리고
4) CA4에게: CAV3 및 CAV12를 전달한다.
CA 시스템이 수신기에게 CA 값을 전달하는 정확한 메커니즘은 일반적으로 독점적이며 공급자마다 다르다. 그렇지만, 한 방법은 이전 단계의 계산된 또는 암호화된 값을 사용하여 그 다음 단계에서 전송되는 값을 복호화할 수 있다. 이것은 거의 각각의 단계마다 전달되는 값은 물론 도출된 CA 값도 보호해야만 한다. 일례로서, 각각의 CA 시스템에서 다음과 같은 것이 행해질 수 있다:
1) CA1에 대해: CAV1[CAV2]을 사용하여 암호화되고 CAV12[CAV34]를 사용하여 암호화됨,
2) CA2에 대해: CAV2[CAV1]을 사용하여 암호화되고 CAV12[CAV34]를 사용하여 암호화됨,
3) CA3에 대해: CAV3[CAV4]을 사용하여 암호화되고 CAV34[CAV12]를 사용하여 암호화됨, 그리고
4) CA4에 대해: CAV4[CAV3]을 사용하여 암호화되고 CAV34[CAV12]를 사용하여 암호화됨.
상기 예 1) 내지 예 4)에서, 암호화는 EXOR 함수만큼 간단할 수 있거나, 더 복잡할 수 있다.
이하의 표 1은 본 개시 내용의 소개로 가능한 사이멀크립트의 변형들 중 일부("신규"라고 나타냄. 표준의 사이멀크립트는 "표준"이라고 나타냄)를 표로 나타낸 것이다. RN은 난수를 의미한다.
다중 CA 시나리오 사이멀크립트 버전 해싱 필요? 코멘트
1 단방향 함수를 갖는 CA가 없음 CWG를 사용하는 표준 없음 이전과 동일함
2 단방향 함수를 갖는 CA가 단지 하나임 표준(수정됨), 단방향 함수를 갖는 CA가 CW를 생성함 없음 단방향 CA가 CWG로 됨. 그렇지만, 이것이 사이멀크립트에 의해 현재 정의되어 있지 않음
3 단방향 함수를 갖는 CA가 단지 하나임 신규, (수정된) CWG 또는 CA가 비단방향에 대한 CAV를 생성함 있음 CA가 발생하는 경우, 비단방향 CA가 단방향 값 대신에 단순히 RN을 사용함
4 단방향 함수를 갖는 CA가 2개 이상임 신규, CA가 CAV를 생성함 있음
이하의 표 2는 본 발명에 따른 방식으로 사용될 수 있는 다양한 해싱 방법들 중 몇개를 요약한 것이다. 그렇지만, 이 표는 해싱 알고리즘을 모두 망라한 목록을 제공하기 위한 것이 아니다.
해싱 방법 설명 코멘트
1 MD5 또는 Sha-1, 2 CAV1,CAV2 기타의 해시 임의의 길이일 수 있음
2 암호(AES, DES, DVB 통상의 스크램블링 알고리즘 등)를 사용하는 키 또는 데이터로부터 데이터-출력으로의 피드포워드 EXOR CAV2을 키로서, CAV2를 데이터로서 할당, 계층구조에 따라 CAV3가 그 다음 키 또는 데이터임 CAV1 및 CAV2 이후의 각각의 CAV가 또 하나의 암호 단계를 필요할 것임을 제외하고는 동일함
3 암호(상기와 같음)를 사용하는 키 및 데이터로부터 데이터-출력으로의 이중 피드포워드 EXOR 이중 EXOR을 제외하고는, 상기와 같음
도 9는 300에서 시작하는, 헤드엔드에서 특정 구현예에 따른 방식으로 사용될 수 있는 한 예시적인 프로세스를 나타낸 것이다. 304에서, CA 값 기여분이 사이멀크립트 시스템에서 키를 공유하는 각각의 CA 공급업체로부터 수신된다. 308에서, CA 값이 다른 CA 제공 공급업체와 직접(또는 상기한 CAV 12 등의 중간 해시로서 간접적으로 - 이 경우 이 동작은 나중에 프로세스 내로 이동됨) 공유된다. 또한 308에서, 각각의 CA 시스템에 대한 CA 값이 ECM 또는 EMM을 사용하여 또는 임의의 다른 키 배포 기법을 사용하여 수신기에게 배포된다. 312에서, CA 값 기여분이 임의의 적당한 해싱 알고리즘을 사용하여 서로 해싱되어 CW를 생성한다. CW는 이어서 320에서 스크램블러(120)에서 나가는 콘텐츠의 암호화를 위한 콘텐츠 키로서 사용된다. 이 값은, 324에서 그다음 제어 워드가 필요할 때(이 때 304에서 시작하는 프로세스가 반복됨)까지, 암호화 에포크에 대해 사용된다.
도 10은 400에서 시작하는, 텔레비전 또는 셋톱 박스 등의 수신기 장치에서 특정 구현예에 따른 방식으로 사용될 수 있는 한 예시적인 프로세스를 나타낸 것이다. 404에서, 수신기는 ECM 등의 사용을 비롯한 임의의 적당한 키 배포 기법에 의해 CA 값 기여분을 수신하지만, CW 자체가 수신기로 곧바로 전송되지는 않는다. 408에서, 수신기는 CW를 발생하기 위해 헤드엔드에서 사용되었던 해싱 알고리즘이 어느 것이든 간에 그 해싱 알고리즘을 사용하여 콘텐츠의 암호화에 사용되는 CW를 재생성한다. 이어서 412에서, 현재의 키 에포크에 대해 수신기에서 콘텐츠를 복호화하는 데 이 재생성된 CW가 사용된다. 420에서 그 다음 키 에포크에 대해 새로운 키가 필요할 때, 404에서 시작하여 프로세스가 반복된다. 이러한 방식으로, 수신기 장치는 단방향 함수를 사용하여 CW를 재도출한다. 이 저레벨 해시는 각각의 CA 시스템이 각각의 CA 공급자로부터의 CA 키를 본질적으로 병합하는 CW를 계산할 수 있게 해준다. 각각의 CA 시스템은 이 마지막 해시로 그가 원하는 무엇이든 할 수 있지만, 실제로는 다른 계산들도 역시 마지막 해시까지 해싱될 수 있다.
따라서, 상기한 바와 같이, 2개 이상의 CA 값의 해시 함수가 헤드엔드에서 콘텐츠를 암호화하는 콘텐츠 키 또는 CW로서 사용된다. 해시 함수는 또한 수신기에서 콘텐츠를 복호화하는 콘텐츠 키 또는 CW를 재도출하는 데 사용된다. 앞서 언급한 바와 같이, 각각의 CA 공급업체로부터의 CA 값 기여분이 독립적인 ECM을 통해 수신기로 전송될 수 있고, CW가 헤드엔드에서 CW를 발생하는 데 사용된 바로 그 해시 함수를 사용하여 수신기에서 재도출될 수 있기 때문에, CW 자체를 수신기로 직접 전송할 필요가 없으며, 따라서 보안을 향상시킨다. 특정 실시예에서, 해시 알고리즘 자체도 ECM, EMM 또는 다른 보안 메커니즘을 통해 암호화된 형태로 전달될 수 있고, 추가적인 보안을 위해 주기적으로 변할 수 있다. 본 개시 내용을 고려하면, 당업자에게는 다른 변형들이 안출될 것이다.
DVB 사이멀크립트 표준이 일반적으로 브로드캐스트 스트림을 위한 것이지만, 이 개념이 IP 스트림에서의 DRM에 적용될 수 있다. DRM이 동일한 방식으로 키를 공유할 수 있지만, DRM은 ECM 측에서 단순화된 키 구조를 가진다. 해싱 함수를 데이지-체이닝(daisy-chain)하는 것이 가능하지만, AES(Advanced Encryption Standard) 또는 DES(Data Encryption Standard)가 사용되는 경우, 임의의 하나의 수신기가 제어 워드를 계산하기 위해 해야 하는 단계의 수를 감소시킨다는 점에서 이진 트리 구조가 보다 효율적이다. 본 개시 내용을 고려하면, 당업자에게는 많은 다른 변형들이 안출될 것이다.
따라서, 본 발명에 따른 특정 구현예에 따르면, DVB(Digital Video Broadcasting) 사이멀크립트 표준에 따라 콘텐츠를 스크램블링하는 데 사용되는 스크램블링 키의 보안이 향상된다. DVB 사이멀크립트 표준에서, 다양한 CA(Conditional Access) 공급자는 콘텐츠를 스크램블링하는 데 사용되는 공용의 공유 스크램블링 키를 수신한다. 그렇지만, 이것은 CA 공급자가 단방향 함수를 사용할 수 없고 따라서 이것이 덜 보안된다는 제한을 가진다. 본 방법은 단방향 해싱 함수를 사용하여 향상된 보안을 달성한다. 해싱 함수는 각각의 CA 공급자의 기여분을 받아, 콘텐츠를 스크램블링하는 데 사용되는 스크램블링 키를 도출한다. 발생된 스크램블링 키는 해킹하기 아주 어려운 단방향 함수이다. 그 결과, 전역 키가 누출되거나 해킹되더라도, 특정 유형의 해킹을 방지할 수 있는 프로그램 접근 기준이 변경될 수 없다.
따라서, 배포 헤드엔드에서 사용되는 키를 서로 다른 CA 시스템을 가지는 복수의 CA(conditional access) 공급업체 간에 공유하는 방법은 헤드엔드에서 복수의 CA 공급업체 각각으로부터 CA 값 기여분을 수신하는 단계, 해싱 함수를 사용하여 복수의 CA 공급업체 각각으로부터의 CA 값들을 서로 해싱하여 출력 제어 워드를 생성하는 단계, 및 헤드엔드에 있는 암호화기에서, 출력 제어 워드를 콘텐츠 키로서 사용하는 단계를 포함하며, 콘텐츠 키는 CA(conditional access) 시스템들 중 임의의 것을 사용하여 콘텐츠를 복호화하는 복수의 수신기에게 제공되는 콘텐츠를 암호화하는 암호화 키로서 사용된다.
특정 구현예에서, 이 방법은 복수의 CA 공급업체 간에 CA 값을 공유하는 단계를 추가로 포함한다. 특정 구현예에서, 각각의 CA 공급업체의 CA 값을 각각의 다른 CA 공급업체에게 직접 제공함으로써 공유가 수행된다. 특정 구현예에서, 각각의 CA 공급자의 CA 값을 각각의 다른 공급업체에게 간접적으로 제공함으로써 공유가 수행되고, 여기서 각각의 공급업체에게 제공된 CA 값은 다른 공급업체의 CA 값의 해시를 포함한다. 특정 구현예에서, 적어도 2개의 CA 값(CAV1 및 CAV2)이 있으며, CAV1은 암호화된 출력을 생성하기 위해 CAV2를 암호화하는 암호화 키로서 사용된다. 특정 구현예에서, CAV1 및 CAV2 중 하나가 배타적 OR(Exclusive OR) 프로세스에서 암호화된 출력과 결합된다. 특정 구현예에서, 암호화는 DES, DVB 공용 스크램블링 및 AES 암호화 중 하나를 포함한다. 특정 구현예에서, 이 방법은 CA 값을 복수의 수신기로 전송하는 단계를 추가로 포함한다. 특정 구현예에서, 이 방법은 ECM(Entitlement Control Message)을 통해 CA 값을 복수의 수신기로 전송하는 단계를 추가로 포함한다. 특정 구현예에서, 이 방법은 해싱 알고리즘을 복수의 수신기로 전송하는 단계를 추가로 포함한다.
다른 실시예에서, 서로 다른 CA 시스템을 가지는 복수의 CA(conditional access) 공급업체 간에 키를 공유하는 사이멀크립트 헤드엔드 장치는 헤드엔드에 복수의 CA 공급업체 각각으로부터 CA 값 기여분을 수신하는 장치를 가진다. 해싱 프로세서는 해싱 함수를 사용하여 복수의 CA 공급업체 각각으로부터의 CA 값들을 서로 해싱하여 출력 제어 워드를 생성한다. 암호화기는 CA(conditional access) 시스템들 중 임의의 것을 사용하여 콘텐츠를 복호화하는 복수의 수신기에게 제공되는 콘텐츠를 암호화하는 암호화 키인 콘텐츠 키로서 출력 제어 워드를 사용한다.
특정 구현예에서, CA 값이 복수의 CA 공급업체 간에 공유된다. 특정 구현예에서, 각각의 CA 공급업체의 CA 값을 각각의 다른 CA 공급업체에게 직접 제공함으로써 공유가 수행된다. 특정 구현예에서, 각각의 CA 공급자의 CA 값을 각각의 다른 공급업체에게 간접적으로 제공함으로써 공유가 수행되고, 여기서 각각의 공급업체에게 제공된 CA 값은 다른 공급업체의 CA 값의 해시를 포함한다. 특정 구현예에서, 적어도 2개의 CA 값(CAV1 및 CAV2)이 있으며, 여기서 CAV1은 암호화된 출력을 생성하기 위해 CAV2를 암호화하는 암호화 키로서 사용된다. 특정 구현예에서, CAV1 및 CAV2 중 하나가 배타적 OR(Exclusive OR) 프로세스에서 암호화된 출력과 결합된다. 특정 구현예에서, 암호화는 DES, DVB 공용 스크램블링 및 AES 암호화 중 하나일 수 있다. 특정 구현예에서, ECM 발생기는 CA 값을 복수의 수신기로 전달하는 ECM(Entitlement Control Message)을 발생한다. 특정 구현예에서, ECM 발생기는 해싱 알고리즘을 복수의 수신기로 전송하는 ECM을 추가로 발생한다.
수신기에서 공유 키를 갖는 암호화된 콘텐츠를 수신하는 다른 방법 - 공유 키는 서로 다른 CA(Conditional Access) 시스템을 가지는 복수의 CA 공급업체 간에 공유됨 - 은 복수의 CA(Conditional Access) 값 기여분을 수신하는 단계, 수신기에서 사용하기 위한 콘텐츠 암호화 키로서 사용되는 제어 워드(CW)를 재도출하기 위해 CA 값 기여분을 해싱하는 단계, CW를 사용하여 암호화된 콘텐츠를 수신기에서 수신하는 단계, 및 재도출된 CW를 사용하여 수신기에서 콘텐츠를 복호화하는 단계를 포함한다.
특정 구현예에서, 적어도 2개의 CA 값(CAV1 및 CAV2)이 있으며, 여기서 CAV1은 암호화된 출력을 생성하기 위해 CAV2를 암호화하는 암호화 키로서 사용된다. 특정 구현예에서, CAV1 및 CAV2 중 하나가 배타적 OR(Exclusive OR) 프로세스에서 암호화된 출력과 결합된다. 특정 구현예에서, 암호화는 DES, DVB 공용 스크램블링 및 AES 암호화 중 하나일 수 있다. 특정 구현예에서, CA 값이 ECM(Entitlement Control Message)을 통해 수신기에 의해 수신된다. 특정 구현예에서, 이 방법은 수신기에서 해싱 알고리즘을 수신하는 단계를 추가로 포함한다.
유형의 컴퓨터 판독가능 전자 저장 매체는 하나 이상의 프로그램된 프로세서 상에서 실행될 때, 상기한 프로세스들 중 임의의 프로세스를 수행할 수 있는 명령어를 저장한다.
당업자라면, 상기 개시 내용을 고려하여, 상기 예시적인 실시예들 중 일부가 하나 이상의 프로그램된 프로세서 또는 다른 프로그램가능한 장치의 사용에 기초한다는 것을 잘 알 것이다. 그렇지만, 본 발명이 이러한 예시적인 실시예로 제한되지 않는데, 그 이유는 특수 목적 하드웨어 및/또는 전용 프로세서 등의 하드웨어 구성요소 등가물을 사용하여 다른 실시예가 구현될 수 있기 때문이다. 마찬가지로, 범용 컴퓨터, 마이크로프로세서-기반 컴퓨터, 마이크로제어기, 광 컴퓨터, 아날로그 컴퓨터, 전용 프로세서, 주문형 반도체(application specific circuit) 및/또는 전용의 하드 와이어드 논리(dedicated hard wired logic)가 대안의 등가 실시예를 구성하는 데 사용될 수 있다.
본 명세서에 기술된 특정 실시예들이, 임의의 적합한 전자 또는 컴퓨터 판독가능 저장 매체에 저장될 수 있는, 플로우차트 형태로 이상에서 대체로 설명되어 있는 프로그래밍 명령어를 실행하는 하나 이상의 프로그램된 프로세서를 사용하여 구현되거나 구현될 수 있다. 그렇지만, 당업자라면, 이 개시 내용을 고려하여, 상기한 프로세스들이, 본 발명의 실시예들로부터 벗어나지 않고, 다수의 변형으로 또 많은 적합한 프로그래밍 언어로 구현될 수 있다는 것을 잘 알 것이다. 예를 들어, 본 발명의 특정 실시예들로부터 벗어나지 않고, 수행되는 특정 동작들의 순서가 종종 변화될 수 있거나, 부가의 동작들이 추가될 수 있거나, 동작들이 삭제될 수 있다. 본 발명의 특정 실시예들로부터 벗어나지 않고, 오류 포착(error trapping)이 추가 및/또는 개선될 수 있고 사용자 인터페이스 및 정보 제시에 변동이 행해질 수 있다. 이러한 변동이 생각되고 등가물로 간주된다.
본 명세서의 특정 실시예가 기술된 기능을 수행하는 구체적인 회로와 관련하여 기술되어 있지만, 회로 기능이 하나 이상의 프로그램된 프로세서 상에서 실행되는 등가의 구현예를 사용하여 수행되는 다른 실시예가 생각된다. 범용 컴퓨터, 마이크로프로세서 기반 컴퓨터, 마이크로제어기, 광 컴퓨터, 아날로그 컴퓨터, 전용 프로세서, 주문형 반도체(application specific circuit) 및/또는 전용 하드와이어드 논리, 아날로그 회로, 복수의 이러한 장치, 그리고 중앙집중식 또는 분산 구성으로 된 이러한 장치들의 조합이 대안의 등가 실시예를 구성하는 데 사용될 수 있다. 다른 실시예가 특수 목적 하드웨어 및/또는 전용 프로세서 등의 하드웨어 구성요소 등가물을 사용하여 구현될 수 있다.
특정 예시적인 실시예가 기술되어 있지만, 이상의 설명을 바탕으로 많은 대안, 수정, 치환 및 변동이 당업자에게는 자명하게 될 것임이 명백하다.

Claims (27)

  1. 각 CA(conditional access) 시스템에서 독립적인 키 생성 방법을 사용하는 독립적인 CA 시스템을 가지는 복수의 CA 공급업체 간에 공유되는 콘텐츠 키를 도출하는 방법으로서, 상기 공유되는 콘텐츠 키는 암호화기에서 콘텐츠를 암호화하기 위한 제어 워드로서 사용되고,
    상기 방법은,
    상기 암호화기에서 복수의 CA 공급업체 각각으로부터 CA 값 기여분을 수신 - 각 CA 값 기여분은 상기 CA 공급업체 각각에 의해 독립적으로 생성된 코드 워드(code word)를 포함함 - 하는 단계,
    해싱 함수를 사용하여 상기 복수의 CA 공급업체 각각으로부터의 CA 값들을 서로 해싱하여 콘텐츠의 암호화를 위한 출력 제어 워드를 생성하는 단계, 및
    상기 암호화기에서, 상기 출력 제어 워드를 공유 콘텐츠 키로서 사용하는 단계를 포함하며, 상기 공유 콘텐츠 키는 상기 독립적인 CA 시스템들 중 임의의 것을 사용하여 콘텐츠를 복호화하는 복수의 수신기로 제공되는 콘텐츠를 암호화하는 암호화 키로서 사용되는 것인 방법.
  2. 제1항에 있어서, CA 값 기여분을 복수의 CA 공급업체 간에 공유하는 단계를 추가로 포함하는 방법.
  3. 제2항에 있어서, 각각의 CA 공급업체의 CA 값 기여분을 각각의 다른 CA 공급업체에게 네트워크를 통해 직접 제공함으로써 공유가 수행되는 것인 방법.
  4. 제2항에 있어서, 각각의 CA 공급업체의 CA 값 기여분을 각각의 다른 공급업체에게 네트워크를 통해 간접적으로 제공함으로써 공유가 수행되고, 각각의 공급업체로 제공되는 CA 값 기여분은 다른 공급업체의 CA 값 기여분의 해시를 포함하는 것인 방법.
  5. 제1항에 있어서, 적어도 2개의 CA 값 기여분(CAV1 및 CAV2)이 있으며, 여기서 CAV1은 암호화된 출력을 생성하기 위해 CAV2를 암호화하는 암호화 키로서 사용되는 것인 방법.
  6. 제5항에 있어서, CAV1 및 CAV2 중 하나가 배타적 OR(Exclusive OR) 프로세스에서 암호화된 출력과 결합되는 것인 방법.
  7. 제5항에 있어서, 암호화는 DES, DVB 공용 스크램블링 및 AES 암호화 중 하나를 포함하는 것인 방법.
  8. 제1항에 있어서, CA 값 기여분을 복수의 수신기로 전송하는 단계를 추가로 포함하는 방법.
  9. 제8항에 있어서, ECM(Entitlement Control Message)을 통해 CA 값 기여분을 복수의 수신기로 전송하는 단계를 추가로 포함하는 방법.
  10. 제8항에 있어서, 해싱 알고리즘을 복수의 수신기로 전송하는 단계를 추가로 포함하는 방법.
  11. 하나 이상의 프로그램된 프로세서 상에서 실행될 때, 제1항의 방법을 수행하는 명령어를 저장하는 유형의(tangible) 컴퓨터 판독가능 전자 저장 매체.
  12. 독립적인 키 생성 방법을 사용하는 독립적인 CA(conditional access) 시스템을 가지는 복수의 CA 공급업체 간에 키를 공유하는 사이멀크립트(SimulCrypt) 장치로서,
    복수의 CA 공급업체 각각으로부터 CA 값 기여분을 수신 - 각 CA 값 기여분은 상기 CA 공급업체 각각에 의해 독립적으로 생성된 코드 워드를 포함함 - 하도록 구성된 동기화기,
    해싱 함수를 사용하여 상기 복수의 CA 공급업체 각각으로부터의 CA 값 기여분들을 서로 해싱하여 콘텐츠의 암호화를 위한 출력 제어 워드를 생성하도록 구성된 해싱 프로세서, 및
    상기 독립적인 CA 시스템들 중 임의의 것을 사용하여 콘텐츠를 복호화하는 복수의 수신기에게 제공되는 콘텐츠를 암호화하는 공유 콘텐츠 키로서 출력 제어 워드를 사용하도록 구성된 암호화기를 포함하는 장치.
  13. 제12항에 있어서, CA 값 기여분을 복수의 CA 공급업체 간에 공유하는 수단을 추가로 포함하는 장치.
  14. 제13항에 있어서, 각각의 CA 공급업체의 CA 값 기여분을 각각의 다른 CA 공급업체에게 네트워크를 통해 직접 제공함으로써 공유가 수행되는 것인 장치.
  15. 제13항에 있어서, 각각의 CA 공급업체의 CA 값 기여분을 각각의 다른 공급업체에게 네트워크를 통해 간접적으로 제공함으로써 공유가 수행되고, 각각의 공급업체로 제공되는 CA 값 기여분은 다른 공급업체의 CA 값 기여분의 해시를 포함하는 것인 장치.
  16. 제12항에 있어서, 적어도 2개의 CA 값 기여분(CAV1 및 CAV2)이 있으며, 여기서 CAV1은 암호화된 출력을 생성하기 위해 CAV2를 암호화하는 암호화 키로서 사용되는 것인 장치.
  17. 제16항에 있어서, CAV1 및 CAV2 중 하나가 배타적 OR 프로세스에서 암호화된 출력과 결합되는 것인 장치.
  18. 제16항에 있어서, 암호화는 DES, DVB 공용 스크램블링 및 AES 암호화 중 하나를 포함하는 것인 장치.
  19. 제12항에 있어서, CA 값 기여분을 복수의 수신기로 전달하는 ECM(Entitlement Control Message)을 발생하는 ECM 발생기를 추가로 포함하는 장치.
  20. 제19항에 있어서, ECM 발생기는 해싱 알고리즘을 복수의 수신기로 전송하는 ECM을 추가로 발생하는 것인 장치.
  21. 수신기에서 공유 키를 갖는 암호화된 콘텐츠를 수신하는 방법 - 공유 키는 독립적인 CA(Conditional Access) 시스템을 가지는 복수의 독립적인 CA 공급업체 간에 공유됨 - 으로서,
    복수의 CA(Conditional Access) 값 기여분을 수신하는 단계,
    수신기에서 사용하기 위한 콘텐츠 암호화 키로서 사용되는 제어 워드(CW)를 재도출하기 위해 CA 값 기여분을 해싱하는 단계,
    상기 CW를 사용하여 암호화된 콘텐츠를 수신기에서 수신하는 단계, 및
    상기 재도출된 CW를 사용하여 수신기에서 콘텐츠를 복호화하는 단계를 포함하는 방법.
  22. 제21항에 있어서, 적어도 2개의 CA 값 기여분(CAV1 및 CAV2)이 있으며, 여기서 CAV1은 암호화된 출력을 생성하기 위해 CAV2를 암호화하는 암호화 키로서 사용되는 것인 방법.
  23. 제22항에 있어서, CAV1 및 CAV2 중 하나가 배타적 OR 프로세스에서 암호화된 출력과 결합되는 것인 방법.
  24. 제22항에 있어서, 암호화는 DES, DVB 공용 스크램블링 및 AES 암호화 중 하나를 포함하는 것인 방법.
  25. 제21항에 있어서, CA 값 기여분이 ECM(Entitlement Control Message)을 통해 수신기에 의해 수신되는 것인 방법.
  26. 제21항에 있어서, 수신기에서 해싱 알고리즘을 수신하는 단계를 추가로 포함하는 방법.
  27. 하나 이상의 프로그램된 프로세서 상에서 실행될 때, 제21항의 방법을 수행하는 명령어를 저장하는 유형의(tangible) 컴퓨터 판독가능 전자 저장 매체.
KR1020117006204A 2008-09-18 2009-09-15 해싱된 키와의 사이멀크립트 키 공유 KR101330947B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/284,049 US8204220B2 (en) 2008-09-18 2008-09-18 Simulcrypt key sharing with hashed keys
US12/284,049 2008-09-18
PCT/US2009/056989 WO2010033505A2 (en) 2008-09-18 2009-09-15 Simulcrypt key sharing with hashed keys

Publications (2)

Publication Number Publication Date
KR20110053359A KR20110053359A (ko) 2011-05-20
KR101330947B1 true KR101330947B1 (ko) 2013-11-26

Family

ID=42007232

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117006204A KR101330947B1 (ko) 2008-09-18 2009-09-15 해싱된 키와의 사이멀크립트 키 공유

Country Status (8)

Country Link
US (1) US8204220B2 (ko)
EP (1) EP2327211B1 (ko)
JP (1) JP5421375B2 (ko)
KR (1) KR101330947B1 (ko)
CN (1) CN102160325B (ko)
CA (1) CA2737413C (ko)
MX (1) MX2011002586A (ko)
WO (1) WO2010033505A2 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8204220B2 (en) 2008-09-18 2012-06-19 Sony Corporation Simulcrypt key sharing with hashed keys
EP2219374A1 (en) * 2009-02-13 2010-08-18 Irdeto Access B.V. Securely providing a control word from a smartcard to a conditional access module
US8560604B2 (en) 2009-10-08 2013-10-15 Hola Networks Ltd. System and method for providing faster and more efficient data communication
WO2011064613A1 (en) * 2009-11-25 2011-06-03 Serela Card sharing countermeasures
EP2334069A1 (en) * 2009-12-11 2011-06-15 Irdeto Access B.V. Providing control words to a receiver
FR2958103B1 (fr) * 2010-03-23 2012-08-17 Cryptoexperts Sas Procede pour identifier un dispositif mis en oeuvre par un terminal pirate et dispositif associe
US8789088B2 (en) * 2010-03-31 2014-07-22 Electronics And Telecommunications Research Institute Method and apparatus for remotely installing and updating different security clients for broadcasting or communication channels
CN102387407A (zh) * 2010-08-31 2012-03-21 国基电子(上海)有限公司 实现广播网络条件接收的系统和方法
IL210169A0 (en) * 2010-12-22 2011-03-31 Yehuda Binder System and method for routing-based internet security
US8687807B2 (en) 2011-01-26 2014-04-01 Nagrastar, L.L.C. Cascading dynamic crypto periods
WO2014152060A1 (en) * 2013-03-15 2014-09-25 General Instrument Corporation Protection of control words employed by conditional access systems
US9241044B2 (en) 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
US10218496B2 (en) 2014-08-04 2019-02-26 Cryptography Research, Inc. Outputting a key based on an authorized sequence of operations
US11057446B2 (en) 2015-05-14 2021-07-06 Bright Data Ltd. System and method for streaming content from multiple servers
FR3050599B1 (fr) 2016-04-20 2018-05-11 4T Sa Procede et dispositif permettant l'application d'un systeme de controle d'acces a la protection des flux video en mode direct.
EP4020940A1 (en) 2017-08-28 2022-06-29 Bright Data Ltd. Content fetching by selecting tunnel devices
US11190374B2 (en) 2017-08-28 2021-11-30 Bright Data Ltd. System and method for improving content fetching by selecting tunnel devices
US10944544B2 (en) 2018-11-07 2021-03-09 Sony Corporation Reducing variable-length pre-key to fix-length key
US11443016B2 (en) 2018-11-09 2022-09-13 Sony Corporation Pre-key with authentication using logical combinations of pre-key bits with other information
US11171931B2 (en) * 2019-02-15 2021-11-09 Wipro Limited Method and system for providing a light-weight secure communication for computing devices
EP4053717A3 (en) 2019-02-25 2022-10-26 Bright Data Ltd. System and method for url fetching retry mechanism
EP4027618A1 (en) 2019-04-02 2022-07-13 Bright Data Ltd. Managing a non-direct url fetching service

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6424717B1 (en) * 1995-04-03 2002-07-23 Scientific-Atlanta, Inc. Encryption devices for use in a conditional access system
US6499103B1 (en) * 1997-11-21 2002-12-24 Nds Limited Symbol-display system
US7143289B2 (en) * 2000-10-30 2006-11-28 Geocodex Llc System and method for delivering encrypted information in a communication network using location identity and key tables

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5420866A (en) * 1994-03-29 1995-05-30 Scientific-Atlanta, Inc. Methods for providing conditional access information to decoders in a packet-based multiplexed communications system
US6157719A (en) * 1995-04-03 2000-12-05 Scientific-Atlanta, Inc. Conditional access system
US6937729B2 (en) * 1995-04-03 2005-08-30 Scientific-Atlanta, Inc. Representing entitlements to service in a conditional access system
US5606616A (en) * 1995-07-03 1997-02-25 General Instrument Corporation Of Delaware Cryptographic apparatus with double feedforward hash function
US5754659A (en) * 1995-12-22 1998-05-19 General Instrument Corporation Of Delaware Generation of cryptographic signatures using hash keys
JP4268690B2 (ja) * 1997-03-26 2009-05-27 ソニー株式会社 認証システムおよび方法、並びに認証方法
EP0910008A3 (en) * 1997-10-14 2005-01-26 Canon Kabushiki Kaisha Apparatus and method for changing, adding and deleting a job, and a storage medium for such a program
IL123554A (en) * 1998-03-04 2003-01-12 Nds Ltd Key delivery in a secure broadcasting system
GB2342013B (en) * 1998-09-23 2003-06-25 Sony Uk Ltd Multiplexing digital signals
US6363149B1 (en) * 1999-10-01 2002-03-26 Sony Corporation Method and apparatus for accessing stored digital programs
IL129230A (en) * 1999-03-29 2003-04-10 Nds Ltd System for determining successful reception of a message
US6289455B1 (en) * 1999-09-02 2001-09-11 Crypotography Research, Inc. Method and apparatus for preventing piracy of digital content
US7254236B1 (en) * 1999-10-06 2007-08-07 Thomson Licensing Method and system for handling two CA systems in a same receiver
JP2001350967A (ja) * 2000-06-09 2001-12-21 Seiko Epson Corp 印刷データ管理装置、印刷データ管理プログラムを記憶した記憶媒体、利用証データを記憶した記憶媒体及び印刷データ利用方法
EP1182874A1 (en) * 2000-08-24 2002-02-27 Canal+ Technologies Société Anonyme Digital content protection system
JP2002271561A (ja) * 2001-03-13 2002-09-20 Minolta Co Ltd データ送信装置、データ受信装置、データ送受信システム、データ送信方法、データ受信方法、データ送受信方法、プログラムおよび記録媒体
AU2002334409A1 (en) * 2001-09-27 2003-04-14 Matsushita Electric Industrial Co., Ltd. An encryption device, a decrypting device, a secret key generation device,a copyright protection system and a cipher communication device
CN100372379C (zh) * 2002-03-19 2008-02-27 Nxp股份有限公司 条件接入控制系统和方法
US8818896B2 (en) * 2002-09-09 2014-08-26 Sony Corporation Selective encryption with coverage encryption
US7200868B2 (en) * 2002-09-12 2007-04-03 Scientific-Atlanta, Inc. Apparatus for encryption key management
US7724907B2 (en) * 2002-11-05 2010-05-25 Sony Corporation Mechanism for protecting the transfer of digital content
WO2004045213A2 (en) 2002-11-13 2004-05-27 General Instrument Corporation Efficient distribution of encrypted content for multiple content access systems
CN1745537B (zh) * 2002-12-03 2010-06-09 松下电器产业株式会社 密钥共享系统、共享密钥生成装置及共享密钥复原装置
US20040242150A1 (en) * 2003-05-28 2004-12-02 Microspace Communications Corporation Systems, methods and transmission formats for providing a common platform for direct broadcast satellite television networks
CN1902559B (zh) * 2004-01-06 2010-11-03 汤姆逊许可证公司 设备间的安全信息移植
JP2005260614A (ja) * 2004-03-12 2005-09-22 Dainippon Printing Co Ltd 暗号装置
US7804959B2 (en) * 2005-02-01 2010-09-28 Panasonic Corporation Digital cable television broadcasting receiver
JP4501864B2 (ja) * 2006-02-08 2010-07-14 村田機械株式会社 通信端末装置
EP1840779B1 (en) * 2006-03-31 2013-03-20 Irdeto Access B.V. Method and device for authorising conditional access
JP4151709B2 (ja) * 2006-04-29 2008-09-17 コニカミノルタビジネステクノロジーズ株式会社 データ処理システム、データ処理方法およびデータ処理プログラム
US20080080711A1 (en) * 2006-09-28 2008-04-03 Syphermedia International, Inc. Dual conditional access module architecture and method and apparatus for controlling same
US20090323971A1 (en) * 2006-12-28 2009-12-31 Munguia Peter R Protecting independent vendor encryption keys with a common primary encryption key
US20080263363A1 (en) * 2007-01-22 2008-10-23 Spyrus, Inc. Portable Data Encryption Device with Configurable Security Functionality and Method for File Encryption
EP2456178B1 (en) * 2007-04-26 2016-12-21 Nokia Technologies Oy Method and portable apparatus for searching items of different types
US8204220B2 (en) 2008-09-18 2012-06-19 Sony Corporation Simulcrypt key sharing with hashed keys

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6424717B1 (en) * 1995-04-03 2002-07-23 Scientific-Atlanta, Inc. Encryption devices for use in a conditional access system
US6499103B1 (en) * 1997-11-21 2002-12-24 Nds Limited Symbol-display system
US7143289B2 (en) * 2000-10-30 2006-11-28 Geocodex Llc System and method for delivering encrypted information in a communication network using location identity and key tables

Also Published As

Publication number Publication date
US20100067703A1 (en) 2010-03-18
EP2327211A2 (en) 2011-06-01
CN102160325B (zh) 2014-08-27
US8204220B2 (en) 2012-06-19
MX2011002586A (es) 2011-04-07
JP2012503433A (ja) 2012-02-02
WO2010033505A2 (en) 2010-03-25
WO2010033505A3 (en) 2010-06-24
EP2327211B1 (en) 2019-11-06
EP2327211A4 (en) 2017-05-10
CN102160325A (zh) 2011-08-17
JP5421375B2 (ja) 2014-02-19
CA2737413A1 (en) 2010-03-25
CA2737413C (en) 2015-12-29
KR20110053359A (ko) 2011-05-20

Similar Documents

Publication Publication Date Title
KR101330947B1 (ko) 해싱된 키와의 사이멀크립트 키 공유
CN103354998B (zh) 控制字保护
JP5106845B2 (ja) スクランブルされたコンテンツデータオブジェクトをデスクランブルする方法
US10454671B2 (en) Securing communication in a playback device with a control module using a key contribution
JP2010213268A (ja) コントロールワードを取得するための条件付エンタイトルメント処理
JP5933705B2 (ja) 受信機ソフトウェアの保護
WO2008150553A2 (en) Content encryption schema for integrating digital rights management with encrypted multicast
US20120207300A1 (en) Method and Device for Generating Control Words
CN104221023A (zh) 数字权利管理
KR20110108322A (ko) 개인화된 화이트박스 디스크램블러들
EP2990979B1 (en) Replay attack prevention for content streaming system
WO2013186274A1 (en) Obtaining control words using multiple key ladders
Roelse A new key establishment protocol and its application in pay-TV systems
WO2014154236A1 (en) Obtaining or providing key data
US20160065586A1 (en) Usage rights information for protected content having two parts
Durand et al. SmartPro: a smart card based digital content protection for professional workflow

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
FPAY Annual fee payment

Payment date: 20161026

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171025

Year of fee payment: 5