引言
有限域上的乘法运算是实现椭圆曲线密码系统(Elliptic Curve Cryptosystem,ECC)的关键运算之一,它的性能好坏直接关系到整个系统的性能。本文通过论述比特串行算法、并行算法、混合算法、KOA这4中乘法算法、比较4种算法的优劣,找出最适合椭圆曲线密码系统实现的算法。
相关知识
ECC密码体制实现的有限域通常有两种:大素数域GF(p)和特征为2的有限域GF(2m),又被称为二进制域,由于二进制域更适合计算机的实现,所以更多的选择是在二进制域上实现椭圆曲线密码体制。GF(2m)的一种构成方法是多项式表达式,在这种方法中,GF(2m)上的元素是最高次数为m-1的二进制多项式(多项式的系数只能为0或1),多项式的表达形式为:GF(2m)={am-1zm-1+am-2zm-2+…+a1z+a0,ai∈{0,1}}。选择一个二进制域上的不可约多项式f(x)(对于任意的m,这样的多项式一定存在并且能有效产生),有限域加法运算时两个多项式的系数进行模2相