您当前的位置:五五电子网电子知识电子知识资料安全-防盗-报警利用ATSHA204的密钥认证系统设计 正文
利用ATSHA204的密钥认证系统设计

利用ATSHA204的密钥认证系统设计

点击数:7640 次   录入时间:03-04 11:55:44   整理:http://www.55dianzi.com   安全-防盗-报警
基于ATSHA204的密钥认证系统设计

    通过串口接收到的主机计算的结果(digest)和ATSHA204发送回来的结果截图如图3所示。图中前32字节为SHA-256计算所得的digest,后面为devICe发回来的count(1字节)+response(32字节)+crc(2字节),可以看出中间的32字节和SHA-256计算所得相同,因此便可认证成功。反之,如果芯片中的密钥数据不是用户定义的。那么返回的response和SHA-256计算的不同,则认证不成功,从而实现了程序加密。

    

基于ATSHA204的密钥认证系统设计

     

    5 测试

    为了更好地验证加密系统的可靠性与可行性,在测试认证基本功能之后,将其嵌入到一个实际系统中,对加密性能进行测试。基于已有的ATmega128硬件平台,选取SD卡文件系统读取程序作为测试,系统的运行流程如图4所示。

基于ATSHA204的密钥认证系统设计

    本系统采用开源的Fatfs文件系统作为SD卡的文件系统,SD卡与ATmega128的通信方式采用传统的SPI方式,SD卡中存放已经转换好的单色分辨率为128×64的位图bin文件,认证部分只作为一个具有返回值的子函数,根据返回值确定是否成功。

    如果成功,则程序继续执行;如果不成功,延时1 s再次启动加密芯片进行认证。如果成功,则视同认证成功;如果还是不成功,则通过液晶显示屏提示不成功,使用assert语句终止程序。

    测试中采用置换不同配置的加密芯片来测试加密的可靠性,认证成功和失败时的情况分别如图5和图6所示。

基于ATSHA204的密钥认证系统设计

    结语

    本文主要介绍了Atmel公司最新加密芯片ATSHA204的原理和使用方法,初步对其中使用到的加密算法SHA-256进行了简单介绍,最后在ATmega128平台使用I2C总线接口模块,利用中断方式实现SD卡的数据发送与接收,并通过MAC方式实现了认证,并详细描述了程序流程,解析了部分程序语句。本设计具有很强的实用性,ATSHA204是目前广泛使用的加密芯片,是Atmel公司加密芯片的典型产品,本设计对于指导实际应用具有参考意义。



上一页  [1] [2] 


本文关键字:认证  安全-防盗-报警电子知识资料 - 安全-防盗-报警