《公钥密码快速算法与实现技术》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:王喜成等著
  • 出 版 社:成都:电子科技大学出版社
  • 出版年份:2006
  • ISBN:7810949977
  • 页数:177 页
图书介绍:本书主要研究RSA公钥密码体制的大数模幂乘快速算法与硬件实现技术。提出一种公钥密码中大数模幂乘的快速运算新方法:预计算式模216Montgomery算法,提高了大数模幂乘的运算速度。设计了一个独立的硬件加密系统,采用TI公司DSP芯片TMS320C5409,在CCS集成开发环境下,实现了RSA密码快速算法。

第1章 密码学概论 1

1.1引言 1

1.2对称密码体制 2

1.3公钥密码体制 3

1.3.1公钥密码体制概述 3

1.3.2离散对数公钥密码 4

1.3.3椭圆曲线公钥密码 5

1.3.4HASH算法 6

1.4RSA公钥密码算法 8

1.4.1RSA算法的数学描述 9

1.4.2RSA算法安全性探讨 10

1.4.3RSA算法的技术难题 11

1.5本书内容 12

1.4.4RSA算法的应用情况 12

第2章 Montgomery算法的研究与改进 15

2.1Montgomery算法的证明与分析 15

2.1.1Montgomery算法的证明 15

2.1.2Montgomery算法的分析 16

2.2.Montgomery算法的改进 17

2.2.1预计算式Montgomery算法的提出和应用 17

2.2.2模216Montgomery算法的提出和应用 18

2.3改进型Montgomery算法的实现及其复杂性分析 20

2.3.1改进型Montgomery算法的实现 20

2.3.2改进型Montgomery算法的复杂性分析 22

2.4算法复杂性比较 24

2.4.1FIPS算法的步骤和复杂性分析 24

2.4.2算法性能分析比较 27

2.5本章小结 27

3.1程序总体构思 28

第3章 RSA快速算法的C语言编程 28

3.2大数基本运算程序编程 29

3.3大数模幂乘程序编程 30

3.3.1大数模乘的C语言编程 31

3.3.2大数模幂乘的C语言编程 32

3.4RSA算法的辅助性程序 34

3.4.1随机数的产生 34

3.4.2随机数的素性判定 35

3.5公钥和私钥的产生 37

3.6加密、解密运算的实现 38

3.6.1加密运算 38

3.6.2解密运算 40

3.7程序性能测试 41

3.8本章小结 42

4.1TMS320VC54X芯片简介 44

第4章 RSA快速算法的DSP实现 44

4.2DSP开发环境 45

4.2.1硬件开发系统 45

4.2.2软件开发系统 47

4.3C程序转化 48

4.3.1DSP的C编译器[37] 48

4.3.2CCS环境下RSA快速算法的实现 49

4.4性能测试与比较 52

4.4.1加密、解密速率测试 52

4.4.2FIPS性能测试与比较 53

4.4.3整体性能测试 54

4.5程序优化 55

45.1代码性能分析 55

4.5.2C语言和汇编语言混合编程 55

4.5.3优化性能测试 57

4.6本章小结 57

5.1系统方框图 58

第5章 RSA快速算法的系统设计 58

5.2DSP处理系统设计 59

5.2.1TMS320VC5409简介 59

5.2.2CCS集成开发环境 60

5.2.3DSP处理程序 61

5.3 DSP自举加载设计 67

5.3.1 TMS320VC5409自举程序简介 67

5.3.2 AM29LV200B的烧写 72

5.4 USB接口及应用程序设计 76

5.4.1USB 1.1协议简介 76

5.4.2 PDIUSBD12接口芯片简介 80

5.4.3单片机的固件编程 81

5.4.4用户软件编程 86

5.5硬件辅助系统设计 87

5.5.1 IDT7024双口RAM的设计 87

5.4.5 USB固件与应用程序流程 87

5.5.2 FPGA控制电路设计 90

5.5.3外围器件设计 92

5.6硬件系统的改进 93

5.6.1基于HPI实现DSP系统的USB接口 94

5.6.2基于CPLD的DSP控制系统设计 99

5.7系统测试与验证 102

5.7.1系统测试内容 102

5.7.2功能块测试与验证 103

5.8本章小结 109

第6章 基于FPGA的大数模幂乘快速算法研究 110

6.1基于Montgomery的大数模乘快速算法 110

6.1.1 Montgomery模乘算法 110

6.1.2适合FPGA的Montgomery模乘快速算法 112

6.2免比较免进位免预处理的模乘快速算法 115

6.2.1免比较大小的模乘快速算法 115

6.2.2高效的免比较的模乘快速算法 116

6.2.3免比较免进位免预处理的模乘快速算法 117

6.3大数模乘运算脉动阵列结构设计 119

6.3.1基于CSA算法的大数模乘运算脉动阵列结构设计 120

6.3.2基于RCA算法的大数模乘运算脉动阵列结构设计 124

6.4基于Montgomery算法的大数模乘运算脉动阵列结构设计 126

6.4.1交替输入式模乘运算脉动阵列结构设计 126

6.4.2并行输入式模乘运算脉动阵列结构设计 131

6.4.3流水线方式模乘运算脉动阵列结构设计 135

6.5模幂乘运算脉动阵列结构设计 137

6.5.1模幂乘算法 137

6.5.2模乘运算脉动阵列结构设计 139

6.5.3模幂乘运算器逻辑设计和时序设计 143

6.5.4模密乘运算器不同时钟控制逻辑之间的通信 151

6.6基于芯片XC2s200-5pq208综合与仿真 153

6.6.1SPARTAN-II系列FPGA芯片简介 153

6.6.2FPGA芯片开发流程及软件简介 157

6.6.3基于Foundation4.1开发系统仿真与分析 158

6.7本章小结 161

结束语 163

附录 165

附录A同余类 165

附录B中国剩余定理 165

附录C欧几里得算法 166

附录D欧拉函数 167

附录E逆元素存在定理 167

附录F时钟发生器仿真波形 167

附录GPECT控制功能模块仿真波形 168

附录H模长为768比特模乘器VHDL源程序 168

附录I模乘仿真波形(n=256) 170

附录J指数控制功能模块ECONTROL仿真波形(n=16,e=1101) 171

参考文献 172