zoukankan      html  css  js  c++  java
  • 区块链

    区块链:是一种特殊的分布式数据库

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

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

    区块链的最大特点:  

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

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

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

    每个区块包含两个部分:

    * 区块头:记录当前区块的元信息
    * 区块体:实际数据

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

    * 生成时间
    * 实际数据(即去块体)的Hash
    * 上一个区块的Hash

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

    Hash = SHA256(区块头)

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

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

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

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

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

    采矿:

    由于必须保证节点之间的同步,所以新区块的添加速度不能太快。事项一下,你刚刚同步了一个区块,准备基于它生成下一个区块,但这时别的节点又有新去开生成,你不得不放弃做了一半的计算,再次去同步。因为每个区块的后面,只能跟着一个区块,你永远只能在最新区块的后面,生成下一个区块。所以,你别无选择,一听到信号,就必须立刻同步。

    区块链的分叉:

    即使区块链是可靠的,现在还有一个问题没有解决:如果两个人同时向区块链写入数据,也就是说,同时有两个区块加入,因为他们都连着前一个区块,就形成了分叉。如何解决呢?

    现在的规则是,新节点总是采用最长的那条区块链。如果区块链有分叉,将看哪个分叉在分叉点后面,先达到6个新区块(称为‘六次确认’)。按照10分钟一个区块计算,一小时就可以确认。


    由于新区块的生成速度由计算能力决定,所以这条规则就是说,拥有大多数计算能力的那条分支,就是正宗的比特链。

    总结:

    区块链作为无人管理的分布式数据库,从2009年开始已经运行了8年了,没有出现大的问题,这说明它是可行的。

    但是,为了保证数据的可靠性,区块链也有自己的e代驾。意识效率,数据写入区块链,最少要等待十分钟,所有节点都同步数据,则需要更多的时间;二是能耗,区块的生成需要矿工进行无数无意义的计算,这是非常耗费能源的。

    因此,区块链的使用场景,其实非常有限

    1. 不存在所有成员都信任的管理当局

    2. 写入的数据不要求实时使用

    3. 挖矿的收益能够弥补本身的成本

    目前,区块链最大的应用场景(可能也是唯一应用),就是以比特币为代表的加密货币。

  • 相关阅读:
    CTFHUB-技能树-Web-文件上传
    CTFHUB-技能树-Web-XSS-反射型
    一个算法习题
    python2和python3如何共存并都可用
    beacon帧字段结构最全总结(一)——beacon基本结构
    WiFi基础知识整理
    无线 WIFI 的13个信道频率范围
    Wifi模块的工作原理
    WIFI无线协议802.11a/b/g/n/ac的演变以及区别
    HTTP网络通讯协议详解
  • 原文地址:https://www.cnblogs.com/llc-url/p/8338337.html
Copyright © 2011-2022 走看看