KR20150040316A - 하이브리드 다중 소스 암호해제를 위한 시스템 및 방법 - Google Patents

하이브리드 다중 소스 암호해제를 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20150040316A
KR20150040316A KR1020157005101A KR20157005101A KR20150040316A KR 20150040316 A KR20150040316 A KR 20150040316A KR 1020157005101 A KR1020157005101 A KR 1020157005101A KR 20157005101 A KR20157005101 A KR 20157005101A KR 20150040316 A KR20150040316 A KR 20150040316A
Authority
KR
South Korea
Prior art keywords
frame
key
security key
hardware
secret key
Prior art date
Application number
KR1020157005101A
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
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20150040316A publication Critical patent/KR20150040316A/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
    • 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/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • 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
    • 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/068Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing 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/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/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • 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/041Key generation or derivation
    • 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/0433Key management protocols
    • 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)
  • Small-Scale Networks (AREA)

Abstract

다중 소스들로부터 암호화된 통신들을 수신하는 통신 디바이스의 성능을 개선시키기 위한 시스템들 및 방법들이 기재된다. 통신 디바이스는, 소스로부터 수신된 프레임에 대응하는 공유 보안 키를 저장하기 위해 하드웨어를 리프로그래밍함으로써 소프트웨어-기반 프로세스와 비교하여 하드웨어-기반 프로세스를 사용하여 수행된 암호해제의 양을 증가시키도록 구성되며, 하드웨어-기반 프로세스가 그 소스로부터의 후속 프레임들을 암호해제하게 한다.

Description

하이브리드 다중 소스 암호해제를 위한 시스템 및 방법{SYSTEM AND METHOD FOR HYBRID MULTIPLE SOURCE DECRYPTION}
본 발명은 일반적으로 암호화된 통신 시스템들에 관한 것으로, 더 상세하게는, 하이브리드 하드웨어 및 소프트웨어 기반 구현들을 사용하여 다중 소스들로부터 암호화된 통신들을 수신하는 디바이스의 성능을 용이하게 하기 위한 시스템들 및 방법들에 관한 것이다.
공유 키 암호화는, 2개의 파티들 사이의 통신들을 보안(secure)시키기 위한 인기있고 효율적인 방법이다. 그러한 시스템들에서, 암호적으로 고유한 "키"는 둘 모두의 파티들에 의해 사용되어, 그들 사이에서 통신되는 데이터를 암호화 및 암호해제한다. 패킷-기반 통신에서, 이것은, 송신기가 프레임을 수신기에 전송하기 전에 보안 키를 이용하여 각각의 프레임을 암호화하는 것을 수반할 수도 있다. 일반적인 현재의 예는, Wi-Fi 보호된 액세스 II(WPA2)와 같은 보안 프로토콜 하에서 동작하는 IEEE 802.11-기반 무선 로컬 영역 네트워크(WLAN)이다. 예를 들어, 액세스 포인트(AP)는, 자신의 기본 서비스 세트(BSS) 내의 각각의 스테이션(STA)과의 각각의 세션에 대해 개별 보안 키를 보유할 수도 있다. 유사하게, STA는 1개 초과의 BSS와 연관될 수도 있으며, 각각의 AP와의 각각의 세션에 대해 개별 보안 키를 보유하도록 STA에게 요구한다. 유선 또는 무선에 관계없이 임의의 형태의 통신, 특히 무선의 맥락에서 상황이 존재할 수도 있지만, 통신 디바이스는 다수의 스트림들의 암호화된 정보를 동시에 수신할 수도 있으며, 각각의 스트림은 적절히 암호해제하도록 개별 보안 키를 요구한다.
종래의 구현들 하에서, 통신 디바이스는, 디바이스의 수신기의 상위 로직 계층들의 수반 없이 어떤 보안 키를 적용할지에 관한 정보를 전진(advance)시키기 위한 액세스를 갖지 않을 수도 있다. 그러나, 성능을 개선시키기 위해 암호해제 동안 상위 로직 계층들의 수반을 최소화시키는 것이 또한 바람직할 수도 있다. 인식될 바와 같이, 매체 액세스 제어(MAC) 계층과 같은 통신 디바이스의 하위 로직 계층들 중 하나에서 하드웨어로 구현된 암호해제 모듈은, 상위 로직 계층들의 소프트웨어로 구현된 암호해제 프로세스와 비교하여 효율에서 상당한 이점들을 제공할 수도 있다. 예를 들어, 하드웨어 기반 암호해제 모듈은 더 적은 전력을 소비하면서, 여전히 더 신속하게 동작할 수도 있다. 그러나, 상술된 바와 같이, 통신 디바이스는 하위 로직 계층들에서의 암호화된 정보의 각각의 스트림의 소스를 결정하도록 구성되지 않을 수도 있다.
결과로서, 통신 디바이스는 하드웨어-기반 암호해제 모듈에 단일 보안 키를 보유하도록 구성될 수도 있으며, 그 하드웨어가 효율적인 방식으로 그 보안 키와 연관된 단일 소스로부터의 정보를 정확하게 암호해제하게 한다. 다른 소스들로부터의 암호화된 정보는, 통신 디바이스의 상위 로직 계층들 중 하나 또는 그 초과에서 구현된 소프트웨어 기반 암호해제 모듈을 사용하여 통신 디바이스가 다른 소스들로부터의 정보를 암호해제하도록 구성되는 것을 요구하여, 하드웨어에 의해 정확히 암호해제되지 않을 수도 있다. 소프트웨어가 다중 소스들로부터의 정보의 스트림들을 정확히 암호해제하기에 충분한 유연성(flexibility)을 가질 수도 있지만, 하드웨어-기반 암호해제와 비교하여 성능은 손해를 본다. 소프트웨어 기반 암호해제 모듈을 동작시키는 프로세서가 매우 강력하지 않거나 모순된(competing) 요구들을 겪으면, 수용가능한 속도들로 통신들을 암호해제하는 것이 가능하지 않을 수도 있다.
그러한 조건들의 관점에서, 다중 소스들로부터의 정보 스트림들의 개선된 암호해제를 제공하는 통신 디바이스를 제공하는 것이 바람직할 것이다. 추가적으로, 소프트웨어 기반 모듈을 사용하여 수행된 양과 비교하여 하드웨어 기반 모듈을 사용하여 수행된 암호해제의 양을 증가시키는 통신 디바이스를 제공하는 것이 바람직할 것이다. 본 발명은 이들 및 다른 목적들을 달성한다.
상기 필요성들 및 언급되고 아래에서 명백해질 것들에 따르면, 본 명세서는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스를 기재하고, 여기서, 각각의 소스는 개별 보안 키를 가지며, 그 통신 디바이스는, 인커밍(incoming) 프레임들을 암호해제하기 위한 저장된 보안 키를 갖는 하드웨어 부분, 및 인커밍 프레임들을 암호해제하기 위한 소프트웨어 부분을 포함하며, 여기서, 하드웨어 부분은 저장된 보안 키를 사용하여 인커밍 프레임들을 프로세싱하도록 구성되고, 소프트웨어 부분은, 저장된 보안 키가 제 1 보안 키이고 하드웨어 부분에 의한 제 1 프레임의 프로세싱이 무결성(integrity) 에러를 초래하는 경우, 제 1 소스로부터의 인커밍 제 1 프레임에 대한 정확한 보안 키를 결정하고, 제 1 프레임에 대하여 소프트웨어 부분에 의해 결정된 정확한 보안 키에 대응하는 제 2 보안 키를 저장하기 위해 하드웨어 부분을 리프로그래밍하도록 구성된다.
본 발명의 추가적인 양상은, 소프트웨어 부분이 또한, 프레임이 하드웨어 부분에 의해 프로세싱된 이후 제 1 보안 키를 이용하여 제 1 프레임을 암호화하고 후속하여 제 2 보안 키를 이용하여 제 1 프레임을 암호해제할 수도 있다는 것이다. 부가적으로, 소프트웨어 부분은, 제 1 프레임에 후속하여 수신된 인커밍 제 2 프레임을 제 2 보안 키를 이용하여 암호해제하며, 하드웨어 부분에 의한 제 2 프레임의 프로세싱이 무결성 에러를 초래하지 않지만 키 미스(miss) 에러를 초래하는 경우, 하드웨어 부분의 저장된 보안 키로서 제 2 보안 키를 보유하도록 구성될 수도 있다.
일 실시예에서, 하드웨어 부분은 추가적으로, 제 1 프레임에 후속하여 수신된 인커밍 제 2 프레임을 프로세싱하도록 구성될 수도 있으며, 여기서, 통신 디바이스는, 저장된 보안 키가 제 2 보안 키이고 하드웨어 부분을 이용하여 제 2 프레임을 프로세싱하는 것이 무결성 에러 또는 키 미스 에러를 초래하지 않는 경우, 제 2 프레임이 하드웨어 부분에 의해 정확히 암호해제된다고 결정하도록 구성된다. 추가적으로, 소프트웨어 부분은, 저장된 보안 키가 제 2 보안 키이고 하드웨어 부분에 의한 제 3 프레임의 프로세싱이 무결성 에러를 초래하는 경우, 제 2 소스로부터의 인커밍 제 3 프레임에 대해 정확한 보안 키를 결정하며, 제 3 프레임에 대하여 소프트웨어 부분에 의해 결정된 정확한 보안 키에 대응하는 제 2 보안 키를 저장하기 위해 하드웨어 부분을 리프로그래밍하도록 구성될 수도 있다.
본 발명의 몇몇 실시예들은, WPA-기반 암호 프로토콜을 이용하는 WLAN에서 노드를 포함하는 통신 디바이스에 관한 것이다. 그러한 실시예들에서, 보안 키들은 PTK(pairwise transient key)들일 수도 있다. 추가적으로, 통신 디바이스는 인터페이스에 의해 WLAN 모듈에 커플링된 호스트 CPU를 포함할 수도 있으며, 여기서, 하드웨어 부분은 WLAN 모듈로 구현되고, 소프트웨어 부분은 호스트 CPU로 구현된다. 추가적으로, 하드웨어 부분은 WLAN 모듈의 매체 액세스 제어 계층에서 구현될 수도 있다.
본 발명은 또한, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호화하기 위한 방법에 관한 것이고, 여기서, 각각의 소스는 개별 보안 키를 가지며, 그 방법은, 저장된 보안 키를 사용하여 제 1 소스로부터 수신된 제 1 인커밍 프레임에 대해 하드웨어-기반 암호해제 프로세스를 수행하는 단계, 저장된 보안 키가 제 1 보안 키인 경우 제 1 프레임을 프로세싱할 때에 무결성 에러를 수신하는 단계, 제 1 프레임에 대해 정확한 보안 키의 소프트웨어-기반 결정을 수행하는 단계, 및 제 1 보안 키로부터 제 2 보안 키로 저장된 보안 키를 리프로그래밍하는 단계를 포함하며, 여기서, 제 2 보안 키는 제 1 프레임에 대해 결정된 정확한 보안 키에 대응한다.
추가적으로, 방법은, 하드웨어-기반 암호해제 프로세스를 수행한 이후 제 1 보안 키를 사용하여 제 1 프레임에 대해 소프트웨어-기반 암호화 프로세스를 수행하는 단계, 및 제 2 보안 키를 사용하여 제 1 프레임에 대해 소프트웨어-기반 암호해제 프로세스를 수행하는 단계를 포함할 수도 있다. 부가적으로, 하드웨어-기반 암호해제 프로세스는 제 1 프레임에 후속하여 수신된 인커밍 제 2 프레임에 대해 수행될 수도 있고, 무결성 에러가 아니라 키 미스 에러가 수신될 수도 있고, 소프트웨어-기반 암호해제 프로세스는 제 2 보안 키를 이용하여 제 2 프레임에 대해 수행될 수도 있으며, 제 2 보안 키는 저장된 보안 키로서 보유될 수도 있다.
다른 양상은, 저장된 보안 키가 제 2 보안 키인 경우 제 1 프레임에 후속하여 수신된 인커밍 제 2 프레임에 대해 하드웨어-기반 암호해제 프로세스를 수행하는 단계, 및 어떠한 무결성 에러 또는 키 미스 에러가 수신되지 않는 경우, 제 2 프레임이 하드웨어-기반 암호해제 프로세스에 의해 정확히 암호해제된다고 결정하는 단계를 포함한다. 부가적으로, 언급된 방법은 또한, 저장된 보안 키를 사용하여 제 2 소스로부터 수신된 제 3 인커밍 프레임에 대해 하드웨어-기반 암호해제 프로세스를 수행하는 단계, 저장된 보안 키가 제 1 보안 키인 경우 제 1 프레임을 프로세싱할 때 무결성 에러를 수신하는 단계, 제 3 프레임에 대해 정확한 보안 키의 소프트웨어-기반 결정을 수행하는 단계, 및 제 2 보안 키로부터 제 3 보안 키로 저장된 보안 키를 리프로그래밍하는 단계를 포함할 수도 있으며, 여기서, 제 3 보안 키는 제 3 프레임에 대해 결정된 정확한 보안 키에 대응한다.
일 실시예에서, 방법은, WPA-기반 암호화 프로토콜을 이용하는 WLAN에서 노드를 포함할 수도 있는 통신 디바이스를 수행될 수도 있다. 그러한 실시예들에서, 보안 키들은 PTK(pairwise transient key)들일 수도 있다. 추가적으로, 통신 디바이스는 인터페이스에 의해 WLAN 모듈에 커플링된 호스트 CPU를 포함할 수도 있으며, 여기서, 하드웨어-기반 암호해제 프로세스는 WLAN 모듈에 의해 수행되고, 소프트웨어-기반 암호해제 프로세스는 호스트 CPU에서 수행된다. 바람직하게, 하드웨어-기반 암호해제 프로세스는 WLAN 모듈의 매체 액세스 제어 계층에서 수행될 수도 있다.
추가적인 특성들 및 이점들은, 첨부한 도면들에 도시된 바와 같이, 본 발명의 바람직한 실시예들의 다음의 그리고 더 상세한 설명으로부터 명백해질 것이며, 도면들에서, 동일한 참조 부호들은 일반적으로 도면들 전반에 걸쳐 동일한 부분들 또는 엘리먼트들을 지칭한다.
도 1은 본 발명의 일 실시예에 따른 무선 통신 시스템을 도시한다.
도 2는 WPA2 프로토콜과 함께 사용된 보안 키들의 계층 및 그들을 생성하는데 사용된 프로세스들을 도시한다.
도 3은 본 발명의 일 실시예에 따른 WLAN 디바이스의 기능 블록들을 개략적으로 도시한다.
도 4는 본 발명의 일 실시예에 따른, 다중 소스들로부터 수신된 프레임들을 암호해제하기 위해 WLAN 디바이스의 하드웨어 부분을 리프로그래밍하기 위한 루틴을 도시한 흐름도를 도시한다.
처음으로, 본 발명이 특정하게 예시된 재료들, 아키텍처들, 루틴들, 방법들 또는 구조들(물론 그러한 것들은 변할 수도 있음)로 제한되지 않음을 이해할 것이다. 따라서, 본 명세서에 설명된 것들과 유사하거나 동등한 다수의 그러한 옵션들이 본 발명의 실행 또는 실시예들에서 사용될 수 있지만, 바람직한 재료들 및 방법들이 본 명세서에서 설명된다.
본 명세서에서 사용된 용어는 본 발명의 특정한 실시예들만을 설명하려는 목적을 위한 것이며 제한하도록 의도되지 않음을 또한 이해할 것이다.
후속하는 상세한 설명들의 몇몇 부분들은, 컴퓨터 메모리 내의 데이터 비트들에 대한 절차들, 로직 블록들, 프로세싱 및 동작들의 다른 심볼 표현들의 관점들에서 제시된다. 이들 설명들 및 표현들은, 그들의 작업의 본질을 당업자들에게 가장 효율적으로 전달하기 위하여 데이터 프로세싱 분야의 당업자들에 의해 사용되는 수단이다. 본 발명의 명세서에서, 절차, 로직 블록, 프로세스 등은 원하는 결과를 유도하는 단계들 또는 명령들의 자체-일관성있는(self-consistent) 시퀀스인 것으로 인지된다. 단계들은, 물리 양들의 물리적 조작들을 요구하는 단계들이다. 반드시 필요한 것은 아니지만 일반적으로, 이들 양들은, 컴퓨터 시스템에서 저장, 전달, 결합, 비교, 및 그렇지 않으면 조작될 수 있는 전기 또는 자기 신호들의 형태를 취한다.
그러나, 이들 및 유사한 용어들 모두가 적절한 물리 양들과 연관될 것이며, 단지 이들 양들에 적용된 편리한 라벨들임을 유념해야 한다. 다음의 설명으로부터 명백한 바와 같이 달리 상세하게 나타내지 않으면, 본 명세서 전반에 걸쳐 "액세싱", "수신", "전송", "사용", "선택", "결정", "정규화", "곱셈", "평균", "모니터링", "비교", "적용", "업데이팅", "측정", "도출" 등과 같은 용어들을 이용하는 설명들이, 컴퓨터 시스템의 레지스터들 및 메모리들 내의 물리(전자) 양들로서 표현된 데이터를 조작하며, 그 데이터를, 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 그러한 정보 저장, 송신 또는 디스플레이 디바이스들 내의 물리 양들로서 유사하게 표현된 다른 데이터로 변환하는 컴퓨터 시스템, 또는 유사한 전자 컴퓨팅 디바이스의 동작들 및 프로세스들을 지칭함을 인식한다.
본 명세서에 설명된 실시예들은, 하나 또는 그 초과의 컴퓨터들 또는 다른 디바이스들에 의해 실행되는 프로그램 모듈들과 같은 몇몇 형태의 컴퓨터-사용가능 매체 상에 상주하는 컴퓨터-실행가능 명령들의 일반적인 맥락에서 설명될 수도 있다. 일반적으로, 프로그램 모듈들은, 특정한 태스크들을 수행하거나 특정한 추상 데이터 타입들을 구현하는 루틴들, 프로그램들, 오브젝트들, 컴포넌트들, 데이터 구조들 등을 포함한다. 프로그램 모듈들의 기능은 다양한 실시예들에서 원하는 바와 같이 결합 또는 분배될 수도 있다.
제한이 아닌 예로서, 컴퓨터-사용가능 매체들은 컴퓨터 저장 매체들 및 통신 매체들을 포함할 수도 있다. 컴퓨터 저장 매체들은 컴퓨터-판독가능 명령들, 데이터 구조들, 프로그램 모듈들 또는 다른 데이터와 같은 정보의 저장을 위해 임의의 방법 또는 기술에서 구현된 휘발성 및 비휘발성, 착탈형 및 비-착탈형 매체들을 포함한다. 컴퓨터 저장 매체들은, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 전기적으로 소거가능한 프로그래밍가능 ROM(EEPROM), 및 플래시 메모리 또는 원하는 정보를 저장하는데 사용될 수 있는 임의의 다른 매체를 포함하지만 이에 제한되지는 않는다.
추가적으로, 실시예들은 무선 네트워크들을 특히 참조하여 설명된다. 그러므로, 본 발명은 필수적인 특성들을 갖는 임의의 적절한 무선 통신 시스템들에 적용가능하다. 적어도 AP 및 관련 STA를 피처링(feature)하는 인프라구조 WLAN을 특히 참조하여 설명되지만, 본 발명의 기술은, 송신기 디바이스 및 수신기 디바이스를 수반하는 애드혹 및 STA-투-STA 네트워크들을 포함하는 다른 무선 통신 시스템들 또는 다른 네트워크 구성들에 적용될 수도 있다. 따라서, 본 명세서에서 사용된 바와 같이, 용어 "스테이션"은, 802.11 인프라구조 네트워크 내의 종래의 스테이션과 동등한 역할을 갖는 무선 통신 네트워크 내의 임의의 노드를 의미할 수도 있으며, 유사하게, 용어 "액세스 포인트"는 종래의 액세스 포인트와 동등한 역할을 갖는 임의의 노드를 의미할 수도 있다. 추가적으로, 이들 기술들은, 유선 통신 시스템들을 포함하여 필수적인 특성들을 갖는 공유 키를 암호로 이용하는 임의의 타입의 통신 시스템으로 또한 확장될 수도 있다.
도면들에서, 단일 블록은 기능 또는 기능들을 수행하는 것으로서 설명될 수도 있지만, 실제 실시에서, 그 블록에 의해 수행된 기능 또는 기능들은 단일 컴포넌트에서 또는 다수의 컴포넌트들에 걸쳐 수행될 수도 있고 그리고/또는 하드웨어를 사용하여, 소프트웨어를 사용하여, 또는 하드웨어와 소프트웨어의 결합을 사용하여 수행될 수도 있다. 또한, 예시적인 무선 네트워크 디바이스들은, 프로세서, 메모리 등과 같은 잘 알려진 컴포넌트들을 포함하여, 도시된 것들 이외의 컴포넌트들을 포함할 수도 있다.
본 명세서에 설명된 기술들은, 특정한 방식으로 구현되는 것으로서 상세히 설명되지 않으면, 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 결합으로 구현될 수도 있다. 모듈들 또는 컴포넌트들로서 설명된 임의의 특성들은 또한, 집적 로직 회로에서 함께, 또는 별개이지만 상호동작가능한 로직 디바이스들로서 별개로 구현될 수도 있다. 소프트웨어로 구현되면, 기술들은, 실행된 경우 상술된 방법들 중 하나 또는 그 초과를 수행하는 명령들을 포함하는 유형의 컴퓨터-판독가능 저장 매체에 의해 적어도 부분적으로 실현될 수도 있다. 유형의 컴퓨터-판독가능 데이터 저장 매체는, 패키징 재료들을 포함할 수도 있는 컴퓨터 프로그램 물건의 일부를 형성할 수도 있다.
유형의 컴퓨터-판독가능 저장 매체는, 동기식 동적 랜덤 액세스 메모리(SDRAM)와 같은 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 비-휘발성 랜덤 액세스 메모리(NVRAM), 전기적으로 소거가능한 프로그래밍가능 판독-전용 메모리(EEPROM), FLASH 메모리, 자기 또는 광학 데이터 저장 매체들 등을 포함할 수도 있다. 부가적으로 또는 대안적으로, 기술들은, 명령들 또는 데이터 구조들의 형태로 코드를 반송 또는 통신하고 컴퓨터에 의해 액세싱, 판독, 및/또는 실행될 수 있는 컴퓨터-판독가능 통신 매체에 의해 적어도 부분적으로 실현될 수도 있다.
명령들은, 하나 또는 그 초과의 디지털 신호 프로세서(DSP)들, 범용 마이크로프로세서들, 주문형 집적회로(ASIC)들, 주문형 명령 세트 프로세서(ASIP)들, 필드 프로그래밍가능 게이트 어레이(FPGA)들, 또는 다른 등가의 집적 또는 이산 로직 회로와 같은 하나 또는 그 초과의 프로세서들에 의해 실행될 수도 있다. 본 명세서에서 사용된 바와 같이, 용어 "프로세서"는, 본 명세서에 설명된 기술들의 구현에 적절한 전술한 구조 및 임의의 다른 구조 중 임의의 구조를 지칭할 수도 있다. 부가적으로, 몇몇 양상들에서, 본 명세서에 설명된 기능은, 본 명세서에 설명된 바와 같이 구성된 전용 소프트웨어 모듈들 또는 하드웨어 모듈들 내에서 제공될 수도 있다. 또한, 기술들은 하나 또는 그 초과의 회로들 또는 로직 엘리먼트들에서 완전히 구현될 수 있다.
단지 편의성 및 명확화의 목적들을 위해, 상단, 하단, 좌측, 우측, 상향, 하향, 위쪽, 상부, 하부, 아래, 후면, 후방, 및 전면과 같은 방향 용어들은 첨부한 도면들 또는 특정한 실시예들에 대해 사용될 수도 있다. 이들 및 유사한 방향 용어들은, 임의의 방식으로 본 발명의 범위를 제한하도록 해석되지는 않아야 하며, 맥락에 의존하여 변할 수도 있다. 추가적으로, 제 1 및 제 2와 같은 순차적인 용어들은 유사한 엘리먼트들을 구별하는데 사용될 수도 있지만, 다른 순서들로 사용될 수도 있거나, 맥락에 의존하여 또한 변할 수도 있다.
달리 정의되지 않으면, 본 명세서에서 사용된 모든 기술적 및 과학적 용어들은, 본 발명이 관련되는 업계의 당업자들에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다.
추가적으로, 상기 또는 하기와는 관계없이 본 명세서에서 인용된 모든 공개물들, 특허들 및 특허 출원들은 그로써 그 전체가 인용에 의해 포함된다.
최종적으로, 본 명세서 및 첨부된 청구항들에서 사용된 바와 같이, 단수 형태들은, 콘텐츠가 달리 명확히 나타내지 않으면 복수의 지시물들을 포함한다.
상술된 바와 같이, 광범위하게 다양한 통신 디바이스들은 공유 키 암호화 시스템을 이용하도록 구성될 수도 있다. 특히, IEEE 802.11 표준을 사용하여 통신하는 무선 디바이스들은 WPA/WPA2 프로토콜들을 사용하는 암호화를 이용하여 보안될 수 있다. 도 1은, 각각의 스테이션이 AP(16)와 연관되도록 STA(12) 및 STA(14)를 포함하는 WLAN 환경(10)의 개략도이다. AP(16)와 STA들(12 및 14) 사이에서 전송되는 정보를 적절히 암호화 및 암호해제하기 위해, 개별적인 보안 키는 각각의 접속을 위해 사용될 수도 있어서, 제 1 보안키가 STA(12)와 AP(16) 사이의 통신들을 위해 사용될 수도 있게 하고, 제 2 보안키가 STA(14)와 AP(16) 사이의 통신들을 위해 사용될 수 있게 한다. STA(12) 및 STA(14)로부터 AP(16)에 의해 수신되는 인커밍 패킷들의 암호해제에 대한 세부사항들은 아래의 섹션들에서 설명된다.
WPA2 프로토콜 하에서, 패킷들은 각각의 패킷에 대한 보안 키를 사용하여 암호화 및 암호해제된다. 이러한 PTK(pairwise transient key)는 각각의 별개의 통신 링크에 대해 설정된 PMK(pairwise master key) 및 통신에 참가하는 각각의 디바이스에 특정한 속성들로부터 생성된다. 명칭이 표시하는 바와 같이, PTK는 제한된 수명을 가지며, 암호화된 통신에 대하여 각각의 파티들에 의해 필요할 때마다 생성된다. 일단 보안 인증이 발생하면, 임시 키들이 각각의 세션에 대해 생성되며, 보안 통신 링크가 활성으로 유지되는 한, 정규적으로 업데이트된다.
도 2에 개력적으로 다이어그램되는 바와 같이, 의뢰자(supplicant)(20) 및 인증자(22)는 마스터 키(MK)(24)를 설정할 수도 있다. WPA2의 몇몇 실시예들은 사전-공유 키(PSK)(26)를 이용하며, 그 PSK(26)는 파티들 사이에서 공유되는 패스프레이즈(passphrase) 또는 비트-스트링으로부터 도출된다. 다른 실시예들에서, 마스터 키(MK)(24)는, 인증자(22)에 의해 로컬적으로 또는 RADIUS(Remote Authentication Dial-In User Service)와 같은 원격 인증 서버를 통해 인증 프로세스(28)의 과정에서 파티들 사이에서 설정된다. 상술된 WLAN 환경(10)의 맥락에서, 의뢰자(20)는 STA(12) 또는 STA(14)일 수도 있고, 인증자(22)는 AP(16)일 수도 있다. 의뢰자(20) 및 인증자(22) (또는 상술된 바와 같은 적절한 원격 서버) 둘 모두는 설명된 바와 같이 MK(24)를 결정한다. 다음으로, 의뢰자(20) 및 인증자(22)는, 동일한 PMK가 각각의 파티에 의해 생성되도록 대칭적인 프로세스를 사용하여 MK(24)로부터 PMK(30)를 독립적으로 도출한다. 그 후, PMK(30)는, 의뢰자(20) 및 인증자(22)가 PTK(34)를 생성하는 핸드쉐이크 교환(32)에서 사용될 수도 있다. 상술된 바와 같이, PTK(34)는 의뢰자(20)와 인증자(22) 사이의 보안 통신(36)의 형태로 교환되는 정보의 암호화 및 암호해제를 위해 사용된 세션-기반 보안 키일 수도 있다.
이러한 계층 하에서, PMK(30)는 정보를 암호화 또는 암호해제하기 위해 사용되지 않을 수도 있다. 인식될 바와 같이, 이러한 구성은 MK(24)와 PTK(34) 사이에 암호화 격리(insulation)의 계층을 제공하여, PMK(30)의 노출을 최소화시키고, 보안된 정보에 대한 비인증된 액세스를 더 어렵게 한다. 추가적인 양상에서, PTK(34)로부터의 정보는, GTK(generate group transient key)들(40)을 생성하기 위해 핸드쉐이크 교환(38)에서 사용될 수도 있다. GTK(40)는, GTK(40)가 멀티캐스트 트래픽을 위해 사용될 수도 있지만 PTK(34)가 유니캐스트 트래픽을 위해 사용될 수도 있다는 것을 제외하고, PTK(34)와 유사한 방식으로 사용될 수도 있다. 후술되는 바와 같이, 세션-기반 보안 키들 PTK(34) 및 GTK(40)는, 의뢰자(20)로부터 인증자(22)에 의해 수신된 정보를 복원시키기 위해 하드웨어-기반 암호해제 모듈 또는 소프트웨어-기반 암호해제 모듈 중 어느 하나에 의해 사용될 수도 있다.
핸드쉐이크 교환들(32 및 38)은, 인증자(22)를 의뢰자(20)에게 적절히 인증하고 설명된 바와 같이 트랜션트(transient) 키들을 생성하기 위해 4-방식 핸드쉐이크를 포함한다. 일 양상에서, PTK 핸드쉐이크 교환(32) 동안, 인증자(22)는 APNonce와 같은 제 1 넌스(nonce)를 의뢰자(20)에게 전송한다. 의뢰자(20)는 SNonce와 같은 제 2 넌스를 인증자(22)에게 리턴한다. 그 후, 의뢰자(20) 및 인증자(22)는, 예를 들어, PMK(30), APNonce, SNonce 및 의뢰자(20) 및 인증자(22)의 MAC 어드레스들을 연접함으로써 PTK를 독립적으로 생성할 수도 있다. 일단 PTK(34)가 생성되면, 의뢰자(20) 및 인증자(22)는 PTK(34)의 양상들로부터 GTK(40)를 추가적으로 생성할 수도 있다. 그 후, GTK 핸드쉐이크 교환(38)이 수행될 수도 있으며, 여기서, 인증자(22)는 의뢰자(20)에게 GTK(40)를 전송하고, 의뢰자(20)는 GTK들이 매칭하면 확인응답으로 응답한다.
WPA2를 이용하는 802.11 WLAN의 맥락에서 설명되었지만, 당업자는 본 발명의 기술들이, PTK(34)에 일반적으로 대응하는 특성들 및 기능을 갖는 공유 키를 사용하는 암호화 시스템을 갖는 임의의 적절한 형태의 통신 시스템으로 확장될 수도 있음을 인식할 것이다.
정보의 암호해제는, 하드웨어-기반 기술, 소프트웨어-기반 기술, 또는 이 둘의 결합을 사용하여 달성될 수도 있다. 본 명세서의 기술들에 따른 통신 디바이스의 일 실시예는, STA(12) 및 STA(14)를 포함한 다중 소스들로부터의 (소프트웨어와 비교하여 하드웨어로 암호해제되는) 정보의 양을 증가시키도록 구성되는 AP(16)의 맥락에서 도 3에 도시된다. 특히, 도시된 바와 같은 AP(16)는, 통신 디바이스의 동작과 연관된 다양한 계산들을 수행할 수 있는 호스트 CPU(300)를 포함한다. 인식될 바와 같이, 호스트 CPU(300)의 능력들 및 구성은, 통신 디바이스의 애플리케이션 및 기능에 의존하여 광범위하게 변할 수도 있다. 호스트 CPU(300)는 버스 인터페이스(304)를 통해 WLAN 모듈(302)에 커플링된다.
차례로, WLAN 모듈(302)은 일반적으로, 무선 매체를 통한 호스트 CPU(300)와 다른 네트워크 노드들 사이의 통신들을 관리하도록 구성될 수도 있는 매체 액세스 제어기(MAC)(306)를 포함하며, 따라서, 검증, 확인응답, 라우팅, 포맷팅 등을 포함하여 프레임들을 핸들링 및 프로세싱하기 위한 기능들을 포함할 수도 있다. 인커밍 및 아웃고잉 프레임들은, 본 명세서에 도시된 바와 같이 관련 802.11 프로토콜에 따라 프레임들을 변조할 뿐만 아니라 안테나(310)를 통한 무선 신호들의 송신 및 수신을 제공하는데 필요한 아날로그 프로세싱 및 RF 변환을 제공하는 기능들을 포함하는 물리 계층(PHY)(308)과 MAC(306) 사이에서 교환된다.
특히, 본 발명과 관련하여, WLAN 모듈(302)은, 무선 매체를 통해 수신된 정보의 인커밍 프레임들의 암호해제를 제공하기 위해 MAC(306)와 연관된 하드웨어 기반(H/W) 암호해제 모듈(312)을 포함할 수도 있다. 바람직하게, H/W 암호해제 모듈(312)은, 소프트웨어-구현된 명령들을 실행하지 않으면서 필요한 암호화 알고리즘들을 수행하도록 구성된 전용 하드웨어 회로일 수도 있다. 본 발명의 실시예들에 따르면, H/W 암호해제 모듈(312)은, 암호해제 알고리즘들을 수행할 시에 사용하기 위해 PTK(34) 또는 GTK(40)와 같은 보안 키를 저장하도록 구성될 수도 있다. 또한, 본 발명의 실시예들은, 상이한 보안 키들을 저장하기 위해 H/W 암호해제 모듈(312)을 리프로그래밍하는 것을 수반하며, 바람직하게는, ASIP, FPGA, 또는 등가 회로를 이용할 수도 있다. 그러한 구현들은, 수신된 정보의 암호해제에서 상당한 효율들을 제공한다.
MAC(306) 및 H/W 암호해제 모듈(312)은, 암호해제된 프레임 및 암호화된 프레임을 저장하기 위한 하나 또는 그 초과의 버퍼들을 포함할 수도 있는 메모리 블록(314)과 통신한다. 예를 들어, 인커밍 암호화된 프레임들은, 암호해제 프로세스를 수행하기 위하여 H/W 암호해제 모듈(308)에 의해 액세스되는 제 1 큐에 저장될 수도 있다. 유사하게, H/W 암호해제 모듈(308)에 의해 출력된 암호해제된 프레임들은 제 2 큐에 저장될 수도 있으며, 그 후, 그 제 2 큐는 호스트 CPU(300)에 의해 액세스될 수도 있다. 도시된 실시예에서, 메모리 블록(314)은 WLAN 모듈(302) 내의 별개의 컴포넌트로서 도시된다. 그러나, 이러한 구성은 도시된 기능 블록들 사이의 관계를 명확화하기 위해 도시되며, 당업자는, 메모리 블록(314)이 임의의 적절한 방식으로 구현될 수도 있음을 인식할 것이다. 바람직하게, 메모리 블록(314)은, 다이렉트 메모리 액세스(DMA) 구성에서와 같이 인터페이스(304)를 통하여 MAC(306) 및 호스트 CPU(300)에 의해 액세스된 중앙화된 저장부의 일부일 수도 있다. 또한, MAC(306) 및 H/W 암호해제 모듈(312)은, 본 발명의 개념들을 더 명확하게 전달하기 위해 인커밍 프레임들의 암호해제를 참조하여 설명되지만, AP(16)와 같은 통신 디바이스들이 통상적으로 프레임들의 암호화를 또한 제공하도록 구성될 것임이 인식되어야 한다.
상술된 바와 같이, H/W 암호해제 모듈(312)은, STA(12) 또는 STA(14)와 같은 다른 네트워크 노드를 이용하여 설정된 통신 세션에 대응하는 보안 키를 저장한다. 저장된 보안 키에 대응하는 STA로부터의 인커밍 프레임들은 H/W 암호해제 모듈(312)에 의해 적절히 암호해제되지만, 다른 STA와 같은 다른 소스들로부터의 인커밍 프레임들은, 저장된 보안 키가 프레임들을 암호화하는데 사용된 키와 매칭하지 않기 때문에, 적절히 암호해제되지 않을 것이다. 이들 환경들에서, H/W 암호해제 모듈(312)은 부적절한 암호해제를 표시하는 에러를 생성할 것이며, 메모리 블록(314)에 프레임을 저장할 수도 있다. 후속하여, 호스트 CPU(300)는 메모리 블록(314)으로부터 프레임을 리트리브하고, 바람직하게는 호스트 CPU(300)에 의해 수행된 명령들로서 구현되는 S/W 암호해제 모듈(316)을 사용하여 프레임을 적절히 암호해제할 수도 있다.
따라서, S/W 암호해제 모듈(316)을 이용한 프레임들의 암호해제는, 호스트 CPU(300)의 사용을 수반하며, 통신 디바이스에 의해 수행된 다른 태스크들과 자신의 리소스들을 공유하지만, H/W 암호해제 모듈(312)을 이용한 프레임들의 암호해제는 암호화 프로세스들에 전용된 특정한 회로를 이용할 수도 있다. 대응적으로, 본 발명의 기술들이 S/W 암호해제 모듈(316)과 비교하여 H/W 암호해제 모듈(312)에 의해 수행된 암호해제의 양을 증가시키기 위한 시스템들 및 방법들에 관한 것이므로, H/W 암호해제 모듈(312)을 이용하는 암호해제는 S/W 암호해제 모듈(316)보다 상당히 더 효율적일 수도 있다.
이들 기술들은, 설계에 의존하여, 호스트 CPU(300)가 소프트웨어 암호해제를 이용할 때에 수용가능한 표준을 충족시키는데 필요한 성능을 갖지 않을 수도 있는 경우, 특히 적용가능할 수도 있다. 예를 들어, 802.11n 표준가 함께 사용하기 위해 구성된 디바이스들은 바람직하게는, 300Mbps의 2-스트림 데이터 레이트들 및 450Mbps의 3-스트림 레이트들을 수용해야 한다. 특히 임베디드 시스템들에서, 통신 디바이스는 소프트웨어 암호해제를 사용하여 그러한 데이터 레이트들을 유지하기에 충분한 컴퓨팅 전력을 갖지 않을 수도 있다. 따라서, H/W 암호해제 모듈(312)에 의해 수행된 암호해제의 양을 증가시킴으로써, H/W 암호해제 모듈(312)이 한번에 하나의 보안 키만을 저장할 수도 있는 실시예들에 대해서도 개선된 성능이 달성될 수도 있다.
일 양상에서, 본 발명의 기술들은 WLAN 통신들에 유리하게 적용될 수도 있다. WLAN을 통한 트래픽이 버스트들로 도달할 수도 있으므로, 종종 단일 소스로부터의 수 개의 프레임들은 연속적으로 도달하며, 그 후, 상이한 소스로부터 도달한 프레임들의 다른 시퀀스가 후속할 수도 있다. 현재의 소스에 대응하는 키를 이용하여 H/W 암호해제 모듈(312)에 의해 저장된 보안 키를 리프로그래밍함으로써, H/W 암호해제 모듈(312)을 사용하여 암호해제된 프레임들의 양이 증가될 수도 있다. S/W 암호해제 모듈(316)은 적절한 보안 키를 결정하기 위해 인커밍 암호화된 프레임을 분석하는데 사용될 수도 있다. 그 후, S/W 암호해제 모듈(316)은 결정된 보안 키를 이용하여 H/W 암호해제 모듈(312)을 리프로그래밍하여, 후속하는 인커밍 암호화된 프레임들이 H/W 암호해제 모듈(312)을 이용하여 정확히 암호해제될 수도 있게 한다.
H/W 암호해제 모듈(312)의 저장된 보안 키를 리프로그래밍하기 위한 예시적인 루틴이 도 4에 도시되며, WLAN 환경(10)의 맥락에서 설명된다. 단계(400)으로 시작하여, STA(12)에 의해 전송된 인커밍 암호화된 프레임이 PHY(308)로부터 MAC(306)에 의해 수신된다. WLAN 모듈(302)의 구성에 의존하여, 프레임은, H/W 암호해제 모듈(312)로 직접 라우팅될 수도 있거나, 메모리 블록(314) 내의 큐에 저장될 수도 있다. 그 후, H/W 암호해제 모듈(312)은 프레임들을 프로세싱하며, 현재 저장된 보안 키를 사용하여 그것을 암호해제하기를 시도한다.
통신 디바이스에 의해 이용되는 암호 방식에 의존하여, 다양한 메커니즘들이 암호해제 프로세스의 양상들의 성공적인 완료를 결정하기 위해 이용될 수도 있다. 예를 들어, WPA2 하에서, 프레임에 포함된 정보를 인증하고 검증하기 위해 메시지 무결성 코드(MIC)가 암호화된 프레임들과 함께 포함될 수도 있다. PTK(34)와 같은 현재 저장된 보안 키가 프레임을 암호화하기 위하여 STA(12)에 의해 사용된 보안 키와 매칭하지 않으면, H/W 암호해제 모듈(312)에 의해 수행된 암호해제 프로세스는 프레임을 정확히 암호해제하지 않을 것이다. 따라서, 단계(402)는 프레임의 프로세싱이 MIC 에러를 초래하는지를 결정한다. MIC 에러가 리턴되는 경우, MAC(306)는, S/W 암호해제 모듈(316)에 의한 프로세싱을 위해 호스트 CPU(300)에 정확히 암호해제된 프레임을 전달하도록 구성될 수도 있다. S/W 암호해제 모듈(316)은, STA(12)와의 세션에 대응하는 PTK(34)가 사용되어야 한다고 결정하며, 단계(404)에서, STA(12)에 대응하는 PTK를 저장하기 위해 H/W 암호해제 모듈(312)을 리프로그래밍한다. 다음으로, 프레임이 부정확하게 암호해제되었으므로, S/W 암호해제 모듈(316)은 H/W 암호해제 모듈(312)에 이전에 저장된 PTK를 사용하여 프레임을 재암호화한다. 바람직하게, 암호화 프로세스는, 재암호화된 프레임이 단계(406)에 의해 본래의 상태로 리턴되도록 대칭적이다. 그 후, S/W 암호해제 모듈(316)은, 프레임이 적절하게 암호해제된다는 루틴의 최종 결과를 단계(412)에서 유도하기 위해 단계(408)에서 프레임을 정확히 암호해제하도록 STA(12)에 대응하는 정확한 PTK를 적용할 수도 있다.
그 후, 루틴은 부가적인 인커밍 프레임들에 대해 반복될 수도 있다. 대응적으로, STA(12)에 의해 전송된 후속하는 암호화된 프레임이 수신되는 경우, 프레임을 프로세싱할 때에, H/W 암호해제 모듈(312)은 루틴의 이전 반복 동안 저장된 PTK, 즉 STA(12)에 대응하는 PTK를 이제 적용한다. 결과로서, 단계(402)에서의 프레임의 프로세싱은 MIC 에러를 리턴하지 않으므로, 루틴은 이제, 키 미스 에러가 발생했는지를 결정하도록 프레임의 디스크립터들을 분석하기 위해 단계(410)로 분기(branch)한다. 키 미스 에러가 리턴되면, 루틴은, S/W 암호해제 모듈(316)이 STA(12)에 대응하는 PTK를 사용하여 프레임을 암호해제하도록 단계(408)로 이동한다. H/W 암호해제 모듈(312)이 프레임을 프로세싱했던 경우 암호해제가 수행되지 않았다고 키 미스 에러가 표시하므로, 프레임은 재암호화될 필요가 없다. 어떠한 키 미스 에러도 단계(410)에서 리턴되지 않으면, 루틴은, H/W 암호해제 모듈(312)에 의해 프로세싱되었던 경우 프레임이 정확히 암호해제되었다고 결정하고, 단계(412)에서 종료할 수도 있다.
따라서, H/W 암호해제 모듈(312)에 의한 제 1 프레임의 프로세싱 이후, 부정확한 PTK를 사용하여, 도 4의 루틴은, 정확한 PTK를 저장하기 위해 H/W 암호해제 모듈(312)을 리프로그래밍하여, 동일한 소스로부터의 후속하는 인커밍 프레임들이 H/W 암호해제 모듈(312)을 사용하여 암호해제될 수도 있게 한다. 그 후, 프레임들의 다른 시퀀스가 상이한 소스로부터 도달하는 경우, S/W 암호해제 모듈(316)은, 초기 프레임 또는 프레임들을 암호해제하며, 새로운 소스의 PTK로 H/W 암호해제 모듈(312)을 다시 리프로그래밍한다. 리프로그래밍의 이러한 다음의 반복 이후, H/W 암호해제 모듈(312)은 상이한 소스로부터의 프레임들을 암호해제하는데 사용될 수도 있다.
언급된 바와 같이, 루틴은, MIC 에러가 단계(402)에 의해 생성되지 않지만 키 미스 에러가 단계(410)에는 있는 환경들을 수용한다. 이러한 패턴의 에러들은, S/W 암호해제 모듈(316)이 H/W 암호해제 모듈(312)의 리프로그래밍을 이미 개시했다는 표시로서 취해질 수도 있으므로, 루틴이 그 단계를 반복하지 않는다.
상기 설명으로부터, 본 발명의 하이브리드 소프트웨어 및 하드웨어 구현들로부터 도출된 이점들은, 다수의 순차적인 프레임들이 동일한 소스로부터 수신되는 경우 최적화됨을 관측할 수도 있다. 그러므로, 이러한 접근법은, 사용 어그리게이팅된 서브프레임들을 수반하는 표준들에 특히 적합하다. 일 양상에서, 802.11n 프로토콜들 하에서, 어그리게이팅된 MAC 프로토콜 데이터 유닛(A-MDPU)은 최대 64개까지의 서브프레임들을 포함할 수도 있다. 일 예로서, 16개의 서브프레임들의 평균 어그리게이션 프레임을 이용하면, H/W 암호해제 모듈(312)이 리프로그래밍될 수도 있는 속도에 의존하여, 단지 초기의 하나 또는 2개의 프레임들만이 S/W 암호해제 모듈(316)에 의해 디코딩될 수도 있다. 따라서, 나머지 어그리게이팅된 서브프레임들은 H/W 암호해제 모듈(312)에 의해 디코딩될 수도 있으며, 이는 대략 75% 내지 87.5%의 통신 디바이스의 호스트 CPU(300) 상에서의 로드의 잠재적인 감소를 표현한다.
추가적으로, 이들 기술들의 이점들이 단일 소스로부터 시퀀스로 수신되는 프레임들의 수에 관련될 수도 있으므로, 트래픽의 특성들에 기초하여 하이브리드 하드웨어 및 소프트웨어 접근법을 선택적으로 구현하는 것이 바람직할 수도 있다. 일 실시예에서, 이전의 트래픽 패턴들의 통계적 분석은, 기술로부터 이점을 얻을 가능성이 더 많은 환경들을 식별하는데 사용될 수도 있다. 대안적으로, 다른 적절한 기준들은, 통신 디바이스가 본 발명의 시스템들 및 방법들을 사용하여 유리하게 동작될 수도 있는 때를 결정하는데 사용될 수도 있다.
본 발명의 바람직한 실시예들이 본 명세서에 설명된다. 그러나, 본 발명에 관련된 당업자는, 본 발명의 원리들이 적절한 변형들을 이용하여 다른 애플리케이션들로 용이하게 확장될 수 있음을 이해할 것이다.

Claims (18)

  1. 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스로서,
    각각의 소스는 개별 보안 키를 가지며,
    상기 통신 디바이스는,
    인커밍 프레임들을 암호해제하기 위한 저장된 보안 키를 갖는 하드웨어 부분; 및
    인커밍 프레임들을 암호해제하기 위한 소프트웨어 부분을 포함하며,
    상기 하드웨어 부분은, 상기 저장된 보안 키를 사용하여 인커밍 프레임들을 프로세싱하도록 구성되고,
    상기 소프트웨어 부분은,
    상기 저장된 보안 키가 제 1 보안 키이고 상기 하드웨어 부분에 의한 상기 제 1 프레임의 프로세싱이 무결성(integrity) 에러를 초래하는 경우, 제 1 소스로부터의 인커밍 제 1 프레임에 대한 정확한 보안 키를 결정하고, 그리고
    상기 제 1 프레임에 대하여 상기 소프트웨어 부분에 의해 결정된 정확한 보안 키에 대응하는 제 2 보안 키를 저장하기 위해 상기 하드웨어 부분을 리프로그래밍
    하도록 구성되는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  2. 제 1 항에 있어서,
    상기 소프트웨어 부분은 추가적으로,
    상기 제 1 프레임이 상기 하드웨어 부분에 의해 프로세싱된 이후 상기 제 1 보안 키를 이용하여 상기 제 1 프레임을 암호화하고, 그리고,
    상기 제 2 보안 키를 이용하여 상기 제 1 프레임을 후속하여 암호해제
    하도록 구성되는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  3. 제 2 항에 있어서,
    상기 소프트웨어 부분은 추가적으로,
    상기 제 2 보안 키를 이용하여 상기 제 1 프레임에 후속하여 수신된 인커밍 제 2 프레임을 암호해제하고, 그리고,
    상기 하드웨어 부분에 의한 상기 제 2 프레임의 프로세싱이 무결성 에러를 초래하는 것이 아니라 키 미스(miss) 에러를 초래하는 경우, 상기 하드웨어 부분의 저장된 보안 키로서 상기 제 2 보안 키를 보유
    하도록 구성되는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  4. 제 2 항에 있어서,
    상기 하드웨어 부분은 추가적으로, 상기 제 1 프레임에 후속하여 수신된 인커밍 제 2 프레임을 프로세싱하도록 구성되며,
    상기 통신 디바이스는, 상기 저장된 보안 키가 상기 제 2 보안 키이고 상기 하드웨어 부분을 이용하여 상기 제 2 프레임을 프로세싱하는 것이 무결성 에러 또는 키 미스 에러를 초래하지 않는 경우, 상기 제 2 프레임이 상기 하드웨어 부분에 의해 정확히 암호해제된다고 결정하도록 구성되는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  5. 제 4 항에 있어서,
    상기 소프트웨어 부분은 추가적으로,
    상기 저장된 보안 키가 상기 제 2 보안 키이고 상기 하드웨어 부분에 의한 상기 제 3 프레임의 프로세싱이 무결성 에러를 초래하는 경우, 제 2 소스로부터의 인커밍 제 3 프레임에 대한 정확한 보안 키를 결정하고, 그리고,
    상기 제 3 프레임에 대하여 상기 소프트웨어 부분에 의해 결정된 정확한 보안 키에 대응하는 제 2 보안 키를 저장하기 위해 상기 하드웨어 부분을 리프로그래밍
    하도록 구성되는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  6. 제 1 항에 있어서,
    상기 통신 디바이스는 WPA-기반 암호화 프로토콜을 이용하는 WLAN 내의 노드인, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  7. 제 6 항에 있어서,
    상기 보안 키들은 PTK(pairwise transient key)들을 포함하는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  8. 제 6 항에 있어서,
    상기 통신 디바이스는 인터페이스에 의해 WLAN 모듈에 커플링된 호스트 CPU를 포함하며,
    상기 하드웨어 부분은 상기 WLAN 모듈에 구현되고, 상기 소프트웨어 부분은 상기 호스트 CPU에 구현되는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  9. 제 8 항에 있어서,
    상기 하드웨어 부분은 상기 WLAN 모듈의 매체 액세스 제어 계층에서 구현되는, 복수의 소스들로부터 암호화된 프레임들을 수신하기 위한 통신 디바이스.
  10. 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법으로서,
    각각의 소스는 개별 보안 키를 가지며,
    상기 방법은,
    a) 저장된 보안 키를 사용하여 제 1 소스로부터 수신된 제 1 인커밍 프레임에 대해 하드웨어-기반 암호해제 프로세스를 수행하는 단계;
    b) 상기 저장된 보안 키가 제 1 보안 키인 경우, 상기 제 1 프레임을 프로세싱할 때에 무결성 에러를 수신하는 단계;
    c) 상기 제 1 프레임에 대한 정확한 보안 키의 소프트웨어-기반 결정을 수행하는 단계; 및
    d) 상기 제 1 보안 키로부터 제 2 보안 키로 상기 저장된 보안 키를 리프로그래밍하는 단계 - 상기 제 2 보안 키는 상기 제 1 프레임에 대해 결정된 정확한 보안 키에 대응함 - 를 포함하는, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
  11. 제 10 항에 있어서,
    a) 상기 하드웨어-기반 암호해제 프로세스를 수행한 이후 상기 제 1 보안 키를 사용하여 상기 제 1 프레임에 대해 소프트웨어-기반 암호화 프로세스를 수행하는 단계; 및
    b) 상기 제 2 보안 키를 사용하여 상기 제 1 프레임에 대해 소프트웨어-기반 암호해제 프로세스를 수행하는 단계를 더 포함하는, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
  12. 제 11 항에 있어서,
    a) 상기 제 1 프레임에 후속하여 수신된 인커밍 제 2 프레임에 대해 하드웨어-기반 암호해제 프로세스를 수행하는 단계;
    b) 무결성 에러가 아니라 키 미스 에러를 수신하는 단계;
    c) 상기 제 2 보안 키를 이용하여 상기 제 2 프레임에 대해 소프트웨어-기반 암호해제 프로세스를 수행하는 단계; 및
    d) 상기 저장된 보안 키로서 상기 제 2 보안 키를 보유하는 단계를 더 포함하는, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
  13. 제 11 항에 있어서,
    a) 상기 저장된 보안 키가 상기 제 2 보안 키인 경우, 상기 제 1 프레임에 후속하여 수신된 인커밍 제 2 프레임에 대해 하드웨어-기반 암호해제 프로세스를 수행하는 단계; 및
    b) 어떠한 무결성 에러 또는 키 미스 에러도 수신되지 않은 경우, 상기 제 2 프레임이 상기 하드웨어-기반 암호해제 프로세스에 의해 정확히 암호해제된다고 결정하는 단계를 더 포함하는, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
  14. 제 13 항에 있어서,
    a) 상기 저장된 보안 키를 사용하여 제 2 소스로부터 수신된 제 3 인커밍 프레임에 대해 하드웨어-기반 암호해제 프로세스를 수행하는 단계;
    b) 상기 저장된 보안 키가 제 1 보안 키인 경우, 상기 제 1 프레임을 프로세싱할 때에 무결성 에러를 수신하는 단계;
    c) 상기 제 3 프레임에 대한 정확한 보안 키의 소프트웨어-기반 결정을 수행하는 단계; 및
    d) 상기 제 2 보안 키로부터 제 3 보안 키로 상기 저장된 보안 키를 리프로그래밍하는 단계 - 상기 제 3 보안 키는 상기 제 3 프레임에 대해 결정된 정확한 보안 키에 대응함 - 를 더 포함하는, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
  15. 제 10 항에 있어서,
    상기 통신 디바이스는 WPA-기반 암호화 프로토콜을 이용하는 WLAN 내의 노드인, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
  16. 제 15 항에 있어서,
    상기 보안 키들은 PTK(pairwise transient key)들을 포함하는, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
  17. 제 15 항에 있어서,
    상기 통신 디바이스는 인터페이스에 의해 WLAN 모듈에 커플링된 호스트 CPU를 포함하며,
    상기 하드웨어-기반 암호해제 프로세스는 상기 WLAN 모듈에 의해 수행되고,
    상기 소프트웨어-기반 암호해제 프로세스는 상기 호스트 CPU에서 수행되는, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
  18. 제 17 항에 있어서,
    상기 하드웨어-기반 암호해제 프로세스는 상기 WLAN 모듈의 매체 액세스 제어 계층에서 수행되는, 복수의 소스들로부터 통신 디바이스에 의해 수신된 정보를 암호해제하기 위한 방법.
KR1020157005101A 2012-08-01 2013-07-29 하이브리드 다중 소스 암호해제를 위한 시스템 및 방법 KR20150040316A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/563,977 2012-08-01
US13/563,977 US8842828B2 (en) 2012-08-01 2012-08-01 System and method for hybrid multiple source decryption
PCT/US2013/052565 WO2014022308A1 (en) 2012-08-01 2013-07-29 System and method for hybrid multiple source decryption

Publications (1)

Publication Number Publication Date
KR20150040316A true KR20150040316A (ko) 2015-04-14

Family

ID=48985828

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157005101A KR20150040316A (ko) 2012-08-01 2013-07-29 하이브리드 다중 소스 암호해제를 위한 시스템 및 방법

Country Status (5)

Country Link
US (1) US8842828B2 (ko)
EP (1) EP2880811A1 (ko)
KR (1) KR20150040316A (ko)
CN (1) CN104509025B (ko)
WO (1) WO2014022308A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10547967B2 (en) * 2017-02-17 2020-01-28 Regents Of The University Of Minnesota Integrated assistive system to support wayfinding and situation awareness
CN111787534A (zh) * 2020-07-01 2020-10-16 上海汽车集团股份有限公司 一种数据加解密方法、装置及电子设备

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805705A (en) 1996-01-29 1998-09-08 International Business Machines Corporation Synchronization of encryption/decryption keys in a data communication network
JP3988172B2 (ja) * 1997-04-23 2007-10-10 ソニー株式会社 情報処理装置および方法、並びに記録媒体
JP4457431B2 (ja) 1999-05-18 2010-04-28 ソニー株式会社 受信装置および方法、並びに記録媒体
US20020087874A1 (en) * 2000-12-29 2002-07-04 Lippincott Louis A. Apparatus and method for integrated chipset content protection
CN1826754B (zh) * 2003-07-29 2010-05-05 汤姆森特许公司 用于无线局域网的密钥同步机制
US7584353B2 (en) * 2003-09-12 2009-09-01 Trimble Navigation Limited Preventing unauthorized distribution of media content within a global network
DE102004004799B4 (de) 2004-01-30 2010-02-18 Advanced Micro Devices, Inc., Sunnyvale Hardware/Software-Partitionierung für verschlüsselte WLAN-Verbindungen
WO2005083982A1 (en) 2004-02-23 2005-09-09 Sinett Corporation Unified architecture for wired and wireless networks
TWI277870B (en) * 2004-11-22 2007-04-01 Toshiba Corp Copyright management method, information recording/reproducing method and device, and information recording medium and method of manufacturing the medium
JP4524656B2 (ja) 2005-08-04 2010-08-18 ソニー株式会社 情報処理装置および方法、並びにプログラム
US20070081673A1 (en) 2005-10-07 2007-04-12 Texas Instruments Incorporated CCM encryption/decryption engine
WO2007059558A1 (en) 2005-11-23 2007-05-31 The University Of Sydney Wireless protocol for privacy and authentication
US7925896B2 (en) * 2006-03-30 2011-04-12 Texas Instruments Incorporated Hardware key encryption for data scrambling
JP4912075B2 (ja) 2006-08-11 2012-04-04 パナソニック株式会社 復号装置
US7912217B2 (en) * 2007-03-20 2011-03-22 Cisco Technology, Inc. Customized advertisement splicing in encrypted entertainment sources
US20090019539A1 (en) * 2007-07-11 2009-01-15 Airtight Networks, Inc. Method and system for wireless communications characterized by ieee 802.11w and related protocols
US8898474B2 (en) * 2008-11-04 2014-11-25 Microsoft Corporation Support of multiple pre-shared keys in access point

Also Published As

Publication number Publication date
US20140037091A1 (en) 2014-02-06
EP2880811A1 (en) 2015-06-10
CN104509025B (zh) 2017-10-20
WO2014022308A1 (en) 2014-02-06
CN104509025A (zh) 2015-04-08
US8842828B2 (en) 2014-09-23

Similar Documents

Publication Publication Date Title
US8855603B2 (en) Local security key update at a wireless communication device
EP1943812B1 (en) Method and readable storage medium for setting up secure direct links between wireless network stations using direct link set-up (dls) protocol
US8254581B2 (en) Lightweight key distribution and management method for sensor networks
US20080046732A1 (en) Ad-hoc network key management
KR101485279B1 (ko) 링크 계층 보안 전송을 지원하는 스위칭 장치 및 그의 데이터 처리 방법
KR20180045014A (ko) 무선 장치의 인증을 위한 방법 및 장치
US9264404B1 (en) Encrypting data using time stamps
CN112753203B (zh) 一种安全通信方法及装置
JP2018504033A5 (ko)
US8325914B2 (en) Providing secure communications for active RFID tags
JP7237200B2 (ja) パラメータ送信方法及び装置
WO2023020164A1 (zh) 管理通信信道的方法和装置
US20150381577A1 (en) System for, and method of, authenticating a supplicant, and distributing group keys to group members, in a multi-hop wireless communications network with enhanced security
US8842828B2 (en) System and method for hybrid multiple source decryption
Singh et al. Elliptic curve cryptography based mechanism for secure Wi-Fi connectivity
WO2018076190A1 (zh) 通信方法、终端、核心网用户面设备和接入网设备
CN111836260A (zh) 一种认证信息处理方法、终端和网络设备
Han et al. Sensor authentication in dynamic wireless sensor network environments
WO2011134291A1 (zh) 一种节点间密钥的建立方法、系统及装置
EP4061038B1 (en) Wireless network switching method and device
CN109451493B (zh) 基于wpa的密钥配置方法及装置
Han et al. Efficient Authenticated Key Agreement Protocols for Dynamic Wireless Sensor Networks.
Hayati The Design of Security Framework for LoRaWAN FUOTA
EP4352918A1 (en) Securely and reliably transmitting messages between network devices
CN116941263A (zh) 一种通信方法及装置

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application