可编程并行ECC协处理器架构解析
1. ECC背景知识
1.1 GF(2m)上的ECC实现
在GF(2m)上,非超奇异椭圆曲线E定义为方程 (E : y^2 + xy = x^3 + ax^2 + b) 的解 ((x, y) \in GF(2m) \times GF(2m)) 的集合,其中 (a, b \in GF(2m)) 且 (b \neq 0),同时包含无穷远点。ECC的基本运算单元是椭圆曲线标量乘法(ECSM),形式为 (K \cdot P),其中 (K) 是整数,(P) 是椭圆曲线上的点。标量乘法可通过一系列的点加法和点加倍操作实现,该操作在基于ECC的加密方案执行时间中占主导地位。
以下是两种ECSM算法:
ECC Scalar Multiplication (double-and-add-always)
Input: P, K={kn-1,..,k0}
Output: Q=K•P
1: Q[0]←P
2: for i=n-2 to 0 do
3:
Q[0] ← 2Q[0]
Q[1] ← Q[0] + P
Q[0] ← Q[ki]
Return Q[0]
ECC Scalar Multiplication (Montgomery Ladder)
Input: P, K={kn-1,..,k0}
Output: Q = K•P
1: Q[0]←P, Q[1]←2P;
2: for i=n-2 to 0 do
3:
Q[1-ki] ← Q[0] + Q[1]
Q[ki] ← 2Q[ki]
Return Q[0]
超级会员免费看
订阅专栏 解锁全文
86

被折叠的 条评论
为什么被折叠?



