《网络安全基础》第三章 公钥密码和消息认证

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部分组成

  1. 明文
  2. 加密算法——通过加密算法和公钥对内容(或者说明文)进行加密,得到密文。
  3. 公钥——由公钥加密的内容,只能由私钥进行解密
  4. 私钥
  5. 密文
  6. 解密算法——通过解密算法和私钥对密文进行解密,得到明文。

公钥和算法都是公开的,私钥是保密的
传统密码中与密钥分配中心的会话麻烦大,而公钥密码实现的密钥分配并不简单

3.6.1数字签名的产生和验证

  • 签名密钥只能由签名人持有,而验证密钥则是任何需要验证签名的人都可以持有。
  • 当Bob采用公钥密码给Alice发送消息时,他应该用Alice的公钥加密消息,Alice收到消息后用自己的私钥进行解密
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值