From f22eeef4f62bd177bd7b0e63fbdb7104d0df2936 Mon Sep 17 00:00:00 2001 From: Sun Yimin Date: Fri, 23 Feb 2024 08:11:07 +0800 Subject: [PATCH] Updated SM2 MFMM (2) (markdown) --- SM2-MFMM-(2).md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/SM2-MFMM-(2).md b/SM2-MFMM-(2).md index b94d801..677021a 100644 --- a/SM2-MFMM-(2).md +++ b/SM2-MFMM-(2).md @@ -266,3 +266,24 @@ $t_5=t_5 - 0$ 移位: 2 加法:5 减法: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 +```