基于SOPC的RSA算法的IP核设计

基于SOPC的RSA算法的IP核设计

论文摘要

随着现今信息化的飞速发展,信息的安全问题日益突出,同时也已经得到社会各个方面的广泛关注。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 本章小结
  • 结论
  • 参考文献
  • 致谢
  • 个人简历
  • 相关论文文献

    标签:;  

    基于SOPC的RSA算法的IP核设计
    下载Doc文档

    猜你喜欢