社区导航

 

搜索
查看: 2316|回复: 21

[原创] 如何使用加密芯片完成SHA1摘要运算

[复制链接]

78

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-22 13:57 | 显示全部楼层 |阅读模式
1. 测试目标
使用LKT系列加密芯片进行SHA1摘要运算并使用openssl验证正确性
2. 测试环境
本示例LKT加密芯片运行环境为windows系统、测试软件LCS KITLKT-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.png
                                                               
1
3.6 登录openssl
$ openssl
3.7  OpenSSL>  dgst -sha1 SHA1-test.txt
                                             图片2.png

2
此时输出摘要结果如图2所示24c1f4b4103e7017eccfe8baf33202f27fa4c197。与3. 3步骤中加密芯片摘要结果比对一致,证明加密芯片进行SHA1摘要结果正确。
至此,使用LKT加密芯片进行SHA1摘要运算,并通过openssl命令行计算验证的测试流程已全部介绍完。
此内容由EEWORLD论坛网友王宇宙原创,如需转载或用于商业用途需征得作者同意并注明出处


回复

使用道具 举报

92

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-25 17:12 | 显示全部楼层
LZ的一系列文章都看过了,讲的很好,学习了。

回复

使用道具 举报

88

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-25 17:21 | 显示全部楼层
楼主所说的这些测试步骤都是在windows系统下完成的,那在其他系统下是否可以实现呢?

回复

使用道具 举报

78

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2019-4-25 17:26 | 显示全部楼层
当然是不局限于windows系统的,在linux下同样可行

回复

使用道具 举报

82

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-25 17:34 | 显示全部楼层
单纯使用SHA算法保护产品的话,安全性高吗?

回复

使用道具 举报

123

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-25 19:49 | 显示全部楼层
SHA算法只是作为数据摘要,主要用于确保数据完整性,安全性都是相对的,只要方案做的好,安全性也是有保障的

回复

使用道具 举报

107

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-26 08:39 | 显示全部楼层
又get到新技能了,LKT系列的加密芯片功能很强大,感谢楼主的分享

回复

使用道具 举报

121

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-26 09:09 来自手机 | 显示全部楼层
请问楼主在相同的测试坏境下,其测试目标更换为市面上的普通加密芯片是否能正常完成SHA1摘要运算?

点评

市面上的其他芯片用相同的指令,是不一定能操作实现SHA1运算的。每个厂家的COS定义的指令如果不是特定要求或不是PBOC这类必须按行业规范指令操作的。指令格式是允许存在一些差异的。  详情 回复 发表于 2019-4-26 14:25

回复

使用道具 举报

121

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-26 14:25 | 显示全部楼层
邓女士 发表于 2019-4-26 09:09
请问楼主在相同的测试坏境下,其测试目标更换为市面上的普通加密芯片是否能正常完成SHA1摘要运算?

市面上的其他芯片用相同的指令,是不一定能操作实现SHA1运算的。每个厂家的COS定义的指令如果不是特定要求或不是PBOC这类必须按行业规范指令操作的。指令格式是允许存在一些差异的。

回复

使用道具 举报

107

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-26 15:06 | 显示全部楼层
SHA1加密算法貌似是公认的最安全的散列算法之一,那么LKT系列加密芯片用上这么安全的算法,简直是完美啊!!

回复

使用道具 举报

117

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-26 15:13 来自手机 | 显示全部楼层
没吧,摘要算法和安全没啥关系

回复

使用道具 举报

107

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-26 15:26 | 显示全部楼层
那和什么有关系呢?

回复

使用道具 举报

117

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-26 15:31 来自手机 | 显示全部楼层
要理解Sha1是什么,是摘要算法,也叫单向算法不是平时理解的加解密,所以和安全没啥关系

回复

使用道具 举报

92

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-26 15:43 | 显示全部楼层
数据加密我知道,但是这个SHA1算法,好像并不能还原数据,在数据传输中有什么作用啊?SHA256也是这么操作吗?

回复

使用道具 举报

37

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-27 11:05 来自手机 | 显示全部楼层
SHA1算法的作用是验证数据的完整性,应该是一样的操作

回复

使用道具 举报

82

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-27 19:58 | 显示全部楼层
加密成功的状态码是解密的唯一路径吗?

回复

使用道具 举报

123

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-27 21:00 | 显示全部楼层
加密成功返回的状态码只是代表指令执行成功了,如果解密的话,还得从分析线路数据或者破解单片机端破解

回复

使用道具 举报

885

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-27 21:53 | 显示全部楼层
支持一下 楼主加油

回复

使用道具 举报

88

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-28 16:44 | 显示全部楼层
要是能给个openssl的库函数调用例程就好了

回复

使用道具 举报

107

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2019-4-28 17:21 | 显示全部楼层
确实很专业,弥补了很多知识点空缺

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 1/4 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-4-6 17:23 , Processed in 0.552507 second(s), 19 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表