- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
官方的hyperledger fabric v1.0.0使用docker做了一个简单的demo。这是链接。
我做的是避开docker,直接在机器上运行。多亏了我上一个问题的答案,我已经成功地启动了 1 个独立订购者和两个同行,每个都来自一个组织。
这是订购者配置 orderer.yaml 的一部分,我确信与 tls 相关的路径设置正确。
General:
# Ledger Type: The ledger type to provide to the orderer.
# Two non-production ledger types are provided for test purposes only:
# - ram: An in-memory ledger whose contents are lost on restart.
# - json: A simple file ledger that writes blocks to disk in JSON format.
# Only one production ledger type is provided:
# - file: A production file-based ledger.
LedgerType: file
# Listen address: The IP on which to bind to listen.
ListenAddress: 127.0.0.1
# Listen port: The port on which to bind to listen.
ListenPort: 7040
# TLS: TLS settings for the GRPC server.
TLS:
Enabled: true
PrivateKey: ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key
Certificate: ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt
RootCAs:
- ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt
ClientAuthEnabled: false
ClientRootCAs:
# Log Level: The level at which to log. This accepts logging specifications
# per: fabric/docs/Setup/logging-control.md
LogLevel: debug
但是,当我想使用如下命令创建 channel 时:
export FABRIC_CFG_PATH=$PWD
export CHANNEL_NAME=my_channel
export CORE_PEER_LOCALMSPID="Org1MSP"
export CORE_PEER_TLS_ROOTCERT_FILE=crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
export CORE_PEER_MSPCONFIGPATH=crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp
export CORE_PEER_ADDRESS=127.0.0.1:7001
peer channel create -o 127.0.0.1:7040 -c $CHANNEL_NAME -f channel-artifacts/channel.tx --tls true --cafile $ORDERER_CA >&log.txt
日志报错如下:
Error: Error connecting due to rpc error: code = Internal desc = connection error: desc = "transport: authentication handshake failed: x509: cannot validate certificate for 127.0.0.1 because it doesn't contain any IP SANs"
我认为这与 tls 配置问题有关。我对它不是很熟悉。任何人都可以帮助我解决这个简单的问题并给我一个简单的解释吗?
最佳答案
该错误是由于 TLS 层的主机名验证失败引起的。TLS 证书没有 IP 主题备用名称 (SAN) - 它们只有基于 DNS 的 SAN。
最简单的做法是将主机条目添加到您的 /etc/hosts 文件中(假设您在 Linux 或 macOS 上运行)。假设您在同一台机器上运行所有内容,然后将以下行添加到您的 /etc/hosts 应该可以解决您的问题:
127.0.0.1 localhost orderer peer0.org1.example.com peer0.org2.example.com
然后确保使用主机名而不是 IP 地址:
export FABRIC_CFG_PATH=$PWD
export CHANNEL_NAME=my_channel
export CORE_PEER_LOCALMSPID="Org1MSP"
export CORE_PEER_TLS_ROOTCERT_FILE=crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
export CORE_PEER_MSPCONFIGPATH=crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp
export CORE_PEER_ADDRESS=peer0.org1.example.com:7001
peer channel create -o orderer:7040 -c $CHANNEL_NAME -f channel-artifacts/channel.tx --tls true --cafile $ORDERER_CA >&log.txt
关于hyperledger-fabric - 在对等节点上创建 channel 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46111926/
Hyperledger Aries 和 Hyperledger Indy 都是构建分布式账本应用程序的平台 为身份。 它们之间的主要区别是什么?何时选择一个来实现区块链解决方案? 最佳答案 Aries
我还是个初学者,正在开发一个项目。我已经完成了getting started来自结构文档,但我不知道应该如何将其部署到网络,以便它在多个对等点上运行。创建结构后,我想在其上部署 super 账本 Co
我是 super 账本的新手,对 super 账本 Composer 和 nodejs api 有点困惑。 我看到使用 composer 我们可以创建 Assets 、交易、参与者和链码,最后我们必须
以下是我对 Hyperledger Fabric 系统的理解。如果有任何不正确的地方,请告诉我。 1) 所以我们有同行(背书人、 anchor 人、将军(拥有分类帐的人)、排序人)。此外,当我们设置结
您好,我是 HyperLedger Fabric 和 Composer 的新手。我对两个术语感到困惑。一个是用户 在 HyperLedger Fabric 中,另一个是 参与者在 HyperLedge
Hyperledger Composer 支持现有的 Hyperledger Fabric 区 block 链基础设施和运行时,它支持可插拔的区 block 链共识协议(protocol)。 但是为什
Hyperledger Sawtooth 是否有任何组件可以执行类似于 Fabric CA 在 Hyperledger Fabric 中所做的操作? 如果没有,我可以使用任何此类外部组件吗? 最佳答案
Hyperledger Fabric 和 Hyperledger Iroha 都是构建分布式账本应用程序的平台。 它们之间的主要区别是什么?何时选择一个来实现区块链解决方案? 最佳答案 Hyperle
是否可以在 super 账本结构和 indy 之间进行跨账本身份管理? Hyperledger Fabric 和 Hyperledger Indy 之间是否可以进行通信? 我可以从 Fabric 读取
我对 Hyperledger Fabric 有一些经验。它是用于许多用例的私有(private)许可区 block 链。另一方面,Hyperledger Indy 主要用于去中心化身份管理。我想知道是
据我了解,Hyperledger Composer 环境在 Hyperledger Fabric v1.0(或 0.8?)区块链上运行。 除了与区块链交互或查看交易、参与者等的 REST 服务器之外,
我已经在 WINDOWS 10 Prof 64 BIT 系统上设置了所有先决条件。 我正在尝试运行 super 账本示例“余额转移”。我启动了节点应用程序,当我尝试注册用户时,我收到一条错误消息,并显
我以前有使用以太坊和 Solidity 的经验,但现在我想尝试为 Hyperledger 编写智能合约。 我有几个注意事项: 第一个是关于支持的数据库。根据他们的文档 (http://hyperled
Chaincode 已经安装在对等文件系统中。为什么实例化链码会启动链码容器?链码容器的目的是什么? 最佳答案 链码容器的目的是确保智能合约的执行与对等体本身隔离,从而智能合约(链码)不会因为错误或恶
我正在尝试在 OSX 上安装和运行 Hyperledger Fabric。安装似乎很顺利。但是,当我运行 cryptogen 工具时,我收到以下警告: Apples-MacBook-Pro:e2e m
我是Java开发人员,也是Hyperledger的新手。我对学习有兴趣,需要知道从哪里开始。织物与 Composer ? 最佳答案 Hyperledger Composer在Hyperledger F
谁能帮我解决这个问题:我知道在 hyperledger 锯齿波中没有“编译”和“部署契约(Contract)”。我尝试使用 tuna-chain 供应链,它似乎是一个命令 $docker-compos
我找到了将 Hyperledger Fabric 部署到“Azure Hyperledger 单一成员区 block 链”的指南 here但我无法部署我的 Composer 网络。 我没有找到任何指导
默认情况下,Hyperledger Fabric 在将许多证书保存到区 block 链之前将其存储在交易中。无论如何或任何想法/技术来最小化区 block 链中的交易大小? 任何想法都非常有用! 最佳
我最近开始尝试掌握 Hyperledger Composer 的概念。 根据我的理解,Hyperledger Composer 只是 Hyperledger Fabric 之上的一层,目的是简化事情的
我是一名优秀的程序员,十分优秀!