The present invention relates to the field of networking. More specifically, the present invention relates to the field of providing security to a network.
Transmission Control Protocol (TCP) allows applications on networked computers to generate connections to each other. Over these connections, the applications are then able to exchange data packets. Many applications such as the world wide web and email utilize TCP. TCP is reliable and guarantees in-order delivery of data.
Applications send streams of 8-bit bytes to TCP to be delivered through the network. TCP divides the byte stream into appropriately sized segments and then passes the resulting packets to the Internet Protocol (IP) for delivery through the network to a TCP module of a target computer on the network. TCP ensures that no packets are lost by assigning a sequence number to each packet. This sequence number also ensures the packets are delivered in the correct order. The TCP module of the target computer sends back an acknowledgment for packets which have been successfully received. If an acknowledgment is not received within a reasonable amount of time, a timeout is triggered on the transmitting computer. Then, the data packet is re-sent.
As briefly described above, a 3-way handshake is implemented to establish a TCP connection. The transmitting computer first sends a synchronization packet to initiate the connection. Then the target computer sends an acknowledgment packet back. Finally, the transmitting computer sends an acknowledgment back to the target. By utilizing a 3-way handshake, computers are able to verify their connection.
The concern with TCP is that hackers are able to utilize this 3-way handshake to locate future victims to be hacked. Using scanning software, a set of packets are sent out across the network. Any clients on the network will respond to these packets. Then, hackers are able to determine which computers are accessible on the network and which ports are open on those computers. Using that information, a hacker is able to abuse the computer by crashing it or performing other malicious activity with it such as stealing data.
User Datagram Protocol (UDP) is a connectionless protocol that allows applications on networked computers to send short messages known as datagrams to each other. Unlike TCP, UDP does not provide guaranteed reliability. Datagrams are able to arrive disordered or get lost without notice. The reason for this is that UDP does not utilize the 3-way handshake of TCP where a target computer acknowledges that it is present when an unknown transmitting computer sends an initiating connection. However, as mentioned above, UDP has a number of drawbacks including being unreliable, not ordered, and other issues that make UDP insufficient for a specified purpose.
A system for and method of securing a network are described herein. A receiving device listens for packets with proper credentials. If a transmitting device sends the correct credentials, the receiving device will respond with an acknowledgment and further data is able to be transmitted. However, if the transmitting device does not send a packet with the proper credentials, then the receiving device will drop the packet and not respond. Thus, the transmitting device will be unaware of the presence of the receiving device, in particular when hackers are using scanning software to locate target devices.
In one aspect, a method of increasing network security comprises transmitting a packet from a first device to a second device, receiving a packet at the second device from the first device, verifying the packet for proper credentials and sending an acknowledgment from the second device to the first device only if the proper credentials are verified. The first device is a client and the second device is a server. Alternatively, the first device is a server and the second device is a client. The method further comprises dropping the packet if the proper credentials are not verified. A protocol for receiving the packet is similar to or the same as User Datagram Protocol. A protocol for sending an acknowledgment is similar to or the same as Transmission Control Protocol. The first device and the second device are coupled by a network. In one embodiment, the network is the Internet. In another embodiment, the network is an intranet.
In another aspect, a method of increasing network security comprises transmitting a packet from a first device to a second device, receiving a packet at the second device from the first device, verifying the packet for proper credentials, sending an acknowledgment from the second device to the first device only if the proper credentials are verified and dropping the packet if the proper credentials are not verified. The first device is a client and the second device is a server. Alternatively, the first device is a server and the second device is a client. A protocol for receiving the packet is similar to or the same as User Datagram Protocol. A protocol for sending an acknowledgment is similar to or the same as Transmission Control Protocol. The first device and the second device are coupled by a network. In one embodiment, the network is the Internet. In another embodiment, the network is an intranet.
In yet another aspect, a system for increasing network security comprises one or more first devices for transmitting a packet, one or more second devices for receiving the packet, wherein the one or more second devices are coupled to the one or more first devices through a network and a set of credentials within the packet for verification, wherein the one or more second devices send an acknowledgment back to the one or more first devices only if the set of credentials are verified. The first device is a client and the second device is a server. Alternatively, the first device is a server and the second device is a client. The one or more second devices drop the packet if the set of credentials are not verified. A protocol for receiving the packet is similar to or the same as User Datagram Protocol. A protocol for sending an acknowledgment is similar to or the same as Transmission Control Protocol. In one embodiment, the network is the Internet. In another embodiment, the network is an intranet.
In another aspect, a network of devices for increasing network security comprises one or more client devices for transmitting a packet, one or more server devices for receiving the packet, wherein the one or more server devices are coupled to the one or more client devices through a network and a set of credentials within the packet for verification, wherein the one or more server devices send an acknowledgment back to the one or more client devices only if the set of credentials are verified. The one or more server devices drop the packet if the set of credentials are not verified. A protocol for receiving the packet is similar to or the same as User Datagram Protocol. A protocol for sending an acknowledgment is similar to or the same as Transmission Control Protocol. In one embodiment, the network is the Internet. In another embodiment, the network is an intranet.
In yet another aspect, a packet for increasing network security comprises data and a set of credentials, wherein the set of credentials are analyzed by a receiving device such that the receiving device sends an acknowledgment back only if the set of credentials are valid. The set of credentials are selected from the group consisting of a key, a code and a signature. The set of credentials are stored within a header. Alternatively, the set of credentials are stored within a wrapper. The set of credentials are encrypted. The packet is substantially similar to a User Datagram Protocol packet.
The present invention overcomes the issues described above by using a combination of elements of User Datagram Protocol (UDP) and Transmission Control Protocol (TCP) in addition to modifications of each. Using these modifications, a connection is established by only those properly authenticated devices. Furthermore, a target device remains hidden and anonymous to those devices that are not properly authenticated.
To utilize the present invention a network of devices is configured so that only properly authenticated devices are able to communicate with devices on the network. A transmitting device sends a packet with credentials to a receiving device. If the credentials are valid, the receiving device responds with an acknowledgment similar to that in TCP so that other communications are possible. If the credentials are not valid or if a packet does not have credentials, then the packet is dropped. This aspect is similar to UDP and unlike TCP which always responds with an acknowledgment. By only responding to authorized users, the system is able to remain undetected by unauthorized users such as hackers. After a connection is established, the devices communicate as typical network devices do, allowing the transfer of data from device to device over and through networks.
In operation the present invention performs very similarly to standard networks that implement TCP with the exception that unauthorized packets are dropped. For authorized users, standard operations are available with the network such that users of an intranet are able to print to network printers, share data across computers and access applications from servers. In some embodiments, the network is the Internet. Many other typical network operations are possible with the present invention aside from those that require access to a device without valid credentials.
The devices that are able to implement the present invention include, but are not limited to laptops, personal computers, Apple computers, handhelds, servers, thin clients and cell phones.
The present invention has been described in terms of specific embodiments incorporating details to facilitate the understanding of principles of construction and operation of the invention. Such reference herein to specific embodiments and details thereof is not intended to limit the scope of the claims appended hereto. It will be readily apparent to one skilled in the art that other various modifications may be made in the embodiment chosen for illustration without departing from the spirit and scope of the invention as defined by the claims.
This application is a continuation of U.S. patent application Ser. No. 14/306,044, filed on Jun. 16, 2014, entitled “SYSTEM FOR AND METHOD OF SECURING A NETWORK UTILIZING CREDENTIALS,” which issued as U.S. Pat. No. 9,160,735 on Oct. 13, 2015, which is a continuation of U.S. patent application Ser. No. 11/440,564, filed on May 24, 2006, entitled “SYSTEM FOR AND METHOD OF SECURING A NETWORK UTILIZING CREDENTIALS,” which issued as U.S. Pat. No. 8,811,396 on Aug. 19, 2014, the entirety of each of which are incorporated herein by reference.
| Number | Date | Country | |
|---|---|---|---|
| Parent | 14306044 | Jun 2014 | US |
| Child | 14872606 | US | |
| Parent | 11440564 | May 2006 | US |
| Child | 14306044 | US |