IP Library Granted Patent US 9,860,055
Granted Patent B2
US 9,860,055 · App. 11/723,835 · Granted Jan 2, 2018

Flexible architecture for processing of large numbers and method therefor

Inventors: Neil F. Hamilton (Kanata, CA); Arthur J. Low (Chelsea, CA)
Assignee: Synopsys, Inc.
H04L9/06G06F7/00G06F7/727G07F7/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,860,055
App. No.
11/723,835
Granted
Jan 2, 2018
Kind
B2
Abstract

A method of implementing large number multiplication and exponentiation is provided upon a general purpose microprocessor. These large number multiplication and exponentiation processes being common to cryptography standards such as RSA and AES that typically employ numbers with 512-bits, 1024-bits, and 2048-bits. According to the invention the method establishes the size of the large number processes according to value stored within a control register, this control register and other registers storing data are configured according to this value and accessed as N-bit registers (i.e. as 1024-bit registers for 1024-bit encryption. Additionally, the multiplication and exponentiation processes are handled according to the size of an arithmetic primitive, which is established according to the hardware configuration upon which the process is operating. As such the invention allows for an encryption process to adjust both to the configuration of the host microprocessor and supporting hardware/firmware and dynamically according to degree of security determined from the value stored within the control register.

Claims (19)

1. A method for performing a cryptographic process, the method comprising:

receiving a security level for processing the cryptographic process;

storing the security level in a control register;

transforming a first cryptographic process into a process rewritten to optimize the use of a plurality of large number operations supported within a core processor; and

executing the first security process on the core processor based on the security level stored in the control register and how the core processor is implemented.

2. The method of claim 1 , further comprising establishing a memory register size, wherein the memory register is used for processing large number multiplication and exponentiation associated with the cryptographic process.

3. The method of claim 2 , further comprising:

receiving a new security level; and

repeating establishing a memory register size based on the new security level.

4. The method of claim 1 , wherein the implementation of the core processor can be altered without changes to the sequence of operations executed by the core processor.

5. The method of claim 1 , wherein the security level is selected from the group consisting of 512, 1024, or 2048 bits long.

6. A non-transitory, tangible computer-readable storage medium comprising instructions for:

receiving and storing a security level in a control register;

using the security level to determine how the execution of a sequence of operations is performed by a core processor; and

executing the operations independent of how the core processor is implemented.

7. A processor comprising:

a control register storing a security level; and

a non-transitory, tangible computer-readable storage medium comprising instructions for executing a predetermined sequence of operations on a core processor based on the security level stored in the control register, wherein the predetermined sequence of operations is transformed into a process rewritten to optimize the use of a plurality of large number operations supported within the core processor.

8. The processor of claim 7 , further including a core processor for executing the sequence of operations in response to the instructions.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2026
From: SYNOPSYS, INC.
To: MIPS HOLDING, INC.
Reel/Frame 075040/0078 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2015
From: ELLIPTIC TECHNOLOGIES INC.
To: SYNOPSYS INC.
Reel/Frame 036761/0474 →
SECURITY AGREEMENT Recorded May 30, 2013
From: ELLIPTIC TECHNOLOGIES INC.
To: COMERICA BANK, A TEXAS BANKING ASSOCIATION
Reel/Frame 030518/0578 →
CERTIFICATE OF AMENDMENT Recorded Jan 26, 2011
From: ELLIPTIC SEMICONDUCTOR INC.
To: ELLIPTIC TECHNOLOGIES INC.
Reel/Frame 026691/0252 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2007
From: HAMILTON, NEIL F.; LOW, ARTHUR J.
To: ELLIPTIC SEMICONDUCTOR INC.
Reel/Frame 019132/0579 →
Continuity (2)
Provisional Application 60784488 · Mar 22, 2006
Related Publication 20070223687A1 · Sep 27, 2007