高性能双线性对密码算法与VLSI实现研究

来源 :复旦大学 | 被引量 : 0次 | 上传用户:apple41900
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
双线性对密码是近年来公钥密码学新兴研究领域之一。在过去十年中,双线性对被广泛而创造性地用于构建新型信息安全协议,为人们带来了传统公钥密码技术难以提供的新颖而强大的信息安全服务,具有巨大的研究价值和广泛的应用前景。然而,与传统公钥密码相比,双线性对密码复杂度更高,计算强度更大,双线性对的计算效率往往成为相关信息安全协议是否能实现的关键所在。本文以高性能双线性对密码算法及其VLSI实现为研究目标,提出了一种双线性对专用指令集处理器。通过专用硬件加速单元、高效的指令集、以及以指令为纽带的软硬件协同,它能够实现高性能和灵活性的有机统一。文章首先综述双线性对密码学的发展历史与研究现状,介绍其在学术界与工业界的研究进展。其后,本文介绍了双线性对构造理论,包括双线性对数学原理和优化技术的基本概念,综述了历年来双线性对计算研究所取得的重要进展。随后,本文提出两种适用于双线性对计算的新型模乘算法。两种算法均基于Montgomery模乘算法和商流水技术,充分利用了二次扩域乘法的并行性。算法一通过合并两个模乘运算,在利用运算并行性的同时减少部分积。基于算法一,文中提出一种高基乘法器结构,实现并应用于双线性对专用安全处理器中。算法一具有性能上的优势,但缺点是运算结果需要扩位。算法二通过增加直接Montgomery约减来避免数据扩位,并结合Lazy Reduction思想,通过合并更多模乘运算从整体上减少由直接约减步骤增加的周期数。最后,本文提出一种适用于双线性对计算的专用安全处理器,完成了指令集、指令流水线以及密码加速单元等重要硬件模块的设计与实现。探索了通过并行执行模乘与其他操作,并配合算法调度来提高密码运算吞吐率的性能优化方法。专用处理器使用TSMC65nm工艺流片,芯片最高工作频率800MHz,功耗266.5mW,面积2.51mm2。以254-bit最优对为实现用例,最优Ate对计算平均需0.64ms。通过对实现结果的分析,本文还对专用处理器作了进一步改进,通过改进数据访存机制、增加寄存器数量等措施进一步提高了运算速度。改进后的硬件使用TSMC65nm工艺进行综合,并增加256-bit最优Ate对实现。芯片实现结果与相关工作进行了比较,对比结果表明本文提出的专用处理器其性能指标处于同时期国际同类工作的前列。
其他文献
该文依照《建设事业IC卡应用技术》标准,根据CPU卡预付费表专用集成电路的要求,分析研究了一种新型的将安全模块与CPU合二为一的安全模块.此安全模块是专用集成电路的核心部
学位