OpenSSL密码库算法笔记——第4.1.1章 平方和算法

平方和算法是模指数运算的基本。如果指数e的二进制展开为e=(e_{i},e_{i-1},\cdots ,e_{0})_{2},则利用平方和算法可以这样计算模指数:

g^e=\Pi _i g^{e_i2^i}。                                        …………(4.1)

        现在给出平方和算法的简单描述。关于平方和算法的更多情况可参见[10,算法14.79]。

───────────────────────────────────────

 OpenSSL密码库算法笔记——第4.1.1章 平方和算法_第1张图片

───────────────────────────────────────

举个简单的例子e=165。比如取,那么按照平方和算法思想计算模指数的过程为:

Step1:初始化A: A ← 1;

Step2:迭代过程如下:

表4.1

i

Step 2.1)

Step 2.2)

7

A←A×A=1

ei=1

A←A×g=g

6

A←A×A=g2

ei=0

5

A←A×A=g4

ei=1

A←A×g=g5

4

A←A×A=g10

ei=0

3

A←A×A=g20

ei=0

2

A←A×A=g40

ei=1

A←A×g=g41

1

A←A×A=g82

ei=0

0

A←A×A=g164

ei=1

A←A×g=g165

 

你可能感兴趣的:(openssl,密码技术与应用)