这篇文章的灵感来自于SAP官方帮助中关于端到端加密的文章。在这里,我想继续这个过程,因为如果精明的开发人员决定实现相同的功能,这可能会节省时间。与往常一样,您可以在我的存储库中找到完全可部署的代码。
假设您的SCP Hyperledger Fabric服务实例已经设置。如果没有,请按照这个伟大的博客进行说明。
请在这里查看所需的开发工具。
如果提交到Hyperledger的数据是机密的(如个人地址详细信息或商品价格),我们需要对其进行加密,并且我们不希望它以纯文本形式存储在任何渠道或作为私人数据。
因此有效载荷和加密密钥将直接传递到链码,在链码中,它们将用于生成加密值,并持久保存到Hyperledger。
我们将有效载荷与加密密钥一起传递到Hyperledger。重要的是,加密密钥不应存储在分布式账本中,因此,淘客采集,大数据的未来,大数据发展前景,将在链码调用的一个单独部分(称为瞬态字段)中传递。瞬态数据不应提交到账本中,以保持此数据的私密性。
我们将使用同一密钥进行加密解密,因为这只是模拟共享密钥使用的一个基本示例。
一旦我们准备好一个通道,让我们为它创建一个服务密钥:
保留所有默认值:
然后使用创建的密钥实例化通道:
一旦通道实例准备好,可通过仪表板访问:
现在您可以下载链码存档,安装到您的频道并实例化:
请保留所有默认设置。我们在这里不上传任何集合配置。
现在试用的对等实例应该已经启动并运行,上面安装了您自己的链码。
API集线器可以通过左下角的API按钮直接从Hyperledger Fabric Dashboard打开:
为了调用Hyperledger Fabric API,云主机服务器,怎么做淘客,我们首先需要登录并配置调用环境(这是API调用的目标和附加参数)。我们的试用帐户很可能会分配给eu10数据中心:
您需要提供客户端Id、机密和标识(所有这些值都可以从服务密钥中获取,其详细信息可以在Hyperledger Fabric Dashboard的Channel选项卡上找到):
设置"Save this environment for future sessions"(为以后的会话保存此环境)收音机按钮并保存。我们已经准备好调用链码API了。
因此,一旦我们选择了"eu10"配置,我们就可以尝试通过公共调用端点调用链码:
我们需要提供以下参数:
链码ID–这可以从Hyperledger结构仪表板的链码选项卡中获取版本–我们可以在此处键入最新版本body–它将包含以下JSON对象:
一旦我们执行调用,我们将收到状态200(成功):
上面的加密密钥必须是base64值。您可以通过以下命令在Linux(或git for Windows)控制台中自己生成一个:
让我们尝试使用以下正文负载对值进行解码:
我们将收到包含已解码消息的以下响应:
如果我们尝试使用不正确的解密密钥,服务将失败:
此基本示例可以可以进一步发展到更复杂的场景,例如使用数字签名的非对称密钥加密或消息内容验证。该方法有助于在区块链网络上仅为授权对等方提供数据的安全存储和检索。