论文部分内容阅读
信息安全在当前的社会生活中成为人们越来越关心问题,而保证信息安全的核心——加解密技术无疑是当前信息安全领域的研究热点。如何高效快速地实现当前广泛应用的RSA加解密算法是保证信息安全的关键。本文利用余数系统的数值表征形式,在课题组多年积累的基于传输触发架构的可配置可扩展处理器设计方法学基础上,实现了兼具高数据吞吐率、低硬件资源开销和支持多种密钥长度等优点的RSA加解密协处理器。本文首先对实现RSA加解密流程的具体算法进行了讨论和优化。采用了基于余数系统(RNS)的RSA加解密实现算法,并对RNS蒙哥马利模乘算法进行了数据并行度的分析,进一步根据可配置可扩展处理器的硬件特性,对基于余数系统的蒙哥马利模乘以及模幂算法进行了重新调度,最大限度的揭示其数据级并行度。在此基础上,选用了特殊的RNS基,使得在RNS域下的模乘、模加等操作的复杂度大大降低。并在这种特殊的基形式下,提出了余数系统数值表征形式和传统二进制数值表征形式之间的相互转换算法,解决了困扰余数系统实现的另一个关键问题。其次,对基于传输触发架构的RSA密码协处理器进行架构设计和功能单元的定制。利用传输触发架构在汇编代码层次上的细粒度数据传输可见的优势,消除了部分读后写和写后写等数据相关,充分挖掘了指令级并行性。设计了可重构的模乘累加阵列,以加速RSA加解密的核心运算——RNS蒙哥马利模乘,同时在模乘累加阵列设计了可重构的专用数据通路,降低了总线负载,提高了硬件资源利用率。并对协处理器的互联网络进行了裁剪,仅保留需要数据传输的寄存器之间的互连资源,降低硬件资源开销。通过最终的实验结果可以看出,所设计的RSA密码协处理器兼具高数据吞吐率、低硬件资源开销和支持多种密钥长度等优点。在100MHZ的主频下, 1024比特的RSA解密算法数据吞吐率达到106Kbps。在SMIC 0.18μm CMOS的工艺库下,协处理器的逻辑等效门数仅为101Kgates。同时支持从512比特到4096比特的当前主流密钥长度的RSA加解密算法,达到了较好的性能。