WO2005057341A2 - Automatic hardware-enabled virtual private network system - Google Patents

Automatic hardware-enabled virtual private network system Download PDF

Info

Publication number
WO2005057341A2
WO2005057341A2 PCT/US2004/040173 US2004040173W WO2005057341A2 WO 2005057341 A2 WO2005057341 A2 WO 2005057341A2 US 2004040173 W US2004040173 W US 2004040173W WO 2005057341 A2 WO2005057341 A2 WO 2005057341A2
Authority
WO
WIPO (PCT)
Prior art keywords
client
token
network
remote
tunnel
Prior art date
Application number
PCT/US2004/040173
Other languages
French (fr)
Other versions
WO2005057341A3 (en
Inventor
Anthony C. Fascenda
Original Assignee
Koolspan, Inc.
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 Koolspan, Inc. filed Critical Koolspan, Inc.
Publication of WO2005057341A2 publication Critical patent/WO2005057341A2/en
Publication of WO2005057341A3 publication Critical patent/WO2005057341A3/en

Links

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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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
    • 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/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3273Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • 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

Definitions

  • the present invention relates to wireless networking, and more particularly, to an automatic hardware-enabled virtual private network technique.
  • a Wireless Local Area Network is generally implemented to provide local connectivity between a wired network and a mobile computing device.
  • RF radio frequency
  • WLANs are based on the Institute of Electrical and Electronic Engineers (IEEE) 802.11 standard, which designates a wireless-Ethernet specification using a variety of modulation techniques at frequencies generally in the 2.4 gigahertz (GHz) and 5 GHz license-free frequency bands.
  • IEEE 802.11 standard (“Wi-Fi”), the disclosure of which is incorporated herein in its entirety by reference, enables wireless communications with throughput rates up to 54 Mbps.
  • Wi-Fi for "wireless fidelity" is essentially a seal of approval certifying that a manufacturer's product is compliant with IEEE 802.11. For example, equipment carrying the "Wi-Fi" logo is certified to be interoperable with other Wi-Fi certified equipment.
  • Wi-Fi compatible PC cards that operate in peer-to-peer mode, but Wi-Fi usually incorporates at least one access point, or edge device. Most access points have an integrated Ethernet controller to connect to an existing wired-Ethernet network.
  • a Wi-Fi wireless transceiver connects users via the access point to the rest of the LAN.
  • an automatic hardware-enabled virtual private network system comprises: a first token, wherein the first token is configured to be coupled to a computing device, a subnet box, and a key database, wherein the key database comprises a serial number and a secret cryptographic key associated with the token.
  • the computing device is connected to the subnet box via a public network, the subnet box is a node on a private network, and the subnet box facilitates a virtual private network connection between the private network and the computing device when the first token is coupled to the computing device.
  • the system further comprises a second token, wherein the second token is configured to be coupled to the subnet box.
  • the virtual private network is facilitated only when the second token is coupled to the subnet box.
  • the subnet box further comprises a dynamic host configuration protocol server.
  • the first token comprises the serial number and the secret cryptographic key.
  • the subnet box can authenticate the first token.
  • a method of establishing a secure communications tunnel comprises the steps of: authenticating a remote client to a node on a private network, wherein the remote client is connected to the node via a public network, establishing a tunnel between the remote client and the node, and encapsulating all traffic in the tunnel, wherein the tunnel is established only when a unique physical token is coupled to the remote device.
  • the unique physical token comprises a smartcard. The physical token is configured to be inserted into a communications port of the remote device.
  • An advantage of the present invention is that it provides a technique for remote, secure access without requiring a VPN client application program or an enterprise VPN server. Another advantage of the invention is that it provides a technique to establish mutual authentication and an AES session key between the client and the remote network. Another advantage of the invention is that it establishes an efficient Layer 2 encryption process between two nodes. Yet another advantage of the invention is that it establishes and maintains a secure connection resulting in a virtual presence on the local network achieving all the benefits of a local connection.
  • FIG. 1 illustrates an 802.1 l(x) wireless network service provider system according to an embodiment of the invention
  • FIG. 2 illustrates remote access system according to an embodiment of the invention
  • FIG. 4 illustrates elements of a client token according to an embodiment of the invention
  • FIG. 7 illustrates a client interface according to an embodiment of the invention
  • FIGs. 9 and 10 illustrate an authentication request data packet according to an embodiment of the invention
  • FIGs. 11 and 12 illustrates an authentication response packet according to an embodiment of the invention
  • Fig. 13 illustrates generation of an AES Session Key according to an exemplary embodiment of the invention
  • FIGs. 14 and 15 illustrate a protocol for encapsulating tunnel traffic according to an embodiment of the invention.
  • FIG. 1 illustrates an 802.1 l(x) wireless network service provider system (100) according to an embodiment of the invention.
  • a client of the network system (100) employs a computing device (120), such as a laptop, having a wireless network interface card (NIC, 110).
  • the NIC (110) enables communications over an 802.1 l(x) wireless network (130) between the computing device (120) and a network edge device (140), such as a network access point, which is connected to a wired network (190), such as an Ethernet network, via a wired connection (150), such as an Ethernet cable.
  • the wired network (190) is preferably connected to the Internet, thereby permitting a client access to the Internet.
  • a set of software drivers (115) is provided to interface the NIC (110) to the operating system of the client's computing device (120) and network protocols implemented over the network (130).
  • the NIC (110) is addressed by a Media Access Control (MAC) address (105) or other unique identifier.
  • MAC Media Access Control
  • the wireless network service provider system (100) can implement more than one network edge device (140), thereby enabling multiple hot-spots. Although not shown, the system (100) can facilitate multiple clients (120).
  • Each client (120) is provided with a physical token (125) (“client token") comprising an integrated circuit (128) (or “smart card”) or an appropriate cr ptographically equipped hardware chip.
  • the client token (125) is preferably configured such that it can be connected to the computing device (120) via a Universal Serial Bus (USB) interface.
  • the client token can take the form of an expansion card, PC card, Personal Computer Memory Card International Association (PCMCIA) cards, serial port hardware, parallel port hardware, or any other hardware configuration that can be coupled to the computing device (120).
  • the client token (125) includes a pre-stored set of cryptographic keys that is never exposed to the client or to any network administrator.
  • the smart card (128) can be selected from those available from a wide- variety of manufacturers and preferably is designed and manufactured according to standard International Standards Organization (ISO) specifications, e.g., ISO Specification 7816. In an exemplary embodiment of the invention, the smart card (128) is a Schlumberger Cryptoflex Card.
  • ISO International Standards Organization
  • the smart card (128) is a key component of the authentication and secure communications technique(s) described in U.S. Patent Application No. 10/679,371. As described therein, the smart card (128) is employed to authenticate the corresponding client to the network edge device (140), which comprises its own smart card facilitated by a corresponding physical token (not shown) ("the network edge device token") coupled to the edge device (140).
  • the network edge device token Each client token (125) and the network edge device token are identified by a uniquely assigned serial number.
  • the serial number can be an eight-byte field that is laser-etched or otherwise permanently inscribed into each token. While the serial number can be freely read, it cannot be changed.
  • Each token can be further provided with a pin number that serves as a password to access and/or unlock the corresponding and underlying smart card during an initiation/installation process.
  • the client smart card (128) and the network edge device smart card store a set of network cryptographic keys comprising a Network Send Key (NKs), a Network Receive Key (NKR), and a Subscriber Secret Key (NK UIDS ) (collectively, referred to as "the Network Keys").
  • the Network Send Key is used to encrypt communications from the client PC (120) to the network edge device (140).
  • the Network Receive Key is used to decrypt communications received by the client PC (120) from the network edge device (140).
  • the Network Send Key and the Network Receive Key are common to all clients of the wireless network service provider system (100) or a particular network edge device (140).
  • the Subscriber Secret Key (“Secret Cryptographic Key”) is uniquely assigned to each client token (125).
  • a client smart card (128) may comprise multiple sets of Network Keys corresponding to a number of different wireless network service provider systems and/or network edge devices. For instance, the client may be authorized to access a number of independently operated wireless networks.
  • the present invention allows a client to plug in his client token (125) into his client device (120) and automatically establish secure connections to multiple remote networks simultaneously. This might be useful, for instance, when the client uses a hotspot to connect to his home network, office network, and a financial services network.
  • a conventional Virtual Private Network (VPN) cannot establish multiple secure end-to-end connections simultaneously. To do so, multiple VPNs would have to be employed, wherein each VPN connection requires a dedicated VPN client application. Worse, VPN clients use an encryption technology that can result in 192 bytes out for every 32 bytes in, thereby wasting valuable bandwidth.
  • an Advanced Encryption Standard (AES) algorithm is employed such that the encryption is lossless, i.e., for every 32 bytes in, you get 32 bytes out. Corporations would benefit greatly from the implementation of such an algorithm in remote networking.
  • AES Advanced Encryption Standard
  • the embodiments described herein provide a VPN-like connection that is up to six-times more efficient than conventional VPN systems.
  • Fig. 2 illustrates a remote access system (200) according to an embodiment of the invention.
  • the remote access system (200) comprises the network (100) and a corporate LAN (210) connected to one another via a public network (205), such as the Internet.
  • a remote connection is made between the remote client (120) and the corporate LAN (210) using, for example, a Transmission Control Protocol/Internet Protocol (TCP/IP) connection, the implementation of which is apparent to one of ordinary skill in the art, facilitated through an Internet Service Provider (ISP) interface (195) on the remote end.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • ISP Internet Service Provider
  • a smart card-enabled device manages each end of the connection.
  • the corporate LAN (210) comprises an ISP interface (295) to the Internet to which various internal devices of the corporate LAN are attached such as a router (250), a wireless Access Point (240), and one or more client PCs (220) connected to the access point (240) via a client NIC (230).
  • the corporate LAN (210) provides remote security through the addition of a smart card (not shown) enabled Subnet Box (260) strategically placed between the ISP Interface (295) and the router (250).
  • Fig. 3 illustrates a Subnet Box security system (300) according to an embodiment of the invention.
  • the Subnet Box (260) provides wireless link security allowing local client PCs (220) to establish a secure link (320) between themselves and the Subnet Box (260) eliminating any possible security holes.
  • General operation of the Subnet Box (260) is described in commonly owned U.S. Patent Application No. 10/935,123, filed September 8, 2004, the entire disclosure of which is incorporated herein by reference.
  • a remote secure link (310) is facilitated by the client's smart card (128) and the Subnet Box's smart card (340).
  • the Subnet Box (260) comprises a key database (330) that stores a listing of all client smart card serial numbers (350) of authorized client tokens (e.g., client token (125), etc.) along with a listing of the client tokens' corresponding encrypted secret cryptographic keys (360).
  • the key database (330) in the figure shows two serial numbers and secret cryptographic keys. This number is exemplary only. In practice, the number of serial numbers and corresponding secret cryptographic keys is equal to the number of client tokens that are authorized to use the corporate LAN (210).
  • Fig. 4 illustrates elements (400) of the client token (125) according to an embodiment of the invention.
  • each client token (125) is identified with a uniquely assigned serial number (410), a PIN Number (415), a Network Send Key (420), a Network Receive Key (430) and a unique secret cryptographic key (440).
  • the client's secret cryptographic key (440) is entered into the list (360) along with the corresponding serial number of the client into the list (350).
  • the Subnet Box (260) facilitates the remote security tunnel (310) between itself and the remote client (120) regardless of any intervening network components between the Subnet Box (260) and the remote client (120).
  • Fig. 5 illustrates a network connection (500) according to an embodiment of the invention.
  • the ISP interface (195) is represented as a cable modem (190).
  • Other types of ISP interface such as Digital Subscriber Line (DSL) modem, LAN modem, and the like can be employed, the implementation of which is apparent to one of ordinary skill in the art, as an alternative to the cable modem.
  • the cable modem (195) is typically provided with a dynamic IP address by the corresponding network of the cable ISP provider.
  • the cable modem (195) operates as a bridge interface between the cable network and the client's network or in this case, as a bridge to the Subnet Box (260).
  • the Subnet Box (260) provides capabilities of a Dynamic Host Configuration Protocol (DHCP) server and a router. Both the cable modem (195) and the Subnet Box (260) will see all packets addressed to the network IP Address of the cable modem (195). However, the Subnet Box (260) provides one or more internal addresses (540) to all local clients on the corporate network (210). More than one local network client can be attached to the network via a network hub (250) through a port (530) on the hub. The Subnet Box (260) is thus in a position to 'see' every IP packet addressed to the cable modem (195) on one side (510) and all LAN packets on the LAN side (520).
  • DHCP Dynamic Host Configuration Protocol
  • the process of providing an automatic, hardware-enabled VPN between the subnet box (260) and the remote client (120) comprises the following steps: 1. Authenticate the remote client (120) to the subnet box (260); 2. Establish an AES Session Key for a tunnel between the remote client (120) and the subnet box (260); and 3. Encapsulate all traffic in the tunnel. Authentication [0038] The process of establishing a remote, secure connection begins with the remote Client's PC (120).
  • a client implements a set of software drivers (115) comprising a Network Driver Interface Specification (NDIS) intermediate driver (610).
  • the NDIS intermediate driver (610) is a software program that is implemented between the normal operating system, e.g., Windows, low-level device driver (620) and the LAN Protocols layer (630).
  • the NDIS Intermediate driver (610) intercepts all network bound and network originated packets.
  • the NDIS Intermediate Driver (610) has no effect on network traffic and typical NIC Device Drivers (110) are employed, the implementation of which is apparent to one of ordinary skill in the art.
  • the NDIS Intermediate Driver (610) interfaces the NDIS Device Driver (620) to the Windows LAN Protocols (630) when the client token (125) is inserted into the client PC (120).
  • the client PC (120) is provided with a client interface, i.e., connection list, (700) as illustrated in Fig. 7.
  • the client can add new connections to the connection list (700) allowing automatic, secure remote connections to be made when the client token (125) is inserted.
  • Each item in the list is further provided with a startup toggle (720) and an enable toggle (730) allowing the user to configure a list but limit which connections to be made at any particular time.
  • Each individual remote connection (710) represents an IP address, Domain Name System (DNS) name of the remote network (100) or other unique identifier that can be used to obtain the current IP address of the remote network (100).
  • DNS Domain Name System
  • the NDIS Intermediate Driver (610) will send a first authentication packet to the IP Address or DNS name of the remote connection (710).
  • Fig. 8 illustrates an authentication protocol (800) according to an embodiment of the invention.
  • a packet header (810) comprises a standard Ethernet header (812), an IP header (814), and a TCP header (816).
  • the IP header (814) contains the IP address of the remote network (100).
  • the TCP Header (816) comprises the port number of the authentication process within the Subnet Box (260).
  • This TCP/IP packet which is sent by the remote client (120), will be received by the cable modem (195) and passed onto the Subnet Box (260) where it will be processed.
  • the packet header (810) is followed by a protocol header (820) and followed again with appropriate data (830), which comprises an authentication protocol header (832) and an authentication request data packet (834).
  • the authentication protocol header (832) conveys information such as the version and type of authentication protocol and a sequence number.
  • Fig. 9 illustrates authentication request data packet according to an embodiment of the invention.
  • the authentication data (identified previously in data (834)) comprises a random number (“keydata") generated by the client token (125) and encrypted with the secret cryptographic key (440) (see 920).
  • the breakdown of an "authRequestData" field of the authentication protocol header (832) is shown (see 910).
  • the serial field contains the serial number (410) of the client token (125).
  • a hash is computed to ensure the integrity of the packet when received by the Subnet Box (260) and is computed as shown in Fig. 10 (see 1000).
  • the protocol header (820), authentication protocol header (832), keyData, and the serial number (410) is hashed to provide a signature of the data.
  • the authRequestData field (900) comprises the keyData, the serial number (410), hash, and padding (see 900) all of which is encrypted by the Network Send Key (420) and transmitted to the Subnet Box (260).
  • the Subnet Box (260) On receipt of this packet, the Subnet Box (260) will process the packet to extract the serial number (410) of the client token (125). The Subnet Box (260) will first decrypt the authData (900) field recovering the encrypted keyData, the serial number (410), and hash. The serial number (410) will be used to extract the secret cryptographic key (440) from the key database (330) of the Subnet Box (260) if it exists. A hash is then computed as originally constructed (1000) and compared against the received hash. If they match, the authentication process continues, otherwise an error message is returned to the client (120). [0045] Fig. 11 illustrates an authentication response packet according to an embodiment of the invention.
  • the authentication response packet comprises a second random number generated by the Subnet Box (260) and encrypted with the client's secret cryptographic key (440) to form a keyData field (1110).
  • a hash (1120) is computed to serve as an integrity check when the client (120) receives the response packet.
  • a status byte (1220) indicates the result of the authentication process.
  • An "authResponseDatafield" (1210) comprises the encrypted keyData, status byte (1220), and hash (112) encrypted with the Network Send Key (420).
  • the authentication response packet is formed identically to the format shown in Fig.
  • the Client NDIS Intermediate Driver (610) processes the packet by decrypting the keyData field (1110) to recover the second random number generated by the Subnet Box (260) after checking the hash (1120) to make sure the packet was not tampered with during transmission.
  • a base AES Session Key can be readily computed.
  • Fig. 13 illustrates generation of an AES Session Key according to an exemplary embodiment of the invention. Particularly, the two 128-bit random numbers are concatenated (step
  • the AES Session Key (1350) is then associated with the IP address of the remote network (100).
  • a table (1020) is maintained in the Client NDIS
  • the Subnet Box (260) will assign a local IP Address (1050) for the client PC (120) and complete the entry in the remote client connected table (1020).
  • any packet received by the remote client (120) is decrypted by the Subnet Box (260) and placed onto the local area network (LAN) with the local
  • IP address (1050) substituted for the actual source IP Address (1040) of the Remote IP address
  • the Subnet Box (260) bridges any network packets received on the
  • This remote/local translation thus allows the remote Client PC (120) to appear virtually on the LAN and likewise allows the Remote Client PC (120) the ability to 'see' the LAN is if locally connected.
  • the Client NDIS Intermediate Driver (610) will intercept all outbound packets to the remote network once authentication is complete and an AES Session Key is generated.
  • the packet header (1400) comprises an Ethernet Header (1410), IP Header (1420) and a TCP Header (1430).
  • the IP header (1420) will be examined and if a match is found between the Destination IP Address contained in the IP Header (1420) and an entry in the Remote Connection Table (1300), the packet will be encrypted as shown in Figs. 14 and 15. As shown in Fig. 16, the encryption of the packet takes place by the NDIS Intermediate Driver (610) at the Network Layer, Layer 2.
  • a Layer 2 solution is transparent to all higher layer protocols and applications (layer 4) and is preferred over VPN methods that are essentially Layer 4 (Application Layer) solutions as a Layer 2 solution is much less susceptible to tampering than is a higher layer solution.
  • the packet (1540) comprises the IP address of the remote network Subnet Box (260) and the Koolspan TCP port number that the Subnet Box will automatically recognize as a Koolspan packet.
  • the resulting packet (1540) is then transmitted via ordinary network methods to the remote network Subnet Box (260).
  • the Cable Modem (195) On receipt of an inbound packet, the Cable Modem (195) will pass the packet to the Subnet Box (260).
  • the Subnet Box (260) examines the TCP port header (1430) and recognize that this is a Koolspan data packet.
  • the source IP address contained in the IP Header (1420) and the source Port Number contained in the TCP Header (1430) will be compared against entries in the Remote Client Connection Table (1020). If the packet contains a Protocol Header (1440) followed by an Encryption Header (1460), the matching AES Session Key (1030) is retrieved from the Remote Client Connection Table (10920) and used to decrypt the encrypted data (1470). As shown in Fig.
  • the CRC will be computed on the KP (1440), KEP (1460) and data fields (step 1550), and compared against the decrypted CRC contained within the encrypted packet (1540). If a match is found, a new packet will be constructed containing the extracted, original IP header and decrypted data and will then be passed onto the Corporate LAN unencrypted via the Subnet Box network port (510).
  • the Subnet Box (260) can thus enable multiple secure remote client connections simultaneously.
  • the Client NDIS Intermediate driver (610) can similarly maintain multiple secure remote connections to multiple networks simultaneously.

Abstract

The present invention provides a technique for automatically establishing efficient, remote, secure client connections to one or more locations using a smart card enabled client driver and a smart card enabled network edge device ('Subnet Box') capable of establishing an end-to-end hardware encrypted tunnel between itself and the client. In an embodiment of the invention, a method of establishing a secure communications tunnel comprises the steps of: authenticating a remote client to a subnet box on a private network, wherein the remote client is connected to the subnet box via a public network, establishing a tunnel between the remote client and the subnet box, and encapsulating all traffic in the tunnel, wherein the tunnel is established only when a unique physical token is coupled to the remote device. The unique physical token comprises a smartcard and is configured to be inserted into a communications port of the remote device. The step of authenticating comprises the steps of: receiving an authentication packet, wherein the first authentication packet comprises an identifier identifying the unique physical token and a first random number, and transmitting a response authentication packet, wherein the response authentication packet comprise a second random number. The step of establishing a secure communications tunnel comprises the step of generating a cryptographic key based on the first and second random numbers.

Description

AUTOMATIC HARDWARE-ENABLED VIRTUAL PRIVATE NETWORK SYSTEM
BACKGROUND OF THE INVENTION
1. Field of the Invention
[0001] The present invention relates to wireless networking, and more particularly, to an automatic hardware-enabled virtual private network technique.
2. Description of Related Art
[0002] A Wireless Local Area Network (WLAN) is generally implemented to provide local connectivity between a wired network and a mobile computing device. In a typical wireless network, all of the computing devices within the network broadcast their information to one another using radio frequency (RF) communications. WLANs are based on the Institute of Electrical and Electronic Engineers (IEEE) 802.11 standard, which designates a wireless-Ethernet specification using a variety of modulation techniques at frequencies generally in the 2.4 gigahertz (GHz) and 5 GHz license-free frequency bands. [0003] The IEEE 802.11 standard ("Wi-Fi"), the disclosure of which is incorporated herein in its entirety by reference, enables wireless communications with throughput rates up to 54 Mbps. Wi-Fi (for "wireless fidelity") is essentially a seal of approval certifying that a manufacturer's product is compliant with IEEE 802.11. For example, equipment carrying the "Wi-Fi" logo is certified to be interoperable with other Wi-Fi certified equipment. There are Wi-Fi compatible PC cards that operate in peer-to-peer mode, but Wi-Fi usually incorporates at least one access point, or edge device. Most access points have an integrated Ethernet controller to connect to an existing wired-Ethernet network. A Wi-Fi wireless transceiver connects users via the access point to the rest of the LAN. The majority of Wi-Fi wireless transceivers available are in Personal Computer Memory Card International Association (PCMCIA) card form, particularly for laptop, palmtop, and other portable computers, however Wi-Fi transceivers can be implemented through an Industry Standard Architecture (ISA) slot or Peripheral Component Interconnect (PCI) slot in a desktop computer, a Universal Serial Bus (USB), or can be fully integrated within a handheld device. [0004] Users accessing data networks remotely often do so without security.
This is particularly the case when a corporate user accesses his corporate Local Area Network (LAN) from a public hotspot. Most hotspots provide no security across the wireless link. This makes it mandatory to employ an external method of providing security to avoid confidential data being eavesdropped by unauthorized users. Typically, users desiring a secure connection to their corporate LAN employ a Virtual Private Network (VPN) solution. A VPN solution uses a special application on the user's computer and typically a VPN-Server strategically located on the corporate LAN. VPNs provide an end-to-end security solution regardless of the equipment or network components between the user's computer and the corporate network. VPNs however are slow and cumbersome and absorb a good portion of the available bandwidth. Client-side VPNs however, support only a single connection, that is, a connection between the user and the corporate LAN. A user desiring a second simultaneous connection would have to run a second VPN application to connect to a second location.
SUMMARY OF THE INVENTION
[0005] The present invention overcomes these and other deficiencies of the prior art by automatically establishing efficient, remote, secure client connections to one or more locations using a smart card enabled client driver and a smart card enabled network edge device ("Subnet Box') capable of establishing an end-to-end hardware encrypted tunnel between itself and the client.
[0006] In an embodiment of the invention, an automatic hardware-enabled virtual private network system comprises: a first token, wherein the first token is configured to be coupled to a computing device, a subnet box, and a key database, wherein the key database comprises a serial number and a secret cryptographic key associated with the token. The computing device is connected to the subnet box via a public network, the subnet box is a node on a private network, and the subnet box facilitates a virtual private network connection between the private network and the computing device when the first token is coupled to the computing device. The system further comprises a second token, wherein the second token is configured to be coupled to the subnet box. The virtual private network is facilitated only when the second token is coupled to the subnet box. The subnet box further comprises a dynamic host configuration protocol server. The first token comprises the serial number and the secret cryptographic key. The subnet box can authenticate the first token.
[0007] In another embodiment of the invention, a method of establishing a secure communications tunnel comprises the steps of: authenticating a remote client to a node on a private network, wherein the remote client is connected to the node via a public network, establishing a tunnel between the remote client and the node, and encapsulating all traffic in the tunnel, wherein the tunnel is established only when a unique physical token is coupled to the remote device. The unique physical token comprises a smartcard. The physical token is configured to be inserted into a communications port of the remote device. The step of authenticating comprises the steps of: receiving an authentication packet, wherein the first authentication packet comprises an identifier identifying the unique physical token and a first random number, and transmitting a response authentication packet, wherein the response authentication packet comprise a second random number. The step of establishing a secure communications tunnel comprises the step of generating a cryptographic key based on the first and second random numbers.
[0008] An advantage of the present invention is that it provides a technique for remote, secure access without requiring a VPN client application program or an enterprise VPN server. Another advantage of the invention is that it provides a technique to establish mutual authentication and an AES session key between the client and the remote network. Another advantage of the invention is that it establishes an efficient Layer 2 encryption process between two nodes. Yet another advantage of the invention is that it establishes and maintains a secure connection resulting in a virtual presence on the local network achieving all the benefits of a local connection.
[0009] The foregoing, and other features and advantages of the invention, will be apparent from the following, more particular description of the preferred embodiments of the invention, the accompanying drawings, and the claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] For a more complete understanding of the present invention, the objects and advantages thereof, reference is now made to the following descriptions taken in connection with the accompanying drawings in which:
[0011] Fig. 1 illustrates an 802.1 l(x) wireless network service provider system according to an embodiment of the invention;
[0012] Fig. 2 illustrates remote access system according to an embodiment of the invention;
[0013] Fig. 3 illustrates a Subnet Box security system according to an embodiment of the invention;
[0014] Fig. 4 illustrates elements of a client token according to an embodiment of the invention;
[0015] Fig. 5 illustrates a network connection according to an embodiment of the invention;
[0016] Fig. 6 illustrates a network driver interface system according to an embodiment of the invention;
[0017] Fig. 7 illustrates a client interface according to an embodiment of the invention;
[0018] Fig. 8 illustrates an authentication protocol according to an embodiment of the invention;
[0019] Figs. 9 and 10 illustrate an authentication request data packet according to an embodiment of the invention;
[0020] Figs. 11 and 12 illustrates an authentication response packet according to an embodiment of the invention;
[0021] Fig. 13 illustrates generation of an AES Session Key according to an exemplary embodiment of the invention;
[0022] Figs. 14 and 15 illustrate a protocol for encapsulating tunnel traffic according to an embodiment of the invention; and
[0023] Fig. 16 illustrates a technique for deriving a shared session key according to an embodiment of the invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0024] Preferred embodiments of the present invention and their advantages may be understood by referring to Figs. 1-16, wherein like reference numerals refer to like elements, and are described in the context of an IEEE 802.11(x) ("Wi-Fi", wherein "x" denotes any of the various extensions of 802.11 such as "a", "b", or "g") wireless network operating in the public space for wireless subscribers. As would be readily apparent to those skilled in the art, the inventive techniques described herein are well suited for any type of wired and/or wireless communications protocol.
[0025] Fig. 1 illustrates an 802.1 l(x) wireless network service provider system (100) according to an embodiment of the invention. A client of the network system (100) employs a computing device (120), such as a laptop, having a wireless network interface card (NIC, 110). The NIC (110) enables communications over an 802.1 l(x) wireless network (130) between the computing device (120) and a network edge device (140), such as a network access point, which is connected to a wired network (190), such as an Ethernet network, via a wired connection (150), such as an Ethernet cable. The wired network (190) is preferably connected to the Internet, thereby permitting a client access to the Internet. A set of software drivers (115) is provided to interface the NIC (110) to the operating system of the client's computing device (120) and network protocols implemented over the network (130). The NIC (110) is addressed by a Media Access Control (MAC) address (105) or other unique identifier. One of ordinary skill in the art recognizes that the wireless network service provider system (100) can implement more than one network edge device (140), thereby enabling multiple hot-spots. Although not shown, the system (100) can facilitate multiple clients (120).
[0026] Each client (120) is provided with a physical token (125) ("client token") comprising an integrated circuit (128) (or "smart card") or an appropriate cr ptographically equipped hardware chip. The client token (125) is preferably configured such that it can be connected to the computing device (120) via a Universal Serial Bus (USB) interface. In alternative embodiments, the client token can take the form of an expansion card, PC card, Personal Computer Memory Card International Association (PCMCIA) cards, serial port hardware, parallel port hardware, or any other hardware configuration that can be coupled to the computing device (120). The client token (125) includes a pre-stored set of cryptographic keys that is never exposed to the client or to any network administrator. These pre-stored keys are used to encrypt data that is transferred from the client's computing device (120) to the network edge device (140) preferably in accordance with one or more techniques described in commonly owned and copending U.S. Patent Application Nos. 10/679,268, 10/679,371, and 10/679,472, the disclosures of which are incorporated herein by reference in their entirety. Nonetheless, one of ordinary skill in the art recognizes that other secure communications techniques can be implemented in alternative embodiments of the present invention. The smart card (128) can be selected from those available from a wide- variety of manufacturers and preferably is designed and manufactured according to standard International Standards Organization (ISO) specifications, e.g., ISO Specification 7816. In an exemplary embodiment of the invention, the smart card (128) is a Schlumberger Cryptoflex Card.
[0027] The smart card (128) is a key component of the authentication and secure communications technique(s) described in U.S. Patent Application No. 10/679,371. As described therein, the smart card (128) is employed to authenticate the corresponding client to the network edge device (140), which comprises its own smart card facilitated by a corresponding physical token (not shown) ("the network edge device token") coupled to the edge device (140). Each client token (125) and the network edge device token are identified by a uniquely assigned serial number. For example, the serial number can be an eight-byte field that is laser-etched or otherwise permanently inscribed into each token. While the serial number can be freely read, it cannot be changed. Each token can be further provided with a pin number that serves as a password to access and/or unlock the corresponding and underlying smart card during an initiation/installation process. [0028] The client smart card (128) and the network edge device smart card store a set of network cryptographic keys comprising a Network Send Key (NKs), a Network Receive Key (NKR), and a Subscriber Secret Key (NKUIDS) (collectively, referred to as "the Network Keys"). The Network Send Key is used to encrypt communications from the client PC (120) to the network edge device (140). The Network Receive Key is used to decrypt communications received by the client PC (120) from the network edge device (140). The Network Send Key and the Network Receive Key are common to all clients of the wireless network service provider system (100) or a particular network edge device (140). Generally, the Subscriber Secret Key ("Secret Cryptographic Key") is uniquely assigned to each client token (125). Moreover, a client smart card (128) may comprise multiple sets of Network Keys corresponding to a number of different wireless network service provider systems and/or network edge devices. For instance, the client may be authorized to access a number of independently operated wireless networks. A more detailed explanation of the generation of the above-identified keys is provided in commonly owned U.S. Patent Application Nos. 10/679,268, 10/679,371, and 10/679,472. [0029] The present invention allows a client to plug in his client token (125) into his client device (120) and automatically establish secure connections to multiple remote networks simultaneously. This might be useful, for instance, when the client uses a hotspot to connect to his home network, office network, and a financial services network. A conventional Virtual Private Network (VPN) cannot establish multiple secure end-to-end connections simultaneously. To do so, multiple VPNs would have to be employed, wherein each VPN connection requires a dedicated VPN client application. Worse, VPN clients use an encryption technology that can result in 192 bytes out for every 32 bytes in, thereby wasting valuable bandwidth. In an embodiment of the present invention, an Advanced Encryption Standard (AES) algorithm is employed such that the encryption is lossless, i.e., for every 32 bytes in, you get 32 bytes out. Corporations would benefit greatly from the implementation of such an algorithm in remote networking. The embodiments described herein provide a VPN-like connection that is up to six-times more efficient than conventional VPN systems.
[0030] Fig. 2 illustrates a remote access system (200) according to an embodiment of the invention. Particularly, the remote access system (200) comprises the network (100) and a corporate LAN (210) connected to one another via a public network (205), such as the Internet. A remote connection is made between the remote client (120) and the corporate LAN (210) using, for example, a Transmission Control Protocol/Internet Protocol (TCP/IP) connection, the implementation of which is apparent to one of ordinary skill in the art, facilitated through an Internet Service Provider (ISP) interface (195) on the remote end. As will be described in greater detail, a smart card-enabled device manages each end of the connection.
[0031] In a typical configuration, the corporate LAN (210) comprises an ISP interface (295) to the Internet to which various internal devices of the corporate LAN are attached such as a router (250), a wireless Access Point (240), and one or more client PCs (220) connected to the access point (240) via a client NIC (230). In an embodiment of the invention, the corporate LAN (210) provides remote security through the addition of a smart card (not shown) enabled Subnet Box (260) strategically placed between the ISP Interface (295) and the router (250). [0032] Fig. 3 illustrates a Subnet Box security system (300) according to an embodiment of the invention. In this system (300), the Subnet Box (260) provides wireless link security allowing local client PCs (220) to establish a secure link (320) between themselves and the Subnet Box (260) eliminating any possible security holes. General operation of the Subnet Box (260) is described in commonly owned U.S. Patent Application No. 10/935,123, filed September 8, 2004, the entire disclosure of which is incorporated herein by reference. A remote secure link (310) is facilitated by the client's smart card (128) and the Subnet Box's smart card (340). The Subnet Box (260) comprises a key database (330) that stores a listing of all client smart card serial numbers (350) of authorized client tokens (e.g., client token (125), etc.) along with a listing of the client tokens' corresponding encrypted secret cryptographic keys (360). The key database (330) in the figure shows two serial numbers and secret cryptographic keys. This number is exemplary only. In practice, the number of serial numbers and corresponding secret cryptographic keys is equal to the number of client tokens that are authorized to use the corporate LAN (210). [0033] Fig. 4 illustrates elements (400) of the client token (125) according to an embodiment of the invention. As noted earlier, each client token (125) is identified with a uniquely assigned serial number (410), a PIN Number (415), a Network Send Key (420), a Network Receive Key (430) and a unique secret cryptographic key (440). When an entry is made into the key database (330) of the Subnet Box (260), the client's secret cryptographic key (440) is entered into the list (360) along with the corresponding serial number of the client into the list (350). [0034] The Subnet Box (260) facilitates the remote security tunnel (310) between itself and the remote client (120) regardless of any intervening network components between the Subnet Box (260) and the remote client (120). [0035] Fig. 5 illustrates a network connection (500) according to an embodiment of the invention. Here, the ISP interface (195) is represented as a cable modem (190). Other types of ISP interface such as Digital Subscriber Line (DSL) modem, LAN modem, and the like can be employed, the implementation of which is apparent to one of ordinary skill in the art, as an alternative to the cable modem. The cable modem (195) is typically provided with a dynamic IP address by the corresponding network of the cable ISP provider. The cable modem (195) operates as a bridge interface between the cable network and the client's network or in this case, as a bridge to the Subnet Box (260).
[0036] In an embodiment of the invention, the Subnet Box (260) provides capabilities of a Dynamic Host Configuration Protocol (DHCP) server and a router. Both the cable modem (195) and the Subnet Box (260) will see all packets addressed to the network IP Address of the cable modem (195). However, the Subnet Box (260) provides one or more internal addresses (540) to all local clients on the corporate network (210). More than one local network client can be attached to the network via a network hub (250) through a port (530) on the hub. The Subnet Box (260) is thus in a position to 'see' every IP packet addressed to the cable modem (195) on one side (510) and all LAN packets on the LAN side (520). [0037] The process of providing an automatic, hardware-enabled VPN between the subnet box (260) and the remote client (120) comprises the following steps: 1. Authenticate the remote client (120) to the subnet box (260); 2. Establish an AES Session Key for a tunnel between the remote client (120) and the subnet box (260); and 3. Encapsulate all traffic in the tunnel. Authentication [0038] The process of establishing a remote, secure connection begins with the remote Client's PC (120).
[0039] Referring to Fig. 6, which illustrates a network driver interface system (600), a client implements a set of software drivers (115) comprising a Network Driver Interface Specification (NDIS) intermediate driver (610). The NDIS intermediate driver (610) is a software program that is implemented between the normal operating system, e.g., Windows, low-level device driver (620) and the LAN Protocols layer (630). When the client token (125) is coupled to the client's computing device (120), the NDIS Intermediate driver (610) intercepts all network bound and network originated packets. When the client token (125) is removed, the NDIS Intermediate Driver (610) has no effect on network traffic and typical NIC Device Drivers (110) are employed, the implementation of which is apparent to one of ordinary skill in the art. The NDIS Intermediate Driver (610) interfaces the NDIS Device Driver (620) to the Windows LAN Protocols (630) when the client token (125) is inserted into the client PC (120).
[0040] According to an embodiment of the invention, the client PC (120) is provided with a client interface, i.e., connection list, (700) as illustrated in Fig. 7. Here, the client can add new connections to the connection list (700) allowing automatic, secure remote connections to be made when the client token (125) is inserted. Each item in the list is further provided with a startup toggle (720) and an enable toggle (730) allowing the user to configure a list but limit which connections to be made at any particular time. Each individual remote connection (710) represents an IP address, Domain Name System (DNS) name of the remote network (100) or other unique identifier that can be used to obtain the current IP address of the remote network (100). One of ordinary skill in the art understands the meaning and use of either method of representation. [0041] On insertion of the client's token (125), the NDIS Intermediate
Driver (610) will scan the list of enabled remote network connections (730) as shown in the Remote Connections tab of the client interface (700). Beginning with the first enabled connection in the remote network connections tab and continuing to the last remote connection entry, the NDIS Intermediate Driver (610) will send a first authentication packet to the IP Address or DNS name of the remote connection (710).
[0042] Fig. 8 illustrates an authentication protocol (800) according to an embodiment of the invention. A packet header (810) comprises a standard Ethernet header (812), an IP header (814), and a TCP header (816). The IP header (814) contains the IP address of the remote network (100). The TCP Header (816) comprises the port number of the authentication process within the Subnet Box (260). This TCP/IP packet, which is sent by the remote client (120), will be received by the cable modem (195) and passed onto the Subnet Box (260) where it will be processed. The packet header (810) is followed by a protocol header (820) and followed again with appropriate data (830), which comprises an authentication protocol header (832) and an authentication request data packet (834). The authentication protocol header (832) conveys information such as the version and type of authentication protocol and a sequence number.
[0043] Fig. 9 illustrates authentication request data packet according to an embodiment of the invention. The authentication data (identified previously in data (834)) comprises a random number ("keydata") generated by the client token (125) and encrypted with the secret cryptographic key (440) (see 920). The breakdown of an "authRequestData" field of the authentication protocol header (832) is shown (see 910). The serial field contains the serial number (410) of the client token (125). A hash is computed to ensure the integrity of the packet when received by the Subnet Box (260) and is computed as shown in Fig. 10 (see 1000). The protocol header (820), authentication protocol header (832), keyData, and the serial number (410) is hashed to provide a signature of the data. The authRequestData field (900) comprises the keyData, the serial number (410), hash, and padding (see 900) all of which is encrypted by the Network Send Key (420) and transmitted to the Subnet Box (260).
[0044] On receipt of this packet, the Subnet Box (260) will process the packet to extract the serial number (410) of the client token (125). The Subnet Box (260) will first decrypt the authData (900) field recovering the encrypted keyData, the serial number (410), and hash. The serial number (410) will be used to extract the secret cryptographic key (440) from the key database (330) of the Subnet Box (260) if it exists. A hash is then computed as originally constructed (1000) and compared against the received hash. If they match, the authentication process continues, otherwise an error message is returned to the client (120). [0045] Fig. 11 illustrates an authentication response packet according to an embodiment of the invention. The authentication response packet comprises a second random number generated by the Subnet Box (260) and encrypted with the client's secret cryptographic key (440) to form a keyData field (1110). A hash (1120) is computed to serve as an integrity check when the client (120) receives the response packet. Referring to Fig. 12, a status byte (1220) indicates the result of the authentication process. An "authResponseDatafield" (1210) comprises the encrypted keyData, status byte (1220), and hash (112) encrypted with the Network Send Key (420). The authentication response packet is formed identically to the format shown in Fig. 8 with the appropriate fields changed to indicate the proper sequence number, authType field (="response"), and the TCP/IP headers changed to reflect those of the client (120). Establishing an AES Session Key [0046] On receipt of the authentication response packet from the Subnet Box
(260), the Client NDIS Intermediate Driver (610) processes the packet by decrypting the keyData field (1110) to recover the second random number generated by the Subnet Box (260) after checking the hash (1120) to make sure the packet was not tampered with during transmission.
[0047] As both sides of the link (client and Subnet Box) know both random numbers, a base AES Session Key can be readily computed. Fig. 13 illustrates generation of an AES Session Key according to an exemplary embodiment of the invention. Particularly, the two 128-bit random numbers are concatenated (step
1310) and then hashed eight times (step 1320) resulting in a 1280-bit concatenated digest (step 1330). This digest is then collapsed by exclusive-or'ing each group of five bits (step 1340), thereby resulting in a 256-bit AES Session key (1350).
[0048] The AES Session Key (1350) is then associated with the IP address of the remote network (100). A table (1020) is maintained in the Client NDIS
Intermediate Driver (610) mapping a remote IP address (1040) to an AES Session
Key (1030). After authentication, all communications between the client (120) and the remote network employ the AES Session Key (1350) for encrypting/decrypting data.
[0049] The Subnet Box (260) will assign a local IP Address (1050) for the client PC (120) and complete the entry in the remote client connected table (1020).
After authentication, any packet received by the remote client (120) is decrypted by the Subnet Box (260) and placed onto the local area network (LAN) with the local
IP address (1050) substituted for the actual source IP Address (1040) of the Remote
Client (120).
[0050] The Subnet Box (260) bridges any network packets received on the
LAN side to the remote client (120) by substituting the Local IP Address (1050) for the network IP Address. Likewise, any packets received from the remote client PC
(120) are bridged onto the LAN substituting the Local IP Address (1050) for the remote client PC Source IP Address (1040).
[0051] This remote/local translation, thus allows the remote Client PC (120) to appear virtually on the LAN and likewise allows the Remote Client PC (120) the ability to 'see' the LAN is if locally connected.
[0052] Similarly, the Subnet Box (260) will make a corresponding entry of the AES Session Key (1030) in its remote connection table (1020).
[0053] The process of authentication and establishing an AES Session Key is repeated for each additional enabled remote network connection (710) in the user interface: Remote Connections Tab (700).
[0054] When the user removes his token (125), all remote connections are programmatically disconnected and the Client's Remote Connection Table is cleared of all entries. The Subnet Box (260) at the remote network likewise will clear its entry for the matching IP Address and TCP Port of the Client. A similar process results if the Client un-checks the "Enable" checkbox of the Remote Connections Tab (700) for a particular remote connection (710). Encapsulating Tunneled Traffic [0055] After establishing mutual authentication and generating an AES
Session Key for use in communicating with a remote network, The Client NDIS Intermediate Driver (510), will encapsulate all outbound traffic to that IP address as shown in Fig. 14.
[0056] The Client NDIS Intermediate Driver (610) will intercept all outbound packets to the remote network once authentication is complete and an AES Session Key is generated. The packet header (1400) comprises an Ethernet Header (1410), IP Header (1420) and a TCP Header (1430). The IP header (1420) will be examined and if a match is found between the Destination IP Address contained in the IP Header (1420) and an entry in the Remote Connection Table (1300), the packet will be encrypted as shown in Figs. 14 and 15. As shown in Fig. 16, the encryption of the packet takes place by the NDIS Intermediate Driver (610) at the Network Layer, Layer 2. A Layer 2 solution is transparent to all higher layer protocols and applications (layer 4) and is preferred over VPN methods that are essentially Layer 4 (Application Layer) solutions as a Layer 2 solution is much less susceptible to tampering than is a higher layer solution.
[0057] The Client NDIS Intermediate Driver (610) takes the initial IP packet
(1530) and encrypts it and a CRC with the AES Session Key (step 1510). The CRC is computed (step 1550) and is a checksum on the KP, KEP and data fields. The packet (1540) comprises the IP address of the remote network Subnet Box (260) and the Koolspan TCP port number that the Subnet Box will automatically recognize as a Koolspan packet. The resulting packet (1540) is then transmitted via ordinary network methods to the remote network Subnet Box (260).
[0058] On receipt of an inbound packet, the Cable Modem (195) will pass the packet to the Subnet Box (260). The Subnet Box (260) examines the TCP port header (1430) and recognize that this is a Koolspan data packet. The source IP address contained in the IP Header (1420) and the source Port Number contained in the TCP Header (1430) will be compared against entries in the Remote Client Connection Table (1020). If the packet contains a Protocol Header (1440) followed by an Encryption Header (1460), the matching AES Session Key (1030) is retrieved from the Remote Client Connection Table (10920) and used to decrypt the encrypted data (1470). As shown in Fig. 15, the CRC will be computed on the KP (1440), KEP (1460) and data fields (step 1550), and compared against the decrypted CRC contained within the encrypted packet (1540). If a match is found, a new packet will be constructed containing the extracted, original IP header and decrypted data and will then be passed onto the Corporate LAN unencrypted via the Subnet Box network port (510).
[0059] The Subnet Box (260) can thus enable multiple secure remote client connections simultaneously. The Client NDIS Intermediate driver (610) can similarly maintain multiple secure remote connections to multiple networks simultaneously.
[0060] Other embodiments and uses of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. Although the invention has been particularly shown and described with reference to several preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined in the appended claims.

Claims

1. An automatic hardware-enabled virtual private network system comprising: a first token, wherein said first token is configured to be coupled to a computing device, a subnet box, and a key database, wherein said key database comprises a serial number and a secret cryptographic key associated with said token.
2. The system of claim 1, wherein said computing device is connected to said subnet box via a public network, said subnet box is a node on a private network, and said subnet box facilitates a virtual private network connection between said private network and said computing device when said first token is coupled to said computing device.
3. The system of claim 2, further comprising a second token, wherein said second token is configured to be coupled to said subnet box.
4. The system of claim 3, wherein said virtual private network is facilitated only when said second token is coupled to said subnet box.
5. The system of claim 1, wherein said subnet box further comprises a dynamic host configuration protocol server.
6. The system of claim 1, wherein said first token comprises said serial number and said secret cryptographic key.
7. The system of claim 1, wherein said subnet box can authenticate said first token.
8. A method of establishing a secure communications tunnel, the method comprising the steps of: authenticating a remote client to a node on a private network, wherein said remote client is connected to said node via a public network, establishing a tunnel between said remote client and said node, and encapsulating all traffic in said tunnel, wherein said tunnel is established only when a unique physical token is coupled to said remote device.
9. The method of claim 8, wherein said unique physical token comprises a smartcard.
10. The method of claim 9, wherein said physical token is configured to be inserted into a communications port of said remote device.
11. The method of claim 8, wherein said step of authenticating comprises the steps of: receiving an authentication packet, wherein said first authentication packet comprises an identifier identifying said unique physical token and a first random number, and transmitting a response authentication packet, wherein said response authentication packet comprise a second random number.
12. The method of claim 11, wherein said step of establishing a secure communications tunnel comprises the step of generating a cryptographic key based on said first and second random numbers.
PCT/US2004/040173 2003-12-02 2004-12-02 Automatic hardware-enabled virtual private network system WO2005057341A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US52612303P 2003-12-02 2003-12-02
US60/526,123 2003-12-02

Publications (2)

Publication Number Publication Date
WO2005057341A2 true WO2005057341A2 (en) 2005-06-23
WO2005057341A3 WO2005057341A3 (en) 2006-09-08

Family

ID=34676598

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2004/040173 WO2005057341A2 (en) 2003-12-02 2004-12-02 Automatic hardware-enabled virtual private network system

Country Status (1)

Country Link
WO (1) WO2005057341A2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009027756A3 (en) * 2007-08-28 2009-09-17 Abb Research Limited Real-time communication security for automation networks
WO2011030841A1 (en) 2009-09-10 2011-03-17 協和発酵キリン株式会社 Medicament including antibody composition specifically bound to human cc chemokine receptor 4 (ccr4)
US8240558B2 (en) 2008-01-15 2012-08-14 Aristocrat Technologies Australia Pty Limited Method of processing a user data card, an interface module and a gaming system
CN103546472A (en) * 2013-10-28 2014-01-29 中国软件与技术服务股份有限公司 Method and device for anti-fake protection of service system
EP3991749A2 (en) 2015-07-14 2022-05-04 Kyowa Kirin Co., Ltd. A therapeutic agent for a tumor comprising an ido inhibitor administered in combination with an antibody

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020029350A1 (en) * 2000-02-11 2002-03-07 Cooper Robin Ross Web based human services conferencing network
US20030041091A1 (en) * 2001-08-23 2003-02-27 Hughes Electronics Corporation Domain name system resolution

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020029350A1 (en) * 2000-02-11 2002-03-07 Cooper Robin Ross Web based human services conferencing network
US20030041091A1 (en) * 2001-08-23 2003-02-27 Hughes Electronics Corporation Domain name system resolution

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009027756A3 (en) * 2007-08-28 2009-09-17 Abb Research Limited Real-time communication security for automation networks
US9300467B2 (en) 2007-08-28 2016-03-29 Abb Research Ltd Real-time communication security for automation networks
US8240558B2 (en) 2008-01-15 2012-08-14 Aristocrat Technologies Australia Pty Limited Method of processing a user data card, an interface module and a gaming system
WO2011030841A1 (en) 2009-09-10 2011-03-17 協和発酵キリン株式会社 Medicament including antibody composition specifically bound to human cc chemokine receptor 4 (ccr4)
CN103546472A (en) * 2013-10-28 2014-01-29 中国软件与技术服务股份有限公司 Method and device for anti-fake protection of service system
CN103546472B (en) * 2013-10-28 2017-10-24 中国软件与技术服务股份有限公司 A kind of method and apparatus of the false proof protection of operation system
EP3991749A2 (en) 2015-07-14 2022-05-04 Kyowa Kirin Co., Ltd. A therapeutic agent for a tumor comprising an ido inhibitor administered in combination with an antibody

Also Published As

Publication number Publication date
WO2005057341A3 (en) 2006-09-08

Similar Documents

Publication Publication Date Title
US7725933B2 (en) Automatic hardware-enabled virtual private network system
US7934005B2 (en) Subnet box
US7028186B1 (en) Key management methods for wireless LANs
US8635456B2 (en) Remote secure authorization
US7607015B2 (en) Shared network access using different access keys
US9294915B2 (en) Localized network authentication and security using tamper-resistant keys
US7325134B2 (en) Localized network authentication and security using tamper-resistant keys
Miller Facing the challenge of wireless security
US8515078B2 (en) Mass subscriber management
EP1643714A1 (en) Access point that provides a symmetric encryption key to an authenticated wireless station
EP1629655A1 (en) Methods and systems of remote authentication for computer networks
US8769281B2 (en) Method and apparatus for securing communication between a mobile node and a network
US20120272310A1 (en) Systems and methods for secure communication over a wireless network
WO2005057341A2 (en) Automatic hardware-enabled virtual private network system
Williams The IEEE 802.11 b security problem. 1
Uskela Security in Wireless Local Area Networks
WO2005026976A1 (en) Subnet box
Grahn et al. Security of mobile and wireless networks
Jonsson Security and cooperation considerations for Skekraft. net's wireless network
Ekström Securing a wireless local area network: using standard security techniques
Issac et al. Wireless LAN setup and security loopholes

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase