【区块链技术框架发展特点:比特币/以太坊/Fabric】教程文章相关的互联网学习教程文章

区块链教程Fabric1.0源代码分析ECDSA椭圆曲线数字签名算法【代码】

兄弟连区块链教程Fabric1.0源代码分析ECDSA椭圆曲线数字签名算法,2018年下半年,区块链行业正逐渐褪去发展之初的浮躁、回归理性,表面上看相关人才需求与身价似乎正在回落。但事实上,正是初期泡沫的渐退,让人们更多的关注点放在了区块链真正的技术之上。 Fabric 1.0源代码笔记 之 ECDSA(椭圆曲线数字签名算法)1、椭圆曲线算法概述1.1、无穷远点、无穷远直线、射影平面平行线相交于无穷远点;直线上有且只有一个无穷远点;一组...

区块链技术框架发展特点:比特币/以太坊/Fabric【图】

区块链1.0架构 比特币系统(2009)产生概念:去中心电子记账系统/分布式账本密码学挖矿/共识机制 区块链2.0架构 以太坊(2013)产生概念(上一代基础上新增/改进):智能合约/EVM虚拟机/Gas不同类型帐号(外部账户/合约账户)改进的PoW共识 区块链3.0架构 Hyperledger及其他除货币以外的领域(2015)产生概念(上一代基础上新增/改进):成员管理,接入认证可拔插共识机制:PBFT/Paxos/Raft分区/channel更好的性能与扩展性 原文:https://www....

区块链教程Fabric1.0源代码分析blockfile区块文件存储一【代码】

Fabric 1.0源代码笔记 之 blockfile(区块文件存储) 1、blockfile概述blockfile,即Fabric区块链区块文件存储,默认目录/var/hyperledger/production/ledgersData/chains,含index和chains两个子目录。其中index为索引目录,采用leveldb实现。而chains为各ledger的区块链文件,子目录以ledgerid为名,使用文件系统实现。区块文件以blockfile_为前缀,最大大小默认64M。blockfile,相关代码集中在common/ledger/blkstorage/fsblkst...

区块链教程Fabric1.0源代码分析MSP成员关系服务提供者二【代码】

3、MSP接口实现 MSP接口实现,即bccspmsp结构体及方法,bccspmsp定义如下:type bccspmsp struct { ????rootCerts []Identity //信任的CA证书列表 ????intermediateCerts []Identity //信任的中间证书列表 ????tlsRootCerts [][]byte //信任的CA TLS 证书列表 ????tlsIntermediateCerts [][]byte //信任的中间TLS 证书列表 ????certificationTreeInternalNodesMap map[string]bool //待定 ????signer SigningIdentity //签名身份 ?...

区块链教程Fabric1.0源代码分析PeerBroadcastClient(Broadcas【代码】

区块链教程Fabric1.0源代码分析PeerBroadcastClient(Broadcast客户端),2018年下半年,区块链行业正逐渐褪去发展之初的浮躁、回归理性,表面上看相关人才需求与身价似乎正在回落。但事实上,正是初期泡沫的渐退,让人们更多的关注点放在了区块链真正的技术之上。 Fabric1.0源代码笔记之Peer DeliverClient(Deliver客户端)1、DeliverClient概述DeliverClient代码分布如下:peer/channel/deliverclient.go,deliverClientIntf接口...

区块链教程Fabric1.0源代码分析policy(背书策略【代码】

区块链教程Fabric1.0源代码分析policy(背书策略),2018年下半年,区块链行业正逐渐褪去发展之初的浮躁、回归理性,表面上看相关人才需求与身价似乎正在回落。但事实上,正是初期泡沫的渐退,让人们更多的关注点放在了区块链真正的技术之上。 Fabric 1.0源代码笔记 之 policy(背书策略)1、policy概述policy代码分布在core/policy、core/policyprovider、common/policies目录下。目录结构如下:core/policy/policy.go,PolicyChe...

区块链教程Fabric1.0源代码分析Chaincode(链码)体系总结【代码】

Fabric 1.0源代码笔记 之 Chaincode(链码) 1、Chaincode概述Chaincode,即链码或智能合约,代码分布在protos/peer目录、core/chaincode和core/common/ccprovider目录,目录结构如下:protos/peer目录:????* chaincode.pb.go,ChaincodeDeploymentSpec、ChaincodeInvocationSpec结构体定义。core/chaincode目录:???? platforms目录,链码的编写语言平台实现,如golang或java。???????? platforms.go,Platform接口定义,及部分工...

兄弟连区块链教程Fabric1.0源代码分析ledgerID数据【代码】

1、idStore概述 Fabric支持创建多个Ledger,不同Ledger以ledgerID区分。多个ledgerID及其创世区块存储在idStore数据库中,idStore数据库基于leveldb实现。idStore默认使用路径:/var/hyperledger/production/ledgersData/ledgerProvider/。idStore库中特殊key "underConstructionLedgerKey",用于标志最新在建的ledgerID,ledgerID创建成功后或失败时该标志将清除,另外此标志也用于异常时按ledgerID恢复数据。idStore相关代码集中...

企业级区块链对比:Quorum vs. Corda vs. Hyperledger Fabric【图】

企业分布账本技术(Distributed Ledger Technology)需要解决5个方面的挑战:数据隐私性、技术正当性、可伸缩性、最终一致性和互操作性。本文将对企业以太坊(Quorum)、Hyperledger Fabric和Corda就这些环节进行比较。如果希望快速掌握区块链应用的开发,推荐汇智网的区块链应用开发系列教程, 内容涵盖比特币、以太坊、eos、超级账本fabric和tendermint等多种区块链,以及 java、go、c#、nodejs、python、php、dart等多种开发语...

Hyperledger Fabric 2.2.1 区块链问题汇总(后续有问题再更新)【代码】【图】

搭建Hyperledger Fabric时遇到了很多问题,很多坑,这里汇总一下,有些可能没保存图片,还有些问题没及时记录起来: 1、生成orderer区块文件时,如下图所示:必须要指定channelID修改命令如下即可: configtxgen -profile TestTwoOrgsOrdererGenesis -channelID qkltestchannel -outputBlock ./order.genesis.block 2、创建orderer区块文件时,如下图所示:原因:OrdererDefaults引用不到,百度了一下,参考文章:https://blog.csd...

区块链教程Fabric1.0源代码分析Ledger statedb(状态数据库)【代码】

Fabric 1.0源代码笔记 之 Ledger #statedb(状态数据库) 1、statedb概述 statedb,或VersionedDB,即状态数据库,存储了交易(transaction)日志中所有键的最新值,也称世界状态(world state)。可选择基于leveldb或cauchdb实现。 statedb,代码分布在core/ledger/kvledger/txmgmt/statedb目录下,目录结构如下:statedb.go,定义了核心接口VersionedDBProvider、VersionedDB、ResultsIterator和QueryResult,以及UpdateBatch和n...

区块链学习——HyperLedger-Fabric v1.0 启动过程分析【代码】【图】

本章我们从fabric v1.0的e2e_cli示例开始分析整个启动过程以及在过程中的一些配置文件首先呢,还是确保你的基本环境已经搭建完成,v1.0源码和镜像也都下载完毕fabric启动过程中的相关脚本文件解析network_setup.sh脚本文件在源码目录下的network_setup.sh文件是官方提供的快速部署测试的一个自动化脚本,接下来我们看一下在启动这个文件时都做了什么: 在上图中我们只是截取了启动函数,在这个函数中可以清楚的看出在启动中调用了g...

Hyperledger Fabric 超级账本 区块链技术 概述 优点

超级账本概述 区块链的第一个也是最被广泛认可的应用是比特币,另一种加密货币以太坊采取了不同的方法,它集成了许多与比特币相同的特征,添加了智能合约来创建分布式应用程序的平台。比特币和以太坊属于区块链,我们将其归类为无公开许可的区块链技术。基本上,这些都是对任何人开放的公共网络,参与者可以匿名互动。 随着比特币、以太坊和其他一些衍生技术的普及,将区块链的底层技术、分布式账本和分布式应用平台应用到更具创新...

区块链学习之Hyperledger Fabric开发环境搭建(Go+Docker+Fabric)【代码】【图】

Fabric采用Go语言实现,因此推荐使用Golang 1.12+版本进行编译生成fabric-peer、fabric-orderer和fabric-ca等组件的二进制文件,对于区块链的业务开发最好也推荐使用Go语言,因为Fabric虽然支持Java等语言,但是因为支持过程中经常有些莫名的Bug,因此推荐使用Go语言。Fabric目前采用Docker容器作为链码执行环境,因此即使在本地运行,链码服务器也需要安装Docker环境,Docker推荐使用1.18或更新的版本。因此建议采用Go+Docker+Fab...

Hyperledger Fabric【区块链学习一】【图】

Hyperledger Fabric 学习 什么是区块链什么是区块链在我们没有接触的时候,只知道它是一个去中心化的存储方式。当我们发生交易,或者动作的时候我们会将记录通知给所有参与者共同维护,达到去中心化的进行存储。并且我们会将记录使用加密技术保证记录一旦添加到了账本中就无法修改(无法修改的账本就可以追溯信息根源)这个也就是区块链有时候被称为证明系统。区块链使用场景多方参与 跨机构数据共享需求 能够除本增收 提高工作效率...