Ecc F2 M Montgomery Modular Multiplication ((A × B × R-2) Mod N) - Motorola DigitalDNA MPC180E User Manual

Security processor
Table of Contents

Advertisement

7.3.12 ECC F
2
((A × B × R
-1
The (A × B × R
) mod N calculation is the core function of the PKEU. This function is
used to assist the point add and double routines in completing their functions. For ECC
purposes, this function will rarely be used directly by the host processor. This function
operates with a minimum of 5 digits (Modsize = 4). The complete set of I/O conditions is
shown below:
Computation
C = A * B * R
number of digits of the modulus vector
Entry name
modularmultiply (same for F
Entry address
0x00a(modularmultiply)
Pre-conditions
A0-3 = A (binary polynomial, exact A-location pre-selected in Control Register)
B0-3 = B (binary polynomial, exact B-location pre-selected in Control Register)
N0-3 = irreducible polynomial of the ECC system
Post-conditions
A0-3 = A operand is preserved
B0-3 = results of modular multiplication stored where the B operand was located
Unless explicitly noted, all other registers are not guaranteed to be any particular value.
Special
Typically, though it is not mandatory, the operands will be in the Montgomery residue system. The only
conditions
time this would not be the case is when manually placing a value into the Montgomery residue system.
Initial Condition
irred. poly. (if N0 selected)
Figure 7-15. F
PRELIMINARY—SUBJECT TO CHANGE WITHOUT NOTICE
m Montgomery Modular Multiplication
-1
) mod N)
Table 7-16. F
m Modular Multiplication
2
F
2
-1
mod N, where A, B, and C are integers less than N and R = 2
or F
m)
p
2
B3
B2
B1
B0
B (if B0 selected)
A3
A2
A1
A (if A0 selected)
A0
N3
N2
N1
N0
'1' - ECC enabled
ECC
EXP(k)
XYZ
'1' - F
m enabled
F2M
2
regAsel
set (00, 01, 10, 11)
regBsel
set (00, 01, 10, 11)
regNsel
set (00, 01, 10, 11)
Modsize
set
EXP(k)_SIZE
m Modular Multiplication Register Usage
2
Chapter 7. Public Key Execution Unit
m Modular Multiply
Final Condition
?
?
?
C (if B0 selected)
A (if A0 selected)
?
?
?
irred. poly. (if N0 selected)
same
same
same
same
same
same
ECC Routines
16D
where D is the
7-23

Advertisement

Table of Contents
loading

Table of Contents