1461153192-1eb88425-fa97-412e-abec-e4581e9496b7

1. An image processing apparatus comprising:
a reconfigurable circuit with a reconfigurable circuit configuration;
a compression unit configured as a circuit in the reconfigurable circuit to compress image data;
an image processing unit configured as a circuit in the reconfigurable circuit to perform image processing on the compressed image data by the compression unit, the compression unit being configured simultaneously with the image processing unit; and
a controller that changes the circuit configuration of the reconfigurable circuit so as to vary a compression rate of the compression unit in accordance with a processing capacity of the image processing unit,
wherein the image processing unit performs image processing while at the same time the compression unit is compressing image data.
2. The image processing apparatus according to claim 1, further comprising:
a memory configured as a circuit in the reconfigurable circuit to store the image data;
an expansion unit configured as a circuit in the reconfigurable circuit to expand the compressed image data which have been subjected to the image processing; and
a memory controller configured as a circuit in the reconfigurable circuit to acquire the image data from the memory and output the acquired image data to the compression unit, and to acquire the expanded image data from the expansion unit and output the acquired expansion image data to the memory,
wherein the controller changes the circuit configuration of the reconfigurable circuit so as to vary the compression rate of the compression unit in accordance with a speed of transfer of the image data between the memory controller and the memory and the processing capacity of the image processing unit.
3. The image processing apparatus according to claim 1,
wherein the controller determines the compression rate of the compression unit such that a volume of the compressed image data output from the compression unit per unit time and a volume of the image data processed by the image processing unit per unit time are the same as each other.
4. The image processing apparatus according to claim 1,
wherein the compression unit performs a compression process in the case where values of adjacent pixels, among pixels constituting the image data, are the same as each other.
5. The image processing apparatus according to claim 1,
wherein the image processing unit is a color conversion unit that performs a color conversion on the compressed image data to generate output image data represented in an output color space.
6. The image processing apparatus according to claim 1, wherein the image processing includes color image processing of the image data.
7. The image processing apparatus according to claim 6, wherein the color image processing of the image data includes color conversion.
8. The image processing apparatus according to claim 1, wherein the controller changes the circuit configuration of the reconfigurable circuit so as to vary the compression rate of the compression unit so that a volume of image data being output from the compression unit matches a volume of image data being processed by the image processing unit.
9. A non-transitory computer readable medium storing a program causing a computer to execute a process comprising:
providing a reconfigurable circuit with a reconfigurable circuit configuration;
compressing image data through a compression unit configured in the reconfigurable circuit;
performing image processing on the compressed image data through an image processing unit configured in the reconfigurable circuit; and
simultaneously changing the circuit configuration of the compression unit and the image processing unit in the reconfigurable circuit so as to vary a compression rate of the compression unit in accordance with a processing capacity of the image processing unit,
wherein the image processing is performed while at the same time the image data is being compressed.
10. The non-transitory computer readable medium according to claim 9, wherein the image processing includes color image processing of the image data.
11. The non-transitory computer readable medium according to claim 10, wherein the color image processing of the image data includes color conversion.
12. The non-transitory computer readable medium according to claim 9, wherein the circuit configuration of the reconfigurable circuit is changed so as to vary the compression rate of the compression unit so that a volume of image data being output from the compression unit matches a volume of image data being processed by the image processing unit.
13. The non-transitory computer readable medium according to claim 9, wherein the image data compression and the image processing on the compressed image data are performed in parallel.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for securing data in a network comprising a plurality of network devices, the method comprising:
receiving a request for an encryption key to secure the data;
querying the plurality of network devices for a plurality of keys, each network device storing a respective key;
receiving the respective key in a field associated with a loopback address from each of the plurality of network devices, wherein an associated hash value is received with each respective key, the hash value comprising a pointer to a location of its associated key within the respective network device;
selecting a key element from each of the plurality of keys, wherein the key element comprises a subset of each respective key that is less than the respective key and selecting the key element from each of the plurality of keys comprises selecting random subsets of each of the plurality of keys;
constructing the encryption key from the key elements; and
transmitting the encryption key to a client.
2. The method of claim 1 wherein the field associated with the loopback address comprises a description field.
3. The method of claim 1 wherein transmitting the encryption key to the client comprises transmitting the hash value associated with each key and a location each selected key element within each respective key.
4. The method of claim 1 and further comprising building a lookup table comprising the received keys and their associated hash values.
5. The method of claim 1 wherein querying the plurality of network devices for a plurality of keys comprises querying a quantity of network devices in response to a desired size of the encryption key.
6. The method of claim 5 wherein querying the quantity of network devices in response to the desired size of the encryption key comprises querying random ones of the plurality of network devices.
7. A method for securing data in a network comprising a plurality of network devices including a key aggregation server, each network device comprising a plurality of key storage addresses, the method comprising:
receiving at the key aggregation server, from a client coupled to the network, a request for an encryption key to secure the data within the network;
randomly querying a subset of the plurality of network devices for a respective key from an associated key storage address from each network device of the subset of the plurality of network devices;
receiving from the queried network devices the respective keys in a field associated with a loopback address and associated hash values of the key storage addresses of each respective key, wherein the associated hash values include a pointer to a location of its associated key within the respective queried network devices;
randomly selecting a key element from each of the respective keys, wherein the key element comprises a subset of each respective key that is less than the respective key;
constructing the encryption key from the key elements; and
transmitting to a client, the encryption key, the hash values, and locations of the key elements of each respective key.
8. The method of claim 7 and further comprising generating a decryption key by:
receiving the hash values from the client;
decoding the hash values with a lookup table comprising the hash values and their associated key element locations in the network,
querying the plurality of network devices in response to the decoding;
receiving respective keys from queried network devices;
parsing the received keys for key elements in response to the decoding;
aggregating the key elements into the decryption key; and
transmitting the decryption key to the client.
9. The method of claim 8 wherein querying the plurality of network devices comprises requesting a key stored in a description field of a key storage address of respective queried network device.
10. A network device configured to generate an encryption key for securing data within a network, the network device comprising:
memory configured to store a hash value lookup table, keys, and hash values; and
processing circuitry coupled to the memory and configured to query each of a plurality of network devices, through physical layer circuitry, for a respective key stored in each queried network device, receive the respective key, from each of the queried network devices, in a field associated with a loopback address, randomly select a subset from each of the plurality of keys, wherein the subset is less than the respective key, generate the encryption key from the selected subsets, and control transmission of the encryption key, through the physical layer circuitry, to a requesting client, wherein an associated hash value is received with each respective key, the hash value comprising a point to a location of its associated key within each respective queried network devices.
11. The network device of claim 10 wherein the processing circuitry is further configured to store the hash value lookup table in the memory, distribute keys to the plurality of network devices through the physical layer circuitry, aggregate key responses from queried network devices, and send the encryption key to a requesting client through the physical layer circuitry.
12. The network device of claim 10 wherein the network device is a key aggregation server.
13. The network device of claim 10 wherein the processing circuitry is further configured to generate keys and control distribution of the keys to a plurality of key storage addresses of each of the plurality of network devices.
14. The network device of claim 10 wherein the plurality of network devices comprise one or more of routers or switches.
15. The network device of claim 10 wherein the processing circuitry and physical layer circuitry are further configured to receive a request for a decryption key, receive hash values associated with the encryption key, decode the hash values in response to the lookup table in memory, query the plurality of network devices for keys, parse received keys for subsets of the keys, aggregate the subsets into the decryption key, and transmit the decryption key to a requesting client.
16. The network device of claim 15 wherein the processing circuitry is further configured to validate the received hash values by comparing the received hash value to hash values stored in the lookup table, determine an associated key storage address for an associated network device for the received hash value, and request the respective key from the associated network device.