超级账本
文章平均质量分 58
wilson_go
这个作者很懒,什么都没留下…
展开
-
hyperledger中通道创建以及链码安装
root@3aed2d0be083:/opt/gopath/src/github.com/hyperledger/fabric/peer# peer channel create -o orderer.wilsoner.com:7050 -c testchannel -f ./channel-artifacts/channel.tx --tls true --cafile $CAFILE2018...原创 2018-12-11 23:01:47 · 1174 阅读 · 0 评论 -
hyperledger中安装链码
root@c6de44112a9f:/opt/gopath/src/github.com/hyperledger/fabric/peer# #root@c6de44112a9f:/opt/gopath/src/github.com/hyperledger/fabric/peer# CAFILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/...原创 2018-12-12 15:59:22 · 3039 阅读 · 0 评论 -
hyperledger生成证书命令
cryptogen showtemplate > crypto-config.yamlcryptogen generate --config=crypto-config.yaml原创 2018-12-07 22:01:48 · 401 阅读 · 0 评论 -
chaincde shim包的方法名称及其相应功能
PutState 把客户端传递过来的数据保存到fabricGetState 从fabric中取出数据DelState删除一个keyCreateCompositeKeyGetStateByPartialCompositeKey 查询复合键的值SplitComposityKey拆分复合键GetStateByRange根据key的范围来查询相关的数据GetHistoryForKey查询某个...原创 2018-12-01 23:46:16 · 1230 阅读 · 0 评论 -
hyperledge简要命令
cryptogen组织结构和账号相关的文件configtxgen区块和交易生成configtxlator区块和交易解析安装链码peer chaincode install -n demo -v 1.0 -p demo其中-n表示名称,-v表示版本 -p表示路径实例化链码peer chaincode instantiate -n demo -v 1.0 -c ‘{“args”:[“j...原创 2018-12-01 22:41:57 · 313 阅读 · 0 评论 -
下载hyperledger-fabric源码
获取fabric源码go get -u -v github.com/hyperledger/fabric如果上述命令拉去失败,可以使用git从github上面拉取,执行下面命令 mkdir -p /opt/gopath/src/github.com/hyperledger cd -p /opt/gopath/src/github.com/hyperledger git clone ht...原创 2018-12-04 21:49:55 · 1835 阅读 · 1 评论 -
Hyperledger Fabric介绍
身份管理Identity,也就是身份管理,Fabric是目前为止在设计上最贴近联盟链思想的区块链。联盟链考虑到商业应用对安全、隐私、监管、审计、性能的需求,提高准入门槛,成员必须被许可才能加入网络。Fabric成员管理服务为整个区块链网络提供身份管理、隐私、保密和可审计的服务。成员管理服务通过公钥基础设施PKI和去中心化共识机制使得非许可的区块链变成许可制的区块链。Smart Cont...原创 2018-12-04 21:32:24 · 502 阅读 · 0 评论 -
Web3.js以太坊eth的api基本介绍
为了让你的Ðapp运行上以太坊,一种选择是使用web3.js library提供的web3。对象。底层实现上,它通过RPC 调用与本地节点通信。web3.js可以与任何暴露了RPC接口的以太坊节点连接。web3中有eth对象 - web3.eth 具体来表示与以太坊区块链之间的交互。shh对象 - web3.shh表示Whisper协议的相关交互。后续我们会继续介绍其它一些web3协议中的对象。...原创 2018-11-20 21:58:32 · 2546 阅读 · 0 评论 -
HyperLedger fabric超级账本peer chaincode命令大全
链码命令有:install|instantiate|invoke|package|query|signpackage|upgrade,未来还会支持start、stop命令原创 2018-10-26 22:33:55 · 1022 阅读 · 0 评论 -
区块链之Hyperledger超级账本Fabric v1.0 的环境搭建(超详细教程)
在刚开始接触Hyperledger时,非常迷茫,不知道从何入手。导师建议我别只看理论知识,试着在机器上运行一下,边用边学。于是开始在网上各种查怎么搭建Fabric环境,菜鸟(非计算机本科)第一次装虚拟机,用linux,指令也是边查边用,终于花了近五天时间搭建成功,过程艰难。所以写下此教程,让后面学习的同学少走弯路。1. 安装Linux系统 建议Ubuntu 16.04关于是使用虚拟机还是双系...转载 2018-10-21 19:03:53 · 1445 阅读 · 0 评论 -
hyperledger中转账交易
root@c6de44112a9f:/opt/gopath/src/github.com/hyperledger/fabric/peer# peer channel join -b testchannel.block2018-12-12 07:53:06.800 UTC [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer...原创 2018-12-12 16:32:14 · 522 阅读 · 0 评论 -
hyperledger多节点交易
root@c6de44112a9f:/opt/gopath/src/github.com/hyperledger/fabric/peer# lschannel-artifacts crypto testchannel.blockroot@c6de44112a9f:/opt/gopath/src/github.com/hyperledger/fabric/peer# peer channle...原创 2018-12-12 17:34:55 · 1456 阅读 · 0 评论 -
hyperledger中错误日志
orderer.wilsoner.com | 2018-12-11 09:21:54.332 UTC [cauthdsl] deduplicate -> ERRO 009 Principal deserialization failure (the supplied identity is not valid: x509: certificate signed by unkn...原创 2018-12-11 17:41:07 · 1474 阅读 · 0 评论 -
hyperledger中docker-compose文件示例
docker-compose.yaml文件来源于first-network中docker-compose-cli.yamlvolumes: orderer.wilsoner.com: peer0.orggo.wilsoner.com: peer1.orggo.wilsoner.com: peer0.orgcpp.wilsoner.com: peer1.orgcpp.wilso...原创 2018-12-11 13:34:59 · 406 阅读 · 0 评论 -
hyperledger中基本网络搭建示例
组织相关信息 排序节点组织名:OrgOrder 排序节点组织ID:OrgOrderMSP 排序节点根域名:wilsoner.com 排序节点二级域名: orderer.wilsoner.com 组织名字,组织ID,组织MSP OrgOrder orderer.wilsoner.com peer节点,组织个数2个,分别为...原创 2018-12-11 12:49:56 · 358 阅读 · 0 评论 -
hyperledger网络中出现的错误
oner.com:7051 and bootstrap set [peer0.orgcpp.wilsoner.com:7051]peer1.orgcpp.wilsoner.com | 2018-12-10 14:19:06.110 UTC [gossip/gossip] NewGossipService -> INFO 014 Creating gossip service with...原创 2018-12-10 22:21:37 · 851 阅读 · 0 评论 -
hyperledger生成peer和order
orderer.example.comorg1.example.comorg2.example.comcryptogen --helpcryptogen generate --config=crypto-config.yamlconfigtxgen --help # 输出创始块区块文件的路径和名字 `-outputBlock string` # 指定创建的channel的名...原创 2018-12-09 19:24:19 · 595 阅读 · 0 评论 -
纯净版docker-compose.yaml文件
version: '2'volumes: orderer.example.com: peer0.org1.example.com: peer1.org1.example.com: peer0.org2.example.com: peer1.org2.example.com:networks: byfn:services: orderer.example.c...原创 2018-12-09 19:17:21 · 1127 阅读 · 0 评论 -
REST
REST(REpresentational State Transfer)这个概念,首次出现是在 2000年Roy Thomas Fielding(他是HTTP规范的主要编写者之一)的博士论文中,它指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful的。要理解什么是REST,我们需要理解下面几个概念:1 、资源(Resources)REST是"表现层状态...原创 2018-12-12 21:33:11 · 226 阅读 · 0 评论 -
纯净版configtx.yaml文件
Organizations: - &OrdererOrg Name: OrdererOrg ID: OrdererMSP MSPDir: crypto-config/ordererOrganizations/example.com/msp - &Org1 Name: Org1MSP ...原创 2018-12-08 22:46:01 · 535 阅读 · 0 评论 -
纯净版crypto-config.yaml文件
OrdererOrgs: - Name: Orderer Domain: example.com Specs: - Hostname: ordererPeerOrgs: - Name: Org1 Domain: org1.example.com EnableNodeOUs: false Template: Count:...原创 2018-12-08 22:44:08 · 759 阅读 · 0 评论 -
超级账本hyperledger fabric中configtxlator转换配置
协议转换 可以在Protocol Buffer和JSON格式间直接转换,Protocol Buffer还包含多种格式,有以下几种格式: ·common.Block:区块结构; ·common.Envelope:带有效载荷和数字签名的数字信封,区块的数据部分就是序列化后的数字信封; ·common.ConfigEnvelope:包含链配置的数字信封,内容包含ConfigUpdateEnvel...原创 2018-09-13 22:45:11 · 930 阅读 · 0 评论 -
超级账本hyperledger fabric中configtxgen生成通道配置文件
configtxgen,用于生成通道配置,具体有如下三种用法:* 生成Orderer服务启动的初始区块(即系统通道的创世区块文件)configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block* 生成新建应用通道的配置交易(即用于创建应用通道的配置交易文件)co...原创 2018-09-13 22:40:57 · 1266 阅读 · 0 评论 -
超级账本成员身份管理
fabric属于许可链,与公有链最大的区别在于要求参与者先注册身份,该身份即为参与者在区块链网络中的标识。在fabric中,身份证书是每个参与者在区块链网络中的标识,同时也是权限管理的基础,证书采用了X.509标准,并且通过椭圆曲线密码学算法来生成公私钥对。 成员服务提供者组件 成员服务提供者组件 成员服务提供者组件MSP是对身份证书的抽象表达。网络中每个参与者都拥有MSP,它包含了参与者的...原创 2018-09-06 08:57:38 · 2425 阅读 · 0 评论 -
超级账本交易流程
应用端首先构建交易的预案。 背书节点收到交易预案后,首先校验交易的签名是否合法。 背书节点把链码模拟执行后得到读写集。 应用端在收到背书响应后,检查背书节点的签名。 排序节点在收到各个节点发来的交易后,按照交易的通道号对交易进行分类排序。 确认节点收到排序节点发来的交易后,逐笔检查区块中的交易。...原创 2018-09-06 08:48:12 · 925 阅读 · 0 评论 -
搭建超级账本hyperledger中fabric运行
搭建超级账本hyperledger中fabric运行原创 2018-09-09 14:50:47 · 1054 阅读 · 0 评论 -
ubuntu16运行Fabric 1.0报错
-09-09 03:51:38.588 UTC [msp] GetDefaultSigningIdentity -> DEBU 018 Obtaining default signing identity fatal error: unexpected signal during runtime execution [signal SIGSEGV: segmentation violat...原创 2018-09-09 11:55:41 · 2424 阅读 · 2 评论 -
fabric组件
Fabric的组件包括客户端(Client)、网络节点(Peer)、CA(Certificate Authority)节点和排序节点。客户端的主要作用是和fabric系统交互,实现对区块链系统的操作。这种操作分类管理类和链码类。管理类操作包括启停节点和配置网络等;链码类操作主要是链码的生命周期管理,如安装、实例化以及调用链码。最常用的客户端是命令客户端(CLI),此外是Fabric SDK开发...原创 2018-09-05 22:19:19 · 1491 阅读 · 0 评论 -
hyperledge fabric基础架构
Fabric项目的目标是实现一个通过用的许可链的底层基础框架,为了适用于不同的场合,Fabric采用模块化架构提供可切换和可扩展的组件,包括共识算法、加密安全、数字资产、记录仓库、智能合约和身份鉴权等服务。fabric克服了比特币等公有链项目的缺陷,如吞吐量低、交易公开无隐私性、无最终确定性以及共识算法低效等问题,使得用户能够方便地开发商业应用。但是,fabric作为新的权限链的项目,也存在不足之...原创 2018-09-05 22:02:01 · 910 阅读 · 0 评论 -
快速搭建超级账本Fabric 1.0的环境
请参考深蓝大神的博客 http://www.cnblogs.com/studyzy/p/7437157.html https://blog.csdn.net/so5418418/article/details/78355868/原创 2018-09-09 00:03:29 · 1124 阅读 · 0 评论 -
超级账本fabric集群
定义fabric集群 1 证书以及通道的初始区块生成 启动fabric集群之前,先使用cryptogen和configtxgen来生成必要的身份证书(存放在crypto-config目录)、通道初始区块(存放在config目录)等文件。在configtx.yaml文件定义只包含一个组织的应用通道,链码将会在该通过中部署。 生成好cryptoconfig和config目...原创 2018-09-08 19:32:45 · 940 阅读 · 0 评论 -
超级账本测试链码
链码的测试需要通过完整的fabric网络,搭建测试网络的步骤。 启动网络 进入chaincode容器,编译并运行链码 进入CLI容器并初始化链码,部署通道 invoke和query链码 开发链码时可以通过上述过程进行测试,但需要避免使用相同的链码ID,以免链码实例化失败。另外,对于链码升级来说,链码的ID应该保持不变,同时新链码的版本需要比先前实例化的版本高,并通过upgrade交易来更...原创 2018-09-08 19:16:41 · 1004 阅读 · 0 评论 -
超级账本链码
fabric中的智能合约称为“链码”(chaincode)。链码部署在节点上,采用容器技术形成隔离的运行环境。链码的生命周期管理主要包括链码的安装、实例化、调用和终止等。 作为联盟链方案,fabric包含管理成员身份的功能。参与区块链网络成员身份必须是明确的,成员之间知道批次组织身份信息,每个交易都有明确的参与方和背书方,这是绝大多数商用系统的需求。相比之下,许多公有链的用户身份是匿名的,参与方...原创 2018-09-06 10:42:28 · 1303 阅读 · 0 评论 -
fabric总体架构图
fabric总体架构图fabric的总体架构分为网络层、核心层、服务层以及接口层。网络层由多个分布式节点组成。这些节点构成了一个p2p的网络,采用Gossip协议进行节点间互相发现和数据传输,并采用gRPC的框架互相调用接口功能。核心层中的共识机制是区块链系统的核心模块,它确保各个节点对数据达成共识。...原创 2018-09-06 19:02:53 · 5508 阅读 · 0 评论 -
超级账本hyperledger fabric中cryptogen生成组织成员身份
Fabric提供了cryptogen ( Crypto Generator )工具 cryptogen 可以快速地根据配置自动批量生成所需要的密钥和证书文件, 或者查看配置模板信息 cryptogen 工具支持从配置文件(通过-config 参数指定,通常命名为crypto-config.yaml)中读入YamL 格式的配置模板信息 crypto-config.yaml的路径为 fabric-sa...原创 2018-09-13 22:37:37 · 1240 阅读 · 0 评论 -
超级账本hyperledger fabric排序服务原理
排序服务是由一组orderer节点(Ordering Service Node,简称OSN)组成,OSN在网络中的角色是代理节点,多个OSN会对接到Kafka集群,利用Kafka完成共识功能。 客户端APP通过SDK将验证后的交易信息发送给OSN,然后,OSN对消息做初步校验后,封装成Kafka消息格式,发送到Kafka集群,对交易信息统一排序。 ...原创 2018-09-13 15:16:15 · 2053 阅读 · 0 评论 -
链码生命周期图
链码生命周期,包括初始状态,等待安装、等待实例化、运行和停止。peer chaincode install 链码打包成可部署格式,并将其存入到背书节点的文件系统 peer chaincode instantiate 把安装到背书节点上的链码实例化到指定的通道上,该命令会在节点上创建运行链码的docker容器,并初始化链码 peer chaincode invoke 调用指定链码,...原创 2018-09-07 10:25:45 · 2457 阅读 · 0 评论 -
超级账本应用程序开发
前期准备 安装docker、docker-compose、golang以及git软件 定义fabric集群 证书以及通道的初始区块生成 编写peer的docker-compose文件 启动fabric集群 链码设计–定义数据结构—实现修改方法–实现invoke方法 链码部署–创建cli容器—实例化链码 sdk...原创 2018-09-07 10:26:43 · 1226 阅读 · 0 评论 -
超级账本共识机制
fabric的网络节点本质是互相复制的状态机,节点之间需要保持相同的账本状态。为了实现这个目的,各个节点需要通过共识过程,对账本状态的变化达成一致性的认同。因为账本记录得失系统中发生的交易,共识机制实际上就是要确保各个节点看到相同的交易顺序和交易内容,从而保证各个节点都处于相同的状态。 fabric的共识过程包括3个阶段:背书、排序和校验。 背书 在背书的阶段,背书节点对客户端发来的交易预案...原创 2018-09-07 10:27:10 · 4476 阅读 · 0 评论 -
超级账本中分布式账本
fabric里的数据以分布式账本的形式存储。账本由一系列有顺序和防篡改的记录组成,记录包含着数据的全部状态改变。账本中的数据项以键值对的形式存放,账本中所有的键值对构成了账本的状态,也成为世界状态。每一个通道中唯一的账本,有同道中所有成员共同维护。每个维护节点上都保存了它所属通道的账本的一个副本,因此是分布式账本。对账本的访问需要通过链码实现对账本键值对的增加、删除、更新和查询等操作。账本由区块链...原创 2018-09-07 10:27:22 · 2816 阅读 · 0 评论