1. 测试目标
使用LKT系列加密芯片进行SHA1摘要运算并使用openssl验证正确性
2. 测试环境
本示例LKT加密芯片运行环境为windows系统、测试软件LCS KIT、LKT-K100开发板。Linux ubuntu 14.04系统、OpenSSL 1.0.1f 6 Jan 2014。
3. 测试步骤
注意:“->”表示使用LCS KIT软件操作LKT-K100向加密芯片发送数据
“<-”表示使用LCS KIT软件操作LKT-K100读回加密芯片输出的数据
加密芯片交互数据为16进制ASCII码
3.1确认待加密数据
本例使用的明文摘要数据为0x313132323333343435353636,对应的字符串为“1122334455667788”
3.2使用LCS KIT软件操作LKT-K100连接加密芯片后,进行复位操作,此步骤省略
3.3执行摘要操作
-> 80C200000C313132323333343435353636
<- 6114
-> 00C0 0000 14
<- 24C1F4B4103E7017ECCFE8BAF33202F27FA4C197 9000
其中红字部分为使用SHA1算法对0x313132323333343435353636进行摘要后获得的结果。
返回数据中的C1表示加密后的结果,其长度为0x80字节,9000是加密成功的状态码
3.4使用openssl算法库验证正确性
运行linux系统,安装openssl
在终端中输入安装openssl安装指令
$ sudo apt-get install openssl
3.5创建测试目录sha1test,并进入该路径,创建SHA1-text.txt文件,并写入数据,注意此处是字符串。
$ mkdir sha1test
$ cd sha1test
$ mkdir SHA1-text.txt
$ geidt SHA1-txt.txt
输入“112233445566”后保存退出,如图1所示。
图1
3.6登录openssl
$ openssl
3.7 OpenSSL> dgst -sha1 SHA1-test.txt
图2
此时输出摘要结果如图2所示24c1f4b4103e7017eccfe8baf33202f27fa4c197。与3. 3步骤中加密芯片摘要结果比对一致,证明加密芯片进行SHA1摘要结果正确。
至此,使用LKT加密芯片进行SHA1摘要运算,并通过openssl命令行计算验证的测试流程已全部介绍完。