KR100717005B1 - 폐기 키를 결정하는 방법 및 장치와 이것을 이용하여복호화하는 방법 및 장치 - Google Patents

폐기 키를 결정하는 방법 및 장치와 이것을 이용하여복호화하는 방법 및 장치 Download PDF

Info

Publication number
KR100717005B1
KR100717005B1 KR1020050055124A KR20050055124A KR100717005B1 KR 100717005 B1 KR100717005 B1 KR 100717005B1 KR 1020050055124 A KR1020050055124 A KR 1020050055124A KR 20050055124 A KR20050055124 A KR 20050055124A KR 100717005 B1 KR100717005 B1 KR 100717005B1
Authority
KR
South Korea
Prior art keywords
group
key
groups
nodes
discard
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020050055124A
Other languages
English (en)
Other versions
KR20060106551A (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 PCT/KR2006/001245 priority Critical patent/WO2006107171A1/en
Priority to EP06747322A priority patent/EP1875658A4/en
Priority to CN2006800106230A priority patent/CN101151839B/zh
Priority to JP2008505232A priority patent/JP4954972B2/ja
Priority to US11/398,633 priority patent/US20070174609A1/en
Publication of KR20060106551A publication Critical patent/KR20060106551A/ko
Application granted granted Critical
Publication of KR100717005B1 publication Critical patent/KR100717005B1/ko
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00—Network architectures or network communication protocols for network security
    • H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062—Network 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
    • H04L63/064—Hierarchical key distribution, e.g. by multi-tier trusted parties
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107—License processing; Key processing
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2351—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving encryption of additional data
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25—Management 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/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808—Management of client data
    • H04N21/2585—Generation of a revocation list, e.g. of client devices involved in piracy acts
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25—Management 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/266—Channel 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/26613—Channel 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
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43—Processing 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • H04N21/4353—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving decryption of additional data
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45—Management 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/462—Content or additional data management e.g. creating a master electronic programme guide from data received from the Internet and a Head-end or controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627—Rights management associated to the content
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835—Generation of protective data, e.g. certificates
    • H04N21/8355—Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed
    • H04N21/83555—Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed using a structured language for describing usage rules of the content, e.g. REL
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00—Television systems
    • H04N7/16—Analogue secrecy systems; Analogue subscription systems
    • H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60—Digital content management, e.g. content distribution
    • H04L2209/601—Broadcast encryption
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00—Network architectures or network communication protocols for network security
    • H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/065—Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 디지털 컨텐트를 보호하는 분야에 관한 것으로, 본 발명에 따른 폐기 키 결정 방법은 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 적어도 하나 이상의 그룹을 식별하고, 이 그룹에 속하는 노드들 각각의 폐기 여부를 검출함으로서 종래 HBES에서 많은 비트 수를 요구했던 그룹 아이디를 제거할 수 있다.

Description

폐기 키를 결정하는 방법 및 장치와 이것을 이용하여 복호화하는 방법 및 장치{Method and apparatus for determining revocation key, and method and apparatus for decrypting thereby}
도 1은 일반적인 HBES 키 트리를 도시한 도면이다.
도 2는 일반적인 HBES 키 트리의 일례를 도시한 도면이다.
도 3은 본 발명의 바람직한 일 실시예에 따른 패킷의 포맷을 도시한 도면이다.
도 4는 본 발명의 바람직한 일 실시예에 따른 폐기 키 결정 장치의 구성도이다.
도 5는 본 발명의 바람직한 일 실시예에 적용되는 HBES 키 트리의 일례를 도시한 도면이다.
도 6은 본 발명의 바람직한 일 실시예에 적용되는 HBES 키 트리의 다른 예를 도시한 도면이다.
도 7은 본 발명의 바람직한 일 실시예에 적용되는 HBES 키 트리의 또 다른 예를 도시한 도면이다.
도 8은 본 발명의 바람직한 일 실시예에 적용되는 HBES 키 트리의 다른 예를 도시한 도면이다.
도 9는 종래 기술에 따른 태그의 크기와 본 발명의 바람직한 일 실시예에 따른 태그의 크기의 비교 표를 도시한 도면이다.
도 10은 본 발명의 바람직한 일 실시예에 따른 복호화 장치의 구성도이다.
도 11은 본 발명의 바람직한 일 실시예에 따른 폐기 키 결정 방법의 흐름도이다.
도 12a 및 도 12b는 본 발명의 바람직한 일 실시예에 따른 복호화 방법의 흐름도이다.
본 발명은 디지털 컨텐트를 보호하는 분야에 관한 것으로, 특히 디지털 컨텐트를 브로드캐스트 암호화 방식(broadcast encryption scheme)에 따라 효율적으로 복호화하는 장치 및 방법에 관한 것이다.
최근 들어, 인터넷, 지상파, 케이블, 위성 등의 다양한 통신 매체들을 이용한 디지털 컨텐트의 전송이 급증하고 있고, CD(Compact Disk), DVD(Digital Versatile Disk) 등의 대용량 기록 매체들을 이용한 디지털 컨텐트의 판매 및 대여가 급증하고 있다. 이에 따라, 디지털 컨텐트의 저작권을 보호하기 위한 솔루션인 DRM(Digital Rights Management)이 중요한 이슈로 떠오르고 있다. DRM에 관련된 기술들 중, 특히 CD, DVD 등의 기록 매체, 인터넷 등을 이용하여 브로드캐스트되는 디지털 컨텐트를 암호화함으로써 광범위하게 배포되는 디지털 컨텐트를 보호하는 브로드캐스트 암호화 방식에 대한 연구가 활발히 진행되고 있다.
일반적으로, 브로드캐스트 암호화 방식은 컨텐트 키(content key)를 사용하여 컨텐트를 암호화하고, 디바이스, 사용자, 또는 사용자 그룹 등의 폐기를 관리하기 위한 폐기 키(revocation key)를 사용하여 컨텐트 암호화에 사용된 컨텐트 키를 암호화하는 2 단계의 암호화 과정들로 구성된다. 또한, 종래 브로드캐스트 암호화 방식에 따라 암호화된 컨텐트를 복호화하기 위해서는 폐기 키를 사용하여 암호화된 컨텐트 키를 복호화하고, 그 결과로써 획득된 컨텐트 키를 사용하여 암호화된 컨텐트를 복호화하는 2 단계의 복호화 과정들을 거쳐야 한다.
상기된 폐기 키는 브로드캐스트 암호화 방식이 적용되는 디바이스, 사용자, 또는 사용자 그룹 등에 할당된다. 브로드캐스트 암호화 방식을 따르는 디바이스들 중 폐기 키 노출 등으로 인해 더 이상 브로드캐스트 암호화 방식에 따른 보호가 불가능한 디바이스는 폐기된다. 폐기된 디바이스는 자신이 보유한 폐기 키를 사용하여 브로드캐스트 암호화 방식을 따르는 컨텐트를 복호화할 수 없다.
다만, 브로드캐스트 암호화 방식은 브로드캐스트 암호화 방식이 적용되는 디바이스, 사용자, 또는 사용자 그룹 등의 개수가 증가하면, 이들 각각에 할당되어야 하는 폐기 키들의 개수가 기하급수적으로 증가한다는 문제점이 있었다. HBES(Hierarchical Hash-Chain Broadcast Encryption Scheme)는 이러한 문제점을 해결하기 위한 변형된 브로드캐스트 암호화 방식이다.
도 1은 일반적인 HBES 키 트리를 도시한 도면이다.
도 1을 참조하면, 일반적인 HBES 키 트리는 L 계층 N 진 트리(L-Layers N- ary tree)이며, 폐기 키의 일종인 HBES 노드 키 세트들이 할당된 노드들의 그룹들이 계층적으로 배열된 구조로 되어 있다. 또한, HBES 키 트리 내의 그룹들에 속하는 노드들 각각이 디바이스, 사용자, 또는 사용자 그룹 등에 대응하며, HBES 노드 키 세트가 할당된다.
특히, HBES 노드 키 세트는 하나의 시드 값 및 이 시드 값과 다른 시드 값들 각각이 서로 다른 횟수로 해시된 값들로 구성된다. 보다 상세하게 설명하면, HBES 키 트리 내의 그룹들 중 어느 하나의 그룹에 속하는 노드들 각각에 첫 번째 시드 값과 이 시드 값이 연쇄적으로 해시된 값들이 할당되고, 다음으로 두 번째 시드 값과 이 시드 값이 연쇄적으로 해시된 값들이 한 노드만큼 천이되어 할당되며, 이 과정은 마지막 시드 값과 이 시드 값이 연쇄적으로 해시된 값들이 할당될 때까지 반복된다.
이와 같이, HBES는 일반 브로드캐스트 암호화 방식에서의 폐기 키를 사용한 암호화 과정들 대부분이 HBES 노드 키 세트의 해시 값들을 사용한 해시 과정들로 대체된다. 이와 같은 특징들로 인하여 HBES는 일반 브로드캐스트 암호화 방식에 비해 훨씬 더 계산이 간단하고, 전송 데이터 량, 및 저장 데이터 량이 적다.
도 2는 일반적인 HBES 키 트리의 일례를 도시한 도면이다.
도 2를 참조하면, 도 2에 도시된 HBES 키 트리는 3 계층 4 진 트리이다. 특히, HBES 키 트리 내의 그룹들에 속하는 노드들 중 X 표시가 된 부분이 폐기된 HBES 노드 키 세트임을 나타낸다.
특히, 종래의 HBES에 따르면, 이와 같은 HBES 노드 키 세트의 폐기 여부에 관한 정보는 폐기된 HBES 노드 키 세트가 할당된 노드, 즉 폐기된 노드가 속하는 그룹의 아이디, 그룹에 속하는 노드들 중 폐기되지 않은 노드가 연속되는 구간의 시작 위치 및 길이로 구성된다. 도 2에 도시된 HBES 키 트리에 대해 이러한 정보를 표현해 보면, 다음과 같다.
그룹 아이디 = 0, 구간의 시작 위치 및 길이 = [1, 2]
그룹 아이디 = 1, 구간의 시작 위치 및 길이 = [3, 3]
그룹 아이디 = 4, 구간의 시작 위치 및 길이 = [2, 3]
그룹 아이디 = 7, 구간의 시작 위치 및 길이 = [3, 3]
그룹 아이디 = 18, 구간의 시작 위치 및 길이 = [0, 3]
실제 구간의 시작 위치 및 길이는 1 ~ 4에 해당하나, 2비트로 표현할 경우 0 ~ 3이 가능하기 때문에 상기된 구간의 시작 위치 및 길이는 0 ~ 3은 1 ~ 4를 의미한다.
상기된 바와 같이, 3 계층 4 진 형태의 HBES 키 트리에서 그룹 아이디를 표현하기 위해서는 5 비트가 필요하다. 그런데, 종래 HBES에 따르면, L 값과 N 값이 증가하면, 그룹 아이디를 표현하기 위한 비트 수가 매우 크게 증가한다는 문제점이 있었다. 예를 들어, 16 계층 16 진 형태의 HBES 키 트리에서 그룹 아이디를 표현하기 위해서는 61 비트가 필요하다.
본 발명이 이루고자 하는 기술적 과제는 종래 HBES에서 많은 비트 수를 요구했던 그룹 아이디를 제거함으로서, 이에 따라 HBES 노드 키의 폐기 여부에 관한 정 보가 기록된 태그의 크기를 줄일 수 있는 장치, 방법, 및 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다. 또한, 상기된 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 폐기 키 결정 방법은 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 상기 그룹들 중 적어도 하나 이상의 그룹을 식별하는 단계; 상기 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출하는 단계; 및 상기 검출된 결과에 따라 상기 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 결정하는 단계를 포함한다.
상기 다른 기술적 과제를 해결하기 위한 본 발명에 따른 폐기 키 결정 장치는 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 상기 그룹들 중 적어도 하나 이상의 그룹을 식별하는 식별부; 상기 식별부에 의해 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출하는 검출부; 및 상기 검출부에 의해 검출된 결과에 따라 상기 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 결정하는 결정부를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 폐기 키 결정 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 복호화 방법은 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 상기 그룹들 중 적어도 하나 이상의 그룹을 식별하는 단계; 상기 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출하는 단계; 상기 검출된 결과에 따라 상기 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 결정하는 단계; 및 상기 폐기되지 않은 것으로 결정된 키 세트를 사용하여 암호화된 컨텐트를 복호화하는 단계를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 복호화 장치는 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 상기 그룹들 중 적어도 하나 이상의 그룹을 식별하는 식별부; 상기 식별부에 의해 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출하는 검출부; 상기 검출부에 의해 검출된 결과에 따라 상기 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 결정하는 결정부; 및 상기 결정부에 의해 폐기되지 않은 것으로 결정된 키 세트를 사용하여 암호화된 컨텐트를 복호화하는 복호화부를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 복호화 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 기록매체는 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들 중 어느 하나 그룹의 후손 그룹들에 대한 정보의 종결 여부를 나타내는 제 1 필드; 및 상기 그룹에 속하는 노드들 각각의 폐기 여부를 나타내는 제 2 필드를 포함한다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.
본 발명의 바람직한 실시예들에 적용되는 HBES 키 트리는 폐기 키의 일종인 HBES 노드 키 세트들이 할당된 노드들의 그룹들이 L 계층 N 진 트리 형태로 계층적으로 배열된 구조로 되어 있다. 또한, HBES 키 트리 내의 그룹들에 속하는 노드들 각각이 디바이스, 사용자, 또는 사용자 그룹 등에 대응하며, HBES 노드 키 세트가 할당된다.
특히, HBES 노드 키 세트는 하나의 시드 값 및 이 시드 값과 다른 시드 값들 각각이 서로 다른 횟수로 해시된 값들로 구성된다. 보다 상세하게 설명하면, HBES 키 트리 내의 그룹들 중 어느 하나의 그룹에 속하는 노드들 각각에 첫 번째 시드 값과 이 시드 값이 연쇄적으로 해시된 값들이 할당되고, 다음으로 두 번째 시드 값과 이 시드 값이 연쇄적으로 해시된 값들이 한 노드만큼 천이되어 할당되며, 이 과정은 마지막 시드 값과 이 시드 값이 연쇄적으로 해시된 값들이 할당될 때까지 반복된다.
도 3은 본 발명의 바람직한 일 실시예에 따른 패킷의 포맷을 도시한 도면이다.
도 3을 참조하면, 본 실시예에 따른 패킷은 헤더(header)(31), 페이로드 (payload)(32), 및 태그(tag)(33)로 구성된다.
헤더(31)는 패킷의 순서를 나타내는 순서 번호가 기록된 필드, 컨텐트의 암호화에 사용된 컨텐트 키들의 개수가 기록된 필드, 및 HBES 노드 키 세트에 의해 암호화된 컨텐트 키들이 기록된 필드로 구성된다. HBES 노드 키 세트는 HBES 키 트리 내의 그룹들에 속하는 각각의 노드에 할당된 HBES 노드 키 세트이다.
페이로드(32)는 컨텐트 키들에 의해 암호화된 컨텐트가 기록된 컨텐트 필드로 구성된다.
태그(33)는 보류 필드(331), 종결 플래그 필드(332), 구간 개수 필드(333), 구간 시작 필드(334), 및 구간 길이 필드(335)로 구성된다.
보류 필드(331)는 일반적으로 컴퓨터, 임베디드 시스템 등이 최소 4 비트 이상의 단위로 데이터를 처리함으로 인하여 발생된 필드로서 어떠한 값도 기록되어 있지 않다. 즉, 보류 필드(331)는 종결 플래그 필드(332)의 길이가 1 비트이기 때문에 발생한 잉여 3 비트에 해당하는 필드이다.
종결 플래그 필드(332)에는 HBES 키 트리 내의 어느 하나 그룹의 후손 그룹들에 대한 정보의 종결 여부를 나타내는 값이 기록된다. 보다 상세하게 설명하면, HBES 키 트리 내의 어느 하나 그룹이 리프 그룹인 경우, HBES 키 트리 내의 어느 하나 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기된 경우, 또는 HBES 키 트리 내의 어느 하나 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기되지 않은 경우에 종결 플래그 필드(332)에 HBES 키 트리 내의 어느 하나 그룹의 후손 그룹에 대한 정보가 종결되었음을 나타내는 값이 기록된다.
구간 개수 필드(333), 구간 시작 필드(334), 및 구간 길이 필드(335)는 HBES 키 트리 내의 어느 하나 그룹에 속하는 노드들 각각의 폐기 여부를 나타내기 위한 필드들이다. 구간 개수 필드(333), 구간 시작 필드(334), 및 구간 길이 필드(335) 각각의 역할에 대한 구체적인 설명은 다음과 같다.
구간 개수 필드(333)에는 HBES 키 트리 내의 어느 하나의 그룹에 속하는 노드들 중 폐기되지 않은 노드가 연속되는 구간의 개수가 기록된다.
구간 시작 필드(334)에는 HBES 키 트리 내의 어느 하나의 그룹에 속하는 노드들 중 폐기되지 않은 노드가 연속되는 구간의 시작 위치가 기록된다.
구간 길이 필드(335)에는 HBES 키 트리 내의 어느 하나의 그룹에 속하는 노드들 중 폐기되지 않은 노드가 연속되는 구간의 길이가 기록된다.
구산 개수 필드(333)에 기록된 구간의 개수만큼의 구간 시작 필드(334)와 구간 길이 필드(335)가 존재한다. 예를 들어, 구산 개수 필드(333)에 기록된 구간의 개수가 2이라면, 2개의 구간 시작 필드들과 구간 길이 필드들이 연속하여 존재한다. 다만, 구산 개수 필드(333)에 기록된 구간의 개수가 0이라면, 구간 시작 필드와 구간 길이 필드는 존재하지 않는다.
도 4는 본 발명의 바람직한 일 실시예에 따른 폐기 키 결정 장치의 구성도이다.
도 4를 참조하면, 본 실시예에 따른 폐기 키 결정 장치는 패킷 해석부(41), 그룹 식별부(42), 폐기 노드 검출부(43), 및 폐기 키 결정부(44)로 구성된다.
패킷 해석부(41)는 도 3에 도시된 패킷을 해석하고, 그 결과에 따라 패킷의 구성을 인지한다. 보다 상세하게 설명하면, 패킷 해석부(41)는 도 3에 도시된 패킷을 해석하고, 그 결과에 따라 패킷이 헤더(31), 페이로드(32), 및 태그(33)로 구성되어 있음을 인지한다. 이어서, 패킷 해석부(41)는 태그(33)를 해석하고, 그 결과에 따라 태그(33)가 보류 필드(331), 종결 플래그 필드(332), 구간 개수 필드(333), 구간 시작 필드(334), 및 구간 길이 필드(335)로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(41)에서의 해석 결과에 따라 인지된 HBES 키 트리 구조, 즉 HBES 노드 키 세트들이 할당된 노드들의 그룹들이 L 계층 N 진 트리 형태로 계층적으로 배열된 구조에 기초하여 HBES 키 트리 내의 그룹들 중 적어도 하나 이상의 그룹을 식별한다.
보다 상세하게 설명하면, 그룹 식별부(42)는 L 계층들 중 어느 하나의 계층에 해당하는 그룹에 속하는 노드의 위치에 기초하여 이 계층의 다음 하위 계층에 해당하는 그룹을 식별한다. 즉, 그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 첫 번째 그룹을 HBES 키 트리 내의 그룹들 중 제 1 계층에 해당하는 그룹으로 식별한다. 이어서, 그룹 식별부(42)는 제 1 계층에 해당하는 그룹에 속하는 노드들의 위치에 기초하여 제 1 계층의 다음 하위 계층인 제 2 계층에 해당하는 그룹들을 식별한다. 예를 들어, 그룹 식별부(42)는 제 1 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드의 후손 그룹을 제 1 계층의 다음 하위 계층인 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹으로 식별한다.
폐기 노드 검출부(43)는 그룹 식별부(42)에 의해 식별된 그룹에 속하는 노드 들 중 적어도 하나 이상의 폐기되지 않은 노드의 구간에 관한 정보로부터 이 노드들 각각의 폐기 여부를 검출한다. 즉, 폐기 노드 검출부(43)는 패킷 해석부(41)에서의 해석 결과에 따라 인지된 태그(33)의 필드들 중, 구간 개수 필드(333), 구간 시작 필드(334), 및 구간 길이 필드(335)에 기록된 값들을 참조하여 그룹 식별부(42)에 의해 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(41)에서의 해석 결과에 따라 인지된 태그(33)의 필드들 중 종결 플래그 필드(332)에 기록된 값을 참조하여 그룹 식별부(42)에 의해 식별된 그룹의 후손 그룹들에 대한 정보의 종결 여부를 검출한다. 보다 상세하게 설명하면, 폐기 노드 검출부(43)는 종결 플래그 필드(332)에 기록된 값이 그룹 식별부(42)에 의해 식별된 그룹의 후손 그룹에 대한 정보가 종결되었음을 나타내면, 즉 그룹 식별부(42)에 의해 식별된 그룹이 리프 그룹인 경우, 그룹 식별부(42)에 의해 식별된 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기된 경우, 또는 그룹 식별부(42)에 의해 식별된 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기되지 않은 경우에 그룹 식별부(42)에 의해 그룹의 후손 그룹에 대한 정보가 종결되었음을 검출한다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 그룹에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 각각의 폐기 여부를 결정한다. 즉, 폐기 키 결정부(44)는 그룹 식별부(42)에 의해 식별된 그룹에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 중, 폐기 노드 검출부(43)에 의해 폐기된 것으로 검출된 노드에 할당된 HBES 노드 키 세 트를 폐기된 것으로 결정한다.
또한, 폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해, 그룹 식별부(42)에 의해 식별된 그룹의 후손 그룹들에 대한 정보가 종결된 것으로 검출되면, 그룹 식별부(42)에 의해 식별된 그룹에 속하는 노드들 각각의 폐기 여부에 따라 이 후손 그룹들에 속하는 모든 노드들 각각에 할당된 HBES 노드 키 세트들 각각의 폐기 여부를 한번에 결정한다. 즉, 폐기 키 결정부(44)는 그룹 식별부(42)에 의해 식별된 그룹이 리프 그룹인 경우, 그룹 식별부(42)에 의해 식별된 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기된 경우, 또는 그룹 식별부(42)에 의해 식별된 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기되지 않은 경우에 이 후손 그룹들에 속하는 모든 노드들 각각에 할당된 HBES 노드 키 세트들 각각의 폐기 여부를 그룹 식별부(42)에 의해 식별된 그룹에 속하는 노드들 각각의 폐기 여부에 따라 한번에 결정한다.
도 5는 본 발명의 바람직한 일 실시예에 적용되는 HBES 키 트리의 일례를 도시한 도면이다.
도 5를 참조하면, 본 실시예에 적용되는 HBES 키 트리는 16 계층 16 진 트리이며, 이하에서도 동일하다. 특히, 도 5에 도시된 HBES 키 트리는 HBES 키 트리 내의 그룹들에 속하는 모든 노드들에 할당된 HBES 노드 키 세트들이 폐기되지 않은 상태이다.
도 3에 도시된 태그(33)로 상기된 HBES 키 트리 상태를 표시하면, 다음과 같다. 제 1 계층에 해당하는 그룹에 대한 태그(33)는 보류 필드(331) = 0, 종결 플래 그 필드(332) = 1, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 0, 및 구간 길이 필드(335) = 15로 구성된다.
실제 구간의 시작 위치 및 길이는 1 ~ 16에 해당하나, 4 비트로 표현할 경우 0 ~ 15가 가능하기 때문에 상기된 구간의 시작 위치 및 길이는 0 ~ 15는 1 ~ 16을 의미하며, 이하 동일하다.
패킷 해석부(41)는 제 1 계층에 해당하는 그룹에 대한 태그(33)를 해석하고, 그 결과에 따라 태그(33)가 보류 필드(331) = 0, 종결 플래그 필드(332) = 1, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 0, 및 구간 길이 필드(335) = 15로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 첫 번째 그룹을 HBES 키 트리 내의 그룹들 중 제 1 계층에 해당하는 그룹으로 식별한다.
폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 0, 및 구간 길이 필드(335) = 15를 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 모두가 폐기되지 않았음을 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 종결 플래그 필드(332) = 1을 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹의 후손 그룹들에 대한 정보가 종결되었음을 검출한다. 특히, 이 경우는 그룹 식별부(42)에 의해 식별된 그룹의 모든 후손 그룹들에 속하는 노드들이 폐기되지 않은 경우이다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 모두가 폐기되지 않은 것으로 결정한다.
또한, 폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 제 1 계층에 해당하는 그룹의 후손 그룹들에 대한 정보가 종결된 것으로 검출되면, 폐기 노드 검출부(43)에 의해 제 1 계층에 해당하는 그룹에 속하는 노드들 모두가 폐기되지 않은 것으로 검출된 것에 따라 이 후손 그룹들에 속하는 모든 노드들 각각에 할당된 HBES 노드 키 세트들 각각이 폐기되지 않은 것으로 한 번에 결정한다.
도 6은 본 발명의 바람직한 일 실시예에 적용되는 HBES 키 트리의 다른 예를 도시한 도면이다.
도 6을 참조하면, 도 6에 도시된 HBES 키 트리는 HBES 키 트리의 각 계층의 그룹들 중 가장 왼쪽 그룹, 특히 이 그룹에 속하는 노드들 중 가장 왼쪽 노드에 할당된 HBES 노드 키 세트만이 폐기된 상태이고, 나머지는 폐기되지 않은 상태이다.
도 3에 도시된 태그(33)로 상기된 HBES 키 트리 상태를 표시하면, 다음과 같다. 제 1 계층에 해당하는 그룹에 대한 태그(33)는 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성된다. 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹에 대한 태그(33)는 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성된다. 이후, 제 3 계층부터 제 15 계층까지에 해당하는 그룹들 중 가장 왼쪽 그룹에 대한 태그(33)들도 상기된 경우와 동일하다. 제 16 계층에 해당하는 그룹들 중 가장 왼쪽 그룹에 대한 태그(33)는 보류 필드(331) = 0, 종결 플래그 필드(332) = 1, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성된다.
패킷 해석부(41)는 제 1 계층에 해당하는 그룹에 대한 태그(33)를 해석하고, 그 결과에 따라 제 1 계층에 해당하는 그룹에 대한 태그(33)가 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 첫 번째 그룹을 HBES 키 트리 내의 그룹들 중 제 1 계층에 해당하는 그룹으로 식별한다.
폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14를 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드가 폐기되었음을 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 종결 플래그 필드(332) = 0을 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹의 후손 그룹들에 대한 정보가 종결되지 않았음을 검출한다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드에 할당된 HBES 노드 키 세트가 폐기된 것으로 결정한다.
다음으로, 패킷 해석부(41)는 제 2 계층에 해당하는 그룹에 대한 태그(33)를 해석하고, 그 결과에 따라 제 2 계층에 해당하는 그룹에 대한 태그(33)가 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 두 번째 그룹의 선조 노드, 즉 폐기 노드 검출부(43)에 의해 폐기된 것으로 검출된 노드가 제 1 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드임을 참조하여 이 두 번째 그룹을 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹으로 식별한다.
폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14를 참조하여 그룹 식별부(42)에 의해 식별된 제 2 계층에 해당하는 가장 왼쪽 그룹에 속하는 노드들 중 가장 왼쪽 노드가 폐기되었음을 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 종결 플래그 필드(332) = 0을 참조하여 그룹 식별부(42)에 의해 식별된 제 2 계층에 해당하는 그룹의 후손 그룹들에 대한 정보가 종결되지 않았음을 검출한다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 제 2 계층에 해당하는 가장 왼쪽 그룹에 속하는 노드들 중 가장 왼쪽 노드에 할당된 HBES 노드 키 세트가 폐기된 것으로 결정한다.
이후, 제 3 계층부터 제 15 계층까지에 해당하는 그룹들에 대한 태그(33)들에 대해서도 패킷 해석부(41), 그룹 식별부(42), 폐기 노드 검출부(43), 및 폐기 키 결정부(44)에 의해 각 계층에 해당하는 그룹들 중 가장 왼쪽 그룹, 특히 이 그룹에 속하는 노드들 중 가장 왼쪽 노드에 할당된 HBES 노드 키 세트가 폐기된 것으로 결정된다.
다음으로, 패킷 해석부(41)는 제 16 계층에 해당하는 그룹에 대한 태그(33)를 해석하고, 그 결과에 따라 제 2 계층에 해당하는 그룹에 대한 태그(33)가 보류 필드(331) = 0, 종결 플래그 필드(332) = 1, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 두 번째 그룹의 선조 노드, 즉 폐기 노드 검출부(43)에 의해 폐기된 것으로 검출된 노드가 제 15 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드임을 참조하여 이 두 번째 그룹을 제 16 계층에 해당하는 그룹들 중 가장 왼쪽 그룹으로 식별한다.
폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14를 참조하여 그룹 식별부(42)에 의해 식별된 제 16 계층에 해당하는 그룹들 중 가장 왼쪽 그룹, 특히 이 그룹에 속하는 노드들 중 가장 왼쪽 노드가 폐기되었음을 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 종결 플래그 필드(332) = 1을 참조하여 그룹 식별부(42)에 의해 식별된 제 16 계층에 해당하는 그룹들 중 가장 왼쪽 그룹의 모든 후손 그룹들에 대한 정보가 종결되었음을 검출한다. 특히, 이 경우는 그룹 식별부(42)에 의해 식별된 제 16 계층 에 해당하는 그룹들 중 가장 왼쪽 그룹이 리프 그룹인 경우이다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 제 16 계층에 해당하는 그룹들 중 가장 왼쪽 그룹, 특히 이 그룹에 속하는 노드들 중 가장 왼쪽 노드에 할당된 HBES 노드 키 세트가 폐기된 것으로 결정한다.
도 7은 본 발명의 바람직한 일 실시예에 적용되는 HBES 키 트리의 또 다른 예를 도시한 도면이다.
도 7을 참조하면, 도 7에 도시된 HBES 키 트리는 HBES 키 트리의 제 16 계층의 각 그룹에 속하는 노드들 중 가장 왼쪽 노드에 할당된 HBES 노드 키 세트가 균일하게 폐기된 상태이고, 나머지는 폐기되지 않은 상태이다.
도 3에 도시된 태그(33)로 상기된 HBES 키 트리 상태를 표시하면, 다음과 같다. 제 1 계층에 해당하는 그룹에 대한 태그(33)는 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 및 구간 개수 필드(333) = 0으로 구성된다. 제 2 계층에 해당하는 그룹들 모두에 대한 태그(33)는 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 및 구간 개수 필드(333) = 0으로 구성된다. 이후, 제 3 계층부터 제 15 계층까지에 해당하는 그룹에 대한 태그(33)들은 그 각각의 상황에 따라 기술될 수 있다.
패킷 해석부(41)는 제 1 계층에 해당하는 그룹에 대한 태그(33)를 해석하고, 그 결과에 따라 제 1 계층에 해당하는 그룹에 대한 태그(33)가 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 및 구간 개수 필드(333) = 0으로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 첫 번째 그룹을 HBES 키 트리 내의 그룹들 중 제 1 계층에 해당하는 그룹으로 식별한다.
폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 구간 개수 필드(333) = 0을 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 모두가 폐기되었음을 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 종결 플래그 필드(332) = 0을 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹의 후손 그룹들에 대한 정보가 종결되지 않았음을 검출한다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 모두에 할당된 HBES 노드 키 세트들이 폐기된 것으로 결정한다.
다음으로, 패킷 해석부(41)는 제 2 계층에 해당하는 그룹에 대한 태그(33)를 해석하고, 그 결과에 따라 제 2 계층에 해당하는 그룹에 대한 태그(33)가 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 두 번째 그룹의 선조 노드, 즉 폐기 노드 검출부(43)에 의해 폐기된 것으로 검출된 노드가 제 1 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드임을 참조하여 이 두 번째 그룹을 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹으로 식별한다.
폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 구 간 개수 필드(333) = 0을 참조하여 그룹 식별부(42)에 의해 식별된 제 2 계층에 해당하는 가장 왼쪽 그룹에 속하는 노드들 모두가 폐기되었음을 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 종결 플래그 필드(332) = 0을 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹의 후손 그룹들에 대한 정보가 종결되지 않았음을 검출한다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 모두에 할당된 HBES 노드 키 세트들이 폐기된 것으로 결정한다.
이후, 상기된 그룹 이외의 다른 그룹들에 대한 태그(33)들에 대해서도 패킷 해석부(41), 그룹 식별부(42), 폐기 노드 검출부(43), 및 폐기 키 결정부(44)에 의해 그 각각의 상황에 따라 그 그룹들에 속하는 노드들에 할당된 HBES 노드 키 세트의 폐기 여부가 결정된다.
도 8은 본 발명의 바람직한 일 실시예에 적용되는 HBES 키 트리의 다른 예를 도시한 도면이다.
도 8을 참조하면, 도 8에 도시된 HBES 키 트리는 HBES 키 트리의 제 2 계층의 그룹들 중 가장 왼쪽 그룹, 특히 이 그룹에 속하는 노드들 중 가장 왼쪽 노드의 모든 후손 그룹들에 속하는 노드들에 할당된 HBES 노드 키 세트가 폐기된 상태이고, 나머지는 폐기되지 않은 상태이다.
도 3에 도시된 태그(33)로 상기된 HBES 키 트리 상태를 표시하면, 다음과 같다. 제 1 계층에 해당하는 그룹에 대한 태그(33)는 보류 필드(331) = 0, 종결 플래 그 필드(332) = 0, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성된다. 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹에 대한 태그(33)는 보류 필드(331) = 0, 종결 플래그 필드(332) = 1, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성된다.
패킷 해석부(41)는 제 1 계층에 해당하는 그룹에 대한 태그(33)를 해석하고, 그 결과에 따라 제 1 계층에 해당하는 그룹에 대한 태그(33)가 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 첫 번째 그룹을 HBES 키 트리 내의 그룹들 중 제 1 계층에 해당하는 그룹으로 식별한다.
폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14를 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드가 폐기되었음을 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 종결 플래그 필드(332) = 0을 참조하여 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹의 후손 그룹들에 대한 정보가 종결되지 않았음을 검출한다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 제 1 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드에 할당된 HBES 노드 키 세트가 폐기된 것으로 결정한다.
다음으로, 패킷 해석부(41)는 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹에 대한 태그(33)를 해석하고, 그 결과에 따라 제 2 계층에 해당하는 그룹에 대한 태그(33)가 보류 필드(331) = 0, 종결 플래그 필드(332) = 0, 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14로 구성되어 있음을 인지한다.
그룹 식별부(42)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 두 번째 그룹의 선조 노드, 즉 폐기 노드 검출부(43)에 의해 폐기된 것으로 검출된 노드가 제 1 계층에 해당하는 그룹에 속하는 노드들 중 가장 왼쪽 노드임을 참조하여 이 두 번째 그룹을 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹으로 식별한다.
폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 구간 개수 필드(333) = 1, 구간 시작 필드(334) = 1, 및 구간 길이 필드(335) = 14를 참조하여 그룹 식별부(42)에 의해 식별된 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹, 특히 이 그룹에 속하는 노드들 중 가장 왼쪽 노드가 폐기되었음을 검출한다.
또한, 폐기 노드 검출부(43)는 패킷 해석부(32)에서의 해석 결과에 따라 인지된 종결 플래그 필드(332) = 1을 참조하여 그룹 식별부(42)에 의해 식별된 제 2 계층에 해당하는 그룹의 모든 후손 그룹들에 대한 정보가 종결되었음을 검출한다. 특히, 이 경우는 그룹 식별부(42)에 의해 식별된 그룹의 모든 후손 그룹들에 속하는 노드들이 폐기된 경우이다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 제 2 계층에 해당하는 그룹들 중 가장 왼쪽 그룹, 특히 이 그룹에 속하는 노드들 중 가장 왼쪽 노드에 할당된 HBES 노드 키 세트가 폐기된 것으로 결정한다. 또한, 폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 제 2 계층에 해당하는 그룹들 중, 가장 왼쪽 그룹의 모든 후손 그룹들에 대한 정보가 종결된 것으로 검출되면, 폐기 노드 검출부(43)에 의해 제 2 계층에 해당하는 그룹에 속하는 노드들 모두가 폐기된 것으로 검출된 것에 따라 이 후손 그룹들에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 각각이 폐기된 것으로 한 번에 결정한다.
도 9는 종래 기술에 따른 태그의 크기와 본 발명의 바람직한 일 실시예에 따른 태그의 크기의 비교 표를 도시한 도면이다.
도 9를 참조하면, 상기된 도 5, 도 6, 도 7, 및 도 8의 경우 모두에 대해서 종래 기술에 따른 태그의 크기에 비해 본 실시예에 따른 태그의 크기가 매우 감소되었다는 것을 알 수 있다. 특히, 태그가 보다 많은 그룹들에 관한 정보를 포함할수록 그 크기는 훨씬 더 감소된다는 것을 알 수 있다.
도 10은 본 발명의 바람직한 일 실시예에 따른 복호화 장치의 구성도이다.
도 10을 참조하면, 본 실시예에 따른 복호화 장치(10)는 도 4에 도시된 폐기 키 결정 장치(4)를 이용한 하나의 응용례로서, 수신부(101), 패킷 해석부(41), 그룹 식별부(42), 폐기 노드 검출부(43), 폐기 키 결정부(44), 제 1 복호화부(102), 제 2 복호화부(103), 및 컨텐트 출력부(104)로 구성된다. 따라서, 이하 생략된 내 용이라 하더라도 도 4에 도시된 폐기 키 결정 장치(4)에 관하여 이상에서 기술된 내용은 본 실시예에 따른 복호화 장치(10)에도 적용된다.
수신부(101)는 컨텐트 서버로부터 네트워크 등의 전송 매체를 경유하여 어느 하나의 패킷을 수신한다.
패킷 해석부(41)는 수신부(101)에 수신된 패킷을 해석하고, 그 결과에 따라 패킷의 구성을 인지한다.
그룹 식별부(42)는 패킷 해석부(41)에서의 해석 결과에 따라 인지된 HBES 키 트리 구조에 기초하여 HBES 키 트리 내의 그룹들 중 적어도 하나 이상의 그룹을 식별한다.
폐기 노드 검출부(43)는 그룹 식별부(42)에 의해 식별된 그룹에 속하는 노드들 중 적어도 하나 이상의 폐기되지 않은 노드의 구간에 관한 정보로부터 이 노드들 각각의 폐기 여부를 검출한다.
폐기 키 결정부(44)는 폐기 노드 검출부(43)에 의해 검출된 결과에 따라 그룹 식별부(42)에 의해 식별된 그룹에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 각각의 폐기 여부를 결정한다.
제 1 복호화부(102)는 폐기 키 결정부(44)에 의해 폐기되지 않은 것으로 결정된 HBES 노드 키 세트를 사용하여, 패킷 해석부(41)에서의 해석 결과에 따라 인지된 헤더(31)에 기록된 암호화된 컨텐트 키를 복호화한다.
제 2 복호화부(103)는 제 1 복호화부(102)에 의해 복호화된 컨텐트 키를 사용하여, 패킷 해석부(41)에서의 해석 결과에 따라 인지된 페이로드(32)에 기록된 암호화된 컨텐트를 복호화한다.
컨텐트 출력부(104)는 제 2 복호화부(103)에 의해 복호화된 컨텐트를 사용자에게 출력한다. 컨텐트 출력부(104)는 컨텐트의 특성에 대응하는 방식으로 컨텐트를 처리하여 사용자에게 출력한다. 예를 들어, 컨텐트가 압축된 형태인 경우, 컨텐트 출력부(104)는 컨텐트의 압축을 풀고, 그 결과를 사용자에게 출력한다.
도 11은 본 발명의 바람직한 일 실시예에 따른 폐기 키 결정 방법의 흐름도이다.
도 11을 참조하면, 본 실시예에 따른 폐기 키 결정 방법은 다음과 같은 단계들로 구성된다. 본 실시예에 따른 폐기 키 결정 방법은 도 4에 도시된 폐기 키 결정 장치(4)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 4에 도시된 폐기 키 결정 장치(4)에 관하여 이상에서 기술된 내용은 본 실시예에 따른 폐기 키 결정 방법에도 적용된다.
111 단계에서 폐기 키 결정 장치(4)는 도 3에 도시된 패킷을 해석하고, 그 결과에 따라 패킷의 구성을 인지한다.
112 단계에서 폐기 키 결정 장치(4)는 111 단계에서의 해석 결과에 따라 인지된 HBES 키 트리 구조에 기초하여 HBES 키 트리 내의 그룹들 중 적어도 하나 이상의 그룹을 식별한다. 보다 상세하게 설명하면, 112 단계에서 폐기 키 결정 장치(4)는 L 계층들 중 어느 하나의 계층에 해당하는 그룹에 속하는 노드의 위치에 기초하여 이 계층의 다음 하위 계층에 해당하는 그룹을 식별한다.
113 단계에서 폐기 키 결정 장치(4)는 112 단계에서 식별된 그룹에 속하는 노드들 중 적어도 하나 이상의 폐기되지 않은 노드의 구간에 관한 정보로부터 이 노드들 각각의 폐기 여부를 검출한다.
114 단계에서 폐기 키 결정 장치(4)는 112 단계에서 식별된 그룹에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 중, 113 단계에서 폐기된 것으로 검출된 노드에 할당된 HBES 노드 키 세트를 폐기된 것으로 결정한다.
115 단계에서 폐기 키 결정 장치(4)는 112 단계에서 식별된 그룹에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 중, 113 단계에서 폐기된 것으로 검출된 노드 이외의 다른 노드에 할당된 HBES 노드 키 세트를 폐기되지 않은 것으로 결정한다.
116 단계에서 폐기 키 결정 장치(4)는 112 단계에서 식별된 그룹의 후손 그룹들에 대한 정보의 종결 여부를 검출하고, 112 단계에서 식별된 그룹의 후손 그룹들에 대한 정보가 종결되지 않은 것으로 검출되면, 111 단계로 돌아간다.
117 단계에서 폐기 키 결정 장치(4)는 116 단계에서, 112 단계에서 식별된 그룹의 후손 그룹들에 대한 정보가 종결된 것으로 검출되면, 112 단계에서 식별된 그룹에 속하는 노드들 각각의 폐기 여부에 따라 이 후손 그룹들에 속하는 모든 노드들 각각에 할당된 HBES 노드 키 세트들 각각의 폐기 여부를 한번에 결정한다.
도 12a 및 도 12b는 본 발명의 바람직한 일 실시예에 따른 복호화 방법의 흐름도이다.
도 12a 및 도 12b를 참조하면, 본 실시예에 따른 복호화 방법은 다음과 같은 단계들로 구성된다. 본 실시예에 따른 복호화 방법은 도 4에 도시된 복호화 장치 (10)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 4에 도시된 복호화 장치(10)에 관하여 이상에서 기술된 내용은 본 실시예에 따른 복호화 방법에도 적용된다.
121 단계에서 복호화 장치(10)는 컨텐트 서버로부터 네트워크 등의 전송 매체를 경유하여 어느 하나의 패킷을 수신한다.
122 단계에서 복호화 장치(10)는 121 단계에서 수신된 패킷을 해석하고, 그 결과에 따라 패킷의 구성을 인지한다.
123 단계에서 복호화 장치(10)는 122 단계에서의 해석 결과에 따라 인지된 HBES 키 트리 구조에 기초하여 HBES 키 트리 내의 그룹들 중 적어도 하나 이상의 그룹을 식별한다. 보다 상세하게 설명하면, 123 단계에서 복호화 장치(10)는 L 계층들 중 어느 하나의 계층에 해당하는 그룹에 속하는 노드의 위치에 기초하여 이 계층의 다음 하위 계층에 해당하는 그룹을 식별한다.
124 단계에서 복호화 장치(10)는 123 단계에서 식별된 그룹에 속하는 노드들 중 적어도 하나 이상의 폐기되지 않은 노드의 구간에 관한 정보로부터 이 노드들 각각의 폐기 여부를 검출한다.
125 단계에서 복호화 장치(10)는 123 단계에서 식별된 그룹에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 중, 124 단계에서 폐기된 것으로 검출된 노드에 할당된 HBES 노드 키 세트를 폐기된 것으로 결정한다.
126 단계에서 복호화 장치(10)는 123 단계에서 식별된 그룹에 속하는 노드들 각각에 할당된 HBES 노드 키 세트들 중, 124 단계에서 폐기된 것으로 검출된 노드 이외의 다른 노드에 할당된 HBES 노드 키 세트를 폐기되지 않은 것으로 결정한다.
127 단계에서 복호화 장치(10)는 123 단계에서 식별된 그룹의 후손 그룹들에 대한 정보의 종결 여부를 검출하고, 123 단계에서 식별된 그룹의 후손 그룹들에 대한 정보가 종결되지 않은 것으로 검출되면, 122 단계로 돌아간다.
128 단계에서 복호화 장치(10)는 127 단계에서, 123 단계에서 식별된 그룹의 후손 그룹들에 대한 정보가 종결된 것으로 검출되면, 123 단계에서 식별된 그룹에 속하는 노드들 각각의 폐기 여부에 따라 이 후손 그룹들에 속하는 모든 노드들 각각에 할당된 HBES 노드 키 세트들 각각의 폐기 여부를 한번에 결정한다.
129 단계에서 복호화 장치(10)는 126 단계 및 128 단계에서 폐기되지 않은 것으로 결정된 HBES 노드 키 세트를 사용하여 패킷 해석부(41)에서의 해석 결과에 따라 인지된 헤더(31)에 기록된 암호화된 컨텐트 키를 복호화한다.
130 단계에서 복호화 장치(10)는 129 단계에서 복호화된 컨텐트 키를 사용하여, 패킷 해석부(41)에서의 해석 결과에 따라 인지된 페이로드(32)에 기록된 암호화된 컨텐트를 복호화한다.
131 단계에서 복호화 장치(10)는 130 단계에서 복호화된 컨텐트를 사용자에게 출력한다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 본 발명의 실시예에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하 여 기록될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
본 발명에 따르면, HBES 키 트리 구조에 기초하여 그룹을 식별함으로서 종래 HBES에서 많은 비트 수를 요구했던 그룹 아이디를 제거할 수 있으며, 이에 따라 HBES 노드 키의 폐기 여부에 관한 정보가 기록된 태그의 크기를 줄일 수 있다는 효과가 있다. 또한, 본 발명에 따르면, HBES 키 트리 내의 어떤 그룹의 후손 그룹들에 대한 정보의 종결 여부를 나타내는 필드를 도입함으로서 후손 그룹들에 대한 정보를 더 이상 표현할 필요가 없게 되어 HBES 노드 키의 폐기 여부에 관한 정보가 기록된 태그의 크기를 더욱 줄일 수 있다는 효과가 있다.

Claims (17)

  1. (a) 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 상기 그룹들 중 적어도 하나 이상의 그룹을 식별하는 단계;
    (b) 상기 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출하는 단계; 및
    (c) 상기 검출된 결과에 따라 상기 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 결정하는 단계를 포함하는 것을 특징으로 하는 폐기 키 결정 방법.
  2. 제 1 항에 있어서,
    상기 (a) 단계는 다수의 계층들 중 어느 하나의 계층에 해당하는 그룹에 속하는 노드의 위치에 기초하여 상기 계층의 다음 하위 계층에 해당하는 그룹을 식별하는 것을 특징으로 하는 폐기 키 결정 방법.
  3. 제 1 항에 있어서,
    상기 (b) 단계는 상기 식별된 그룹의 후손 그룹들에 대한 정보의 종결 여부를 검출하고,
    상기 (c) 단계는 상기 (b) 단계에서 상기 후손 그룹들에 대한 정보가 종결된 것으로 검출되면, 상기 후손 그룹들에 속하는 모든 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 한번에 결정하는 것을 특징으로 하는 폐기 키 결정 방법.
  4. 제 3 항에 있어서,
    상기 (b) 단계는 상기 식별된 그룹이 리프 그룹인 경우, 상기 식별된 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기된 경우, 또는 상기 식별된 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기되지 않은 경우에 상기 후손 그룹에 대한 정보가 종결된 것으로 검출하는 것을 특징으로 하는 폐기 키 결정 방법.
  5. 제 1 항에 있어서,
    상기 (b) 단계는 상기 노드들 중 적어도 하나 이상의 폐기되지 않은 노드의 구간에 관한 정보로부터 상기 노드들 각각의 폐기 여부를 검출하는 것을 특징으로 폐기 키 결정 방법.
  6. 제 1 항에 있어서,
    상기 그룹은 하나의 시드 값 및 이 시드 값과 다른 시드 값들 각각이 서로 다른 횟수로 해시된 값들로 구성된 키 세트가 할당된 노드들의 그룹임을 특징으로 하는 폐기 키 결정 방법.
  7. 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 상기 그룹들 중 적어도 하나 이상의 그룹을 식별 하는 식별부;
    상기 식별부에 의해 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출하는 검출부; 및
    상기 검출부에 의해 검출된 결과에 따라 상기 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 결정하는 결정부를 포함하는 것을 특징으로 하는 폐기 키 결정 장치.
  8. 제 7 항에 있어서,
    상기 식별부는 다수의 계층들 중 어느 하나의 계층에 해당하는 그룹에 속하는 노드의 위치에 기초하여 상기 계층의 다음 하위 계층에 해당하는 그룹을 식별하는 것을 특징으로 하는 폐기 키 결정 장치.
  9. 제 7 항에 있어서,
    상기 검출부는 상기 식별된 그룹의 후손 그룹들에 대한 정보의 종결 여부를 검출하고,
    상기 결정부는 상기 검출부에 의해 상기 후손 그룹들에 대한 정보가 종결된 것으로 검출되면, 상기 후손 그룹들에 속하는 모든 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 한번에 결정하는 것을 특징으로 하는 폐기 키 결정 장치.
  10. 제 1 항 내지 제 6 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위 한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  11. (a) 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 상기 그룹들 중 적어도 하나 이상의 그룹을 식별하는 단계;
    (b) 상기 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출하는 단계;
    (c) 상기 검출된 결과에 따라 상기 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 결정하는 단계; 및
    (d) 상기 폐기되지 않은 것으로 결정된 키 세트를 사용하여 암호화된 컨텐트를 복호화하는 단계를 포함하는 것을 특징으로 하는 복호화 방법.
  12. 제 11 항에 있어서,
    상기 (d) 단계는
    상기 폐기되지 않은 것으로 결정된 키 세트를 사용하여 암호화된 컨텐트 키를 복호화하는 단계; 및
    상기 복호화된 컨텐트 키를 사용하여 상기 암호화된 컨텐트를 복호화하는 단계를 포함하는 것을 특징으로 하는 복호화 방법.
  13. 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들이 트리 형태로 계층적으로 배열된 구조에 기초하여 상기 그룹들 중 적어도 하나 이상의 그룹을 식별 하는 식별부;
    상기 식별부에 의해 식별된 그룹에 속하는 노드들 각각의 폐기 여부를 검출하는 검출부;
    상기 검출부에 의해 검출된 결과에 따라 상기 노드들 각각에 할당된 키 세트들 각각의 폐기 여부를 결정하는 결정부; 및
    상기 결정부에 의해 폐기되지 않은 것으로 결정된 키 세트를 사용하여 암호화된 컨텐트를 복호화하는 복호화부를 포함하는 것을 특징으로 하는 복호화 장치.
  14. 제 13 항에 있어서,
    상기 복호화부는
    상기 결정부에 의해 폐기되지 않은 것으로 결정된 키 세트를 사용하여 암호화된 컨텐트 키를 복호화하는 제 1 복호화부; 및
    상기 제 1 복호화부에 의해 복호화된 컨텐트 키를 사용하여 상기 암호화된 컨텐트를 복호화하는 제 2 복호화부를 포함하는 것을 특징으로 하는 복호화 장치.
  15. 제 11 항 내지 제 12 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  16. 컨텐트 보호를 위한 키 세트들이 할당된 노드들의 그룹들 중 어느 하나 그룹의 후손 그룹들에 대한 정보의 종결 여부를 나타내는 제 1 필드; 및
    상기 그룹에 속하는 노드들 각각의 폐기 여부를 나타내는 제 2 필드를 포함하는 것을 특징으로 하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 기록매체.
  17. 제 16 항에 있어서,
    상기 제 1 필드는 상기 그룹이 리프 그룹인 경우, 상기 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기된 경우, 또는 상기 그룹의 후손 그룹들에 속하는 모든 노드들이 폐기되지 않은 경우에 상기 후손 그룹에 대한 정보가 종결되었음을 나타내는 것을 특징으로 하는 데이터 구조를 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020050055124A 2005-04-06 2005-06-24 폐기 키를 결정하는 방법 및 장치와 이것을 이용하여복호화하는 방법 및 장치 Expired - Fee Related KR100717005B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/KR2006/001245 WO2006107171A1 (en) 2005-04-06 2006-04-05 Apparatus and method for determining revocation key, and apparatus and method for decrypting contents using the same
EP06747322A EP1875658A4 (en) 2005-04-06 2006-04-05 DEVICE AND METHOD FOR DETERMINING A RESTRICTION KEY AND DEVICE AND METHOD FOR DECRYLING CONTENTS THEREWITH
CN2006800106230A CN101151839B (zh) 2005-04-06 2006-04-05 确定撤销密钥的设备和方法以及使用该确定撤销密钥的设备和方法来解密内容的设备和方法
JP2008505232A JP4954972B2 (ja) 2005-04-06 2006-04-05 廃棄キーの決定方法及び決定装置、復号化方法及び復号化装置並びに記録媒体
US11/398,633 US20070174609A1 (en) 2005-04-06 2006-04-06 Apparatus and method for determining revocation key, and apparatus and method for decrypting contents using the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US66860705P 2005-04-06 2005-04-06
US60/668,607 2005-04-06

Publications (2)

Publication Number Publication Date
KR20060106551A KR20060106551A (ko) 2006-10-12
KR100717005B1 true KR100717005B1 (ko) 2007-05-10

Family

ID=37627263

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050055124A Expired - Fee Related KR100717005B1 (ko) 2005-04-06 2005-06-24 폐기 키를 결정하는 방법 및 장치와 이것을 이용하여복호화하는 방법 및 장치

Country Status (6)

Country Link
US (1) US20070174609A1 (ko)
EP (1) EP1875658A4 (ko)
JP (1) JP4954972B2 (ko)
KR (1) KR100717005B1 (ko)
CN (1) CN101151839B (ko)
WO (1) WO2006107171A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4984827B2 (ja) * 2006-10-30 2012-07-25 ソニー株式会社 鍵生成装置、暗号化装置、受信装置、鍵生成方法、暗号化方法、鍵処理方法、およびプログラム
KR20140028342A (ko) * 2012-08-28 2014-03-10 삼성전자주식회사 브로드캐스트 암호화를 위한 키 관리 방법 및 브로드캐스트 암호화를 이용한 메시지 전송 방법
US9306743B2 (en) * 2012-08-30 2016-04-05 Texas Instruments Incorporated One-way key fob and vehicle pairing verification, retention, and revocation
US9425967B2 (en) * 2013-03-20 2016-08-23 Industrial Technology Research Institute Method for certificate generation and revocation with privacy preservation
DE102014204044A1 (de) * 2014-03-05 2015-09-10 Robert Bosch Gmbh Verfahren zum Widerrufen einer Gruppe von Zertifikaten
CN104901931B (zh) 2014-03-05 2018-10-12 财团法人工业技术研究院 证书管理方法与装置
KR102306676B1 (ko) 2014-06-27 2021-09-28 삼성전자주식회사 스토리지 디바이스용 호스트 키 생성 방법 및 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030142826A1 (en) 2002-01-30 2003-07-31 Tomoyuki Asano Efficient revocation of receivers
KR20030085125A (ko) * 2001-01-26 2003-11-03 인터내셔널 비지네스 머신즈 코포레이션 브로드캐스트 암호화 및 상태 비유지 수신기들의 키 철회방법
WO2004064313A1 (en) 2003-01-15 2004-07-29 Matsushita Electric Industrial Co., Ltd. Content protection system, key data generation apparatus, and terminal appparatus
KR20050013583A (ko) * 2002-06-17 2005-02-04 코닌클리케 필립스 일렉트로닉스 엔.브이. 그룹 인증서들을 사용하는 장치들간의 인증용 시스템

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL106796A (en) * 1993-08-25 1997-11-20 Algorithmic Res Ltd Broadcast encryption
JP3548215B2 (ja) * 1993-12-22 2004-07-28 キヤノン株式会社 通信方法及びそのシステム
US6240188B1 (en) * 1999-07-06 2001-05-29 Matsushita Electric Industrial Co., Ltd. Distributed group key management scheme for secure many-to-many communication
AU6620000A (en) * 1999-08-06 2001-03-05 Frank W Sudia Blocked tree authorization and status systems
US7505599B2 (en) * 2000-04-06 2009-03-17 Sony Corporation Information processing system and method for managing encrypted data with tag information
MXPA02001533A (es) * 2000-06-15 2002-07-02 Sony Corp Sistema de procesamiento de informacion y metodo que utiliza bloque de claves de criptografiado.
US6839436B1 (en) * 2000-10-16 2005-01-04 Lucent Technologies Inc. Method for providing long-lived broadcast encrypton
JP4622087B2 (ja) * 2000-11-09 2011-02-02 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム記憶媒体
US7010125B2 (en) * 2001-01-26 2006-03-07 Interntional Business Machines Corporation Method for tracing traitor receivers in a broadcast encryption system
JP4199472B2 (ja) * 2001-03-29 2008-12-17 パナソニック株式会社 暗号化を施すことによりデータを保護するデータ保護システム
JP4220213B2 (ja) * 2001-10-26 2009-02-04 パナソニック株式会社 著作物保護システム、鍵管理装置及び利用者装置
WO2003036859A2 (en) * 2001-10-26 2003-05-01 Matsushita Electric Industrial Co., Ltd. Key management apparatus
CN1608361A (zh) * 2001-10-26 2005-04-20 松下电器产业株式会社 数字作品保护系统、密钥管理设备和用户设备
JP4383084B2 (ja) * 2002-05-09 2009-12-16 パナソニック株式会社 公開鍵証明書の無効化リスト生成装置、無効判定装置及び認証システム
JP2004118830A (ja) * 2002-09-03 2004-04-15 Matsushita Electric Ind Co Ltd 地域限定再生システム
US20040117440A1 (en) * 2002-12-17 2004-06-17 Singer Mitch Fredrick Media network environment
JP2004328233A (ja) * 2003-04-23 2004-11-18 Sony Corp データ処理方法、プログラムおよびデータ処理装置
US7730518B2 (en) * 2003-07-31 2010-06-01 Emc Corporation Method and apparatus for graph-based partition of cryptographic functionality
WO2005015557A2 (en) * 2003-08-08 2005-02-17 Koninklijke Philips Electronics N.V. Reproducing encrypted content using region keys
JP2005286959A (ja) * 2004-03-31 2005-10-13 Sony Corp 情報処理方法、復号処理方法、および情報処理装置、並びにコンピュータ・プログラム
US7392381B2 (en) * 2004-04-13 2008-06-24 Intel Corporation Proactive forced renewal of content protection implementations

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030085125A (ko) * 2001-01-26 2003-11-03 인터내셔널 비지네스 머신즈 코포레이션 브로드캐스트 암호화 및 상태 비유지 수신기들의 키 철회방법
US20030142826A1 (en) 2002-01-30 2003-07-31 Tomoyuki Asano Efficient revocation of receivers
KR20050013583A (ko) * 2002-06-17 2005-02-04 코닌클리케 필립스 일렉트로닉스 엔.브이. 그룹 인증서들을 사용하는 장치들간의 인증용 시스템
WO2004064313A1 (en) 2003-01-15 2004-07-29 Matsushita Electric Industrial Co., Ltd. Content protection system, key data generation apparatus, and terminal appparatus

Also Published As

Publication number Publication date
WO2006107171A1 (en) 2006-10-12
EP1875658A4 (en) 2011-06-15
JP4954972B2 (ja) 2012-06-20
KR20060106551A (ko) 2006-10-12
EP1875658A1 (en) 2008-01-09
WO2006107171A8 (en) 2006-12-14
US20070174609A1 (en) 2007-07-26
JP2008535440A (ja) 2008-08-28
CN101151839B (zh) 2012-05-30
CN101151839A (zh) 2008-03-26

Similar Documents

Publication Publication Date Title
KR101229498B1 (ko) 트랜스포트 스트림을 임포트하는 방법 및 장치
KR100562982B1 (ko) 브로드캐스트 암호화 시스템에서 트레이터 수신기들을추적하기 위한 방법
CN115801315B (zh) 数据传输方法及装置、电子设备、存储介质
EP2268020B1 (en) Protection of audio or video data in a playback device
US20030081786A1 (en) Key management apparatus
US20100183148A1 (en) Recording keys in a broadcast-encryption-based system
US7746738B2 (en) Data processing method, information recording medium manufacturing management system, recording data generation apparatus and method, and computer program
KR101086431B1 (ko) 폐기 메커니즘 상에서 외부 디바이스 또는 서비스를이용하는 복호화 방법 및 장치, 이를 위한 복호화 지원방법 및 장치
KR101485460B1 (ko) 브로드캐스트 암호화에서 디바이스 키를 추적하는 방법
KR101022465B1 (ko) 암호화된 디지털 데이터의 복사 및 복호화 방법 및 장치
US8122501B2 (en) Traitor detection for multilevel assignment
KR20060106551A (ko) 폐기 키를 결정하는 방법 및 장치와 이것을 이용하여복호화하는 방법 및 장치
US8533849B2 (en) Traitor tracing in a content protection system
KR100765750B1 (ko) 브로드캐스트 암호화 방식에 따라 효율적으로암호화/복호화하는 방법 및 장치
US20110123023A1 (en) Apparatus for video encryption by randomized block shuffling and method thereof
KR100708134B1 (ko) 브로드캐스트 암호화 방식에 따라 효율적으로암호화/복호화하는 방법 및 장치
KR100708133B1 (ko) 브로드캐스트 암호화 방식에 따라 효율적으로암호화/복호화하는 방법 및 장치
KR101055622B1 (ko) 데이터 추론에 대응하기 위한 xml 문서 레이블링, xml 문서의 재구조 방법, 및 그 장치
Germany METHODS, RESULTS AND SOLUTIONS
Jin et al. Defending against the pirate evolution attack

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

FPAY Annual fee payment

Payment date: 20100429

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

FPAY Annual fee payment

Payment date: 20110428

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

FPAY Annual fee payment

Payment date: 20120427

Year of fee payment: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

FPAY Annual fee payment

Payment date: 20130429

Year of fee payment: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

FPAY Annual fee payment

Payment date: 20140429

Year of fee payment: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

FPAY Annual fee payment

Payment date: 20150429

Year of fee payment: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

FPAY Annual fee payment

Payment date: 20160428

Year of fee payment: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20170505

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20170505