Abstract:
An integrated circuit chip is provided which contains one or more processors and one or more cryptographic engines. A flow control circuit having a command processor accepts requests and data via a secure external interface through which only encrypted information is passed. The flow control circuit mediates decryption of this information using cryptographic keys that are present in hard coded form on the chip. In particular the flow control circuit includes a programmable hardware portion which is configurable in a secure manner to create a flexible internal chip architecture. The chip also includes a volatile memory disposed on a voltage island on which is maintained either through a battery backup or from a fixed power source (mains). The chip is thus enabled to securely perform cryptographic operations with the processors controlling the cryptographic engines through the flow control circuit.
Abstract:
PROBLEM TO BE SOLVED: To generate a multiplier which multiples modulo N of two large integers. SOLUTION: A modular exponentiation function used for a public key encryption and decryption systems is actualized in a stand-alone engine which shares overlapping hardware structures and has as a core a modular multiplying circuit operating in two phases. For multiplication and addition, a large array in the hardware structure is partitioned into small structures and then a multiplier which includes a series of nearly identical elements linked together in a chained fashion can be designed. The overall structure can be operated in a pipelined fashion as a result of the two-phase operation and chaining of the partitioned processing elements, so that the throughput and speed are improved. The chained processing elements are so constituted as to provide a partitionable chain with separate parts for processing factors of a modulus.
Abstract:
PROBLEM TO BE SOLVED: To provide a method for generating a message digest. SOLUTION: The method comprises: a step for receiving a data block; and a step for processing the data block for obtaining the message digest. The step for obtaining the data block comprises computing of the data block at a time (t) based on a time (t-x). (x) is larger than or equal to 2. COPYRIGHT: (C)2004,JPO