首先我们就谈一下什么是区块链。我下了一个定义就是以去中心化和去信任化的方式,来集体维护一个可靠数据库的技术方案。这个可能是比较严格的技术上的定义。那通俗来说呢,其实区块链可以理解为一种全民记账的一种技术,或者说可以理解为是一种分布式记账技术。
那怎么说呢,其实就是说——大家可以这么理解,其实我们所知道的任何的网站或者系统背后都是有一个数据库的。我们可以把数据库想象成是一个账本。那么一般的中心化结构来说,如果是像微信后面的数据库那么就是由腾讯的团队来维护,淘宝的数据那么就是由阿里的团队来维护。但是如果是区块链的系统就完全不是这个样子。
在区块链的系统里面每一个参与的节点都有机会去竞争记账,就是改变数据库。系统会在一段的时间内选出记账最快最好的一个人,让他在这段时间里记账。在记完账以后就会把这一页的账本发给大家。在系统里面我们把这一页教成一个block。在这个block里面就记录了整个账本的数据在这段时间里的改变。那么然后把结果发给这个系统里的每一个节点。这样的话整个系统的每个节点都有完全一样的账本。
那么这个技术我们就称为区块链技术或者分布式账本技术。那么这么做有什么好处呢?通常大家第一反应,这样会不会浪费带宽,浪费存储。的确是这样,但是这样的好处就是它能构建出极大的安全性。首先,每一个节点的权利是一样的,某些节点只负责记账,其余不负责记账,任何节点被摧毁都不会影响整个系统的安全。每个节点的权利都是对等的。在这种环境下,即使某些节点被摧毁也不会影响整个系统运作。