区块链加密算法简述

1 简述

  加密简单而言就是通过一种算法将明文信息转换成密文信息,信息的的接收方能够通过密钥对密文信息进行解密获得明文信息的过程。根据加解密的密钥是否相同,算法可以分为对称加密、非对称加密和对称加密和非对称加密的结合。

 

2 对称加密

  对称加密顾名思义就是加密和解密的密钥是相同的。如下图所示:


区块链加密算法简述_第1张图片

3 非对称加密

3.1 签名和加密

   签名是用私钥来完成的,用公钥来验签。加密是用公钥来加密,私钥来解密的。为什么会需要签名呢?

   我们先假设A给B发送信息,A拥有自己的私钥(PRI_A)和公钥(PUB_A),B拥有自己的私钥(PRI_B)和公钥(PUB_B)。 B接收到消息,要怎样才能知道消息是谁发出的。或者换句话说,A发出一则消息,要怎样让接收方知道是A发出的。这时就需要A用PRI_A对信息进行签名,相当于生成了唯一的身份证。

区块链加密算法简述_第2张图片

可以这样描述以上图示过程,A向B发送信息的整个签名和加密的过程:1、A先用自己的私钥(PRI_A)对信息(一般是信息的摘要)进行签名;2、A接着使用B的公钥(PUB_B)对信息内容和签名信息进行加密。

这样当B接收到A的信息后,获取信息内容的过程:1、用自己的私钥(PRI_B)解密A用B的公钥(PUB_B)加密的内容;2、得到解密后的明文后用A的公钥(PUB_A)解签A用A自己的私钥(PRI_A)的签名。

注意,公钥是公开出去的,但是私钥只能是自己拥有。以上图示过程和签名加密机制保证了端到端的唯一确认。A的签名只有A的公钥才能解签,这样B就能确定是A发出的信息;A的加密只有B的私钥才能解密,因为是用B的公钥加密的,这样保证了信息只能被B读取。

3.2 非对称加密的应用

    应用最广泛的是银行,银行把每个人的私钥存储在每个人的U盾里,这就相当于,只有解密方自己拥有自己的私钥,银行用你设置的公钥对你的账户进行加密,要解密必须用到自己U盾里的私钥。这就是非对称加密的广泛使用原理。

4 对称加密与非对称加密的结合

这种结合方式分为两个阶段,阶段一利用非对称加密对密钥进行加密传递给接收方,阶段二利用对称加密对明文信息进行加解密。如下图所示:

区块链加密算法简述_第3张图片

你可能感兴趣的:(区块链技术应用)