加密和数字签名(通俗理解)

数字签名:

先想象一个场景,张三要和女朋友互写情书,这个看似简单的案子里,隐藏着几个重要而且必须被解决的问题

比如在送信的过程中,信被人偷看了怎么办,张三如何知道,信是女朋友回的,而不是隔壁如花回的,他又怎么确定回信的内容是不是被人改过?

现实世界中,写信的双方可以借助信里的字迹和签名来确认对方的身份

那在0和1的计算机世界里,把能鉴定女朋友身份的数字签名搞清楚

故事开始,女朋友去五金店做了一对钥匙,一把私钥,一把公钥,从名字上就可以知道,私钥是女朋友自己保管的,公钥是给别人用的,这里的别人可能是张三,也可能是其他的男朋友们;于是女朋友把公钥交给张三,张三以后再要给女朋友写信,就用这把公钥加密信的内容,得到一堆乱码,再发给女朋友

加密就是一种算法,更简单的来说,加密就是一台搅拌机,把公钥和信同时扔到搅拌机里,最后会得到一堆乱七八糟的不明物质,也就是上面说的乱码,只要扔到搅拌机里的材料不变,得到的乱码就是相同的 ,这样由于张三送出去的信变成了乱码,即使中途被老王拆开看,他也看不懂说了什么,女朋友收到信之后,需要把私钥和乱码再扔到《解密算法》这台搅拌机里,还原信的内容,这就是神奇之处了,在此数学提供了强大的理论和实践基础,能保证对于公钥加密的内容(乱码),只有和它配对的私钥才能还原内容,反过来一样,如果用私钥加密的内容,也只有对应的公钥才能还原内容,所以能看出来,公钥和私钥是成对的,属于一个萝卜一个坑,拿到钥匙的双方可以互解对方加密的内容,于是女朋友借助私钥和解密搅拌机还原了信的内容,之后女朋友写好回信的正文,她决定给这封信附上数字签名,为的是让张三验明是自己

为了得到数字签名,首先女朋友把信的正文放到一种叫hash算法的搅拌机里,得到一串叫摘要(digest)的乱码,同样是算法搅拌机,这次的hash算法不需要私钥或者公钥,直接根据信的正文生成了长度很短的乱码,其实很好理解,摘要之于信的正文就好比指纹之于人一样,只要信的正文不变,摘要就不变,之后女朋友把摘要和私钥扔到加密算法的搅拌机里,就得到了签名,因为本身摘要很短,所以加密后得到的签名也不会很长

所以我们来总结一下,签名其实就是一串短的乱码,女朋友把这个签名,附到信的最后,跟信一起发了出去,张三收到信之后,首先拿到回信的数字签名,把它和公钥一起扔到解密搅拌机里,就能得到摘要,如果这时候搅拌机的还原的过程出错了,那就证明数字签名有问题,因为不符合上面讲到的,公钥私钥一个萝卜一个坑的逻辑,那就证明了这个信是如花伪造的,这里再多说一个问题,从刚才生成的摘要没办法直接还原信的内容,就好比没法只知道人的指纹就把人克隆出来一样,从长度我们也能看出来,摘要更像是回信正文被有损压缩完之后的结果,既然是有损压缩,就会有信息丢失,所以一定没办法完美还原,也正是因为有损压缩,摘要的长度才能更短,签名才能更短,于是张三把回信的正文,扔到hash算法的搅拌机里,把新生成的摘要和刚才通过私钥和解密算法生成的摘要做对比,如果相同,就证明回信没有被其他男朋友篡改过

公钥私钥的加密方式就是非对称加密

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值