4.3.1 身份业务概述
4.3.1.1 身份代理合约
身份代理合约是身份模块的统一入口,在整个络谱区块链中只有一份,通过合约地址调用。
4.3.1.2 身份合约
身份合约是业务合约,每个身份合约代表一个络谱账户身份,记录了经过认证的身份信息。通过身份代理合约和身份合约账户ID调用。
4.3.2 身份业务接口列表
4.3.2.1 根据账户ID获取对应身份合约的合约地址
接口说明:使用身份合约的账户ID(如100000002
)获取对应身份合约的合约地址。
调用类型:只读方法
请求方式:POST
请求地址:http://BROP_HOST:PORT/common/contract.json
队列事件:无
参数列表:
名称 | 类型 | 描述 |
---|---|---|
contractAddress | String | 身份代理合约地址 |
functionName | String | getAccountAddressByAccountId |
regionId | String | 专区编号(专区链需要传) |
params | Integer | 账户ID |
接口返回:
名称 | 类型 | 描述 |
---|---|---|
accountAddress | String | 对应身份合约的合约地址 |
请求示例:
{
"contractAddress": "e99b9f4cfe7124d789d915e949d1bfc9733b544e",
"functionName": "getAccountAddressByAccountId",
"regionId":"0x00000000002fbace000000005d1c745500000000",
"params": [
100000002
]
}
返回示例:
{
"code": "SUCCESS",
"detail": {
"accountAddress": "45865da5c7013d0e5b5074fc98850ed2c8a725f1"
}
}
4.3.2.2 获取身份合约的身份信息
接口说明:使用身份合约的合约地址,获取该身份合约的身份信息。
调用类型:只读方法
请求方式:POST
请求地址:http://BROP_HOST:PORT/common/contract.json
队列事件:无
参数列表:
名称 | 类型 | 描述 |
---|---|---|
contractAddress | String | 当前身份合约的合约地址 |
functionName | String | getAccountDetail |
regionId | String | 专区编号(专区链需要传) |
接口返回:
名称 | 类型 | 描述 |
---|---|---|
accountId | Integer | 账户ID |
recordPermission | Boolean | 是否有权写入存证记录 |
publicKeyAddresses | String[] | 公钥地址数组 |
contractDigest | String | 签约文件摘要 |
credentialPermission | Boolean | 是否有权管理数字凭证智能合约,保留字段 |
accountPermission | Boolean | 是否有权创建身份智能合约 |
accountName | String | 账户名 |
authType | String | 认证级别 |
certificate | String | CA证书相关信息 |
accountInfo | String | 身份公示信息,字符串,记录合作方工商注册信息,包括name(企业名称)、code(社会统一信用代码)、representative(法定代表人)、address(公司地址)、tel(公司电话),使用json格式拼接成字符串 |
builderId | Integer | 该身份合约创建者的账户ID(专区链显示) |
accountMgmt | String | 身份管理合约的地址(专区链显示) |
请求示例:
{
"contractAddress": "45865da5c7013d0e5b5074fc98850ed2c8a725f1",
"functionName": "getAccountDetail",
"regionId":"0x00000000002fbace000000005d1c745500000000",
"params": []
}
返回示例:
{
"code": "SUCCESS",
"detail": {
"accountId": 100000002,
"accountName": "zcTEST",
"publicKeyAddresses": [
"a5f4cd76e3f5d947a8823e312b3e0af8c78f70aa"
],
"recordPermission": true,
"credentialPermission": false,
"accountPermission": true,
"certificate": "",
"authType": "REALNAME",
"contractDigest": "1234",
"accountInfo": ""
}
}