利索能及
我要发布
收藏
专利号: 202311047221X
申请人: 成都信息工程大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-10-14
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.基于零知识证明和跨链的访问控制方法,其特征在于,包括如下步骤:S1.访问主体和访问客体身份注册;

S11.物理域中的访问主体和访问客体发起注册请求;

S12.给访问主体分配用于数字签名的公钥PKs和私钥SKs;S13.给访问客体分配访问策略;

S2.成员域身份注册;

S21.物理域发起加入申请后,为物理域生成一对密钥,一对密钥包括一个公钥和一个私钥;

S22.将已加入的物理域的公钥用来生成默克尔树,并将默克尔树的默克尔树MTRoot根发送给已加入的各个物理域;

S3.访问主体访问预处理;

S31.访问主体通过物理域网关向访问客体,即访问客体发起访问请求;

S32.访问主体所在物理域网关GWdomainA向访问客体所在的物理域获取对应的零知识证明证明密钥Keyproof;物理域网关GWdomainA向访问客体所在物理域发起密钥获取请求,并签名后发往至中继网关GWrelayer;

S33.中继网关GWrelayer收到密钥获取请求后,对签名进行验证,验证通过后,为访问主体构造默克尔证明ProofMerkle,再将密钥获取请求和默克尔证明ProofMerkle打包并签名发往至访问客体所在物理域;

S34.访问客体所在物理域网关GWdomainB收到密钥获取请求后,验证签名和默克尔证明ProofMerkle,若都验证成功,则从区块链上调用KRC合约获取密钥Keyproof,将密钥打包并签名发送给中继网关GWrelayer;

S35.中继网关GWrelayer收到证明密钥Keyproof发送请求后,验证签名,若通过继而为访问客体所在物理域构造默克尔证明ProofMerkle,并将密钥Keyproof和默克尔证明ProofMerkle信息打包并签名发送给物理域网关GWdomainA;

S36.物理域网关GWdomainA收到密钥Keyproof和默克尔证明ProofMerkle信息后,验证签名和默克尔证明,若验证通过则使用零知识证明密钥Keyproof和访问主体的属性集构造零知识证明Proofzk,并将零知识证明Proofzk打包并签名发送给中继网关GWrelayer;

S4.验证访问主体访问权限;

S41.中继网关GWrelayer收到访问主体的访问请求后,验证签名,若验证通过则从区块链上调用MTC合约获取默克尔树,并结合访问主体所在物理域的公钥构造默克尔证明ProofMerkle;再将访问请求中包含的零知识证明Proofzk和默克尔证明ProofMerkle打包并签名发送给访问客体所在物理域网关GWdomainB;

S42.物理域网关GWdomainB收到中继网关GWrelayer发送的访问请求相关信息,验证签名是否正确,若正确则通过验证,继而访问请求中包含的零知识证明Proofzk发送至区块链BCdomainB上,调用PDC合约对零知识证明Proofzk进行验证,将验证结果返回给物理域网关GWdomainB;

S5.返回访问权限验证结果;

S51.GWdomainB将BCdomainB返回的验证结果和当前域的公钥打包成返回信息,并签名发送至中继网关GWrelayer;

S52.GWrelayer收到BCdomainB的返回消息后,对签名进行验证,验证通过则调用BCrelayer上的MTC合约获取默克尔树,并根据域公钥PKB生成默克尔证明;最后将返回信息和默克尔证明打包,并签名发送给GWdomainA;

S53.GWdomainA收到GWrelayer发送的消息后,验证签名和默克尔树证明,验证通过则获取访问请求结果。

2.基于零知识证明和跨链的访问控制系统,其特征在于,包括:第一注册模块,用于进行访问主体和访问客体身份注册;

第二注册模块,用于进行成员域身份注册;

预处理模块,用于进行访问主体访问预处理;

验证模块,用于验证访问主体访问权限;

结果返回模块,用于返回访问权限验证结果;

处理器,分别与所述第一注册模块、第二注册模块、预处理模块、验证模块和结果返回模块连接;以及存储器,与所述处理器连接,并存储有可在所述处理器上运行的计算机程序;

其中,当所述处理器执行所述计算机程序时,所述处理器控制所述第一注册模块、第二注册模块、预处理模块、验证模块和结果返回模块工作,以实现如权利要求1所述的基于零知识证明和跨链的访问控制方法。

3.一种计算机可读存储介质,其特征在于,所述存储介质存储计算机指令,当计算机读取所述计算机指令时,所述计算机执行如权利要求1所述的基于零知识证明和跨链的访问控制方法。