1. createWeId
基本信息
- 接口名称:com.webank.weid.rpc.WeIdService.createWeId
- 接口定义:ResponseData<CreateWeIdDataResult> createWeId()
- 接口描述: 内部创建公私钥,并链上注册WeIdentity DID, 并返回公钥、私钥以及WeIdentity DID。
接口入参: 无
接口返回: com.webank.weid.protocol.response.ResponseData<CreateWeIdDataResult>;
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
errorCode | Integer | 返回结果码 | |
errorMessage | String | 返回结果描述 | |
result | CreateWeIdDataResult | 见下 | |
transactionInfo | TransactionInfo | 交易信息 |
com.webank.weid.protocol.response.TransactionInfo
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
blockNumber | BigInteger | 交易块高 | |
transactionHash | String | 交易hash | |
transactionIndex | BigInteger | 交易索引 |
com.webank.weid.protocol.response.CreateWeIdDataResult
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
weId | String | 公钥WeIdentity DID格式字符串 | 格式: did:weid:0x…………………. |
userWeIdPublicKey | WeIdPublicKey | ||
userWeIdPrivateKey | WeIdPrivateKey |
com.webank.weid.protocol.base.WeIdPublicKey
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
publicKey | String | 数字公钥 | 如下调用示例返回,使用十进制数字表示 |
com.webank.weid.protocol.base.WeIdPrivateKey
名称 | 类型 | 说明 | 备注 |
---|---|---|---|
privateKey | String | 私钥 | 如下调用示例返回,使用十进制数字表示 |
此方法返回code
enum | code | desc |
---|---|---|
SUCCESS | 0 | 成功 |
WEID_KEYPAIR_CREATE_FAILED | 100107 | 创建密钥对失败 |
TRANSACTION_TIMEOUT | 160001 | 超时 |
TRANSACTION_EXECUTE_ERROR | 160002 | 交易错误 |
WEID_PRIVATEKEY_DOES_NOT_MATCH | 100106 | 私钥和weid不匹配 |
UNKNOW_ERROR | 160003 | 其他错误 |
调用示例
- WeIdService weIdService = new WeIdServiceImpl();
- ResponseData<CreateWeIdDataResult> response = weIdService.createWeId();
- 输出结果如下:
- result:(com.webank.weid.protocol.response.CreateWeIdDataResult)
- weId: did:weid:101:0xf4e5f96de0627960c8b91c1cc126f7b5cdeacbd0
- userWeIdPublicKey:(com.webank.weid.protocol.base.WeIdPublicKey)
- publicKey: 3140516665390655972698269231665028730625296545812754612198268107926656717368563044260511639762256438305037318801307432426840176526241566631412406151716674
- userWeIdPrivateKey:(com.webank.weid.protocol.base.WeIdPrivateKey)
- privateKey: 70694712486452850283637015242845250545254342779640874305734061338958342229003
- errorCode: 0
- errorMessage: success
- transactionInfo:(com.webank.weid.protocol.response.TransactionInfo)
- blockNumber: 30005
- transactionHash: 0x7e4fcacdd296f10936e53d64c7d6470dd4ffa52e22405c86ed8f72389419821f
- transactionIndex: 0
时序图
sequenceDiagram调用者->>WeIdentity SDK: 调用CreateWeID()WeIdentity SDK->>WeIdentity SDK: 创建公私钥对WeIdentity SDK->>区块链节点: 调用智能合约区块链节点->>区块链节点: 以事件的方式记录created属性和public key属性区块链节点->>区块链节点: 记录当前的最新块高区块链节点—>>WeIdentity SDK: 创建成功WeIdentity SDK—>>调用者:新创建好的WeIdentity DID以及公私钥对