Hyperledger Fabric Caliper 未使用证书颁发机构 (CA) 服务器提交交易

问题描述

在用于结构网络基准测试的 Hperledger caliper 中,我提供了包含 CA 详细信息的连接配置文件。交易成功提交到远程机器中的网络。我已经检查了对等方、订购者和 CA 的日志。只有 CA 没有对 CA 服务器的请求日志。 在我的假设中,在使用 Fabric 网关提交事务时,调用者身份必须由 CA 验证。但这不是我配置的结果。

在哪种情况下,提交交易时不需要启用 CA 服务器?

编辑:编辑问题以使问题特定于 CA 在启用 TLS 的系统上提交安全交易时的参与。
谢谢!

解决方法

看来有必要研究一下PKIcertificate(X.509)的结构。 Fabric-CA 充当组织的 CA 并管理每个组织的成员(订购者、同行、客户...)的标识符。

标识符的身份验证/授权过程可以基于颁发给 CA 的证书执行,但在此过程中不需要与 CA 相关联。

也就是说,在 P2P 验证过程中,CA 是独立的。

以旧系统为例,Facebook 已经从 digicert 颁发了证书,浏览器可以通过该证书验证标识符。 (对于根 CA 验证,它在您的浏览器或操作系统级别被列入白名单。)

当您说您为 digicert (Fabric-CA) 进行交易吞吐量基准测试时,这就像问为什么不使用 Facebook (peer/orderer)

Fabric-CA 没有账本,也不支持在区块链中读取或存储交易。它只是 CA 中的 Fabric Network,独立于事务处理基准。

  • 如果必须以实时流的形式对资源进行身份验证/授权到 CA,则会产生依赖性并导致大问题
    (例如,如果digicert的系统瘫痪,Facebook也会瘫痪)

过程中,Fabric-CA在执行benchmark之前的bootstrap阶段在网络上发布一个标识符,而不是在交易处理过程中验证(如果已经通过cryptogen提前创建,发布. 可以看作是。)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...