关于区块链:BSNDDC基础网络详解十官方DDC应用SDK

35次阅读

共计 4169 个字符,预计需要花费 11 分钟才能阅读完成。

官网 SDK 是 BSN 联盟为平台方推出的可疾速接入 DDC 网络的工具包,目前 DID 和各个凋谢联盟链的官网 DDC SDK 都应用 Java 语言开发,其它支流语言的 SDK 依据市场反馈咱们将陆续减少。如果算力核心方和平台方的业务零碎的开发语言与 SDK 不匹配,可将 JAVA 的 SDK 封装老本地服务进行调用,或参照源码进行重构。如果在这方面有任何疑难,能够在专享的技术支持群外向 DDC 网络技术人员征询。

01

DID SDK

DID(Decentralized Identity)即分布式数字身份,算力核心方和平台方仅需注册一次 DID,所以倡议平台方独自应用 DID SDK,无需将其集成到业务零碎内。

DID 除了 Java 语言开发的 SDK 外,也提供了 HTTP API,平台方能够参考:

HTTP API

1. 接入参数

2. 公共参数

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="
   }
}

本地组装 DID Document 内容后对接 DID Document 上链接口实现 DID 的注册。可参考:

DID Document 上链

应用 SDK 注册 DID 后,返回数据里便间接生成了 DID 标识 (did) 和 DID 签名值 (didSign);对接 HTTP API 注册 DID 后,还需应用主私钥(authKeyInfo.privateKey)对 DID 标识(did) 进行 k1 算法签名方可生成 DID 签名值。

02

官网 DDC 利用 SDK

官网 DDC 利用 SDK 是 BSN 联盟和各个链技术方联合推出的一个可疾速调用官网 DDC 合约业务办法的工具,外面集成封装了与 DDC 凋谢联盟链的通信办法、本地算法以及官网 DDC 合约的代理类,算力核心方和平台方都能够通过 DDC SDK 调用官网 DDC 合约,并能够基于 DDC SDK 进行定制开发调用部署在 DDC 网络中本人的智能合约。须要留神的是,算力核心方及其利用开发者应用官网 DDC 利用 SDK 进行链上交易解决时,需通过算力核心的链节点网关与部署在算力核心本地的各个凋谢联盟链节点交互,请参考算力核心链节点网关接入阐明:

算力核心链节点

节点网关

节点网关部署阐明,请参考:

https://github.com/BSN-DDC/ddc-kong-gateway

节点网关接入阐明,请参考:

https://github.com/BSN-DDC/Data-Center-Document/blob/main/%E9%93%BE%E8%8A%82%E7%82%B9/%E7%AE%97%E5%8A%9B%E4%B8%AD%E5%BF%83%E8%8A%82%E7%82%B9%E7%BD%91%E5%85%B3%E6%8E%A5%E5%85%A5%E8%AF%B4%E6%98%8E.pdf

中移链

中移链节点部署阐明,请参考:

https://github.com/BSN-DDC/Data-Center-Document/blob/main/%E9%93%BE%E8%8A%82%E7%82%B9/%E4%B8%AD%E7%A7%BB%E9%93%BE%E5%A4%96%E9%83%A8%E8%8A%82%E7%82%B9%E5%85%A5%E7%BD%91%E6%89%8B%E5%86%8C.md

文昌链

文昌链节点部署阐明,请参考:

https://github.com/BSN-DDC/Data-Center-Document/blob/main/%E9%93%BE%E8%8A%82%E7%82%B9/%E6%96%87%E6%98%8C%E9%93%BE%E5%A4%96%E9%83%A8%E8%8A%82%E7%82%B9%E5%85%A5%E7%BD%91%E6%89%8B%E5%86%8C.md

泰安链

泰安链节点部署阐明,请参考:

https://github.com/BSN-DDC/Data-Center-Document/blob/main/%E9%93%BE%E8%8A%82%E7%82%B9/%E6%B3%B0%E5%AE%89%E9%93%BE%E5%A4%96%E9%83%A8%E8%8A%82%E7%82%B9%E5%85%A5%E7%BD%91%E6%89%8B%E5%86%8C.md

DDC 平台方因为没有部署在本地运行的凋谢联盟链节点,需通过 BSN 联盟提供的官网 DDC 凋谢联盟链网关与各个凋谢联盟链接点交互,请参考官网 DDC 凋谢联盟链网关接入阐明:

官网 DDC 凋谢联盟链网关

(仅对 DDC 平台方用)

文昌链:

https://bsnbase.com/static/tmpFile/bzsc/openper/7-3-1.html

武汉链:

https://bsnbase.com/static/tmpFile/bzsc/openper/7-3-3.html

泰安链:

https://bsnbase.com/static/tmpFile/bzsc/openper/7-3-2.html

中移链:

https://bsnbase.com/static/tmpFile/bzsc/openper/7-3-6.html

遵义链:

https://ccn.bsnbase.com/static/tmpFile/bzsc/Guide/3-3.html

内容援用于《BSN-DDC 根底网络帮忙手册》,手册版本号:2.2.1,订正工夫:2023-04

-END-

正文完
 0