我们希望与共享的Hyperledger Fabric网络上的合作伙伴组织交换已签名的CDS软件包。我们正在根据https://hyperledger-fabric.readthedocs.io/en/latest/chaincode4noah.html#packaging上的《操作员指南》进行工作。
我们能够毫无问题地接收和安装已签名的软件包,但是我们如何知道要安装的软件包呢?我们的安装过程要求检查我们收到的内容,并可能还会针对要安装的对象创建测试。
我的问题是:我们如何检查合作伙伴组织要求安装的源代码?如果我们无法检查它,那么我们就没有真正的透明度我们期望达成的共识。
我们尝试从.pak文件中提取gzipped对象,然后将其解压缩,但.gz格式似乎不是标准格式。我怀疑我们在这里缺少程序或工具方面的基本知识。
作为参考,我们正在提取如下代码段:
<%#string.Format(new System.Globalization.CultureInfo("en-US"),"{0:N0}",Eval("Netprofit")) %>
然后我们以这种方式提取压缩的“代码”部分(在我们的示例签名包中,该文件位于文件的“ 1.2.1.3”,但可能与您有所不同)
protoc --decode_raw < test_cc_signed_package.pak > test_cc_signed_package.decoded
输出的格式是我们可以进行比较的格式,我们希望将其保存到二进制文件中并简单地将其压缩。但是Gzip拒绝解码文件,并在xxd中对其进行检查,我们可以看到gzip格式不正确。
答案 0 :(得分:1)
也许您可以要求合作伙伴组织将打包的文件发送给您,以便您可以自己打包,然后将其与应该安装的软件包进行比较?