iPXE
|
X25519 multiplication step 1 result. More...
Public Member Functions | |
bigint_t (X25519_SIZE+X25519_SIZE) product | |
Raw product. More... | |
Data Fields | |
struct { | |
} | parts |
Partition into low-order and high-order bits. More... | |
X25519 multiplication step 1 result.
Step 1 of X25519 multiplication is to compute the product of two X25519 unsigned 258-bit integers.
Both multiplication inputs are limited to 258 bits, and so the product will have at most 516 bits.
x25519_multiply_step1::bigint_t | ( | X25519_SIZE+ | X25519_SIZE | ) |
Raw product.
Big integer multiplication produces a result with a number of elements equal to the sum of the number of elements in each input.
struct { ... } x25519_multiply_step1::parts |
Partition into low-order and high-order bits.
Reduction modulo p requires separating the low-order 256 bits from the remaining high-order bits.
Since the value will never exceed 516 bits (see above), there will be at most 260 high-order bits.
Referenced by x25519_multiply().