• 维护一条链,只能增加记录,不能删除、修改。
  • 去中心化,达到共识
  • 密码学,保证交易无法抵赖和破坏

共识机制 PoW(Proof of Work),工作量证明,是一个博弈论的应用,来防止作恶。

示例:两个人分一块蛋糕,如何保证公平?让后拿的人来切。

PoW原理:暴力计算一个Hash,通过调节Hash结果(比如小于某个值 ),来控制特定时间(比特币为10分钟)只能产生一个输出(计算出一个区块)。

区块链网络与分布式数据库的本质区别:

1)block chain用来解决多方互信问题;而分布式数据库是各节点(多方)协作,提供高可用等服务。

2)Block chain中参与维护的核心节点都有一份完整的存储;而分布式数据库中,每个节点通常保存不同数据。

上面说的PoW共识算法,其实就是分布式系统中的一致性算法。

但,paxos, raft前提是,不存在拜占庭错误。

而PoW,以及PBFT系列算法,能容忍拜占庭问题。

区别:PBFT算法一但达成共识,则无法推翻。而PoW算法,随着时间推移,共识被推翻机率越来越低……

但理论上,分布式系统的共识问题无解。这个结论称为“FLP不可能原理”:

在网络可靠,存在节点失效的最小化异步模型系统中,不存在一个可解决一致性问题的确定性算法。

数字证书用于证明公钥是某人所发,而证书的管理和发布通过PKI体系来保证安全。

block-chain的更多相关文章

  1. Block Chain, a protocol view

    我做了个区块链的文档,给自己扫盲用的,有兴趣的可以看下,主要是自己画示意图比较好理解,示意图之后的专题部分,内容直接取自参考链接.网上的资料都是谈区块链有什么性质.有什么能力.有什么应用之类的,我主要 ...

  2. Block Chain Learning Notes

    区块链是什么 区块链技术是由比特币创造的,本文也将从比特币开始进行引导,一步一步告诉大家什么是区块链.如果你想立马知道区块链是什么,也可以直接转到文章末尾的区块链定义. 区块链,可能是当下最有前景又充 ...

  3. linux安装open block chain

    Compile the source code Step 1. 安装git sudo apt-get install git Step 2. 安装vagrant(ubuntu系统) 下载地址https ...

  4. Trusted Block Chain Summit(2018.10.09)

    时间:2018.10.09地点:北京金隅喜来登大酒店

  5. 区块链 block chain 去信任

    去中心化:不以参与交易的任何一方为中心 去信任:假定参与交易的任何一方都是不可信任的 区块链受到关注的原因 去中心化.去信任化.智能合约等,正好满足未来互联网持续发展所要求的信息的盖度自动化和高度程序 ...

  6. Block chain 1_The Long Road to Bitcoin

    The path to Bitcoin is littered with the corpses of failed attempts. I've compiled a list of about a ...

  7. BitCoinJ之Hello World示例程序

    简介 比特币(BitCoin)是一种基于区块链(BlockChain)技术的数字化货币. 本文介绍了使用基于Java语言的BitCoinJ API实现一个简单的收取和支付比特币的示例程序. 开发环境 ...

  8. 50行Python代码构建小型区块链

    本文介绍了如何使用python构建一个小型的区块链技术,使用Python2实现,代码不到50行. Although some think blockchain is a solution waitin ...

  9. 用 Python 撸一个区块链

    本文翻译自 Daniel van Flymen 的文章 Learn Blockchains by Building One 略有删改.原文地址:https://hackernoon.com/learn ...

  10. 用Python从零开始创建区块链

    本文主要内容翻译自Learn Blockchains by Building One 本文原始链接,转载请注明出处. 作者认为最快的学习区块链的方式是自己创建一个,本文就跟随作者用Python来创建一 ...

随机推荐

  1. Python爬虫有道翻译接口

    import urllib.request import urllib.parse import json import hashlib from datetime import datetime i ...

  2. [luogu P2054] [AHOI2005]洗牌

    [luogu P2054] [AHOI2005]洗牌 题目描述 为了表彰小联为Samuel星球的探险所做出的贡献,小联被邀请参加Samuel星球近距离载人探险活动. 由于Samuel星球相当遥远,科学 ...

  3. npm node sass 安装报错

    报错为 不能找到python2.7,记得曾经已经安装过python,结果npm install cnpm install npm install node-sass 各种不行,结果在cmd 输入pyt ...

  4. python 首次安装 报错

    最近python很火,想在空余时间学习一波,但是安装完Python后运行发现居然报错了,错误代码是0xc000007b,于是通过往上查找发现是因为首次安装Python缺乏VC++库的原因 错误提示如下 ...

  5. memory prefix pre,pro,penta,pseudo out _p 1

    1● pre 前的,预先   2● pro 在前,很多,赞同       3● penta 5,五     4● pseaudo   伪,假 pseudo  

  6. linux命令--文件查询

    ls [ -lahid ] [ /* ] ls  --   默认查询当前目录下的显性文件 -l  --  显示文件的详细信息 -a --  显示所有文件(包括隐藏文件) -h --  文件大小显示为 ...

  7. R语言中的采样与生成组合

    不放回采样:sample(1:10, 5, replace = FALSE) 生成组合:

  8. learning ddr reset initialization with stable power

  9. chrome console 阻止 Navigated to

    阻止如图 chrome 如图信息

  10. Unity运行错误代码处理

    1.Unity在运行时出现如图错误,但不影响运行效果展示. 2.错误原因:代码不规范. 3.检查代码,查看变量是否定义正确.