EP1538510B1

Microprocessor apparatus and method for performing block cipher cryptographic functions

Abstract

This record has no abstract on file.

EP1538510B1, drawing sheet 1
Sheet 1 of 8

Term

Term ended

Expired 15 September 2024, 2 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

23 claims: 2 independent, 21 dependent

  1. 1
    A microprocessor apparatus, for performing cryptographic operations, comprising:a cryptographic instruction (322, 400), received by a microprocessor (201, 301, 600) as part of an instruction flow executing on said microprocessor (201,301, 600), wherein said instruction flow comprises an integer instruction that specifies an integer operation for execution by an integer unit (610) within said microprocessor (201, 301, 600), and wherein said cryptographic instruction (322, 400) prescribes one of the cryptographic operations for execution by a cryptography unit (316, 617) within said microprocessor (201, 301, 601), wherein said integer unit (610) and said cryptography unit (316, 617) operate in parallel within said microprocessor (201, 301, 601), and wherein said integer operation and said one of the cryptographic operations are accomplished in parallel, and wherein said cryptographic instruction (322, 400) explicitly prescribes a block cipher mode (404) to be employed during execution of said one of the cryptographic operations, wherein the cryptographic operations comprise: an encryption operation, said encryption operation comprising encryption of a plurality of plaintext blocks to generate a corresponding plurality of ciphertext blocks;and a decryption operation, said decryption operation comprising decryption of a plurality of ciphertext blocks to generate a corresponding plurality of plaintext blocks;and translation logic (303, 602), configured to translate said cryptographic instruction into associated micro instructions that specify sub-operations required to accomplish said one of the cryptographic operations.
  2. 15
    A method for performing cryptographic operations in a processor (301, 600), the method comprising:first receiving an integer instruction that prescribes an integer operation for execution by an integer unit (610) within the processor;second receiving a cryptographic instruction (322, 400), wherein the cryptographic instruction prescribes one of the cryptographic operations, and wherein the cryptographic instruction (322, 400) explicitly prescribes a block cipher mode (404) to be employed during execution of the one of the cryptographic operations, and wherein the cryptographic operations comprise: an encryption operation, the encryption operation comprising encryption of a plurality of plaintext blocks to generate a corresponding plurality of ciphertext blocks;and a decryption operation, the decryption operation comprising decryption of a plurality of ciphertext blocks to generate a corresponding plurality of plaintext blocks;and executing the one of the cryptographic operations and the integer operation in parallel, wherein the one of the cryptographic operations is accomplished via a cryptographic unit (316, 617) that is disposed in parallel with the integer unit (610) within the processor.