Aspects of the present invention relate generally to the field of network security, and more particularly to the exchange of keys between stations in a wireless network.
In wireless local area networks (LANs), link layer security protocols may be based on the IEEE 802.11 specifications. Early security models such as Wired Equivalent Privacy (WEP), Temporal Key Integrity Protocol (TKIP) and Wi-Fi Protected Access (WPA) that were typically used to protect data sent between stations in a wireless network have been replaced with WPA2. The WPA2 protocol uses an Advanced Encryption Standard (AES) cipher with Counter Mode with Cipher Block Chaining Message Authentication Code Protocol (CCMP). WPA2 uses a four-way handshake to exchange unique nonce (number used once) pairs and establish a unique pairwise key for each pair of communicating stations.
A wireless LAN may utilize a variety of architectures. For example, a wireless LAN can be organized in a star topology with a central access point station communicating with several client stations. Each client station communicates directly only with the access point. Stations can be connected to a network via a network adapter or network interface card that manages the network communications and can provide a MAC address for the station. Alternatively, a wireless LAN can be organized with a basic service set (BSS). In a BSS topology, all the client stations communicate directly with each other. An independent BSS allows communication without use of an access point. Peer-to-peer networks or ad-hoc networks may be independent BSS networks. An infrastructure BSS allows communication between client stations on the BSS network and client stations not on the BSS network via an access point.
Independent Basic Service Set (IBSS) networks, mesh networks, and direct link setup networks in accordance with the IEEE 802.11z standard, may each use a WPA2 protocol to protect inter-station communications. The WPA2 security protocol used in an IBSS may be complicated by the need for unique key/nonce pairs for each pair of communicating stations. In such systems, where there may not be a central access point responsible for managing communication and security among the nodes of the network, secure communication requires that each station exchange a pair of keys with every other station with which the station communicates.
A method and apparatus are provided for deriving an encryption key for use between two stations in a wireless network using information intrinsic to one of the stations, without exchanging pairwise transient keys. In some embodiments, the intrinsic information may be information provided in a beacon signal transmitted by one of the stations. In some embodiments, the intrinsic information may include the media access control (MAC) addresses of the stations. In some embodiments, infinite error detection may be used to verify the integrity of messages exchanged between the stations.
The present invention is described herein with reference to the accompanying drawings, in which similar reference numbers are used to indicate functionally similar elements. The foregoing and other aspects of various embodiments of the present invention will be apparent through examination of the following detailed description thereof in conjunction with the accompanying drawing figures in which similar reference numbers are used to indicate functionally similar elements.
To initiate secure communication between access point 100 and client station 101, additional security may be provided at the link layer and may involve the exchange of secure Pairwise Transient Keys (PTKs). AES-CCMP is an example of an encryption protocol used to exchange PTKs. The keys exchanged between access point 100 and client station 101 should be unique from the keys exchanged with client station 102. Therefore, access point 100 may exchange different keys with each client station.
Key 301 may be the PTK established during the four-way handshake. Initialization vector 303 may be a unique value for each packet of data sent from network adapter 300 to network adapter 310. A unique initialization vector 303 for every packet ensures that key stream 305 is unique for every packet sent. If key stream 305 never varied, key stream 305 may be deciphered by intercepting multiple packets with similar plain text data. To accommodate a unique initialization vector, nonce values may be exchanged between stations.
A Pairwise Transient Key (PTK) may be derived using the earlier exchanged PMK, nonce 201, nonce 202, and the Media Access Control (MAC) addresses of communicating stations. Acknowledgement messages may additionally include a Group Temporal Key (GTK), which is a sequence number for use with the relay of broadcast messages, and a message integrity check (MIC) value. A MIC can be used to verify the integrity of the message and may additionally be exchanged with the nonce values. In some implementations, MIC is computed or derived from a hash function, for instance. If both client station 101 and access point station 100 calculate a MIC value, any discrepancy between the two calculated values can indicate that the message has been tampered with or has otherwise been altered. A GTK is a key that can be used by a broadcasting station to validate each broadcast transmission.
In a mesh network involving broadcast or multicast of messages, significant difficulties arise over the exchange of unique keys. Each broadcasting station may have a unique GTK that may be exchanged with every station capable of receiving a broadcast message. A station added to an ad hoc network may not be able to receive broadcast messages until it has exchanged a GTK with the broadcasting station. The GTK may change with every addition or removal of a station in the mesh network, which may require an update of the GTK at every station in the network, each update involving a handshake between communicating stations. The exchange and update of the GTK therefore may involve substantial overhead.
Encrypting data without the explicit exchange of unique keys eliminates some of the overhead inherent in the unique key exchange between stations in a mesh network. Additionally, allowing stations to receive broadcast messages without first requiring an explicit exchange of keys can decrease overhead time by allowing more efficient broadcast communication. To maintain security without an explicit exchange of information, data can be encrypted using keys derived from intrinsic information known within the stations.
In one embodiment, a station communicates with other stations in the network via a network adapter or network interface card. The network adapter comprises an encryption module. The encryption module can be implemented in hardware, such as memory registers, buffers, or other memory structures, or in software or other hardware executable instructions. The encryption module has access to information intrinsic to the station. Intrinsic information can be any information known within the station, or obtainable by the station, that is not obtained with the traditional four-way handshake.
In one embodiment, intrinsic information used to derive an encryption key includes information included in a beacon message. A beacon message is a packet that is typically sent to alert stations in an ad hoc network that a new station has been added to the network. Information for portions of a unique key to secure communications with the station that transmitted the beacon can be derived from information included in the beacon.
In one embodiment, a unique key is established between station 501 and station 502 using the standard four-way handshake, then implicit knowledge of additional devices communicating with station 501, for example station 504, is used to establish a unique key between station 502 and station 504. The derivation of a key based on prior communications between stations can be facilitated with the use of the implicit knowledge within station 501 of the MAC addresses of the stations with which station 501 communicates.
In one embodiment, key derivation and exchange is simplified. For example, a unique key is established with the exchange of a single nonce value, rather than two separate nonce values. The data packet exchanged between stations containing the nonce value includes additional sequence space in the packet header. The sequence space may be used in combination with the single nonce value to calculate a unique key.
In one embodiment, the use of an infinite error extension mode eliminates the need for unique key pairs. Infinite error extension used to derive a MIC value included in the encrypted transmission allows for secure communication and authentication without the use of unique pairs, as any error in the message will be known.
It is noted that the arrangement of the blocks in
Although the above embodiments were described primarily as applicable to a mesh network, the embodiments may be effectively utilized in any wireline or wireless network that conventionally uses an exchange of unique key pairs to encrypt secure data, including an IBSS network, an smesh network, a DLS network, or a conventional network based on a star topology with an access point and client stations.
While the invention has been described in detail above with reference to some embodiments, alternative implementations and various modifications are within the scope of the present disclosure. Therefore, the invention should be considered as limited only by the scope of the appended claims.
This application claims the benefit of priority to previously filed U.S. provisional patent application Ser. No. 61/090,376, filed Aug. 20, 2008, entitled EFFICIENT KEY ESTABLISHMENT FOR WIRELESS NETWORKS; and of U.S. provisional patent application Ser. No. 61/090,380, filed Aug. 20, 2008, entitled EFFICIENT SECURITY FOR DISTRIBUTED NETWORK ENVIRONMENTS. Those provisional applications are hereby incorporated by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
5390165 | Tuch | Feb 1995 | A |
5481733 | Douglis et al. | Jan 1996 | A |
5617118 | Thompson | Apr 1997 | A |
5673416 | Chee et al. | Sep 1997 | A |
5771356 | Leger et al. | Jun 1998 | A |
5828835 | Isfeld et al. | Oct 1998 | A |
5884099 | Klingelhofer | Mar 1999 | A |
6014722 | Rudin et al. | Jan 2000 | A |
6092108 | DiPlacido et al. | Jul 2000 | A |
6230277 | Nakaoka et al. | May 2001 | B1 |
6330626 | Dennin et al. | Dec 2001 | B1 |
6463509 | Teoman et al. | Oct 2002 | B1 |
6564318 | Gharda et al. | May 2003 | B1 |
6601167 | Gibson et al. | Jul 2003 | B1 |
6711447 | Saeed | Mar 2004 | B1 |
6756988 | Wang et al. | Jun 2004 | B1 |
6823472 | DeKoning et al. | Nov 2004 | B1 |
6832280 | Malik et al. | Dec 2004 | B2 |
7089419 | Foster et al. | Aug 2006 | B2 |
7103788 | Souza et al. | Sep 2006 | B1 |
7126913 | Patel et al. | Oct 2006 | B1 |
7194638 | Larky | Mar 2007 | B1 |
7266842 | Foster et al. | Sep 2007 | B2 |
7299365 | Evans | Nov 2007 | B2 |
7308591 | Dubinsky | Dec 2007 | B2 |
7356707 | Foster et al. | Apr 2008 | B2 |
7496952 | Edwards et al. | Feb 2009 | B2 |
7571216 | McRae et al. | Aug 2009 | B1 |
7596614 | Saunderson et al. | Sep 2009 | B2 |
7606230 | Cohen et al. | Oct 2009 | B1 |
7774635 | Shiota | Aug 2010 | B2 |
7788670 | Bodas et al. | Aug 2010 | B2 |
7818389 | Chiang et al. | Oct 2010 | B1 |
7873841 | Mullis, II et al. | Jan 2011 | B2 |
7995596 | Kuila et al. | Aug 2011 | B2 |
8000284 | Lott et al. | Aug 2011 | B2 |
8001592 | Hatakeyama | Aug 2011 | B2 |
8095816 | Chan | Jan 2012 | B1 |
8139521 | Mukherjee et al. | Mar 2012 | B2 |
8171309 | Poo | May 2012 | B1 |
8296555 | Chu | Oct 2012 | B2 |
8321706 | Zhang | Nov 2012 | B2 |
8327056 | Chan | Dec 2012 | B1 |
8443187 | Orr | May 2013 | B1 |
8443211 | Zhao et al. | May 2013 | B2 |
20020069354 | Fallon et al. | Jun 2002 | A1 |
20020087816 | Atkinson et al. | Jul 2002 | A1 |
20030014368 | Leurig et al. | Jan 2003 | A1 |
20030200453 | Foster et al. | Oct 2003 | A1 |
20030200454 | Foster et al. | Oct 2003 | A1 |
20030208675 | Burokas et al. | Nov 2003 | A1 |
20030236991 | Letsinger | Dec 2003 | A1 |
20040125679 | Kwean | Jul 2004 | A1 |
20040266386 | Kuo | Dec 2004 | A1 |
20050033869 | Cline | Feb 2005 | A1 |
20050055547 | Kawamura | Mar 2005 | A1 |
20050086551 | Wirasinghe et al. | Apr 2005 | A1 |
20050108171 | Bajikar et al. | May 2005 | A1 |
20050138365 | Bellipady et al. | Jun 2005 | A1 |
20050156925 | Fong et al. | Jul 2005 | A1 |
20060072748 | Buer | Apr 2006 | A1 |
20060075259 | Bajikar et al. | Apr 2006 | A1 |
20060123248 | Porter et al. | Jun 2006 | A1 |
20060136735 | Plotkin et al. | Jun 2006 | A1 |
20060142906 | Brozovich et al. | Jun 2006 | A1 |
20060156390 | Baugher | Jul 2006 | A1 |
20070005824 | Howard | Jan 2007 | A1 |
20070011445 | Waltermann et al. | Jan 2007 | A1 |
20070038866 | Bardsley et al. | Feb 2007 | A1 |
20070097904 | Mukherjee et al. | May 2007 | A1 |
20070234028 | Rothman et al. | Oct 2007 | A1 |
20070260905 | Marsden et al. | Nov 2007 | A1 |
20070277051 | Reece et al. | Nov 2007 | A1 |
20070297606 | Tkacik et al. | Dec 2007 | A1 |
20080016313 | Murotake et al. | Jan 2008 | A1 |
20080028243 | Morisawa | Jan 2008 | A1 |
20080034411 | Aoyama | Feb 2008 | A1 |
20080046732 | Fu et al. | Feb 2008 | A1 |
20080066075 | Nutter et al. | Mar 2008 | A1 |
20080072311 | Mullick et al. | Mar 2008 | A1 |
20080104422 | Mullis et al. | May 2008 | A1 |
20080108322 | Upp | May 2008 | A1 |
20080120717 | Shakkarwar | May 2008 | A1 |
20080298289 | Jeyaseelan | Dec 2008 | A1 |
20080313462 | Zhao et al. | Dec 2008 | A1 |
20090006658 | Gough | Jan 2009 | A1 |
20090049222 | Lee et al. | Feb 2009 | A1 |
20090199031 | Zhang | Aug 2009 | A1 |
20100023747 | Asnaashari et al. | Jan 2010 | A1 |
20100058045 | Borras et al. | Mar 2010 | A1 |
20100070751 | Chue | Mar 2010 | A1 |
20100174934 | Zhao | Jul 2010 | A1 |
20130046966 | Chu | Feb 2013 | A1 |
Number | Date | Country |
---|---|---|
1847911 | Oct 2007 | EP |
08076872 | Mar 1996 | JP |
10320302 | Dec 1998 | JP |
2002099502 | Apr 2002 | JP |
2002215409 | Aug 2002 | JP |
2004005254 | Jan 2004 | JP |
2005011120 | Jan 2005 | JP |
Entry |
---|
“Part 11—Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications”, Information Technology—Telecommunications & Information Exchange Between Systems . . . International Standard, ISO/IEC 8802-11:1999(E), First Ed., pp. 1-531, 1999. |
“Extensions to Direct Link Setup (DLS) Comments”, IEEE, P802.11z, pp. 1-3, Jul. 2009. |
“Final Office Action”, U.S. Appl. No. 12/098,254, (May 18, 2011), 11 pages. |
“Final Office Action”, U.S. Appl. No. 12/178,268, (May 25, 2011), 13 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/098,254, (Jan. 14, 2011), 8 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/101,668, (Apr. 5, 2011), 7 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/178,268, (Dec. 22, 2010), 10 pages. |
“PCT Partial Search Report”, Application Serial No. PCT/US2008/078343, Partial International Search, (Mar. 5, 2009), 2 pages. |
“PCT Search Report and Written Opinion”, Application No. PCT/US2009/067767, (Mar. 26, 2010), 12 pages. |
“PCT Search Report”, Application No. PCT/US2009/056973, (Nov. 4, 2009), 13 pages. |
“PCT Search Report”, Application Serial No. PCT/US2008/078343, (May 18, 2009), 5 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/178,268, (Dec. 21, 2011), 13 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/271,761, (Oct. 3, 2011), 6 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/559,987, (Nov. 9, 2011), 10 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/636,558, (Jan. 10, 2012), 6 pages. |
“Notice of Allowance”, U.S. Appl. No. 12/098,254, (Dec. 14, 2011), 4 pages. |
“Notice of Allowance”, U.S. Appl. No. 12/098,254, (Sep. 28, 2011), 4 pages. |
“Notice of Allowance”, U.S. Appl. No. 12/271,761, (Jan. 3, 2012), 6 pages. |
“Restriction Requirement”, U.S. Appl. No. 12/101,668, (Sep. 22, 2011), 6 pages. |
“Final Office Action”, U.S. Appl. No. 12/101,668, (May 10, 2012), 8 pages. |
“Foreign Office Action”, European Patent Application No. 09803951.4, (May 24, 2012), 3 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/636,558, (May 29, 2012), 8 pages. |
“Non-Final Office Action”, U.S. Appl. No. 13/333,551, (Apr. 6, 2012), 5 pages. |
“Notice of Allowance”, U.S. Appl. No. 12/559,987, (Jun. 15, 2012), 5 pages. |
“Notice of Allowance”, U.S. Appl. No. 13/333,551, (May 30, 2012), 4 pages. |
“Foreign Office Action”, European Patent Application No. 09803951.4, Dec. 13, 2012, 6 pages. |
“Foreign Office Action”, Japanese Application No. 2011-544456, Jan. 29, 2013, 7 pages. |
“Notice of Allowance”, U.S. Appl. No. 12/636,558, Jan. 9, 2013, 4 pages. |
“Notice of Allowance”, U.S. Appl. No. 12/101,668, Jan. 11, 2013, 6 pages. |
“Supplemental Notice of Allowance”, U.S. Appl. No. 12/101,668, Feb. 8, 2013, 4 Pages. |
“Foreign Office Action”, Japanese Application No. 2011-527899, Nov. 6, 2012, 4 pages. |
“Non-Final Office Action”, U.S. Appl. No. 12/101,668, Aug. 9, 2012, 8 pages. |
“Supplemental Notice of Allowance”, U.S. Appl. No. 13/333,551, Oct. 23, 2012, 2 pages. |
“EP Intent to Grant”, European Patent Application No. 09803951.4, May 14, 2013, 13 Pages. |
“Foreign Office Action”, Japanese Application No. 2011-527899, Apr. 16, 2013, 5 pages. |
“Non-Final Office Action”, U.S. Appl. No. 13/863,079, Jun. 20, 2013, 10 pages. |
“Non-Final Office Action”, U.S. Appl. No. 13/657,511, Mar. 28, 2013, 13 pages. |
Number | Date | Country | |
---|---|---|---|
61090376 | Aug 2008 | US | |
61090380 | Aug 2008 | US |