03.非对称加密—未曾相见,为何能深信不疑?

Posted 币圈小吴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了03.非对称加密—未曾相见,为何能深信不疑?相关的知识,希望对你有一定的参考价值。

以下内容均为转载,内容来自公号“汤强”


内容浅显易懂,甚至我建议你每个字每句话都认真阅读,汤兄授权我转载,于是,我略微修改,仅限于标题和排版。


你想发一条短信给你朋友彤彤:今晚十点汉庭见。这是属于你们之间的秘密,绝不能被第三人知道。


你熟门熟路,这得用非对称加密:你用彤彤的公钥加密短信,让它变成别人不认识的密文。你很放心,因为只有彤彤的私钥才能解密。


但问题来了:彤彤凭什么相信这是你发的?万一是我冒充你发的呢?那她今晚跑去汉庭见到的人就是我,因为她的公钥是公开的,任何人都可以拿来加密。


让她确信短信是你发的,你只要做一步:数字签名。


1、什么是数字签名?


数字签名指产生只有信息发送者才能产生的字符串,如:d5S6ch5nPz4L29ya8vX。


你可以把数字签名理解为白纸黑字的签名,接收者用它识别发送者身份。但千万别误以为数字签名是把你的亲笔签名拍成数码照片,发给接受者用来验证,那是电子签名。


电子签名是图片,而数字签名是字符串。


那数字签名是怎么做出来的?


2、数字签名流程


很简单,分两步:

1、哈希密文,得到密文哈希值,如:14d403e5

2、用你的私钥加密哈希值,得到数字签名,如d5S6ch5nPz4L29ya8vX


你把密文和数字签名一起发给彤彤,收到信息后,她要做两件事:


1、读取信息原文

用她的私钥解密密文,得到的明文就是原文:今晚十点汉庭见;


2、确认发送者身份

彤彤要确认这信息是不是你发的。她用你的公钥解密数字签名,如果解密结果为14d403e5,那就代表发信息的人是你,否则就是有人在冒充你;如果你问14d403e5是哪里来的,答案是这是彤彤把密文哈希一次的结果。


你可能觉得奇怪,解密不应该是用收信人私钥的么?为什么发件人公钥也可以解密?答案是:也可以。


这就是非对称加密的另一个神奇之处:公钥和私钥互为加解密工具。不仅可以“公钥加密、私钥解密”,而且可以“私钥加密、公钥解密”,但唯独不能用原来加密的钥匙解密。


但为什么我们不用私钥加密原文?因为如果用私钥加密,那就只能使用公钥解密,而公钥都是公开的,这样就使加密失去意义。


而数字签名用私钥加密的是密文的哈希值,解密后不为获知信息,而为校验身份,所以数字签名可以用私钥加密。


要判定信息是否为发送者本人发送,只需满足一个条件:

用发送方公钥解密数字签名的结果 = 密文哈希值,即:

03.非对称加密—未曾相见,为何能深信不疑?

f:解密函数

DigitalSign:数字签名:5S6ch5nPz4L29ya8vX

PublicKey:发送者(你)的公钥

Hash:哈希函数

Hash ( CipherText ):密文哈希值


如果你读到这里有点晕,请回头逐字逐句阅读一遍,耐心是最好的补药。相信我,最多两遍你就能彻底明白数字签名的过程。



3、总结


数字签名是一种能被轻松识别的认证工具,因为验证它的过程本质上只是用计算机解一道数学题而已。所以,眨眼间就可以完成认证过程,不用像人去比对字迹或印章那样耗时费力。


数字签名保证信息是发送者本人发的:其他人无法伪造,同时发送者无法抵赖。因为发送者私钥只有发送者本人知晓,除非泄露。


所以你看,私钥几乎等于你在比特世界的肉身。


无法抵赖、不可伪造和轻松识别三大特性,使得数字签名成为理想的认证工具:商业机密、网上银行和加密货币等都离不开数字签名。它只是开始理解时有点绕,彻悟后你会体会到它的精妙:


明明没有和TA相见,但在比特世界里,数字签名却可以让你见字如面。



 

4、温故


从这节课开始已经让你费解了,但是别灰心。等你明晰概念之后就一定能秒懂加密原理,相信我,这是通往数字世界财富自由之路的金钥匙。


所以,复习一下基础概念吧:


原文:发送者原本想要告诉接受者的意思,如:你想告诉彤彤:“今晚十点汉庭见”就是原文。


密文:加密原文后的字符串,一般用CipherText表示。

你把原文“今晚十点汉庭见”用特定算法加密后的样子可能是这样子:2c320f5ee160144170bDTLd54,总之和原文相比面目全非。


明文:解密后的结果。

如果解密正确,明文=原文;

如果解密错误,明文就是乱码,没有意义。


对称加密:加解密互为逆操作的加密方式,就是对称加密。

比如:银行支票上的大写金额(壹贰叁肆……)也是一种对称加密方式,因为存在与阿拉伯数字(1234……)一一对应的关系。解密对汉语使用者毫无难度,但外国人还是一眼难以识别。可如果老外去查查字典,还是比较容易弄明白的支票大写金额含义的。对称加密是一种相对容易被破解的加密方式。


非对称加密:使用不同的钥匙加密或解密。私钥保密,私钥生成多个公钥,公钥公开。私钥加的密,只能用公钥解;公钥加的密,只能用私钥解。


哈希:将文件映射为较短的固定长度字符串(哈希值)。


关于和,有两篇文章专门讲述,点击文字链接直达。


恭喜你,又在加密世界里精进了一步。

友情提示

 

本文只用于传达信息之用途,并不构成买卖的相关意见。投资有风险,请您在自担风险的前提下,自由交易,并尊重您所在国家的法律。

以上是关于03.非对称加密—未曾相见,为何能深信不疑?的主要内容,如果未能解决你的问题,请参考以下文章

非对称加密算法的主要算法

k8s系列-03-认证的密码学原理之对称加密和非对称加密

每周精选能不能给我解释一下非对称加密?

非对称加密的应用

图文彻底搞懂非对称加密(公钥密钥)

非对称加密技术