Key caching system
First Claim
1. Computer-readable media tangibly embodying a key-caching program executable on a computer and operating on a packet received from an external source, the computer including a system memory and a cache, the system memory and the cache including entries for source addresses and corresponding keys, the packet including a header that is not encrypted and a body that is encrypted, the key-caching program comprising code for:
- establishing acknowledgment-responsive wireless communication with the external source wherein the packet is re-sent after a latency period in the absence of an acknowledgment signal for the packet;
extracting from the header a source address;
determining whether the source address is included in an entry in the cache;
when the source address is included in an entry of the cache, authorizing the acknowledgment signal for the external source, extracting from the entry of the cache a key corresponding to the source address, and using the key to decrypt the body of the packet;
when the source address is not included in an entry of the cache, determining whether the source address is included in an entry of the system memory; and
when the source address is not included in an entry of the cache and the source address is included in an entry of the system memory, extracting from the entry of the system memory a key corresponding to the source address, and storing the source address and the key as a new entry in the cache to prepare the cache within the latency period for decrypting the packet subsequently re-sent by the external source.
3 Assignments
0 Petitions
Accused Products
Abstract
A key-caching system retrieves actively used keys from a relatively fast cache memory for fast processing of wireless communications. Additional keys are stored in relatively slow system memory that has high storage capacity. As keys become needed for active use, the keys are retrieved from the system memory and stored in the cache memory. By using active memory for keys actively being used, system performance is enhanced. By using system memory for keys not being used, a greater number of keys are available for transfer to the cache and subsequent active use.
60 Citations
18 Claims
-
1. Computer-readable media tangibly embodying a key-caching program executable on a computer and operating on a packet received from an external source, the computer including a system memory and a cache, the system memory and the cache including entries for source addresses and corresponding keys, the packet including a header that is not encrypted and a body that is encrypted, the key-caching program comprising code for:
-
establishing acknowledgment-responsive wireless communication with the external source wherein the packet is re-sent after a latency period in the absence of an acknowledgment signal for the packet; extracting from the header a source address; determining whether the source address is included in an entry in the cache; when the source address is included in an entry of the cache, authorizing the acknowledgment signal for the external source, extracting from the entry of the cache a key corresponding to the source address, and using the key to decrypt the body of the packet; when the source address is not included in an entry of the cache, determining whether the source address is included in an entry of the system memory; and when the source address is not included in an entry of the cache and the source address is included in an entry of the system memory, extracting from the entry of the system memory a key corresponding to the source address, and storing the source address and the key as a new entry in the cache to prepare the cache within the latency period for decrypting the packet subsequently re-sent by the external source. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A key-caching system for operation on a packet received from an external source, the packet comprising a header that is not encrypted and a body that is encrypted, the key-caching system comprising:
-
a system memory, a networking unit, the networking unit including a cache, the system memory and the cache including entries for source addresses and corresponding keys, a processor, the system memory including a key-caching program that is executable on the processor, and a controller, the controller effecting communication and data transfer between the system memory, the networking unit and the processor, wherein the key-caching program comprising code to effect; establishing acknowledgment-responsive wireless communication with the external source wherein the packet is re-sent after a latency period in the absence of an acknowledgement signal for the packet; extracting from the header a source address; determining whether the source address is included in an entry in the cache; when the source address is included in an entry of the cache, authorizing the acknowledgment signal for the external source, extracting from the entry of the cache a key corresponding to the source address, and using the key to decrypt the body of the packet; when the source address is not included in an entry of the cache, determining whether the source address is included in an entry of the system memory; and when the source address is not included in an entry of the cache and the source address is included in an entry of the system memory, extracting from the entry of the system memory a key corresponding to the source address, and storing the source address and the key as a new entry in the cache to prepare the cache within the latency period for decrypting the packet subsequently re-sent by the external source. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method of key caching with a system memory and a cache, the system memory and the cache including entries for source addresses and corresponding keys, the method comprising:
-
establishing acknowledgment-responsive wireless communication with an external source wherein the packet is re-sent after a latency period in the absence of an acknowledgment signal for the packet; receiving a packet from the external source, the packet including a header that is not encrypted and a body that is encrypted; extracting from the header a source address; determining whether the source address is included in an entry in the cache, authorizing the acknowledgment signal for the external source when the source address is not included in an entry of the cache, extracting from the entry of the cache a key corresponding to the source address, and using the key to decrypt the body of the packet; when the source address is not included in an entry of the cache, determining whether the source address is included in an entry of the system memory; and when the source address is not included in an entry of the cache and the source address is included in an entry of the system memory, extracting from the entry of the system memory a key corresponding to the source address, and storing the source address and the key as a new entry in the cache to prepare the cache within the latency period for decrypting the packet subsequently re-sent by the external source. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification