椭圆曲线密码中双线性对与离散对数问题研究
【摘要】:近年来,椭圆曲线密码体制成为公钥密码学研究的重要领域之一。椭圆曲线密码体制的安全性是基于椭圆曲线离散对数问题求解的困难性。基于椭圆曲线构造的双线性对因其特殊的性质,诸多密码协议由其构造出来,而这些协议利用其他数学工具是难以构造的。本文主要研究了双线性对的快速计算、双线性对故障攻击以及Koblitz曲线上离散对数问题求解,取得了以下研究成果:
1.利用共轭技巧加速了椭圆曲线双线性对的计算效率。在双基数链算法计算Tate对的基础上给出了一种高效的Miller算法,通过范函数的应用减少Miller算法中有理函数直线和垂线的数量,进一步结合共轭技巧将求逆转化为扩域中共轭元的乘法,优化了Miller算法,提高了计算效率。新算法不仅能应用于超奇异椭圆曲线上而且能应用于一般的椭圆曲线上,测试结果表明提出的新算法比已有的算法快大约10%以上。
2.给出了一种针对椭圆曲线双线性对Miller算法的故障攻击方法。在深入研究快速计算双线性对的基础上,本文进一步研究了Miller算法的故障攻击。该方案采用侧信道攻击的思想,通过植入错误有目的的诱导加密错误,对比错误输出结果和正常输出结果,获得非线性方程组,通过求解非线性方程组恢复密钥,同时分析了该方案的成功概率。最后以嵌入次数为4的情况在Hessian坐标下给出了实际的攻击案例。
3.利用Koblitz曲线上正规基表示下Frobenius映射只需循环移位的特性,提高了求解Koblitz曲线上离散对数问题的效率。在分析Pollard-ρ算法求解椭圆曲线离散对数问题的基础上,本文提出了将迭代函数作用范围限制在循环群G的子集S上以提高Pollard-ρ算法的求解效率。并且利用Frobenius映射构造了具体的迭代函数,改进的Pollard-ρ算法使得求解ECDLP的期望运行时间可以达到(π n)(4k)步,其中k为曲线的嵌入次数。