We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
编号: 类型:标准 标题:星火链网可信数字证书验证规范 作者:金键,jin.jian@caict.ac.cn;谢家贵,xiejiagui@caict.ac.cn;李志平,lizhiping@caict.ac.cn;聂凡杰,niefanjie@caict.ac.cn 发布时间: 状态: 更新时间:2023-03-22 讨论地址: 依赖RFC:
星火链网可信数字证书在向验证方进行出示时, 此时就需要验证方自行对证书进行验证, 以确认证书的可靠性. 本文旨在提供一个星火链网可信数字证书的验证规范, 用户可根据本规范自行实现对星火链网可信数字证书的验证。
星火链网可信数字证书是 jws 规范(参照JWS RFC文档)的一种实现. 因此只需对证书 jws 进行反解析, 获取证书的模板id, 有效期, 证书id, 颁发方信息, 到星火数字证书可信数据集和 BID解析查询相关数据进行校验, 并对 jws 进行验签即可。 校验项主要如下:
交互图如下:
证书校验数据结构如下:
{ "jwsHeader":"", "jwsSignature":"", "vcContent":"", }
返回数据结构如下:
{ "result": true }
实现流程:
接口定义:
http请求方式:POST https://{url}/vc/verify { "jwsHeader":"eyJhbGciOiJTTTIifQ", "jwsSignature":"MDFjNzk3N2M5ZmRiNDE5M2Q1NmZhNzBkNGZlZDBhYWI0NWE0ODAzZWVlYTk0NzU4MGJmZjExOWQ0ZWNiNDIzYjg2YTAzYzZmOWQ3NDlhMmY3ZmNiOWEzMzgwOWE3M2MwZmQ3MTdjOWM5N2M5ZGU2MWZmY2FkNzM0ZmRiMDA3MDA", "vcContent":"{\"@context\":[\"https://www.w3.org/2018/credentials/v1\"],\"credentialSubject\":{\"businessScope\":{\"hash\":\"ac164515abebd3498b8e924d5e53b40b8c88f309c83c3fc5876c5c60926dd625\"},\"certBid\":{\"hash\":\"3ee74b4cc779f051e6db88d41a9a809158b8e0e40de149f1bb7b729f4bb40bf0\",\"salt\":\"5872438693681184\",\"value\":\"did:bid:ef28fCsZTFXfLtefHQwPkAxsPnXtVaq9F\"},\"companyName\":{\"hash\":\"fc9ccc0ad83c77c83e588e3a22f8058b2eda55d50bfae58c73fb2f7570daa618\",\"salt\":\"5297098312790891\",\"value\":\"营业执照\"},\"establishDate\":{\"hash\":\"7f5ea29c0b3107535e0df5241a36522ed5910720bb863b9e8ca5e131901d0791\"},\"id\":\"did:bid:efEXzqnM255FwNZSmDrZM5KfhhW2iZky\",\"legalPersonName\":{\"hash\":\"e350f9a48a98c27f981b583cd6dc8536102507b59a903f1669cf5ae625b99d01\"},\"qualifieNumber\":{\"hash\":\"b396ad3212c9cc719120034f1b1a534c8c5d2d7f101ef3b111c600a0ffd5503c\"},\"qualifieValidateEnd\":{\"hash\":\"ccd1e18a855b54e5ba743ff853b62414b9cc0f7c2a1fe5646b9f65e265a72981\"},\"qualifieValidateStart\":{\"hash\":\"bc2fca5a34fc588e199cab70a4b3b0d62ed1a844196165b525d79813a0f50551\"},\"registeredAddressDetail\":{\"hash\":\"64095f7fad3c76802fcd97debb38dccee377f4a5375339277b7254031ff0cd19\"}},\"id\":\"did:bid:ef28fCsZTFXfLtefHQwPkAxsPnXtVaq9F\",\"issuanceDate\":\"2023-01-31T02:34:09Z\",\"issuer\":\"did:bid:ef14uPsX7XYLzsU4t2rnRrsK2zfUbFEj\",\"parseType\":\"sel-disclose-SM2\",\"revocationId\":\"did:bid:efKK5cc2iArX3cmxDVmxcUx8QgecM4oD\",\"templateId\":\"did:bid:efvBPiZWCuB89LpynLUpmXCozjGEouhU\",\"type\":[\"VerifiableCredential\",\"identityCertification\"],\"validBefore\":\"2099-01-01T00:00:00Z\"}", }
实现步骤: 1.解析 jws 证书(参照 JWS RFC文档 ), 拿到证书原文; 2.验证发证方( issuer 字段)是否在数字证书可信数据集进行注册 3.验证凭证模板( templateId 字段)是否在数字证书可信数据集里; 4.校验证书是否在有效期( validBefore 字段)内; 5.通过数字证书可信数据集查询证书( id 字段)状态, 确认证书是否已被吊销; 6.通过BID解析查询发证方( issuer 字段)公钥; 7.剔除证书原文的 value 和 salt 字段,按照 jws 规范(参照JWS RFC文档)生成新的payload字符串; 8.用颁发方公钥对 jws 证书进行验签; 9.验证选择性披露值是否与证书对应 value 值匹配, 选择性披露 value 值与 salt 生成的 hash 与证书里的对应字段的 hash 进行比对。 验证返回结果:
{ "errorCode": 0, "message": "SUCCESS", "data": { "result": true } }
响应参数说明:
The text was updated successfully, but these errors were encountered:
接受关于“星火链网可信数字证书验证规范”的标准建议,现分配编号RFC-014。RFC-014进入采纳阶段。
提出日期:2023-03-22 演示日期:2023-03-22 接受日期:2023-03-22 采纳日期:2023-05-09
编号:RFC-014 类型:标准 标题:星火链网可信数字证书验证规范 作者:金键,jin.jian@caict.ac.cn;谢家贵,xiejiagui@caict.ac.cn;李志平,lizhiping@caict.ac.cn;聂凡杰,niefanjie@caict.ac.cn 发布时间:2023-03-22 状态:采纳 更新时间:2023-05-09 讨论地址:#20 依赖RFC:
Sorry, something went wrong.
No branches or pull requests
星火链网可信数字证书验证规范
1. 序言
编号:
类型:标准
标题:星火链网可信数字证书验证规范
作者:金键,jin.jian@caict.ac.cn;谢家贵,xiejiagui@caict.ac.cn;李志平,lizhiping@caict.ac.cn;聂凡杰,niefanjie@caict.ac.cn
发布时间:
状态:
更新时间:2023-03-22
讨论地址:
依赖RFC:
2. 摘要
星火链网可信数字证书在向验证方进行出示时, 此时就需要验证方自行对证书进行验证, 以确认证书的可靠性. 本文旨在提供一个星火链网可信数字证书的验证规范, 用户可根据本规范自行实现对星火链网可信数字证书的验证。
3. 原理
星火链网可信数字证书是 jws 规范(参照JWS RFC文档)的一种实现. 因此只需对证书 jws 进行反解析, 获取证书的模板id, 有效期, 证书id, 颁发方信息, 到星火数字证书可信数据集和 BID解析查询相关数据进行校验, 并对 jws 进行验签即可。
校验项主要如下:
交互图如下:
4. 规范
4.1证书校验
证书校验数据结构如下:
返回数据结构如下:
5. 实现示例
实现流程:
接口定义:
实现步骤:
1.解析 jws 证书(参照 JWS RFC文档 ), 拿到证书原文;
2.验证发证方( issuer 字段)是否在数字证书可信数据集进行注册
3.验证凭证模板( templateId 字段)是否在数字证书可信数据集里;
4.校验证书是否在有效期( validBefore 字段)内;
5.通过数字证书可信数据集查询证书( id 字段)状态, 确认证书是否已被吊销;
6.通过BID解析查询发证方( issuer 字段)公钥;
7.剔除证书原文的 value 和 salt 字段,按照 jws 规范(参照JWS RFC文档)生成新的payload字符串;
8.用颁发方公钥对 jws 证书进行验签;
9.验证选择性披露值是否与证书对应 value 值匹配, 选择性披露 value 值与 salt 生成的 hash 与证书里的对应字段的 hash 进行比对。
验证返回结果:
响应参数说明:
The text was updated successfully, but these errors were encountered: