熱度 10
1. 測試目標(biāo)
使用LKT系列加密芯片進(jìn)行SHA1摘要運算并使用openssl驗證正確性
2. 測試環(huán)境
本示例LKT加密芯片運行環(huán)境為windows系統(tǒng)、測試軟件LCS KIT、LKT-K100開發(fā)板。Linux ubuntu 14.04系統(tǒng)、OpenSSL 1.0.1f 6 Jan 2014。
3. 測試步驟
注意:“->”表示使用LCS KIT軟件操作LKT-K100向加密芯片發(fā)送數(shù)據(jù)
“<-”表示使用LCS KIT軟件操作LKT-K100讀回加密芯片輸出的數(shù)據(jù)
加密芯片交互數(shù)據(jù)為16進(jìn)制ASCII碼
3.1 確認(rèn)待加密數(shù)據(jù)
本例使用的明文摘要數(shù)據(jù)為0x313132323333343435353636,對應(yīng)的字符串為“1122334455667788”
3.2 使用LCS KIT軟件操作LKT-K100連接加密芯片后,進(jìn)行復(fù)位操作,此步驟省略
3.3 執(zhí)行摘要操作
-> 80C200000C313132323333343435353636
<- 6114
-> 00C0 0000 14
<- 24C1F4B4103E7017ECCFE8BAF33202F27FA4C197 9000
其中紅字部分為使用SHA1算法對0x313132323333343435353636進(jìn)行摘要后獲得的結(jié)果。
返回數(shù)據(jù)中的C1表示加密后的結(jié)果,其長度為0x80字節(jié),9000是加密成功的狀態(tài)碼
3.4 使用openssl算法庫驗證正確性
運行linux系統(tǒng),安裝openssl
在終端中輸入安裝openssl安裝指令
$ sudo apt-get install openssl
3.5 創(chuàng)建測試目錄sha1test,并進(jìn)入該路徑,創(chuàng)建SHA1-text.txt文件,并寫入數(shù)據(jù),注意此處是字符串。
$ 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
此時輸出摘要結(jié)果如圖2所示24c1f4b4103e7017eccfe8baf33202f27fa4c197。與3. 3步驟中加密芯片摘要結(jié)果比對一致,證明加密芯片進(jìn)行SHA1摘要結(jié)果正確。
至此,使用LKT加密芯片進(jìn)行SHA1摘要運算,并通過openssl命令行計算驗證的測試流程已全部介紹完。
kessy1: 請問樓主在相同的測試壞境下,其測試目標(biāo)更換為市面上的普通加密芯片是否能正常完成SHA1摘要運算?