比特币技术入门1(去中心化和数字签名)

比特币技术入门1(去中心化和数字签名),第1张

区块链本身作为一个分布式数据库,从技术角度并不容易入门,涉及密码学、分布式事务、副本一致性、并发控制策略等很多大的方向,每个方向都需要仔细研究,不要求深入到代码层面,至少要在原理上搞清楚逻辑。本系列文章希望从技术角度分析区块链的应用比特币,从而了解区块链的系统架构。今天介绍去中心化和非对称加密。

比特币的背景

2008年,中本聪提出了比特币的白皮书《Bitcoin: A Peer-to-Peer Electronic Cash System》,2009年比特币系统上线运行,至今稳定运行了9年时间,从系统稳定性角度看,是一个非常成功的分布式系统了,也值得去深入了解其原理。今天根据这份白皮书来了解比特币(分布式账本)的起源。

传统货币

纸质货币由银行发行,银行提供验钞机,当有人造伪钞时,就无法通过验钞机的验证,这种机制保证只有银行可以制造货币。在这种情况下,银行就是一个可信的第三方,因此我们可以放心使用纸质货币,也可以让银行帮自己进行转账。通过这样,实现部分的P2P(两个人直接用纸币交易,不用去银行转账),但还是依赖银行发行货币与统一的验证方式。

电子货币的思想和纸质货币类似。转账 *** 作也是通过金融机构统一处理,这个可靠的金融机构会帮你检查余额。

在上述例子中,是有第三方机构来保证货币的可靠性以及验证是否是真实货币。比特币的目的就是要实现去中心化,第一个问题是,为什么去中心化(第三方)?基于第三方的系统的本质是信任第三方,只要有第三方存在,交易就可逆,数据容易被篡改。而区块链的一大目的就是数据写入后不可修改。

分布式架构

在分布式数据库中通常有两种架构,主从架构 和 P2P架构。

主从架构中有一个主节点,典型的就是 Hadoop 中的 Master 节点,这个 Master 节点控制着整个系统的运行,包括元数据的管理和数据的分区等。这种架构也叫中心化。

而 P2P架构,也就是去中心化,系统中没有 Master 节点,所有节点都是平等的,如 Cassandra。这个时候,任何一个节点都可以处理读写请求,当一个节点接收到请求后,它会成为这个请求的协调者节点,来协调其他节点共同处理这个请求。可以看到,去中心化系统中也并不是完全没有中心节点,而是人人都可以是中心。

而比特币为了避免中心架构中主节点的不可靠,选择了去中心化架构。

非对称加密、数字签名

密码学中的非对称加密技术让去中心化后的可信变成了可能。

主要功能:B 能确认接收到的 A 的信息是不是 A 发出的原始信息,没有被篡改。

基本原理:非对称加密中包括私钥和公钥两个概念,两个秘钥不同,可以分别对信息进行加密和解密。这样就能达到一个效果:两个人在不安全的网络中实现安全的通讯。A 用 B 的公钥加密信息,私钥只由自己保存,只有 B 能用自己的私钥解密信息。反过来也是这样。

数字签名是非对称加密的一个应用:私钥由个人保管。这个人可以用私钥将信息加密,而其他人可以利用公钥验证信息的有效性。示例图如下(来自 https://en.wikipedia.org/wiki/Digital_signature)

私钥和公钥这种方式有个特点,那就是需要一个人来保管私钥,只有他能发布有效的物品。利用这种思想来理解一下中心化的纸质货币和电子货币。

可信

如何利用非对称加密技术保证可信?一个人用他的私钥对一笔转账签名,其他人可以用他的公钥确认这笔交易。比如 A 签名:A 转给 B 5 元,所有人都可以用 A 的公钥验证这笔交易。这样,每个人都充当了第三方监管的作用。

电子签名技术中的等式:

消息+私钥=签名

签名+公钥=消息

这里有个问题,那我岂不是想签多少就签多少?因此,为了解决这个问题,还需要标记你每笔钱的来源。这样就做到了有源头,可追查,并且每笔交易可验证。

总结

中心化的货币管理是很简单的,因为有一个可信的第三方。去中心化要解决的第一个问题就是如何保证可信。而非对称加密技术实现了可信,让分布式账本成为了可能。

致谢:DPer。研究信息安全,有兴趣可以关注公众号《差分隐私》:

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/730226.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-27
下一篇 2022-04-27

发表评论

登录后才能评论

评论列表(0条)

保存