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

    区块链最大的作用是解决了闻名已久的拜占庭将军问题。什么是拜占庭将军问题呢?话说在东罗马帝国时期,拜占庭城邦非常富庶,它的周围有十个城邦,都希望攻占拜占庭。但拜占庭的防御非常强大,只有十个邻居的一半以上同时进攻,才能攻破它。这十个城邦之间也互相觊觎对方的财富。如果少于一半的城邦攻打拜占庭,这次攻打就会失败,且被拜占庭击败后,失败的城邦就会被其他城邦吞并。十个城邦之间约定攻击时间的唯一途径是通过信使来传递信息,但信使也有可能叛变传递虚假信息。因此,这个城邦网络中的各方互不信任,但他们要想攻占拜占庭,又必须达成共识,同时发动进攻。数学家设计出了一种方案来解决这个困境:城邦的将军们在接到其他将军的信息后,盖上自己的印章再转给除向自己发信息之外的其他城邦,这样的信息连环周转可以让将军们在不找出叛徒(找叛徒成本最高且效率最低)的情况下达成共识。

    区块链技术的内涵可概括为:在缺少可信任的中央节点和可信任的通道的情况下,分布在网络中的各个节点应如何达成共识。

    感觉区块链技术很高深,是吧?确实是这样的,因为里面涉及非常复杂的技术问题,比如非对称密钥,时间戳,P2P,Hash算法等等。不是搞数学的根本看不懂。不过,从结果来看就是:任何人只能查看自己的东西(因为私钥只有自己知道),数据无法篡改(因为数据全部是环环相扣,你只修改一部分数据没有任何用,但数据是分布式存储,因此你不可能修改大部分的数据)。

    https://baijia.baidu.com/s?old_id=610298

    https://www.zhihu.com/question/31112808

    每个节点的数据会同步到最新数据,且承认经过共识的最新数据;
    基于少数服从多数的原则,整体节点维护的数据本身客观反映了交换历史。

    区块链的每个节点的数据都能存在哪里?

    回答一:

    现在完整的比特币的链100多G,能存在哪?当然是所有矿工那了!

    回答二:

    作为链中的节点,存在两种节点模式,全量和部分。

    全量方式保存了所有链条中的数据,这个数据量会非常大且不断增长,往往由中继节点采用这种方式。

    部分方式只保存区块头信息,只要联到网中,就可以通过p2p的方式按图索骥的找到中继节点,从而搜索到所需信息

    回答三:

    理论上是每个人需要同步所有的区块链数据,当然实际过程中会考虑设计“轻区块链”应用,普通用户只需要同步很少的区块数量就可以。

    每次交易需要向全网发布交易信息,类似广播的原理,每个计算机都在随时向其它计算机发起同步数据信息,只要比其它计算机的数据较旧就自动同步

  • 相关阅读:
    linux的redis的安装和使用
    在linux上安装Mysql和使用
    linux的python3的安装
    linux的优化和命令
    LeetCode 542. 01 Matrix
    Qt keyPressEvent
    QOpenGLTexture 两个纹理叠加
    Qt5.6.0+OpenGL 纹理贴图首战告捷
    更改Qt Application为 Qt Console Application
    Learning part-based templates from large collections of 3D shapse CorrsTmplt Kim 代码调试
  • 原文地址:https://www.cnblogs.com/SuMeng/p/7834682.html
Copyright © 2011-2022 走看看