上次我们讲到,比特币带来了一个新思路——用经济学和博弈论的原理约束节点,让他们不会作恶,于是整个问题重新回到了异步普通容错问题的轨道,于是整个问题的消息复杂度回到了O(N),即,可扩展。关于扩展性问题我们到以后的文章里再深入说,在这里我们只说它和O(N^2)消息复杂度的传统容错算法,例如PBFT,的最大区别。
我管拜占庭容错诞生直到比特币诞生这段时间内的所有BFT算法,包括像是后来诞生的但是还未受到比特币和区块链影响的BFT算法叫做传统BFT算法。这类算法包括著名的PBFT,也包括之前的不那么practical的BFT,和后PBFT时代中提出了“投机型”BFT的Zyzzyva。这类BFT算法的最大特点,就是他们并没有把区块链当做主要的应用场景(废话)。然后这类BFT算法我们又可以拿PBFT和Zyzzyva分成三个阶段。
译文:所有人都知道X是不够的。我们还需要所有人都知道所有人都知道X,以及所有人都知道所有人都知道所有人都知道X,就像是在拜占庭将军问题里的那样——这是个分布式数据处理中的经典的困难问题。
用户可能存在这两种情况:1. 用户将资产保存在以太坊钱包或链上其他地方,并希望与路印协议构建的交易所进行交互。2. 用户将资产保存在路印协议构建的交易所中,并希望在其他地方使用链上功能。
我们的目标之一是以最小的摩擦来弥补链上与链下之间的差距,以实现最佳的用户体验。
通过本文,你将学会:1\区块链应用和传统应用在数据存储层的不同之处;2\使用区块链进行数据存储时遇到的约束;3\Substrate可用的存储数据类型和使用方法。
在之前的文章 Substrate应用 - 抛硬币游戏(一),我们完成了runtime的开发,从而实现了一个自定义功能(即抛硬币游戏)的区块链网络。现在让我们来看一下如何编写测试代码和UI,你也可以直接看最终的模块代码和UI代码。
以太坊2.0:脱胎换骨迈向”世界计算机“之路
本文为tendermint paper: The latest gossip on BFT consensus的读书笔记, 本文旨在理清论文中所讲的BFT共识. 如果您在阅读过程中有任何意见可以发起ISSUE, 如果喜欢的话可以点击star.
star
智能合约语法层面漏洞详解
系列四 — 区块链中的BFT及HotStuff BFT(Libra BFT)分析
有限域上的椭圆曲线是零知识证明的基础。零知识的实现是基于离散对数问题。从计算的角度来看,F_p是个有限域,在之基础上建立的椭圆曲线点的运算都是在这个域范围内。有限域上的椭圆曲线上有很多循环子群F_r,具有加法同态的特性。离散对数问题指的是,在循环子群上已知两点,却很难知道两点的标量。
以太坊智能合约安全漏洞实战详解——整数溢出攻击
参与Eth2 Staking系列第二遍 - Staking激励讨论
网络模型是区块链系统诸多性质的基石。这一系列的文章将就此展开话题,主要讨论不同的网络模型对共识协议的影响。本文主要讨论最基础的网络模型——同步模型。
系列三 - POS与POW-DAG
系列二 - 主要介绍了比特币POW之所以不可扩展的原因和两个可扩展POW的思路
本系列详细地解释扩容和区块链不可能三角
Eth2将使用Proof of Stake(权益证明)来维护网络安全,但实行PoS需要每个活跃的参与者(“验证者”)拥有一定资产来进行质押。如果持有资产的是eth1账户,那么这些资产需要转移到eth2的验证者处才能进行质押。
为什么比特币 10 分钟出个块,每个块的大小 1 MB?
本文主要介绍在进行以太坊智能合约安全漏洞实验演练时需要的工具和环境,方便后续漏洞实战操作。
扫一扫 - 使用登链小程序
37 篇文章,357 学分
61 篇文章,328 学分
108 篇文章,260 学分
22 篇文章,219 学分
9 篇文章,155 学分