IP Library Granted Patent US 8,200,960
Granted Patent B2
US 8,200,960 · App. 11/584,195 · Granted Jun 12, 2012

Tracking of resource utilization during cryptographic transformations

Assignee: Oracle America, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,200,960
App. No.
11/584,195
Granted
Jun 12, 2012
Kind
B2
Abstract

A computer system that communicates cryptographic resource utilization information while processing data packets is described. During operation, the system receives a first data packet and generates a second data packet by performing a cryptographic transformation on the first data packet. Next, the system appends auxiliary information to the second data packet. This auxiliary information includes information associated with cryptographic resource utilization during the cryptographic transformation. Then, the system provides the second data packet including the auxiliary information.

Claims (49)

1. A method for communicating cryptographic resource utilization, comprising:

receiving a first data packet from a first data flow;

generating a second data packet by performing a cryptographic transformation on the first data packet;

appending auxiliary information to the second data packet, wherein the auxiliary information includes information that describes a cost for the cryptographic transformation and specifies a type of random number generator used for the cryptographic transformation;

providing the second data packet including the auxiliary information;

aggregating auxiliary information from

the second data packet,

other cryptographically-transformed packets from the first data flow that comprise auxiliary information that describes a cost for the cryptographic transformation, and

one or more additional cryptographically-transformed data packets from a second data flow that comprise auxiliary information that describes a cost for the cryptographic transformation, wherein the first data flow and the second data flow are for a same user; and

determining a user account balance based on the auxiliary information for the first data flow or the second data flow to enable billing based on usage of cryptographic resources for the first data flow or the second data flow.

2. The method of claim 1 , wherein the cryptographic transformation involves decryption or encryption of the first data packet.

3. The method of claim 1 , wherein the cryptographic transformation is performed, at least in part, in hardware.

4. The method of claim 1 , wherein the cryptographic transformation is performed, at least in part, in software.

5. The method of claim 1 , wherein the auxiliary information is appended in response to a received command.

6. The method of claim 1 , wherein the first data packet is received over a network.

7. The method of claim 1 , wherein the second data packet is provided over a network.

8. The method of claim 1 , wherein the auxiliary information specifies a type of cryptographic accelerator and a provider of the cryptographic accelerator.

9. The method of claim 1 , wherein the auxiliary information specifies a number of bytes transformed.

10. The method of claim 1 , wherein the auxiliary information specifies processor utilization during the cryptographic transformation.

11. The method of claim 1 , further comprising providing the user account balance in response to a user request.

12. The method of claim 1 , further comprising determining system performance based on the auxiliary information.

13. The method of claim 1 , further comprising determining a resource-utilization margin in a system based on the auxiliary information.

14. The method of claim 1 , further comprising migrating additional cryptographic transformations of subsequent data packets to additional cryptographic resources based on the auxiliary information.

15. The method of claim 1 , further comprising restricting subsequent access of a user to cryptographic resources based on the auxiliary information.

16. The method of claim 1 , further comprising aggregating auxiliary information associated with multiple data packets.

17. The method of claim 1 , wherein the cryptographic transformation includes an asynchronous cryptographic process.

18. A computer program product for use in conjunction with a computer system, the computer program product comprising a non-transitory computer-readable storage medium and a computer-program mechanism embedded therein for communicating cryptographic resource utilization, the computer-program mechanism including:

instructions for receiving a first data packet from a first data flow;

instructions for generating a second data packet by performing a cryptographic transformation on the first data packet;

instructions for appending auxiliary information to the second data packet, wherein the auxiliary information includes information that describes a cost for the cryptographic transformation and specifies a type of random number generator used for the cryptographic transformation;

instructions for providing the second data packet including the auxiliary information;

instructions for aggregating auxiliary information from

the second data packet,

other cryptographically-transformed packets from the first data flow that comprise auxiliary information that describes a cost for the cryptographic transformation, and

one or more additional cryptographically-transformed data packets from a second data flow that comprise auxiliary information that describes a cost for the cryptographic transformation, wherein the first data flow and the second data flow are for a same user; and

instructions for determining a user account balance based on the auxiliary information for the first data flow or the second data flow to enable billing based on usage of cryptographic resources for the first data flow or the second data flow.

19. A computer system, comprising:

a processor;

memory;

a program module, wherein the program module is stored in the memory and configured to be executed by the processor, and wherein the program module is for communicating cryptographic resource utilization, the program module including:

instructions for receiving a first data packet from a first data flow;

instructions for generating a second data packet by performing a cryptographic transformation on the first data packet;

instructions for appending auxiliary information to the second data packet, wherein the auxiliary information includes information that describes a cost for the cryptographic transformation and specifies a type of random number generator used for the cryptographic transformation;

instructions for providing the second data packet including the auxiliary information;

instructions for aggregating auxiliary information from

the second data packet,

other cryptographically-transformed packets from the first data flow that comprise auxiliary information that describes a cost for the cryptographic transformation, and

one or more additional cryptographically-transformed data packets from a second data flow that comprise auxiliary information that describes a cost for the cryptographic transformation, wherein the first data flow and the second data flow are for a same user; and

instructions for determining a user account balance based on the auxiliary information for the first data flow or the second data flow to enable billing based on usage of cryptographic resources for the first data flow or the second data flow.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037311/0171 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 20, 2006
From: BELGAIED, KAIS; POWERS, MARK C.; YENDURI, BHARGAVA K.; JOHNSON, DARRIN P.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 018447/0904 →
Continuity (1)
Related Publication 20080098215A1 · Apr 24, 2008