论文部分内容阅读
随着信息技术的不断发展,信息的安全研究也逐渐成为了一个非常重要的课题。对此问题的解决方式一般是通过对信息加密,在利用硬件进行加密时,现在使用最多的就是密码芯片。本文针对传统密码芯片结构固定,算法单一的缺点,提出了一种新的密码芯片的设计方法。在这种设计中,用户可以根据需要对其中的算法或其他参数进行升级。另外考虑到增加芯片的灵活性带来的安全性影响,本文给出了芯片的两种保护方案,动态保护和静态保护,它们为这种设计的使用带来更多的安全保证。在设计中,密码算法和动态保护的部分由我完成,其主要内容如下: 密码算法:密码算法是密码芯片中非常重要的一部分,其主要工作是进行加解密。本次设计选用的是Rijndael 算法,这是美国国家安全局认定的高级加密标准,具有很广泛的应用前景。在设计时,本文采用了基本的迭代结构,在此基础上进行了尽可能的优化。同时,本文也为算法制定了一个最简化的接口,并把它做为准则,这样将来设计其他升级算法时可以有相应的设计依据。动态保护:动态保护的功能是在芯片运行的过程中处理用户输入的各种敏感信息,如果是修改请求,则需要进行身份的验证。为此,本文设计了专门的动态保护模块,当用户需要加解密时,它直接将信号传输到算法模块,当用户需要修改密钥或升级算法时,则通过其内部的认证模块进行相应的认证,当通过时进行修改,否则报错。同时在认证模块内部,对各种修改请求的处理都被做成子模块,如果将来需要扩展是很容易的。通过以上两个部分的配合,就能保证在芯片运行的过程中,既能满足用户的各种升级请求,又能保证内部的敏感信息不受到破坏,在增加系统灵活性的同时不损失安全特性。最后,利用ModelSim 仿真工具对设计的各部分进行了时序仿真测试,并且在文中给出了一些重要的仿真验证波形。上述的仿真测试,有效地验证了本次设计的可行性。