[go: up one dir, main page]

KR20060027311A - 통신망에서의 보안성 - Google Patents

통신망에서의 보안성 Download PDF

Info

Publication number
KR20060027311A
KR20060027311A KR1020057020435A KR20057020435A KR20060027311A KR 20060027311 A KR20060027311 A KR 20060027311A KR 1020057020435 A KR1020057020435 A KR 1020057020435A KR 20057020435 A KR20057020435 A KR 20057020435A KR 20060027311 A KR20060027311 A KR 20060027311A
Authority
KR
South Korea
Prior art keywords
communication
key
communication device
devices
security
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.)
Ceased
Application number
KR1020057020435A
Other languages
English (en)
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
Priority claimed from EP03388027A external-priority patent/EP1473899A1/en
Application filed by 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) filed Critical 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘)
Publication of KR20060027311A publication Critical patent/KR20060027311A/ko
Ceased legal-status Critical Current

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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • 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/0825Key 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 asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent
    • H04W12/76Group identity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/16Interfaces between hierarchically similar devices
    • H04W92/18Interfaces between hierarchically similar devices between terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

2개의 통신 장치 사이에 보안된 피어 투 피어(peer-to-peer) 통신을 설정하는 방법이 개시되어 있으며, 각각의 통신 장치는 다른 통신 장치들과의 이전에 설정된 보안성 연관들(security associations)의 각각의 세트를 저장한다. 상기 방법은, 두 통신 장치가 설정된 보안성 연관들의 각각의 세트들에 공통 보안성 연관을 가지는지를 판정하는 단계와, 장치들이 공통 보안성 연관을 가진다고 판정했다면, 판정된 공통 보안성 연관에 기반하여 두 통신 장치 사이의 통신 링크를 보호하고, 그렇지 않다면, 두 통신 장치 사이에 새로운 보안성 연관을 설정하고, 새로운 보안성 연관에 기반하여 통신 링크를 보호하는 단계와, 대응하는 키 데이터를 교환함으로써, 대응하는 다른 통신 장치로, 두 통신 장치의 이전에 설정된 보안성 연관들의 세트를 확장하는 단계를 포함한다.
통신 장치, 피어 투 피어, 보안성 연관, 개인 키, 공개 키, 통신 링크

Description

통신망에서의 보안성{SECURITY IN A COMMUNICATIONS NETWORK}
본 발명은 통신 장치들 사이의 보안된 피어 투 피어(peer-to-peer) 통신의 설정에 관한 것이다.
단거리 무선 기술의 빠른 성장은, 사용자와 근접하게 있는 개인 통신 장치들 사이의 국지적 연결성(local connectivity) 제공 가능성을 이루었다.
오늘날, 소위 애드혹(ad hoc) 망들이 점점더 빈번하게 사용되고 있다. 통상적으로, 통신 장치들 사이의 애드혹 망은 특수 목적을 위해 임시로 설정된다. 고정된 기반시설이 없으며, 망의 노드들을 구성하는 통신 장치들은 종종 모바일(mobile)이고, 무선 링크를 사용한다. 애드혹 망은 군사 작전(military operation), 구조 및 복구 작업, 및 외딴 건설 현장과 같은 상황에서 동적 원거리 연결(wide area connectivity)을 구성할 수 있다. 애드혹 망은 임시 회의 장소, 가정용 망, 및 로봇 망과 같은 상황에서 근거리 연결(local area connectivity)을 구성할 수도 있다. 애드혹 망은 상호연결된 부속품, 애드혹 회의 테이블(ad hoc conference table) 및 게임과 같은 상황에서 개인 영역 망을 구성할 수도 있다. 노드들은 예를 들어, 이동 전화, 랩톱, 텔레비전 세트, 세탁기 등으로 이루어질 수 있다.
블루투스(Bluetooth)는 애드혹 망의 설정을 가능하게 하는 공지된 기술이다. 애드혹 망이 기반으로 할 수 있는 다른 기술의 예들은, 무선 LAN 기술, 예를 들어, IEEE 802.11b을 포함한다.
많은 상황들, 예를 들어, 노드들 사이의 통신이 비밀을 포함하는 군사 작전 또는 비즈니스 회의에서, 통신 서비스들이 보안적인 것은 매우 중요하다. 일반적으로, 보안적인 통신 서비스는 다른 통신 장치들 사이에 보안성 연관(security association)을 생성할 수 있는 가능성을 제공해야 한다. 일반적으로, 통신 장치들 사이의 보안성 연관은, 장치들 사이의 공유 비밀 또는 공유 신뢰(trusted) 키를 포함하므로, 두 장치들 사이의 신뢰 관계를 얻기 위한 메커니즘을 제공한다. 공유 비밀 또는 공유 신뢰 키는 다른 정보, 예를 들어, 신뢰된 제3자에 관한 정보와 결합될 수 있다.
통신 장치들 사이의 보안성 연관에 기초하여, 다른 통신 장치들을 인증하는 것 및/또는 장치들 사이의 통신의 기밀성 및/또는 무결성 보호를 제공하는 것이 가능하다.
두 장치들 사이의 보안성 연관이 대칭적 비밀 키에 기반하는 경우, 두 장치들은 동일한 비밀 키를 저장하는데, 비밀 키는 장치들 사이에 전달되는 메시지들을 암호화 및 암호해독하기 위해 사용된다. 그러므로, 전송 장치는, 대칭 키(symmetric key)를 이용하여 암호화된 메시지가 대칭 키를 알고 있는 수신자에 의해서만 판독될 수 있다는 것에 의지할 수 있다. 수신자는 대칭 키를 이용하여 성공적으로 암호해독될 수 있는 메시지가 대칭 키를 알고 있는 전송자로부터 발신하 고 그 메시지가 전송 동안 변경되지 않았다는 것에 의지할 수 있다. 대칭 키 기반의 보안성 연관의 예들은, 블루투스 기술서("The Specification of the Bluetooth System, Core, Baseband Specification", version 1.1, December 2000, by the Bluetooth Special Interest Group)에 기재되어 있는 보안성 연관 및 IP 보안 프로토콜(IPsec)에서 이용되는 보안성 연관을 포함한다.
PKI(public key infrastructure) 시스템에서, 2개의 대응하는, 소위 비대칭(asymmetric)인, 키들이 정보를 보호하기 위해 사용된다. 2개의 키 중 하나를 가지고 암호화된 정보는 다른 하나의 키로 암호해독될 수 있다.
일부 PKI 시스템에서, 2개의 키들 중 어느 하나는 암호화하기 위해 사용되고 다른 하나는 암호해독하기 위해 사용될 수 있다. 다른 시스템에서, 하나의 키는 단지 암호화를 위해서만 사용되고 다른 하나는 암호해독을 위해 사용된다. PKI 시스템의 한 가지 중요한 특징은, 키들 중 하나를 사용하여 다른 키를 추론하는 것이 계산적으로 가능하지 않다는 것이다. 통상의 PKI 시스템에서, 시스템들 각각은 2개의 이러한 키들의 한 세트를 소유한다. 키들 중 하나는 비밀로 유지하고 다른 하나는 자유롭게 공개된다. 전송자가 수신자의 공개 키를 이용하여 메시지를 암호화하는 경우, 의도된 수신자만이 그 메시지를 암호해독할 수 있는데, 그 이유는, 그 수신자만이 공개된 공개 키에 대응하는 개인 키(private key)를 소유하고 있기 때문이다. 전송자가, 상술한 암호화를 수행하기 전에, 먼저 전송자의 개인 키를 이용하여 메시지를 암호화하는 경우, 수신자는, 먼저 수신자의 개인 키를 이용하여 암호해독을 수행한 후 전송자의 공개 키를 이용하여 그 결과에 대한 암호해독을 수 행하면, 프라이버시(privacy)뿐만 아니라 인증에 대해서도 보증되는데, 그 이유는, 그 전송자만이, 전송자의 공개 키가 메시지를 성공적으로 암호해독하도록 메시지를 암호화했을 것이기 때문이다.
PKI는, 개인 또는 기관을 식별할 수 있는 디지털 인증서 및 인증서를 저장하고, 필요한 경우에 이를 폐지할 수 있는 디렉토리 서비스들을 제공한다. 메시지의 전송자는 인증서 및 인증서에 포함된 공개 키를 사용하여 인증될 수 있다. 이것은, 수신자가 인증서를 발행하고 보안적으로 서명한 자, 즉, 소위 인증기관(CA)을 신뢰하는 경우에 가능하다. 또한, 인증서의 공개 키는 키 교환 목적을 위해 직접 또는 간접으로 사용될 수 있다. 인증서들은 차례로 다른 인증서에 의해 인증될 수도 있는데, 이것에 의해 소위 인증서 체인(certificate chain)이라고 불리는 인증서의 계층이 생성된다.
공개 키 보안 메커니즘의 예들은, Diffie-Hellman 키 교환, RSA 암호화/암호해독, 및 Elliptic Curve 공개 키 기술을 포함한다.
소위 보안성 초기화 절차인, 2개의 통신 장치들 사이의 보안성 연관의 생성은, 여러 방법으로 수행될 수 있다. 예를 들어, 사용자는 비밀 값을 두 장치들에 입력할 수 있다. 대안적으로, 장치들은 제조할 때 또는 개인화(personalisation) 프로세스의 일부로서 비밀 키 및 고유 식별번호(identity)를 구비할 수 있고, 비밀 키는 일부 다른 장치 또는 망 서버에 저장될 수 있다. 대안적으로, 장치들은 제조할 때 또는 개인화 프로세스의 일부로서 신뢰된 공개 키들의 각 세트들을 구비할 수 있고, 신뢰된 공개 키들의 세트의 공개 키에 대응하는 비밀 키를 이용하여 서명 된 모든 인증서들 또는 인증서들의 체인은 대응하는 장치에 의해 신뢰되고, 보안성 연관은 신뢰된 인증서들에 기반하여 생성된다.
많은 응용들에서, 보안성 연관을 구성하는 것은 일반 사용자이다. 그러므로, 빠르고 사용자에게 친숙한 방식으로 보안성 연관을 생성할 수 있는 것이 중요하다.
예를 들어, 블루투스에서, 2개의 장치 사이의 보안성 연관은, 사용자가 동일한 비밀 패스키(passkey) 또는 PIN을 2개의 장치에 입력하도록 요청되는, 소위 쌍화(pairing) 또는 결합(bonding) 절차에 의해 생성된다. 이 패스키에 기반하여, 2개의 장치는 두 장치에 저장된 공유 비밀, 소위 링크 키를 내놓는 키 교환을 수행한다.
그러므로, n개의 장치에 대해 보안성 연관을 설정하기 위해서, 사용자는 각각의 장치 쌍, 즉, n(n-1)/2 쌍에 대해 패스키를 입력할 필요가 있다. 이것은 귀찮고 시간 소모적인 절차이다.
국제 특허 출원 WO 01/31836호는, 애드혹 망에서 보안성을 설정하기 위한 방법을 기술하고 있다. 이 방법에 따르면, 신뢰 그룹들은 신뢰 그룹의 모든 노드들이 서로 상호 신뢰 관계를 가지며, 그 신뢰 관계가 신뢰된 공개 키에 기반하도록 설정된다. 새로운 노드가 신뢰 그룹에 참여하기 위한 후보 노드인 경우, 후보 노드와 기존의 신뢰 관계를 갖는 신뢰 그룹의 소정의 노드(소위 x-노드)가 식별된다. x-노드는 신뢰 그룹의 구성원들과 후보 노드 사이에 신뢰 관계를 분배한다.
상술한 종래 기술의 방법의 문제점은, 신뢰 관계가 다른 장치들의 그룹과 설 정되어야 하는 그룹 통신 시나리오(scenario)에 한정된다는 점이다. 따라서, 2개의 통신 장치 사이의 보안된 피어 투 피어 통신, 즉, 각 통신 장치가 등가적 능력 및 역할을 가지며, 소정의 신뢰 그룹을 알 필요가 없는 통신 시나리오를 설정하는 방법에 대한 요구가 있다.
상기 및 다른 문제들은, 통신 링크를 통해 제1 및 제2 통신 장치 사이에 보안된 피어 투 피어 통신을 설정하는 방법에 의해 해결되며, 각각의 통신 장치는 대응하는 통신 장치와 다른 통신 장치들 사이의 이전에 설정된 보안성 연관들의 각각의 세트를 저장하고 있고, 상기 방법은,
- 제1 및 제2 통신 장치들이 설정된 보안성 연관들의 각각의 세트에 공통 보안성 연관을 가지는지를 판정하는 단계와,
- 제1 및 제2 통신 장치가 공통 보안성 연관을 가진다고 판정되었다면, 판정된 공통 보안성 연관에 기반하여 제1 및 제2 통신 장치 사이의 통신 링크를 보호하고, 그렇지 않다면, 제1 및 제2 통신 장치 사이에 새로운 보안성 연관을 설정하고, 새로운 보안성 연관에 기반하여 통신 링크를 보호하는 단계와,
- 보호된 통신 링크를 통해 대응하는 키 데이터를 전달함으로써 제1 및 제2 통신 장치들의 이전에 설정된 보안성 연관들의 세트들을 제1 및 제2 통신 장치들 중 대응하는 다른 하나로 확장하는 단계를 포함한다.
그러므로, 두 통신 장치들이 통신 링크를 통해 제1 시간 동안 연결될 때, 두 통신 장치들은, 두 통신 장치들이 이전에 설정된 보안성 연관을 공통으로 가지는지를 판정하고, 이러한 이전에 설정된 보안성 연관이 존재하는 경우, 이 이전에 설정된 보안성 연관이 두 장치들 사이의 통신 링크를 보호하기 위한 기반으로서 사용되고, 그렇지 않은 경우, 새로운 보안성 연관, 바람직하게는, 공유 비밀이 통신 링크를 보호하기 위해 키 교환 프로토콜에 기초하여 설정된다. 바람직하게는, 키 교환 프로토콜은 패스워드 인증되고, 사용자가 장치들 중 적어도 하나에 패스워드를 입력하는 것을 요구한다. 그 다음, 두 장치들은 각각의 이전에 설정된 보안성 연관들에 관련된 키 데이터를 교환하여, 이들 이전의 보안성 연관들을 대응하는 다른 장치로 확장 또는 전파(propagating)한다.
결과적으로, 각 장치가 다른 장치들과의 보안성 연관을 설정하고, 그 보안성 연관들을 다른 장치에 전파할 수 있게 하는 메커니즘이 제공된다. 즉, 보안성 메커니즘은 임의의 마스터 장치(master device), 인증 서버 등의 존재에 무관하다.
그러므로, 신뢰 위임(delegation)의 효율적이고 보안적인 방법, 즉, 장치들, 예를 들어, 개인 영역 망의 장치들 사이에 그의 장치들 사이의 새로운 쌍화를 통해 보안성 연관들을 전파하는 메커니즘이 제공된다.
사용자 상호작용을 요구하는 쌍화의 수가 감소될 수 있다는 것이, 다른 잇점이다. n개의 장치에 대해 상호 보안성 연관들을 설정하기 위해서, 본 발명에 따른 방법은, 장치들이 쌍화되는 순서에 따라, n-1과 n(n-1)/2 사이의 수로 사용자 상호작용을 요구하는 쌍화의 수를 감소시킨다.
본 발명의 다른 잇점은, 보안성 연관들을 생성하는 간단하고 사용자에게 친숙한 방법을 제공한다는 점이다.
본 발명의 다른 잇점은, 대칭 키에 기반한 보안성 연관들뿐만 아니라, 비대칭 키에 기반한 보안성 연관들을 위해 적용 가능한 보안성 초기화 절차를 제공한다는 점이다.
판정된 공통 보안성 연관에 기반한 두 장치들 사이의 통신 링크의 보호는, 임의의 적절한 암호화 메커니즘을 포함할 수 있다. 일 실시예에서, 두 장치는 인증된 키 교환, 즉, 서로의 진정한 식별번호를 알고 있는 통신 당사자들에게 보증하고 그 당사자들에게만 알려진 공유 비밀 키를 당사자들에게 제공하는 프로토콜을 수행한다. 인증된 키 교환은 판정된 공통 보안성 연관에 기반하여 수행된다. 즉, 공통 보안성 연관은 당사자들이 서로의 진정한 식별번호를 알고 있다는 보증(assurance)을 제공하기 위해서 사용된다. 공유 비밀 키는 프라이버시, 데이터 무결성(data integrity) 또는 둘 다를 제공하기 위해서 후속하여 사용된다.
일 실시예에서, 제1 및 제2 통신 장치들 사이에 새로운 보안성 연관을 설정하는 단계는, 제1 및 제2 통신 장치 중 적어도 하나에 의해 사용자 입력(user-input)을 수신하는 단계를 포함하고, 사용자 입력은 대응하는 다른 통신 장치가 신뢰된 장치인지를 표시하고, 이전에 설정된 보안성 연관의 세트를 확장하는 단계는 수신된 사용자 입력이 대응하는 다른 통신 장치가 신뢰된 장치인 것으로 표시했을 때에만 수행된다.
그러므로, 보안성 연관들의 전파는 신뢰된 장치들에 한정된다. 즉, 새로운 장치들로의 전파는 사용자 승인에 의존하기 때문에, 보안성 연관들이 제어가능하지 않은 방식으로 전파되는 것을 방지하여, 시스템의 보안성을 증가시킨다. 사용자 입력은, 예를 들어, 승인을 위해 사용자에게 촉구(prompting)하는 것에 응답하여, 예를 들어, 키보드 또는 임의의 다른 입력 장치를 통해, 임의의 적절한 형태로 수신될 수 있다. 대안적으로, 사용자 입력은 신뢰할 장치 또는 장치의 타입에 관하여 소정의 규칙을 제공하는 장치의 맞춤 설정(customization setting)의 일부일 수 있다.
다른 실시예에서, 제1 및 제2 통신 장치 중 하나의 이전에 설정된 보안성 연관들의 세트의 각각의 이전에 설정된 보안성 연관은, 소정의 통신 장치 그룹을 식별하는 그룹 식별자와 연관되어 저장되고, 이전에 설정된 보안성 연관들을 확장하는 단계는, 소정의 그룹 식별자에 관련된 이전에 설정된 보안성 연관들로 한정된다.
그러므로, 보안성 연관들의 전파는, 소정의 문맥(context), 예를 들어, 소정의 서비스, 소정의 장치 타입 등으로 한정될 수 있다. 이러한 한정은, 보안성 연관의 전파가 사용자 제어 없이 무제한 계속되는 것이 방지되므로 방법의 보안성을 더 증가시킨다. 또한, 단일 통신 장치는 혼합되어서는 안 되는 보안성 연관들의 독립 그룹들을 가질 수 있다. 예를 들어, 장치는 로컬 무선 LAN 상의 장치들, 예를 들어, 회사의 컴퓨터들 및 다른 장치들과 보안성 연관들을 가질 수 있다. 비즈니스 회의와 관련하여, 장치는 비즈니스 회의에 참여하는 다른 장치들과 보안성 연관들의 다른 그룹을 설정할 수 있지만, 로컬 무선 LAN에 관련된 보안성 연관은 비즈니스 회의의 다른 참여자들로 확장되어서는 안 된다. 그러므로, 보안성 연관들의 전파를 소정의 그룹 문맥으로 한정함으로써, 유연성 있고 보안성 있는 메커니즘이 제공된다. 이하에서, 다른 장치들에 전파되도록 의도된 키들은, 신뢰된 키들이라고도 지칭될 것이다.
다른 바람직한 실시예들이 종속 청구항들에 개시된다.
본 발명은 상기 및 이하에서 설명된 방법, 통신 시스템 및 다른 제품 수단을 포함하는 상이한 방식들로 구현될 수 있으며, 각각은 최초 언급된(first-mentioned) 방법과 연관하여 설명된 하나 이상의 이익 및 잇점을 가져오고, 각각은 최초 언급된 방법과 연관하여 설명되고 종속 청구항들에 개시된 바람직한 실시예에 대응하는 하나 이상의 바람직한 실시예를 갖는다.
일 양태에 따르면, 상기 문제들은, 통신 시스템의 다른 이러한 통신 장치들과의 피어 투 피어 통신을 용이하게 하는 통신 장치에 의해 해결되며, 통신 장치는 대응하는 통신 장치와 다른 통신 장치들 사이에 이전에 설정된 보안성 연관들의 세트를 저장하는 저장 수단과, 통신 링크를 통해 다른 통신 장치와 통신하는 통신 수단과, 처리 수단으로서,
- 통신 장치가, 설정된 보안성 연관의 세트에 다른 통신 장치의 보안성 연관에 대응하는 공통 보안성 연관을 가지는지를 판정하는 단계와,
- 통신 장치가 공통 보안성 연관을 가진다고 판정되었다면, 판정된 공통 보안성 연관에 기반하여 통신 링크를 보호하고, 그렇지 않다면, 다른 통신 장치와 새로운 보안성 연관을 설정하고, 새로운 보안성 연관에 기반하여 통신 링크를 보호하는 단계와,
- 보호된 통신 링크를 통해 대응하는 키 데이터를 전달함으로써, 이전에 설정된 보안성 연관의 세트를 다른 통신 장치로 확장하는 단계를 수행하는 처리 수단을 포함한다.
통신 장치라는 용어는, 다른 이러한 통신 장치들과 유선 또는 무선 방식으로 통신하기 위한 통신 수단을 포함하는 임의의 전자 장비를 포함하는 것으로 의도된다. 특히, 통신 장치라는 용어는, 모든 포터블(portable) 무선 통신 장비 및 다른 핸드헬드(handheld) 또는 포터블 통신 장치를 포함한다. 포터블 무선 통신 장비라는 용어는, 이동 전화, 호출기, 커뮤니케이터(communicator), 즉, 전자 일정관리기(electronic organizer), 스마트 전화(smart phone), PDA(personal digital assistants), 핸드헬드 컴퓨터, 포터블 컴퓨터, 랩톱 등과 같은 모든 장비를 포함한다.
따라서, 통신 수단이라는 용어는, 다른 통신 장치로/로부터 유선 또는 무선 통신 링크를 통해 데이터의 전송 및 수신을 허용하는 임의의 회로 또는 장치를 포함하는 것으로 의도된다. 예를 들어, 통신 수단은, 무선 송신기 및 수신기를 포함할 수 있다. 통신 수단의 다른 예들은, 적외선 통신 등과 같은 다른 무선 기술을 사용하는 송신기/수신기를 포함한다.
저장 수단이라는 용어는, 데이터 저장을 위한 임의의 적절한 장치물 또는 장치, 예를 들어, EEPROM(electrically erasable programmable read only memory), 플래시 메모리, EPROM(erasable programmable read only memory), RAM(random access memory), 하드디스크와 같은 자기 저장장치 등을 포함하는 것으로 의도된다. 저장 수단은 전자 장치의 통합부일 수 있거나, 또는 예를 들어, 착탈가능하게 삽입되어 상기 장치와 연결될 수 있다. 예를 들어, 저장 수단은 착탈식 저장 매체, 예를 들어, 메모리 카드, PCMCIA 카드, 스마트 카드 등일 수 있다.
처리 수단이라는 용어는, 임의의 적절하게 프로그램된 범용 또는 특수 목적 프로그램 가능 마이크로프로세서, 디지털 신호 처리기(DSP), ASIC(Application Specific Integrated Circuit), PLA(Programmable Logic Array), FPGA(Field Programmable Gate Array) 등 또는 그 조합을 포함하는 것으로 의도된다.
상기 및 이하에 기술된 방법의 특징들은, 소프트웨어로 구현되거나 컴퓨터 실행 가능한 명령들의 실행에 의해 야기되는 처리 수단에서 수행될 수 있다. 명령들은 ROM, 플래시 메모리, EPROM, EEPROM 등과 같은 저장 매체로부터, 또는 컴퓨터 망을 통해 다른 컴퓨터로부터, RAM과 같은 메모리에 로딩된 프로그램 코드 수단일 수 있다.
대안적으로, 상술된 특징들은 소프트웨어 대신 또는 소프트웨어와 결합하여 하드와이어(hardwired) 회로에 의해 구현될 수 있다.
도 1은 통신 장치의 블록도.
도 2는 보안성 연관들에 기반하여 대칭 키를 사용하는 2개의 통신 장치들 사이의 보안된 피어 투 피어 통신 링크의 설정을 도시하는 흐름도.
도 3a 내지 도 3e는 4개의 장치를 가진 시나리오에서 도 2의 방법의 예를 도시하는 도면.
도 4는 보안성 연관에 기반하여 공개 키를 사용하는 2개의 통신 장치들 사이 의 보안된 피어 투 피어 통신 링크의 설정을 도시하는 도면.
도 5a 내지 도5e는 5개의 통신 장치를 쌍화하는 쌍화 시나리오의 제1 예를 도시하는 도면.
도 6a 내지 도6f는 5개의 통신 장치를 쌍화하는 쌍화 시나리오의 제2 예를 도시하는 도면.
도 1은 통신 장치의 블록도이다. 통신 장치(101)는 처리 유닛(102), 처리 유닛에 연결된 무선 통신 유닛(103), 및 처리 유닛에 연결된 저장 매체(104)를 포함한다.
무선 통신 유닛(103)은 통신망에 의해 사용되는 무선 채널(radio channel)(105)을 통해 처리 유닛(102)으로부터 수신된 데이터를 송신하고, 무선 채널로부터 데이터를 수신하여 처리 유닛에 이를 전달한다. 예를 들어, 무선 통신 유닛(103)은 블루투스 기술에 기반하고, 2.45GHz의 ISM 대역에서 송수신할 수 있다. 일 실시예에서, 통신망은 블루투스 피코넷(Bluetooth piconet)이다.
처리 유닛(102)은 통신 장치에 의해 구현된 기능에 따라 다른 장치들로부터 수신된 데이터 및 다른 장치들로 전송될 데이터를 처리한다. 특히, 처리 유닛은, 다른 장치와 키 교환 수행하기, 다른 장치와 인증된 키 교환 수행하기, 예를 들어, 무결성 보호, 암호화, 인증 등과 같은 다른 장치들로/로부터 전달하는 데이터 보호하기, 및 다른 장치들에 보안성 연관들 전파하기와 같은 하기에 설명된 보안성 기능들을 수행하도록 적절하게 프로그램된다.
저장 매체(104), 예를 들어, EPROM, EEPROM, 플래시 메모리, 하드디스크 등은 예를 들어, 개인 키들의 목록 또는 공개 키들의 목록과 같은 보안성 연관들의 세트를 저장하였다. 이 세트는 적절하게 인덱스화될 수 있고, 각각의 엔트리(entry)는 예를 들어, 그룹 식별자, 유효 기간 등과 같은 추가 정보를 포함할 수 있다.
통신 장치는 도 1의 개략적인 블록도에 생략되어진 다른 구성요소들을 포함할 수 있다는 것에 주목할 필요가 있다. 예를 들어, 통신 장치는 수신자, 디코더, 엔코더 등에 연결된 자동 이득 제어(AGC) 유닛을 더 포함할 수 있다.
도 2는 보안성 연관들에 기반한 대칭 키를 사용하여 2개의 통신 장치들 사이의 보안된 피어 투 피어 통신 링크의 설정을 도시하는 흐름도이다. 흐름도(200)는 서로 통신하는 2개의 통신 장치 A 및 B 중 하나를 각각 나타내는 2개의 칼럼(column)(222, 223)을 포함한다. 장치 A에 의해 수행되는 단계들을 나타내는 상자들은 칼럼(222)에 위치하고, 장치 B에 의해 수행되는 단계들을 나타내는 상자들은 칼럼(223)에 위치한다. 2개의 장치에 의해 수행되는 단계들을 나타내는 상자들은 두 칼럼을 공동으로 커버한다.
통신 장치 A 및 B 각각은, 신뢰된 개인 키의 내부 데이터베이스를 포함한다. 이하 설명된 바와 같이, 이들 키들은 다수의 신뢰된 장치들로 분배되기 때문에, 이들 개인 키들은 또한 (신뢰된) 그룹 키들이라고 지칭될 것이다. 데이터베이스들(214, 215) 각각은, 신뢰된 그룹 키 레코드(record)들의 목록을 포함하고, 각각의 레코드는 그룹 키 인덱스 및 그 인덱스에 대응하는 신뢰된 그룹 키를 포함한다. 도 2의 예에서, 장치 A의 데이터베이스(214)에 저장된 신뢰된 그룹 키들은 KA1,...,KAN으로 명시되고, 대응하는 인덱스들은 A1,...,AN으로 명시된다. 이에 따라, 장치 B의 데이터베이스(215)에 저장된 신뢰된 그룹 키들은 KB1,...,KBM으로 명시되고, 대응하는 인덱스들은 B1,...,BM으로 명시된다. 예를 들어, 제조하는 동안, 각 장치는 적어도 하나의 키 인덱스 및 대응하는 그룹 키를 이용하여 미리 구성될 수 있다. 대안적으로, 장치는 미리 구성된 키들 없이 발송될 수 있다. 장치들은 다른 목적들을 위해 다른 키들을 저장했을 수 있다는 것을 더 이해해야 한다. 그러나, 본 방법은, 본 방법의 일부로서 다른 신뢰된 장치들에 전파되도록 의도되는, 신뢰된 그룹 키들 KA1,...,KAN 및 KB1,...,KBM 의 전용 세트에 각각 적용한다. 예를 들어, 키들 KA1,...,KAN 및 KB1,...,KBM은 전용 데이터베이스에 각각 저장되거나, 또는 다른 키들로부터 분리될 수 있다. 대안적으로, 키들은 다른 키들과 함께 데이터베이스에 저장될 수 있는데, 본 발명을 위해 의도된 신뢰된 그룹 키들은 본 방법을 위해 의도된 신뢰된 키들로서 표시된다. 전술한 바와 같이, 신뢰된 그룹 키들의 각각은, 예를 들어, 장치들의 그룹, 서비스들 등과 같은 특정 문맥을 식별하는 그룹 식별자와 관련될 수 있고, 대응하는 키의 전파는 그 문맥으로 한정된다.
일 실시예에서, 키 인덱스들은 소정의 인덱스 공간(index space)으로부터 랜덤하게 선택될 수 있다. 바람직하게는, 인덱스 공간은 2개의 다른 비밀 키들이 동일한 인덱스를 가질 확률을 감소시키기에 충분히 크게 선택된다. 예를 들어, 인덱스들은 48비트 인덱스 공간으로부터 선택될 수 있다. 그러나, 공통 그룹 키들을 식별하기 위해서만 인덱스들이 사용되기 때문에, 고유성은 인덱스들에 대한 엄격한 요건이 아님을 주목한다. 인덱스들의 충돌로 인해 2개의 다른 키들이 공통 키로서 잘못 표시된 경우, 이러한 키에 기반하는 암호화와 같은 보안성 기능들의 후속 설정은 실패할 것이다. 이러한 경우, 대안적인 키가 식별되거나 수동적인 쌍화가 수행될 수 있다.
하기에서, 통신 장치들은, 예를 들어, 케이블, 무선 채널 또는 임의의 다른 적절한 기술과 같은 유선 또는 무선 통신 매체를 통해 서로 통신할 수 있는 것으로 가정된다. 예를 들어, 장치들은 블루투스 에어 인터페이스(air interface)를 사용하여 통신할 수 있다. 사용자가 처음으로 2개의 장치 A와 B를 연결하고 싶다면, 즉, 2개의 장치가 서로 이전에 접속하고 있지 않았다면, 다음 단계들이 수행된다.
초기 단계(201)에서, 장치 A는 장치 A의 데이터베이스(214)에 저장된 키 인덱스들 A1,...,AN의 목록을 장치 B로 전송한다.
단계(202)에서, 장치 B는 장치 B의 데이터베이스(215)에 저장된 인덱스들 B1,...,BM과 수신한 인덱스들의 목록을 비교한다. 장치 B가 IC라 명시된 공통 인덱스를 식별하면, 즉, IC ∈{A1,...,AN}∩{B1,...,BM}인 경우, 프로세스는 단계(203)로 계속되고, 그렇지 않은 경우, 프로세스는 단계(205)로 계속된다. 장치 B가 하나 이상의 공통 키 인덱스를 식별하는 경우, 공통 인덱스들 중 임의의 하나가 선택된다.
단계(203)에서, 즉, 공통 인덱스 IC가 단계(202)에서 식별되었다면, 장치 B는 공통 인덱스 IC를 장치 A로 전송한다.
다음 단계(204)에서, 2개의 장치는 공유 비밀을 내놓는 인증된 키 교환을 수행한다. 인증은 식별된 공통 인덱스 IC에 대응하는 공통 신뢰된 그룹 키 KIC에 기반한다. 인증된 키 교환은 임의의 적절한 공지된 인증된 키 교환 프로세스에 따라 수행될 수 있다. 일 실시예에서, 인증된 키 교환은 블루투스 기술서에 따라 수행되는데, 공통 그룹 키 KIC는 PIN 또는 초기 키로서 사용된다. 예를 들어, "The specification of the Bluetooth System, Core, Baseband Specification", version 1.1, December 2000, by the Bluetooth Special interest Group을 참조한다. 인증된 키 교환의 다른 예들은, 인증된 디피 헬맨(Diffie-Hellman) 키 교환을 포함한다. 인증된 키 교환의 완료 후, 프로세스는 단계(207)로 계속된다.
단계(205)에서, 즉, 어떠한 공통 키 인덱스도 단계(202)에서 식별되지 않았다면, 장치 B는 예를 들어, 대응하는 응답 메시지를 전송하거나 수동 쌍화를 위한 요구(request)를 전송함으로써 어떠한 공통 키 인덱스도 식별되지 않았음을 장치 A에게 알린다.
다음 단계(206)에서, 키 교환이 수행되며, 결과로서 공유 비밀이 생긴다. 일 실시예에서, 키 교환은, 예를 들어, 2개의 장치의 쌍화를 수행하기 위한 요구를 전송함으로써 장치 A에 의해 개시된다. 일 실시예에서, 사용자는 승인을 위해 촉구받고, 사용자의 입력에 따라, 쌍화를 위한 요구는 승인되거나 거절된다. 장치 B가 그 요구를 거절하는 경우, 프로세스는 종료되고, 그렇지 않은 경우, 키 교환을 포함하는 쌍화 프로세스가 두 장치에 의해 수행된다. 키 교환의 부분으로서, 사용 자 상호작용이 장치들에 의해 요구된다. 예를 들어, 장치들의 제어에서 사용자(들)는 두 장치에 패스코드(passcode)를 입력하도록 요청받는다. 대안적인 실시예에서, 패스코드가 하나의 장치에 의해 생성되어 사용자에게 표시되고, 사용자는 그 생성된 패스코드를 다른 장치에 입력하도록 요청받는다. 키 교환은 임의의 적절한 공지된 패스워드-기반 키 교환 프로세스에 따라 수행될 수 있다. 일 실시예에서, 키 교환은 블루투스 기술서("The Specification of the Bluetooth System, Core, Baseband Specification", ibid.)에 따라 수행된다.
키 교환 프로세스의 일부로서, 사용자는, 장치들 A 및 B가 각각의 보안성 연관의 교환을 계속해야 하는지, 즉, 각각의 다른 장치가 높이 신뢰된 장치(highly trusted device)로서 생각되는지를 질문받는다. 사용자가 보안성 연관들의 교환을 거절하면, 프로세스는 종료되는데, 즉, 이 경우, 두 장치는 쌍화되고 공유 비밀을 설정하고 있지만, 이전에 설정된 보안성 연관들을 각각의 다른 장치로 확장하지 않는다. 예를 들어, 설정된 공유 비밀은, 예를 들어, 암호화 및/또는 무결성 보호 등을 설정함으로써 두 장치 사이의 후속 통신을 보호하는데 사용될 수 있다. 일 실시예에서, 보안성 연관의 교환은, 보안성 연관의 소정 그룹으로 한정될 수 있다. 예를 들어, 각 그룹 키 레코드가 그룹 식별자를 더 포함하는 실시예에서, 사용자는 목록으로부터 하나 이상의 그룹 식별자를 입력 또는 선택하도록 요청받을 수 있다. 다음으로, 선택된 그룹 식별자들의 보안성 연관들만이 교환된다. 사용자가 키 교환 단계의 종료 후에 적어도 일부 보안성 연관들의 교환을 승인하는 경우, 프로세스는 단계(207)로 계속된다.
단계(207)에서, 즉, 일단 기존의 공통 키 KIC에 의해 인증된 단계(204)의 인증된 키 교환 또는 사용자 상호작용을 개입시키는 단계(206)의 패스코드-기반 키 교환에 의해 장치들 사이에 공유 비밀이 설정되면, 장치들은 동의된 공유 비밀을 사용하여 암호화된 연결로 전환한다. 암호화는 SAFER+, AES, DES, RC5, 블루투스 E0, GSM A5/3 등과 같은 임의의 적절한 암호화 알고리즘에 기반할 수 있다. 일 실시예에서, 장치들 사이의 통신은 더 무결성 보호된다.
단계(208)에서, 장치 B는 데이터베이스(215)에 저장된 신뢰된 그룹 키들 및 대응하는 인덱스들의 목록을 장치 A에 전송한다. 장치 B는 장치 A로부터 키 인덱스들의 목록을 이전에 수신했기 때문에, 일 실시예에서, 장치 B는, 이전에 수신한 인덱스들과 다른 인덱스들을 갖는 데이터베이스(215)로부터의 인덱스들 및 대응하는 키들만을 전송함으로써, 요구되는 통신 자원을 줄일 수 있다. 신뢰된 그룹 키들의 세트가 하나 이상의 소정 그룹 식별자에 관련된 그룹 키들만을 포함하는 것으로 한정되었으면, 선택된 그룹 식별자(들)에 관련된 키들만이 전송된다. 장치 B는 예를 들어, 장치가 어떠한 키도 없이 발송되었고 다른 장치와 신뢰된 키들을 이전에 교환하지 않았기 때문에, 데이터베이스(215)에 저장된 신뢰된 그룹 키를 갖지 않는 경우, 장치 B는 그룹 키 및 대응하는 인덱스를 생성한다. 예를 들어, 키와 인덱스는 둘다 적절한 각각의 공간으로부터 랜덤하게 생성될 수 있다.
단계(209)에서, 장치 A는 데이터베이스(214)의 신뢰된 키들의 목록을, 수신된 키들 및 대응하는 인덱스들의 목적으로 갱신한다.
단계(210)에서, 장치 A는 데이터베이스(214)에 저장된 신뢰된 키들 및 대응하는 인덱스들의 목록을 장치 A로 전송한다. 일 실시예에서, 장치 A는 장치 B로부터 수신된 인덱스들과 다른 인덱스들을 갖는 데이터베이스(214)로부터의 인덱스들 및 대응하는 키들만을 전송함으로써, 요구되는 통신 자원을 감소시킨다.
단계(211)에서, 장치 B는 데이터베이스(215)의 신뢰된 키들의 목록을, 수신된 키들 및 대응하는 인덱스들의 목록으로 갱신한다.
대안적인 실시예에서, 단계들(208-211)의 순서는, 예를 들어, 장치 B의 대응하는 목록을 수신하기 전에, 장치 A가 먼저 그룹 키들의 목록을 전송하도록, 변경될 수 있다.
그러므로, 상기에서는, 이전에 설정된 보안성 연관들이 각각의 다른 장치에 전파되는, 대칭 키에 기반하여 장치들 A와 B 사이에 보안성 연관을 설정하는 절차가 개시되었다. 결국, 사용자에 의해 입력된 패스코드를 요구하는 쌍화의 수는 감소된다.
도 3a 내지 도 3e는 4개의 통신 장치가 있는 시나리오에서 도 2의 방법의 예를 도시한다. 이 예에서, 하나 이상의 사용자는 일반적으로 301, 302, 303 및 304로 각각 명시된 4개의 통신 장치들 A, B, C 및 D 사이에 보안성 연관들을 설정하기를 희망한다고 가정한다.
도 3a는 초기 상황을 도시한다. 이 예에서, 장치들(301-304) 중 어느 것도 임의의 그룹 키들을 이용하여 미리 구성되지 않는다고, 즉, 장치들 중 어느 것도 각각의 그룹 키들의 목록에 저장된 임의의 그룹 키들을 가지지 않는다고 가정한다.
도 3b는 장치들(301, 302) 사이의 최초 쌍화 단계를 도시한다. 장치들(301, 302)은 처음으로 연결되고, 장치들 중 어느 것도 그룹 키를 저장하지 않았다. 그러므로, 장치들은 화살표(305)로 도시된 것처럼, 두 장치에 입력된 PIN 또는 패스워드에 기반하여 수동 쌍화를 수행한다. 두 장치의 사용자(들)는 적절한 사용자 입력을 통해 각각의 장치에 이 쌍화가 높이 신뢰된 장치와의 쌍화임을 표시한다. 즉, 사용자(들)는 그룹 키들의 교환을 개시한다. 결국, 인증 및 암호화로의 전환 후, 장치들 중 하나(장치 301)는 화살표(306)로 표시된 것처럼, 인덱스 I1을 갖는 신뢰된 그룹 키 KI1을 생성하고, 생성된 키 및 인덱스를 다른 장치(장치 302)로 전송한다. 두 장치는 각각의 데이터베이스의 신뢰된 그룹 키 KI1 및 대응하는 인덱스 I1을 저장한다.
도 3c는 장치들(303, 304)의 후속 연결 동안의 상황을 도시한다. 또한, 장치들(303, 304)은 처음으로 연결되고, 장치들 중 어느 것도 그룹 키를 저장하지 않았다. 그러므로, 장치들은 화살표(307)로 도시된 것처럼, 두 장치에 입력된 PIN 또는 패스워드에 기반하여 수동 쌍화를 수행한다. 두 장치의 사용자(들)는 적절한 사용자 입력을 통해 이 쌍화가 높이 신뢰된 장치와의 쌍화임을 각각의 장치에 표시한다. 즉, 사용자(들)는 그룹 키들의 교환을 개시한다.
인증 및 암호화 후, 장치들 중 하나(장치 303)는 화살표(308)로 표시된 것처럼, 인덱스 I2를 갖는 신뢰된 그룹 키 KI2를 생성하고, 그 생성된 키 및 인덱스를 다른 장치(장치 304)로 전송한다. 두 장치는 각각의 데이터베이스에 신뢰된 그룹 키 KI2 및 대응하는 인덱스 I2를 저장한다.
도 3d는 장치들(301, 303)의 후속 연결 동안의 상황을 도시한다. 장치들(301, 303)은 처음으로 서로 연결된다. 장치(301)가 이미 신뢰된 키 KI1을 저장했으므로, 장치(301)는 화살표(309)로 도시된 것처럼 장치(303)로 대응하는 인덱스 I1을 전송한다. 장치(303)는 그 데이터베이스에 저장된 인덱스 I1을 갖는 키를 가지고 있지 않으므로, 장치(303)는 쌍화를 위한 요청을 이용하여 응답한다(화살표 310). 장치들은 화살표(311)로 표시된 것처럼 2개의 장치에 입력된 PIN 또는 패스워드에 기반하여 수동 쌍화를 수행한다. 두 장치들의 사용자(들)는, 적절한 사용자 입력을 통해 이 쌍화가 높이 신뢰된 장치의 쌍화임을 각각의 장치에 표시한다. 즉, 사용자(들)는 그룹 키들의 교환을 개시한다. 인증 및 암호화로의 전환 후, 장치(301)는 신뢰된 그룹 키들, 즉, 키 KI1 및 대응하는 인덱스 I1의 목록을 장치(303)로 전송한다(화살표 312). 장치(303)는 신뢰된 그룹 키들, 즉, 키 KI2 및 대응하는 인덱스 I2의 목록을 이용하여 응답한다(화살표 313). 두 장치는 각각의 데이터베이스에 각각의 새로운 키를 저장한다.
도 3e는 장치들(301, 304)의 후속 연결 동안의 상황을 도시한다. 장치들(301, 304)은 처음으로 서로 연결된다. 장치(301)는 화살표(314)로 도시된 것처럼 그룹 키 인덱스들, 즉, 인덱스들 I1 및 I2의 목록을 장치(304)로 전송한다. 장치(304)는 그 데이터베이스에 인덱스 I2를 갖는 키를 가지고 있고, 키 인덱스 I2를 이용하여 응답하므로(화살표 315), 인덱스 I2를 갖는 공통 키를 사용하여 인증된 키 교환을 요청한다. 장치들은 공통 키 KI2에 기반하여 인증된 키 교환을 수행한다(화살표 316). 인증 및 암호화로의 전환 후, 장치들은 각각의 그룹 키들의 목록을 교환한다. 장치(301)는 신뢰된 그룹 키 KI1 및 대응하는 인덱스 I1을 장치(304)로 전송한다(화살표 317). 장치(301)는 키 KI2를 전송할 필요가 없는데, 그 이유는 이 키가 공통 키로서 이미 식별되어 있기 때문이다. 장치(304)는 그 데이터베이스에 수신된 키 KI1 및 대응하는 인덱스 I1을 저장한다. 장치(304)는 장치(301)에 아직 알려지지 않은 데이터베이스에 저장된 어떠한 추가적인 키들도 가지고 있지 않다. 그러므로, 장치(304)에서 장치(301)로 어떠한 키도 전송되지 않는다.
도 4는 공개 키 기반 보안성 연관들을 사용하여 두 통신 장치들 사이에 보안된 피어 투 피어 통신 링크를 설정하는 것을 도시하는 흐름도이다. 흐름도(400)는 전술한 바와 같이, 각 칼럼이 두 통신 장치들 A 및 B 중 하나를 나타내는 2개의 칼럼(422, 423)을 포함한다.
통신 장치들 A 및 B 각각은 신뢰된 공개 키들 및 신뢰된 공개 키들을 인증하는 인증서들의 내부 데이터베이스를 포함한다. 데이터베이스들(414 및 415) 각각은 레코드들의 목록들을 포함하는데, 각 레코드는 신뢰된 공개 키 및 인증서들의 대응하는 체인을 포함한다. 도 4의 예에서, 장치 A의 데이터베이스(414)에 저장된 공개 키들은 KA1,...,KAN으로 명시되고, 인증서들의 대응하는 체인들은 CA1,...,CAN으로 명시되는데, CA1은 신뢰된 공개 키 KA1을 장치 A의 공개 키에 링크하는 하나 이상 의 인증서의 체인을 나타낸다. 마찬가지로, 장치 B의 데이터베이스(415)에 저장된 공개 키들은 KB1,...,KBM으로 명시되고, 인증서들의 대응하는 체인들은 CB1,...,CBM으로 명시된다. 또한, 데이터베이스(414)는 대응하는 자체 서명 인증서(self-signed certificate)를 갖는, 적어도 하나의 공개 키 및 개인 키 KA,PU 및 KA,PR을 각각 포함한다. 마찬가지로, 장치 B의 데이터베이스(415)는 대응하는 자체 서명 인증서를 갖는, 적어도 하나의 공개 키 및 개인 키 KB,PU 및 KB,PR을 각각 포함한다. 예를 들어, 제조하는 동안, 각 장치는 적어도 하나의 공개 키 및 개인 키와 자체 서명 인증서를 이용하여 미리 구성될 수 있으며, 여기서 공개-개인 키 쌍들 중 적어도 하나는 서명 능력을 갖는다. 장치들이 다른 목적들을 위해 다른 키들 또는 인증서들을 저장했을 수 있다는 것을 더 이해해야 한다. 그러나, 본 방법은, 본 방법의 일부로서 다른 신뢰된 장치들에 전파되도록 의도되는, 신뢰된 공개 키들 KA1,...,KAN 및 KB1,...,KBM 각각 및 인증서들 CA1,...,CAN 및 CB1,...,CBM 각각의 전용 세트에 적용한다. 전술한 바와 같이, 각각의 공개 키는 그룹 식별자에 관련될 수 있다는 것을 더 이해해야 한다.
이하에서, 통신 장치들은 유선 또는 무선 통신 매체, 예를 들어, 케이블, 무선 채널 또는 임의의 다른 적절한 무선 기술을 통해 서로 통신할 수 있는 것으로 가정한다. 예를 들어, 장치들은 블루투스 에어 인터페이스를 사용하여 통신할 수 있다. 사용자가 2개의 장치 A 및 B를 처음으로 연결하고 싶다면, 즉, 2개의 장치 가 이전에 서로 연결된 적이 없었다면, 다음 단계들이 수행된다.
초기 단계(401)에서, 장치 A는 장치 A의 데이터베이스(414)에 저장된 공개 키들 KA1,...,KAN에 대응하는 해시값(hash value)들 HA1,...,HAN의 목록을 장치 B로 전송한다. 해시값들 HA1,...,HAN은 대응하는 키들과 관련되어 미리 계산된 값들로서 데이터베이스(414)에 저장될 수 있다. 대안적으로, 장치 A는 해시값들을 전송하기 전에, 저장된 키들로부터 해시값들을 계산할 수 있다.
해시값들은 임의의 적절한 공지된 해시 함수, 예를 들어, SHA-1 또는 MD5에 기반하여 계산될 수 있다. 일반적으로, 해시 테이블 검색(hash table lookup)을 위한 해시 함수는 빨라야 하고, 가능하면 충돌을 거의 일으키지 않아야 한다. 즉, 서로 다른 키들이 동일한 해시값을 생성하게 되는 경우가 거의 없어야 한다. 그러나, 해시값들의 충돌로 인해 2개의 서로 다른 키들이 공통 키로서 잘못 표시된다면, 이들 키들에 기반하는 암호화와 같은 보안성 기능들의 후속 설정은 실패할 것이라는 것을 주목한다. 따라서, 이러한 경우, 대안적인 키가 식별될 수 있거나 수동적 쌍화가 수행될 수 있다.
단계(402)에서, 장치 B는, 수신된 해시들의 목록과, 장치 B의 데이터베이스(415)에 저장된 키들 KB1,...,KBM의 해시들을 비교한다. 장치 B가 공통 해시값을 식별하는 경우, HC ∈ {HA1,...,HAN}∩{HASH(KB1),...,HASH(KBM)}이면, 프로세스는 단계(403)로 계속되고, 그렇지 않으면, 프로세스는 단계(405)로 계속된다. 장치 B가 하나 이상의 공통 해시값을 식별하는 경우, 공통 해시값들 중 임의의 하나가 선택 된다.
단계(403)에서, 즉, 공통 해시값 HC가 단계(402)에서 식별되었다면, 장치 B는 장치 A에 공통 해시값 HC을 전송한다. 이하에서, 해시값 HC에 대응하는 공통 공개 키는 KC로 명시될 것이다.
후속 단계(404)에서, 두 장치는 인증된 키 교환을 수행하고, 결과로서 공유 비밀이 생긴다. 인증은 공통 공개 키 KC에 체인화될 수 있는 인증서 또는 공개 키에 기반한다. 즉, 공개 키 KC는 인증서 체인의 공개 루트(root) 키로서 사용된다. 인증된 키 교환은 공개 키 또는 인증서, 예를 들어, IKEv2 또는 TLS에 기반하는 임의의 적절한 공지된 인증된 키 교환 프로세스에 따라 수행될 수 있다.
단계(405)에서, 즉, 어떠한 공통 해시값도 단계(402)에서 식별되지 않았다면, 장치 B는 예를 들어, 대응하는 응답 메시지 또는 수동 쌍화에 대한 요구를 전송함으로써, 어떠한 공통 해시값도 식별되지 않았음을 장치 A에 알린다.
다음 단계(406)에서, 키 교환이 수행되고, 결과로서 공유 비밀이 생긴다. 키 교환은 예를 들어, 두 장치의 쌍화를 수행하기 위한 요구를 전송함으로써, 장치 A에 의해 개시될 수 있다. 일 실시예에서, 사용자는 승인을 위해 촉구되고, 사용자의 입력에 따라, 쌍화를 위한 요구가 승인되거나 거절된다. 장치 B가 요구를 거절하면, 프로세스는 종료되고, 그렇지 않으면, 키 교환을 포함하는 쌍화 프로세스가 두 장치에 의해 수행된다. 키 교환의 일부로서, 사용자 상호작용이 장치에 의 해 요청된다. 예를 들어, 장치들을 제어하고 있는 사용자(들)는 두 장치에 패스코드를 입력하도록 요청받는다. 대안적인 실시예에서, 패스코드가 하나의 장치에 의해 생성되어 사용자에게 표시되고, 사용자는 생성된 패스코드를 다른 장치에 입력하도록 요청받는다. 키 교환은 임의의 적절한 공지된 패스워드-기반 키 교환 프로세스에 따라 수행될 수 있다. 일 실시예에서, 키 교환은 블루투스 기술서("The Specification of the Bluetooth System, Core, Baseband Specification", ibid.)에 따라 수행된다.
키 교환 프로세스의 일부로서, 사용자는 장치들 A 및 B가 각각의 보안성 연관들의 교환을 계속해야 하는지, 즉, 각각의 다른 장치가 높이 신뢰된 장치로서 생각되는지를 질문받는다(단계 416). 사용자가 보안성 연관들의 교환을 거절하면, 프로세스가 종료된다. 즉, 이러한 경우, 두 장치는 쌍화되고 공유 비밀을 설정하였지만, 이전에 설정된 보안성 연관들을 각각의 다른 장치로 확장하지는 않는다. 예를 들어, 설정된 공유 비밀은 예를 들어, 암호화 및/또는 무결성 보호 등을 설정함으로써, 두 장치들 사이의 후속 통신을 보호하는데 이용될 수 있다. 일 실시예에서, 보안성 연관의 교환은 보안성 연관들의 소정 그룹으로 한정될 수 있다. 예를 들어, 각각의 공개 키 레코드가 그룹 식별자를 더 포함하는 실시예에서, 사용자는 목록으로부터 하나 이상의 그룹 식별자들을 입력하거나 선택하도록 요청받을 수 있다. 다음으로, 선택된 그룹 식별자들의 보안성 연관들만이 교환된다. 사용자가 키 교환 단계의 완료 후 적어도 일부 보안성 연관들의 교환을 승인하면, 프로세스는 단계(407)로 계속된다.
단계(407)에서, 즉, 일단 기존 공통 키 KC에 기반하여 인증된 단계(404)에서의 인증된 키 교환, 또는 사용자 상호작용을 개입시키는 단계(406)에서의 패스코드-기반 키 교환에 의해, 장치들 사이에 공유 비밀이 설정되면, 장치들은 동의된 공유 비밀을 사용하여 암호화된 연결로 전환한다. 암호화는 블루투스 1.1의 E0 또는 AES와 같은 임의의 적절한 암호화 알고리즘에 기반할 수 있다. 일 실시예에서, 장치들 사이의 통신은 더 무결성 보호된다.
단계(408)에서, 장치 B는 자신의 공개 키 KB,PU 또는 자체 서명 인증서를 장치 A로 전송한다.
단계(409)에서, 장치 A는 장치 B의 공개 키를 수신한다. 장치 A는 자신의 개인 키를 사용하여 장치 B의 공개 키를 서명하도록 선택할 수 있다.
다음으로, 단계(410)에서, 장치 A는 데이터베이스(414)에 저장된 신뢰된 공개 키들 KA1,...,KAN 및 대응하는 인증서들 또는 인증서 체인들 C'A1,...,C'AN의 목록을 장치 B에 전송한다. 인증서들/인증서 체인들 C'A1,...,C'AN은, 데이터베이스(414)에 저장되어 있지만 또한 신뢰된 공개 키들 KA1,..., KAN 각각에 대하여 장치 B의 수신된 공개 키 KB,PU를 더 인증하는, 인증서들/인증서 체인들 CA1,...,CAN에 대응한다. 또한, 장치 A는 자신의 공개 키 KA,PU 또는 자체 서명 인증서를 장치 B로 전송한다. 장치 A는 장치 B로부터 해시값들의 목록을 이전에 수신하였기 때문에, 일 실시예에서, 장치 A는 이전에 수신한 것과 다른 해시들을 갖는 데이터베이스(414) 로부터의 공개 키들만을 전송할 수 있다. 두 세트의 신뢰된 키들에 차이가 없으면, 장치 A는 어떠한 키도 전송하지 않도록 선택할 수 있다. 신뢰된 공개 키들의 세트가 하나 이상의 소정 그룹 식별자와 관련된 키들만을 포함하도록 한정되었다면, 선택된 그룹 식별자(들)와 관련된 키들만이 전송된다. 장치 A도 장치 B도 데이터베이스에 저장된 어떠한 신뢰된 그룹 키들을 가지지 않는다면, 장치 A는 자신의 공개 키, 루트 키를 만들 것이고, 이러한 키(또는 자체 서명 인증서에 있는 이러한 키) 및 루트 키에 대해 장치 B의 공개 키를 인증하는 인증서만을 장치 B로 전송할 것이다.
단계(411)에서, 장치 B가 공개 키들 및 인증서들/인증서 체인들의 목록을 장치 A로부터 수신하고, 장치 B는 신뢰된 공개 키들 및 신뢰된 키들에 대해 자신의 공개 키를 인증하는 인증서들의 목록을 갱신한다. 장치 B는 자신의 개인 키를 사용하여 장치 A의 공개 키를 서명하도록 선택할 수 있다.
다음으로, 단계(412)에서, 장치 B는 데이터베이스(415)에 저장된 신뢰된 공개 키들 KB1,...,KBM 및 신뢰된 공개 키들 KB1,...,KBM 각각에 대해 장치 A의 수신된 공개 키 KA,PU를 인증하는 대응하는 인증서들/인증서 체인들 C'B1,...,C'BM의 목록을 전송한다. 장치 B가 장치 A로부터 해시값들의 목록을 이전에 수신하였기 때문에, 일 실시예에서, 장치 B는 이전에 수신한 것과 다른 해시들을 갖는 데이터베이스(415)로부터의 공개 키들만을 전송할 수 있다. 두 세트의 신뢰된 키들에 차이가 없으면, 장치 B는 어떠한 키들도 전송하지 않도록 선택할 수 있다. 신뢰된 공개 키들의 세트가 하나 이상의 소정 그룹 식별자에 관련된 키들만을 포함하도록 한정되었다면, 선택된 그룹 식별자(들)에 관련된 키들만이 전송된다.
단계(413)에서, 장치 A는 공개 키들 및 인증서들/인증서 체인들의 목록을 장치 B로부터 수신한다. 장치 A는 신뢰된 공개 키들의 목록 및 신뢰된 키들에 대해 자신의 공개 키를 인증하는 인증서들의 목록을 갱신한다.
또한, 키 교환 단계들(408-411)의 순서가 변경될 수 있다는 것을 이해해야 한다.
그러므로, 상기에서는, 이전에 설정된 보안성 연관들이 각각의 다른 장치로 전파되는, 공개 키들에 기반하여 장치들 A와 B 사이에 보안성 연관을 설정하기 위한 절차가 개시되었다.
전술한 바와 같이, 전술한 방법은, 사용자 상호작용을 요구하는 쌍화의 수를, 장치들이 쌍화되는 순서에 따라 n-1과 n(n-1)/2 사이의 수로 줄인다. 이하에서, 이것은 5개의 통신 장치를 쌍화하기 위한 쌍화 시나리오의 2가지 예와 관련하여 도시할 것이다.
도 5a 내지 도 5e는 5개의 통신 장치를 쌍화하기 위한 쌍화 시나리오의 제1 예를 도시한다. 이 예에서, 하나 이상의 사용자들이, 일반적으로 501, 502, 503, 504 및 505로 각각 명시된 5개의 통신 장치 A, B, C, D 및 E 사이에 보안성 연관들을 설정하기를 원한다고 가정한다.
도 5a는 초기 상황을 도시한다. 이 예에서, 장치들(501-505) 중 어느 것도 임의의 그룹 키들을 이용하여 미리 구성되지 않는다고, 즉, 장치들 중 어느 것도 그룹 키들의 각각의 목록들에 저장된 임의의 그룹 키들을 가지지 않는다고 가정한다.
도 5b는 장치들(501 및 502) 사이의 제1 쌍화 단계를 도시한다. 장치들(501 및 502)은 처음으로 연결된다. 장치들 중 어느 것도 그룹 키를 저장하지 않았으므로, 전술되고 점선(506)으로 도시된 것처럼, PIN 또는 패스워드에 기반하여 수동 쌍화를 수행한다. 인증 및 암호화로의 전환 후, 장치들 중 하나는 신뢰된 그룹 키 K1을 생성하고 생성된 키를 다른 장치로 전송한다. 두 장치는 신뢰된 그룹 키 K1을 각각의 데이터베이스에 저장한다. 일부 실시예들에서, 키 K1은 전술한 것처럼, 대응하는 인덱스와 관련하여 저장된다는 것을 이해해야 한다.
도 5c는 장치들(501 및 503)의 후속 연결 후 상황을 도시한다. 장치들(501 및 503)은 공통 키를 가지지 않으므로, 점선(507)으로 표시된 것처럼 두 장치에 입력된 PIN 또는 패스워드에 기반하여 수동 쌍화를 수행한다. 인증 및 암호화로의 전환 후, 장치(501)는 신뢰된 그룹 키들, 즉, 키 K1의 목록을 장치(503)로 전송하고 여기에 키 K1이 저장된다.
도 5d는 장치들(501 및 505)의 후속 연결 후 상황을 도시한다. 또한, 장치들(501 및 505)은 점선(508)으로 표시된 것처럼 수동 쌍화를 수행하고, 장치(501)는 신뢰된 그룹 키 K1을 장치(505)로 전송하고 여기에 키 K1이 저장된다.
도 5e는 장치들(501 및 504)의 후속 연결 후 상황을 도시한다. 또한, 장치 들(501 및 504)은 점선(509)으로 표시된 것처럼 수동 쌍화를 수행하고, 장치(501)는 신뢰된 그룹 키 K1을 장치(504)로 전송하고 여기에 키 K1이 저장된다.
그러므로, 이 예에서, 4개의 수동 쌍화 후, 모든 5개의 장치(n=5)는 모든 다른 장치들과 공통 신뢰된 그룹 키를 가진다. 그러므로, 한 장치(장치 502)가 모든 다른 n-1개의 장치들과 수동으로 쌍화되는 상기 절차는, n-1개의 수동 쌍화를 요구하는 절차의 예이다.
도 6a 내지 도 6f는 5개의 통신 장치를 쌍화하기 위한 쌍화 시나리오의 제2 예를 도시한다. 또한, 하나 이상의 사용자들이 5개의 통신 장치 A, B, C, D 및 E 사이에 보안성 연관들을 설정하기를 원한다고 가정한다.
도 6a는 장치들(501-505) 중 어느 것도 임의의 그룹 키들을 이용하여 미리 구성되지 않는 초기 상황을 도시한다.
도 6b는 전술되고 점선(606)으로 도시된 것처럼, PIN 또는 패스워드에 기반하는 수동 쌍화를 포함하는 장치들(501 및 502) 사이의 제1 쌍화 단계를 도시한다. 이 쌍화 단계 및 후속 보안성 연관 교환은, 두 장치에 키 K1이 저장되게 한다.
도 6c는 장치들(503 및 504) 사이의 후속 쌍화 후 상황을 도시한다. 장치들 중 어느 것도 그룹 키를 저장하지 않았으므로, 장치들은 점선(607)으로 표시된 것처럼 PIN 또는 패스워드에 기반하여 수동 쌍화를 수행한다. 인증 및 암호화로의 전환 후, 장치들 중 하나는 신뢰된 그룹 키 K2를 생성하고 생성된 키를 다른 장치로 전송한다. 두 장치는 각각의 데이터베이스에 신뢰된 그룹 키 K2를 저장한다.
도 6d는 장치들(501 및 505)의 후속 연결 후 상황을 도시한다. 또한, 장치들(501 및 505)은 점선(608)으로 표시된 것처럼 수동 쌍화를 수행하고, 장치(501)는 신뢰된 그룹 키 K1을 장치(505)로 전송하고 여기에 키 K1이 저장된다.
도 6e는 장치들(504 및 505)의 후속 연결 후 상황을 도시한다. 연결 전에, 장치(504)는 저장된 키 K2만을 가지며, 장치(505)는 저장된 키 K1만을 가진다. 그러므로, 장치들은 공통 키를 가지지 않고, 장치들은 점선(609)으로 표시된 것처럼 수동 쌍화를 수행한다. 이어서, 장치들은 각각의 키 K1 및 K2를 교환한다. 그러므로, 결과로서, 두 키 K1 및 K2는 이제 두 장치(504 및 505)에 저장된다.
마지막으로, 도 6f는 장치들(502 및 503)의 후속 연결 후 상황을 도시한다. 연결 전에, 장치(502)는 저장된 키 K1만을 가지며, 장치(503)는 저장된 키 K2만을 가진다. 그러므로, 장치들은 공통 키를 가지지 않고, 장치들은 점선(610)으로 표시된 것처럼 수동 쌍화를 수행한다. 이어서, 장치들은 각각의 키 K1 및 K2를 교환한다. 그러므로, 결과로서, 두 키 K1 및 K2는 이제 두 장치(502 및 503)에 저장된다.
그러므로, 이 예에서, 5개의 수동 쌍화 후, 모든 5개의 장치(n=5)는 모든 다른 장치들과 적어도 하나의 공통 신뢰된 그룹 키를 가진다. 그러므로, 상기 절차는 n-1보다는 많지만 n(n-1)/2보다는 적은 수동 쌍화를 요구하는 절차의 예이다.
전술한 실시예들에서, 두 장치는 각각의 그룹 키 목록을 한 번 이상 교환할 수 있다는 것을 이해해야 한다. 예를 들어, 이전에 그룹 키 목록을 교환했던 두 장치가 후속 세션(session)에서 다시 연결될 때, 장치들은 각각의 신뢰된 그룹 키 목록을 다시 교환할 수 있다. 두 장치의 최초 연결 후의 시간 동안, 하나 또는 두 장치는 하나 이상의 다른 장치들과의 쌍화로 인해 각각의 그룹 키 목록을 확장했을 수 있다. 이러한 확장은, 장치들이 다시 연결될 때 두 장치 중 대응하는 다른 하나로 전파될 수 있으므로, 키 분배의 효율성, 및 장치들 중 하나가 처음으로 새로운 장치에 연결한 경우에 이용가능한 적어도 하나의 공통 보안성 연관이 존재할 가능성을 향상시킬 수 있다. 그러므로, 일 실시예에서, 장치들은 연결될 때마다 보안성 연관의 목록을 교환하고, 임의의 경우, 각각의 다른 장치의 목록으로부터, 새로운 보안성 연관을 이용하여 각각의 목록을 확장한다.
이 명세서에서 사용되었을 때 "포함한다/포함하는"이라는 용어는, 기술된 특징들, 정수들, 단계들 또는 구성요소들의 존재를 특정하기 위해 사용되지만, 하나 이상의 다른 특징들, 정수들, 단계들, 구성요소들 또는 그들의 그룹들의 존재 또는 추가를 배제하지 않는다는 것을 주목해야 한다.
본 발명의 바람직한 실시예들이 설명되고 도시되었지만, 본 발명은 이에 한정되는 것이 아니라, 다음의 특허청구범위에 정의된 요지의 범위 내에서 다른 방식으로 실시될 수도 있다. 예를 들어, 본 발명이 주로 무선 통신 기술과 관련하여 설명되었지만, 본 발명은 유선 통신 시나리오에도 적용될 수 있다.

Claims (12)

  1. 통신 링크를 통해 제1(A) 및 제2(B) 통신 장치 사이에 보안된 피어 투 피어(peer-to-peer) 통신을 설정하는 방법 - 각각의 통신 장치는 대응하는 통신 장치와 다른 통신 장치들 사이의 이전에 설정된 보안성 연관들(security associations)(214, 215)의 각각의 세트를 저장함 - 으로서,
    - 상기 제1 및 제2 통신 장치가 설정된 보안성 연관들의 각각의 세트들에 공통 보안성 연관을 가지는지를 판정하는 단계(201, 202; 401, 402);
    - 상기 제1 및 제2 통신 장치가 공통 보안성 연관(KIC, KC)을 가진다고 판정했다면, 상기 판정된 공통 보안성 연관에 기반하여 상기 제1 및 제2 통신 장치 사이의 상기 통신 링크를 보호하고(204, 207; 404, 407), 그렇지 않다면, 상기 제1 및 제2 통신 장치 사이에 새로운 보안성 연관을 설정하고(206; 406), 상기 새로운 보안성 연관에 기반하여 상기 통신 링크를 보호하는(207; 407) 단계; 및
    - 상기 보호된 통신 링크를 통해 대응하는 키 데이터를 전달함으로써, 상기 제1 및 제2 통신 장치 중 대응하는 다른 것으로, 상기 제1 및 제2 통신 장치의 이전에 설정된 보안성 연관들의 상기 세트들을 확장하는 단계(208, 209, 210, 211; 408, 409, 410, 411, 412, 413)
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 제1 및 제2 통신 장치 사이에 새로운 보안성 연관을 설정하는 단계는, 상기 제1 및 제2 통신 장치 중 적어도 하나에 의해 사용자 입력을 수신하는 단계를 포함하고, 상기 사용자 입력은 상기 대응하는 다른 통신 장치가 신뢰된 장치(trusted device)인지 여부를 표시하고, 상기 이전에 설정된 보안성 연관의 세트를 확장하는 단계는, 상기 수신된 사용자 입력이 상기 대응하는 다른 통신 장치가 신뢰된 장치인 것으로 표시하였을 경우에만 수행되는 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 제1 및 제2 통신 장치들 중 하나의 이전에 설정된 보안성 연관들의 세트의 각각의 이전에 설정된 보안성 연관은, 소정 그룹의 통신 장치들을 식별하는 그룹 식별자와 관련하여 저장되고, 상기 이전에 설정된 보안성 연관들을 확장하는 단계는, 소정의 그룹 식별자와 관련된 이전에 설정된 보안성 연관들로 한정되는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 보안성 연관은 대칭 키(symmetric-key) 보안성 메커니즘에 기반하는 방법.
  5. 제4항에 있어서,
    상기 이전에 설정된 보안성 연관들의 세트는 대응하는 개인 키들(private keys)의 세트를 포함하고, 각각의 개인 키는 대응하는 개인 키 인덱스(index)와 관련하여 저장되는 방법.
  6. 제5항에 있어서,
    상기 제1 및 제2 통신 장치가 공통 보안성 연관을 가지는지를 판정하는 단계는, 상기 제1 및 제2 통신 장치들 중 하나로부터 상기 대응하는 다른 통신 장치로 적어도 제1 개인 키 인덱스를 전송하는 단계(201)와, 상기 다른 통신 장치에 의해 저장된 적어도 하나의 개인 키 인덱스와 상기 제1 개인 키 인덱스를 비교하는 단계(202)를 포함하고,
    상기 이전에 설정된 보안성 연관들의 세트들을 확장하는 단계는, 상기 제1 장치로부터 상기 제2 장치로 적어도 개인 키 및 대응하는 개인 키 인덱스를 전송하는 단계(210)를 포함하는 방법.
  7. 제5항 또는 제6항에 있어서,
    - 각각이 상기 제1 통신 장치에 의해 저장된 상기 개인 키들 중 대응하는 것을 식별하는 다수의 개인 키 인덱스들을 상기 제1 통신 장치로부터 상기 제2 통신 장치로 전달하는 단계(201);
    - 기존의 공통 개인 키를 식별하기 위해 상기 제2 통신 장치에 의해 저장된 상기 개인 키 인덱스들과 상기 수신된 다수의 개인 키 인덱스들을 비교하는 단계 (202);
    - 기존의 공통 개인 키가 식별된 경우, 공통 비밀 키(secret key)를 설정하기 위해서 상기 기존의 공통 개인 키에 기반하여 인증된 키 교환을 수행하고(204), 그렇지 않은 경우, 상기 공통 비밀 키를 설정하기 위해 사용자 상호작용을 포함하는 키 교환을 수행하는 단계(206);
    - 상기 설정된 공통 비밀 키를 사용하여 상기 통신 링크를 보호하는 단계(207);
    - 상기 제1 통신 장치로부터 상기 제2 통신 장치로 제1 다수의 개인 키들 및 대응하는 개인 키 인덱스들을 전송하고(210), 상기 제1 다수의 수신된 개인 키들 및 개인 키 인덱스들로, 상기 제2 통신 장치의 상기 이전에 설정된 보안성 연관들의 세트를 갱신하는(211) 단계; 및
    - 상기 제2 통신 장치로부터 상기 제1 통신 장치로 제2 다수의 개인 키들 및 대응하는 개인 키 인덱스들을 전송하고(208), 상기 제2 다수의 수신된 개인 키들 및 개인 키 인덱스들로, 상기 제1 통신 장치의 상기 이전에 설정된 보안성 연관들의 세트를 갱신하는(209) 단계를 포함하는 방법.
  8. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 보안성 연관은 공개 키(public-key) 보안성 메커니즘에 기반하고, 상기 이전에 설정된 보안성 연관들의 세트는 이전에 설정된 공개 키들 및 대응하는 인증서 체인들(certificate chains)의 세트를 포함하고, 각각의 인증서 체인은 적어도 하나의 인증서를 포함하는 방법.
  9. 제8항에 있어서,
    상기 제1 및 제2 통신 장치가 공통 보안성 연관을 가지는지를 판정하는 단계는, 상기 제1 및 제2 통신 장치들 중 하나로부터 상기 대응하는 다른 통신 장치로 적어도 제1 공개 키를 식별하는 적어도 제1 데이터 아이템(item)을 전송하는 단계(401)와, 상기 다른 통신 장치에 의해 저장된 적어도 하나의 공개 키를 식별하는 적어도 하나의 데이터 아이템과 상기 제1 데이터 아이템을 비교하는 단계(402)를 포함하고,
    상기 이전에 설정된 보안성 연관을 확장하는 단계는, 상기 제1 장치로부터 상기 제2 장치로 대응하는 공개 키 및 대응하는 인증서 체인을 전송하는 단계(410)를 포함하는 방법.
  10. 제8항 또는 제9항에 있어서,
    - 각각이 상기 제1 통신 장치에 의해 저장된 상기 공개 키들 중 대응하는 것을 식별하는 다수의 데이터 아이템들을 상기 제1 통신 장치로부터 상기 제2 통신 장치로 전달하는 단계(401);
    - 기존의 공통 공개 키를 식별하기 위해 상기 제2 통신 장치에 의해 저장된 상기 공개 키들을 식별하는 대응하는 데이터 아이템들과 상기 수신된 다수의 데이터 아이템들을 비교하는 단계(402);
    - 기존의 공통 공개 키가 식별된 경우, 공통 비밀 키를 설정하기 위해 상기 기존의 공통 공개 키에 기반하여 인증된 키 교환을 수행하고(404), 그렇지 않은 경우, 상기 공통 비밀 키를 설정하기 위해서 사용자 상호작용을 포함하는 키 교환을 수행하는(406) 단계;
    - 상기 설정된 공통 비밀 키를 사용하여 상기 통신 링크를 보호하는 단계(407);
    - 상기 제2 장치로부터 상기 제1 장치로 상기 제2 장치의 제1 공개 키를 전송하는 단계(408);
    - 상기 제1 통신 장치로부터 상기 제2 통신 장치로 제1 다수의 공개 키들 및 제1 다수의 인증서 체인들을 전송하는 단계(410) - 상기 제1 다수의 인증서 체인들의 각각은 상기 제1 다수의 공개 키들 중 대응하는 것에 대하여 상기 수신된 제1 공개 키를 인증함 - ;
    - 상기 제1 다수의 수신된 공개 키들 및 대응하는 인증서 체인들로, 상기 제2 통신 장치의 상기 이전에 설정된 보안성 연관들의 세트를 갱신하는 단계(411);
    - 상기 제1 장치로부터 상기 제2 장치로 상기 제1 장치의 제2 공개 키를 전송하는 단계(410);
    - 상기 제2 통신 장치로부터 상기 제1 통신 장치로 제2 다수의 공개 키들 및 제2 다수의 인증서 체인들을 전송하는 단계(412) - 상기 제2 다수의 인증서 체인들의 각각은 상기 제2 다수의 공개 키들 중 대응하는 것에 대하여 상기 수신된 제2 공개 키를 인증함 - ; 및
    - 상기 제2 다수의 수신된 공개 키들 및 대응하는 인증서 체인들로, 상기 제1 통신 장치의 상기 이전에 설정된 보안성 연관들의 세트를 갱신하는 단계(413)를 포함하는 방법.
  11. 통신 시스템의 다른 이러한 통신 장치들과의 피어 투 피어 통신을 용이하게 하는 통신 장치(101)로서,
    대응하는 통신 장치와 다른 통신 장치들 사이의 이전에 설정된 보안성 연관들의 세트를 저장하는 저장 수단(104);
    통신 링크(105)를 통해 다른 통신 장치와 통신하는 통신 수단(103); 및
    처리 수단(102)으로서,
    - 상기 통신 장치가 상기 설정된 보안성 연관들의 세트에, 상기 다른 통신 장치의 보안성 연관에 대응하는 공통 보안성 연관을 가지는지를 판정하는 단계와,
    - 상기 통신 장치가 공통 보안성 연관을 가진다고 판정했다면, 상기 판정된 공통 보안성 연관에 기반하여 상기 통신 링크를 보호하고, 그렇지 않다면, 상기 다른 통신 장치와 새로운 보안성 연관을 설정하고, 상기 새로운 보안성 연관에 기반하여 상기 통신 링크를 보호하는 단계와,
    - 상기 보호된 통신 링크를 통해 대응하는 키 데이터를 전달함으로써, 상기 다른 통신 장치로, 상기 이전에 설정된 보안성 연관들의 세트를 확장하는 단계를 수행하는 처리 수단
    을 포함하는 통신 장치.
  12. 통신 시스템의 다른 이러한 통신 장치들과의 피어 투 피어 통신을 용이하게 하고, 대응하는 통신 장치와 다른 통신 장치들 사이의 이전에 설정된 보안성 연관들의 세트를 저장하는 저장 수단, 통신 링크를 통해 다른 통신 장치와 통신하는 통신 수단, 및 처리 수단을 포함하는 통신 장치의 상기 처리 수단에서 실행할 때,
    - 상기 통신 장치가 상기 설정된 보안성 연관들의 세트에, 상기 다른 통신 장치의 보안성 연관에 대응하는 공통 보안성 연관을 가지는지를 판정하는 단계와,
    - 상기 통신 장치가 공통 보안성 연관을 가진다고 판정했다면, 상기 판정된 공통 보안성 연관에 기반하여 상기 통신 링크를 보호하고, 그렇지 않다면, 상기 다른 통신 장치와 새로운 보안성 연관을 설정하고, 상기 새로운 보안성 연관에 기반하여 상기 통신 링크를 보호하는 단계와,
    - 상기 보호된 통신 링크를 통해 대응하는 키 데이터를 전달함으로써, 상기 다른 통신 장치로, 상기 이전에 설정된 보안성 연관들의 세트를 확장하는 단계를 수행하는 컴퓨터 프로그램.
KR1020057020435A 2003-04-28 2004-04-06 통신망에서의 보안성 Ceased KR20060027311A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP03388027.9 2003-04-28
EP03388027A EP1473899A1 (en) 2003-04-28 2003-04-28 Security in a communications network
US46747603P 2003-05-02 2003-05-02
US60/467,476 2003-05-02

Publications (1)

Publication Number Publication Date
KR20060027311A true KR20060027311A (ko) 2006-03-27

Family

ID=33420605

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057020435A Ceased KR20060027311A (ko) 2003-04-28 2004-04-06 통신망에서의 보안성

Country Status (3)

Country Link
JP (1) JP2006526314A (ko)
KR (1) KR20060027311A (ko)
WO (1) WO2004098145A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100898341B1 (ko) * 2006-12-06 2009-05-20 한국전자통신연구원 P2p 네트워크에서 피어간 간접 신뢰 바인딩 형성 방법

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7778422B2 (en) * 2004-02-27 2010-08-17 Microsoft Corporation Security associations for devices
JP4701706B2 (ja) * 2004-12-22 2011-06-15 富士ゼロックス株式会社 情報処理装置、方法、及びプログラム
US7739513B2 (en) * 2005-02-22 2010-06-15 Sony Corporation Secure device authentication
US9398046B2 (en) 2008-03-06 2016-07-19 Qualcomm Incorporated Image-based man-in-the-middle protection in numeric comparison association models
US8873757B2 (en) * 2012-10-19 2014-10-28 Qualcom Incorporated Methods and apparatus for providing network-assisted key agreement for D2D communications
JP6627398B2 (ja) * 2015-10-13 2020-01-08 日本電気株式会社 代理認証装置、代理認証方法および代理認証プログラム
CN110971401B (zh) * 2019-11-19 2021-10-22 武汉大学 一种基于交叉互锁机制的认证密钥协商方法及其实施装置
CN117730555A (zh) * 2021-07-23 2024-03-19 华为技术有限公司 一种地址验证方法及相应的装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6092201A (en) * 1997-10-24 2000-07-18 Entrust Technologies Method and apparatus for extending secure communication operations via a shared list
EP1102430A1 (en) * 1999-10-27 2001-05-23 Telefonaktiebolaget Lm Ericsson Method and arrangement in an ad hoc communication network
US7003662B2 (en) * 2001-05-24 2006-02-21 International Business Machines Corporation System and method for dynamically determining CRL locations and access methods
DE10142959A1 (de) * 2001-09-03 2003-04-03 Siemens Ag Verfahren, System und Rechner zum Aushandeln einer Sicherheitsbeziehung auf der Anwendungsschicht

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100898341B1 (ko) * 2006-12-06 2009-05-20 한국전자통신연구원 P2p 네트워크에서 피어간 간접 신뢰 바인딩 형성 방법

Also Published As

Publication number Publication date
WO2004098145A1 (en) 2004-11-11
JP2006526314A (ja) 2006-11-16

Similar Documents

Publication Publication Date Title
US20070055877A1 (en) Security in a communication network
KR100983050B1 (ko) 네트워크 엔티티들 사이에서 데이터 협정을 인증하기 위한시스템, 방법 및 컴퓨터 프로그램 제품
JP4481574B2 (ja) ネットワーク媒体上で通信を認証するための方法
US7793103B2 (en) Ad-hoc network key management
JP7619746B2 (ja) セキュアアクセス方法および装置
US9113330B2 (en) Wireless authentication using beacon messages
Chen et al. Lightweight and provably secure user authentication with anonymity for the global mobility network
TW478269B (en) Method and apparatus for initializing mobile wireless devices
US8656153B2 (en) Authentication access method and authentication access system for wireless multi-hop network
KR100943683B1 (ko) 데이터 전송 안전 확보 방법, 통신 시스템 및 통신 장치
CN112566119B (zh) 终端认证方法、装置、计算机设备及存储介质
JP4561704B2 (ja) 無線通信システム、端末およびその状態報知方法ならびにプログラム
US20070079113A1 (en) Automatic secure device introduction and configuration
JP2003500923A (ja) セキュア通信をイニシャライズし、装置を排他的にペアリングする方法、コンピュータ・プログラムおよび装置
Phan et al. Analyzing the secure simple pairing in Bluetooth v4. 0
EP3068091B1 (en) Network configuration method, and related device and system
JP2009212732A (ja) 通信装置、及び通信方法
CN103873487A (zh) 一种基于智能家居设备安全挂件的家居信任组网的实现方法
JP2009525660A (ja) アドホックシナリオのようなグループにおける、認証されたグループ鍵の共有
Noh et al. Secure authentication and four-way handshake scheme for protected individual communication in public wi-fi networks
KR20060027311A (ko) 통신망에서의 보안성
WO2008004174A2 (en) Establishing a secure authenticated channel
JP2005323149A (ja) 無線通信システム
WO2022109941A1 (zh) 应用于WiFi的安全认证的方法和装置
JP2017135599A (ja) 無線基地局装置、無線通信システム、及び、無線基地局装置の制御方法

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20051027

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20081226

Comment text: Request for Examination of Application

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

Comment text: Notification of reason for refusal

Patent event date: 20100824

Patent event code: PE09021S01D

E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20101028

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20100824

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I