我想用docker(docker compose up)在Ubuntu机器上设置Hyperledger结构。是否可以从另一个系统(Mac系统)运行chaincode和nodejs代码,因为我已经在Mac上准备好了Go和nodejs
请帮我解答这个问题。是的,你完全可以这样做。使用以下示例:
在你的ubuntu机器上运行docker compose。使用ubuntu机器IP更新appconfig.json和/app/network config.json,并确保打开所需的端口
在mac上运行应用程
当我从终端运行此命令时
sudo ./byfn.sh -m up
我得到以下错误:
从通道“我的通道”开始,CLI超时为“10”秒
和CLI延迟“3”秒是否继续(是/否)?正在进行。。。
Pulling order.example.com(hyper ledger/fabric Order:最新)。。。
错误:未找到超级分类账/结构订购者的清单:最新版本
错误无法从守护程序启动网络错误响应:否
此类容器:cli
如何解决此问题?您需要下载特定于平台的二进制文件,请参阅下文中的方法。请确保你
仅使用Hyperledger Composer(与Hyperledger结构相比)适合构建企业级应用程序吗
Composer非常适合快速构建简单的应用程序,但它似乎缺少fabric的许多功能。Hyperledger Composer是Hyperledger fabric上的抽象层,就像JQuery或Angular是JavaScript上的框架一样。因此,没有织物就无法使用Composer。Composer为每个通道生成一个RESTful接口。对于企业级应用程序,建议您在一系列RESTful端点之
我目前正在从事hyperLedger composer v1.1的工作,并正在学习教程。我设法将链码安装到网络上,但实例化失败。有人能告诉我为什么吗?感谢您的帮助
命令:
编写器网络开始--网络名称教程网络--网络版本0.0.1--网络管理员--网络管理员注册机密管理员--卡PeerAdmin@hlfv1--文件networkadmin.card
正在0.0.1版上启动业务网络教程网络
处理这些网络管理员:
用户名:admin
✖ 启动业务网络定义。这可能需要一分钟。。。
错误:尝试启动业务网络
我正在尝试学习Mac上hyperledger结构的教程。()
在“创建和加入频道”部分,我有两个问题
1.我键入了导出频道_NAME=mychannel,但显然没有变化。这个命令是什么意思
2.后来,我输入了peer channel create-o order.example.com:7050-c mychannel-f./channel artifacts/channel.tx--tls--cafile/opt/gopath/src/github.com/hyperledger/fabric
当我尝试创建请求(建议)并使用
我得到这个错误:
调用orderer'order.example.com:7050'失败:orderer客户端
状态代码:(2)连接失败。描述:拨号连接
超时[order.example.com:7050]
my config.yaml
channels:
# name of the channel
mychannel:
orderers:
- orderer.example.com
orderers:
orderer.examp
我正在做一个小项目,让自己熟悉
目前,我有一个小型网络,由单个对等节点、订购方和ca节点(加上cli、chaincode和explorer)组成,在中定义
更具体地说,我已经安装了示例chaincode
分类账的初始状态为a:100,B:200,由定义
peer chaincode instantiate -n mycc -v 0 -c '{"Args":["init","a","100","b","200"]}' -C myc
当我执行传输时,一切正常
peer chaincode invo
我将学习ibm文档第3部分中的hyperledger composer教程
链接:
当我执行composer rest server命令时,实际上启动了rest服务器,我得到了以下错误,不知道如何修复它
Discovering types from business network definition ...
/usr/local/lib/node_modules/composer-rest-server/node_modules/fabric-client/lib/ChannelEv
hyperledger fabric和indy之间是否可以进行跨账本身份管理
Hyperledger Fabric和Hyperledger Indy之间是否可以通信
我可以从Fabric读取数据并将其存储在Indy中吗?反之亦然?
我的想法是使用Indy来验证身份,并使用Fabric通过使用通信凭证的链码来存储数据。棉被是它的工具吗?Hyperledger Indy是一个分散的身份识别系统,而Hyperledger Fabric是一个通用的分散的分类账,可以适应各种用例。您希望使用Indy进行系
我很难理解Hyperledger结构如何执行订单验证工作。有人能提供一个具体的例子,并将其与订单执行架构进行比较/对比吗
在比特币和以太坊中,所有对等方在块中订购交易后,在块中执行交易。
因此,它们在“订单执行验证”区块链中运行
在Fabric中,您只需要在节点的一个子集上执行事务,而不是在所有节点上执行事务,事务将以推测方式执行并发送到ordering 在比特币和以太坊中,所有对等方在块中订购交易后,在块中执行交易。
因此,它们在“订单执行验证”区块链中运行
在Fabric中,您只需要在节点的
用例:一个智能家居,它从其中的所有传感器收集原始数据,对其进行处理,并从中提取高级信息。房主可能希望与其他人共享这些信息,如医生、家人、朋友。。。因此,我试图找出处理这些数据的访问权限的最佳方法。目前,所有信息都经过仔细加密并存储在数据库中(不可信),只有拥有正确密钥的人才能正确解密这些数据
我的想法:我想使用Hyperledger结构来存储和管理这些文件的访问权限,并存储收集信息的哈希摘要,以实现不变性。一旦智能家居从原始数据生成高级信息,它就会将其存储在数据库中,然后向Hyperledger
我们有一个非常简单的设置,通过运行
/bin/bash -c "fabric-ca-server start -b admin:adminpw"
root@a7094a09a3b7:/etc/hyperledger/fabric-ca-client# fabric-ca-client enroll -u http://user:userpw@localhost:7054
如所述,在docker容器中,例如。但是当我们试图通过运行
/bin/bash -c "fabric-ca-server
我是hyperledger fabric的新手,我对现有fabcar.go进行了更改,但每次运行以前的chanincode时都不接受更改。请告诉我如何接受更改并运行修改链码?
如果我在node.js中为univerty records management编写了链码,但是我不知道我在本地机器(/opt/gopath/src/github.com/)中将链接放在哪里,路径在哪里,以及如何使用docker cli容器装载我自己的链码文件夹,我非常不知道我的新链码在哪里(示例fabric/chainc
hyperledger结构中的docker需要什么?还有为什么我们需要在不同的docker容器中运行每个进程?因为这会给系统带来额外的开销
在这种情况下是否有docker的替代方案?到目前为止,Fabric需要docker守护程序来运行链码,并且计划消除这种硬依赖性。对于结构组件,即对等方/订购方,它只是一个过程,您可以根据需要运行它。Docker只是帮助开发人员轻松地设置环境(只需拉取图像并运行即可)。到目前为止,Fabric需要Docker守护程序来运行链码,并且计划消除这种硬依赖性。对于结
我试图调用一个链码的方法,该链码是我使用Fabric NodeJS SDK实现的
链码是使用“fabric shim”v1.4.2实现的,而使用的Nodejs SDK是“fabric network”v1.4.1
调用该方法时,会出现以下错误:
错误:返回的事务失败:
错误:您已请求
调用不存在的函数:com.example.mycompany.myContract.myMethod
如果我尝试调用“org.hyperledger.fabric:GetMetadata”检索元数据,我会看到该方法
我正在寻找hyperledger explorer的一些解决方案,因为我正在尝试与具有1个订购者和2个组织节点的fabric网络集成
我已经成功地用一个节点设置hyperledger explorer,但我需要两个节点,可以显示两个节点上的块和事务
提前感谢您必须在config.json文件中添加节点地址,并在两个节点上启用外部端点
核心\对等\流言\外部端点
我也有同样的问题,问题是,我没有设置主播。我建议阅读官方文档,但如果您需要一些常规指针,您应该按照以下方式执行:在config.tx中为
对于比特币(以及一般的工作证明),有一个简单的规则,当由于任何原因有两个不同的分类账副本时,可以自动解决冲突。这条规则是链条越长越好
但在使用Fabric的情况下,如何解决冲突?说结构中从不发生冲突并不是一个答案,因为如果冲突从未发生,那么从多个对等方获得认可的目的是什么
或者,如果您的答案是结构中从不发生冲突,那么请解释为什么有人希望获得多个同行的认可
还有另一种解释这个问题的方式:假设托管在另一个组织的对等服务器上的账本副本在他们不知情的情况下被黑客入侵。现在,您的组织和其他组织有不同的记录
当遵循Hyperledger Fabric中的“构建您的第一个网络”示例时,在执行/byfn.sh generate之后,cryptogen工具正在crypto config目录中创建各种config.yaml文件,其中包含nodoous规范,Certificate字段定义为cacerts\ca.org1.example.com-cert.pem或类似内容,具体取决于组织。当我运行/byfn.sh up-l节点时,终端上会打印如下错误,表示找不到文件:
2019-12-05 16:31:55.0
我正在研究通道配置的一部分,所以我看到了json格式的配置块。
我不知道类型意味着什么,类型的数值意味着什么。
谁能给我解释一下吗?多谢各位
{
"data": {
"data": [
{
"payload": {
"data": {
"config": {
"channel_group": {
"groups": {
我在hyperledger结构中使用Raft consensus,我对它的工作原理有一些疑问
一旦领导人当选,订购者是否会一直担任领导人直到下台
是否可以在不重新启动leader容器(docker restart orderer…)但在配置块中使用一些选项(例如:forceRelectionEvery:60m)的情况下强制重新选择过程
订购者集群之间交换什么样的信息
提前谢谢
在ElectionTick期间后,追随者在未收到领导者消息的情况下启动了新的选举。看一看
如1所述,新领导人选举在Ele
我已安装Hyperledger fabric 2.0。我在fabric samples目录中运行fabcar示例。fabcar链码使用测试网络作为结构网络。我想知道fabcar示例正在使用哪个stateDB
当我运行命令dockerps-a时,我得到的输出是couchdb,如下所示
bdf6370d6f5d hyperledger/fabric-couchdb
尽管Fabric文档由于默认设置而不鼓励这种情况,但如果您注意策略,就不应该阻止这种情况,对吗?我需要建立一个有3个组织的网络。
每个将有一个订购者和一个对等者
因此,我的crypto-config.yaml for cryptogen定义了3个组织,每个组织都是订购者和对等组织:
OrderOrgs:
-姓名:Org1
域名:org1.example.com
真的吗
规格:
-主机名:订购者
org2和org3相同
PeerOrgs:
-姓名:Org1
域名:org1.example.com
我紧随其后,面临一个问题:
$./runfabcar.sh
ENV_DAL:
DISCOVERY_AS_LOCALHOST=true
run fabcar...
[fabsdk/core] 2020/07/16 03:56:03 UTC - cryptosuite.GetDefault -> INFO No default cryptosuite found, using default SW implementation
[{"Key":"CAR0&quo
在Hyperledger结构中,服务发现是否支持为私有数据收集(PDC)查找查询对等点
在由2个ORG(org1和org2)组成的通道中,如果我仅为org1创建PDC,则只有org1中的对等方保存私有数据。如果在PDC集合配置文件中指定memberReadOnly=false,则允许org2用户查询org1对等方以读取私有数据。
但这需要对等点和Fabric Java SDK中的服务发现支持
我们想要实现的目标是在客户端作为org2用户,通过Java SDK,当调用链码读取私有数据时,SDK将自
我已按如下方式设置Hyperledger结构网络(v.1.4.7):
节点1-peer0.org1.example.com(10.10.10.1)
Node2-peer0.org2.example.com(10.10.10.2)
Node3-peer0.org3.example.com(10.10.10.3)
我正在尝试使用fabric sdk py和grpc发送事务
但我犯了这个错误
ERROR:grpc._server:Exception calling application: ['
我正在尝试运行hyperledger结构上的文档之后的第一个应用程序。当我在asset transfer basic/application javascript中时,尝试运行npm安装。它在下面抛出了一个错误:
> npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
> npm WARN deprecat
系统:Hyperledger Fabric 1.4.6
拓扑:2个组织(Org1、Org2),每个组织有2个对等方(对等方1、对等方2)和Raft订购服务
背书政策:任意2个对等方
链码交互方式:通过Node.js SDK
StateDB:CouchDB
重新创建问题的详细步骤:
Org1通过链码方法stub.putState()
记录#ABC只是一个简单的单层JSON(键值对)
访问Org2 peer2的CouchDB门户,直接删除记录#ABC
通过chaincode方法stub.getSta
此处描述的以下步骤用于设置logspout:
运行此命令会产生以下错误:
./monitordocker.sh净测试
开始监视网络上的所有容器。\u测试
xxxx
docker:守护进程的错误响应:未找到网络网络测试。
curl:(7)无法连接到127.0.0.1端口8000:连接被拒绝
xxx@xxxx:/home/fabric/fabric samples/test network#
xxx@xxxx:/home/fabric/fabric samples/test network#/mo
我的意思是,如何知道对等方是否在线,每秒有多少事务用于监控
我已尝试搜索Node SDK设计规范,但没有找到幸运的
它的提案和文件都是免费的。它适用于fabric v-0.6(我去年在项目中使用了它),但目前它似乎不支持fabric v1.0
我正在启动一个网络,它将有3个对等点和一个订购者。我有4个不同的虚拟机,每个节点一个
我遵循Hyperledger Fabric的入门手册。我毫无问题地执行所有步骤。但是,在执行以下命令peer channel join-b channeldemo.block之后,我开始出现一些错误。在我看来,前面的命令生成得很好,因为我得到了以下日志:
2017-06-27 08:26:23.247 UTC [channelCmd] executeJoin -> INFO 00a Peer joined
当我在下面尝试这个时
$ curl -sSL https://some_shortened_url | bash
缩短的URL可以在的下载特定于平台的二进制文件部分找到
缩短后的URL如下所示:
我得到了下面的输出消息。似乎有错误:
==>正在下载平台二进制文件%Total%已接收%Xferd平均速度时间当前
数据加载上载总已用左速度100 22.1M 100 22.1M 0 0 1006k 0 0:00:22 0:00:22
--:--1078k
==>正在提取织物图像
==>结构映像:对
我在composer 0.11.3中使用一组Hyperledger 1.0.2 docker图像
我使用的练习网络是一个SampleParticipant和一个SampleSet。
我能够使用composer participant add和JSON片段从命令行部署参与者。
我还没有找到将SAMPLeaseSet插入资产注册表的等效命令行方法。当我使用composer rest服务器发布定义Samplesset的JSON片段时,它返回了以下错误
Error: Peer has rejected
我试图根据此处描述的规范创建自定义业务网络:
我为org1.example.com创建了5个对等点,为org2.example.com创建了一个对等点
我可以在peer0.org1.example.com上使用docker cli启动网络并安装链码,但当我尝试实例化它时,我遇到以下错误:
错误:错误背书链码:rpc错误:代码=未知描述=
启动容器时出错:API错误(404):{“消息”:“网络”\u byfn
找不到“}
以下是业务网络记录器的输出:
peer0.org1.example.com
我已克隆了结构样本,并尝试运行余额转移样本。按原样运行时,运行平稳,没有问题。但是当我删除crypto-config文件夹并使用命令cryptogen-generate--config=./cryptogen.yaml生成它时。然后,当我尝试与Jim以外的任何用户进行登录请求时,我得到一个错误,即添加日志图像。
谁能告诉我我做错了什么
系统配置
**OS**
CentOS Linux release 7.4.1708
**Docker**
Client:
Version: 17.0
我一直在hyperledger composer中构建一个应用程序。
我发现的所有与hyperledger结构相关的教程都涉及订购方、渠道、对等方、分类账等。但hyperledger composer教程中没有一个将资产、交易或参与者的概念与这些概念联系起来
例如,hyperledger composer只支持一个通道,那么如何在那里维护事务的隐私?是否通过permission.acl文件执行
也与著名的车辆生命周期网络有关
这些制造商中的每一个都会是区块链网络中的一个组织(内部有多个对等方)
在具有两个ORG1、ORG2的hyperleder结构网络中
在Org1-Peer1中,
在Org2-Peer1中
使用这些对等点创建了新的通道,部署了智能合约,然后一些事务已经在通道上完成
一段时间后,我将添加新的组织。然后向旧通道添加一个新对等点。
Org3-Peer1将添加到通道中。在这个场景中,我有一些问题
1) 新的对等方是否可以查看通道上发生的旧事务
2) 如果他能够查看旧事务,我们如何限制它?如果新组织位于同一个通道上,显然它将与其他节点同步。您可以通过结构1.1中提供的加密对其进
我很清楚,为了维护hyperledger结构中数据的安全和隐私,您需要使用不同的渠道。只有加入特定渠道的对等方才能与相应区块链的数据同步。我们如何在Hyperledger composer中利用这些概念?权限文件与隐私概念有何关系?数据是否由对等方保存,即使他们没有访问权限?在这种情况下,恶意攻击是否足以检索有关它们的数据或信息
从,必须指定“hf.IntermediateCA=true,并且
fabric-ca-server start -b admin:adminpw -u http://<enrollmentID>:<secret>@<parentserver>:<parentport>
,而我无法构建中间ca服务器
有人能给出详细的步骤吗?假设您在localhost上启动根ca localhost:7054和中间ca localhost:8054
首先,您应该通过
在fabric文档中,它表示状态数据库是事务链的索引视图,它不是必需的,因为它总是可以从该链重建
因为在我正在做的项目中,将有大量的资产,并且这些资产的最新值将被保存在状态数据库中,这将导致相当大的内存开销。大多数对等方不需要查询状态
因此,我的问题是,是否有一种方法可以禁用某些对等方上的状态数据库World state,让它们只维护链?状态数据库对于事务执行是必需的,事务依赖状态数据库生成读写集,因此无法禁用它们
从另一个角度来看,state db的存在使交易更快,因为另一个选项是在每次需要执
如何根据给定的交易id查询分类账?
我知道我可以用
GetState(key) or GetStateByRange(startkey, endkey) or even GetHistoryForKey(key)
有没有办法通过交易id进行搜索?我认为不可能直接从链码中进行搜索,因为一旦从客户端应用程序提交了交易,就可以获得txID
您可以使用sdk通过“queryTransaction()”方法从客户端应用程序查询区块链
这里是官方NodeJS Fabric SDK的链接:
在此上下文中,应用程序自己的签名是什么?使用hyperledger fabric node SDK的用户如何设置应用程序的签名?您所说的应用程序只是一个与账本对话的客户端应用程序。这里的问题不是客户端应用程序,这里的问题是您需要一个适当的背书政策,以确定任何东西如何进入分类账
想象一下这个场景
您有两个ORG,Org1和Org2,都拥有一个对等点,P1属于Org1,P2属于Org2,两个对等点在一个通道上加入,我们称之为defaultchannel
您可以部署并实例化您的链码,并设置一个1-Of
有可能吗
我知道,我们可以在发送到网络之前,这个过程使用户的密钥完全私有,即使对于管理员也是如此。但是我可以用寄存器做同样的操作吗?如果我能做到,我能在浏览器上做到吗?注册和注册是两个独立的操作。当然,如果管理员注册了一个用户,他们很可能知道注册ID和密码,并可能注册为该用户。但是在用户注册的情况下,客户端/用户具有私钥;它不与管理员共享
我为网络hyperledger结构创建了新组织。运行时(cli peer0.org1)
我收到错误消息:
获取意外状态:错误的\u请求--授权更新时出错:验证DeltaSet时出错:[Group]/Channel/应用程序的策略未满足:未能达到2个子策略的隐式阈值,需要剩余1个子策略
有人能帮我吗?谢谢大家! BAD_请求--授权更新时出错:验证DeltaSet:policy for[Group]/Channel/Application未满足时出错:未能达到2个子策略的隐式阈值,需要剩余1个子策
我是Hyperledger Fabric开发的新手,我正在尝试进行用户友好的注册
例如:
+从google帐户使用Oauth
+或者使用传统的电子邮件密码注册
我已经阅读了hyperledger fabric文档,并尝试了其中的一些示例。我只知道新身份创建过程如下:
1.使用fabric ca客户端或SDK从fabric ca服务器获取管理员身份
2.使用该管理员标识注册新标识。
3.然后,fabric ca服务器将发回新身份的ID和密码(所谓的密码)
4.用户将使用该ID和密码注册新用户,以及
我正在使用fabric node,当我使用node向管理员用户注册时,fabric可以在其下创建钱包文件夹,并使用JSON文件创建私钥和公钥,其中包括签名的身份
当我使用cmd下面的fabric ca客户端注册管理员时,它会在MSP文件夹中创建文件夹结构
./bin/fabric-ca-client enroll -d -u http://tls-ca-admin:tls-ca-adminpw@0.0.0.0:7052
如何使用fabric node enroll实现相同的文件夹结构。请向我推
我已经在aws eks上创建了HLF。当我实现它时,我尝试用3个Order实现基于kakfa的Order。它的给错像
"Error: got unexpected status: SERVICE_UNAVAILABLE -- backing Kafka cluster has not completed booting; try again later
"
我检查了订购者日志,其中一个订购者的错误仍然相同,两个订购者的错误仍然相同。请参阅随附的订购者日志屏幕截图
我建议避免使用卡夫卡,支持将被
我一直在hyperledger fabric v2.2中探索idemix。我尝试通过对等cli将事务作为idemix标识提交,但当chaincode在Java或Javascript中时,它会返回一个错误,但当使用Go chaincode时,它会工作。因此,我想知道,如果使用idemix标识提交事务,那么使用的链码语言是否有任何限制。以下是收到的日志部分
java的错误日志
Cli
链码容器
javascript的错误日志
Cli
链码容器
设置信息
结构版本:2.2
使用idemixgen工具
我正在尝试将标志“cfg.identies.allowremove”添加到我的结构ca服务器,但在运行命令时:
“结构ca服务器启动--cfg.Identifies.allowremove“I get”错误:TLS侦听失败:侦听tcp 0.0.0.0:7054:绑定:地址已在使用”
是否有任何方法可以停止此进程并使用该标志重新启动它?或者你推荐什么其他的解决方案
我需要检查/找出具有一组记录的块中是否存在特定数据。这需要在Hyperledger结构中使用零知识证明(ZKP)来完成。我检查了Idemix(Identity Mixer),但没有任何实现类似用例的示例。我需要一些参考链接来描述这种使用Hyperledger结构的实现
对hyperledger中的频道的理解有点混乱
频道内的分类账对其所有成员来说都是相同的吗
考虑一个有n个参与方的网络,该网络由一个C频道组成,其成员为1,2,3
如果交易从参与方1发送到2,它将出现在3的分类账上,因为它们都是同一渠道的一部分,但不是成员4…n,因为它们不属于C
用例:成员1与3发起交易,在这种情况下2的分类账记录不应反映该记录。这是否意味着我必须创建一个只包含1和3的新频道,或者我可以将C与某些策略一起使用
如果是前者,那就意味着为每一个可能的私人账本更新创建一个新的渠道
频
1 2 3 4 5 6 ...
下一页 最后一页 共 31 页