论文部分内容阅读
随着社会信息化程度的不断提高,尤其是互联网技术的快速发展,网络应用越来越多。如何既能保护应用中的机密数据,又能有效地防止外部攻击,是网络应用面临的一大问题。网络应用的安全性完全依赖于密码学,每个应用所使用的密码算法都不会是完全一样的,为了保证密码算法的正确性和健壮性,有必要构建一个密码分析验证的原型系统,对要使用的密码算法进行验证优化。但是密码算法千变万化,多种多样,不可能每用一种算法就重新设计,这在时间和人力上都是很难满足的。本文的研究目标就是在可重构技术的基础上,通过组件重构技术实现密码算法的快速重构,使得不了解芯片设计技术的应用开发者也能完成密码算法的验证工作。本文通过对可重构技术基础理论的研究,提出了基于FPGA的动态重构设计构想,建立了密码分析系统的体系结构模型,并阐述了其工作原理。在对密码算核组件建模的基础上,通过预处理、图形输入、顶层模块生成、构造脚本和调用板卡配置目标代码五个重构流程,实现了密码算法的快速重构,并完成了验证。在组件设计技术方面,通过对组件生成原理及组件库管理机制的分析,重点论述了DES、AES、MD5、SHA1等算法的组件生成方法,并详细描述了组合算法的顶层互连过程。在工程设计方面,通过硬件设计、逻辑设计和软件设计三个部分详细介绍了密码分析系统的工程实现过程。本文的意义在于不仅在更高的抽象层次上实现了系统设计,使得应用开发人员和硬件开发人员能够并行作业,提高了密码构建和分析的效率,而且提供了图形化的组件设计平台,大大方便了对密码算法的分析和建模,为以后的系统级工程实现打下了很好的物质基础。