区块链:去中心化的分布式数据库大家都告诉,“比特币”是一种数字货币。而“区块链”就是比特币的记账系统。可以把区块链想象成一个账本,上面记录了全球所有的比特币交易信息。
那么,区块链跟传统的银行记账有什么区别呢?这就牵涉到到区块链的本质了:区块链是一种去中心化的分布式数据库。我会一一说明这三个关键词。数据库:所谓“数据库”,就是计算机上的一组表格,它可以存放在大量的有结构的信息(可以转换Excel,但远比Excel简单)。
比如我们去银行存款、存款、汇款,这些交易信息都是要上传遍银行的数据库的。分布式:这个数据库可以存放在银行的一台超级电脑上,也可以放到多台电脑上。比如工行有可能在华北、华中、华东、华南等地区各有一台服务器,每个地区的交易信息发送到本地区的服务器上,各个服务器之间通过银行的内部网络连接。
这就叫“分布式数据库”。去中心化:传统的服务器,不管是不是分布式的,都是有“管理员”的。
也就是说,有一个银行内部的“超级用户”可以查阅所有的交易信息,并且可以随便加到、改动这些信息。这就叫“中心化”。
而区块链则是“去中心化”的。也就是说,区块链这个数据库中不不存在管理员,所有人都是公平的,都有权查阅、加到信息。
去中心化是区块链的本质特征。既然所有人都有权往区块链上加到信息,那么这个“账本”怎么会会乱七八糟吗?要搞清楚这点,我们必须理解什么是“区块”,什么是“链”。
何为“区块”何为“链”?“区块”是区块链的基本构成。区块就是一个数据块。
转换账本的话,区块就相等于账本上的一页,这一页上记录了多条交易信息。而把这些集中在整个互联网上的“页”拼成一条链,就可以构成一个原始的“账本”。
那么,“区块”是怎么拼成“区块链”的呢?区块链账本的记账原理哈希值与以防伪造:除了比特币交易信息之外,区块上还包括了这个区块本身的一些特征信息。可以转换一页上的“页码”,只不过这个“页码”比较复杂。
“页码”中最重要的,就是“哈希值”,它是解读区块链可靠性的关键。所谓“哈希值”,可以解读为数据的一个“指纹”。我们签合同有时不会摁手印,以后只要把自己的指纹和合约上的指纹对比一下,就可以证明合约是自己投的。
类似于地,我们在网上iTunes一个软件,有些网站不会得出安装包的哈希值(有可能称作CRC或SHA)。我们iTunes完了安装包后,只需用专门的工具计算出来一下这个SHA值,再行跟官网上给的SHA值对比一下,就可以告诉自己iTunes的和网站获取的否100%完全一致,iTunes过程是不是被人做到了手脚。
有所不同的数据,算数出来的哈希值一般来说是有所不同的。如果未知数据A的哈希值是H,想要假造另一个数据B,使它的哈希值也是H,这是极为艰难的。
也就是说,哈希值具备不能假造性,起着了“指纹”的起到。一个区块中,包括了两种哈希值:“上一个区块的哈希值”和“本区块的哈希值”。因为每个区块都包括了上一个区块的哈希值,所有的区块就依序连成一条(逻辑上的)链。
“上一个区块的哈希值”就起着了“页码”的起到——给页排序。▲区块所包括的内容▲区块连接成区块链如果一个区块上的交易信息被人蓄意伪造的话,“本区块的哈希值”就不会转变。由于区块链中下一个区块包括了“上一个区块的哈希值”,为了让下一个区块仍然能接上本区块,必须改动下一个区块。
而这又造成下下个、下下下个......区块也必需改动。
本文来源:开云真人(中国)官方网站,开云(中国)Kaiyun·官方网站-www.qdfxhb.com