
区块链
lessisbetter
LIB: lessisbetter.site
展开
-
为什么PBFT需要View Changes
前言在当前的PBFT资料中,尤其是中文资料,多数都在介绍PBFT的3阶段消息过程,很少提及View Changes(视图切换),View Changes对PBFT的重要性,如同Leader Election对Raft的重要性,它是一个一致性算法中,不可或缺的部分。作者为大家介绍下,为什么View Changes如此重要,即为什么PBFT需要View Changes,以及View Changes...原创 2020-04-11 20:43:23 · 3627 阅读 · 3 评论 -
Fabric 1.4源码解读 4:交易背书流程解读
图片不能显示时,请查看原文:https://lessisbetter.site/2019/10/29/fabric-transaction-endorser-source/文章目录流程交易宏观流程链码调用流程提案背书流程源码分析Proposal定义ProposalHeadergRPC定义SDK发送ProposalPeer接收ProposalPeer处理Proposal主流程preProcess ...原创 2020-03-15 17:26:29 · 778 阅读 · 0 评论 -
Fabric 1.4源码解读 7:Orderer架构解读
图片不能显示时,请查看原文:https://lessisbetter.site/2019/11/21/fabric-orderer-architecture/文章目录Orderer介绍架构多通道共识插件gRPC通信Local ConfigMetadataMsgProcessorBlockCutterBlockWriterOrderer节点启动Orderer处理交易的流程普通交易在Orderer中...原创 2020-03-15 17:24:46 · 891 阅读 · 0 评论 -
Fabric 1.4源码解读 8:Orderer和Peer的交互
图片不能显示时,请查看原文:https://lessisbetter.site/2019/12/17/fabric-blocks-from-orderer-to-peer/文章目录网络拓扑宏观视角单通道区块同步为何Peer从Orderer获取区块慢?为何不让Peer缓存所有未处理的区块?Peer与Orderer的交互主要是组织的Peer主节点从Orderer获取区块,本文就来介绍,Peer是如...原创 2020-03-15 17:22:55 · 1331 阅读 · 0 评论 -
Fabric 1.4源码解读 9:从账本角度看Peer
图片不能显示时,请查看原文:https://lessisbetter.site/2020/01/03/fabric-peer-ledger/文章目录账本区块文件和区块索引数据库历史数据库各数据库实现从数据看Peer功能账本同步数据使用Deliver同步区块Peer请求区块Peer处理收到的区块验证区块区块写入账本写区块完成后背书MVCCFabric对MVCC的使用总结参考区块链最核心的是可信数...原创 2020-03-15 17:21:01 · 644 阅读 · 0 评论 -
一张思维导图看懂PBFT
图片不能显示时,请查看原文:https://lessisbetter.site/2020/03/11/pbft-xmind/最近央行发布的《金融分布式账本安全规范》中提到了区块链系统要提供BFT共识,把之前整理的PBFT的思维导图分享给大家。新标签页中打开,查看高清大图。...原创 2020-03-15 17:19:08 · 296 阅读 · 1 评论 -
为什么PBFT需要3个阶段消息?
原文链接:https://lessisbetter.site/2020/03/15/why-pbft-needs-3-phase-message/文章目录前言PBFT与拜占庭问题拜占庭节点在网络中的行为什么是3阶段消息3阶段消息解决什么问题为什么不能只有前2个阶段消息2个不变性为什么3个阶段消息可以达成一致性总结前言在面试的时候,很多同学的简历熟悉PBFT共识算法,在现场面试的时候,却只能说...原创 2020-03-15 17:14:35 · 2159 阅读 · 0 评论 -
以太坊源码分析:statedb
前言就如以太坊黄皮书讲的,以太坊是状态机,区块的产生,实际是状态迁移的过程。那以太坊是如何定义状态的?是如何迁移状态的?是怎么存储状态的?这篇文章就介绍什么是状态,以及是怎么存储的。状态基本知识状态的定义一个账户的信息,就是一个状态,而以太坊是所有状态的集合。比如,最开始的状态是:{A有10元,B有0元},后来A发起了交易,给B2元,状态变成{A有8元,B有2元},这中间的过...原创 2019-01-05 14:55:28 · 4120 阅读 · 1 评论 -
以太坊源码分析:fetcher模块和区块传播
前言这篇文章从区块传播策略入手,介绍新区块是如何传播到远端节点,以及新区块加入到远端节点本地链的过程,同时会介绍fetcher模块,fetcher的功能是处理Peer通知的区块信息。在介绍过程中,还会涉及到p2p,eth等模块,不会专门介绍,而是专注区块的传播和加入区块链的过程。当前代码是以太坊Release 1.8,如果版本不同,代码上可能存在差异。总体过程和传播策略本节从宏观角度介绍...原创 2019-01-05 14:54:01 · 915 阅读 · 0 评论 -
以太坊源码分析之事件框架
过去在学Actor模型的时候,就认为异步消息是相当的重要,在华为的时候,也深扒了一下当时产品用的消息模型,简单实用,支撑起了很多模块和业务,但也有一个缺点是和其他的框架有耦合,最近看到以太坊的事件框架,同样简单简洁,理念很适合初步接触事件框架的同学,写文介绍一下。以太坊的事件框架是一个单独的基础模块,存在于目录go-ethereum/event中,它有2中独立的事件框架实现,老点的叫TypeMu...原创 2019-01-05 14:53:16 · 297 阅读 · 0 评论