《网络安全基础》第三章 公钥密码和消息认证
作者:互联网
3.2.1散列函数的要求
-
散列函数H必须具有的下列性质
-
H可适用于任意长度的数据块。
-
H能够生成固定长度的输出。
-
对于任意给定的x,计算H(x)相对容易,并且可以用软/硬件实现。
-
对于任意给定的h,找到满足H(x)=h的x在计算上不可行,满足这一特性的散列函数称之为:具备抗原像攻击性。
-
对于任意给定的数据块x,找到满足H(y)=H(x)的y ≠ x在计算上是不可行;满足这一特性的散列函数称之为:抗弱碰撞性。
-
找到满足H(x) = H(y)的任意一对(x,y)在计算上是不可行的。满足这一特性的散列函数称之为:抗碰撞性。
-
满足上面前5个性质的散列函数称之为弱散列函数;如果还满足第6个性质则称之为强散列函数。
3.2.2散列函数的安全性
- 单向散列函数或者安全散列函数的重要性,不仅在于消息认证(消息摘要,数据指纹),还有数字签名(加强版的消息认证)和验证数据的完整性.
- 常见的单向散列函数有MD5和SHA。
- 有两种方法可以攻击安全散列函数:
- 密码分析法和暴力攻击法
- 散列函数抵抗蛮力攻击的强度完全依赖于算法生成的散列码长度
3.4.1公钥密码思想
公钥密码方案由6部分组成
- 明文
- 加密算法——通过加密算法和公钥对内容(或者说明文)进行加密,得到密文。
- 公钥——由公钥加密的内容,只能由私钥进行解密
- 私钥
- 密文
- 解密算法——通过解密算法和私钥对密文进行解密,得到明文。
公钥和算法都是公开的,私钥是保密的
传统密码中与密钥分配中心的会话麻烦大,而公钥密码实现的密钥分配并不简单
3.6.1数字签名的产生和验证
- 签名密钥只能由签名人持有,而验证密钥则是任何需要验证签名的人都可以持有。
- 当Bob采用公钥密码给Alice发送消息时,他应该用Alice的公钥加密消息,Alice收到消息后用自己的私钥进行解密
标签:网络安全,公钥,私钥,函数,解密,密码,第三章,散列 来源: https://blog.csdn.net/weixin_45821828/article/details/122208477