Updated MFMM (markdown)

Sun Yimin 2024-02-21 15:52:01 +08:00
parent f1c924ce2e
commit 5e93aeb666

@ -2,6 +2,10 @@ MFMM=[Montgomery Friendly modules Montgomery Multiplication](https://eprint.iacr
首先NIST P256 / SM2 256 的素数P都是Montgomery Friendly modules。 首先NIST P256 / SM2 256 的素数P都是Montgomery Friendly modules。
SM2 256 的素数P=0xfffffffeffffffffffffffffffffffffffffffff00000000ffffffffffffffff也可以表示为
$P = 2^{256}-(2^{32} \ast 2^{192} + 0 \ast 2^{128} + (2^{32} - 1) \ast 2^{64} + 1)$
输入: 输入:
X, Y都是Montgomery数值表示 X, Y都是Montgomery数值表示
X, Y都用64位的字表示 X, Y都用64位的字表示
@ -12,6 +16,7 @@ MFMM=[Montgomery Friendly modules Montgomery Multiplication](https://eprint.iacr
输出: 输出:
X * Y * 2^(-256) mod p X * Y * 2^(-256) mod p
acc0, acc1, acc2, acc3, acc4, acc5是64位寄存器 acc0, acc1, acc2, acc3, acc4, acc5是64位寄存器
### 第一步计算X * Y0 ### 第一步计算X * Y0