中本聪是一个充满理想主义的密码朋克,他看到了中心化系统的一些缺点,于是致力于开发去中心化系统。在去中心化系统中,并不存在拥有特权的中心节点,每个网络节点拥有的信息和权力都是一样的,称其为对等节点。对等节点组成的网络称为对等网络,也叫P2P网络。对等网络上运行的信息系统叫作分布式系统,比特币系统所依托的区块链就是一个分布式的数据库系统。而比特币本身从技术上来说,可以看成是运行在这个区块链上的一个资产交易记录链。
在中心化的银行系统中,银行的中心节点服务器享有特权,只有它才能够记账,每一次货币交易都作为一条记录记在银行系统的数据库中。而在比特币系统中,不存在一个记账中心,所有的计算机节点都是平等的,它们都参与记账,每当一个节点发生交易时,它会把交易数据向全网广播发送,全网的节点都会把这次交易记录下来。每一个节点都存储所有记账的数据库,而且所有节点记录的数据库账本都是一模一样的。这样带来了以下好处:
(1)你再也不用担心你的资产会因中心节点损坏而消失,因为账本数据在整个区块链网络的计算机中都有留存。大家都可以证明你拥有这笔资产。
(2)因为大家拥有的信息都一样,不存在信息不对称,也就不会产生某个节点因为拥有特权而侵犯大家权益的问题。
(3)区块链通过加密技术保障数据不易篡改、不易伪造;通过账本的分布式存储技术保障交易公开、透明、可追溯;通过智能合约技术保障交易的自动化、智能化执行。因此,区块链解决了网络上人与人之间的信任问题。当你和一个陌生人交易时,你不再需要一个中心化的中介系统,而是可以直接在区块链上进行点对点交易,这样就节省了大量的中间成本和信用成本。
去中心化的分布式系统虽然有很多好处,但设计并运行这样的系统是很难的,因为和中心化系统相比,它运行在一个不可信任的环境中,要保持系统的一致性、完整性、安全性是非常困难的。往往中心化系统很容易做到的事,在去中心化系统中会非常困难。
那么,在去中心化的比特币系统中具体有哪些需要解决的问题呢?总结起来,主要有以下几点。
(1)去中心化系统中成千上万个节点都拥有记账和存储账本数据的权力,节点的加入和退出都是完全自由的,没有人来管控和认证,这样难免就会出现心怀不轨的破坏分子。那么怎样防止有人恶意篡改数据或者伪造账本呢?
(2)比特币系统的节点分布在全球各地,在网络中同时会产生成千上万个交易数据需要记账,各地的网络有快有慢,有时部分网络还有可能断线,要全网所有的节点保持所记录的交易账目都是一模一样的,即保持全网的一致性,也是非常困难的。
(3)双重支付防不胜防。通俗地讲,双重支付是指把一份资产使用两次,也称其为“双花”。例如地球村里有3位村民在进行商品交换,他们是二黑、翠花和小明。当前全网的区块链账本上都记录着二黑有1个比特币,他把这个币发送给了翠花,并向全网进行广播。于是,大家记下这笔交易,把二黑的比特币从他的账目记录中除去,在翠花的账目记录中增加1个比特币。现在二黑没有比特币了,但是由于网络传输不同步,二黑广播这次交易后小明并没有及时收到信息,小明的账本上仍然记录着二黑有1个比特币。于是,二黑又向小明发送这个比特币,用来交换某些物品。二黑把自己的1个比特币同时交换给2个人的行为就是双花攻击,这构成了交易欺诈。
在中本聪出现之前,密码朋克中的这么多IT精英,也是屡试屡败。但是,中本聪总结了前人的经验,并设计了一个非常巧妙的运行机制,成功解决了这些问题,使得比特币系统在无中心节点运维管理的情况下,稳定运行。