KR101125939B1 - 그룹 키 관리 시스템 및 방법 - Google Patents

그룹 키 관리 시스템 및 방법 Download PDF

Info

Publication number
KR101125939B1
KR101125939B1 KR1020100036903A KR20100036903A KR101125939B1 KR 101125939 B1 KR101125939 B1 KR 101125939B1 KR 1020100036903 A KR1020100036903 A KR 1020100036903A KR 20100036903 A KR20100036903 A KR 20100036903A KR 101125939 B1 KR101125939 B1 KR 101125939B1
Authority
KR
South Korea
Prior art keywords
user
key
subgroup
node
cell
Prior art date
Application number
KR1020100036903A
Other languages
English (en)
Other versions
KR20110117443A (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 KR1020100036903A priority Critical patent/KR101125939B1/ko
Publication of KR20110117443A publication Critical patent/KR20110117443A/ko
Application granted granted Critical
Publication of KR101125939B1 publication Critical patent/KR101125939B1/ko

Links

Images

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0431Key distribution or pre-distribution; Key agreement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management

Landscapes

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

Abstract

키 분배 센터 및 복수의 기지국을 포함하는 그룹 키 관리 시스템은, 복수의 셀 내에 위치하는 복수의 사용자를 상기 각 셀에 대응되며 복수의 서브 키 트리를 포함하는 복수의 서브그룹으로 나누고 상기 기지국에게 그룹 키를 분배하는 키 분배 센터; 및 상기 각 서브그룹에 대응되며, 상기 복수의 사용자를 상기 각 서브 키 트리에 배치하는 복수의 기지국을 포함하여 구성되되, 상기 키 분배 센터는 상기 사용자의 가입 또는 탈퇴에 대응하여 상기 그룹 키를 갱신하고, 상기 기지국은 상기 서브그룹 내의 사용자의 변경에 대응하여 상기 서브그룹을 갱신한다. 키 분배 센터 및 복수의 기지국을 대상으로 하는 그룹 키 관리 방법은, 복수의 셀 내에 위치하는 복수의 사용자를 상기 각 셀에 대응되며 복수의 서브 키 트리를 포함하는 복수의 서브그룹으로 나누는 단계; 상기 복수의 사용자를 상기 각 서브 키 트리에 배치하는 단계; 상기 기지국에 그룹 키를 분배하는 단계; 키 분배 센터가 상기 사용자의 가입 또는 탈퇴에 대응하여 상기 그룹 키를 갱신하는 단계; 및 상기 각 서브그룹에 대응되는 복수의 기지국이 상기 서브그룹 내의 사용자의 변경에 대응하여 상기 서브그룹을 갱신하는 단계를 포함하여 구성된다.

Description

그룹 키 관리 시스템 및 방법{Group key management system and method}
실시예는 그룹 키 관리 시스템 및 방법에 관한 것이다.
멀티캐스트(Multicast)는 VOD(Video On Demand), 화상 회의와 같이 그룹 기반의 서비스(혹은 멀티캐스트 서비스)를 구현하는데 매우 효율적인 통신 방법이다. 특히 무선 네트워크에서는 한번의 데이터 전송으로 주변의 모든 사용자들이 동시에 수신 할 수 있기 때문에, 유선 네트워크보다 이러한 서비스를 보다 쉽게 구현할 수 있다는 장점이 있다.
이러한 멀티캐스트 서비스에서 기밀성(Confidentiality)를 보장하는 가장 보편적인 방법은 그룹 키[Traffic Encryption Key(TEK)라고도 불림]를 사용하는 것이다. 그룹 키로 암호화되어 전송된 메시지는 그 그룹 키를 가진 사용자만이 복호화를 통해서 읽어 볼 수가 있기 때문에 안전한 통신이 가능해진다. 그러나, 이러한 방법은 키 갱신 시에 오버헤드(overhead)가 발생한다. 만약 한 그룹 키를 공유하고 있는 N명의 그룹 멤버 중에서 한 명이라도 그룹을 탈퇴한다면, 그 탈퇴하는 멤버가 더 이상 통신에 참여 할 수 없도록 기존의 그룹 키를 갱신해야 한다. 이 과정에서 남아있는 N-1명에게 새로운 그룹 키를 안전하게 보내주기 위해서는 각 멤버들이 보유하고 있는 개인키로 암호화해서 유니캐스트 방식으로 보내줘야 하는데, 이 과정은 사용자 수가 많아지면 많아질수록 더 큰 오버헤드를 유발한다.
지금까지 이러한 문제를 해결 하기 위해서 논리 키 계층 구조(Logical Key Hierarchy; LKH) 방식의 키 관리 방법이 제안되었다. LKH 기반의 방식에서 멤버들을 하나의 논리적인 키 트리(key tree)로 구성하고, 트리의 내부 노드를 키 암호화 키(Key Encryption Key; KEK)로 사용하여, 그룹 키(TEK)를 효율적으로 갱신 할 수 있도록 한다. 이론적으로 LKH는 키 갱신 오버헤드를 O(N)에서 O(logN) 으로 줄일 수 있다.
그러나, 여전히 LKH 기반의 방법은 많은 개선의 여지가 남아있다. 보통 광범위한 지역에 걸쳐 많은 사용자들을 지원해야 하는 멀티캐스트 서비스는 셀룰러 기반의 네트워크에서 구현되어야 한다. 그런데 LKH 기반의 키 관리 방법들은 셀룰러 네트워크 토폴로지를 반영하지 않고 논리적인 키 트리를 만들기 때문에 키 갱신이 매우 비효율적이다. 예를 들어, 한 셀 내에 인접해 있는 두 명의 사용자라고 하더라도 LKH의 키 트리에서는 멀리 떨어져서 배치될 수 있다. 같은 키 트리 내에 있다면 한 번의 전송으로 두 사용자의 키를 갱신 할 수 있겠지만, 다른 키 트리에 배치되어 있다면 두 번의 키 갱신 메시지를 보내야 한다. 이러한 비효율성을 극복하고자 토폴로지 기반의 키 트리를 만들어 관리하는 토폴로지 매칭 키 관리(Topology Matching Key Management; TMKM) 방법이 제안되었다. TMKM 방법에서는 키 트리를 셀 기반의 서브-키 트리(sub-key tree)를 만들어 관리한다. 즉 같은 셀 내에 있는 사용자들은 같은 서브-키 트리에 존재 하도록 만든다. 따라서, 한 서브-키 트리를 갱신하기 위해서는 그에 해당하는 셀에 대해서만 키 갱신을 해주면 되기 때문에 불필요한 통신 오버헤드를 없앨 수 있는 것이다.
TMKM 방법이 LKH보다 좋은 성능을 보이지만, 이것은 몇 가지 단점을 가지고 있기 때문에 실제 멀티캐스트 시스템에 적용하기 어렵다. 먼저, TMKM은 반드시 네트워크 토폴로지 정보가 있어야 구현이 가능하다. 서브-키 트리가 셀 기반으로 만들어져야 하기 때문에 키 트리를 관리하는 KDC는 모든 사용자들이 어느 셀에 있는 지를 지속적으로 트래킹(tracking)해야 한다. 즉 KDC는 모든 사용자들의 모든 이동 현황에 대해서 보고받고, 이를 토폴로지 기반의 키 트리에 적용해야 한다. 그러나 핸드오버가 빈번하게 발생하는 이동성이 큰 사용자들일 경우에는 더욱 큰 오버헤드를 유발하게 된다. 그리고, 하나의 KDC가 수십, 수백만이 넘을 수 있는 사용자 각각의 이동을 모두 관리 할 수 있다는 가정 또한 현실적이지 못하다. 설사 이렇게 구현이 된다고 하더라도, 모든 기능이 KDC 하나에 집중이 되어있기 때문에 시스템의 한 곳만 오류가 있어도 시스템 전체가 동작하지 못하는 경우(single point of failure; SPOF)에 매우 취약할 수 밖에 없다.
본 발명의 일 측면에 따르면, 키 분배 센터(key distribution center; KDC)가 가진 키 관리 기능들 중의 일부를 각 기지국(Base Station; BS)으로 분산하여, 불필요한 오버헤드가 발생하지 않고, KDC에 집중되어있던 과부하도 제거할 수 있는 그룹 키 관리 시스템 및 방법을 제공할 수 있다.
일 실시예에 따른 키 분배 센터 및 복수의 기지국을 포함하는 그룹 키 관리 시스템은, 복수의 셀 내에 위치하는 복수의 사용자를 상기 각 셀에 대응되며 복수의 서브 키 트리를 포함하는 복수의 서브그룹으로 나누고 상기 기지국에게 그룹 키를 분배하는 키 분배 센터; 및 상기 각 서브그룹에 대응되며, 상기 복수의 사용자를 상기 각 서브 키 트리에 배치하는 복수의 기지국을 포함하여 구성되되, 상기 키 분배 센터는 상기 사용자의 가입 또는 탈퇴에 대응하여 상기 그룹 키를 갱신하고, 상기 기지국은 상기 서브그룹 내의 사용자의 변경에 대응하여 상기 서브그룹을 갱신한다.
상기 각 서브그룹은 서브그룹 키를 포함할 수 있으며, 상기 각 서브 키 트리는, 상기 서브그룹 키의 하위 키인 제1 보조 키; 상기 제1 보조 키의 하위 키인 제2 보조 키; 및 상기 제2 보조 키의 하위 키로서, 상기 각 사용자에 대응되는 노드를 포함할 수 있다.
일 실시예에 따른 키 분배 센터 및 복수의 기지국을 대상으로 하는 그룹 키 관리 방법은, 복수의 셀 내에 위치하는 복수의 사용자를 상기 각 셀에 대응되며 복수의 서브 키 트리를 포함하는 복수의 서브그룹으로 나누는 단계; 상기 복수의 사용자를 상기 각 서브 키 트리에 배치하는 단계; 상기 기지국에 그룹 키를 분배하는 단계; 키 분배 센터가 상기 사용자의 가입 또는 탈퇴에 대응하여 상기 그룹 키를 갱신하는 단계; 및 상기 각 서브그룹에 대응되는 복수의 기지국이 상기 서브그룹 내의 사용자의 변경에 대응하여 상기 서브그룹을 갱신하는 단계를 포함하여 구성된다.
본 발명의 일 측면에 따른 그룹 키 관리 시스템 및 방법은, 사용자들간의 핸드오버에 대해서 키 분배 센터(key distribution center; KDC)에 보고 할 필요가 없기 때문에, 불필요한 오버헤드가 발생하지 않고, 이동성 관리 기능이 각 기지국(base station; BS)으로 분산이 되었기 때문에 KDC에 집중되어있던 과부하도 제거할 수 있다.
도 1은 본 발명의 일 실시예에 따른 그룹 키 관리 시스템의 예시적인 개념도이다.
도 2는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 전체 그룹을 나누는 예시적인 방법을 설명하기 위한 도이다.
도 3은 본 발명의 일 실시예에 따른 그룹 키 관리 시스템의 독립 서브 키 트리를 설명하기 위한 도이다.
도 4는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 셀 간 핸드오버(handover) 과정을 나타낸 순서도이다.
도 5a 및 도 5b는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 셀 간 핸드오버(handover) 과정의 예시를 설명하기 위한 도이다.
도 6은 일정 시간 사용자들의 셀 간 이동 후 만들어지는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템을 나타낸 도이다.
도 7은 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 탈퇴에 따른 키 갱신 과정을 나타낸 순서도이다.
도 8은 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 탈퇴에 따른 키 갱신 과정의 예시를 설명하기 위한 도이다.
도 9는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 가입에 따른 키 갱신 과정을 나타낸 순서도이다.
이하에서, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세히 살펴본다.
본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서는 효율적인 키 관리를 위해서 버서키 프레임워크(Versakey Framework)를 사용할 수 있다. 버서키 프레임워크에서, 각 키는 유일한 ID, 버전(version) 및 리비전(revision)으로 구성된 키 셀렉터(key selector)로 구분되며 각 키는 실제 비밀값에 해당하는 임의의 키 값(key value)을 가진다. 해당 키가 사라질 때까지 그 키의 유일ID는 변하지 않는다. 키 값의 갱신은 두 가지 방법으로 가능하다. 먼저, 키 분배 센터(key distribution center; KDC)가 해당 키의 키 값을 새롭게 만들어 전송할 수 있으며, 이 때에는 그 키의 버전(version)이 증가한다. 또 다른 방법으로는, KDC와 각 노드가 공유하는 일방향 해시(one-way hash) 함수를 이용하여 갱신할 수 있다. 즉 KDC가 그 해시 함수에 기존 키 값을 입력하여 나오는 출력값을 새로운 키 값으로 사용하고자 할 때, 해당 키의 리비전이 증가하게 된다. 그러면 각 노드들은 해당 키의 ID와 리비전(revision)이 증가한 것으로부터 그 키 값의 갱신을 알고, KDC와 마찬가지 방법으로 일방향 해시 함수를 통해서 새로운 키를 얻을 수 있다. 이와 같은 방법으로 버서키 프레임워크는 새로 가입하는 노드에 대해서 키 갱신시에 갱신 메시지를 전송하지 않고, 키를 갱신 할 수 있다.
도 1은 본 발명의 일 실시예에 따른 그룹 키 관리 시스템의 예시적인 개념도이다.
본 발명의 일 실시예에 따른 그룹 키 관리 시스템은 키 분배 센터(key distribution center; KDC)의 키 관리 기능을 각 기지국(base station; BS)으로 분산할 수 있다. 본 발명의 일 실시예에 따른 그룹 키 관리 시스템은 사용자의 전체 그룹을 여러 개의 셀 기반의 서브그룹(subgroup)으로 나누고, 각 BS가 각각의 이러한 서브그룹에 대해서 키 트리를 생성하고 관리하도록 한다. 도 1을 참조하면 4개의 셀에 32 명의 사용자를 가진 멀티캐스트 서비스를 예시적으로 도시한다. BS1 내지 BS4는 각각 기지국을 나타내며 1 내지 32의 숫자가 쓰여진 원은 사용자를 나타낸다.
도 2는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 전체 그룹을 나누는 예시적인 방법을 설명하기 위한 도이다.
도 2를 참조하면, 가장 먼저, 본 발명의 일 실시예에 따른 그룹 키 관리 시스템의 KDC는 전체의 그룹을 셀 기반으로 셀의 개수만큼의 서브그룹으로 나눈다. 본 명세서에서 이를 수직적 분할(vertical division)이라 한다. 즉 각 서브그룹은 각 셀에 대응되며, 한 셀에 속한 사용자들은 동일한 서브그룹에 속한다. 수직적 분할은 각 BS가 자신만의 키 트리를 독립적으로 관리할 수 있도록 한다. 다음으로, KDC는 그 전체 그룹을 기존의 수직적 분할과는 독립적으로 여러 개의 세그먼트(segment)로 구분하며, 본 명세서에서 이를 수평적 분할(horizontal division)이라고 한다. 각 사용자의 세그먼트는 그 사용자가 서비스를 탈퇴하기 전까지 변하지 않는다. 수평적 분할의 목적은 한 그룹의 크기를 작게 함으로써 '1이 n에 영향을 미치는(1-affects-n)' 효과를 줄이기 위함이다. 도 2는 도 1의 본 발명의 일 실시예에 따른 그룹 키 관리 시스템의 예시적인 개념도에 따라, KDC가 32명의 그룹을 4개의 셀 기반의 서브그룹으로 나누고, 2개의 세그먼트로 구분한 그림을 나타낸다.
도 3은 본 발명의 일 실시예에 따른 그룹 키 관리 시스템의 독립 서브 키 트리를 설명하기 위한 도이다.
도 3을 참조하면 각 사각형은 각 셀(301 내지 304)을 나타낸다. 도 2에서 설명한 바와 같은 수직적 분할 및 수평적 분할 후에 각 BS는 독립적으로 세그먼트의 수만큼의 독립 서브 키 트리(Independent Sub-key tree; IST)를 만든다. IST는 각 서브그룹에서 키를 독립적으로 관리하기 위해 생성된 키 트리를 뜻하며, 그냥 서브 키 트리라고도 한다. ISTm i는 m번 째 셀(cellm)의 i번 째 세그먼트인 사용자들에 대한 IST를 뜻한다. 도 3은 각 기지국(BSm)이 각 서브그룹 키(Km) 과 두 개의 IST(ISTm 1 과 ISTm 2)를 생성한 예를 나타낸다. KDC는 이와 같은 각 서브 키 트리에 사용자를 배치하고, 각 기지국(BSm)에 그룹 키를 분배한다.
도 4는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 셀 간 핸드오버(handover) 과정을 나타낸 순서도이다.
본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 이동성을 가진 사용자의 물리적인 위치의 변화는 키 트리에 반영 되어야 하기 때문에, 사용자의 이동성은 키 갱신을 위한 리키잉(rekeying) 메시지 뿐만 아니라 키 트리의 갱신을 위한 컨트롤 메시지(control message)를 증가 시킬 수 있다. 본 발명의 일 실시예에 따른 그룹 키 관리 시스템은 이 문제를 분산화를 통해서 해결한다. KDC는 그룹 키 이외의 다른 어떤 키도 관리하지 않는다. 또한 어떤 사용자의 이동에 대해서도 트래킹(tracking)하지 않는다. KDC는 단지 사용자의 가입 또는 탈퇴에 대응하여 그룹 키만을 갱신한다. 대신 각 BS가 독립적으로 사용자들을 트래킹하고 키 트리를 관리한다.
본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 IST 내의 사용자에 대응되는 노드는 2가지 형태의 노드로 정의된다. 먼저, PIC(Present In the Cell) 노드는 사용자가 현재의 셀에 존재한다는 것을 표시한다. 만약 사용자의 노드가 PIC 노드인 경우에는 그 사용자가 현재 셀에 머물고 있다는 뜻이다. 다음으로, AIC(Absent In the Cell) 노드는 사용자가 현재의 셀에 존재했던 적은 있으나 현재 그 셀에 존재하고 있지 않다는 것을 표시한다. 만약 사용자의 노드가 AIC 노드인 경우에는 그 사용자가 현재의 셀에 머물렀던 적은 있으나 현재 그 셀에 머무르고 있지 않다는 뜻이다.
도 4를 참조하여 셀 간 핸드오버 과정을 설명하면, 먼저 사용자 u가 제1 셀에서 제2 셀로 이동하면(S401), 기지국 BSm은 제1 셀에 대응되는 서브그룹에서 사용자 u에 대응되는 노드를 PIC 노드에서 AIC 노드로 변경한다(S402). 그 다음, 기지국 BSm은 제2 셀에 대응되는 서브그룹에 사용자 u에 대응되는 AIC 노드가 존재하는지 확인한다(S403). 사용자 u에 대응되는 AIC 노드가 존재하는 경우에는 사용자 u에 대응되는 AIC 노드를 PIC 노드로 변경하고(S404), 사용자 u에 대응되는 AIC 노드가 존재하지 않는 경우에는 서브그룹에서 사용자 u에 대응되는 PIC 노드를 생성한다(S405).
도 5a 및 도 5b는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 셀 간 핸드오버(handover) 과정의 예시를 설명하기 위한 도이다.
도 5a는 사용자가 처음으로 다른 셀로 이동한 경우의 예시를 설명하기 위한 도이고, 도 5b는 사용자가 예전에 머물렀던 다른 셀로 이동한 경우의 예시를 설명하기 위한 도이다.
도 5a를 참조하면, 현재 cell1(501)에 존재하는 사용자 u6가 cell2(502)로 처음으로 이동하는 예를 보여주고 있다. 먼저 사용자 u6가 cell1(501)에서 cell2(502)로 이동하면, 기지국 BS1은 cell1(501)에 대응되는 서브그룹(503) 내에서 사용자 u6에 대응되는 노드를 PIC 노드에서 AIC 노드로 바꾼다. 그 다음, 기지국 BS2는 cell2(502)에 대응되는 서브그룹(504) 내에 사용자 u6에 대응되는 노드가 존재하는지 확인한다. 사용자 u6는 cell2(502)에 한번도 온 적이 없기 때문에 기지국 BS2는 사용자 u6에 대응되는 PIC 노드를 IST2 2에 추가한다.
도 5a를 참조하면, 사용자 u6가 cell2(502)에서 cell1(501)로 다시 이동하는 예를 보여주고 있다. 먼저 사용자 u6가 cell2(502)에서 cell1(501)로 이동하면, 기지국 BS2은 cell2(502)에 대응되는 서브그룹(504) 내에서 사용자 u6에 대응되는 노드를 PIC 노드에서 AIC 노드로 바꾼다. 그 다음, 기지국 BS1은 cell1(501)에 대응되는 서브그룹(503) 내에 사용자 u6에 대응되는 노드가 존재하는지 확인한다. 사용자 u6는 cell1(501) 내에 존재했었으므로, 사용자 u6에 대응되는 AIC 노드가 존재할 것이고, 기지국 BS1은 사용자 u6에 대응되는 AIC 노드를 PIC 노드로 바꾼다.
도 6은 일정 시간 사용자들의 셀 간 이동 후 만들어지는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템을 나타낸 도이다.
상기 기술한 바와 같이 사용자들의 이동은 셀 간 핸드오버 과정의 반복적인 실행으로 처리된다. 도 6은 이와 같은 일정 시간 사용자들이 이동을 거듭하면서 만들어 지는 그룹 키 관리 시스템의 일 실시예를 도시한다. 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 KDC는 각 사용자의 이동을 트래킹하지 않지만 각 BS가 관리하는 IST를 확인하는 것만으로 사용자들의 이동 히스토리를 알 수 있게 된다. 예컨대, 도 6을 참조하면 사용자 u6는 cell1(601) 및 cell2(602)에 머물렀던 적이 있으며, 현재는 cell1(601) 내에 존재한다는 것을 알 수 있다.
도 7은 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 탈퇴에 따른 키 갱신 과정을 나타낸 순서도이다.
탈퇴하는 사용자는 탈퇴하는 시점 이후에는 더 이상 서비스를 이용할 수 없어야 한다. 이를 위해서 그룹 키를 갱신해야 한다. 본 발명의 일 실시예에 따른 그룹 키 관리 시스템은 모든 사용자에 대응되는 노드가 하나 이상의 IST에 속하는 것을 허락하기 때문에, 탈퇴하는 사용자에 대응하는 노드가 속한 모든 IST에 대해서 갱신을 해 주어야 한다.
도 7을 참조하면, 사용자 u가 탈퇴하면(S701), KDC는 사용자 u의 탈퇴를 모든 BS에 통지하고 그룹 키를 갱신한다(S702).
탈퇴하는 사용자 u를 포함하는 서브그룹에 대응되는 BS는, 탈퇴하는 사용자 u의 노드가 포함된 IST의 AIC 노드를 제거하고, 탈퇴하는 사용자 u의 노드의 상위 키, 즉 사용자 u가 떠나기 전에 사용했던 키를 갱신한다(S703). 그 다음, 모든 BS는 갱신된 그룹 키 또는 상위 키를 이용하여 서브그룹을 갱신한다(S704). 탈퇴하는 사용자 u의 노드를 포함하는 서브그룹에 대응되는 BS는 갱신된 그룹 키 및 상위 키 모두를 이용하여 서브그룹을 갱신하여야 하지만, 탈퇴하는 사용자 u의 노드를 포함하지 않는 서브그룹에 대응되는 BS는 갱신된 그룹 키만을 이용하여 서브그룹을 갱신하면 된다.
도 8은 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 탈퇴에 따른 키 갱신 과정의 예시를 설명하기 위한 도이다.
도 8을 참조하면, 사용자 u6가 탈퇴하는 예를 보여주고 있다. 사용자 u6가 탈퇴하면 KDC는 모든 BS들에게 u6가 서비스를 탈퇴한다고 알리고, 새로운 그룹키 (GKnew)를 생성하여 모든 BS에게 전달한다.
IST1 2의 모든 AIC 노드들은 cell1(801)에 있지 않기 때문에, 기지국 BS1으로부터 전송되는 메시지를 수신하지 못한다. 따라서 기지국 BS1은 AIC 노드들을 갱신하기 위한 키 갱신 메시지를 보낼 필요가 없기 때문에, IST1 2 내의 AIC 노드들을 제거한다. 이 과정은 키 갱신 메시지의 수를 줄여 줄 수 있다. 또한 IST 내의 AIC 노드들을 없앰으로써 IST의 크기가 과도하게 커지는 것을 방지할 수 있다. 그리고 나서 기지국 BS1은 K1 , K1 2, K11 2, K111 2에 해당하는 새로운 키를 생성한다. 이 과정은 상기 언급한 버서키 프레임워크에서 키의 버전이 증가하는 것을 의미한다. BS2도 마찬가지로 동작한다. 즉 IST2 2로부터 AIC 노드들을 모두 제거하고, K2 , K2 2, K22 2, K221 2에 해당하는 새로운 키를 생성한다.
그 다음, 모든 BS는 생성된 그룹 키 또는 상위 키를 이용하여 서브그룹을 갱신한다. 이 때, BS1과 BS2는 위에서 언급한 키, 즉 그룹 키 및 사용자의 노드의 상위 키들을 갱신해야 하고, 반면 BS3과 BS4는 오직 그룹 키만을 갱신하면 된다. BS1은 다음과 같은 키 갱신 메시지들을 통해서 새로운 키로 갱신을 한다.
Figure 112010025532811-pat00001
마찬가지로, BS2도 다음과 같은 메시지로 키를 갱신한다:
Figure 112010025532811-pat00002
반면, BS3과 BS4는 각각
Figure 112010025532811-pat00003
을 전송하여 그룹 키를 갱신한다.
여기서 cell1(801)과 cell2(802)에 대한 IST1 1 및 IST2 1의 AIC 노드들은 IST로부터 제거되지 않는다는 점을 알 수 있다. 예를 들어, 사용자 u3에 대응되는 노드는 AIC 노드이므로 기지국 BS1으로부터 새로운 서브그룹 키인 K1 new를 받을 수 없다. 그러나, 사용자 u3가 다시 cell1(801)로 돌아올때 그 키의 버전이 증가했다는 것을 통해서 키의 갱신 사실을 알고, 기지국 BS1으로부터 그 키를 다시 전송받으면 된다.
도 8을 참조하면, 사용자 u6가 탈퇴한 후의 IST의 갱신 결과를 알 수 있다. BS3과 BS4의 IST들은 변화가 없기 때문에 나타내지 않았다. 도 8에서, 사용자 u6는 탈퇴되어 사용자 u6에 대응되는 노드가 제거되었고, 사용자 u6의 상위 키(강조 표시됨)는 모두 갱신되었음을 알 수 있다.
도 9는 본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 가입에 따른 키 갱신 과정을 나타낸 순서도이다.
새로 가입한 사용자는 서비스 가입 전에 보내졌던 어떤 메시지도 읽을 수 없어야 한다. 따라서 가입하는 사용자에게 할당되는 모든 키는 갱신된 후에 전달되도록 해야 한다.
도 9를 참조하면, 사용자 u가 가입하면(S901), KDC는 사용자 u의 가입을 모든 BS에 통지하고 그룹 키를 갱신한다(S902).
그 다음 가입하는 사용자 u를 포함하는 서브그룹에 대응되는 BS는 가입하는 사용자 u의 노드의 상위 키를 갱신한다. 즉 가입하는 사용자 u의 노드에게 할당될 키들을 갱신한다(S903). 또, 가입하는 사용자 u를 포함하는 서브그룹에 대응되는 BS는 가입하는 사용자 u를 포함하는 서브그룹 내의 PIC 노드들을 상기 상위 키에 따라 갱신한다(S904).
그리고 나서 가입하는 사용자 u를 포함하는 서브그룹에 대응되는 BS는 가입하는 사용자 u의 노드의 상위 키를 가입하는 상기 사용자 u에 분배한다(S905).
본 발명의 일 실시예에 따른 그룹 키 관리 시스템에서 사용자의 가입에 따른 키 갱신 과정을 예를 들어 설명하도록 한다. 본 발명의 일 실시예에 따른 그룹 키 관리 시스템의 구조 내에 큰 변화가 있는 것은 아니므로 도면은 생략하도록 한다.
새로운 사용자 u33가 멀티캐스트 서비스에 가입한다고 가정하면, 먼저 KDC는 모든 BS들에게 새로운 사용자 u33 때문에 그룹 키가 갱신되어야 한다고 알린다. KDC는 모두 공유하고 있는 일방향 해시 함수에 기존 그룹 키를 입력하여 새로운 키를 얻어내고, 그룹 키의 리비전을 증가시킨다. 그리고, 시스템 내의 모든 노드들도 같은 방법으로 새로운 그룹 키 GK'new를 얻는다.
BS2는 u33을 IST2 2의 사용자 u16에 대응되는 노드 옆에 배치할 것을 결정한 후, 사용자 u33에 할당될 키들, 사용자 u33의 상위 키가 될 키들을 일방향 해시 함수를 통해서 갱신한다. cell2의 PIC 노드들은 K221 2 new, K22 2 new , K2 2 new , K2 new 의 리비전이 증가된 것으로부터 갱신 사실을 알고, 마찬가지 방법으로 새로운 키를 얻어낸다. AIC 노드들은 BS2로부터 리비전의 변화를 알 수 없으나, 이후에 다시 그 셀로 돌아 올 때에 같은 방법으로 키를 갱신할 수 있다.
BS2는 사용자 u33에 대응되는 노드를 IST2 2에 생성하고 사용자 u33에게 갱신된 키 K'2212 new, K'22 2 new , K'2 2 new , K'2 new 를 전송한다.
전술한 그룹 키 관리 시스템에서의 그룹 키 관리 방법은 도면에 제시된 순서도를 참조로 하여 설명되었다. 간단히 설명하기 위하여 상기 방법은 일련의 블록들로 도시되고 설명되었으나, 본 발명은 상기 블록들의 순서에 한정되지 않고, 몇몇 블록들은 다른 블록들과 본 명세서에서 도시되고 기술된 것과 상이한 순서로 또는 동시에 일어날 수도 있으며, 동일한 또는 유사한 결과를 달성하는 다양한 다른 분기, 흐름 경로, 및 블록의 순서들이 구현될 수 있다. 또한, 본 명세서에서 기술되는 방법의 구현을 위하여 도시된 모든 블록들이 요구되지 않을 수도 있다.
이상 본 발명의 특정 실시예를 도시하고 설명하였으나, 본 발명의 기술사상은 첨부된 도면과 상기한 설명내용에 한정하지 않으며 본 발명의 사상을 벗어나지 않는 범위 내에서 다양한 형태의 변형이 가능함은 이 분야의 통상의 지식을 가진 자에게는 자명한 사실이며, 이러한 형태의 변형은, 본 발명의 정신에 위배되지 않는 범위 내에서 본 발명의 특허청구범위에 속한다고 볼 것이다.

Claims (14)

  1. 복수의 셀 내에 위치하는 복수의 사용자를 상기 각 셀에 대응되며 복수의 서브 키 트리를 포함하는 복수의 서브그룹으로 나누고 그룹 키를 분배하는 키 분배 센터; 및
    상기 각 서브그룹에 대응되며, 상기 키 분배 센터로부터 상기 그룹 키를 수신하고, 상기 복수의 사용자를 상기 각 서브 키 트리에 배치하는 복수의 기지국을 포함하되,
    상기 키 분배 센터는 상기 사용자의 가입 또는 탈퇴에 대응하여 상기 그룹 키를 갱신하고, 상기 기지국은 상기 서브그룹 내의 사용자의 변경에 대응하여 상기 서브그룹을 갱신하는 것을 특징으로 하는 그룹 키 관리 시스템으로서,
    상기 상기 각 서브그룹은 서브그룹 키를 포함하며,
    상기 각 서브 키 트리는,
    상기 서브그룹 키의 하위 키인 제1 보조 키;
    상기 제1 보조 키의 하위 키인 제2 보조 키; 및
    상기 제2 보조 키의 하위 키로서, 상기 각 사용자에 대응되는 노드를 포함하는 것을 특징으로 하는 그룹 키 관리 시스템..
  2. 삭제
  3. 제1항에 있어서,
    상기 각 사용자에 대응되는 노드는,
    상기 사용자가 현재 셀 내에 존재한다는 것을 표시하는 PIC 노드; 및
    상기 사용자가 셀 내에 존재했던 적은 있으나 현재 존재하지 않는다는 것을 표시하는 AIC 노드를 포함하는 것을 특징으로 하는 그룹 키 관리 시스템.
  4. 제3항에 있어서,
    상기 기지국은,
    사용자가 제1 셀로부터 제2 셀로 이동하면,
    상기 제1 셀에 대응되는 상기 서브그룹에서 이동한 사용자에 대응되는 PIC 노드를 AIC 노드로 변경하고,
    상기 제2 셀에 대응되는 상기 서브그룹에 이동한 상기 사용자에 대응되는 AIC 노드가 존재하는 경우 이동한 상기 사용자에 대응되는 AIC 노드를 PIC 노드로 변경하는 것을 특징으로 하는 그룹 키 관리 시스템.
  5. 제4항에 있어서,
    상기 기지국은,
    상기 제2 셀에 대응되는 상기 서브그룹에 이동한 상기 사용자에 대응되는 AIC 노드가 존재하지 않는 경우 상기 서브그룹에서 이동한 상기 사용자에 대응되는 PIC 노드를 생성하는 것을 특징으로 하는 그룹 키 관리 시스템.
  6. 제3항에 있어서,
    하나 이상의 사용자가 탈퇴하면,
    상기 키 분배 센터는, 상기 사용자의 탈퇴를 상기 복수의 기지국에 통지하고 상기 그룹 키를 갱신하며,
    탈퇴하는 상기 사용자를 포함하는 서브그룹에 대응되는 기지국은, 탈퇴하는 상기 사용자의 노드가 포함된 상기 서브 키 트리의 AIC 노드를 제거하고, 탈퇴하는 상기 사용자의 노드의 상위 키를 갱신하며,
    상기 복수의 기지국은 갱신된 상기 그룹 키 또는 상기 상위 키를 이용하여 상기 서브그룹을 갱신하는 것을 특징으로 하는 그룹 키 관리 시스템.
  7. 제3항에 있어서,
    하나 이상의 사용자가 가입하면,
    상기 키 분배 센터는, 상기 사용자의 가입을 상기 기지국에 통지하고 상기 그룹 키를 갱신하며,
    가입하는 상기 사용자를 포함하는 서브그룹에 대응되는 기지국은, 가입하는 상기 사용자의 노드의 상위 키를 갱신하고, 가입하는 상기 사용자를 포함하는 서브그룹 내의 PIC 노드를 상기 상위 키에 따라 갱신하며, 가입하는 상기 사용자의 노드의 상위 키를 가입하는 상기 사용자에 분배하는 것을 특징으로 하는 그룹 키 관리 시스템.
  8. 복수의 셀 내에 위치하는 복수의 사용자를 상기 각 셀에 대응되며 복수의 서브 키 트리를 포함하는 복수의 서브그룹으로 나누는 단계;
    상기 복수의 사용자를 상기 각 서브 키 트리에 배치하는 단계;
    키 분배 센터에서 상기 각 서브그룹에 대응되는 복수의 기지국에 그룹 키를 분배하는 단계;
    상기 키 분배 센터가 상기 사용자의 가입 또는 탈퇴에 대응하여 상기 그룹 키를 갱신하는 단계; 및
    상기 각 서브그룹에 대응되는 상기 복수의 기지국이 상기 서브그룹 내의 사용자의 변경에 대응하여 상기 서브그룹을 갱신하는 단계를 포함하는 것을 특징으로 하는 그룹 키 관리 방법으로서,
    상기 각 서브그룹은 서브그룹 키를 포함하며,
    상기 각 서브 키 트리는,
    상기 서브그룹 키의 하위 키인 제1 보조 키;
    상기 제1 보조 키의 하위 키인 제2 보조 키; 및
    상기 제2 보조 키의 하위 키로서, 상기 각 사용자에 대응되는 노드를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  9. 삭제
  10. 제8항에 있어서,
    상기 각 사용자에 대응되는 노드는,
    상기 사용자가 현재 셀 내에 존재한다는 것을 표시하는 PIC 노드; 및
    상기 사용자가 셀 내에 존재했던 적은 있으나 현재 존재하지 않는다는 것을 표시하는 AIC 노드를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  11. 제10항에 있어서,
    사용자가 제1 셀로부터 제2 셀로 이동하는 것에 반응하여, 상기 제1 셀에 대응되는 상기 서브그룹에서 상기 사용자에 대응되는 PIC 노드를 AIC 노드로 변경하는 단계;
    상기 제2 셀에 대응되는 상기 서브그룹에 상기 사용자에 대응되는 AIC 노드가 존재하는 경우 상기 사용자에 대응되는 AIC 노드를 PIC 노드로 변경하는 단계를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  12. 제11항에 있어서,
    상기 제2 셀에 대응되는 상기 서브그룹에 상기 사용자에 대응되는 AIC 노드가 존재하지 않는 경우 상기 서브그룹에서 상기 사용자에 대응되는 PIC 노드를 생성하는 단계를 더 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  13. 제10항에 있어서,
    상기 키 분배 센터가, 상기 사용자의 탈퇴를 상기 복수의 기지국에 통지하고 상기 그룹 키를 갱신하는 단계;
    탈퇴하는 상기 사용자를 포함하는 서브그룹에 대응되는 기지국이, 탈퇴하는 상기 사용자의 노드가 포함된 상기 서브 키 트리의 AIC 노드를 제거하는 단계;
    탈퇴하는 상기 사용자를 포함하는 서브그룹에 대응되는 기지국이, 탈퇴하는 상기 사용자의 노드의 상위 키를 갱신하는 단계; 및
    상기 복수의 기지국이 갱신된 상기 그룹 키 또는 상기 상위 키를 이용하여 상기 서브그룹을 갱신하는 단계를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
  14. 제10항에 있어서,
    상기 키 분배 센터가, 상기 사용자의 가입을 상기 기지국에 통지하고 상기 그룹 키를 갱신하는 단계;
    가입하는 상기 사용자를 포함하는 서브그룹에 대응되는 기지국이, 가입하는 상기 사용자의 노드의 상위 키를 갱신하는 단계;
    가입하는 상기 사용자를 포함하는 서브그룹에 대응되는 기지국이, 가입하는 상기 사용자를 포함하는 서브그룹 내의 PIC 노드를 상기 상위 키에 따라 갱신하는 단계; 및
    가입하는 상기 사용자를 포함하는 서브그룹에 대응되는 기지국이, 가입하는 상기 사용자의 노드의 상위 키를 가입하는 상기 사용자에 분배하는 단계를 포함하는 것을 특징으로 하는 그룹 키 관리 방법.
KR1020100036903A 2010-04-21 2010-04-21 그룹 키 관리 시스템 및 방법 KR101125939B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100036903A KR101125939B1 (ko) 2010-04-21 2010-04-21 그룹 키 관리 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100036903A KR101125939B1 (ko) 2010-04-21 2010-04-21 그룹 키 관리 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20110117443A KR20110117443A (ko) 2011-10-27
KR101125939B1 true KR101125939B1 (ko) 2012-03-21

Family

ID=45031365

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100036903A KR101125939B1 (ko) 2010-04-21 2010-04-21 그룹 키 관리 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101125939B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000125360A (ja) 1998-10-15 2000-04-28 Kodo Ido Tsushin Security Gijutsu Kenkyusho:Kk 移動通信ダイナミックセキュアグルーピング通信方式
KR20090092509A (ko) * 2008-02-27 2009-09-01 삼성전자주식회사 멀티캐스트 서비스를 위한 그룹 키 관리 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000125360A (ja) 1998-10-15 2000-04-28 Kodo Ido Tsushin Security Gijutsu Kenkyusho:Kk 移動通信ダイナミックセキュアグルーピング通信方式
KR20090092509A (ko) * 2008-02-27 2009-09-01 삼성전자주식회사 멀티캐스트 서비스를 위한 그룹 키 관리 방법

Also Published As

Publication number Publication date
KR20110117443A (ko) 2011-10-27

Similar Documents

Publication Publication Date Title
EP1549010B1 (en) Rekeying in secure mobile multicast communications
US7043024B1 (en) System and method for key distribution in a hierarchical tree
KR101874043B1 (ko) 무선 통신 시스템에서 그룹키 갱신 방법 및 장치
US20100183150A1 (en) Shared key management method, shared key generating method and message communication method for scada system, and recording medium
Gomathi et al. An efficient cluster based key management scheme for MANET with authentication
Daghighi et al. Toward secure group communication in wireless mobile environments: Issues, solutions, and challenges
Seetha et al. A survey on group key management schemes
JP5234307B2 (ja) 暗号鍵更新方法、暗号鍵更新装置、及び暗号鍵更新プログラム
US7590247B1 (en) System and method for reusable efficient key distribution
Bettahar et al. AKMP: an adaptive key management protocol for secure multicast
Park et al. A cell-based decentralized key management scheme for secure multicast in mobile cellular networks
KR101125939B1 (ko) 그룹 키 관리 시스템 및 방법
JP5637401B2 (ja) 暗号鍵更新方法、暗号鍵更新装置、及び暗号鍵更新プログラム
Kamboj et al. Survey of various keys management techniques in MANET
Challal et al. Adaptive clustering for scalable key management in dynamic group communications
Devaraju et al. Dynamic clustering for QoS based secure multicast key distribution in mobile Ad hoc networks
SuganyaDevi et al. Secure multicast key distribution for mobile ad hoc networks
KR101099851B1 (ko) 일괄 키 재설정 시스템 및 방법
Yadav et al. Secure multicast key distribution in mobile ad hoc networks
Li et al. Incremental Threshold Scheme Enabled IoT Group Key Management
Sahban et al. Group communication management in UAV-MBN networks
Wang et al. Efficient key management for secure wireless multicast
Ramirez et al. Topological decoupled group key management for cellular networks
Devi et al. Efficient cluster based multicast tree for secure multicast communication for mobile ad hoc networks
Lim et al. Dynamic group key management for efficient fog computing

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150212

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160122

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180222

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20200302

Year of fee payment: 9