Method and system for performing asynchronous cryptographic operations
AssigneeF5 Networks, Inc.
InventorsJohn R. Hughes, Richard Roderick Masters, David D. Schmitt
Life of this patent
Estimating the term…
Abstract
A system and method for performing asynchronous cryptographic operations. A cryptographic toolkit receives requests for cryptographic operations, and initiates the cryptographic operations within a thread of execution. The toolkit detects when the cryptographic operations are complete, retrieves the results, and returns the results to a calling program. The cryptographic operations are performed in an asynchronous manner, without blocking a calling program. The calling program can specify whether the requested operations are to be performed without blocking.
Claims20
A hardware device that is configured to perform cryptographic operations, comprising:
- a memory for storing instructions;
- and
- a processor for performing instructions to perform actions, including:
- requesting a first cryptographic operation be performed within a plurality of cryptographic operations, the first cryptographic operation being a non-blocking operation during or after secure communications protocol connection;
- requesting a second cryptographic operation after requesting that the first cryptographic operation be performed and prior to completion of the first cryptographic operation;
- wherein at least one of the cryptographic operations is at least a part of a secure communication protocol handshake;
- and
- selectively receiving a result of the second cryptographic operation prior to receiving a result of the first cryptographic operation.
A non-transitory storage device, comprising:
- computer instructions stored thereon that enable execution on a processor of a plurality of components, including:
- a cryptographic application program interface (API) including an interface that receives requests for performing cryptographic operations;
- a component configured and arranged to perform a plurality of concurrent requested cryptographic operations within a single thread of execution such that at least a first cryptographic operation finishes before a second cryptographic operation and the second cryptographic operation is initiated before the first cryptographic operation, and at least one of the cryptographic operations is at least a part of a secure communication protocol handshake.
A non-transitory storage device, comprising:
- computer instructions stored thereon that enable execution on a processor of a plurality of components, including:
- a receiving component that receives cryptographic requests from a controlling program to perform a plurality of cryptographic operations, each cryptographic request having a corresponding cryptographic operation and at least one of the cryptographic operations is at least a part of a secure communication protocol handshake;
- an output component that provides cryptographic results of the plurality of cryptographic operations to the controlling program, each result corresponding to one of the cryptographic requests;
- and
- a performance component configured to enable the plurality of cryptographic operations such that the requests are received asynchronously from a single thread, and the results are provided to the single thread, wherein at least one of the cryptographic results is provided in an order that does not correspond to the order in which the cryptographic requests are received.
Dependencies are inferred from the claim text.