Claims
- 1. A cryptographic processor for performing operations for cryptographic applications, comprising:
a plurality of coprocessors, each coprocessor having a control unit, an arithmetic unit and a plurality of registers exclusively associated with said arithmetic unit of the respective coprocessor, each coprocessor having a word length which is predetermined by the number width of the respective arithmetic unit; a central processing unit for controlling said plurality of coprocessors, said central processing unit being arranged to couple at least two coprocessors in such a way that the registers exclusively associated with them are interconnected so that the coupled coprocessors can perform a calculation with numbers the word length of which equals the sum of the number widths of said arithmetic units of said coupled coprocessors; and a bus for connecting each coprocessor to the central processing unit, said central processing unit, said plurality of coprocessors and said bus being integrated on one single chip, and said chip having a common power supply terminal for feeding said plurality of coprocessors.
- 2. A cryptographic processor according to claim 1, wherein each coprocessor of said plurality of coprocessors is provided for a type of cryptographic algorithms of its own, so that the cryptographic processor is implemented in terms of hardware for a plurality of cryptographic algorithms.
- 3. A cryptographic processor according to claim 1, wherein said plurality of coprocessors comprises individual groups of coprocessors connected in parallel, each of said group of coprocessors being provided for a type of cryptographic algorithm of its own, so that the cryptographic processor is suitable for a plurality of cryptographic algorithms.
- 4. A cryptographic processor according to claim 2, wherein the type of cryptographic algorithms is selected from a group having the following members:
DES algorithm, AES algorithm for symmetric encryption processes, RSA algorithm for asymmetric encryption processes and Hash algorithm for computing Hash values.
- 5. A cryptographic processor according to claim 1, wherein a cryptographic operation can be split into a plurality of partial operations, the central processing unit being arranged to distribute the plurality of partial operations to individual coprocessors of said plurality of coprocessors.
- 6. A cryptographic processor according to claim 1, wherein the coprocessors are different from each other such that the number of different mathematical operations which the cryptographic processor is capable of carrying out in terms of hardware, is at least equal to the number of coprocessors.
- 7. A cryptographic processor according to claim 1, wherein the operations for cryptographic applications comprise modular exponentiation and/or modular multiplication and/or modular addition/subtraction.
- 8. A cryptographic processor according to claim 1, wherein each coprocessor is arranged to process binary numbers having at least 160 positions and preferably at least 1024 or 2048 positions.
- 9. A cryptographic processor according to claim 1, further comprising only one memory associated with the central processing unit.
- 10. A cryptographic processor according to claim 1, further comprising a clock generating means for delivering a clock to said processing unit and said plurality of coprocessors, said clock generating means being integrated on said single chip as well.
- 11. A processor according to claim 1, wherein the length of said plurality of registers associated with one coprocessor as well as the length of said plurality of registers associated with another coprocessor are different from each other such that the coprocessors are capable of carrying out arithmetic computations with numbers of different lengths each.
- 12. A cryptographic processor according to claim 1, wherein the number of registers associated with one coprocessor is sufficient to hold operands for at least two partial operations, so that for at least two partial operations it is not necessary to transfer operands between the coprocessors and said central processing unit.
- 13. A cryptographic processor according to claim 12, wherein said central processing unit further comprises a means for time control of the operation of the coprocessors, such that the sequence of said at least two partial operations, whose operations are stored in the registers of one coprocessor, is adjustable.
- 14. A cryptographic processor according to claim 1, further comprising a means for deactivating a coprocessor if the central processing unit determines that there are no partial operations present for said coprocessor, in order to reduce the power consumption of the cryptographic processor.
- 15. A cryptographic processor according to claim 1, wherein the central processing means is arranged to connect at least two coprocessors to a cluster, such that a partial operation is assigned to the cluster so that a partial operation can be carried out by the coprocessors of the cluster jointly.
- 16. A cryptographic processor according to claim 1, wherein the arithmetic unit of at least one coprocessor has a serial/parallel arithmetic-logic unit which is designed such that a number of computations can be carried out in parallel in one cycle, said number being equal to the positions of a number used in the computation, and in another, subsequent cycle, the same computation as in the first cycle is carried out in serial manner, using the result of said one cycle.
- 17. A cryptographic processor according to claim 16, wherein a coprocessor is designed for modular multiplication, in order to add, in one cycle, a partial product to a result of a previous cycle, and in order to add, in an additional cycle, the result of the last cycle to a next partial product.
- 18. A cryptographic processor according to claim 17, wherein the arithmetic unit comprises a three-operand adder for modular multiplication, which for each position of a number being processed comprises:
a half-adder for addition without a carry, having three inputs and two outputs; and a subsequent full adder having two inputs and one output.
- 19. A cryptographic processor according to claim 1,
wherein the central processing unit comprises a means for controlling a crypto coprocessor for performing a dummy computation.
- 20. A cryptographic processor according to claim 16, wherein said means for controlling dummy computations is arranged to randomly select the cryptographic processor performing a dummy computation.
Priority Claims (1)
| Number |
Date |
Country |
Kind |
| 100 61 998.3 |
Dec 2000 |
DE |
|
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application is a continuation of copending International Application No. PCT/EP01/13279, filed Nov. 16, 2001, which designated the United States and was not published in English.
Continuations (1)
|
Number |
Date |
Country |
| Parent |
PCT/EP01/13279 |
Nov 2001 |
US |
| Child |
10461913 |
Jun 2003 |
US |