每一本讲区块链技术的书籍,几乎都会讲到拜占庭将军问题,看到这个词语时,我曾经一度认为有一位名叫拜占庭的将军带领着一支庞大的军队打仗时遇到了难题,但查阅了一些资料后,发现实际上并没有拜占庭将军,也没有这
拜占庭将军问题其实是虚构出来的一个故事,是为了方便通俗地介绍分布式系统所面临的难题。
区块链(Blockchain)技术自身仍然在飞速发展中,目前还缺乏统一的规范和标准。Wikipedia 给出的定义为:
而由于地域上特殊原因,你们这10支军队不能集合在一起单点进攻,必须在分开的状态下同时包围攻击敌国。如果是单支军队单独进攻的话是毫无胜算的,除非有至少有6支军队同时调遣一起袭击才能攻下敌国。你们分散在敌国的四周,依靠通信兵相互通信来协商进攻意向和进攻时间。
“共识机制是区块链的灵魂。”这是业内经常能听到的一句话,共识机制在区块链中的地位可想而知。那么到底什么是共识机制呢?我们不妨从拜占庭将军问题说起。
0 上一篇我们详细介绍了不可篡改的账本区块链的数据结构的实现。其核心技术第一是数字签名,比特币采用的是椭圆曲线数字签名算法。第二是加密级别的哈希,比特币采用的是SHA256。 然而在我们的系统里,依然只有一个寡头负责记账。我们固然不用担心交易记录被伪造,因为有数字签名。我们也不用担心区块被篡改,因为可以通过哈希值校验。但是我们无法防止这个寡头故意不记账或者故意丢区块。所以这个系统是一个人人可以查账,但是大家却必须相信寡头不作恶的系统。 比特币系统显然不会停留在这个设计上。所以寡头需要被取代掉。比特币的做
技术定义是:共识机制是一个群体决策的流程,群体中的个体会执行和支持对群体其他个人最好的决定。这是一个个体需要支持大多数人决定的解决方式,不管他们意愿如何。
“区块链”技术最初是由一位化名中本聪的人为比特币(一种数字货币)而设计出的一种特殊的数据库技术,它基于密码学中的椭圆曲线数字签名算法(ECDSA)来实现去中心化的P2P系统设计。但区块链的作用不仅仅局限在比特币上。现在,人们在使用“区块链”这个词时,有的时候是指数据结构,有时是指数据库,有时则是指数据库技术,但无论是哪种含义,都和比特币没有必然的联系。
这是filecoin协议里面对 PFT的解释,power概念就是矿工的影响力(influence),“Power”是filecoin系统的投票权力的大小度量,根据矿工贡献的Power来计算矿工的投票权有多大,根据信达雅的基本要求,所以称为“影响力容错”。之前曾经考虑过“权利容错”和“权益容错”,“权利”这个词本身表达不了大小的概念,而“权益”又跟Proof of Stake(权益证明:EC共识是在这个基础上进行的,有必要区分)有冲突,于是小编把这个词翻译成影响力容错。或许有更贴切的表达方式,欢迎讨论!
但凡关于区块链或比特币相关的书籍,就算是相关问题深入探讨都绕不开一个永恒的话题——拜占庭将军问题(The Byzantine Generals Problem)。每一个想理解和掌握区块链技术原理的人也无法“逃过”拜占庭将军的“手掌心”,网络上关于拜占庭将军问题的讨论、描述、讲解多如牛毛,很多区块链大神,用了论文级别最科学,最严谨的算法、公式来推理,讲解,试图让人们更透彻的理解区块链技术是如何迎刃而解拜占庭将军问题的核心,往往却事与愿违,而本文试图化繁为简,让非技术人员也能理解拜占庭将军问题的前世今生。
本文,作者首先介绍了拜占庭问题和口头消息算法;其次,详细讨论以HyperLedger1.0为基础的系统架构和数据库事务处理流程,并分析该架构与传统中心化数据库的主要区别;最后,以南京政务网建设为例子阐述区块链技术的具体应用。 图 作者 | 丁艺明 拜占庭问题 探究区块链其源头,我们不得不追溯到“拜占庭将军问题”。它是整个区块链技术核心思想的真正根源,也直接决定了区块链技术的种种与众不同的颠覆性特质。 在2013年获得计算机科学领域最高奖项图灵奖的31年前,莱斯利·兰伯特(Leslie Lamport)加入斯
本篇专栏 ←持续记录本人自学两年走过无数弯路的智能合约学习笔记和经验总结 如果喜欢拜托三连支持~
区块链是一个融合了点对点传输(P2P),加密算法等技术的分布式数据库,它必须基于计算机网络来进行。 📷 分布式记账的方式带来了的好处就是大家都来记账,每个人手里都有一本完整的账本(数据),某部分(节点)的账本(数据)的丢失不会导致整个账本(数据)的丢失,因为账本(数据)是全网所有(节点)共有,即这个数据有无数个备份,随时可以恢复。 而且随着节点的增加,账本(数据)也越来越安全,很难摧毁。 当然,另外一个好处就是,任意一个或部分(节点)的账本(数据)的篡改,都不可能被全网认同,对于数据的篡改几乎不可能,除非你
本文目录 分布式系统问题 工作证明POW 比特币的价值 参考 分布式系统问题 拜占庭将军问题 一组拜占庭将军分别各率领一支军队共同围困一座城市。为了简化问题,将各支军队的行动策略限定为进攻或撤
区块链是一种分布式数据库技术,已经在金融、物流、医疗等领域得到广泛应用,其中共识机制是确保区块链安全性和可靠性的关键机制之一,共识机制可以确保所有节点对于区块链上的数据和交易的一致性,从而防止双重支付和其他恶意行为,本文将详细介绍区块链共识机制的原理、分类和应用并探讨当前共识机制面临的挑战和未来的发展方向。
POW:Proof of Work,工作量证明 特点:比特币莱特币等货币型区块链(公有链) 一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值。要得到合理的Block Hash需要经过大量尝试计算,计算时间取决于机器的哈希运算速度。参与挖矿的矿工竞争将前一区块的hash与一个随机的比特串一起来计算出一个hash值,若输出的hash值满足前若干比特为0,即为解出了该难题,当然,并不能得出计算次数的绝对值,因为寻找合理hash是一个概率事件。当节点拥有占全网n%的算力时,该节点即
在区块链的交流和学习中,「共识算法」是一个很频繁被提起的词汇,正是因为共识算法的存在,区块链的可信性才能被保证。
本文尽可能列出所有主要的共识算法,评估各自的优劣之处。共识算法是区块链的核心技术,本文会跟随作者的理解,持续更新。如果读者发现有所遗漏,或是存在错误,希望能通过评论指出。
目录 1. 引言 2. 区块链介绍 2.1 区块链的起源 2.2 区块链分类和共识算法的选择 3. PBFT 算法介绍 3.1 拜占庭将军问题 3.1.2 口头消息 3.1.3 签名消息 3.2 PBFT 算法流程 3.3 PBFT 算法改进动机 4. PBFT 算法改进 4.1 改进思路 4.2 椭圆曲线 4.3 数字签名 4.4 聚合签名 4.5 改进 PBFT 5. 总结与思考 参考文献 1. 引言 📷 📷 📷 2. 区块链介绍 2.1 区块链的起源 📷 📷 📷 📷 2.2 区块链分类和共识算法的
01— 拜占庭将军问题的起源 拜占庭位于如今的土耳其的伊斯坦布尔,是东罗马帝国的首都。由于当时拜占庭罗马帝国国土辽阔,为了防御目的,因此每个军队都分隔很远,将军与将军之间只能靠信差传消息。 在战争的时候,拜占庭军队内所有将军和副官必需达成一致的共识,决定是否有赢的机会才去攻打敌人的阵营。但是,在军队内有可能存有叛徒和敌军的间谍,左右将军们的决定又扰乱整体军队的秩序。在进行共识时,结果并不代表大多数人的意见。这时候,在已知有成员谋反的情况下,其余忠诚的将军在不受叛徒的影响下如何达成一致的协议,拜占庭问题就此形
前三章是关于区块链的科普文章。最后一章专门涉及技术,最后一章感觉抄了《精通比特币》一书不少内容。 第0章 必然的出现 世界上最早的货币 —— 已知的最早货币:大麦货币。苏美尔人将定量的大麦作为通用单
随着技术浪潮的涌动,国家政策的推动,区块链又慢慢的进入了我们的视野中。在 2020 年初这个时刻,不妨我们再回头看看区块链的发展,聊聊区块链中的几个技术点,为新的一年打打基础。
互联网是因为高速、大量传递信息,而改变了世界。比特币则弥补了互联网不能点对点转账、不能确保信息准确可靠的功能缺陷,因此创造了巨大价值。
区块链(Block chain)是一种分布式共享数据库(数据分布式储存和记录),利用去中心化和去信任方式集体维护一本数据薄的可靠性的技术方案。
文章来源于知乎 导读:区块链技术的文章泛滥成灾,但大多读起来晦涩难懂。这篇在知乎上点赞量达到1万+的文章,就有点意思了。作者写这篇文章初衷正是苦恼于不知该如何跟弱智室友解释区块链。作者来自浙江大学 • 竺可桢学院、纽约大学 (New York University) • 计算机科学学院,自称区块链黑客,他的文章会迅速让你感觉区块链很弱智的样子。对于这篇文章提出的观点,你是否赞成呢,欢迎在文末留言。以下为汪乐针对《区块链是什么,如何简单易懂地介绍区块链》的回答。区块链大本营采用第一人称保留原汁原味。 作者:汪
导读:区块链技术的文章泛滥成灾,但大多读起来晦涩难懂。这篇在知乎上点赞量达到1万+的文章,就有点意思了。作者写这篇文章初衷正是苦恼于不知该如何跟弱智室友解释区块链。作者来自浙江大学 • 竺可桢学院、纽
接触区块链的同学,多少都听说过拜占庭将军问题,经常看到或听到某某区块链使用某某算法解决了拜占庭将军问题,那么究竟什么是拜占庭将军问题呢什么是拜占庭将军问题 也被称为“拜占庭容错”、“拜占庭将军问题”。 拜占庭将军问题是Leslie Lamport(2013年的图灵讲得住)用来为描述分布式系统一致性问题(Distributed Consensus)在论文中抽象出来一个著名的例子。 这个例子大意是这样的: 拜占庭帝国想要进攻一个强大的敌人,为此派出了10支军队去包围这个敌人。这个敌人虽不比拜占庭帝国,但也足以抵
两年前我写了篇关于货币的未来的文章,我认为比特币不会成为一种主流货币。现在很清楚了比特币实际上已经失败了,比特币社区发展的重要支撑因素正在消失。 比特币失败的原因有很多,包括治理机制,缺乏技术基础设施
行业报道 导读:事情是这样的,最近我的室友Hasaki一直在问我区块链和比特币的事情,我尝试了很多种不通的姿势以求简单通俗形象生动地跟他解释什么是区块链技术,但是最后都失败了。因此我萌生了要写一篇Bl
百花村旁有一座山叫区块链山,属村民集体所有。村外的A公司准备开发区块链山的旅游资源。A公司和村民委员会联合成立了百花旅游开发有限公司,签了股份制合作协议。以下是春节假期期间发生在村民李大和柳五之间的对话:
总览 区块链本质上是一个去中心化的分布式账本数据库其本身是一串使用密码学相关联所产生的数据块,每一个数据块中包含了多次比特币网络交易有效确认的信息。 1,区块链是一个放在非安全环境中的分布式数据库(系统)。 2,区块链采用密码学的方法来保证已有数据不可能被篡改。 3,区块链采用共识算法来对于新增数据达成共识。 具有以上三个性质的系统,就是区块链。 这是区块链的定义,因此要逐步了解区块链,我们需要一步步了解如下东西。 去中心化 先来考虑一个中心化集中式处理的过程。你要在某宝上买一部手机,交易流程是:你将钱打给
拜占庭将军问题首先是由Leslie Lamport等人在1982年提出,被称为The Byzantine Generals Problem或者Byzantine Failure。这个问题是这样描述的:
区块链本身只是一种数据的记录格式, 与传统的记录格式不同的是, 区块链是将产生的数据按照一定的时间间隔, 分成一个个的数据块记录, 然后再根据数据块的先后关系串联起来, 也就是所谓的区块链了.
2016年8月17日上午,腾讯支付基础平台与金融应用线副总经理郭锐在2016中国区块链产业投资论坛发表主旨演讲,郭锐透露,腾讯金融云正积极探索区块链技术,致力构建线上互信金融新生态。 今年年初,央行表态要探索发行数字货币,数字货币背后支撑的技术——区块链引发了金融行业的广泛关注;而作为当前互联网核心技术及金融科技的前沿领域,区块链也引起了投资界越来越大的兴趣。公开资料显示,截至到2016年第一季度,国际上区块链领域累计投资已超10亿美元;投资比特币及区块链领域的初创项目的风险投资公司已近200家。 “区块链
共识算法是用于保证分布式系统一致性的机制。这里的一致性可以是交易顺序的一致性、账本一致性、节点状态的一致性等。一般地,我们根据容错类型将共识算法分为两类。
● 稳定性、可靠性、持续性。因为它是一个分布式的网络架构,没有一个中心节点可以被打击或者攻击,所以在整体的技术布置方面有着更强的稳定性、可靠性和持续性。
在上一篇文章中我们聊到了区块链技术的一些基本概念以及运行的原理性的东西,以及在金融行业的应用,那我们接下来要分析下区块链除了在互联网、金融领域之外,还有没有其他的用途。
狗年吉祥,开工利是,我们继续研究以太坊源码。从本篇文章开始,我们会深入到以太坊核心源码中去,进而分析与研究以太坊的核心技术。 关键字:拜占庭,挖矿,矿工,分叉,源码分析,uncle叔块,agent,worker,事件监听 本文基于go-ethereum 1.7.3-stable源码版本。源码范围主要在miner pkg。 miner.start() miner即矿工的意思,矿工要做的工作就是“挖矿”,挖矿就是将一系列最新未封装到块中的交易封装到一个新的区块的过程。学习以太坊挖矿之前,我们要
未来已经来临,只是尚未流行。用这一句来描述当下的比特币区块链再合适不过了。从上周开始,曾经不可一世的比特币开始从高点回落,跌幅一度超过40%,接近腰斩。说到比特币,自然而然就要谈其背后的核心技术——区块链。区块链是比特币的底层技术和基础架构,本质上是一个去中心化的数据库,它是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性和生成下一个区块。 1 最初的设想 比特币最初的构想来自上世纪初期奥地利经济学派著名经济学家、诺贝尔经济学得主哈耶克。他在《货
我这里将主要列举一致性Hash算法、Gossip协议、QuorumNWR算法、PBFT算法、PoW算法、ZAB协议,Paxos会分开单独讲,Raft算法已经写好了一篇文章,具体可以参考:从JRaft来看Raft协议实现细节。
虽然对区块链研究的不多,当时区块链比较火热的时候大概看了不到一个礼拜,主要是在技术角度去看这个新的事物的,当时得到的一些结论是:区块链是个分布式系统,同时在分布式技术角度没什么新东西,都是比较成熟的技术,后来就放下了。
虽然共识 (Consensus) 和一致性 (Consistency) 在很多文献和应用场景中被认为是近似等价和可互换使用的,但二者涵义还是有着根本的差别。
事情是这样的,最近朋友一直在问我区块链和比特币的事情,我尝试了很多种不通的姿势以求简单通俗形象生动地跟他解释什么是区块链技术,但是最后都失败了。想以求能简单直观生动形象地向对区块链技术不了解但是想知道区块链是什么的人介绍区块链技术或者比特币。
1、区块链技术是一个解决了拜占庭将军(百度百科拜占庭将军问题)节点的分布式数据系统!这是它最大的不同,也导致了这个技术存在诸多限制。
携程和去哪儿在过去的十年,战火纷飞,旅游行业因其恶性竞争而“天翻地覆”。如今步入区块链旅游时代,一直寻求新技术立足点的去哪儿也找到了新的生机。去哪儿的区块链旅游布局又是如何力挽狂澜,在携程“猖狂”的垄断时代,寻找自身的立足之地?
共识算法(Consensus Algorithm)是分布式系统中一个关键的概念,主要用于确保多个节点在分布式环境中能够就某一状态达成一致。本文将深入探讨共识算法的基本原理、常见类型及其在实际应用中的重要性。
1982年 拜占庭将军问题 Leslie Lamport等人提出拜占庭将军问题(Byzantine Generals Problem),把军中各地军队彼此取得共识、决定是否出兵的过程,延伸至运算领域,设法建立具容错性的分散式系统,即使部分节点失效仍可确保系统正常运行,可让多个基于零信任基础的节点达成共识,并确保资讯传递的一致性,而2008年出现的比特币区块链便解决了此问题。 David Chaum提出密码学网路支付系统 David Chaum提出注重隐私安全的密码学网路支付系统,具有不可追踪的特性,成为
拜占庭容错(Byzantine Fault Tolerance,BFT)是一种在分布式计算系统中实现容错的重要机制,旨在确保系统在存在恶意或故障节点的情况下仍能正常运作。本文将详细介绍拜占庭容错算法的基本原理、实现方法及其在实际应用中的重要性。
区块链作为一个去中心化的分布式账本系统,然而在实际运行中,怎么解决因为去中心化后,保证整个系统能有效运行,各个节点诚实记账,在没有所谓的中心的情况下,互相不信任的个体之间就交易的合法性达成共识的共识机制。
本文主要介绍拜占庭算法,并附带一些相关联的概念,进行跨领域的思考,涉及宗教、群体、组织、社交网络、去中心化、涌现、共识算法、人工智能等等。
领取专属 10元无门槛券
手把手带您无忧上云