Patent ID: 11943367
Assignee: MARVELL ASIA PTE LTD
Field: Digital communication (Electrical engineering)
Classification: CPC H | IPC H

Claim 8:
9. A method for using a cryptographic processor, comprising:
establishing a secure communications session with a peer, wherein establishing the secure communications session comprises identifying at least one of an encryption cipher or a hashing cipher, and an encryption key;
configuring one or more data structures for a cryptographic primitive to be performed by the cryptographic processor, wherein the one or more data structures comprise an encryption cipher type, an encryption initialization vector source, a message authentication code cipher algorithm, and a mode of encryption relating to an order of performing an encryption operation and an authentication operation;
identifying plaintext data for transmission to the peer;
configuring a context data structure and an input data structure for the cryptographic primitive,
wherein configuring the input data structure comprises adding the plaintext data for transmission to the peer to the input data structure,
wherein the context data structure is configured with per-session configurations for the cryptographic primitive and includes an initialization vector (IV) field not changeable in a session,
wherein the input data structure includes data to be encrypted or authenticated,
wherein a field of the context data structure is configured to indicate whether an IV is included in the context data structure or in the input data structure,
wherein, when the field indicates that the IV is included in the context data structure, the IV field of the context data structure is configured to include the IV, and
wherein, when the field indicates that the IV is included in the input data structure, data in the input data structure indicates an offset within the input data structure where the IV is stored;

invoking an opcode, wherein invoking the opcode causes the cryptographic processor to perform the cryptographic primitive using the IV and place a ciphertext that is output by the cryptographic primitive in an output structure; and
transmitting a secure message using the ciphertext to the peer.