论文部分内容阅读
随着计算机网络技术和通讯技术的迅猛发展,作为信息安全基础的以加密解密和数字签名功能为主的密码系统的设计与开发,也同样面临着“更安全,更快速,更强大”的要求。密码系统的整个设计开发流程既要与传统的设计方法相适应,又要在兼容国际流行的密码标准体系的同时,提供增值的功能。 与此同时,一个密码系统通常由一个软硬件的环境来支持其正常工作,一般而言,是运行在操作系统之上,或者独立的运行在嵌入式系统环境。本文将讨论一种新的运行环境,也即将密码系统在下一代BIOS基础上实现并且应用。 传统BIOS是固化在ROM中的子程序,主要用来管理各种输入输出设备,并且引导计算机进入操作系统环境。随着计算机软件/硬件技术的不断向前发展,传统BIOS的缺点,如缺少兼容性、可扩展性和可交互性等也越来越明显,逐渐不能适合现在计算机发展方向。 为了超越传统BIOS,当今业界领先设计和厂商都在努力改进BIOS的开发和功能,其中英特尔Extensible Firmware Interface(EFI)平台创新技术架构及其开源基础代码Tiano,使得固件创新技术方案和产品将成为可能,并且将成为下一代BIOS的发展标准和方向。 其中本文所要讨论的对于密码系统的设计和实现,主要基于EFI/Tiano可扩展性这一特点。本研究内容作为嵌入式系统研究的重要组成部分,重点介绍了对称加密算法中的AES算法,非对称加密算法中的RSA算法,两个重要的单向散列函数MD5和SHA-1,以及介绍了数字签名算法,并针对各个算法进行了细致的研究和缜密的安全性分析。根据EFI/Tiano功能扩展的设计方法学的要求,针对各个算法的不同特点,对各个算法在BIOS阶段进行了实现和优化,并将这些算法封装在一个库里面,作为一个可以按需装载和卸载的独立功能模块。 研究和实验已经表明了令人鼓舞的结果,不仅是有些算法的实现取得了比现在常用的密码系统更快的速度,而且这种模块化的设计和编程的方法完全符合EFI开发方式,充分展现了重用的特性。