mirror of
https://github.com/emmansun/gmsm.git
synced 2025-09-17 20:33:50 +08:00
Updated SM2 MFMM (2) (markdown)
parent
8ebf0bcd44
commit
3cc8105148
@ -28,6 +28,31 @@ $t_1=t_1 + t_0 \ast 0xFFFFFFFF00000001$
|
|||||||
$t_2=t_2 + t_0 \ast p_2$
|
$t_2=t_2 + t_0 \ast p_2$
|
||||||
$t_3=t_3 + t_0 \ast p_3$
|
$t_3=t_3 + t_0 \ast p_3$
|
||||||
|
|
||||||
|
伪代码:
|
||||||
|
```asm
|
||||||
|
MOVQ $0xFFFFFFFF00000001, AX
|
||||||
|
MULQ t0
|
||||||
|
ADDQ AX, t1
|
||||||
|
ADCQ $0, DX
|
||||||
|
MOVQ DX, BX // carry
|
||||||
|
|
||||||
|
MOVQ p2, AX
|
||||||
|
MULQ t0
|
||||||
|
ADDQ BX, t2
|
||||||
|
ADCQ $0, DX
|
||||||
|
ADDQ AX, t2
|
||||||
|
ADCQ $0, DX
|
||||||
|
MOVQ DX, BX // carry
|
||||||
|
|
||||||
|
MOVQ p3, AX
|
||||||
|
MULQ t0
|
||||||
|
ADDQ BX, t3
|
||||||
|
ADCQ $0, DX
|
||||||
|
ADDQ AX, t3
|
||||||
|
ADCQ $0, DX
|
||||||
|
MOVQ DX, t0
|
||||||
|
```
|
||||||
|
|
||||||
### 方案二:(移位、加法、减法)
|
### 方案二:(移位、加法、减法)
|
||||||
$T_2=T_1 \ast P=t_0 \ast P= t_0 \ast (2^{256}-(2^{32} \ast 2^{192} + 0 \ast 2^{128} + (2^{32} - 1) \ast 2^{64} + 1))$
|
$T_2=T_1 \ast P=t_0 \ast P= t_0 \ast (2^{256}-(2^{32} \ast 2^{192} + 0 \ast 2^{128} + (2^{32} - 1) \ast 2^{64} + 1))$
|
||||||
$T_2=t_0 \ast 2^{256} - t_0 \ast 2^{32} \ast 2^{192} - t_0 \ast (2^{32} - 1) \ast 2^{64} - t_0$
|
$T_2=t_0 \ast 2^{256} - t_0 \ast 2^{32} \ast 2^{192} - t_0 \ast (2^{32} - 1) \ast 2^{64} - t_0$
|
||||||
|
Loading…
x
Reference in New Issue
Block a user