mirror of
https://github.com/emmansun/gmsm.git
synced 2025-05-16 14:06:19 +08:00
Updated SM2 MFMM (2) (markdown)
parent
85c22bf09c
commit
f22eeef4f6
@ -266,3 +266,24 @@ $t_5=t_5 - 0$
|
|||||||
移位: 2
|
移位: 2
|
||||||
加法:5
|
加法:5
|
||||||
减法:4
|
减法:4
|
||||||
|
|
||||||
|
## Order平方的模约减优化
|
||||||
|
假设 $T=a^2$ :
|
||||||
|
$T=t_7 \ast 2^{448} + t_6 \ast 2^{384} + t_5 \ast 2^{320} + t_4 \ast 2^{256} + t_3 \ast 2^{192} + t_2 \ast 2^{128} + t_1 \ast 2^{64} + t_0 $
|
||||||
|
|
||||||
|
则共四次约减,第一次约减为:
|
||||||
|
$T_1=t_0$
|
||||||
|
$Y=T_1 \ast k_0$
|
||||||
|
|
||||||
|
计算Y:
|
||||||
|
```asm
|
||||||
|
MOVQ acc0, AX
|
||||||
|
MULQ p256ordK0<>(SB)
|
||||||
|
MOVQ AX, t0 // Y = t0 = (k0 * acc0) mod 2^64
|
||||||
|
```
|
||||||
|
|
||||||
|
使用MULX:
|
||||||
|
```asm
|
||||||
|
MOVQ acc0, DX
|
||||||
|
MULXQ p256ordK0<>(SB), t0, AX
|
||||||
|
```
|
||||||
|
Loading…
x
Reference in New Issue
Block a user