参数可选椭圆曲线加密算法整体设计.docVIP

参数可选椭圆曲线加密算法整体设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
参数可选椭圆曲线加密算法整体设计

参数可选椭圆曲线加密算法整体设计   摘 要:ECC算法的实现比较困难,往往需要通过专门的硬件来加速算法实现。讨论了定义在GF(2????n??)上的参数可选的椭圆曲线密码体制(ECC)的整体设计,分析了其中的关键算法,给出了几个关键算法的设计问题。该方案适合硬件实现。   关键词:椭圆曲线; 有限域; 加密   中图分类号:TP309.7文献标志码:A   文章编号:1001-3695(2007)06-0145-02   ECC的实现有软件和硬件两种方式。从安全性角度上考虑,硬件方式实现更具有优越性。有关ECC实现的文献已有很多。硬件方式实现ECC的报道最早见于文献[1],该文献在GF(2????155??)上实现了ECC加密算法,加密速度大约为4×??10??4 bps??。文献[2]中给出了基于FPGA实现的ECC处理器,面积约五万门,加密时数据吞吐率为1.6×10??4 bps,文献[3]中基于微代码形式实现的芯片,在GF(2????176??)上50MHz时钟下的点乘运算时间在10 ms以上。??   以上文献报道的ECC设计,绝大多数都是针对某一个固定有限域设计的,但在具体应用场合,有时需要系统参数可选择。本文广泛研究了ECC实现中各层次问题,将其作为一个整体综合考虑,并以实验和测试结果为依据,提出一套完整的高效的参数可选的ECC加密算法实现方案,该方案具有良好的通用性和灵活性,适合硬件实现。??      1 基于ONB的有限域运算法则??   在有限域GF(2????n??) 上进行乘法运算时,多项式基比正规基表示法简单,但在该域上进行乘方运算时,多项式基比正规基表示法困难[4]。优化正规基(Optimal Normal Base,ONB)是一种特殊的正规基。基于ONB表示法的域元素在执行平方运算时非常高效,仅需对表示元素的矢量进行循环移位。在幂运算方面ONB表示法也比多项式表示法有效得多。在ANSI ??X.9.62??和ANSI X.9.63中强调:有限域中元素以正规基表示时,优先选取存在Ⅱ型优化正规基,并且在选取的域GF(2????n)中,当n为合数与n??为素数时相比,ECC的安全性会降低,所以本文设计中采用Koblitz曲线,选取??n??为素数,存在Ⅱ型优化正规基的有限域GF(2????191??)和GF(2????233??),域元素用优化正规基表示。   (1)乘法。   (2)求逆。   正规基表示下的元素求逆通常使用费尔马定理,但是直接应用需要的乘法次数太多。Itoh[6]指出,完成一次求逆运算所需乘法次数最少为??I(m)=[??log????2(n-1)]+ω(n-1)-1次。其中ω(n-1)??表示域GF(2????n)中n-1??的二进制数表示中1的个数。在此基础上,Sand ho oh 和Chang Han Kim[7]提出优化求逆算法(Optimal Inverse Algorithm,OIA)。该算法求逆主要用到乘法和平方运算,乘法次数和Itoh的算法相同。有关算法介绍可参阅文献[7]。本文有限域元素求逆采用的就是OIA算法。??      2 ECC实现的硬件结构??   从图1分析,ECC加密算法可分为三个层次,即输入/输出控制、有限域运算模块控制、ECC加/解密运算控制。??   有关ECC曲线的参数,基点P的坐标、密钥通过外部存储器接口由32位总线输入到存储器中,在I/O状态机的控制下,由串并转换模块将有关数据输入到内部寄存器组中。寄存器组由233位的存储单元组成,主要存放运算过程中所需的中间变量和运算所需的系统参数。??   图1 ECC加密算法结构图   有限域运算模块主要负责有限域的各种算术运算,通过状态机控制,完成域GF(2????n??)中的有限域加法、乘法、平方和求逆运算。   运算控制级中的点乘状态机通过对有限域运算模块的合理调用,完成椭圆曲线上??P=Q和P≠Q??的加法运算,快速得到KP的结果,KP的计算也是整个ECC设计的核心。加/解密控制则是利用KP的值进行数据加/解密运算。   本文设计的支持多域宽的ECC加密系统模块如图2所示。域宽控制单元是选择域宽的,此处只选择了两个域宽。ECC加/解密控制单元完成两个域宽下的ECC加/解密运算。设计中采用了两个寄存组,分别存储GF(2????191??)和GF(2233??)的外部输入参数。当数据总线输入191bits下的参数时,选择域宽191bits下的ECC加密;数据总线输入233bits下的参数时,选择域宽191bits下的ECC加密。本设计可以进行扩展,只要增加寄存器组,对域宽控制单元作简单修改,便可以完成更多域宽下的ECC运算。??   图2 支持双域宽

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档