KR20090092509A - 멀티캐스트 서비스를 위한 그룹 키 관리 방법 - Google Patents

멀티캐스트 서비스를 위한 그룹 키 관리 방법

Info

Publication number
KR20090092509A
KR20090092509A KR1020080017790A KR20080017790A KR20090092509A KR 20090092509 A KR20090092509 A KR 20090092509A KR 1020080017790 A KR1020080017790 A KR 1020080017790A KR 20080017790 A KR20080017790 A KR 20080017790A KR 20090092509 A KR20090092509 A KR 20090092509A
Authority
KR
South Korea
Prior art keywords
tree structure
key
user terminal
terminal device
group
Prior art date
Application number
KR1020080017790A
Other languages
English (en)
Other versions
KR101455827B1 (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 KR1020080017790A priority Critical patent/KR101455827B1/ko
Publication of KR20090092509A publication Critical patent/KR20090092509A/ko
Application granted granted Critical
Publication of KR101455827B1 publication Critical patent/KR101455827B1/ko

Links

Classifications

    • 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/0819Key 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/083Key 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/0833Key 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/0836Key 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 멀티캐스트 서비스를 위한 논리적 계층 구조에 따라 그룹 키를 관리하는 방법에 관한 것이다. 본 발명의 키 분배 센터에서 그룹 키를 관리하는 방법은 사용자 단말 장치로부터 상기 사용자 단말 장치의 자원 정보를 포함하는 참가 요청 메시지를 수신하는 단계; 상기 자원 정보에 기초하여 그룹 키 제공을 위한 트리 구조를 결정하는 단계; 및 상기 결정되는 트리 구조에 기초하여 상기 사용자 단말 장치에 그룹 키를 분배하는 단계를 포함하여, 그룹 키를 분배하는 트리 구조를 형성할 때 통신량 뿐만 아니라 사용자 단말 장치의 계산량 및 저장량을 고려하여, 사용자 단말 장치에 효율적으로 그룹 키를 분배할 수 있다.

Description

멀티캐스트 서비스를 위한 그룹 키 관리 방법{Method for managing group keys in multi-cast service}
본 발명은 그룹 키 관리 방법에 관한 것으로, 특히 멀티캐스트 서비스를 위한 논리적 계층 구조에 따라 그룹 키를 관리하는 방법에 관한 것이다.
4G 네트워크 기술이 발달함에 따라 저렴한 비용으로 고속 데이터 서비스가 가능하게 되고 IPTV, VoD, 뮤직 스트리밍 그리고 개인용 스트리밍과 같은 서비스의 수요가 늘어날 것으로 예상된다. 이러한 멀티미디어 데이터를 각 사용자에게 보내는 것보다 한 번에 보내는 것이 데이터 전송에 효율적이다. 따라서, 멀티미디어와 같은 서비스를 위한 멀티캐스트 서비스는 4G 네트워크에서 주요한 서비스가 될 것이다. 그런데, 멀티캐스트 서비스는 허가된 사용자만 접근할 수 있도록 해야 하므로 접근 제어하기 위한 기술과 이러한 접근 제어를 효율적으로 제공하는 기술이 개발되고 있다.
본 발명은 멀티캐스트 서비스를 위한 논리적 계층 구조에 따라 그룹 키를 관리하는 방법을 제안한다.
본 발명의 일 양상에 따른 키 분배 센터에서 그룹 키를 관리하는 방법은, 사용자 단말 장치로부터 사용자 단말 장치의 자원 정보를 포함하는 참가 요청 메시지를 수신하는 단계; 자원 정보에 기초하여 그룹 키 제공을 위한 트리 구조를 결정하는 단계; 및 결정되는 트리 구조에 기초하여 사용자 단말 장치에 그룹 키를 분배하는 단계를 포함한다.
본 발명의 다른 양상에 따른 사용자 단말 장치에서 그룹 키를 관리하는 방법은, 사용자 단말 장치의 자원 정보를 포함하는 참가 요청 메시지를 키 분배 센터로 전송하는 단계; 및 키 분배 센터로부터 자원 정보에 기초하여 결정된 그룹 키 제공을 위한 트리 구조에 따라 분배되는 키를 수신하는 단계를 포함한다.
본 발명의 또 다른 양상에 따른 단말 장치는 프로세서; 멀티캐스트 서비스에 필요한 키들을 저장하는 메모리; 및 네트워크를 통해 통신을 수행하는 통신부를 포함하고, 상기 프로세서가 상기 메모리에 포함된 사용자 단말 장치의 자원 정보를 포함하는 참가 요청 메시지를 키 분배 센터로 전송하고, 상기 키 분배 센터로부터 상기 자원 정보에 기초하여 결정된 그룹 키 제공을 위한 트리 구조에 따라 분배되는 키를 수신하여 상기 메모리에 저장하도록 제어한다.
도 1은 논리적 키 계층 구조의 일 예를 나타내는 도면이고,
도 2는 본 발명의 일 실시예에 따른 k레벨의 CCST 트리를 나타내는 도면이고,
도 3a는 본 발명의 일 실시예에 따른 CCST 트리 구조에 기초한 키 관리 방법을 나타내는 도면이고,
도 3b는 본 발명의 다른 실시예에 따른 CCST 트리 구조에 기초한 키 관리 방법을 나타내는 도면이고,
도 4a는 본 발명의 일 실시예에 따른 키 관리 프로토콜을 나타내는 도면이고,
도 4b는 본 발명의 다른 실시예에 따른 키 관리 프로토콜을 나타내는 도면이고,
도 5는 본 발명의 일 실시예에 따른 키 분배 센터에서 그룹 키를 관리하는 방법을 나타내는 순서도이고,
도 6은 본 발명의 다른 실시예에 따른 키 분배 센터에서 그룹 키를 관리하는 방법을 나타내는 순서도이고,
도 7은 본 발명의 일 실시예에 따른 사용자 단말 장치에서 그룹 키를 관리하는 방법을 나타내는 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예를 상세하게 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 논리적 키 계층구조의 일 예를 나타내는 도면이다.
멀티캐스트 서비스를 제공하기 위해서는 전체 사용자들 중에서 송신자인 키 분배 센터(즉, 방송 센터)가 원하는 사용자들에게만 정보를 효과적으로 전달하기 위하여 브로드캐스트 암호화(Broadcast Encryption)가 이용된다. BE에서의 가장 중요한 성질은 원치 않는 사용자(예를 들어, 불법 사용자 또는 사용 기간이 만료된 사용자)의 배제(revocation) 또는 제외이다.
BE에서는 전송량(transmission overhead), 저장량(storage overhead), 계산량(computation overhead)를 고려한다. 전송량은 전송측에서 전송해야 하는 업데이트해야 할 메시지의 전송량을 의미하고, 저장량은 사용자 단말 장치가 저장해야 하는 비밀 키의 양이고, 계산량은 사용자 단말 장치가 데이터 복호화 키(또는 세션 키)를 얻기 위해 필요한 계산의 양을 의미한다.
멀티캐스트 서비스를 제공하기 위한 키 관리 방법으로서 논리적 키 계층구조(Logical Key Hierarchy)를 이용한다. LKH는 논리적으로 계층을 이루어서 계층에 있는 KEK(Key Encryption Key)라는 것을 이용해서 몇몇의 사용자(또는 멤버)들에게 한 번에 그룹 키를 전달하는 키 업데이트 방법이다. 이렇게 하면 각각 사용자들에게 키를 전달해주는 것에 비해서 한 번에 여러 명에게 새로운 그룹 키를 전달할 수 있으므로 필요한 메시지 수가 줄어들게 된다.
이와 같은 트리 구조에서는 각 노드가 하나의 그룹 키에 대응하고, 각 사용자-노드는 하나의 구성원에 대응된다. 각 구성원은 자신의 구성원 노드부터 루트까지의 키를 알고 있고 그외의 키들을 알 수 없다고 가정한다. 트리의 노드(노드 키)들은 내부 노드들과 구성원 노드(구성원 고유키)들로 구분된다. 트리에서 최하위 노드들은 각각 하나의 구성원 단말기에 대응된다.
도 1에서, TEK(Traffic Encryption Key)는 데이터 암호화 키이고, KEK(Key Encryption Key)는 TEK를 안전하게 전달하기 위한 내부 키로서 그룹 키이고, IK(Individual Key)는 구성원에 대응되는 최하위 노드 키로서 구성원의 고유키를 의미한다.
도 1은 사용자가 하나 나갔을 때의 키 업데이트를 나타낸다. 제일 왼쪽에 있는 한 사용자가 그룹을 나간다고 가정한다. 나가는 사용자는 기존의 TEK와 KEK1을 알고 있기 때문에 2개의 키를 모두 업데이트 시켜줘야 한다. 그런데, 오른쪽의 2명의 사용자들에 대해서는 TEK만 업데이트하면 되고, 왼쪽의 한 명의 사용자에 대해서는 TEK와 KEK1을 모두 업데이트해야 한다. TEK는 각 그룹 키로 암호화하고, 업데이트될 그룹키(KEK1)는 나가지 않은 사용자의 개인 키로 암호화해서 전송을 한다.
이와 같은 트리 기반의 그룹 키 관리 기법에서 멀티캐스트 데이트를 암호화하는 TEK와 KEK들은 사용자 단말 장치에 저장된다. 통상적으로 이러한 키들은 사용자 단말 장치의 가입자 식별 정보를 저장하는 소형의 메모리 카드 예를 들어 USIM(Universal Subscriber Identity Module)의 시큐어 메모리(secure memory)에 저장된다.
이때, 키 재발행(rekeying) 메시지 수로 정의되는 기존의 통신량에 최적화된 바이너리 구조를 사용하고 사용자의 수가 N일 때, KEK의 개수는 (Log2N-1)이다. 그러나, USIM 카드의 시큐어 메모리 크기는 수백 킬로 바이트 정도로 다른 보안 관련 데이터와 프로그램 코드도 저장해야 함을 고려한다면, 시큐어 메모리의 크기가 충분하지 않다. 특히, 여러 개의 멀티캐스트 서비스를 동시에 사용한다면 유저는 각 서비스마다 TEK와 KEK를 따로 가져야 하므로 더욱 그러하다.
USIM이 TEK가 업데이트될 때마다 수행하는 복호화 횟수는 Log2N이다. 예를 들어, 만약 65536명의 사용자가 있다면 16번의 복호화가 수행되어야 하고, 256 바이트를 복호화하는데 걸리는 시간이 약 3.7㎳이 소요되면, 실시간 어플리케이션인 경우에는 무시할 수 없는 지연시간이 될 수 있다. 예를 들어, VoIP인 경우 최대 허용 지연시간은 50㎳ 정도이다.
또한, 여러 키 분배 센터(KDC)가 존재할 경우, 키 분배 센터들 간의 핸드 오프 시에 새로운 TEK와 KEK를 받아야 하므로 핸드 오프 지연 시간을 고려할 경우에는 서비스를 받기 위한 지연시간이 더욱 길어진다. 따라서, 사용자 단말 장치의 시큐어 메모리의 계산량과 저장량 그리고 사용자와 키 분배 센터 간의 통신량을 고려한 그룹 키 관리 방법이 필요하다.
도 2는 본 발명의 일 실시예에 따른 k레벨의 CCST 트리를 나타내는 도면이다.
본 발명의 일 실시예에 따른 그룹 키 관리를 위한 트리는 사용자 단말 장치의 시큐어 메모리의 계산량과 저장량, 그리고 사용자와 키 분배 센터(KDC)간의 통신 오버헤드의 트레이드오프를 조절할 수 있는 트리 구조이다. 이와 같은 본 발명의 일 실시예에 따른 트리 구조를 k-레벨 CCST(Communication-Computation-Storage Tradeoff) 트리라 한다.
k-레벨 CCST 트리의 전체 레벨은 k+1이이다. k-레벨 CCST 트리는 키 분배 센터에서 최상위 노드들에 분배되는 가지의 개수는 가변할 수 있는 플랫 트리의 형태를 가지고, 나머지 계층의 노드들의 하위 계층의 노드들로 분배되는 가지의 개수는 2인 바이너리 구조를 가진다. 즉, 본 발명의 일 실시예에 따른 CCST 트리 구조는 트리를 종래의 바이너리 트리 구조와 달리 트리를 구성하는 계층의 개수와 트리 구조를 이용하여 그룹 키를 분배받는 사용자의 수가 비례하지 않는다.
본 발명의 일 실시예에 따르면, 사용자들은 참가 요청 메세지를 키 분배 센터(KDC)에 보낼 때 현재 시큐어 메모리 영역의 가용 크기와 그룹 키를 복호화하는데 걸리는 지연 시간 정보를 포함한 자신의 자원 정보를 함께 전송한다.
참가 요청을 받은 키 분배 센터(KDC)는 시큐어 메모리의 저장량과 계산량, 그리고 통신량을 고려하여 서비스에 참가하려는 사용자 단말 장치가 수용할 수 있는 최대 허용 레벨(k')을 정한다. 본 발명의 일 실시예에 따르면, 최대 허용 가능 레벨(k')은 사용자 단말 장치들의 시큐어 메모리의 가용 메모리 공간에 기초하여 결정되는 레벨보다 작게, 사용자 단말 장치 예를 들어, USIM이 최대 허용 지연 시간 동안 복호화할 수 있는 레벨보다 작게, 최대 허용 통신량을 만족하는 레벨 중 가장 적은 통신량의 레벨보다 크도록 결정될 수 있다.
또한, 본 발명의 일 실시예에 따르면 CCST에서 계산량은 단위 복호 지연 시간과 k의 곱으로 결정되고, 저장량은 k와 키 사이즈의 곱으로 결정될 수 있다. CCST에서 통신량은 키 재발행(rekeying) 메시지들의 평균값을 구하여 결정될 수 있다.
허용 가능 레벨(k')이 현재의 트리 구조에 포함된 바이너리 구조의 레벨인 기존의 레벨(k)보다 크거나 같으면, 기존의 레벨(k)을 그대로 유지하면서 새로운 사용자를 수용할 수 있고, 그렇지 않다면 키 분배 센터(KDC)의 정책에 따라 수용하거나 거부할 수 있다.
또한, 허용 가능 레벨(k')이 기존 레벨(k)보다 크거나 같으면, 현재 CCST 트리가 완전한 k-레벨 CCST 트리인지를 체크해보아야 한다. 완전한 CCST 트리라 함은 현재의 계층의 레벨을 유지하면서 새로 참가하려는 사용자 단말 장치에 더 이상 그룹 키를 분배할 수 없는 트리 구조를 의미한다. 완전한 k-레벨 CCST 트리인 경우에는 새로운 사용자가 멤버로 추가될 경우 기존의 멤버 중 하나가 (k+2)개의 키를 가지게 되며, 복호화 시간도 그만큼 늘어나게 되기 때문이다.
이를 위해, 키 분배 센터(KDC)는 현재 트리에서 최상위 레벨에 있는 KEK들을 삭제하라는 메시지를 현재 서비스에 참가중인 사용자들에게 방송하고, 새로운 사용자에게 참가 응답 메시지를 보내야 한다. 이렇게 함으로써, 멤버들이 보유해야 할 키의 개수가 k개를 넘지 않도록 유지할 수 있다. 완전한 k-레벨 CCST 트리가 아니면 새로운 멤버에게 단순히 참가 응답 메세지를 보내면 된다.
허용 가능 레벨(k')이 기존 레벨보다 작을 경우는, 키 분배 센터는 기존의 레벨(k)을 새로 참가하려는 사용자 단말 장치의 허용 가능 레벨(k')로 변경하면서 수용하거나 아니면 새로운 사용자 단말 장치의 서비스 참가를 거부할 수 있다. 수용할 경우에는 트리의 바텀(bottom)으로부터 레벨(k')보다 상위 레벨의 키를 지워야 하며, 수용할 경우에 완전한 k-레벨 CCST 트리인 경우에는 트리의 바텀(bottom)으로부터 레벨(k') 이상의 키를 지워야 한다.
한편, 본 발명의 일 실시예에 따르면, 낮은 성능의 시큐어 메모리를 가지는 멤버가 그룹을 떠나서 CCST 레벨이 높아져도 될 때 또는 너무 많은 멤버들이 떠나서 CCST의 전체 레벨이 (k+1)보다 낮아질 때에는 키 재발행 기간 동안에 레벨을 높이기 위해 추가해야 할 KEK들을 모든 멤버들에게 암호화하여 전송할 수 있다.
이와 같은 본 발명의 일 실시예에 따른 CCST 구조를 이용하여 그룹 키를 분배하면, 트리의 최상위 레벨의 계층의 그룹 키들을 삭제 또는 생성하여 바이너리 레벨(k)을 일정 수준으로 유지할 수 있으므로 사용자 단말 장치가 저장해야할 그룹 키의 개수도 일정하게 유지할 수 있다. 따라서, 통신량은 바이너리 트리와 비슷한 수준을 유지하면서 사용자 단말 장치의 저장량 및 계산량을 줄일 수 있다.
도 3a는 본 발명의 일 실시예에 따른 CCST 트리 구조에 기초한 키 관리 방법을 나타내는 도면이다.
도 3a는 현재 트리의 레벨(k)이 2인 경우를 나타낸다. 또한, 도 3a에서는 참가하는 멤버들의 최대 허용 레벨(k')은 k보다 크다고 가정한다.
새로운 사용자인 U8이 기존의 트리 구조(310)에 서비스 참가를 요청하면, 키 분배 센터(KDC)는 트리 구조(320)와 같이 사용자 U8에게 KEK(K2 및 K6) 및 TEK를 부여하여 서비스를 허용하여 사용자 U8이 서비스를 제공받을 수 있도록 한다.
또한, 트리 구조(320)에서 새로운 사용자인 U9가 서비스 참가를 요청하면, 키 분배 센터(KDC)는 트리의 레벨을 높이지 않고는 현재의 트리 구조(320)에서는 새로운 사용자 U9를 수용할 수 없으므로, 트리 구조를 변형한다. 트리 구조(320)와 같이 새로운 사용자에게 그룹 키를 분배할 수 없는 트리의 형태를 완전한 k-레벨 CCST 트리라고 한다.
트리 구조(320)에서 기존의 레벨(k)은 2로서, 기존의 레벨(k)을 유지하기 위하여, 트리 구조(330)에 도시된 바와 같이 키 분배 센터(KDC)는 기존의 서비스에 참가중인 사용자 즉 구성원들에게 최상위 키(K1 및 K2)를 삭제하라는 메시지를 방송한다. 삭제 메시지를 수신한 구성원들은 삭제 메시지에서 지정한 그룹 키들을 삭제하고 나머지 키들을 이용하여 서비스를 계속하여 제공받을 수 있다.
그리고, 새로운 사용자 U9에는 그룹 키(K3 및 K7)를 분배하여 서비스에 참가할 수 있도록 허용한다. 즉, 트리 구조(330)는 최상위 계층에 위치하는 노드들이 삭제되어, 트리 구조(340)로 바뀌게 된다.
따라서, 본 발명의 일 실시예에 따르면, 키 분배 센터(KDC)는 바이너리 트리 레벨의 크기를 증가시키지 않고 새로운 사용자 U9를 수용하여, 새로운 사용자 U9는 서비스에 참가하는 사용자들이 가져야할 그룹 키의 개수를 늘리지 않으면서도 서비스를 제공받을 수 있다.
도 3b는 본 발명의 다른 실시예에 따른 CCST 트리 구조에 기초한 키 관리 방법을 나타내는 도면이다.
트리구조(350)에서 사용자 U9가 서비스 그룹에서 떠나는 경우에, 사용자 U9가 낮은 성능의 사용자 단말 장치이고 다른 사용자들이 기존의 트리 구조의 레벨보다 높은 레벨의 트리 구조에서 동작할 수 있는 경우에는, CCST의 레벨이 높아져도 된다. 따라서, 키 분배 센터(KDC)는 CCST의 레벨을 높이기 위해 추가하여야 할 그룹 키들(K1 및 K2)을 모든 멤버들에게 암호화하여 전송하여 트리 구조(360)를 형성할 수 있다. 즉, 트리 구조(350)에서 최상위 계층에 새로운 계층이 생성되어 트리 구조(360)로 변형될 수 있다.
도 4a는 본 발명의 일 실시예에 따른 키 관리 프로토콜을 나타내는 도면이다.
도 4a는 트리가 완전한 k-레벨 CCST 트리가 되기 전까지의 키 트리 관리 프로토콜을 나타낸다. 서비스에 참가하려는 사용자 단말 장치가 메모리의 가용 크리와 단위 복호 지연 시간을 포함하는 참가 요청 메시지를 전송한다. 그러면, 키 분배 센터(KDC)는 KEK(1),...KEK(i), TEK를 포함한 참가 허용 응답 메시지를 사용자에게 전송한다. 여기에서, 1≤i≤k이다.
도 3a에서 트리 구조(310)에서 트리 구조(320)의 상황에서는 KDC는 참가 허용 응답 메시지에 트리의 최상위부터 첫번째 레벨의 그룹 키인 KEK(1), 두번째 레벨의 KEK(2) 및 TEK를 포함하여 전송할 것이다.
도 4b는 본 발명의 다른 실시예에 따른 키 관리 프로토콜을 나타내는 도면이다.
도 4b는 트리가 완전한 k-레벨 CCST 트리가 될 때의 키 트리 관리 프로토콜을 나타낸다. 서비스에 참가하려는 사용자가 메모리의 가용 크기와 단위 복호 지연 시간을 포함하는 참가 요청 메시지를 전송한다. 그러면, 키 분배 센터(KDC)는 현재 참가 중인 사용자 단말 장치들이 최상위 레벨의 KEK들을 삭제하라는 메세지를 방송함으로써 CCST 트리의 레벨을 일정하게 유지할 수 있다. 그런 다음, 키 분배 센터(KDC)는 서비스에 참가하려는 사용자 단말 장치에게 KEK(j+1),..., KEK(j+k), TEK를 포함한 참가 허용 응답 메시지를 사용자에게 전송하여 서비스를 허용할 수 있다. 여기에서 j는 1보다 큰 정수이다.
도 3a에서의 트리 구조(330)에서 트리 구조(340)로 바뀌는 상황에서는 키 분배 센터(KDC)는 참가하려는 사용자 단말 장치로 원래의 트리의 구조와 비교했을 때 제2 레벨의 KEK(2), 제3 레벨의 KEK(3) 및 TEK를 포함한 참가 허용 응답 메시지를 전송할 것이다.
도 5는 본 발명의 일 실시예에 따른 키 분배 센터에서 그룹 키를 관리하는 방법을 나타내는 순서도이다.
키 분배 센터(KDC)는 새로 서비스에 참가하려는 사용자 단말 장치로부터 사용자 단말 장치의 자원 정보를 포함하는 그룹 참가 요청 메시지를 수신한다(S 510). 여기에서, 사용자 단말 장치의 자원 정보는 그룹 키들을 저장하기 위한 가용 메모리 크기 및 그룹 키를 복호화하는데 걸리는 지연 시간 정보를 포함한다.
키 분배 센터(KDC)는 자원 정보에 기초하여 그룹 키 제공을 위한 트리 구조를 결정한다(S 520). 본 발명의 일 실시예에 따르면, 키 분배 센터(KDC)는 자원 정보에 기초하여 사용자 단말 장치의 저장량, 계산량 및 통신량을 계산하고, 계산 결과에 따라 사용자 단말 장치가 수용할 수 있는 트리 구조의 계층의 허용 가능 레벨(k')을 결정한다. 그런 다음, 키 분배 센터(KDC)는 허용 가능 레벨(k')에 기초하여 트리 구조를 결정한다.
또한, 본 발명의 일 실시예에 따른 트리 구조는 최상위 계층에 위치하는 노드들이 삭제되거나 생성됨으로써 변형될 수 있다. 한편, 결정된 트리 구조가 사용자 단말 장치에 그룹 키를 분배할 수 없는 완전한 트리 구조인 경우에는, 결정된 트리 구조에서 최상위 계층에 위치하는 키들을 삭제하여 트리 구조가 변형될 수 있다.
그런 다음, 키 분배 센터는 결정되는 트리 구조에 기초하여 사용자 단말 장치에 그룹 키를 분배한다(S 530).
도 6은 본 발명의 다른 실시예에 따른 키 분배 센터에서 그룹 키를 관리하는 방법을 나타내는 순서도이다.
키 분배 센터(KDC)는 새로운 사용자 단말 장치로부터 사용자 단말 장치의 자원 정보를 포함하는 참가 요청 메시지를 수신한다(S 610).
키 분배 센터(KDC)는 자원 정보에 기초하여 사용자 단말 장치의 저장량, 계산량 및 통신량을 계산하고, 계산 결과에 따라 사용자 단말 장치가 수용할 수 있는 새로 요구되는 트리 구조의 계층의 허용 가능 레벨(k')을 결정한다(S 612).
키 분배 센터(KDC)는 허용 가능 레벨(k')을 현재의 트리의 바이너리 구조의 레벨(k)과 비교한다(S 614).
허용 가능 레벨(k')이 레벨(k) 이상인 경우에는, 완전한 k-레벨 CCST 트리인지 확인한다(S 616). 완전한 K-레벨 CCST 트리인 경우에는 트리의 바텀부터 k번째 계층의 그룹 키를 삭제 메시지를 서비스에 참가중인 현재의 사용자 단말 장치들에 방송한다(S 618). 그런 다음, 새로운 참가하려는 사용자 단말 장치에 TEK 및 KEK들을 포함하는 참가 허용 메시지를 전송한다(S 620).
한편, 완전한 K-레벨 CCST 트리가 아닌 경우에는, 현재 결정된 CCST 트리에 새로운 사용자 단말 장치를 수용할 수 있으므로, 새로운 사용자 단말 장치에 TEK 및 KEK들을 포함하는 참가 허용 메시지를 전송한다(S 620).
또한, 허용 가능 레벨(k')을 현재의 트리의 바이너리 구조의 레벨(k)과 비교한 결과(S 614), 허용 가능 레벨(k')이 레벨(k)보다 작은 경우에는, 새로운 사용자 단말 장치가 현 상태의 트리 구조에 참가하는 경우, 새로운 사용자 단말 장치의 저장량, 계산량 및 통신량을 고려할 때 정상적인 서비스를 받기 어렵다는 것을 의미한다. 따라서, 키 분배 센터(KDC)는 참가를 요청한 새로운 사용자 단말 장치를 받아들일 것인지 여부를 소정의 정책에 따라 결정한다(S 622). 새로운 사용자 단말 장치를 수용하지 않는 것으로 결정되면, 키 분배 센터(KDC)는 새로운 사용자 단말 장치에 그룹에 참가할 수 없음을 알리기 위하여 거부 메시지를 전송한다(S 632).
새로운 사용자 단말 장치를 수용하는 것으로 결정되는 경우에는, 키 분배 센터(KDC)는 트리 구조를 허용 가능 레벨(k')에 해당하는 계층의 개수에 기초하여 트리 구조를 형성한다. 이를 위해, 키 분배 센터는 허용 가능 레벨(k')로 레벨(k)을 설정한다(S 624). 즉, 현재의 트리 구조의 계층을 새로운 사용자 단말 장치가 수용할 수 있는 레벨의 계층 수준으로 만든다.
이때, 결정된 트리 구조가 완전한 k-레벨 CCST 트리인지 확인한다(S 626). 완전한 k-레벨 CCST 트리인 경우에는, 키 분배 센터(KDC)는 CCST트리구조에서 바텀부터 k'번째 레벨 이상에 위치하는 그룹 키들을 삭제하는 삭제 메시지를 현재 그룹에 포함된 사용자 단말 장치들에게 방송한다(S 628). 이와 같이 함으로써, 트리 구조의 k'번째 레벨 이상의 레벨이 줄어든 트리 구조가 결정된다. 그런 다음, 키 분배 센터(KDC)는 새로운 사용자 단말 장치에 결정된 트리 구조에서 서비스를 받기 위해 필요한 그룹 키들을 포함하는 참가 허용 메시지를 전송한다(S 620).
한편, 결정된 트리 구조가 완전한 k-레벨 CCST 트리인지 확인한 결과(S 626), 완전한 k-레벨 CCST 트리가 아닌 경우에는, 트리 구조의 바텀부터 k'번째 레벨보다 높은 계층의 그룹 키들을 삭제한다(S 630). 이와 같이 함으로써, 트리 구조의 k'번째 레벨보다 높은 레벨의 계층이 줄어든 트리 구조가 결정된다. 그런 다음, 키 분배 센터(KDC)는 새로운 사용자 단말 장치에 형성된 트리 구조에서 서비스를 받기 위해 필요한 그룹 키들을 포함하는 참가 허용 메시지를 전송한다(S 620).
도 6에서는 키를 삭제하는 과정(S 618, S 628, S 630)으로 표시하였지만, 전술한 바와 같이 삭제되는 그룹 키들의 계층은 경우에 따라 서로 다를 수 있다.
도 7은 본 발명의 일 실시예에 따른 사용자 단말 장치에서 그룹 키를 관리하는 방법을 나타내는 순서도이다.
본 발명의 일 실시예에 따른 사용자 단말 장치는 전반적 동작을 제어하는 프로세서(도시되지 않음), 멀티캐스트 서비스에 필요한 키들을 저장하는 메모리(도시되지 않음) 및 네트워크를 통해 통신을 수행하는 통신부(도시되지 않음)를 포함하여 구성될 수 있다.
사용자 단말 장치의 프로세서(도시되지 않음)는 통신부(도시되지 않음)를 제어하여, 사용자 단말 장치의 자원 정보를 포함하는 그룹 참가 요청 메시지를 키 분배 센터(KDC)로 전송한다(S 710).
사용자 단말 장치의 통신부는 키 분배 센터(KDC)로부터 자원 정보에 기초하여 결정된 그룹 키 제공을 위한 트리 구조에 따라 분배되는 그룹 키를 수신한다(S 720). 프로세서는 그룹 키를 메모리에 저장한다. 사용자 단말 장치는 수신한 그룹 키를 이용하여 컨텐츠를 복호화하여 멀티캐스트 서비스에 참가할 수 있다.
한편, 키 분배 센터(KDC)로부터 그룹 키 분배를 위한 트리 구조에서 지정한 상위 계층의 그룹 키들은 삭제하라는 메시지를 수신하면, 사용자 단말 장치의 프로세서는 메모리에서 메시지에서 가리키는 그룹 키들을 삭제한다. 이후에는, 삭제되고 남은 그룹 키들을 이용하여 컨텐츠를 복호화한다.
또한, 키 분배 센터(KDC)로부터 그룹 키 분배를 위한 트리 구조에서 지정한 상위 계층의 그룹 키를 포함한 그룹 키 생성 메시지를 수신하면, 사용자 단말 장치는 메모리에 저장된 기존의 그룹 키에 메시지에 포함된 그룹 키들을 추가적으로 이용하여 컨텐츠를 복호화할 수 있다.
본 발명의 일 실시예에 따르면, 그룹 키를 분배하는 트리 구조를 형성할 때 통신량 뿐만 아니라 계산량 및 저장량을 고려하여, 사용자 단말 장치에 효율적으로 그룹 키를 분배할 수 있다. 따라서, 다양한 성능을 가지는 사용자 단말 장치가 존재하는 환경에서도, 그룹 키 분배를 위한 트리 구조의 레벨을 가변할 수 있으므로, 서로 다른 성능을 가지는 사용자 단말 장치에 멀티캐스트 서비스를 효율적으로 제공할 수 있다.
본 발명의 일 실시예에 따른 키 관리 방법은 와이브로, 와이맥스, WSN 등의 다양한 통신 환경에서 멀티캐스트 서비스를 제공하는데 적용될 수 있다.
이상의 설명은 본 발명의 일 실시예에 불과할 뿐, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 본질적 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.

Claims (14)

  1. 키 분배 센터에서 그룹 키를 관리하는 방법에 있어서,
    사용자 단말 장치로부터 상기 사용자 단말 장치의 자원 정보를 포함하는 참가 요청 메시지를 수신하는 단계;
    상기 자원 정보에 기초하여 그룹 키 제공을 위한 트리 구조를 결정하는 단계; 및
    상기 결정되는 트리 구조에 기초하여 상기 사용자 단말 장치에 그룹 키를 분배하는 단계를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  2. 제1항에 있어서,
    상기 자원 정보는 그룹 키를 저장하기 위한 가용 메모리 크기 및 상기 그룹 키를 복호화하는데 걸리는 지연 시간 정보를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  3. 제1항에 있어서,
    상기 트리 구조는 최상위 계층의 노드들에 분배되는 가지의 개수는 가변하는 플랫 구조이고 나머지 계층의 노드들의 하위 계층 노드들로 분배되는 가지의 개수는 2인 바이너리 구조인 것을 특징으로 하는 그룹 키 관리 방법.
  4. 제1항에 있어서,
    상기 트리 구조는 최상위 계층에 위치하는 노드들이 삭제되거나 생성됨으로써 변형되는 것을 특징으로 하는 그룹 키 관리 방법.
  5. 제1항에 있어서,
    상기 트리 구조를 결정하는 단계는,
    상기 자원 정보에 기초하여 상기 사용자 단말 장치의 저장량, 계산량 및 통신량을 계산하고, 상기 계산 결과에 따라 상기 사용자 단말 장치가 수용할 수 있는 트리 구조의 계층의 허용 가능 레벨(k')를 결정하고, 상기 허용 가능 레벨(k')에 기초하여 상기 트리 구조를 결정하는 것을 특징으로 하는 그룹 키 관리 방법.
  6. 제5항에 있어서,
    상기 트리 구조를 결정하는 단계에서,
    상기 결정된 트리 구조가 상기 사용자 단말 장치에 그룹 키를 분배할 수 없는 완전한 트리 구조인 경우에는, 상기 결정된 트리 구조에서 최상위 계층에 위치하는 키들을 삭제하여 상기 트리 구조를 변형하는 것을 특징으로 하는 그룹 키 관리 방법.
  7. 제5항에 있어서,
    상기 트리 구조를 결정하는 단계는,
    상기 허용 가능 레벨(k')이 현재의 트리 구조에 포함된 바이너리 구조의 레벨(k) 이상일 때, 상기 결정된 트리 구조가 상기 사용자 단말 장치에게 그룹 키를 분배할 수 없는 완전한 트리 구조인 경우에는,
    상기 결정된 트리 구조에서 최상위 계층에 위치하는 키들을 삭제하는 삭제 메시지를 현재 서비스에 참가하고 있는 사용자 단말 장치들에 방송하는 단계를 더포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  8. 제5항에 있어서,
    상기 허용 가능 레벨(k')이 현재의 트리 구조에 포함된 바이너리 구조의 레벨(k) 보다 작은 경우에는,
    상기 허용 가능 레벨(k')에 해당하는 계층의 개수에 기초하여 상기 트리 구조를 변형하는 것을 특징으로 하는 그룹 키 관리 방법.
  9. 사용자 단말 장치에서 그룹 키를 관리하는 방법에 있어서,
    사용자 단말 장치의 자원 정보를 포함하는 참가 요청 메시지를 키 분배 센터로 전송하는 단계; 및
    상기 키 분배 센터로부터 상기 자원 정보에 기초하여 결정된 그룹 키 제공을 위한 트리 구조에 따라 분배되는 키를 수신하는 단계를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  10. 제9항에 있어서,
    상기 자원 정보는 그룹 키를 저장하기 위한 가용 메모리 크기 및 상기 그룹 키를 복호화하는데 걸리는 지연 시간 정보를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  11. 제9항에 있어서,
    상기 키 분배 센터로부터 그룹 키 분배를 위한 트리 구조에서 지정한 상위 계층의 그룹 키들은 삭제하라는 메시지를 수신하면, 상기 메시지에서 가리키는 그룹 키들을 삭제하는 것을 특징으로 하는 그룹 키 관리 방법.
  12. 프로세서;
    멀티캐스트 서비스에 필요한 키들을 저장하는 메모리; 및
    네트워크를 통해 통신을 수행하는 통신부를 포함하고,
    상기 프로세서는 상기 메모리에 포함된 사용자 단말 장치의 자원 정보를 포함하는 참가 요청 메시지를 키 분배 센터로 전송하도록 상기 통신부를 제어하고,
    상기 키 분배 센터로부터 상기 자원 정보에 기초하여 결정된 그룹 키 제공을 위한 트리 구조에 따라 분배되는 키가 수신되면, 상기 키를 상기 메모리에 저장하여 이용하는 것을 특징으로 하는 단말 장치.
  13. 제12항에 있어서,
    상기 자원 정보는 그룹 키를 저장하기 위한 가용 메모리 크기 및 상기 그룹 키를 복호화하는데 걸리는 지연 시간 정보를 포함하는 것을 특징으로 하는 단말 장치.
  14. 제12항에 있어서,
    상기 키 분배 센터로부터 그룹 키 분배를 위한 트리 구조에서 지정한 상위 계층의 그룹 키들은 삭제하라는 메시지가 수신되면, 상기 프로세서는 상기 메모리에서 상기 메시지에서 가리키는 그룹 키들을 삭제하는 것을 특징으로 하는 단말 장치.
KR1020080017790A 2008-02-27 2008-02-27 멀티캐스트 서비스를 위한 그룹 키 관리 방법 KR101455827B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080017790A KR101455827B1 (ko) 2008-02-27 2008-02-27 멀티캐스트 서비스를 위한 그룹 키 관리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080017790A KR101455827B1 (ko) 2008-02-27 2008-02-27 멀티캐스트 서비스를 위한 그룹 키 관리 방법

Publications (2)

Publication Number Publication Date
KR20090092509A true KR20090092509A (ko) 2009-09-01
KR101455827B1 KR101455827B1 (ko) 2014-11-03

Family

ID=41301063

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080017790A KR101455827B1 (ko) 2008-02-27 2008-02-27 멀티캐스트 서비스를 위한 그룹 키 관리 방법

Country Status (1)

Country Link
KR (1) KR101455827B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101125939B1 (ko) * 2010-04-21 2012-03-21 서울대학교산학협력단 그룹 키 관리 시스템 및 방법
WO2013005989A3 (ko) * 2011-07-04 2013-04-04 삼성전자주식회사 이동 기기에 대한 그룹 키 관리를 위한 방법 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1487750A (zh) * 2002-09-30 2004-04-07 北京三星通信技术研究有限公司 多媒体广播与组播业务中密码的管理及分发方法
KR100509233B1 (ko) * 2003-06-09 2005-08-22 학교법인고려중앙학원 멀티캐스트 그룹 키 관리 방법 및 장치
KR100728260B1 (ko) 2006-09-21 2007-06-13 한국전자통신연구원 방송/통신 시스템에서의 계층적 접근 제어를 위한 키 트리구성 방법 및 그를 이용한 키 관리 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101125939B1 (ko) * 2010-04-21 2012-03-21 서울대학교산학협력단 그룹 키 관리 시스템 및 방법
WO2013005989A3 (ko) * 2011-07-04 2013-04-04 삼성전자주식회사 이동 기기에 대한 그룹 키 관리를 위한 방법 및 장치
US9326136B2 (en) 2011-07-04 2016-04-26 Samsung Electronics Co., Ltd. Method and apparatus for managing group key for mobile device

Also Published As

Publication number Publication date
KR101455827B1 (ko) 2014-11-03

Similar Documents

Publication Publication Date Title
US10878848B2 (en) Apparatus for managing members of at least one group of decoders having access to broadcast data
Snoeyink et al. A lower bound for multicast key distribution
US8755520B2 (en) Apparatus and method for generating a key for broadcast encryption
US6584566B1 (en) Distributed group key management for multicast security
US7328343B2 (en) Method and apparatus for hybrid group key management
US6785809B1 (en) Server group key for distributed group key management
KR20060128142A (ko) 트리 토폴로지 네트워크 구조에서의 브로드 캐스트암호화를 위한 키 관리방법
US8054975B2 (en) Method and system for managing key of home device in broadcast encryption (BE) system
Daghighi et al. Toward secure group communication in wireless mobile environments: Issues, solutions, and challenges
Safavi-Naini et al. New constructions for multicast re-keying schemes using perfect hash families
Zhong et al. Multiple multicast group key management for the Internet of People
Wang et al. A scalable encryption scheme for multi-privileged group communications
Wang et al. Efficient key distribution for access control in pay-TV systems
Angamuthu et al. Balanced key tree management for multi‐privileged groups using (N, T) policy
KR101455827B1 (ko) 멀티캐스트 서비스를 위한 그룹 키 관리 방법
Alyani et al. The improvement of key management based on logical key hierarchy by implementing Diffie Hellman algorithm
Ma et al. Dynamic access control for multi-privileged group communications
Sun et al. Network-aware security for group communications
Mapoka et al. Multi-service group key establishment for secure wireless mobile multicast networks
JP2002300149A (ja) 同報配信用鍵管理システム
Zhou et al. Research on key management for multi-privileged group communications
Doh et al. Group key management for secure mobile iptv service
Zhao et al. Tracing and revoking scheme for dynamic privileges against pirate rebroadcast
Karandikar et al. An effective key management approach to differential access control in dynamic environments
Yang et al. An efficient key updating scheme for multicast key management

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: 20170918

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180917

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190910

Year of fee payment: 6