谢晗剑:BT 算是。但和比特币的区别是,BT 没有共同一致的状态,或者说共同的数据库。 BT 好像是一个群岛,分布式网络中有很多机器,每个人维护自己的机器。每天机器上都有一部分数据,至于群岛上所有数据加起来总和是什么东西,这没有人知道。系统并不关心这个总和,只关心系统里的某些集合。比如三张 CD 在这个服务器上,另外 5 张在另外一个服务器上。但这没有形成共同的东西。 对于比特币或区块链而言,最重要的是形成了 共同 的东西。区块链的系统中可能有一千台、一万台服务器,所有服务器都知道我们维护了一个共同的数据库,数据库里有 1、2、3、4。我知道其他人也知道这件事情,这是很重要的区别。 晚风说:那时候你有想过做其中的一个节点,做其中的一份子吗? 谢晗剑:有。其实当你去尝试下载比特币的客户端,把它跑起来的时候就是节点了。当你还没有意识到你在做节点的时候,你就下载下来了。 当时最让我震撼的,或者说最让我惊奇的是, 节点不需要一直运行,而我拥有的比特币还会一直在那。 你的节点也不用运行,别人也可以给你转账。 比特币和以前见过的分布式系统特别不一样。如果接触过以前的软件,是会要求本地客户端在运行才能操作。但比特币的客户端不要求正在运行,别人也能给你转账。你的钱就存在某个地方,你也不知道在哪,它就很神奇的存在在那个地方,还特别安全。 现在对于区块链世界的人来说是司空见惯的事情。但倒退十年,这会是很不一样的系统。这种感觉是很惊奇的。 晚风说:不需要每个人一直在运行,但永远有人在维护,这是通过哈希算法实现的吗? 谢晗剑:比哈希算法更复杂一些。我们就以比特币来距离, 首先第一个特点是全量复制的。 网络中数据的集合要每个节点都有的才被成为全量复制。对于共享知识的集合,每个节点都有 100% 的数据。这是巨大的区别,这意味着比特币的网络冗余度很高。如果系统中有一千个节点,意味着全部数据被复制了 1000 份,如果有一万个节点就复制了 10000 份。比特币的冗余度会随着节点的增加而越来越高。 这也就是为什么一个节点即使关机,即使把数据删掉,数据也不会消失。因为网络中还有 9999、99999 的节点还保留有全部数据,它们会备份数据。 第二个特点是, 比特币的全量复制网络会有共识机制来维持。 所谓共识可以简单理解为,共识系统中有一套算法可以保证所有节点看到的副本是一模一样的,每个字节都一样,100% 一样,无论数据库发生怎样的变化。 (责任编辑:admin) |