区块链中的密码学(下)

之前我们也讲过,区块链中主要应用的密码学算法有两个部分,一个是哈希算法,另一个是非对称加密。而今天,我们就来讲一下,区块链密码学中的“非对称加密”是什么?

简单来说,非对称加密就是用来对内容进行加密的一种特殊方法。不过在具体解释非对称加密之前,得先讲一下密码学的其他知识点:

当前密码学中的加密解密方式主要能分成两类,分别是对称加密和非对称加密。这两个加密体系的构成都是一样的,都包括:加解密算法、加密密钥、解密密钥。

比如我们日常生活中,总用到的钥匙跟锁,其中我们开门用的钥匙,在密码学中就是秘钥,而关门的锁,就是加密解密算法。

区块链中的密码学(下)

在加解密系统中,加解密算法自身是固定不变的,并且一般是公开可见的,密钥则是较为私密的东西,在加密过程中,我们是通过加密算法和加密密钥,对明文(要加密的内容)进行加密,进而获得密文(加密后的内容)。解密过程则相反,是通过解密算法和解密密钥,对密文进行解密,获得明文。

其中像锁和钥匙这种,单独只有一个秘钥,既可以用于加密,又可以用于解密的方式,就叫做对称加密。

区块链中的密码学(下)

反之,加密与解密过程用的不是同一个秘钥,这种加密方式就是非对称加密。非对称加密比较特殊,会产生2个秘钥,最核心的被称之为私钥,它由我们自己保留。另一个会被公开出来,叫做公钥。

它们有个特点,私钥加密的内容,通过公钥可以解密读取出来,反之通过公钥加密的内容,也可以由私钥解密读取出来,就好像双胞胎的心灵感应一样。

区块链中的密码学(下)

非对称加密在区块链中的主要用途,并不是为了保护内容的隐私性,而是为了防止身份被冒充。

比如我们在区块链网络上进行一笔交易时,我没有办法确定交易的是不是你本人,这个时候,就可以让你把数字签名发过来(数字签名就是用私钥加密的一段内容),然后我通过已经公开的公钥进行破解。

区块链中的密码学(下)

因为私钥只由你本人保留,如果我能用与之对应的公钥成功破解,就说明是你本人在进行操作,如果不能破解,则说明是别人盗用了你的身份。以此解决了“我是我,这是我在交易”的问题。

总的来说,密码学是区块链网络中最基础的存在,它不仅保护了整个网络的安全,更解决了很多交易中的证明问题。或许随着量子计算等新技术的出现,有人会质疑它的安全,但是要知道,密码学也在随时代而进步,要是真的到了量子计算商用的那天,区块链密码学也一定会成为更加安全的存在。