00 前言
本系列将以100个区块链知识为基石,循序渐进,娓娓道来,为零基础人士搭建一座区块链认知大厦。
如果有可能,未来会集结成书。
当然,愿意的话,您可以转发给身边的亲人朋友,帮助他们早日启蒙,享受区块链认知红利。
1.1 几个简单名词
开篇就聊加密,可见加密技术在区块链中的重要性。密码学是一门高深的学问,其对智商的拷问,绝对可以让人怀疑人生。
别怕,我们不聊那么深。
先熟悉几个简单名词(下文加粗部分)。
一件东西,你要保密,把它锁起来(加密),把钥匙(解密的方法)放好就行了,只要锁没有被撬(破解),就知道东西是安全的。
在网上,信息就算被加密,让人解密看到了,你还是无从所知(泄密),想想还是挺可怕。
未来,包括个人隐私在内的大量数据都会上链(存放到区块链),对这些信息加密是必不可少的。
所谓加密,就是根据一定的转换规则,把明文转换为密文,而解密,就是把密文还原为明文。
只要别人不知道转换规则,就算是看到了密文,也无法还原明文。
1.2 举两个例子
加密可以很复杂,也可以很简单。
举个简单的例子:
转换规则:按照字母表,把a-z分别用01-26代替,也就是a用01代替,b用02代替,以此类推。
那么明文:i love you
就变成了密文:09 12152205 251521
如何破解呢?对于普通人,很难。但对有黑客职业素养的人来说,估计很快就可以猜到规则。在历史上,曾有军队利用过类似的方法,但最后还是被破解出来了,打了败仗。因为经过大量数据的对比分析,发现05出现的次数最多,17出现的最少,而对大量文章分析,e出现的概率最高,q出现的最低,那么很显然,05就是e,17就是q。以此类推,也找出了其他的对应关系,顺利破解。
当然,我们可以把对照关系偏移1位,比如a代表02,b代表03,或者把转换后的两位数字再前后位置互换等,尽管增加了些难度,但还是没有质的改变。
从上面的例子,我们知道了加密解密中最关键的是转换规则,这个规则越复杂越好,不能让别人破解出来。
类似这样的例子,我们再举出一个。
记得看过一部谍战片,同志们往来通讯是通过密文传递的。转换规则就是利用两本一模一样的书,发送方把信件中每个字,逐一用该字在书中出现的页、行、列位置来代替,接收方只要拿出书来,按照页、行、列找出这些字就行了。从而不怕被敌方监听,起到了加密的作用。
聪明的你,从例子中可以看出,密文可以泄露,但转换规则(加密算法)绝对不能泄露。
1.3 如何保证加密算法不泄露
接下来,我们思考下,怎么保证加密算法不泄露呢?
自己加密自己解密,不存在这个问题。
但上述例子中的两位同志身处两地,所有的通讯都被监听,用书页来转换信件的这个加密算法,如何安全地告知对方呢?
这个困境,在网上尤为如此。
【爱丽丝】 hi~鲍勃,刚发了一条加密信息给你。
【 鲍 勃 】 收到了,我要如何解密?
【爱丽丝】解密与加密方法是一样的,就是……
【窃听者】 加密与解密是同一把钥匙,知道了如何加密,也就知道如何解密,这就是对称加密,很容易破解啦。
1.4 下节预告
正确的问题不是“如何保证加密算法不泄露”,而是“如何保证即使加密算法被泄露,对方也无法解密”。
下一节课,我们将讲述“非对称加密”,可以完美解决这个问题。
非常值得期待——学完后再来看这篇,你可能会发现本文的一些说法需要颠覆。
我是rruntime,立志写本书,一本可以献给家人和朋友的《区块链启蒙》,敬请支持!
网友评论