[发明专利]一种基于去中心化数字身份的链下服务可信化方法有效
申请号: | 202310517618.4 | 申请日: | 2023-05-09 |
公开(公告)号: | CN116545696B | 公开(公告)日: | 2023-10-20 |
发明(设计)人: | 胡凯;刘浩宇;马泽祁 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;H04L9/00;H04L9/32 |
代理公司: | 郑州晟佳专利代理事务所(普通合伙) 41205 | 代理人: | 张心龙 |
地址: | 100089*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 中心 数字 身份 服务 可信 方法 | ||
1.一种基于去中心化数字身份的链下服务可信化方法,其特征在于,包括:
数字身份生成阶段:根据服务信息与状态,确定链下服务的去中心化数字身份;
数字证书构造阶段:根据数字身份利用密码学方法构造数字证书,由智能合约完成链下服务的认证;
服务生命周期管理:智能合约维护认证后服务的生命周期,生命周期包括认证、销毁、更新、调用;负责生命周期动作。
2.根据权利要求1所述的基于去中心化数字身份的链下服务可信化方法,其特征在于,所述数字身份生成阶段具体包括:
根据链下服务相关属性将数字身份表示为下式所示的七元组形式:
SoffChain=(n,URL,p,r,P,rT,mI,Ds)
其中,SOffchain代表链下服务的数字身份描述信息,n代表链下服务名称;URL代表链下服务URL,作为服务的唯一标识并借助其完成调用;p,r代表链下服务的参数列表和返回值类型;P代表链下服务供应商;rT代表链下服务的认证时间;mI代表链下服务的描述信息;Ds是服务当前状态的快照。
对服务状态进行快照,状态是服务类反射的字节数组,对数组使用下式进行摘要:
其中,[a0,a1,a2,…,an-1]为当前服务状态映射的字节数组,利用与素数31的计算得到定长的服务快照;
拆解高幂次运算,利用缓存加速计算过程将上式转为下式:
d=((...((a0+a1)*31+a2)*31+…)*31+an-2)*31+an-1
3.根据权利要求2所述的基于去中心化数字身份的链下服务可信化方法,其特征在于,所述数字证书构造阶段具体包括:
基于链下服务的数字身份描述SOffchain设计的数字证书表示为下式所示的多元组,该数字证书由智能合约生成:
DCoff=(v,s′,I,Tstart,Tend,E,pK,Sig,SigAlg)
其中,v代表数字证书版本号;s’代表证书序列号;I代表发证方;Tstart,Tend代表服务的有效期起止时间,基于数字身份中的rT构建;E代表服务实体;pK代表签名公钥;Sig代表对服务的数字签名;SigAlg为采用的签名算法;
利用公钥pK依据SigAlg方法对服务进行签名得到Sig字段;
公钥pK的生成算法包括如下步骤:
大素数(a,b)生成:使用随机数生成器生成两个随机数,使用Miller-Rabin方法检验素性,如不满足则向左右探测指导满足素性,记录两个随机素数a,b;
利用扩展欧几里得算法求解素数a关于欧拉函数Φ(b)的乘法逆元e;
记录乘积n=a*b;
数字签名过程概括为如下两式:
Digest=MD5(SoffChain)
Sig=Digeste(mod n)
其中,利用MD5摘要算法对链下服务做摘要处理,得到摘要后使用求得的公私钥得到签名;链下服务提供数字身份Soffchain后,智能合约得到对应的数字证书DCoff,作为后续证明服务合法的凭证。
4.根据权利要求3所述的基于去中心化数字身份的链下服务可信化方法,其特征在于,所述服务生命周期管理具体包括:
为链下服务的数字证书生成合约添加相关管理方法与接口,升级为扩展服务管理合约;
在成为扩展服务管理合约后,对服务的调用由智能合约完成扩展服务数字证书的可信校验操作,智能合约A对扩展服务B的一次调用流程包括如下步骤:
(1)智能合约A调用扩展服务调用方法:为统一管理所有对扩展服务的调用,设置服务调用方法完成参数转换请求包装;在区块链系统中对所有合约方法的调用均需要通过交易触发;智能合约A生成的触发服务调用接口的交易如下式所示:
Tx=(Addrfrom,Addrto,v,data,T)
其中,Addrfrom为智能合约A的地址,Addrto为扩展服务管理合约的地址,v为合约携带的数值,T是交易生成的时间戳,data是交易的核心字段,在这里data=(URL,paramValue),声明扩展服务的URL和实参列表;
(2)检查扩展服务B状态并包装请求体:扩展服务管理合约A对比扩展服务B的当前状态与其保存的数字证书,经过验签流程判断服务当前状态的合法性,校验通过后将交易data域中的paramValue进行包装,使用格式字典将实参列表编码为数据类型:数值的形式{Type:value};
(3)请求扩展服务B:智能合约执行引擎执行到扩展服务调用交易后根据包装的请求体对外执行RPC调用;
(4)扩展服务B执行任务并提交执行日志:扩展服务B接收请求后解析参数并执行请求,将执行结果调用日志上传接口提交到区块链上;
(5)扩展服务管理合约记录调用日志:管理合约记录的调用日志结构如下式所示:
Log=(id,C,sN,URL,p,r,T,s,err)
其中,id代表日志序列号;C代表服务调用者;sN代表被调用服务名;URL代表被调用服务的URL;p,r代表此次调用的实参列表与结果数值;T代表调用时间;s代表此次请求的执行状态;err记录失败原因。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310517618.4/1.html,转载请声明来源钻瓜专利网。