Vector and scalar based modular exponentiation
AssigneeIntel Corporation
InventorsShay Gueron, Vlad Krasnov
Life of this patent
Estimating the term…
Abstract
An embodiment includes a method for computing operations, such as modular exponentiation, using a mix of vector and scalar instructions to accelerate various applications such as encryption protocols that rely heavily on large number arithmetic operations. The embodiment requires far fewer instructions to execute the operations than more conventional practices. Other embodiments are described herein.
Claims23
At least one machine readable medium comprising a plurality of instructions that in response to being executed on a computing device, cause the computing device to carry out a method comprising:
- converting first and second integers from a first format to a second format;
- wherein the first and second integers each have more digits in the second format than in the first format and each of the digits in the second format is smaller in bit size than in the first format;
- performing an arithmetic operation between the first and second converted digits using both scalar and vector instructions;
- and
- determining a modular exponentiation (ME) based on the arithmetic operation.
(canceled)
(canceled)
(canceled)
An apparatus comprising:
- at least one memory;
- at least one processor, coupled to the memory, to perform operations comprising:
- converting first and second integers from a first format to a second format;
- wherein the first and second integers each have more digits in the second format than in the first format and each of the digits in the second format is smaller in bit size than in the first format;
- performing an arithmetic operation between the first and second converted digits using both scalar and vector instructions;
- and
- determining a modular exponentiation (ME) based on the arithmetic operation.
A method executed by at least one processor comprising:
- converting first and second integers from a first format to a second format;
- wherein the first and second integers each have more digits in the second format than in the first format and each of the digits in the second format is smaller in bit size than in the first format;
- performing an arithmetic operation between the first and second converted digits using both scalar and vector instructions;
- and
- determining a modular exponentiation (ME) based on the arithmetic operation.
Dependencies are inferred from the claim text.