个人转载大牛写的(备忘)消息摘要与数字签名

信息安全基础知识(二)消息摘要与数字签名

2014年11月26日 16:55:57 翻滚吧挨踢男 阅读数:2632 标签: 密码学 信息安全 更多

个人分类: 网络安全

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a359680405/article/details/41518407

什么是消息摘要?
      消息摘要(Message Digest)又称作数字摘要(Digital Digest)。它是一个唯一对应一个消息或文本的固定长度的值,它由一个单向Hash加密函数对消息进行作用而产生。如果消息在途中改变了,则接收者通过对收到消息的新产生的摘要与原摘要比较,就可知道消息是否被改变了。因此消息摘要保证了消息的完整性。 消息摘要采用单向Hash 函数将需加密的明文"摘要"成一串128bit的密文,这一串密文亦称为数字指纹(Finger Print)。它有固定的长度,且不同的明文摘要成密文,其结果总是不同的,而同样的明文其摘要必定一致。HASH函数的抗冲突性使得如果一段明文稍有变化,哪怕只更改该段落的一个字母,通过哈希算法作用后都将产生不同的值。而HASH算法的单向性使得要找到到哈希值相同的两个不同的输入消息,在计算上是不可能的。所以数据的哈希值,即消息摘要,可以检验数据的完整性。哈希函数的这种对不同的输入能够生成不同的值的特性使得无法找到两个具有相同哈希值的输入。因此,如果两个文档经哈希转换后成为相同的值,就可以肯定它们是同一文档。所以,当希望有效地比较两个数据块时,就可以比较它们的哈希值。例如,可以通过比较邮件发送前和发送后的哈希值来验证该邮件在传递时是否修改。

      <总结:消息摘要可以理解为一种算法,可以将任意长度的信息输入后,输出一个固定长度的值,它是不可逆的。因为信息摘要与信息紧密联系,所以它保证了消息的完整性,如果信息被篡改,则信息摘要值与原来的信息摘要值M不等。发送方和接收方都有计算摘要值的函数,所以当接收方收到消息,就可以得到另一个摘要值M‘ 判断 M isEquals(M')
      消息摘要的用途:数字签名和消息人证码(MAC message authentication code) 此处 MAC = message authentication code

     数字 签名:使用私用密钥对消息摘要进行加密,得到消息数字签名。(使用 私钥+签名函数(私钥作为参数1,消息摘要作为参数2)得到数字签名)  公式为:某条消息的数字签名 =签名函数(私钥,消息摘要值)=签名加密函数(私钥值,MD5(消息值)或SHA2(消息值))

      这里提到了私用密钥即是私钥,那么就来解释一下公用密钥即公钥和私用密钥即私钥的区别:以发送方A为例,它想发送信息给B(接收方),需要以下步骤:

      1 A用自己的私用密钥即私钥作为参数,利用特定签名制作用的加密函数加密消息摘要(A用要发送的信息+消息摘要函数计算得出消息摘要),要得到数字签名 公式为:A的发送的消息数字签名X=签名函数(A私钥,消息摘要值)=签名加密函数(A私钥值,MD5(消息值)或SHA2(消息值))

      2 A用B的公用密钥即B的公钥加密传送的消息明文(未加密的消息叫消息明文)和A的消息数字签名 指的是 用B的公钥+加密函数 来加密A要发送给B消息明文和A的要发送给B的该条明文消息的数字签名  公式为:    A发送给B的密文信息=加密函数(B公钥,A发送的该消息数字签名X,要发送给B的明文消息)

      3 B用自己的私用密钥B的私钥来解密A发来的用B的公钥所加密数据包,后得到A的消息数字签名XA发送给B的消息明文信息  公式为:  A的消息数字签名X+该消息签名对应的消息明文即A发送给B的消息明文信息=非对称解密函数(B的私钥,用B的公钥所加密的密文数据包)

      4 B用消息摘要函数,计算并加工作用于消息明文,得到消息摘要M’     消息摘要码值M'=摘要函数如:MD5或SHA等(消息明文值)

      5 如果发送来的消息摘要值M和根据消息明文利用摘要函数算出来的摘要值M‘相等,说明消息是完整的,未被篡改。

有关数字签名方面的介绍,还可以浏览一下博客的另一篇文章数字签名和数字信封的区别

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值