0%

我们为啥又聊 Merkle Tree 呢? 地球上大部分人应该连它的名字都没有听过。Merkle Tree 是由计算机科学家 Ralph Merkle 在很多年前提出的,并以他本人的名字来命名,中文翻译过来叫默克尔树,也叫哈希树。Merkle Tree 号称区块链面试必考题,因为的确太常用了。说到根本上 Merkle Tree 就是用来做完整性校验的,所谓的完整性校验,就是检查一下数据有没有损坏或者被恶意篡改。Merkle Tree 的最大的应用场合就是在点对点网络上,Git 版本控制系统,IPFS 协议以及比特币以太坊等等项目,都用到了它。

阅读全文 »

上节我们介绍完 RSA 算法的基本原理了,了解了 RSA 算法的加密锁就是先幂后模的运算。这个锁的特点是正向运算很容易,也就是加密过程很容易,但是解密过程很难,也就是要直接反向运算是不可能的。而要想让反向运算成为可能,就要在先幂后模运算的各项参数上做文章,让各项参数之间通过整数分解问题建立关系,这样只要我们把握住这种关系,那么反向运算就变得容易了。所以本节就来深入到整数分解问题,看看如何来构建先幂后模中的各项参数之间的关系,进而引申出如何生成公钥和私钥。

阅读全文 »

咱们每天说非对称加密,说公钥私钥,但是公钥和私钥到底是怎么产生的,加密和解密过程到底是怎么样的,不看看具体算法实现还真是感觉心里没底。RSA 算法是非对称加密算法鼻祖,至今仍然是最为广泛使用的算法之一,所以我们就来拆解一下 RSA 算法本身。

阅读全文 »

本节聊的话题是数字证书。先来个预警,没有婚姻的社会里面,没有人能理解结婚证是干什么的,同理,不理解公开密钥加密技术的加密通信和数字签名这两个概念,也不会理解数字证书什么用。这些话题之前,前面小节中咱们都聊过了,不知道你有没有记住呢?好,那么什么是数字证书,发证机构的作用是什么,加密通信和数字签名过程中证书发挥什么作用呢?下面一一揭晓。

阅读全文 »

公开密钥加密技术有两大应用,之前已经聊了一个,就是加密通信,本节来聊另外一个:数字签名。数字签名的基本作用跟现实世界的纸笔形式的签名有什么相同点和不同点,数字签名的基本原理和流程又是什么呢?

阅读全文 »