基于FPGA的椭圆曲线加密传输系统的设计与实现
| 摘要 | 第4-5页 |
| ABSTRACT | 第5页 |
| 1 绪论 | 第8-12页 |
| 1.1 本课题的研究背景和意义 | 第8页 |
| 1.2 国内外研究现状以及发展趋势 | 第8-11页 |
| 1.3 研究目标和内容安排 | 第11-12页 |
| 2 加密理论基础及硬件平台 | 第12-20页 |
| 2.1 有限域基本理论 | 第12-13页 |
| 2.1.1 群 | 第12页 |
| 2.1.2 素数域 | 第12-13页 |
| 2.1.3 二元域 | 第13页 |
| 2.2 椭圆曲线密码理论 | 第13-18页 |
| 2.2.1 椭圆曲线相关理论 | 第13-15页 |
| 2.2.2 椭圆曲线群的基本运算 | 第15-16页 |
| 2.2.3 椭圆曲线离散对数问题 | 第16页 |
| 2.2.4 密码系统的建立及密钥生成和交换 | 第16-17页 |
| 2.2.5 椭圆曲线密码算法加解密过程 | 第17-18页 |
| 2.3 硬件平台 | 第18-19页 |
| 2.4 本章小结 | 第19-20页 |
| 3 椭圆曲线加密算法的FPGA实现 | 第20-30页 |
| 3.1 有限域上基本运算的FPGA实现 | 第20-23页 |
| 3.1.1 有限域加法模块 | 第20-21页 |
| 3.1.2 有限域乘法模块 | 第21-22页 |
| 3.1.3 有限域求逆模块 | 第22-23页 |
| 3.1.4 有限域除法模块 | 第23页 |
| 3.2 椭圆曲线群上点运算的实现 | 第23-26页 |
| 3.2.1 点加和点倍运算模块 | 第24-25页 |
| 3.2.2 点乘运算模块 | 第25-26页 |
| 3.3 算法总体设计 | 第26-29页 |
| 3.3.1 FPGA实现考虑因素 | 第26页 |
| 3.3.2 算法模块设计及实现 | 第26-29页 |
| 3.4 本章小结 | 第29-30页 |
| 4 椭圆曲线加密传输系统的设计与实现 | 第30-47页 |
| 4.1 系统需求 | 第30页 |
| 4.2 总体设计 | 第30-34页 |
| 4.2.1 系统工作流程 | 第31-32页 |
| 4.2.2 数据帧格式定义 | 第32-34页 |
| 4.3 模块设计 | 第34-46页 |
| 4.3.1 FIFO模块 | 第34-35页 |
| 4.3.2 USB模块 | 第35-37页 |
| 4.3.3 CRC校验模块 | 第37-39页 |
| 4.3.4 ECC加解密模块 | 第39-40页 |
| 4.3.5 W5300网络模块 | 第40-43页 |
| 4.3.6 密码键盘模块 | 第43-44页 |
| 4.3.7 SD卡模块 | 第44-46页 |
| 4.4 本章小结 | 第46-47页 |
| 5 测试及分析 | 第47-55页 |
| 5.1 椭圆曲线加密算法仿真 | 第47-51页 |
| 5.1.1 有限域基本运算仿真 | 第47-48页 |
| 5.1.2 椭圆曲线群上点运算的仿真 | 第48-50页 |
| 5.1.3 椭圆曲线加密和解密模块仿真 | 第50-51页 |
| 5.2 系统测试 | 第51-54页 |
| 5.2.1 系统实物图 | 第51-52页 |
| 5.2.2 测试方法 | 第52-53页 |
| 5.2.3 测试结果及分析 | 第53-54页 |
| 5.3 本章小结 | 第54-55页 |
| 6 总结与展望 | 第55-56页 |
| 参考文献 | 第56-58页 |
| 致谢 | 第58-59页 |