14.2 HTTP API

  1.接入参数

序号 参数 含义 参数值
1 url 网关地址 https://didservice.bsngate.com:18602
2 projectId 项目ID 8320935187
3 token 项目KEY 3wxYHXwAm57grc9JUr2zrPHt9HC

  2.公共参数

公共请求头参数
序号 参数 参数说明
1 token 3wxYHXwAm57grc9JUr2zrPHt9HC
2 projectId 8320935187
3 Content-Type application/json
公共请求参数
序号 参数 类型 必传 参数含义
1 RequestParam<T> 公共参数
RequestParam
1 projectId String 项目ID
2 did String DID标识
3 data T 任意类型数据
4 sign String Secp256k1签名
公共响应参数
序号 参数 类型 参数含义
1 ResultData<T> 公共响应数据
ResultData
1 code Integer 返回码
2 msg String 提示信息
3 data T 任意类型数据

  3.创建DID过程介绍

  创建DID的过程中会生成公私钥信息,为了避免私钥的远程传输,BSN数字身份服务不提供创建DID的过程,开发者可按下述介绍本地完成开发,或者可以使用、参考SDK内的实现过程。

  1)通过椭圆曲线算法Secp256k1生成两对公私钥信息;

  2)保存私钥,指定主备公钥拼装Base DID Document,其内容如下示例:

  {
   "@context": "https://w3id.org/did/v1",
   "authentication":
   {
      "type": "Secp256k1",
      "publicKey": "28986472722394106073871327423452879123214061743224210681401278929598807211140001274507530324221923795865447680836742348963337343510229880669968499735858"
   }
   "recovery":
   {
      "type": "Secp256k1",
      "publicKey": "9251971168042915941551574641987721503984542761641852064853964541181378832746959340151297908312616596971625573967556676367696067937171601766581709843378481"
   }
}

  3)通过base58(ripemd160(sha256()))算法生成DID标识符,其格式如下示例:

  did:bsn:3wxYHXwAm57grc9JUr2zrPHt9HC

  4)拼装DID Document内容,如下示例:

 {
   "did": "did:bsn:3wxYHXwAm57grc9JUr2zrPHt9HC",
   "version": 1,
   "created": "2021-05-20T16:02:20Z",
   "updated": "2021-05-20T16:02:20Z",
   "authentication":
   {
      "type": "Secp256k1",
      "publicKey": "28986472722394106073871327423452879123214061743224210681401278929598807211140001274507530324221923795865447680836742348963337343510229880669968499735858"
   }
   "recovery":
   {
      "type": "Secp256k1",
      "publicKey": "9251971168042915941551574641987721503984542761641852064853964541181378832746959340151297908312616596971625573967556676367696067937171601766581709843378481"
   }
}

  5)使用主私钥对DID Document内容进行Secp256k1签名,最终形成带有签名属性的DID Document,如下示例:

 {
   "did": "did:bsn:3wxYHXwAm57grc9JUr2zrPHt9HC",
   "version": 1,
   "created": "2021-05-20T16:02:20Z",
   "updated": "2021-05-20T16:02:20Z",
   "authentication":
   {
      "type": "Secp256k1",
      "publicKey": "28986472722394106073871327423452879123214061743224210681401278929598807211140001274507530324221923795865447680836742348963337343510229880669968499735858"
   }
   "recovery":
   {
      "type": "Secp256k1",
      "publicKey": "9251971168042915941551574641987721503984542761641852064853964541181378832746959340151297908312616596971625573967556676367696067937171601766581709843378481"
   }
   "proof":
   {
      "type": "Secp256k1",
      "creator": "did:bsn:3wxYHXwAm57grc9JUr2zrPHt9HC",
      "signatureValue": "zD5nt+P/Ga/CRG2hJU/SMRXy210CLdvATsxQdPxTEy9Mc9Y0OSFpE3Yu5k2+OjQKVOtu5of9VFbgO3Zljw/vQxs="
   }
}
Copyright 北京红枣科技有限公司

results matching ""

    No results matching ""

    results matching ""

      No results matching ""