CN115913647A - 基于区块链的跨域设备访问控制策略强制实施方法及装置 - Google Patents
基于区块链的跨域设备访问控制策略强制实施方法及装置 Download PDFInfo
- Publication number
- CN115913647A CN115913647A CN202211295762.XA CN202211295762A CN115913647A CN 115913647 A CN115913647 A CN 115913647A CN 202211295762 A CN202211295762 A CN 202211295762A CN 115913647 A CN115913647 A CN 115913647A
- Authority
- CN
- China
- Prior art keywords
- responder
- requester
- data
- domain
- intelligent contract
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本申请公开了一种基于区块链的跨域设备访问控制策略强制实施方法及装置,其中,方法包括:通过应答方定义访问策略,并由域内管理委员会达成共识,通过智能合约将跨域设备访问控制策略的默克尔树根提交到域间公有链;利用请求方发起访问请求后,控制请求方与应答方的委员会调用域间公有链中的智能合约,并分别抵押预设金额,建立请求方与应答方间的数据交换;判断请求方是否接收到应答方发送的正确数据,在未接收到时,通过请求方向智能合约进行请求开始强制执行访问控制过程,并通过预设验证方式确定数据交换中的恶意方,以及对恶意方进行惩罚,具有良好的公平性与实用性。
Description
技术领域
本申请涉及信息安全技术领域,特别涉及一种基于区块链的跨域设备访问控制策略强制实施方法及装置。
背景技术
一个完备的认证和访问控制机制是不同组织、部门之间进行安全高效的数据访问与交换的“神经中枢”。现有的访问控制方案可以划分为两大类,一类是传统的中心化访问控制机制,如应用在路由器接口的访问控制列表等,这一类依靠单一中心化网络拓扑结构以及集中的存储和计算系统的传统访问控制机制存在如单点崩溃、信任集中等弊端。第二类访问控制方案是基于区块链的访问控制机制,但这类分布式架构的访问控制系统中使用区块链技术取代传统的中心化机构,可信第三方的缺失会导致纠纷问题的发生,难以通过第三方实现纠纷仲裁、交易监管等,数据交换双方出现矛盾时难以实现责任的判定。
访问控制的过程可以简化描述为请求方请求访问某设备的某资源,应答方核对请求方身份后,返回相应数据,但是为了最大限度的保护数据,用户需要交换的数据不应由可信第三方保管,而是由设备独立存储与发送。由于点对点的数据发送形式,系统中可能存在请求方提交不满足策略的访问控制请求的情况,以及已经请求方满足了访问控制策略,但应答方不诚实,拒不发送数据或者发送伪造数据的情况,此时需要定义一个广义的访问控制,即在保证资源不受未授权访问的情况下,保证满足访问控制条件的请求者的数据访问权限不受侵犯,在资源所有方进行访问控制的强制执行。
发明内容
本申请提供一种基于区块链的跨域设备访问控制策略强制实施方法及装置,有效解决节点间关于数据真实性的纠纷。
本申请第一方面实施例提供一种基于区块链的跨域设备访问控制策略强制实施方法,包括以下步骤:通过应答方定义访问策略,并由域内管理委员会达成共识,通过智能合约将跨域设备访问控制策略的默克尔树根提交到域间公有链;利用请求方发起访问请求后,控制所述请求方与所述应答方的委员会调用所述域间公有链中的智能合约,并分别抵押预设金额,建立所述请求方与所述应答方间的数据交换;判断所述请求方是否接收到所述应答方发送的正确数据,在未接收到时,通过请求方向所述智能合约进行请求开始强制执行访问控制过程,并通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚。
可选地,在本申请的一个实施例中,还包括:在所述请求方接收到所述应答方发送的正确数据时,将抵押的预设金额分别返还至所述请求方和所述应答方的账户。
可选地,在本申请的一个实施例中,通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚,包括:通过所述智能合约控制所述请求方在第一预设时间内提交策略合法证明,并对所述策略合法证明进行验证,若验证通过,则继续执行所述跨域设备访问控制策略,并在策略执行结束后,分别返还所述请求方和所述应答方的抵押金额,否则将所述请求方的抵押金额转移给所述应答方。
可选地,在本申请的一个实施例中,通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚,包括:通过所述智能合约控制所述应答方在第二预设时间内提交数据合法性证明,并通过所述智能合约对所述数据合法性证明进行存储;通过所述请求方获取所述智能合约内的所述数据合法性证明,并对所述数据合法性证明进行验证,若验证通过,则继续执行所述跨域设备访问控制策略,并在策略执行结束后,分别返还所述请求方和所述应答方的抵押金额,否则,继续验证密钥合法性。
可选地,在本申请的一个实施例中,对所述数据合法性证明进行验证,验证未通过时,继续验证密钥合法性,包括:通过所述请求方向所述域内管理委员会发送验证时解密所得的密钥,通过所述域内管理委员会将所述密钥与公钥结合后,提交至所述智能合约。通过所述智能合约执行明文可验证加密的验证算法,验证对称密钥与密文是否匹配,若匹配,则协议继续进行,否则,进行应答方数据合法性验证;通过所述智能合约根据对称密钥,验证数据能否被正确解密,若能,则所述请求方为虚假申诉,对所述请求方进行惩罚;若不能,则所述应答方发送错误数据元组,对所述应答方进行惩罚。
可选地,在本申请的一个实施例中,所述进行应答方数据合法性验证,包括:通过所述智能合约要求所述应答方提供证据,以证明所述应答方拥有合法数据;通过所述应答方使用合约公钥加密合法对称密钥,并提交给所述智能合约,所述智能合约使用明文可验证算法,验证数据元组与当前对称密钥是否匹配,并根据算法的输出结果,决定惩罚所述请求方、所述应答方,或没收双方的抵押金额。
本申请第二方面实施例提供一种基于区块链的跨域设备访问控制策略强制实施装置,包括:共识模块,用于通过应答方定义访问策略,并由域内管理委员会达成共识,通过智能合约将跨域设备访问控制策略的默克尔树根提交到域间公有链;交换模块,用于利用请求方发起访问请求后,控制所述请求方与所述应答方的委员会调用所述域间公有链中的智能合约,并分别抵押预设金额,建立所述请求方与所述应答方间的数据交换;控制模块,用于判断所述请求方是否接收到所述应答方发送的正确数据,在未接收到时,通过请求方向所述智能合约进行请求开始强制执行访问控制过程,并通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚。
可选地,在本申请的一个实施例中,控制模块进一步用于,在所述请求方接收到所述应答方发送的正确数据时,将抵押的预设金额分别返还至所述请求方和所述应答方的账户。
可选地,在本申请的一个实施例中,通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚,包括:通过所述智能合约控制所述请求方在第一预设时间内提交策略合法证明,并对所述策略合法证明进行验证,若验证通过,则继续执行所述跨域设备访问控制策略,并在策略执行结束后,分别返还所述请求方和所述应答方的抵押金额,否则将所述请求方的抵押金额转移给所述应答方。
可选地,在本申请的一个实施例中,通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚,包括:
通过所述智能合约控制所述应答方在第二预设时间内提交数据合法性证明,并通过所述智能合约对所述数据合法性证明进行存储;通过所述请求方获取所述智能合约内的所述数据合法性证明,并对所述数据合法性证明进行验证,若验证通过,则继续执行所述跨域设备访问控制策略,并在策略执行结束后,分别返还所述请求方和所述应答方的抵押金额,否则,继续验证密钥合法性。
本申请的基于区块链的跨域设备访问控制策略强制实施方法及装置,面向去中心化访问控制系统中请求方与应答方数据交换时的公平性需求,针对当前系统中可信第三方缺失导致的交易监管,以及发生纠纷时的交易仲裁等为题,拟结合透明开放、不可篡改、去中心化的区块链技术、智能合约技术,以及明文可验证算法,研究访问控制场景下请求方与应答方之间的强制执行功能,保证数据的访问不受恶意请求与应答方的影响。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请实施例提供的一种基于区块链的跨域设备访问控制策略强制实施方法的流程图;
图2为根据本申请实施例提供的一种具体地基于区块链的跨域设备访问控制策略强制实施方法的流程图;
图3为根据本申请实施例提供的阶段一时序图;
图4为根据本申请实施例提供的阶段二时序图;
图5为根据本申请实施例提供的阶段三时序图;
图6为根据本申请实施例提供的阶段四时序图;
图7为根据本申请实施例的基于区块链的跨域设备访问控制策略强制实施装置的示例图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
为了在分布式访问控制系统中有效解决节点间关于数据真实性的纠纷,本申请引入区块链、智能合约技术与明文可验证加密算法,并结合博弈论的思想,设计了一套访问控制强制实施的方案。其中,明文可验证加密能够在给定公钥pk的情况下,确保密文c由指定的明文m生成,且不会泄露私钥sk的信息,明文可验证加密由以下四个算法组成:
(1)PCEKeyGen(1k)→(pk,sk):算法输入安全参数k,输出公私钥pk、sk。
(2)PCEE(pk,m)→c:该算法输入公钥pk,明文m,输出密文c。
(3)PCED(sk,c)→m:该算法输入私钥sk,密文c,输出明文m。
(4)PCEcheck(c,pk,m)→ω:如c由m加密而来,输出ω=1,否则ω=0。
明文可验证算法有如下四种性质:
Pr[(pk,sk)←KeyGen(1k),c←Encrypt(1k,pk,m):PCheck(1k,c,pk,m)=1]=1。
Pr[(pk,sk)←KeyGen(1k),c←A(1k,pk),
m←Decrypt(1k,sk,c):PCheck(1k,c,pk,m)=0]
Pr[(pk,sk)←KeyGen(1k),(c,m*)←A(1k,pk),
m←Decrypt(1k,sk,c):m≠m*∧PCheck(1k,c,pk,m)=1]
方案中采用的明文可验证加密算法基于椭圆曲线公钥密码体制ECC与Elgamal公钥密码体制,通过在文献中基于Elgamal的构造的基础上,引入椭圆曲线密码体系改进而来。
本申请包含五种实体:
(1)域内管理委员会(In-Domain Management Committee,DMC):一个域内管理委员会通常是组织机构的管理部门DMC对外以域内服务器的形式存在,主要负责与物联网设备节点、其他域的管理委员会进行交互,并通过域内的许可链进行物联网设备信息、资源及其访问策略的管理,同时负责域间公有链上默克尔树信息的定期更新,同时能够大大减轻物联网设备的计算负担。在域内管理委员会内部,成员由该安全域内具有一定计算能力和存储资源的节点组成,委员会成员身份与资源所有者身份并不产生冲突。委员会中成员的数量应该满足,其中为恶意节点数;委员会内部使用拜占庭容错共识算法完成节点认证和策略管理过程,委员会内存在可更换的领导者,领导者由各个安全域自行选举,具体的领导者选举算法与委员会成员选举算法由安全域自主确定,本方案不予描述。
(2)密钥生成机构(Key Generation Center,KGC):在本方案中,假定密钥生成机构为诚实的,主要负责提供加解密密钥、签名密钥的生成、保存、备份、更新、恢复、查询等服务,并提供公钥合法性证书。
(3)物联网设备(Internet of Things Device,IoTD):物联网设备主要包括传感器、智能处理装置等,由于物联网场景下设备的计算能力差异较大,本方案假定安全域内存在多个代理节点,用于从计算能力较低的物联网设备中获取资源,并在数据交换过程中,作为设备的代理执行数据加解密和发送的操作,本方案将代理节点描述为物联网设备的一部分。物联网设备使用唯一的身份ID标识,设备中的数据以资源的形式存在,一个物联网设备可以存储多个资源。对于用户的访问请求,设备及资源能否被访问,完全由管理委员会按照预先设定的访问控制策略决定,设备仅遵循委员会的指令,无需进行验证等复杂操作。
(4)设备所有者(Device Owner,DO):设备所有者指设备及其中资源的所有者。设备及设备所有者的关系可以被描述为:设备所有者可以拥有多个设备、一个设备只能由一个所有者管理。设备所有者只负责访问控制策略的定义,即定义设备中的资源可以被谁、以何种方式获取等,由委员会进行策略的合法性验证及上链保管。由于所有者的处理能力可能无法满足管理海量设备的需求,因此设备及其中资源的管理权被委托给管理委员会,赋予委员会在给定策略的情况下管理设备的权力。同时,计算及存储能力满足一定条件的设备所有者可以加入域内管理委员会。
(5)支持智能合约的区块链(Blockchain):本方案架构包括安全域间共同维护的公链,公链需要部署智能合约,存储访问控制策略的默克尔树根值,便于在安全域间防止策略的篡改,并为访问控制的强制实施提供支持。
本申请在明文可验证加密技术的基础上,设计了一套完善的“抵押-仲裁”机制,大体流程可以描述为:主客体设备通过委员会进行访问控制策略的查询及请求的转发;在乐观情况下,当主体对接收到的客体数据验证成功后,协议结束,双方的抵押金额被分别退还至原账户;而在非乐观情况下,可能存在客体发送虚假数据,或者主体进行虚假申诉的情况,需要通过智能合约技术进行访问控制策略的强制执行,要求事务双方在规定时限内提交指定形式的证据,证据通过可验证加密、签名等密码学手段构造,智能合约验证证据后对现有可能的情况进行分析,实现纠纷的仲裁。在非乐观情况下,协议将在交易的一方被惩罚,其抵押金额被转移给另一方时终止。
本申请的基于区块链的跨域设备访问控制策略强制实施方法,具有良好的公平性与实用性,其中公平性具体证明如下:
在访问控制强制实施方案中,安全域内的设备所有者或者委员会任一方的作恶均会导致协议乐观路径的失效,因此为了简化该方案的公平性证明,将设备所有者与委员会视为整体,以请求方、应答方描述。
1.公平性定义
设访问控制强制执行阶段的请求方为A、应答方为B,向智能合约提交的证据为I,智能合约E的最终结果输出为o,若定义P(x)为惩罚x,那么o的取值集合为O={P(φ),P(A),P(B),P(A,B)},定义智能合约的执行模型为:
o=E(AA,IB)
其中,A、B的证据元组IA、IB分别由以下几部分组成:
IA≡(Ipk,Imr,Ip,Ipf,Ir,Ik)
IB≡(Ipk,Imr,Id,Id′,Ik)
Ipk为用户公钥、Imr为策略默克尔树根值、Ip为策略、Ipf为策略默克尔树证明、Ir为请求方本地验证结果、Ik为会话密钥、Id为加密的会话密钥、Id′为加密的数据。
假设可能的敌手集合为V={φ,A,B,{A,B}},对于任意敌手v∈V,诚实方可以表示为u={A,B}\v,公平性可以定义为对任意请求方A与应答方B,Pr[E(IA,IB)=P(v)]≈1,Pr[E(IA,IB)=P(u)]≈0。公平性指的是在访问控制强制执行的阶段中,作恶方不会免受惩罚,诚实方不会受到惩罚。
2.公平性证明
(1)请求方恶意
本部分讨论v=A,u=B的情况。
在协议执行的第一阶段中,设v提交虚假的使E(IA,IB)≠P(A),即令此时存在两种情况:一是存在哈希碰撞使得 由于哈希函数是抗碰撞的,因此情况不成立;二是敌手在初始化阶段定义了虚假的Imr使等式成立,由于Imr由A与B共同制定,虚假值无法在双方间达成一致。综上,在第一阶段中,v无法提交能够通过验证的虚假证据。
在协议执行的第三阶段中,设v提交虚假的使E(IA,IB)≠P(A)。由于此时B诚实,因此其第二阶段提交的Id,Id′能够通过v的本地验证,此时v通过谎称即Id,Id′无法过验来作恶,此时存在三种情况:一是v提交的为Id的解密结果,提交给合约后,合约执行E(IA,IB)=P(A),情况不成立;二是v伪造使其能够解密Id′并获取数据data=d||Sig(H(d*)),在最坏情况下,即所选取的加密和签名算法均不具备验证能力,情况二可规约为敌手v能够构造hash(d)=H(d*),但d≠d*,满足data=d||Sig(H(d*)),由于哈希函数的抗碰撞性,情况二无法实现;第三种情况是v提交的无法通过明文可验证算法的验证,协议进入第四阶段。
在第四阶段中,诚实方B提交合法的Ik,通过智能合约的验证,此时智能合约的执行结果为E(IA,IB)=P(A)。理性的敌手不会做出这种选择。
综上,在请求方恶意的情况下,v无法提交能够通过验证的虚假证据。
(2)应答方恶意
本部分讨论v=B,u=A的情况。
在协议执行的第二阶段中,设v提交虚假的使E(IA,IB)≠P(B)。假设能够通过u的本地验证。此时存在两种情况:一是v伪造的并非使用PCEE加密而来,或者未使用请求方公钥加密而来,但在u处通过了PCEcheck的验证,情况一可规约为敌手v的能力能够打破明文可验证算法的验证完整性,由于概率多项式时间的敌手不具有这种能力,因此情况不成立,协议跳转到第四部分;二是解密所得的会话密钥由v伪造,并非与正确解密所匹配的密钥,但能够解密并获取数据data*=d*||Sig(H(d*)),在最坏情况下,即所选取的加密和签名算法均不具备验证能力,情况二可规约为敌手v能够构造hash(d′)=H(d*),但d′≠d*,满足data*=d*||Sig(H(d′)),由于哈希函数的抗碰撞性,情况二无法实现。
综上,在应答方恶意的情况下,v无法提交能够通过验证的虚假证据。
(3)请求方与应答方均恶意
本部分讨论v={A,B},u=φ的情况。
在协议执行的第二阶段,设B提交了虚假的在协议执行的第三阶段,设A提交了虚假的使E(IA,IB)≠P(A,B)。在第一种情况中,合约输出结果为E(IA,B)=P(φ)。合约结果说明此时A本地验证虚假数据失败后,向合约反馈成功,此举违背了A的理性前提,因此情况不成立。在第二种情况中,假设A伪造的通过了验证,使得E(IA,IB)=P(B),那么说明敌手能够打破明文可验证算法的验证完整性,由于概率多项式时间的敌手不具有这种能力,因此情况不成立。在第三种情况中,A伪造的并未通过验证,协议进入第四阶段,同时B伪造通过合约验证,这同样等价于敌手能够打破明文可验证算法的验证可靠性,说明该情况不成立。
综上,在请求方与应答方均恶意的情况下,v无法提交能够通过验证的虚假证据。
以下将结合附图详细阐述基于区块链的跨域设备访问控制策略强制实施方法。
基于区块链的跨域设备访问控制策略强制实施方法的符号定义如下表1所示。
表1符号定义
图1和图2为本申请实施例提供的一种基于区块链的跨域设备访问控制策略强制实施方法的流程图。
如图1和图2所示,该基于区块链的跨域设备访问控制策略强制实施方法包括以下步骤:
在步骤S101中,通过应答方定义访问策略,并由域内管理委员会达成共识,通过智能合约将跨域设备访问控制策略的默克尔树根提交到域间公有链。
如图3所示,为请求仲裁与策略验证阶段,本阶段用于保证请求方A无法伪造访问控制请求。
首先,步骤1,应答方对访问控制策略进行定义,由域内委员会审核并达成共识后,通过智能合约将策略的默克尔树根提交到域间公有链中。
在步骤S102中,利用请求方发起访问请求后,控制请求方与应答方的委员会调用域间公有链中的智能合约,并分别抵押预设金额,建立请求方与应答方间的数据交换。
步骤2:请求方发起访问请求后,请求方与应答方委员会调用公链中的智能合约,抵押一定的金额,用于后续的访问控制强制执行过程。请求方委员会对访问请求进行验证,通过则转发至应答方,由应答方委员会进行二次验证。若验证通过,双方委员会通知用户与设备,批准用户的访问请求。
在步骤S103中,判断请求方是否接收到应答方发送的正确数据,在未接收到时,通过请求方向智能合约进行请求开始强制执行访问控制过程,并通过预设验证方式确定数据交换中的恶意方,以及对恶意方进行惩罚。
可选地,在本申请的一个实施例中,在请求方接收到应答方发送的正确数据时,将抵押的预设金额分别返还至请求方和应答方的账户。
可选地,在本申请的一个实施例中,通过预设验证方式确定数据交换中的恶意方,以及对恶意方进行惩罚,包括:通过智能合约控制请求方在第一预设时间内提交策略合法证明,并对策略合法证明进行验证,若验证通过,则继续执行跨域设备访问控制策略,并在策略执行结束后,分别返还请求方和应答方的抵押金额,否则将请求方的抵押金额转移给应答方。
步骤3:请求方与应答方之间进行数据交换。此时若请求方未接收到合法数据,或者请求方存在恶意,可以向合约提起申诉,强制执行访问控制过程。
步骤4:智能合约要求A在规定时间内提交策略及默克尔证明(p,mproof)。
步骤5:合约执行以下两步对(p,mproof)的合法性进行验证,验证算法如表2所示。若访问控制策略验证不成功,说明请求方A并未拥有合法的访问控制策略,本次申诉由A伪造,是虚假申诉,因此对其进行惩罚。
若策略及证明满足公链中默克尔树根值mroot,协议继续执行;
若不满足,合约将A的抵押金额转移给应答方B来执行惩罚。
表2策略合法性验证算法
可选地,在本申请的一个实施例中,通过预设验证方式确定数据交换中的恶意方,以及对恶意方进行惩罚,包括:通过智能合约控制应答方在第二预设时间内提交数据合法性证明,并通过智能合约对数据合法性证明进行存储;通过请求方获取智能合约内的数据合法性证明,并对数据合法性证明进行验证,若验证通过,则继续执行跨域设备访问控制策略,并在策略执行结束后,分别返还请求方和应答方的抵押金额,否则,继续验证密钥合法性。
阶段二,数字证据收集与验证
阶段二的时序图如附图4所示。本阶段合约要求应答方B在规定时间内提交指定形式的证据,并在设备a处验证,保证设备b发送真实有效的数据。
步骤6:合约要求应答方在规定时间内提交数据合法性证明,b构造证据元组{α,β}:
d=(x,s)
β=Enc(k,d)
步骤7:当委员会B接收到证据元组后,将其转发至智能合约,由合约保存。
步骤8:A从合约获取{α,β},并通过表3中的算法证元组的合法性。若算法输出的r1=0,协议进入阶段三;若r1=1,协议正常结束且抵押金额被退还。
表3·证据元组验证算法
在阶段二中,若算法输出1,证明应答方B发送的数据无误,能够成功解密出数据并通过验证,协议结束且抵押金额被退还;若输出为0,说明仍然存在恶意行为,协议继续执行。
可选地,在本申请的实施例中,对数据合法性证明进行验证,验证未通过时,继续验证密钥合法性,包括:通过请求方向域内管理委员会发送验证时解密所得的密钥,通过域内管理委员会将密钥与公钥结合后,提交至智能合约。通过智能合约执行明文可验证加密的验证算法,验证对称密钥与密文是否匹配,若匹配,则协议继续进行,否则,进行应答方数据合法性验证;通过智能合约根据对称密钥,验证数据能否被正确解密,若能,则请求方为虚假申诉,对请求方进行惩罚;若不能,则应答方发送错误数据元组,对应答方进行惩罚。
阶段三:密钥合法性验证
阶段三时序图如附图5所示,阶段三用于判断阶段二中恶意行为的发生方。
步骤9:请求方向委员会发送阶段二中解密所得的密钥。
设备a通知委员会“验证失败”,并发送解密α所得k1。已知阶段二中输出r1=0,则此时解密所得的对称密钥k1或者数据d1是无效的,因此将对称密钥k1发送给智能合约并不会泄露真实的数据信息。
步骤10:委员会将密钥与其公钥结合后,提交至智能合约。
委员会构造密钥元组{k1,pkA},并提交合约,其中pkA为A的公钥。
步骤11:合约执行明文可验证加密的验证算法,验证对称密钥与密文是否匹配。
c=PCheck(k1,pkA,α)
步骤12:若匹配,协议继续进行;若不匹配,协议跳转到阶段四。
c=1说明A、B双方均对α诚实,协议跳转到步骤13;若c=0,协议跳转到阶段四的第15步,说明对称密钥与α不匹配,即交易双方有恶意行为。
步骤13:合约根据对称密钥,验证数据能否被正确解密。
合约继续验证k1能否正确解密数据:
d2=Dec(k1,β)
将d2转换为(x2,s2=Sig(skB,H(x2)))
r2=VerifySig(pkB,s2)
步骤14:若能,说明请求方进行虚假申诉,对其进行惩罚;若不能,说明应答方发送错误数据元组,合约惩罚应答方。
若r2=1,说明应答方B发送的数据元组无误,A虚假申诉,合约将A的抵押金额转移给B;若r2=0,说明数据无法通过解密密钥k1正确解密,应答方发送的数据元组有误,合约将B的抵押金额转移给A。
可选地,在本申请的实施例中,进行应答方数据合法性验证,包括:通过智能合约要求应答方提供证据,以证明应答方拥有合法数据;通过应答方使用合约公钥加密合法对称密钥,并提交给智能合约,智能合约使用明文可验证算法,验证数据元组与当前对称密钥是否匹配,并根据算法的输出结果,决定惩罚请求方、应答方,或没收双方的抵押金额。
阶段四:证据二次收集及验证
阶段四时序图如附图6所示。阶段四用于判定如下三种情况:
1、B诚实,A恶意:A向智能合约发送了虚假的k1,导致密钥验证失败。
3、B恶意,A恶意:A向智能合约发送了虚假的k1,且B提交了无效的α值。
步骤15:合约要求应答方提供证据,证明其拥有合法数据,即拥有有效的k值。
步骤16:应答方使用合约公钥加密合法对称密钥,并提交给合约。
应答方向合约提交数据δ=Enc(pkSC,k)。
步骤17:合约使用明文可验证算法,验证数据元组与当前对称密钥是否匹配,并根据算法的输出结果,决定惩罚请求方、应答方,或没收双方的抵押金额。
合约使用私钥解密得k3,使用PCEcheck函数验证k3,再次运行算法3验证数据元组和k3的合法性,设算法输出结果分别为k3,d3,r3。
c3=PCEcheck(k3,pkA,α)
对应上述情况,结果可能为:
1、c3=1,r3=1,合约将A的抵押金额转移给B。
2、若c3=0,合约将B的抵押金额转移给A。
3、若c3=1,r3=0,合约没收A、B抵押金额。
本阶段的关键问题是B是否拥有一个有效的k值,使得数据元组{α,β}能够通过验证。若B能够提供有效的k,说明请求方A发送的k1是伪造的;若B无法提供有效的k,则说明B在数据元组中存在欺骗行为,应继续判断A是否存在欺骗行为,在c3=1情况下,B提供的α能够解密获得正确会话密钥,而阶段三中A提交的密钥未通过验证,说明A、B均存在恶意行为。
方案中使用的明文可验证算法可以具体描述为:
密钥生成算法:
可验证加密算法:
可验证解密算法:
验证算法:
综上:本申请包含初始化过程、乐观与非乐观的双重路径,具体描述如下:
初始化阶段:在系统初始化阶段,初始化一条公共区块链;每个安全域内自主运行领导者选举算法与委员会成员选举算法,完成域内管理委员会的选举;域内管理委员会初始化一条联盟链,初始化BFT算法、明文可验证加密、及其他相关密码学参数。
乐观路径:乐观路径代表请求与应答方的委员会及设备所有者均诚实的情况。在乐观路径中,主客体的设备由双方委员会控制,且诚实的委员会在发出指令时会遵循预先确定的访问控制策略,因此主客体均遵循该策略。若协议以乐观路径执行,意味着请求方在数据交换过程中成功解密了应答方的数据,并完成了验证过程,那么双方的抵押金额将按照原路径退回双方账户。
非乐观路径:在协议执行过程中,若发生用户提交的请求不满足访问控制策略、应答方拒绝合法的请求、或者设备发送的数据无法通过验证等情况,都能够导致协议的终止。非乐观路径即代表这种违背预先制定的访问控制策略的情况,由非诚实的委员会或恶意的设备所有者导致,并为交易双方带来潜在的损失。在这种情况下,参与者可以向智能合约发起请求,对交易中的恶意行为方进行仲裁,并根据参与双方行为进行相应的处罚或补偿。在非乐观路径中,协议根据可能的作恶情况划分为四个阶段,不进行重复赘述。
假设安全域A中的用户为访问请求方,安全域B为应答方,描述阶段一如下:若数据交换过程中出现了请求方满足策略,而应答方拒绝应答的行为,请求方可以向智能合约提出申诉。智能合约接到仲裁请求后,分析此时存在两种情况:一是请求方A不满足访问控制策略,但发起了虚假申诉;二是应答方B拒绝为满足策略的请求方提供合法数据。
根据本申请实施例提出的基于区块链的跨域设备访问控制策略强制实施方法,通过应用区块链、智能合约与明文可验证算法,实现了去中心化访问控制系统场景下跨域访问控制的强制执行功能。建立了安全域间的公有链和安全域内的管理委员会,并将策略默克尔树根存储于公链中,防止跨域策略篡改和中间人攻击,使得访问控制的强制执行功能通过博弈论思想指导的对赌协议来执行。能够保护访问控制过程中,数据交换双方的合法权益不受侵害。具体表现在本申请具有公平性,能够使恶意请求方或应答方受到惩罚,保证诚实方的合法权益不受侵害。
其次参照附图描述根据本申请实施例提出的基于区块链的跨域设备访问控制策略强制实施方法装置。
图7为根据本申请实施例的基于区块链的跨域设备访问控制策略强制实施方法装置的方框示例图。
如图7所示,该基于区块链的跨域设备访问控制策略强制实施装置10包括:共识模块100、交换模块200和控制模块300。
其中,共识模块100,用于通过应答方定义访问策略,并由域内管理委员会达成共识,通过智能合约将跨域设备访问控制策略的默克尔树根提交到域间公有链。交换模块200,用于利用请求方发起访问请求后,控制请求方与应答方的委员会调用域间公有链中的智能合约,并分别抵押预设金额,建立请求方与应答方间的数据交换。控制模块300,用于判断请求方是否接收到应答方发送的正确数据,在未接收到时,通过请求方向智能合约进行请求开始强制执行访问控制过程,并通过预设验证方式确定数据交换中的恶意方,以及对恶意方进行惩罚。
可选地,在本申请的一个实施例中,控制模块进一步用于,在请求方接收到应答方发送的正确数据时,将抵押的预设金额分别返还至请求方和应答方的账户。
可选地,在本申请的一个实施例中,通过预设验证方式确定数据交换中的恶意方,以及对恶意方进行惩罚,包括:通过智能合约控制请求方在第一预设时间内提交策略合法证明,并对策略合法证明进行验证,若验证通过,则继续执行跨域设备访问控制策略,并在策略执行结束后,分别返还请求方和应答方的抵押金额,否则将请求方的抵押金额转移给应答方。
可选地,在本申请的一个实施例中,通过预设验证方式确定数据交换中的恶意方,以及对恶意方进行惩罚,包括:
通过智能合约控制应答方在第二预设时间内提交数据合法性证明,并通过智能合约对数据合法性证明进行存储;通过请求方获取智能合约内的数据合法性证明,并对数据合法性证明进行验证,若验证通过,则继续执行跨域设备访问控制策略,并在策略执行结束后,分别返还请求方和应答方的抵押金额,否则,继续验证密钥合法性。
需要说明的是,前述对基于区块链的跨域设备访问控制策略强制实施方法实施例的解释说明也适用于该实施例的基于区块链的跨域设备访问控制策略强制实施装置,此处不再赘述。
根据本申请实施例提出的基于区块链的跨域设备访问控制策略强制实施装置,通过应用区块链、智能合约与明文可验证算法,实现了去中心化访问控制系统场景下跨域访问控制的强制执行功能。建立了安全域间的公有链和安全域内的管理委员会,并将策略默克尔树根存储于公链中,防止跨域策略篡改和中间人攻击,使得访问控制的强制执行功能通过博弈论思想指导的对赌协议来执行。能够保护访问控制过程中,数据交换双方的合法权益不受侵害。具体表现在本申请具有公平性,能够使恶意请求方或应答方受到惩罚,保证诚实方的合法权益不受侵害。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
Claims (10)
1.一种基于区块链的跨域设备访问控制策略强制实施方法,其特征在于,包括以下步骤:
通过应答方定义访问策略,并由域内管理委员会达成共识,通过智能合约将跨域设备访问控制策略的默克尔树根提交到域间公有链;
利用请求方发起访问请求后,控制所述请求方与所述应答方的委员会调用所述域间公有链中的智能合约,并分别抵押预设金额,建立所述请求方与所述应答方间的数据交换;
判断所述请求方是否接收到所述应答方发送的正确数据,在未接收到时,通过请求方向所述智能合约进行请求开始强制执行访问控制过程,并通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚。
2.根据权利要求1所述的方法,其特征在于,还包括:
在所述请求方接收到所述应答方发送的正确数据时,将抵押的预设金额分别返还至所述请求方和所述应答方的账户。
3.根据权利要求1所述的方法,其特征在于,通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚,包括:
通过所述智能合约控制所述请求方在第一预设时间内提交策略合法证明,并对所述策略合法证明进行验证,若验证通过,则继续执行所述跨域设备访问控制策略,并在策略执行结束后,分别返还所述请求方和所述应答方的抵押金额,否则将所述请求方的抵押金额转移给所述应答方。
4.根据权利要求1所述的方法,其特征在于,通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚,包括:
通过所述智能合约控制所述应答方在第二预设时间内提交数据合法性证明,并通过所述智能合约对所述数据合法性证明进行存储;
通过所述请求方获取所述智能合约内的所述数据合法性证明,并对所述数据合法性证明进行验证,若验证通过,则继续执行所述跨域设备访问控制策略,并在策略执行结束后,分别返还所述请求方和所述应答方的抵押金额,否则,继续验证密钥合法性。
5.根据权利要求4所述的方法,其特征在于,对所述数据合法性证明进行验证,验证未通过时,继续验证密钥合法性,包括:
通过所述请求方向所述域内管理委员会发送验证时解密所得的密钥,通过所述域内管理委员会将所述密钥与公钥结合后,提交至所述智能合约;
通过所述智能合约执行明文可验证加密的验证算法,验证对称密钥与密文是否匹配,若匹配,则协议继续进行,否则,进行应答方数据合法性验证;
通过所述智能合约根据对称密钥,验证数据能否被正确解密,若能,则所述请求方为虚假申诉,对所述请求方进行惩罚;若不能,则所述应答方发送错误数据元组,对所述应答方进行惩罚。
6.根据权利要求5所述的方法,其特征在于,所述进行应答方数据合法性验证,包括:
通过所述智能合约要求所述应答方提供证据,以证明所述应答方拥有合法数据;
通过所述应答方使用合约公钥加密合法对称密钥,并提交给所述智能合约,所述智能合约使用明文可验证算法,验证数据元组与当前对称密钥是否匹配,并根据算法的输出结果,决定惩罚所述请求方、所述应答方,或没收双方的抵押金额。
7.一种基于区块链的跨域设备访问控制策略强制实施装置,其特征在于,包括:
共识模块,用于通过应答方定义访问策略,并由域内管理委员会达成共识,通过智能合约将跨域设备访问控制策略的默克尔树根提交到域间公有链;
交换模块,用于利用请求方发起访问请求后,控制所述请求方与所述应答方的委员会调用所述域间公有链中的智能合约,并分别抵押预设金额,建立所述请求方与所述应答方间的数据交换;
控制模块,用于判断所述请求方是否接收到所述应答方发送的正确数据,在未接收到时,通过请求方向所述智能合约进行请求开始强制执行访问控制过程,并通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚。
8.根据权利要求7所述的装置,其特征在于,控制模块进一步用于,在所述请求方接收到所述应答方发送的正确数据时,将抵押的预设金额分别返还至所述请求方和所述应答方的账户。
9.根据权利要求7所述的装置,其特征在于,通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚,包括:
通过所述智能合约控制所述请求方在第一预设时间内提交策略合法证明,并对所述策略合法证明进行验证,若验证通过,则继续执行所述跨域设备访问控制策略,并在策略执行结束后,分别返还所述请求方和所述应答方的抵押金额,否则将所述请求方的抵押金额转移给所述应答方。
10.根据权利要求7所述的装置,其特征在于,通过预设验证方式确定所述数据交换中的恶意方,以及对所述恶意方进行惩罚,包括:
通过所述智能合约控制所述应答方在第二预设时间内提交数据合法性证明,并通过所述智能合约对所述数据合法性证明进行存储;
通过所述请求方获取所述智能合约内的所述数据合法性证明,并对所述数据合法性证明进行验证,若验证通过,则继续执行所述跨域设备访问控制策略,并在策略执行结束后,分别返还所述请求方和所述应答方的抵押金额,否则,继续验证密钥合法性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211295762.XA CN115913647A (zh) | 2022-10-21 | 2022-10-21 | 基于区块链的跨域设备访问控制策略强制实施方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211295762.XA CN115913647A (zh) | 2022-10-21 | 2022-10-21 | 基于区块链的跨域设备访问控制策略强制实施方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115913647A true CN115913647A (zh) | 2023-04-04 |
Family
ID=86496489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211295762.XA Pending CN115913647A (zh) | 2022-10-21 | 2022-10-21 | 基于区块链的跨域设备访问控制策略强制实施方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115913647A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116800435A (zh) * | 2023-08-21 | 2023-09-22 | 成都信息工程大学 | 基于零知识证明和跨链的访问控制方法、系统及存储介质 |
-
2022
- 2022-10-21 CN CN202211295762.XA patent/CN115913647A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116800435A (zh) * | 2023-08-21 | 2023-09-22 | 成都信息工程大学 | 基于零知识证明和跨链的访问控制方法、系统及存储介质 |
CN116800435B (zh) * | 2023-08-21 | 2023-12-19 | 成都信息工程大学 | 基于零知识证明和跨链的访问控制方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6219423B1 (en) | System and method for digitally signing a digital agreement between remotely located nodes | |
CN107113179B (zh) | 用于通信验证的方法、系统及非瞬时计算机可读存储介质 | |
US8756675B2 (en) | Systems and methods for security in a wireless utility network | |
CN112311735B (zh) | 可信认证方法,网络设备、系统及存储介质 | |
WO1997050205A9 (en) | Digitally signing agreements from remotely located nodes | |
JP2007518369A (ja) | Ocsp及び分散型ocspのための効率的に署名可能なリアルタイム・クレデンシャル | |
Terzi et al. | Securing emission data of smart vehicles with blockchain and self-sovereign identities | |
CN114329529A (zh) | 一种基于区块链的资产数据管理方法及系统 | |
CN113850599B (zh) | 一种应用于联盟链的跨链交易方法及系统 | |
EP3966997B1 (en) | Methods and devices for public key management using a blockchain | |
Fuchsbauer et al. | Anonymous proxy signatures | |
JP2023503607A (ja) | 自動デジタル証明書検証のための方法およびデバイス | |
EP3707853B1 (en) | Conducting secure interactions utilizing reliability information | |
CN115865418A (zh) | 一种基于区块链和拜占庭容错算法的跨域访问控制方案 | |
US20230319103A1 (en) | Identifying denial-of-service attacks | |
US7222362B1 (en) | Non-transferable anonymous credentials | |
CN115913647A (zh) | 基于区块链的跨域设备访问控制策略强制实施方法及装置 | |
Abe et al. | Double-trapdoor anonymous tags for traceable signatures | |
Liu et al. | Secure and Scalable Cross-Domain Data Sharing in Zero-Trust Cloud-Edge-End Environment Based on Sharding Blockchain | |
CN116797227A (zh) | 基于同态加密的客户隐私信息安全交换保护方法及系统 | |
CN114401091B (zh) | 基于区块链的设备跨域认证管理方法及装置 | |
Nait-Hamoud et al. | Certificateless Public Key Systems Aggregation: An enabling technique for 5G multi-domain security management and delegation | |
Orsini et al. | How to Recover a Cryptographic Secret From the Cloud | |
CN113495924A (zh) | 一种基于区块链的可防伪数据安全共享方法 | |
CN112422534A (zh) | 电子证书的信用评估方法以及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |