完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
一、en.x-cube-cryptolib ST加密库下载地址
二、加密与解密相关内容简介 1、相关术语
1、用途
(1)加密: 加密与界面的总流程图: 加密与解密的两种类型:
(2)哈希加密: 哈希加密操作流程图: 用途:这个确定性算法接受一个任意大小的输入数据块,并返回一个固定大小的位串,称为digest。 注意:
(3)消息认证码: 消息认证码流程: 用途:一个MAC(消息认证码)需要两个输入:一个消息和一个秘密密钥,这个密钥只有消息的发起者和它的目标接收者知道。这允许消息的接收者验证其完整性,并确保消息的发送者拥有共享的密钥。如果发送方不知道密钥,那么散列值就会不同,从而允许接收方理解消息不是来自原始发送方。 (4)数字签名: 数字签名流程: 用途:数字签名是一种验证消息的机制,即证明消息有效地来自给定的发送者,这与纸质文档上的签名非常相似。这是基于非对称加密的:使用私钥对消息进行签名,而验证签名只需要公钥。因此,只有私钥的所有者可以计算签名,而其他各方可以验证签名。 (5)RNG: 随机数生成流程: 用途:加密算法的安全方面基于不可能猜测密钥。因此,密钥必须是随机的。为了执行这一生成过程,可以使用RNG算法:它接收一个短熵字符串作为输入,并产生一个大得多的强密码学随机输出。 (6)小结 [tr]应用数据完整性机密性识别和身份验证 不可否认性[/tr]
1、DES 研究过加密的朋友十分熟悉,老牌的加密方法了。这是一个可逆的对称加密算法,也是应用最广泛的密钥系统。好像是从1977年美国***开始采用的。大家都看过U-571吧,DES的思路就是参照二战时期盟军缴获的德军恩格玛加密机,不过DES比那个要NB的多多了。到现在为止,除了差分分析法和线性分析法外只有暴力穷举法了。前两种方法不是密码学家或数学家都不懂呵,不过穷举DES,以现有我们大家都可以掌握的技术手段,恐怕没个几百上千年下不来呵。不过,咱们破解不了,不能说明就没人或没有设备破解不了。正因为如此,所以才衍生出了3重DES加密。常规的DES密钥是64位的(实际上有8位是校验用),而3DES是128位(当然有16位也是校验用)。增加密钥长度并增加运算量来防止破解,并在后来的AES出来之前确定为过度方案。不过现在即便有了AES,3DES也没少用,它依然很NB。 2、AES 它是一种高级加密标准,也叫Rijndael算法,2002年成为标准。它是用来代替原来的DES加密方法的。它也是一个可逆的对称加密算法。研究过IAP的朋友应该明白,把做好的固件程序通过AES加密后发布,用户可以通过IAP的方式来在线升级程序,而开发者则不必担心自己的生产代码流失。即能加密又能还原,这就是可逆加密算法,这也是我们想用到的。AES在早期的方案征集时就规定了要软硬件可以很好的集成,所以它也比较小,程序量比DES要少一些。 3、RC6 有个算法RC4听说过吧,在无线传输和串行流传输的加密领域占有相当的分量。据说RC6是同一帮人研究出来的,不过它和RC4没太大关系呵。它是AES方案征集时的候选算法之一,但是没有Rijndael算法那么幸运。RC6据说可以抵抗所有已知的攻击,并能够提供AES所要求的安全性,它也是相当优秀的一种可逆加密算法。不过当初它为什么没能当选为AES算法就不得而知了,不知道当时有没有给评委们足够的商务费用呵。 4、TEA 它是一种分组加密算法,也是可逆算法。短小精悍。它的实现非常简单,超不过10行代码。TEA算法每一次可以操作64位(8字节),采用128位(16字节)作为密钥,算法采用迭代的形式,尽管32轮迭代已经足够了,但是最好的迭代轮数是64轮。数据流加密可能比较适合,因为据说早期的QQ采用过TEA加密算法。 5、RSA 顶顶有名的非对称公钥加密算法,也许你可能不熟悉,不过网银总应该用过吧,多数都是RSA算法来认证的。1977年就开发出来了,DES时代的东东了。不过用到现在依然坚挺,可见加密强度有多高。呵呵,不过它防解密的原理也很简单:只告诉你两个数相乘后的结果,你能知道原来的两个数是什么吗?RSA的安全性依赖于大数的因子分解,但是并没有理论上可以证明破译RSA的难度与大数分解难度是同样的。它是第一个既能用于数据加密也能用于数字签名的算法,也是可逆算法。不过,在不告诉你密钥的情况下,你就是想什么办法加密后的数据也还原不回去,银行系统用它自有道理呵。告诉你个小秘密,前面说过的RC6好像就是有RSA开发组成员参与搞出来的。不过,RSA也有不少缺点。它受到素数产生技术的限制,产生密钥时很麻烦;出于安全性考虑,分组长度至少也要600位以上,运算代价很高、速度比较慢,比DES之类的对称算法要慢的多。它最大的缺点是需要生成大素数及大数取模时可能会产生特别大的数据量,这些都很耗费时间,生成复杂密钥时在单片机上运行可能都不止10分钟,所以解密时还是尽量让PC或服务器来做吧。 6、MD5 非常著名的哈希算法,不可逆算法。网站登录、操作系统的用户认证、文件完整性和数字签名等领域广泛应用。不可逆算法一般做的都比较绝,例如彩虹加密狗,只告诉你一个余数,你能知道原来的除数和被除数吗?只把运算过的数据相比较,而不非得知道原数据,这样就完成了认证过程。要想破解MD5的密码,即使采用现在最快的巨型计算机,据说也要运算100万年以上。不过,加密和解密都是数学领域的竞赛,每一种加密算法都或多或少的存在漏洞或缺陷,MD5看上去真那么牢不可破吗?和MD5同样有名的是山东大学的王小云教授。在2004年的国际密码大会上王小云宣布了她的研究小组完成了对MD5杂凑函数的杂凑冲撞,也就是从理论上说使用MD5的数字签名可以伪造。这也意味着MD5可能需要和其他加密算法共用才可以保证数字签名的安全。不过,说MD5已被破解,那也有些杞人忧天了。可以肯定的告诉你,网络上所有针对MD5提供的破解服务,全部都是查询用字典法暴力破解后的数据包,没有一个是真正伪造出来的数字签名,那些号称有几百亿条的记录对MD5庞大算法来说太小了。试想想,动用美国军方的巨型计算机,利用王小云研究理论,来破解我们的一个单片机或网站认证程序?没必要吧。所以MD5依然可用呵,只不过再加上3DES、AES或SHA来防止字典就更好了。 7、SHA 著名的哈希算法,不可逆算法。也是多用在数字签名上。SHA-1和MD5一样,也被王小云教授找出杂凑冲撞的漏洞,不过也是停留在理论上的。SHA-256是很NB的,它光密钥就有64个long,恐怕想要破解已经是天文数字了。最NB的是SHA-512,咱们这里没有收录,这里恐怕还没有人能用得上。 |
||||
|
||||
只有小组成员才能发言,加入小组>>
3209 浏览 9 评论
2896 浏览 16 评论
3402 浏览 1 评论
8844 浏览 16 评论
3997 浏览 18 评论
9627浏览 3评论
1004浏览 3评论
520浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
523浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2250浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-30 13:10 , Processed in 0.851020 second(s), Total 80, Slave 61 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号