KR20090110334A - 공유 그룹 키를 사용하여 제2 노드 그룹을 제1 노드 그룹에 재결합하는 시스템 및 방법 - Google Patents

공유 그룹 키를 사용하여 제2 노드 그룹을 제1 노드 그룹에 재결합하는 시스템 및 방법 Download PDF

Info

Publication number
KR20090110334A
KR20090110334A KR1020097016719A KR20097016719A KR20090110334A KR 20090110334 A KR20090110334 A KR 20090110334A KR 1020097016719 A KR1020097016719 A KR 1020097016719A KR 20097016719 A KR20097016719 A KR 20097016719A KR 20090110334 A KR20090110334 A KR 20090110334A
Authority
KR
South Korea
Prior art keywords
group
node
key
state
nodes
Prior art date
Application number
KR1020097016719A
Other languages
English (en)
Other versions
KR101056104B1 (ko
Inventor
브라이언트 더블유. 이스트햄
Original Assignee
파나소닉 전공 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 파나소닉 전공 주식회사 filed Critical 파나소닉 전공 주식회사
Publication of KR20090110334A publication Critical patent/KR20090110334A/ko
Application granted granted Critical
Publication of KR101056104B1 publication Critical patent/KR101056104B1/ko

Links

Images

Classifications

    • 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]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/065Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications
    • 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/0822Key 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
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

제2 노드 그룹을 제1 노드 그룹에 재결합하는 방법을 기술한다. 제1 노드 그룹과 연관된 제1 그룹 키의 제1 상태를 수신한다. 제1 그룹 키의 제1 상태를 제2 노드 그룹에 멀티캐스팅한다. 제1 그룹 키를 제2 노드 그룹과 연관된 제2 그룹 키로 재입력(rekey)한다. 제2 그룹 키의 제2 상태를 제2 노드 그룹에 멀티캐스팅한다. 제1 노드 그룹과 연관된 제3 그룹 키의 제3 상태를 수신한다. 제3 상태가 제2 상태와 다른 경우, 재입력 커맨드를 제2 노드 그룹에 멀티캐스팅한다. 제2 그룹 키를 제3 그룹 키로 재입력한다.

Description

공유 그룹 키를 사용하여 제2 노드 그룹을 제1 노드 그룹에 재결합하는 시스템 및 방법 {SYSTEMS AND METHODS FOR REJOINING A SECOND GROUP OF NODES WITH A FIRST GROUP OF NODES USING A SHARED GROUP KEY}
본 발명은 일반적으로 컴퓨터 및 컴퓨터관련 기술에 관한 것이다. 더욱 구체적으로, 본 발명은 공유 그룹 키(shared group key)를 사용하여 노드의 제2 그룹(제2 노드 그룹)을 노드의 제1 그룹(제1 노드 그룹)에 재결합하는 시스템 및 방법에 관한 것이다.
컴퓨터 및 통신 기술은 빠른 속도로 계속 진보하고 있다. 실제로, 컴퓨터 및 통신 기술은 사람의 일상의 여러 면에 관련되어 있다. 예를 들면, 오늘날 소비자들이 사용되고 있는 많은 디바이스의 내부에는 소형 컴퓨터를 구비한다. 이 소형 컴퓨터는 크기 및 복잡한 정도는 변화되고 있다. 이 소형 컴퓨터에는 하나의 마이크로컨트롤러로부터 모든 기능을 갖춘(fully-functional complete) 컴퓨터 시스템에 이르기까지 모든 것을 포함된다. 예를 들면, 이 소형 컴퓨터는 마이크로컨트롤러와 같은 원칩(one-chip) 컴퓨터, 컨트롤러와 같은 원보드형(one-board type) 컴퓨터, IBM-PC 호환형과 같은 전형적인 데스크톱 컴퓨터일 수 있다.
컴퓨터는 일반적으로 컴퓨터의 핵심요소로 하나 이상의 프로세서를 구비한 다. 프로세서는 대개 상이한 외부의 입출력 장치, 및 기능 장치에 연결되어 특정한 컴퓨터 또는 디바이스를 관리한다. 예를 들면, 자동온도조절장치(thermostat) 내의 프로세서는 온도 설정을 선택하는 데 사용되는 버튼, 난방로(furnace) 또는 에어 컨디셔너에 연결되어 온도를 변화시킬 수 있고, 온도 센서에 연결되어 현재 온도를 읽어 디스플레이에 표시할 수 있다.
많은 가전기기(appliance), 디바이스 등은 하나 이상의 소형 컴퓨터를 포함한다. 예를 들면, 자동온도조절장치, 난방로, 에어 컨디셔닝 시스템, 냉장고, 전화기, 타이프라이터, 자동차, 자동 판매기, 및 여러 상이한 타입의 산업 장비는 현재 일반적으로 내부에 소형 컴퓨터, 또는 프로세서를 가진다. 컴퓨터 소프트웨어는 이들 컴퓨터의 프로세서를 동작시켜 일정한 타스크(task)를 실행하는 방법을 프로세서에 명령한다. 예를 들면, 자동온도조절장치에서 실행되는 컴퓨터 소프트웨어는 특정한 온도에 도달했을 때 에어 컨디셔너의 동작을 정지시킬 수도 있고, 또는 필요할 때 히터를 켤 수도 있다.
디바이스, 가전기기, 도구(tool) 등의 일부인 이런 타입의 소형 컴퓨터는 흔히 내장형 디바이스 또는 내장형 시스템(embedded devices or embedded system)이라고 한다. (본 명세서에서 "내장형 디바이스"와 "내장형 시스템"은 호환적으로 사용될 것이다.) 내장형 시스템은 대개 컴퓨터 하드웨어와 보다 규모가 큰 시스템의 일부인 소프트웨어를 가리킨다. 내장형 시스템은 키보드, 마우스, 및/또는 모니터와 같은 전형적인 입출력 디바이스를 구비하지 않을 수 있다. 보통 각 내장형 시스템의 핵심은 하나 이상의 프로세서이다.
내장형 시스템은 여러 상이한 시스템, 자원, 제품 등의 모니터 또는 제어에 사용될 수 있다. 인터넷과 월드와이드웹(World Wide Web)이 성장함에 따라, 내장형 시스템은 원격 모니터 및/또는 원격 제어될 수 있도록 점점 인터넷에 연결되고 있다. 다른 내장형 시스템은 근거리 통신망(local area network, LAN), 광역 통신망(wide area network, WAN) 등을 포함하는 컴퓨터 네트워크에 연결될 수 있다. 본 명세서에서 사용되는 바와 같이, 용어 "컴퓨터 네트워크" (또는 간단히 "네트워크")는 통신 경로에 의해 일련의 노드(node)가 상호연결되어 있는 임의의 시스템을 가리킨다. 용어 "노드"는 컴퓨터 네트워크의 일부로서 연결될 수 있는 임의의 디바이스를 가리킨다.
일부 내장형 시스템은 컴퓨터 네트워크를 사용하여 다른 컴퓨터 디바이스에 데이터 및/또는 서비스를 제공할 수 있다. 또는, 컴퓨터 네트워크를 사용하여 다른 컴퓨터 디바이스에 데이터 및/또는 서비스를 제공하는 전형적인 컴퓨터 또는 컴퓨팅 디바이스도 있을 수 있다. 노드들은 네트워크를 사용하여 그들 사이의 상태를 공유할 수 있다. 네트워크는 완전하지 않으며, 때로 네트워크는 분할(segment)되거나 분리(disconnect)될 수 있다. 이로 인해 통신중이었던 노드의 세트들 사이에 접속가능성의 손실을 초래할 수 있으며, 그들의 공유 상태가 발산(diverge)할 수 있다. 이 분할(partitioning)이 해결된 때, 이전의 통신 노드(communicating node)는 이 발산된 상태로 인해 다시 통신하는데 어려움이 있을 수 있다. 이 어려움을 최소화하는 것이 유익하다. 이 유익은, 만약 공유 그룹 키를 사용하여 제2 노드 그룹을 제1 노드 그룹에 재결합하는 데 시스템 및 방법을 이용할 수 있다면, 실현될 수 있다.
제2 노드 그룹을 제1 노드 그룹과 재결합하는 방법을 기술한다. 제1 노드 그룹과 연관된 제1 그룹 키의 제1 상태를 수신한다. 제1 그룹 키의 제1 상태를 제2 노드 그룹에 멀티캐스팅한다. 제1 그룹 키를 제2 노드 그룹과 연관된 제2 그룹 키로 재입력(rekey)한다. 제2 그룹 키의 제2 상태를 제2 노드 그룹에 멀티캐스팅한다. 제1 노드 그룹과 연관된 제3 그룹 키의 제3 상태를 수신한다. 제3 상태가 제2 상태와 다른 경우, 재입력 커맨드를 제2 노드 그룹에 멀티캐스팅한다. 제2 그룹 키를 제3 그룹 키로 재입력한다.
제1 노드 그룹은 노드의 보안 멀티캐스트 그룹일 수 있다. 제1 상태는 제1 노드 그룹의 관리 노드(managing node)로부터 전송될 수 있다. 제2 상태는 제2 노드 그룹의 관리 노드로부터 전송될 수 있다. 제1 노드 그룹의 하나 이상의 노드가 제2 노드 그룹으로 분할될 수 있다. 제1 노드 그룹의 관리 노드는 제2 노드 그룹을 포함하는 노드들과 분리(disconnect)될 수 있다.
일 실시예에서, 각 상태는 키 교환 키(key exchange key, KEK)를 포함할 수 있다. 키 교환 키(KEK)를 포함하는 노드는 각 상태를 수신할 수 있다. 각 그룹 키는 그룹 키 파라미터를 포함할 수 있으며, 그룹 키 파라미터는 노드 그룹에 의해 각 그룹 키가 이용된 시간량을 나타낸다. 관리 노드는 최고 그룹 키 파라미터를 가지는 그룹키를 포함하도록 선택될 수 있다. 제1 노드 그룹 및 제2 노드 그룹을 포함한 각 노드는, 노드 식별자를 포함할 수 있으며, 노드 식별자는 노드가 제1 노드 그룹에 결합된 때의 순위(order)를 나타낸다. 관리 노드는 최저 노드 식별자(lowest node identifier)를 포함하도록 선택될 수 있다.
일 실시예에서, 상기 재입력 커맨드는 그룹 키로 암호화될 수 있다. 제2 노드 그룹의 관리 노드는 제1 그룹 키와 제2 그룹 키를 포함할 수 있다.
또한, 제2 그룹 노드를 제1 그룹 노드에 재결합하도록 구성된 컴퓨터 시스템을 기술한다. 이 컴퓨터 시스템은 프로세서, 및 상기 프로세서와 전자 통신하는 메모리를 포함한다. 상기 메모리에는 명령어가 저장되어 있다. 제1 노드 그룹과 연관된 제1 그룹 키의 제1 상태를 수신한다. 제1 그룹 키의 제1 상태를 제2 노드 그룹에 멀티캐스팅한다. 제1 그룹 키를 제2 노드 그룹과 연관된 제2 그룹 키로 재입력한다. 제2 그룹 키의 제2 상태를 제2 노드 그룹에 멀티캐스팅한다. 제1 노드 그룹과 연관된 제3 그룹 키의 제3 상태를 수신한다. 제3 상태가 제2 상태와 다른 경우, 재입력 커맨드를 제2 노드 그룹에 멀티캐스팅한다. 제2 그룹 키를 제3 그룹 키로 재입력한다.
또한, 제2 그룹 노드를 제1 그룹 노드에 재결합하도록 실행 가능한 명령어를 포함하는 컴퓨터로 판독가능한 매체를 기술한다. 제1 노드 그룹과 연관된 제1 그룹 키의 제1 상태를 수신한다. 제1 그룹 키의 제1 상태를 제2 노드 그룹에 멀티캐스팅한다. 제1 그룹 키를 제2 노드 그룹과 연관된 제2 그룹 키로 재입력한다. 제2 그룹 키의 제2 상태를 제2 노드 그룹에 멀티캐스팅한다. 제1 노드 그룹과 연관된 제3 그룹 키의 제3 상태를 수신한다. 제3 상태가 제2 상태와 다른 경우, 재입력 커맨드를 제2 노드 그룹에 멀티캐스팅한다. 제2 그룹 키를 제3 그룹 키로 재입력한다.
본 발명의 예시적인 실시예는 첨부도면과 함께, 이하의 설명 및 첨부된 청구의 범위로부터 더욱 완전하고 분명해질 것이다. 도면은 단지 예시적인 실시예를 나타낸 것일 뿐이므로, 본 발명의 범위를 한정하는 것은 아니며, 본 발명의 예시적인 실시예에 대하여 첨부도면을 사용하여 더욱 전문적이고 상세하게 설명한다.
도 1은 보안 멀티캐스트 그룹 내의 하나 이상의 노드에 키 교환 키(KEK)를 전달하는 서버의 일 실시예를 나타낸 블록도이다..
도 2는 제1 노드 그룹으로부터 분할되는 제2 노드 그룹의 일 실시예를 나타낸 블록도이다.
도 3은 제2 노드 그룹의 다른 실시예를 나타낸 블록도이다.
도 4는 제1 노드 그룹에 결합하는 제2 노드 그룹의 관리 노드의 일 실시예를 나타낸 블록도이다.
도 5는 제1 노드 그룹에 재결합하는 제2 그룹 노드의 관리 노드의 일 실시예를 나타낸 블록도이다.
도 6은 단편화된(fragmented) 노드 그룹 내의 하나 이상의 노드에 키 재입력 커맨드를 멀티캐스팅하는 방법의 일 실시예를 나타낸 흐름도이다.
도 7은 실시예에 따라 구성되는 노드에 사용될 수 있는 하드웨어 구성요소의 블록도이다.
본 발명의 다양한 실시예를 첨부도면 참조하여 설명하며, 유사한 도면부호는 동일하거나 기능적으로 유사한 구성요소를 나타낸다. 본 발명의 실시예는, 일반적으로 도면에 기재되고 도시된 바와 같이, 폭넓고 다양하게 상이한 구성으로 배치 설계될 수 있다. 따라서, 도면에 나타낸 바와 같은, 본 발명의 몇몇 예시적인 실시예에 대한 더욱 상세한 설명은 본 발명의 범위를 한정하려는 것은 아니라, 청구의 범위에서 청구된 바와 같이, 단지 본 발명의 대표적인 실시예일 뿐이다.
"예시적인(exemplary)"이라는 말은 오로지 본 명세서에서, "예(example), 보기(instance), 또는 실례(illustration)로서 사용되는"을 의미하는 것으로 사용된다. 본 명세서에서 "예시적인"이라고 기술된 임의의 실시예는 반드시 다른 실시예들에 비하여 바람직하거나 유리하게 구성될 필요는 없다.
본 명세서에 개시된 실시예의 많은 특징은 컴퓨터 소프트웨어, 전자적인 하드웨어 또는 이 둘의 조합으로 구현될 수 있다. 이러한 하드웨어와 소프트웨어의 교환 가능성(interchangeability)을 분명하게 설명하기 위해, 각종 구성요소를 일반적으로 그들의 기능성에 의하여 설명할 것이다. 이러한 기능성이 하드웨어 또는 소프트웨어로 구현될 것인지는 특정한 애플리케이션 및 전체 시스템에 부가된 설계상의 제약에 따라 달라진다. 해당 기술분야의 당업자는 각각의 특정한 애플리케이션에 대해 여러 방식으로 기술된 기능성을 구현할 수 있지만, 그러한 구현 결정은 본 발명의 범위를 벗어나는 것으로 해석되어서는 안 된다.
기술된 기능성을 컴퓨터 소프트웨어로 구현하는 경우, 그러한 소프트웨어는 메모리 디바이스 내에 위치된 및/또는 시스템 버스 또는 네트워크를 통하여 전자적 인 신호로서 송신된 임의의 타입의 컴퓨터 명령어 또는 컴퓨터로 실행가능한 코드를 포함할 수 있다. 본 명세서에 기술된 구성요소와 연관된 기능성을 구현하는 소프트웨어는 하나의 명령어 또는 다수의 명령어를 포함할 수 있고, 수 개의 상이한 코드 세그먼트를 통하여, 상이한 프로그램 중에, 그리고 수 개의 메모리 디바이스에 걸쳐 배포될 수 있다.
본 명세서에 사용된 바와 같이, 용어 "어떤 실시예", "실시예", "실시예들" "상기 실시예', "상기 실시예들", "하나 이상의 실시예", "일부 실시예", "일정한 실시예", "하나의 실시예', "다른 실시예" 등은 특별히 명기하지 않는 한, "개시된 실시예(들) 중 하나 이상(반드시 전부는 아닌)의 실시예"를 의미한다.
용어 "결정(determining)"( 및 이의 문법적인 변형)은 매우 넓은 의미로 사용된다. 용어 "결정"은 폭넓고 다양한 행위(action)을 포함하므로, "결정하는"은 다양한 구성요소를 계산(calculating), 컴퓨팅(computing), 처리(processing), 유도(deriving), 조사(investigating), 검색(looking up)(예컨대, 테이블, 데이터베이스, 또는 다른 데이터 구조에서의 검색), 확인(ascertaining) 등을 포함할 수 있다. 또한 "결정"은 수신(예컨대, 정보의 수신), 액세스(예컨대, 메모리 내의 데이터의 액세스) 등을 포함할 수 있다. 또한, "결정"은 분석(resolving), 고름(selecting), 선택(choosing), 설정(establishing) 등을 포함할 수도 있다.
구(phrase) "...에 기초한"은 특별히 명기하지 않는 한, "...에만 기초한"을 의미하는 것이 아니다. 다시 말해, 구 "...에 기초한"은 "...에만 기초한" 및 "적어도 ...에 기초한"을 기술하는 것이다.
컴퓨터 네트워크는 다수의 노드를 포함할 수 있다. 이 노드를 컴퓨팅 디바이스라고 할 수 있다. 다수의 노드는 하나 이상의 그룹으로 조직될 수 있다. 하나의 노드는 자신의 그룹 내의 다른 노드와 통신할 수 있다. 일 실시예에서, 하나의 노드는 자신의 그룹 내의 다른 노드에 정보를 멀티캐스팅할 수 있다. 멀티캐스팅은 그룹의 각 멤버에게 동시에 정보를 송신하는 것을 포함할 수 있다. 하나의 노드는 그룹 내의 다른 노드에 상태를 멀티캐스팅할 수 있다. 상태는 프로그램 또는 컴퓨팅 디바이스의 다른 측면에 관한 정보의 유일한 구성(unique configuration)을 포함할 수 있다.
상태를 멀티캐스팅하는 것은 확장성이 있는(scalable) 보안 멀티캐스트 그룹에 바람직할 수 있다. 네트워크가 단편화되는 경우, 문제가 발생할 수 있다. 예를 들면, 원래의 노드 그룹이 여러 개의 단편화된 노드 그룹으로 단편화될 수 있다. 원래의 그룹의 멤버들 간에 공유되었던 상태가 발산될 수 있다. 예를 들면, 노드 그룹들은 일반적으로 각자의 키를 제어한다. 시간이 흐르면, 그룹은 주기적으로 키를 재입력(교체)할 수 있다. 새로운 키는 랜덤하게 선택될 수 있으므로, 상이한 단편화된 노드 그룹이 동일한 키를 재입력할 확률은 낮다.
네트워크 문제가 해결될 때까지는, 그룹의 분할이 올바른 거동일 수 있다. 다시 말해, 일부 노드의 세트가 여전히 통신을 할 수 있다고 가정하면, 그룹(들)이 하드웨어 고장에 의해 고장나서는 안 된다. 그러나, 네트워크 문제가 해결되고, 단편화된 노드 그룹들이 서로 다시 통신할 수 있게 된 때, 상태는 가능한 한 빨리 수렴(converge)하여야 한다.
본 시스템 및 방법은 그룹 관리자(group manager)를 결정하는 노드 그룹에 관한 것이다. 그룹 내의 임의의 노드가 관리자의 역할을 할 수 있으며, 임의의 일정한 시간에 하나 이상의 노드가 관리자의 역할을 할 수 있다. 관리자는 자신의 상태를 그룹 내의 노드에 주기적으로 광고(advertise)한다. 또한 관리자는, 다른 단편화된 노드 그룹들이 추출할 수 있는 방식으로 자신의 상태를 광고한다. 여러 단편화된 노드 그룹에 공통인 상태의 주요 부분(primary piece)은 키 교환 키(KEK)이다. 동일한 KEK를 사용하는 임의의 단편화된 노드 그룹은 서로 통신할 수 있다. 타이밍 파라미터 및 그룹 키와 같은 부가적인 상태는 시간이 지남에 따라 발산할 수 있다. 이들 파라미터는 KEK에 의해 광고되고 보호될 수 있다. 다시 말해, KEK를 소유하고 있지 않은 노드는 상태로부터 이들 파라미터의 추출이 허용되지 않을 수 있다.
분할이 발생하면, 각각의 단편화된 노드 그룹은 상이한 관리자를 결정할 수 있다. 단편화된 그룹 내의 노드들은 각자의 이전 관리자로부터의 상태에 대한 주기적인 광고를 듣는 것을 중단한 때, 자동으로 관리자를 결정할 수 있다. 임의의 한 때(any one time)에 어쩌다가 하나의 그룹에 대해 다수의 관리자가 존재하는 경우, 이 다수의 관리자는 서로의 광고를 들을 것이다. 이들 다수의 광고 내의 상태가 정확한 사본(exact duplicate)이면, 노드 중 하나는 관리자가 되는 것을 그만둘 것이다. 동등(tie)한 경우, 최고(最古)의 상태, 또는 순위가 더 낮은 노드 식별자를 가지는 관리자가 단편화된 그룹의 관리자 역할을 계속할 수 있다. 물론, 그룹 관리자의 결정에는 다른 방법을 사용할 수도 있다. 분할이 발생하지만 상태의 발 산 전에 해결되면, 전술한 논리는 단편화된 노드 그룹들이 통신을 재개할 때 다수의 관리자 문제를 해결할 수 있다.
분할이 충분히 긴 시간 동안 발생하면, 여러 단편화된 그룹에 대응하는 상태는 발산할 수 있다. 분할이 해결되고 통신이 재개된 때, 단편화된 그룹들의 다수의 관리자는 원래의 그룹에 속하는 노드에 상이한 상태를 광고할 것이다. 여러 단편화된 그룹에 속하는 노드는 동일한 KEK를 공유할 수 있다. 관리자가 특정한 광고가 유효(valid)하다는 것을 알 수 있다고 하더라도, 재전송 공격(replay attack)일 가능성이 있기 때문에 그 패킷을 통용하는(current) 것으로 신뢰할 수 없다. 예를 들면, 부당한 노드(malicious node)가 이전의 광고를 저장한 후, 나중에 그 광고를 재전송할 수 있다. 이런 유형의 재전송에 의해 노드가 반응해서는 안 된다.
단편화된 노드 그룹의 관리자가 자신의 상태와 부분적으로 일치하는 것을 포함하는 광고를 들으면, 다른 관리자에 의해 식별된 그룹에 "결합(join)"할 수 있다. 이 결합은 처음에 노드를 결합시키는 프로세스와 거의 동일할 수 있으며, 재전송 공격으로부터 보호받을 수 있다. 결합이 성공적이면, 단편화된 그룹의 관리자는 양쪽의 상태의 세트를 모두 소유할 수 있다. 관리자는 그 후 자신의 단편화된 노드 그룹을 재입력하여 다른 노드 그룹의 상태와 일치시켜, 매우 신속하게 그룹을 효과적으로 복구(healing)할 수 있다. 상황이 대칭적일 때(즉, 두 관리자가 서로의 광고를 들을 수 있음), 전술한 바와 같은 동일한 논리(즉, 어떤 상태가 더 오래된 것인지)를 사용하여 어떤 관리자가 재입력할 것인지를 결정할 수 있다.
도 1은 그룹 A(106) 내의 하나 이상의 노드에 키 교환 키(KEK)(104)를 전달하는 서버(102)의 일 실시예를 나타낸 블록도이다. 일 실시예에서, 서버(102)는 인증 서버이다. 인증 서버는 그룹 A(106)에 결합을 원하는 노드를 인증하는 서버일 수 있다. 일 실시예에서, 서버(102)는 노드를 인증하고 노드는 KEK(104)를 수신한다. 노드는 KEK(104)를 사용하여 그룹 A(106)에 결합하여, 그룹 A(106)에 결합하는 자신의 능력을 그룹 A(106)에 속하는 다른 노드에 대해 확인(verify)gkf 수 있다. 일 실시예에서, 서버(102)는 그룹 A(106)의 각 노드에 관한 최소한의 상태를 유지할 수 있다. 예를 들면, 서버(102)는 KEK(104)의 상태를 단순히 유지할 수 있다. 서버(102)는 KEK(104)의 변경을 그룹 A(106)의 노드에 전달할 수 있다.
도시된 바와 같이, 그룹 A(106)는 노드 A(108), 노드 B(110) 및 노드 C(112)를 포함한다. 그룹 A(106)는 3개의 노드만을 가지는 것으로 도시되어 있지만, 그룹 A(106)는 노드를 더 많이 또는 더 적게 포함할 수 있는 것은 물론이다. 그룹 A(106) 내의 노드들은 보안 방식(secure manner)으로 서로 정보를 멀티캐스팅할 수 있기 때문에, 보안 멀티캐스트 그룹(secure multicast group)이라고 할 수 있다. 예를 들면, 그룹 A(106)의 노드 간에 멀티캐스트되는 정보는 공유 그룹 A 키(114)로 암호화될 수 있다. 노드는 KEK(104)를 사용하여 그룹 A(106)와 연관된 그룹 A 키(114)를 수신할 수 있다. 예를 들면, 노드 N(116)은 그룹 A(106)의 하나 이상의 노드에 그룹 요청(118)을 전송함으로써 그룹 A(106)의 멤버가 되기를 요청할 수 있다. 그룹 A(106)의 하나 이상의 노드는, 노드 N(116)이 KEK(104)를 포함하는지를 결정할 수 있다. 노드 N(116)이 KEK(104)를 포함하면, 하나 이상의 노드는 그룹 A 키(114)를 노드 N(116)을 배포할 수 있다. 그룹 A 키(114)는, 노드가 그룹 A(106)의 다른 노드에 정보를 전송하고 그로부터 정보를 수신할 수 있게 한다. 노드는 그룹 A 키(114)를 사용하여 그룹 A(106)의 노드 간에 멀티캐스팅되는 정보를 암호화 및 해독할 수 있다.
노드 N(116)이 KEK(104)를 소유하고 있지 않으면, 노드 N(116)은, 서버(102)가 KEK(104)를 자신에게 배포할 것을 요청하는 KEK 요청(120)을 서버(102)에 전송할 수 있다. 서버(102)는 노드 N(116)을 인증하고 KEK(104)를 배포할 수 있다. 그러나, KEK(104)가 노드 N(116)에 배포되어 있지 않으면, 노드 N(116)은 그룹 A(106)에 결합할 수 없고 그룹 A 키(114)를 수신할 수 없다.
서버(102), 그룹 A(106) 및 노드 N(116) 간의 통신은 네트워크(122)를 통하여 이루어질 수 있다. 네트워크(122)에는 전역 통신망(global communication network), 인터넷, 컴퓨터 네트워크, 전화망, 페이저 네트워크, 셀룰러 네트워크, 광역 통신망(wide-area network, WAN), 근거리 통신망(local-area network, LAN) 등이 포함된다. 일 실시예에서, 서버(102)는 네트워크(122)를 통하여 다수의 노드 그룹을 관리하고 이들과 통신할 수 있다. 서버(102)는 각 노드 그룹에 특유한 KEK를 배포할 수 있다.
도 2는 노드의 제1 그룹(206)으로부터 분할되는 노드의 제2 그룹(246)의 일 실시예를 나타낸 블록도이다. 제1 그룹(206)은 그룹 A(106)와 같은, 멀티캐스트 노드 그룹을 포함할 수 있다. 일 실시예에서, 노드 E(226), 노드 F(228), 및 노드 G(230)은 원래 제1 그룹에 속한다. 도시된 실시예는 7개의 노드를 포함하지만, 제 1 그룹(206) 및 제2 그룹(246)에는 더 많거나 더 적은 노드가 포함될 수 있는 것은 물론이다.
노드 A∼G(208, 210, 212, 224, 226, 228, 230)는 KEK(204) 및 그룹 A 키(214)를 포함할 수 있다. 일 실시예에서, 그룹 A 키(214)는 그룹 A 키 파라미터(240)를 포함한다. 그룹 A 키 파라미터(240)는 제1 그룹(206)의 멤버에 의해 그룹 A 키(214)가 사용된 시간량을 나타낼 수 있다. 예를 들면, 제1 그룹(206)의 멤버는 그룹 A 키(214)를 제어할 수 있다. 그룹 A 키(214)는 주기적으로 변할 수 있으며, 이에 의해 노드들은 그룹 A 키(214)를 변경된, 새로운 그룹 키로 재입력하게 된다. 그룹 A 키 파라미터(240)는, 그룹 A 키(214)가 제1 그룹(206)의 멤버에 의해 사용된 기간을 나타낼 수 있다.
일 실시예에서, 노드 A(208)는 식별자 A(238)를 포함할 수 있다. 식별자 A(238)는, 노드 A(208)가 제1 그룹(206)에 결합한 순위(order)를 나타낼 수 있다. 예를 들면, 노드 A(208)가 제1 그룹(206)에 결합한 세 번째 노드였고, 노드 B(210)가 제1 그룹(206)에 결합한 네 번째 노드였다면, 식별자 A(238)는 "3"을 나타낼 수 있고, 식별자 B(도시하지 않음)은 "4"를 나타낼 수 있다. 노드 A(208)만이 식별자를 포함하는 것으로 도시되어 있지만, 제1 그룹(206) 내의 각 노드가 대응하는 식별자를 포함할 수 있다.
일 실시예에서, 노드 A(208)는 제1 그룹(206)의 그룹 관리자로 결정된다. 그룹 관리자는 그룹 키 및 다른 파라미터들에 관한 정보를 그룹 내의 나머지 노드에 주기적으로 멀티캐스팅할 책임을 져야 할 수 있다. 식별자 A(238)가 최저값을 포함하기 때문에, 노드 A(208)가 그룹 관리자로 결정된다. 다른 실시예에서, 그룹 관리자는 광고를 먼저 개시하는 노드, 어드미니스트레이터(administrator)에 의해 관리자로서 수동으로 설정된 노드 등 일 수 있다. 다른 실시예에서, 노드는 이하의 임의의 상업적으로 이용가능한 방법에 의해 그룹 관리자로 결정될 수 있다.
노드 A(208)는 상태(234)를 포함할 수 있다. 상태(234)는 일정한 파라미터들의 현재 값을 나타낼 수 있다. 예를 들면, 상태(234)는 KEK(204), 그룹 A 키(214) 및 타이밍 파라미터 A(236)를 포함할 수 있다. 타이밍 파라미터 A(236)는, 노드 A(208)가 제1 그룹(206) 내의 노드들에 얼마나 자주 상태(234)를 멀티캐스팅하는지를 나타낼 수 있다. 일 실시예에서, 그룹 A 키(214) 및 타이밍 파라미터 A(236)는 KEK(204)에 의해 보호될 수 있다. 다시 말해, KEK(204)가 없는 노드들은 상태(234)로부터 이들 파라미터를 추출하는 것이 허용되지 않을 수 있다.
노드 A(208)는 라우터 A(242)를 이용하여 상태(234)를 노드 B(210), 노드 C(212), 및 노드 D(224)에 멀티캐스팅할 수 있다. 마찬가지로, 노드 A(208)는 라우터 B(244)를 이용하여 상태(234)를 노드 E(226), 노드 F(228), 및 노드 G(230)에 멀티캐스팅할 수 있다. 도시된 실시예는, 노드 A(208)가 2개의 라우터를 통하여 상태(234)를 멀티캐스팅하는 것으로 묘사하지만, 임의의 개수의 라우터, 스위치, 다른 네트워킹 장비, 배선 등을 사용하여 정보를 멀티캐스팅할 수 있는 것은 물론이다. 노드 A(210, 212, 224, 226, 228, 230)은 KEK(204)를 이용하여 상태(234)로부터 그룹 A 키(214) 및 타이밍 파라미터 A(236)를 추출할 수 있다. 노드 A(210, 212, 224, 226, 228, 230) 상에 포함된 그룹 A 키(214)가 상태(234)에 포함된 그룹 A 키(214)와 일치하지 않으면, 이 노드들은 그룹 A 키(214)를 재입력하여 상태(234)에 포함된 그룹 키와 일치시킬 수 있다. 전술한 바와 같이, 멀티캐스트 그룹은 그룹 키를 주기적으로 변경할 수 있다. 그룹 A 키(214)를 포함하는 상태(234)의 빈번한 멀티캐스팅은, 노드들에게 제1 그룹(206)에 연관된 현재의 그룹 키를 재입력할 수 있게 한다.
일 실시예에서, 노드 A(208)와 라우터 B(244) 사이의 통신을 지속할 수 없게 되거나(lose) 제한받는다. 예를 들면, 라우터 B(244)는 고장날 수 있으며, 그로 인해 노드 A(208)로부터 전송된 상태(234)를 라우터 B(244)에 연결된 노드(226∼230)에 전달할 수 없다. 일 실시예에서, 노드 E(226), 노드 F(228) 및 노드 G(230)는 제1 그룹(206)로부터 제2 그룹(246)으로 분할된다. 노드 A(208)는 라우터 A(242)를 통하여 노드 B(210), 노드 C (212) 및 노드 D(224)에 상태(234)를 멀티캐스팅할 수 있다. 따라서, 원래의 제1 그룹(206)은 2개의 그룹(206, 246)으로 분할된다. 2개의 그룹(206, 246)만을 도시하였지만, 제1 그룹(206)이 더 많은 노드 그룹으로 분할될 수 있음은 물론이다.
도 3은 노드의 제2 그룹(346)의 다른 실시예를 나타낸 블록도이다. 일 실시예에서, 제2 그룹(346)은 노드 E(326), 노드 F(328) 및 노드 G(330)를 포함할 수 있다. 이 노드(326, 328, 330)는 제1 그룹(206)의 관리자로부터 상태의 주기적인 멀티캐스팅의 수신을 중단한 때, 제2 그룹 관리자를 결정할 수 있다. 예를 들면, 노드 E∼G(326∼330)는 노드 A(208)로부터 상태(234)의 수신을 중단한 때, 제2 그룹 관리자를 결정할 수 있다. 일 실시예에서, 제2 그룹(346) 내의 임의의 노드가 제2 그룹 관리자로서 기능할 수 있다. 도시된 실시예에서는, 노드 F(328)가 제2 그룹(346)에 속하는 노드들에 상태(234)의 멀티캐스팅을 개시하기 때문에, 노드 F(328)를 제2 그룹 관리자로 결정한다. 노드 F(328)는, 노드 F(328)가 원래의 제1 그룹(206)에 결합된 순위를 나타내는 식별자 F(352)를 포함할 수 있다.
제2 그룹(346)의 노드(326∼330)는 처음에 그들이 제1 그룹(26)의 멤버로서 사용한 것과 동일한 그룹 키를 사용할 수 있다. 예를 들면, 노드(326∼330)는 그룹 A 키(314)를 여전히 이용할 수 있다. 다른 실시예에서, 제2 그룹의 관리자 노드 F(238)는 자신이 그룹 관리자가 된 때 즉시 그룹 B 키(350)를 변경할 수 있다. 나중에 제2 그룹(346)의 멤버는 그룹 A 키(314)를, 그룹 B 키(350)와 같은, 랜덤한 새로운 그룹 키(random new group key)로 재입력(354)할 수 있다. 다른 실시예에서, 여전히 제1 그룹(206)(도시하지 않음)에 속하는 멤버도 또한 그룹 A 키(314)를 랜덤한 새로운 그룹 키로 재입력할 수도 있으며, 제1 그룹(206)과 제2 그룹(346)이 그룹 A 키(314)를 동일한 새로운 그룹 키로 재입력할 확률은 낮다.
일 실시예에서, 그룹 B 키(350)가 이제 제2 그룹(346)의 멤버에 의해 서로 정보를 멀티캐스팅하는 데 사용된다. 그룹 B 키(350)는 제2 그룹(346)에 의해 그룹 B 키(350)가 사용된 시간량을 나타내는 그룹 B 키 파라미터(341)를 포함할 수 있다.
제2 그룹(346)의 관리자로서, 노드 F(328)는 제2 그룹(346)의 다른 멤버들에게 상태(234)를 멀티캐스팅할 수 있다. 일 실시예에서, 상태(334)는 KEK(304) 및그룹 B 키(350)를 포함할 수 있다. KEK(304)는 KEK(304)를 소유하고 있지 않은 노 드들이 상태(334)로부터 그룹 B 키(350)를 추출할 수 없도록 하여, 그룹 B 키(350)를 보호할 수 있다. 노드 E(326) 및 노드 G(330)는 상태(334)로부터 그룹 B 키(350)를 추출하여, 제2 그룹(346)에 대해 그들이 소유하고 있는 현재의 그룹 키를 검증할 수 있다.
도 4는 제1의 분할된 노드 그룹에 결합하는 제2의 분할된 노드 그룹의 관리 노드(managing node)의 일 실시예를 나타낸 블록도이다. 일 실시예에서, 노드 A(408)는 제1 그룹(206)(도시하지 않음)의 관리 노드이고, 노드 F(428)은 제2 그룹(246)(도시하지 않음)의 관리 노드이다. 전술한 바와 같이, 제1 그룹(206)의 관리자와 제2 그룹(246)의 노드들 사이의 통신이 어떤 이유로 지속될 수 없거나 제한되는 경우에, 제2 그룹(246) 내의 노드들이 제1 그룹(206)으로부터 분할된다. 일 실시예에서, 노드 A(408)와 라우터 B(444) 사이의 통신을 지속할 수 없게 되면, 그로 인해 노드 A(408)는 노드 E(426), 노드 F(428) 및 노드 G(430)에 상태(434)를 멀티캐스팅할 수 없다. 나중에, 노드 A(408)와 제2 그룹(246) 사이의 통신은 라우터 B(444)를 통해 재설정(reestablish)될 수 있다.
전술한 바와 같이, 제2 그룹(246)이 제1 그룹(206)으로부터 분할되는 경우, 각 그룹(206, 246)은, 그룹 A 키(114)와 같은, 동일한 그룹 키를 여전히 사용할 수 있다. 나중에, 각 그룹(206, 246)은 그룹 A 키(114)를 랜덥하게 재입력할 수 있다. 예를 들면, 제1 그룹(206)은 그룹 A 키(114)를 그룹 C 키(415)로 랜덤하게 재입력할 수 있고, 제2 그룹(246)은 그룹 A 키(114)를 그룹 B 키(450)로 랜덤하게 재입력할 수 있다.
노드 A(408)와 제2 그룹(246)의 노드들 사이의 통신이 재설정된 경우, 노드 A(408)는 KEK(404), 그룹 C 키(415) 및 타이밍 파라미터 A(437)를 포함하는 상태(434)를 멀티캐스팅할 수 있다. 그룹 C 키(415) 및 타이밍 파라미터 A(437)는 KEK(404)에 의해 보호받을 수 있다. 일 실시예에서, 노드 E∼G(426∼430)는 노드 A(408)로부터 상태(434)를 각각 수신한다. 노드 E∼G(426∼430)는 상태(434)로부터 그룹 C 키(415) 및 타이밍 파라미터 A(437)를 추출할 수 있게 해주는 KEK(404)를 각각 포함할 수 있다. 그러나, 노드 E∼G(426∼430)는 그룹 C 키(415)와는 상이할 수 있는 그룹 B 키(450)를 포함한다. 노드 A(408)로부터 전송된 상태(434)는 제2 그룹(246)의 관리자[즉, 노드 F(428)]로부터 전송된 것이 아니기 때문에, 노드 E(426) 및 노드 G(430)는 노드 A(408)로부터 전송된 상태(434)를 무시할 수 있다.
일 실시예에서, 제2 그룹(246)의 관리자, 노드 F(428)는 노드 A(408)로부터의 상태(434)를 받아들일 수 있다. 노드 F(428)는 KEK(404)를 사용하여 상태(434)로부터 파라미터를 추출할 수 있다. 그룹 C 키(415)는 그룹 C 키 파라미터(440)를 포함할 수 있고, 그룹 B 키(350)는 그룹 B 키 파라미터(441)를 포함할 수 있다. 전술한 바와 같이, 그룹 키 파라미터는 그룹 키가 이용된 기간을 나타낼 수 있다. 일 실시예에서, 노드 F(428)는 그룹 C 키 파라미터(440)와 그룹 B 키 파라미터(441)를 비교한다. 그룹 C 키(415)가 그룹 B 키(350)보다 더 오랜 시간 사용되었음을 그룹 C 키 파라미터(440)가 나타내면, 노드 F(428)는 그룹 C 키(415)를 저장할 수 있다. 노드 F(428)는 그 후 그것이 현재 통용되는 것이고 재전송된 것이 아니라는 것을 확인(validate)하기 위하여 상태(434)에 의해 식별된 그룹에 결합할 수 있다. 일 실시예에서, 노드 F(428)는 이제 제1 그룹(206)과 제2 그룹(246) 양쪽에 속한다. 다른 실시예에서, 노드 F(428)는 그룹 B 키(350)를 그룹 C 키(415)로 재입력한다. 그룹 C 키(415)를 재입력함으로써, 노드 F(428)는 노드 A(408)가 관리 노드로서 계속되어야 하는 것으로 결정한다. 이로 인해, 노드 F(428)는 상태(434)를 그 후에 멀티캐스팅할 책임이 있다.
일 실시예에서, 그룹 C 키 파라미터(440)와 그룹 B 키 파라미터(441)는 동일하고, 이는 그룹 C 키(415)와 그룹 B 키(450)가 동일한 시간량 동안에 사용되었음을 나타낸다. 노드 A(408)와 노드 F(428)는 식별자 A(438)와 식별자 F(452)를 평가하여 어느 노드를 계속하여 관리 노드로 할 것인지를 결정할 수 있다. 일 실시예에서, 최저 식별자를 가지는 노드가 계속하여 관리자가 된다. 예를 들면, 식별자 A(438)는 식별자 F(452)보다 낮은 값을 포함할 수 있다. 이로 인해, 노드 F(452)는 그룹 B 키(450)를 그룹 C 키(415)로 재입력할 수 있다. 다른 실시예에서, 노드 A(408) 및 노드 F(438)은 어느 것을 계속하여 관리자로 할 것인지를 결정하는 데 다른 방법을 사용할 수 있다. 관리자를 계속하지 않을 노드는 자신의 그룹에 다른 그룹의 그룹 키(114)를 재입력한다.
도 5는 제1 그룹(206)에 재결합하는 제2 그룹(546)의 일 실시예를 나타낸 블록도이다. 일 실시예에서, 제2 그룹(546)과 연관된 그룹 키는 제1 그룹(206)과 연관된 그룹 키로 재입력된다. 예를 들면, 노드 F(528)는 제2 그룹(546)의 관리자 일 수 있다. 전술한 바와 같이, 노드 F(528)는 제1 그룹(206)에 대응하는 그룹 키[즉, 그룹 C 키(515)]에 관한 상태(434)를 수신할 수 있고, 그 상태(434)가 현재 유효한지 그리고 재전송된 것이 아닌지를 확인할 수 있다. 노드 F(528)는 KEK(504) 및 재입력 커맨드(560)를 함하는 패킷(532)을 멀티캐스팅할 수 있다. 일 실시예에서, KEK(504)를 포함하지 않는 노드는 패킷(532)을 수신할 수 없다. 또한, 재입력 커맨드(560)는 제2 그룹(546)의 공유 그룹 키[즉, 그룹 B 키(550)]를 사용하여 암호화될 수 있다.
노드 E(526) 및 노드 G(530)는 패킷(532)을 수신하고 그룹 B 키(550)를 사용하여 재입력 커맨드(560)를 해독할 수 있다. 재입력 커맨드(560)는 공유 그룹 키를 다른 공유 그룹 키로 재입력하기 위한 커맨드를 포함할 수 있다. 노드 F(528)는 또한 재입력 커맨드가 제2 그룹(546)의 노드에 멀티캐스팅된 후, 그룹 B 키(550)를 그룹 C 키(515)로 재입력할 수 있다. 그룹 C 키(515)의 재입력은 노드 E∼G(526∼530)에게 제1 그룹(206) 내의 노드로부터 부가적인 데이터 및 정보를 수신하는 것을 허용한다. 다시 말해, 노드 E∼G(526∼530)는 제2 그룹(546)으로 분할되기 전에 그들이 멤버로 있었던 그룹에 재결합한다. 제2 그룹(546)의 관리자가 재입력 커맨드(560)를 멀티캐스팅할 수 있도록 함으로써, 제1 그룹(206)의 관리자에 대한 요청을 최소화할 수 있다. 예를 들면, 제2 그룹(546) 내의 각 노드가 노드 A(408)에 재입력 요청을 전송한다면, 무수한 그룹 C 키(515) 요청으로 인해 대량의 부하를 경험할 수 있다. 본 시스템 및 방법은, 제2 그룹(546)의 관리자[또는 관리 노드의 소규모 세트)가 재입력 정보를 제2 그룹(546)에 속하는 노드에 멀티캐스팅할 수 있게 하므로, 노드 A(408)에 대한 부하의 증대를 없앨 수 있다.
도 6은 노드의 제2 그룹(246)에 재입력 커맨드를 멀티캐스팅하는 방법(600) 의 일 실시예를 나타낸 흐름도이다. 일 실시예에서, 방법(600)은 제2 그룹(246)의 관리자로 지정된 노드에 의해 실행된다. 제1 상태를 수신할 수 있다(602). 일 실시예에서, 제1 상태는, 그룹 A(106)와 같은 노드의 제1 그룹(206)과 연관된 제1 그룹 키를 포함한다. 상태를 주기적으로 수신할 수 있다(602). 가장 최근의 상태를 수신(602)한 때부터 미리 정해진 시간이 만료되었는지를 결정한다(604). 미리 정해진 시간이 만료되지 않았으면, 노드는 제1 상태를 주기적으로 수신한다(602). 미리 정해진 시간이 만료되었으면, 제1 상태를 노드의 제2 그룹(246)에 멀티캐스팅한다(606). 일 실시예에서, 제1 그룹(206)의 관리 노드로부터 제1 상태가 주기적으로 수신(602)되지 않는 경우, 노드의 제2 그룹(246)은 노드의 제1 그룹(206)으로부터 분할된다.
부가적인 상태를 수신하였는지를 결정한다(608). 예를 들면, 제2 그룹(246)에 속하는 노드는 제1 상태를 멀티캐스팅(606)할 수 있고, 또한 제2 그룹(246)에 속하는 하나 이상의 개별 노드로부터 하나 이상의 상태를 수신할 수 있다. 방법(600)은 수신된 하나 이상의 상태가 제1 상태와 동일한지를 결정하고(608), 수신된 하나 이상의 상태가 제1 상태보다 많은 시간량 동안 존재하였는지를 결정한다(610). 다시 말해, 제1 상태가 수신된 하나 이상의 상태보다 더 오래되었는지를 결정한다(610). 수신된 하나 이상의 상태가 제1 상태보다 오래되었으면, 방법(600)은 종료한다. 그러나, 노드가 하나 이상의 상태를 수신하지 않았거나 수신된 하나 이상의 상태가 제1 상태보다 오래되지 않았으면, 제1 상태를 멀티캐스팅하는 노드를 노드의 제2 그룹(246)의 관리 노드로 지정할 수 있다.
제1 그룹 키를 제2 그룹 키로 재입력할 수 있다(612). 일 실시예에서, 제1 그룹 키를 제2 그룹 키로 랜덤하게 재입력한다. 제2 그룹 키를 포함하는 제2 상태를 노드의 제2 그룹(246)에 주기적으로 멀티캐스팅할 수 있다(614). 일 실시예에서, 제2 그룹(246) 내의 노드는 제1 그룹 키를 제2 그룹 키로 재입력한다(612).
제2 상태와 상이한 제3 상태를 수신하였는지를 결정할 수 있다(616). 제3 상태는 노드의 제1 그룹(206)과 연관된 제3 그룹 키를 포함할 수 있다. 제3 상태가 수신되지 않았으면, 제2 상태를 노드의 제2 그룹에 계속하여 주기적으로 멀티캐스팅한다. 제3 상태가 수신되었으면, 제3 상태가 제2 상태보다 많은 시간량 동안 존재하였는지를 결정한다(618). 다시 말해, 제3 상태가 제2 상태보다 오래되었는지를 결정한다(618). 제2 상태가 제3 상태보다 오래된 것으로 결정되면, 제2 상태를 노드의 제2 그룹에 계속하여 주기적으로 멀티캐스팅한다(614).
그러나, 제3 상태가 제2 상태보다 오래된 것으로 결정되면, 재입력 커맨드를 포함하는 패킷을 노드의 제2 그룹(246)에 멀티캐스팅할 수 있다. 재입력 커맨드는 노드의 제2 그룹(246)에게 제2 그룹 키를 제3 그룹 키로 재입력할 것을 지시할 수 있다. 일 실시예에서, 재입력 커맨드는 제2 그룹 키를 사용하여 암호화될 수 있다. 제2 그룹 키를 포함하는 노드는 재입력 커맨드를 해독할 수 있다. 일 실시예에서, 이전에 노드의 제2 그룹(246)에 속한 노드는 이제 제3 그룹키를 포함할 수 있으며, 노드의 제1 그룹(206)과 연관될 수 있다. 일 실시예에서, 각 상태에 포함된 각 그룹 키는 KEK(104)에 의해 보호될 수 있다. 일 실시예에서, KEK(104)를 포함하는 노드는 각 그룹 키 및 각 상태를 수신할 수 있다.
도 7은 실시예에 따라 구성되는 노드 또는 서버(702)에 사용될 수 있는 하드웨어 구성요소의 블록도이다. 노드 또는 서버(702)는 내장형 디바이스로 구현될 수 있다. 노드 또는 서버(702)는 일반적으로 컴퓨팅 디바이스이다. 이 컴퓨팅 디바이스에는 랩톱 컴퓨터, 데스크톱 퍼스널 컴퓨터(PC), 개인 휴대 정보 단말기(personal digital assistant, PDA), 태블릿 PC(tablet PC). 이동 전화(cellular telephone) 등이 포함될 수 있지만, 이에 한정되지 않는다. 프로세서(704)는 프로세서(704)는, 버스(710)를 통하여 프로세서(704)에 결합되는 다른 구성요소를 포함하는 노드/서버(702)의 동작을 제어하기 위하여 제공될 수 있다. 프로세서(704)는 마이크로프로세서, 마이크로컨트롤러, 디지털 신호 처리기 또는 해당 기술분야에 공지된 기타 디바이스로서 구현될 수 있다. 프로세서(704)는 논리 연산 및 산술 연산을 메모리에 저장된 프로그램 코드에 기초하여 수행한다. 일정한 실시예에서, 메모리(706)는 프로세서(704)에 포함된 온보드(on-board) 메모리일 수 있다. 예를 들면, 마이크로컨트롤러는 흔히 일정한 양의 온보드 메모리를 포함한다.
노드/서버(702)는 또한 네트워크 인터페이스(708)를 포함할 수 있다. 네트워크 인터페이스(708)는 노드/서버(702)와 네트워크(122)에 연결된 다른 디바이스 사이의 통신을 용이하게 하며, 네트워크(122)는 페이저 네트워크, 셀룰러 네트워크, 전역 통신망(global communication network), 인터넷, 컴퓨터 네트워크, 전화망 등일 수 있다. 네트워크 인터페이스(708)는 적용 가능한 네트워크(122)의 표준 프로토콜에 따라 동작한다.
노드/서버(702)는 또한 메모리(706)를 포함할 수 있다. 메모리(706)는 일시 적인 데이터를 저장하기 위한 RAM(Random Aaccess Memory, 임의 접근 메모리)를 포함한다. 대안으로 또는 추가로, 메모리(706)는 고정 코드 및 구성 데이터와 같은 보다 영구적인 데이터를 저장하기 위한 ROM(Read-Only Memory, 판독 전용 메모리)을 포함할 수 있다. 메모리(706)는 하드 디스크 드라이브와 같은, 자기 저장 디바이스로서 구현될 수도 있다. 메모리(706)는 전자적인 정보를 저장할 수 있는 모든 타입의 전자 디바이스일 수 있다.
노드/서버(702)는 또한 하나 이상의 통신 포트(712)를 포함할 수 있으며, 이 통신 포트(712)는 다른 디바이스와의 통신을 용이하게 한다. 노드/서버(702)는 또한 키보드, 마우스, 조이스틱, 터치스크린, 모니터, 스피커, 프린터 등의 입출력 디바이스(714)도 포함할 수 있다.
물론, 도 7은 단지 노드/서버(702)의 하나의 가능한 구성을 나타낸 것일 뿐이며, 다양한 다른 아키텍처 및 구성요소를 사용할 수 있다.
정보 및 신호는 임의의 여러 다른 기술 및 방법을 사용하여 나타낼 수 있다. 예를 들면, 전술한 설명에서 참조될 수 있는 데이터, 명령어, 커맨드, 정보, 신호, 비트, 심볼, 및 칩은 전압, 전류, 전자기파, 자계 또는 자분(magnetic particle), 광계(optical field) 또는 광 입자(optical particle), 또는 이들의 임의의 조합으로 표현될 수 있다.
본 명세서에 개시된 실시예들과 관련하여 기술한 각종 예시적인 논리블록, 모듈, 회로, 및 알고리즘 단계들은 전자적인 하드웨어, 컴퓨터 소프트웨어, 또는 이 둘을 조합하여 구현될 수 있다. 이 하드웨어와 소프트웨어의 교환 가능성에 대 한 설명을 명확하게 하기 위하여, 각종 예시적인 논리블록, 모듈, 회로, 및 알고리즘 단계들은 일반적으로 기능성에 관하여 설명하였다. 이러한 기능성을 하드웨어 또는 소프트웨어로 구현할 것인지는 특정한 애플리케이션 및 시스템 전체에 부가된 설계 제약에 따라 달라진다. 해당 분야의 당업자는 전술한 기능성을 특정한 애플리케이션 각각에 대하여 여러 방식으로 구현할 수 있지만, 그러한 구현 결정이 본 발명의 범위를 벗어나는 것으로 이해되어서는 안 된다.
본 명세서에 개시된 실시예들과 관련하여 기술한 각종 예시적인 논리 블록, 모듈, 및 회로는 범용 프로세서, DSP, ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Away signal), 또는 다른 프로그램 가능한 논리 디바이스, 개별 게이트 또는 트랜지스터 로직, 개별 하드웨어 부품, 또는 본 명세서에 기술된 기능을 수행하도록 설계된 이들의 임의의 조합에 의해 구현되거나 수행될 수 있다. 범용 프로세서는 마이크로프로세서일 수 있지만, 대안으로 프로세서는 모든 종래의 프로세서, 컨트롤러, 마이크로컨트롤러 또는 상태 머신(state machine)일 수 있다. 프로세서는 또한, 예를 들면 DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서의 조합, DSP 코어에 관련하여 하나 이상의 마이크로프로세서의 조합, 또는 기타 그러한 구성의 조합과 같은, 컴퓨팅 디바이스의 조합으로서 구현될 수 있다.
본 명세서에 개시된 실시예들과 관련하여 기술한 방법 또는 알고리즘의 단계들은, 집적 하드웨어로 구현되거나, 프로세서에 의해 실행되는 소프트웨어 모듈로 구현되거나 이 둘의 조합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 탈착 가능한 디스크, CD ROM, 또는 해당 기술분야에 공지된 기타 형태의 저장 매체에 상주(reside)할 수 있다. 프로세서가 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기록할 수 있도록, 예시적인 저장 매체는 프로세서에 결합되어 있다. 또는, 저장 매체는 프로세서에 통합될 수 있다. 프로세서와 저장 매체는 ASIC 내에 상주할 수 있다. ASIC은 사용자 단말기에 상주할 수 있다. 또는, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 부품으로서 상주할 수 있다.
본 명세서에 개시된 방법은 전술한 방법을 달성하기 위한 하나 이상의 단계 또는 작용(action)을 포함한다. 이 방법의 단계 및/또는 작용은 본 발명의 범위를 벗어나지 않으면서 서로 교환될 수 있다. 다시 말해, 실시예의 적절한 동작에 단계 또는 작용의 특정한 순서가 요구되지 않는 한, 특정한 단계 및/또는 작용의 순서 및/또는 사용은 본 발명의 범위를 벗어나지 않으면서 변형될 수 있다.
본 발명의 구체적인 실시예 및 애플리케이션을 도시하고 설명하였지만, 본 발명은 본 명세서에 개시된 정확한 구성 및 구성요소로 한정되지 않는다는 것을 알아야한다. 본 명세서에 개시된 본 발명의 방법 및 시스템의 배치(arrangement), 동작 및 세부사항에 있어, 해당 기술분야의 당업자에게 명백할 것인 각종 변형, 변경, 및 변화는 본 발명의 사상 및 범위를 벗어나지 않으면서 이루어질 수 있다.

Claims (20)

  1. 제2 노드 그룹을 제1 노드 그룹에 재결합하는 재결합 방법으로서,
    제1 노드 그룹과 연관된 제1 그룹 키의 제1 상태를 수신하는 단계;
    상기 제1 그룹 키의 제1 상태를 제2 노드 그룹에 멀티캐스팅하는 단계;
    상기 제1 그룹 키를 상기 제2 노드 그룹과 연관된 제2 그룹 키로 재입력(rekey)하는 단계;
    상기 제2 그룹 키의 제2 상태를 상기 제2 노드 그룹에 멀티캐스팅하는 단계;
    상기 제1 노드 그룹과 연관된 제3 그룹 키의 제3 상태를 수신하는 단계;
    상기 제3 상태가 상기 제2 상태와 다른 경우, 재입력 커맨드를 상기 제2 노드 그룹에 멀티캐스팅하는 단계; 및
    상기 제2 그룹 키를 제3 그룹 키로 재입력하는 단계
    를 포함하는, 재결합 방법.
  2. 제1항에 있어서,
    상기 제1 노드 그룹은 노드의 보안 멀티캐스트 그룹인, 재결합 방법.
  3. 제1항에 있어서,
    상기 제1 상태는 상기 제1 노드 그룹의 관리 노드(managing node)로부터 전송되는, 재결합 방법.
  4. 제1항에 있어서,
    상기 제2 상태는 제2 노드 그룹의 관리 노드로부터 전송되는, 재결합 방법.
  5. 제1항에 있어서,
    상기 제1 노드 그룹의 하나 이상의 노드를 상기 제2 노드 그룹으로 분할하는 단계를 더 포함하는 재결합 방법.
  6. 제5항에 있어서,
    상기 제1 노드 그룹의 관리 노드 간의 통신은 상기 제2 노드 그룹을 포함하는 노드들과 분리(disconnect)되는, 재결합 방법.
  7. 제1항에 있어서,
    각 상태는 키 교환 키(key exchange key, KEK)를 포함하는, 재결합 방법.
  8. 제7항에 있어서,
    상기 키 교환 키(KEK)를 포함하는 노드는 각 상태를 수신하는, 재결합 방법.
  9. 제1항에 있어서,
    각 그룹 키는 그룹 키 파라미터를 포함하며,
    상기 그룹 키 파라미터는 노드 그룹에 의해 각 그룹 키가 이용된 시간량을 나타내는, 재결합 방법.
  10. 제1항에 있어서,
    최고 그룹 키 파라미터를 가지는 그룹키를 포함하는 관리 노드를 선택하는 단계를 더 포함하는 재결합 방법.
  11. 제1항에 있어서,
    상기 제1 노드 그룹 및 상기 제2 노드 그룹을 포함한 각 노드는, 노드 식별자를 포함할 수 있으며,
    상기 노드 식별자는 노드가 제1 노드 그룹에 결합된 때의 순위를 나타내는, 재결합 방법.
  12. 제11항에 있어서,
    최저 노드 식별자(lowest node identifier)를 포함하는 관리 노드를 선택하는 단계를 더 포함하는 재결합 방법.
  13. 제1항에 있어서,
    상기 재입력 커맨드는 그룹 키로 암호화되는, 재결합 방법.
  14. 제1항에 있어서,
    상기 제2 노드 그룹의 관리 노드는 상기 제1 그룹 키와 상기 제2 그룹 키를 포함하는, 재결합 방법.
  15. 제2 그룹 노드를 제1 그룹 노드에 재결합하도록 구성된 컴퓨터 시스템으로서,
    프로세서;
    상기 프로세서와 전자 통신하는 메모리; 및
    상기 메모리에 저장된 명령어
    를 포함하고,
    상기 명령어는,
    제1 노드 그룹과 연관된 제1 그룹 키의 제1 상태를 수신하고;
    상기 제1 그룹 키의 제1 상태를 제2 노드 그룹에 멀티캐스팅하고;
    상기 제1 그룹 키를 상기 제2 노드 그룹과 연관된 제2 그룹 키로 재입력하고;
    상기 제2 그룹 키의 제2 상태를 상기 제2 노드 그룹에 멀티캐스팅하고;
    상기 제1 노드 그룹과 연관된 제3 그룹 키의 제3 상태를 수신하고;
    상기 제3 상태가 상기 제2 상태와 다른 경우, 재입력 커맨드를 상기 제2 노드 그룹에 멀티캐스팅하고;
    상기 제2 그룹 키를 제3 그룹 키로 재입력하도록,
    실행 가능한, 컴퓨터 시스템.
  16. 제15항에 있어서,
    각 상태는 키 교환 키(KEK)를 포함하는, 컴퓨터 시스템.
  17. 제16항에 있어서,
    상기 키 교환 키(KEK)를 포함하는 노드는 각 상태를 수신하는, 컴퓨터 시스템.
  18. 제2 그룹 노드를 제1 그룹 노드에 재결합하도록 실행 가능한 명령어를 포함하는 컴퓨터로 판독가능한 매체로서,
    상기 명령어는,
    제1 노드 그룹과 연관된 제1 그룹 키의 제1 상태를 수신하고;
    상기 제1 그룹 키의 제1 상태를 제2 노드 그룹에 멀티캐스팅하고;
    상기 제1 그룹 키를 상기 제2 노드 그룹과 연관된 제2 그룹 키로 재입력하고;
    상기 제2 그룹 키의 제2 상태를 상기 제2 노드 그룹에 멀티캐스팅하고;
    상기기 제1 노드 그룹과 연관된 제3 그룹 키의 제3 상태를 수신하고;
    상기 제3 상태가 상기 제2 상태와 다른 경우, 재입력 커맨드를 상기 제2 노드 그룹에 멀티캐스팅하고;
    상기 제2 그룹 키를 제3 그룹 키로 재입력하도록,
    실행 가능한, 컴퓨터로 판독가능한 매체.
  19. 제18항에 있어서,
    각 상태는 키 교환 키(KEK)를 포함하는, 컴퓨터로 판독가능한 매체.
  20. 제19항에 있어서,
    상기 키 교환 키(KEK)를 포함하는 노드는 각 상태를 수신하는, 컴퓨터로 판독가능한 매체.
KR1020097016719A 2007-01-18 2008-01-17 공유 그룹 키를 사용하여 제2 노드 그룹을 제1 노드 그룹에 재결합하는 시스템 및 방법 KR101056104B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/624,521 US7840810B2 (en) 2007-01-18 2007-01-18 Systems and methods for rejoining a second group of nodes with a first group of nodes using a shared group key
US11/624,521 2007-01-18
PCT/JP2008/051017 WO2008088084A1 (en) 2007-01-18 2008-01-17 Systems and methods for rejoining a second group of nodes with a first group of nodes using a shared group key

Publications (2)

Publication Number Publication Date
KR20090110334A true KR20090110334A (ko) 2009-10-21
KR101056104B1 KR101056104B1 (ko) 2011-08-10

Family

ID=39636074

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097016719A KR101056104B1 (ko) 2007-01-18 2008-01-17 공유 그룹 키를 사용하여 제2 노드 그룹을 제1 노드 그룹에 재결합하는 시스템 및 방법

Country Status (8)

Country Link
US (1) US7840810B2 (ko)
EP (1) EP2104989A4 (ko)
JP (1) JP5033188B2 (ko)
KR (1) KR101056104B1 (ko)
CN (1) CN101641903B (ko)
RU (1) RU2420894C2 (ko)
TW (1) TWI389528B (ko)
WO (1) WO2008088084A1 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005089241A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing object triggers
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
CA2586763C (en) 2004-11-08 2013-12-17 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US8863143B2 (en) * 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
EP1872249B1 (en) 2005-04-07 2016-12-07 Adaptive Computing Enterprises, Inc. On-demand access to compute resources
US8160255B2 (en) * 2006-04-24 2012-04-17 Cisco Technology, Inc. System and method for encrypted group network communication with point-to-point privacy
US7962743B2 (en) * 2006-05-22 2011-06-14 Cisco Technology, Inc. System and method for protected spoke to spoke communication using an unprotected computer network
US8625610B2 (en) * 2007-10-12 2014-01-07 Cisco Technology, Inc. System and method for improving spoke to spoke communication in a computer network
JP2009100238A (ja) * 2007-10-17 2009-05-07 Nec Corp 通信装置、通信システム及びそれらに用いる鍵再交換方法並びにそのプログラム
US7983423B1 (en) * 2007-10-29 2011-07-19 Netapp, Inc. Re-keying based on pre-generated keys
US8346961B2 (en) * 2007-12-12 2013-01-01 Cisco Technology, Inc. System and method for using routing protocol extensions for improving spoke to spoke communication in a computer network
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US20130054964A1 (en) * 2011-08-24 2013-02-28 Motorola Solutions, Inc. Methods and apparatus for source authentication of messages that are secured with a group key
GB2504112A (en) * 2012-07-18 2014-01-22 Ibm Generating database sequences in a replicated database environment
US9825759B2 (en) 2013-07-08 2017-11-21 Alcatel Lucent Secure service management in a communication network
JP6100133B2 (ja) * 2013-09-20 2017-03-22 株式会社東芝 情報処理装置、管理装置、情報処理システム、情報処理方法、及びプログラム
JP6108235B2 (ja) * 2014-01-10 2017-04-05 パナソニックIpマネジメント株式会社 鍵情報制御装置、鍵情報更新装置、プログラム及び記録媒体、鍵情報更新方法、鍵情報更新システム
JP6139803B2 (ja) * 2014-09-04 2017-05-31 株式会社東芝 通信制御装置、通信装置およびプログラム
US10090999B2 (en) * 2015-01-27 2018-10-02 Qualcomm Incorporated Group key announcement and distribution for a data link group
CN108964904B (zh) * 2018-07-16 2020-12-22 哈尔滨工业大学(深圳) 群密钥安全管理方法、装置、电子设备及存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748736A (en) 1996-06-14 1998-05-05 Mittra; Suvo System and method for secure group communications via multicast or broadcast
US6195751B1 (en) 1998-01-20 2001-02-27 Sun Microsystems, Inc. Efficient, secure multicasting with minimal knowledge
US6742045B1 (en) 1999-07-02 2004-05-25 Cisco Technology, Inc. Handling packet fragments in a distributed network service environment
US6240188B1 (en) * 1999-07-06 2001-05-29 Matsushita Electric Industrial Co., Ltd. Distributed group key management scheme for secure many-to-many communication
US6263435B1 (en) * 1999-07-06 2001-07-17 Matsushita Electric Industrial Co., Ltd. Dual encryption protocol for scalable secure group communication
US6529515B1 (en) 1999-09-30 2003-03-04 Lucent Technologies, Inc. Method and apparatus for efficient network management using an active network mechanism
US6870844B2 (en) 2001-03-06 2005-03-22 Pluris, Inc. Apparatus and methods for efficient multicasting of data packets
JP2003023418A (ja) * 2001-07-06 2003-01-24 Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd 移動通信ダイナミックセキュアグルーピング方式
US7234063B1 (en) * 2002-08-27 2007-06-19 Cisco Technology, Inc. Method and apparatus for generating pairwise cryptographic transforms based on group keys
JP2004166154A (ja) * 2002-11-15 2004-06-10 Nec Corp マルチキャスト配信のための鍵管理方式
DE60322929D1 (de) * 2003-12-23 2008-09-25 Motorola Inc Schlüsselaktualisierung in sicherer Multicastkommunikation
EP1721409B1 (en) * 2004-03-05 2018-05-09 Electronics and Telecommunications Research Institute Method for managing traffic encryption key in wireless portable internet system and protocol configuration method thereof, and operation method of traffic encryption key state machine in subscriber station
JP4392795B2 (ja) * 2004-10-07 2010-01-06 Kddi株式会社 放送通信融合システム
EP1813049A1 (en) * 2004-11-16 2007-08-01 Telefonaktiebolaget LM Ericsson (publ) Improved key distribution in systems for selective access to information
JP4635615B2 (ja) * 2005-01-17 2011-02-23 富士ゼロックス株式会社 情報処理装置、システム、データ同期方法及びプログラム
JP4606885B2 (ja) * 2005-01-18 2011-01-05 Kddi株式会社 鍵配信システムおよび鍵管理サーバならびに鍵配信方法
JP2006245663A (ja) * 2005-02-28 2006-09-14 Matsushita Electric Ind Co Ltd 暗号化マルチキャスト通信鍵管理システム、暗号化マルチキャスト通信鍵管理方法、送信端末、受信端末、およびプログラム
US7827262B2 (en) * 2005-07-14 2010-11-02 Cisco Technology, Inc. Approach for managing state information by a group of servers that services a group of clients

Also Published As

Publication number Publication date
TW200840297A (en) 2008-10-01
CN101641903B (zh) 2012-06-06
US7840810B2 (en) 2010-11-23
EP2104989A4 (en) 2014-03-26
WO2008088084A1 (en) 2008-07-24
CN101641903A (zh) 2010-02-03
JP5033188B2 (ja) 2012-09-26
TWI389528B (zh) 2013-03-11
WO2008088084A8 (en) 2009-09-03
JP2010517330A (ja) 2010-05-20
US20080175387A1 (en) 2008-07-24
RU2420894C2 (ru) 2011-06-10
EP2104989A1 (en) 2009-09-30
RU2009131314A (ru) 2011-02-27
KR101056104B1 (ko) 2011-08-10

Similar Documents

Publication Publication Date Title
KR101056104B1 (ko) 공유 그룹 키를 사용하여 제2 노드 그룹을 제1 노드 그룹에 재결합하는 시스템 및 방법
EP3269116B1 (en) Internet of things group formation using a key-based join protocol
CN114189549B (zh) 用于提供自选服务的系统和方法
Luo et al. Dictate: Distributed certification authority with probabilistic freshness for ad hoc networks
JP5033189B2 (ja) 鍵の更新を最大の鍵再生成レートで配信するためのプログラムおよび認証サーバおよびコンピュータ読み込み可能な記録媒体
US8588420B2 (en) Systems and methods for determining a time delay for sending a key update request
Daghighi et al. Host mobility key management in dynamic secure group communication
Adusumilli et al. DGKD: Distributed group key distribution with authentication capability
Abdmeziem et al. Securing IoT-based groups: Efficient, scalable and fault-tolerant key management protocol
Pallickara et al. A security framework for distributed brokering systems
Garg et al. Secure key agreement for multi-device home IoT environment
Correia et al. Using Range-Revocable Pseudonyms to Provide Backward Unlinkability in the Edge
Lu et al. Distributed ledger technology based architecture for decentralized device-to-device communication network
Kang et al. Secure collaborative key management for dynamic groups in mobile networks
Lakhlef et al. Efficient and lightweight group rekeying protocol for communicating things
US11895234B2 (en) Delayed quantum key-distribution
Aurisch et al. A daemon for multicast Internet key exchange
Rodeh Secure Group Communication
Cardona et al. Secure key management in low power wireless sensor networks
Ingle et al. Tgkam: Adaptive middleware architecture for secure group communication

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160701

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170720

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180719

Year of fee payment: 8