论文摘要
随着现今信息化的飞速发展,信息的安全问题日益突出,同时也已经得到社会各个方面的广泛关注。RSA算法既可用于信息加密,又可用于数字签名,身份验证,因此在各种安全或认证领域得到广泛的应用。由于RSA算法是运算复杂度非常高的密码算法,所以用硬件来实现RSA有较大的难度,需要很多逻辑门,电路面积相当大,实用性较差。而用软件来实现RSA,运算速度太慢,实现效率很低,而且降低了抗解密的强度。而SOPC系统可以解决RSA算法纯软件实现和纯硬件实现的不足和缺点,因此,本文设计了一款基于SOPC的RSA算法的IP核。即:利用软硬件结合的方法实现RSA算法,在电路占用资源和运算速度之间找到最佳结合点,得到较好的性能。本文首先介绍了课题背景、国内外研究现状、SOPC技术、IP核技术以及RSA算法的基础知识和算法原理。然后深入研究RSA算法的实现方法,提出了基于SOPC系统的设计方案。在总体设计方案中,主要分成两大部分,一是软件部分:生成密钥对,由于在整个加解密过程中只执行一次,所以采用软件实现,既不会影响运算速度,又减少了电路资源。二是硬件部分:由于模幂运算是RSA算法的核心部分,其运算速度直接影响到加解密速度,所以这部分采用硬件实现。文中详细介绍了模幂运算实现的各个子模块,以及软硬件之间通信的接口总线。最后整个系统在QuartusII9.1环境中编译、综合,在Modelsim SE6.5中进行了仿真。仿真结果表明系统设计达到了预期的目标。
论文目录
摘要Abstract第1章 绪论1.1 课题背景及研究意义1.2 国内外研究现状1.2.1 RSA算法1.2.2 SOPC技术1.2.3 IP核技术1.3 论文主要研究工作1.4 论文结构第2章 RSA算法的研究2.1 数论基础知识2.1.1 公因子2.1.2 素数2.1.3 同余2.1.4 模逆2.1.5 欧拉定理和费马定理2.1.6 欧几里德算法和扩展欧几里德算法2.2 RSA算法概述2.2.1 密钥的产生2.2.2 加密2.2.3 解密2.3 生成密钥对的方法研究2.3.1 N的生成2.3.2 E的生成2.3.3 D的生成2.4 模幂运算研究2.4.1 R-L模式算法2.4.2 L-R模式算法2.4.3 脉动阵列算法2.4.4 三种算法比较2.5 模乘运算研究2.5.1 CIOS算法2.5.2 FIPS算法2.5.3 两种算法比较2.6 模幂模乘实现算法选择2.7 本章小结第3章 RSA IP核的总体设计方案3.1 系统框图3.1.1 SOPC框图3.1.2 IP核外围引脚图3.1.3 Avalon总线时序图3.1.4 SOPC Builder连接图3.2 软件部分3.2.1 生成素数3.2.2 欧几里得运算3.2.3 逆元运算3.3 硬件部分3.3.1 顶层接口模块设计3.3.2 RSA控制器结构图3.3.3 RSA控制器工作流程3.3.4 模幂控制器设计实现3.3.5 模乘控制器设计实现3.3.6 存储单元3.4 本章小结第4章 系统的仿真与验证4.1 生成密钥对测试4.2 系统仿真测试与验证4.3 本章小结结论参考文献致谢个人简历
相关论文文献
标签:模幂运算论文;