概述
-----------------------------------------------欢迎查看网络安全连载博客-----------------------------------
【网络安全】-安全散列函数,信息摘要SHA-1,MD5算法 【网络安全】-非对称加密,RSA算法,数字签名
【网络安全】-RSA非对称算法算法、数字签名 【网络安全】-建立安全socket连接、登录
【网络安全】-【数字证书,证书链】
---------------------------------------------------------------------------------------------------------------------
本文绝大部分内容来自《网络安全基础——应用与标准》第五版——清华大学出版社。其中蓝色部门是自己添加
安全散列函数
单向散列函数或者安全散列函数之所以重要,不仅在于消息认证(消息摘要,数据指纹),还有数字签名(加强版的消息认证)和验证数据的完整性。常见的单向散列函数有MD5和SHA
散列函数的要求
散列函数的目的是文件、消息或者其他数据块产生“指纹”。为满足在消息认证中的应用,散列函数H必须具有下列性质:
(1)H可适用于任意长度的数据块。
(2)H能够生成固定长度的输出。
(2)对于任意给定的x,计算H(x)相对容易,并且可以用软/硬件实现。
(4)对于任意给定的h,找到满足H(x)=h的x在计算上不可行,满足这一特性的散列函数称之为:具备抗原像攻击性。
(5)对于任意给定的数据块x,找到满足H(y)=H(x)的y ≠ x在计算上是不可行;满足这一特性的散列函数称之为:抗弱碰撞性。
(6)找到满足H(x) = H(y)的任意一对(x,y)在计算上是不可行的。满足这一特性的散列函数称之为:抗碰撞性。
前三个性质是使用散列函数进行消息认证的实际可行要求。第四个属性,抗原像攻击,防止攻击者能够回复秘密值。抗弱碰撞性保证了对于给定的消息,不可能找到具有相同散列值的可替换消息。
满足上面前5个性质的散列函数称之为弱散列函数。如果还满足第6个性质则称之为强散列函数。
一般来说:能够认识散列函数的两个特点就OK,1.输出固定长度的 2. 不可逆转!
散列函数的安全性
有两种方法可以攻击安全散列函数:密码分析法和暴力攻击法。散列函数抵抗暴力攻击的强度完全依赖于算法生成的散列码长度。Van Oorschot和Wiener曾经提出,花费1000万美元涉及一个被专门用来搜索MD5算法碰撞的机器,则平均24天内就可以找到一个碰撞。
2004年8月中国密码学家王小云教授等首次公布了提出一种寻找MD5碰撞的新方法。目前利用该方法用普通微机几分钟内即可找到MD5的碰撞。MD5已经呗彻底攻破。
简单散列函数
Ci = bi1⊕ bi2⊕ … ⊕ bim
SHA安全散列函数
● 2002年,公布了SHA-2(SHA-256、SHA-384、SHA-512)
● 2008年,增加了SHA-224
● 第1步、追加填充比特
● 第2步、追加长度
● 第3步、初始化散列缓冲区
● 第4步、处理1024比特的数据块消息
● 第5步、输出
最后
以上就是仁爱冬瓜为你收集整理的网络安全-安全散列函数,信息摘要SHA-1,MD5原理安全散列函数SHA安全散列函数的全部内容,希望文章能够帮你解决网络安全-安全散列函数,信息摘要SHA-1,MD5原理安全散列函数SHA安全散列函数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复