美文网首页
区块链是什么?区块链能做什么?

区块链是什么?区块链能做什么?

作者: 大数据在说话 | 来源:发表于2018-02-01 10:25 被阅读0次

    区块链是当下最热门的一个技术,可区块链究竟是什么,有什么作用。未来的发展趋势会怎么样呢?下面,科多大数据给大家简单介绍一下区块链。

    一、区块链的本质

    区块链是什么?一句话,它是一种特殊的分布式数据库。

    首先,区块链的主要作用是储存信息。任何需要保存的信息,都可以写入区块链,也可以从里面读取,所以它是数据库。

    其次,任何人都可以架设服务器,加入区块链网络,成为一个节点。区块链的世界里面,没有中心节点,每个节点都是平等的,都保存着整个数据库。你可以向任何一个节点,写入/读取数据,因为所有节点最后都会同步,保证区块链一致。

    二、区块链的最大特点

    分布式数据库并非新发明,市场上早有此类产品。但是,区块链有一个革命性特点。

    区块链没有管理员,它是彻底无中心的。其他的数据库都有管理员,但是区块链没有。如果有人想对区块链添加审核,也实现不了,因为它的设计目标就是防止出现居于中心地位的管理当局。

    正是因为无法管理,区块链才能做到无法被控制。否则一旦大公司大集团控制了管理权,他们就会控制整个平台,其他使用者就都必须听命于他们了。

    但是,没有了管理员,人人都可以往里面写入数据,怎么才能保证数据是可信的呢?被坏人改了怎么办?请接着往下读,这就是区块链奇妙的地方。

    三、区块

    区块链由一个个区块(block)组成。区块很像数据库的记录,每次写入数据,就是创建一个区块。

    每个区块包含两个部分:

    1、区块头(Head):记录当前区块的元信息

    2、区块体(Body):实际数据

    区块头包含了当前区块的多项元信息:

    1、生成时间

    2、实际数据(即区块体)的 Hash

    3、上一个区块的 Hash

    4、...

    这里,你需要理解什么叫 Hash,这是理解区块链必需的。

    所谓 Hash 就是计算机可以对任意内容,计算出一个长度相同的特征值。区块链的 Hash 长度是256位,这就是说,不管原始内容是什么,最后都会计算出一个256位的二进制数字。而且可以保证,只要原始内容不同,对应的 Hash 一定是不同的。

    举例来说,字符串123的 Hash 是a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0(十六进制),转成二进制就是256位,而且只有123能得到这个 Hash。

    因此,就有两个重要的推论。

    推论1:每个区块的 Hash 都是不一样的,可以通过 Hash 标识区块。

    推论2:如果区块的内容变了,它的 Hash 一定会改变。

    四、Hash 的不可修改性

    区块与 Hash 是一一对应的,每个区块的 Hash 都是针对"区块头"(Head)计算的。

    Hash = SHA256(区块头)

    上面就是区块 Hash 的计算公式,Hash 由区块头唯一决定,SHA256是区块链的 Hash 算法。

    前面说过,区块头包含很多内容,其中有当前区块体的 Hash(注意是"区块体"的 Hash,而不是整个区块),还有上一个区块的 Hash。这意味着,如果当前区块的内容变了,或者上一个区块的 Hash 变了,一定会引起当前区块的 Hash 改变。

    这一点对区块链有重大意义。如果有人修改了一个区块,该区块的 Hash 就变了。为了让后面的区块还能连到它,该人必须同时修改后面所有的区块,否则被改掉的区块就脱离区块链了。由于后面要提到的原因,Hash 的计算很耗时,同时修改多个区块几乎不可能发生,除非有人掌握了全网51%以上的计算能力。

    正是通过这种联动机制,区块链保证了自身的可靠性,数据一旦写入,就无法被篡改。这就像历史一样,发生了就是发生了,从此再无法改变。

    每个区块都连着上一个区块,这也是"区块链"这个名字的由来。

    相关文章

      网友评论

          本文标题:区块链是什么?区块链能做什么?

          本文链接:https://www.haomeiwen.com/subject/jkzrzxtx.html