From a3180f9b6edafd59f82c7cc1289b5705877d8a9b Mon Sep 17 00:00:00 2001 From: Sun Yimin Date: Thu, 22 Feb 2024 09:01:15 +0800 Subject: [PATCH] Updated SM2 MFMM (2) (markdown) --- SM2-MFMM-(2).md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/SM2-MFMM-(2).md b/SM2-MFMM-(2).md index 535c1e9..085de65 100644 --- a/SM2-MFMM-(2).md +++ b/SM2-MFMM-(2).md @@ -4,17 +4,25 @@ SM2 256 的素数P=0xfffffffeffffffffffffffffffffffffffffffff00000000fffffffffff $$P = 2^{256} - 2^{224} - 2^{96} + 2^{64} - 1$$ +$$P = 0xFFFFFFFEFFFFFFF \ast 2^{192} + 0xFFFFFFFFFFFFFFFFF \ast 2^{128} + 0xFFFFFFFF00000000 \ast 2^{64} + 0xFFFFFFFFFFFFFFFFF$$ + $$P = 2^{256}-(2^{32} \ast 2^{192} + 0 \ast 2^{128} + (2^{32} - 1) \ast 2^{64} + 1)$$ - ## 平方的模约减优化 -### 方案一:(移位、加法、减法) -假设: +假设 $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$ +### 方案一:(乘法、加法) +这个是最原始方法。 +$T_2=T_1 \ast P=t_0 \ast P= (t_0 \ast 0xFFFFFFFEFFFFFFF) \ast 2^{192} + (t_0 \ast 0xFFFFFFFFFFFFFFFFF) \ast 2^{128} + (t_0 \ast 0xFFFFFFFF00000000) \ast 2^{64} + (t_0 \ast 0xFFFFFFFFFFFFFFFFF)$ +$T_3=T + T_2=t_7 \ast 2^{448} + t_6 \ast 2^{384} + t_5 \ast 2^{320} + t_4 \ast 2^{256} + (t_3+t_0 \ast 0xFFFFFFFEFFFFFFF) \ast 2^{192} + (t_2+t_0 \ast 0xFFFFFFFFFFFFFFFFF) \ast 2^{128} + (t_1+t_0 \ast 0xFFFFFFFF00000000) \ast 2^{64} + t_0 \ast 2^{64} $ + +$t_1=t_1 + t_0 \ast 0xFFFFFFFF00000001$ + +### 方案二:(移位、加法、减法) $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$ @@ -34,4 +42,4 @@ $t_2=t_2 - a_1$ $t_3=t_3 - a_0$ $t_0=t_0 - a_1$ -### 方案二 +