【问题标题】:Decrypting the payload in hyperledger在超级账本中解密有效载荷
【发布时间】:2016-07-27 15:33:03
【问题描述】:

我目前正在使用 Hyperledger Fabrics 的开发人员环境。我尝试使用 GET 来检索块信息,它确实给了我一个响应。但是,在响应中,有一个称为有效负载的组件,它的格式不可读。有没有办法让它可读/解密它?例如,在 bluemix 中,当您对“a”方和“b”方进行初始化时,有效负载显示 inita100b100。

首先,我做了这个事务/REST 请求

{
  "jsonrpc": "2.0",
  "method": "invoke",
  "params": {
      "type": 1,
      "chaincodeID":{
          "name":"mycc"
      },
      "ctorMsg": {
         "function":"invoke",
         "args":["a", "b", "100"]
      }
  },
  "id": 3
}

然后我做了这个查询请求

GET/localhost:5000/transactions/c6b0c82d-27f9-4c2c-8305-34b413d95057

并将其作为 REST 响应取回

{
  "type": 2,
  "chaincodeID": "EgRteWNj",
  "payload": "Ch8IARIGEgRteWNjGhMKBmludm9rZRIBYRIBYhIDMTAw",
  "uuid": "c6b0c82d-27f9-4c2c-8305-34b413d95057",
  "timestamp": {
    "seconds": 1469643763,
    "nanos": 524731069
  }
}

那么,如果有任何方法可以将Ch8IARIGEgRteWNjGhMKBmludm9rZRIBYRIBYhIDMTAw 解密/更改为显示A transferred 100 to b 或类似的东西,至少对于技术含量较低的用户来说是可读的?

【问题讨论】:

  • 请发布您发送的确切查询,以及您得到的确切回复。
  • 已添加@DavisBroda。
  • 您是否开启了隐私保护?
  • @DavisBroda 如何检查我的隐私是否已开启?
  • 是启动peers时的设置。这意味着它要么作为命令行参数提供,要么在配置文件之一中。

标签: ibm-cloud blockchain hyperledger


【解决方案1】:

payload刚刚被编码,你可以使用this来解码(编码是base64)。 javascript中还有this function可以解码。

如果您启用了安全/隐私,那么有效负载也会被加密,因此您需要证书来解密有效负载,然后才能对其进行解码。

【讨论】:

    猜你喜欢
    • 2017-01-02
    • 1970-01-01
    • 2020-04-26
    • 2016-11-03
    • 2012-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多