Fabric 1.3中的新增的idemixer(Identity Mixer)以前不大懂zero-knowledge proof(零知识证明),原本觉得PKI基础的MSP是比较常用和稳健的方式,新加个验证方式是不是有点增加复杂性...如果使用Fabric的idemixer 2.1 测试开发环境使用idemixgen命令行 具体参看https://hyperledger-fabric.readthedocs.io/en/latest/...idemixgen.html 2.2 生产环境使用Fabric CA 1.3以上版本 (1) Fabric CA配置 fabric-ca-server init 会生成IssuerPublicKey.../pkg/cid" "github.com/hyperledger/fabric-chaincode-go/shim" pb "github.com/hyperledger/fabric-protos-go...But got: %v", args[0])) } 2.3 idemixer的限制 还不大完善,基本现阶段还是推荐用传统的MSP方式,具体参考https://hyperledger-fabric.readthedocs.io
Hyperledger Fabric 超级账本的硬伤 Netkiller Blockchain 手札 本文作者最近在找工作,有意向致电 13113668890 Mr....netkiller.sourceforge.net 微信订阅号 netkiller-ebook (微信扫描二维码) QQ:13721218 请注明“读者” QQ群:128659835 请注明“读者” 在使用超级账本的过程中我发现一个问题...count = count + 1 stub.PutState(key,count) return shim.Success(count) } 使用多线程请求chaincode中的...很多场景需要更新区块中的数据,如果频繁操作,就会产生覆盖,目前Hyperledger Fabirc 并没有提供解决方案。 1....mutex 也无法解决上面的问题,因为 mutex 锁只能工作在一个进程中。
Fabric CA是Hyperledger fabric的证书认证中心,提供以下功能:用户信息的登记与注册,数字证书的颁发与管理。...前言 之前使用CA服务一直是在docker容器中运行下载好的CA镜像,在应用程序中通过Node SDK中集成的接口来访问CA服务器,这次尝试手动部署CA服务。.../hyperledger/fabric-ca/cmd/fabric-ca-client go get命令会自动获取源码并编译至$GOPATH/bin,我的目录是~/go/bin,目录下出现编译好的二进制可执行文件.../server/fabric-ca-server目录中会生成CA配置文件,证书私钥,数据库文件等(这些是在CA容器中生成并映射到外部的),并且开始监听端口。...然后在命令行中初始化和启动CA服务器; 另一种方法是在docker容器中运行fabric-ca镜像,镜像中包含编译好的可执行文件,镜像可以从Docker Hub直接下载,也可以在fabric-ca目录下利用
而HyperLedger Fabric在1.0对系统架构进行了升级,使得事务的处理更加复杂。...membership也就是我们在1.0中说的CA节点,其中也涉及到很多密码学和安全相关的知识,我们暂且按住不表,只说SDK、Peer和Orderer之间的关系。...二、账本 要了解Fabric对事务的处理,首先我们需要了解Fabric中的账本,也就是实际存储和查询数据的地方。...这是IBM微讲堂中对Fabric账本的示意图: Fabric 1.0中的账本分为3种: 区块链数据,这是用文件系统存储在Committer节点上的。区块链中存储了Transaction的读写集。...三、事务提交过程 了解了Fabric中的账本,接下来我们来了解一下对这些账本的操作涉及到的Transaction。
Hyperledger Fabric Node.js开发中如何使用日志?本教程就来演示下如何使用hyperledgefabric node.js客户端日志记录功能。...概述 hyperledger fabric node.js客户端日志记录使用node.js winston 开发包。当node.js应用程序首次加载hyperledger结构包时,日志记录被初始化。...将default.json配置文件中的日志设置改为一个条目: "hfc-logging": "{'debug':'console', 'info':'console'}" 使用环境设置覆盖修改配置: export...export HFC_LOGGING='{"debug":"/temp/debug.log","info":"console"}' 使用应用程序中的日志记录 当需要记录应用程序代码中的条目以及HyperledgeFabric...这里是Hyperledger Fabric Node.js开发中如何使用日志
docker images查询了下hyperledger/fabric-couchdb版本都是latest....具体使用docker inspect hyperledger/fabric-couchdb 才查询到实际版本为 ".base.version": "amd64-0.4.14", 这个是当前最新的版本,查看...# if ca version not passed in, default to latest released version export CA_VERSION=$VERSION # current...实际上hyperledger fabric-couchdb 0.4.14镜像使用的couchdb版本为2.2.0比较新了。...而hyperledger fabric-coudb 0.4.13镜像使用的couchdb为2.1.1。应该是版本变化有些大。
在联盟链Hyperledger Fabric中,在Fabric v2.3版本出来之前,一个新节点加入通道(通道,Fabric的一个特性,可以理解为一个通道就是一个区块链网络,不同通道间的账本是独立的,节点可以加入多个通道...由于通道中组织之间的私有数据可能有所不同,因此快照中不包含私有数据(私有数据,Fabric实现数据隐私保护的特性),但通过快照加入通道的节点,将从快照中发现其所属的私有数据集,并直接从属于这些集合成员的节点获取相关的私有数据...数据同步是区块链中非常常见的场景,所以实现数据的快速同步也将是区块链的必备能力之一。Hyperledger Fabric作为最具代表的联盟链引擎,一直在不断更新迭代,功能也越来越完善。...附录: Fabric官方学习文档:https://hyperledger-fabric.readthedocs.io/en/latest/whatis.html Fabric私有数据:https://hyperledger-fabric.readthedocs.io.../en/latest/private-data/private-data.html Fabric账本快照:https://hyperledger-fabric.readthedocs.io/en/latest
Hyperledger fabric v1.4.0 于2019年1月9日更新【更新说明】,主推稳定性和线上生产,因此推荐大家使用这个版本学习或者应用开发。...接下来会更新一些文章,介绍一些本人在开发和学习过程中遇到的“坑”,避免大家踩进去。 一、开发环境 强烈推荐CentOS7 ,相对稳定。...chaincode部署完成之后,用fabric-sdk-go来调用链码中的函数,报了个错误在网上一直没找到相应的解决办法,期间使用了fabic1.1.1、1.3.1、1.4.0,sdk也换了几个版本没有解决...[github] 上的fabric-sdk-go版本最新的只有v1.0.0,还是alpha4,简直“深坑”!...相比较之下,fabric-sdk-node 一直在更新稳定版本,所以本人最后决定用node版本的sdk进行应用的开发。
但是如果你想了解BYFN是如何工作的,你可以参考: 1.Hyperledger Fabric官方BYFN教程 2.我之前关于BYFN的文章 基于帐户的钱包模型 基于帐户的钱包模型是交易系统的实现之一,一般而言系统中存在一些钱包...[可选] Hyperledger Fabric中有两个数据库选项用于保存超级账本的world state:LevelDB和CouchDB,在本教程中,为了简单起见,我将使用LevelDB。...[可选]在我的负载测试和一些关于Hyperledger Fabric性能的论文中,LevelDB的性能优于CouchDB。...第5步——在BYFN中运行Chaincode 5.1 安装相关项目 我们在本教程中使用Hyperledger Fabric v1.4。...这里是原文通过Java Chaincode实例学习交易系统中基于Hyperledger Fabric帐户的钱包模型 (adsbygoogle = window.adsbygoogle || [
Hyperledger Fabric CA 是 Hyperledger Fabric 的证书颁发机构 (CA)。...一、功能: 身份注册,或作为用户注册表连接到 LDAP 颁发注册证书 (ECerts) 证书更新和撤销 二、组成 1.Hyperledger Fabric CA服务器 2.Hyperledger Fabric...在本地目录中创建一个名为fabric-ca-server-config.yaml的默认配置文件,可以自定义。.../fabric-ca-server:/etc/hyperledger/fabric-ca-server" command: sh -c 'fabric-ca-server start -b admin...:adminpw' 在与docker-compose.yml文件相同的目录中打开终端并执行以下命令: docker-compose up -d 3.创建自己的Fabric CA镜像 cd $GOPATH
一、我的环境: 图片.png 我使用的是Hyperledger fabric1.4.4版本 参照官方文档:https://hyperledger-fabric.readthedocs.io/en/release...-1.4/write_first_app.html 二、实验前准备 如果此前运行了其他的fabric测试程序,在试验前首先关闭其他的容器和网络 docker rm -f $(docker ps -aq)...docker rmi -f $(docker images | grep fabcar | awk '{print $3}') 图片.png 检查正在运行的docker容器,可以看到已经没有正在运行的容器...图片.png ---- 三、实验过程 进入~/go/src/github.com/hyperledger/fabric/scripts/fabric-samples/fabcar/目录 图片.png...凡事参考相应版本的官方文档最有效,各种各样的博客五花八门,文章质量参差不齐,容易误导。
linux-amd64.tar.gz Docker-compose安装参考:https://github.com/docker/compose/releases 注:Go安装建议增加/etc/profile中的环境变量.../hyperledger/fabric-samples.git cd fabric-samples git checkout v1.4.4 binariesInstall:从下载地址下载需要的二进制文件和配置文件...,并在fabric-samples解压 对应下载地址(建议翻墙) https://github.com/hyperledger/fabric-ca/releases/download/v1.4.0/hyperledger-fabric-ca-linux-amd64...-1.4.0.tar.gz 在fabric-samples目录中解压 tar -xvf hyperledger-fabric-ca-linux-amd64-1.4.0.tar.gz tar -xvf hyperledger-fabric-ca-linux-amd64...-1.4.0.tar.gz dockerInstall:下载需要的docker镜像 hyperledger/fabric-ca:1.4.0 hyperledger/fabric-tools:1.4.0
Hyperledger 概述 要学习Hyperledger Fabric,先来看看它的母项目Hyperledger是什么。...Fabric CA模块是独立的,可以管理证书服务,也可以允许第三方 CA 的接入,大大拓展的系统的应用范围。...如上图所示,Fabric CA提供了客户端和 SDK 两种方式来和 CA 进行交互,每个Fabric CA都有一个根 CA 或中间 CA,为了进一步提高 CA 的安全性,可以采用集群来搭建中间 CA。...链码 Fabric也有类似以太坊的智能合约,称为 Chaincode 链码,智能合约使外部的应用程序可以和Fabric网络中的账本进行交互。...总结 以上就是对Hyperledger Fabric架构的梳理了,虽然取舍了部分去中心化的理念,但是作为一个面向企业应用的开源联盟链,它鼓励了更多企业参与到分布式账本技术的建设和应用中来,现在国内也有很多联盟链的自研平台
balance-transfer是fabric-samples中的一个示例,基于fabric Node SDK实现了一个较为完整的应用程序,这里选择的是v1.0.0版本。...五、修改CA服务器配置文件 这个文件的改动过程比较复杂,因为它是在CA节点启动时在内部自动生成的,想要修改只能够先将内容复制到外部进行改动,再映射到内部达到覆盖的效果。...该文件位于CA节点的文件系统中,需要在启动CA节点后进入容器内部: docker exec -it ca_peerOrg1 // 假设此时还未修改组织名称 cat /etc/hyperledger...这样,新的ca配置文件就在容器外部生成了,在下一步骤会将其映射到容器内部,这样可以覆盖自动生成的配置文件,从而达到修改的目的。.../fabric-ca-server-config.yaml:/etc/hyperledger/fabric-ca-server/fabric-ca-server-config.yaml 七、修改应用程序代码
Hyperledger Fabric当前最新版本为1.2, 自行参考官方安装文档 https://hyperledger-fabric.readthedocs.io/en/release-1.2/prereqs.html.../bootstrap.sh 进行安装 当前目录下载fabric-samples目录, 里面的bin目录包含了fabric-tools常用的的cryptogen, peer等工具, 这里我们移动bin到一个外部目录并配置到.../etc/profile环境变量中 PATH=/mnt/sda3/hyperledger-fabric/bin:$PATH Export PATH 在阿里云碰到多下载很慢的问题, 这个时候可以尝试手工下载控制台提示下载的文件...https://nexus.hyperledger.org/content/repositories/releases/org/hyperledger/fabric/hyperledger-fabric...repositories/releases/org/hyperledger/fabric-ca/hyperledger-fabric-ca/linux-amd64-1.2.0/hyperledger-fabric-ca-linux-amd64
一、说明 区块链网络的核心是分布式账本,在这个账本中记录了网络中发生的所有交易信息。 Hyperledger Fabric是一个是开源的,企业级的,带权限的分布式账本解决方案的平台。...Hyperledger Fabric被设计成支持不同的模块组件直接拔插启用,并能适应在经济生态系统中错综复杂的各种场景。...https://github.com/hyperledger/fabric-ca/releases/download/v1.5.2/hyperledger-fabric-ca-linux-amd64-...-zxvf hyperledger-fabric-ca-linux-amd64-1.5.2.tar.gz 执行以下命令复制 fabric-samples 目录中 cp -r bin fabric-samples...测试网络脚本还提供了使用证书颁发机构(CA)的网络的启动选项。在网络中每个组织操作一个CA(或多个中间CA)来创建属于他们的组织身份,所有由该组织运行的CA创建的身份享有相同的组织信任根源。
前言 上一篇文章《Hyperledger Fabric 架构详解》对Fabric的架构和工作原理进行了详细的解读与分析,那作为一个企业级的区块链系统,它是如何根据复杂的业务需求搭建网络,在运行过程中存在哪些安全问题...Hyperledger Fabric 网络 Hyperledger Fabric 应用场景实例 业务角色 假设有一个采用Fabric系统的应用场景里。...接下来,我将一步一步说明网络的搭建过程。 创建网络并添加网络管理员 每一个组织需要通过MSP中的 CA 机构颁发的证书才能加入网络,因此,每个节点都需要有相应的 CA。...智能合约安全 Fabric的链码需要安装在节点上并且实例化,安装链码需要有 CA 的验证,因此要注意权限管理;启动后是运行在独立的 Docker 容器中的,更轻量级,但是因为它能够访问Fabric网络,...在这种机制下,真实的数据会通过gossip协议发送到指定的节点,数据存放私有数据库中,只有授权节点可以通过链码进行访问,因为这个过程并没有涉及到排序服务,所以排序节点也无法获取。
博主之前的文章都是教大家怎么快速的搭建一个Fabric的环境,但是其中大量的工作都隐藏到了官方的脚本中,并不方便大家深入理解其中的过程,所以博主这里就将其中的过程一步步分解,方便大家!...这些证书本来应该是由CA来颁发,但是我们这里是测试环境,并没有启用CA节点,所以Fabric帮我们提供了一个工具:cryptogen。...=/etc/hyperledger/fabric/tls/ca.crt working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer...3.3配置CLI CLI在整个Fabric网络中扮演客户端的角色,我们在开发测试的时候可以用CLI来代替SDK,执行各种SDK能执行的操作。CLI会和Peer相连,把指令发送给对应的Peer执行。...CLI的配置在docker-compose-cli.yaml中,我们看看其中的内容: cli: container_name: cli image: hyperledger/fabric-tools
安装nodejs 从这里下 https://npm.taobao.org/mirrors/node/ 随便选择版本,我这里选择的6.11.3 LTS版. cd ~ echo $PWD /home/johnny...:x86_64-1.0.2 docker pull hyperledger/fabric-kafka:x86_64-1.0.2 docker pull hyperledger/fabric-ca:x86...hyperledger/fabric-kafka:x86_64-1.0.2 hyperledger/fabric-kafka:latest docker tag hyperledger/fabric-ca...:x86_64-1.0.2 hyperledger/fabric-ca:latest docker tag hyperledger/fabric-ccenv:x86_64-1.0.2 hyperledger...clone https://github.com/hyperledger/fabric-ca.git 执行下面的命令,搭建一个fabricV1.0 beta 网络,包括:6 个docker
但是在实际生产环境中,我们肯定不能这么做,我们应该为每个Org建立一个CA,由CA来管理其中的用户。...下面我们就试着讲Fabric CA集成到整个Fabric网络中,并用CA Client生成新用户,最终使用新用户调用ChainCode,验证新用户的合法性。...文件,增加CA容器 我们就以给org1这个组织增加CA容器为例,打开e2e_cli文件夹中的docker-compose-cli.yaml ,增加以下内容: ca0: image: hyperledger.../fabric-ca environment: - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server - FABRIC_CA_SERVER_CA_NAME...关于具体的修改方法,参考官方文档:http://hyperledger-fabric-ca.readthedocs.io/en/latest/
领取专属 10元无门槛券
手把手带您无忧上云