一种区块链访问控制中的权限传递方法

文档序号:1478692 发布日期:2020-02-25 浏览:1次 >En<

阅读说明:本技术 一种区块链访问控制中的权限传递方法 (Authority transfer method in block chain access control ) 是由 李茹 史锦山 张新 张晓东 张江徽 于 2019-11-15 设计创作,主要内容包括:本发明公开了一种区块链访问控制中的权限传递方法,在区块链访问控制中将资源的权限抽象成非同质通证存储在区块链中,本发明通过智能合约实现权限的传递,使用户可以对权限进行更加灵活的操作。当资源访问者想要将自己所拥有的权限传递给另一个用户,使用部署在区块链上的权限传递智能合约将代表权限的通证传递给另一个用户,由智能合约自动验证接收通证的用户是否有接收的权限,避免将权限传递给非法用户。本申请中的权限传递方法使基于区块链的访问控制更加灵活安全。(The invention discloses a permission transfer method in block chain access control, which abstracts the permission of resources into non-homogeneous general evidence and stores the non-homogeneous general evidence in a block chain in the block chain access control. When a resource visitor wants to transmit the own authority to another user, the authority transmission intelligent contract deployed on the block chain is used for transmitting the permit representing the authority to the other user, whether the user receiving the permit has the authority to receive or not is automatically verified by the intelligent contract, and the authority is prevented from being transmitted to an illegal user. The permission transfer method enables access control based on the block chain to be more flexible and safer.)

一种区块链访问控制中的权限传递方法

技术领域

本发明涉及基于区块链的访问控制领域,尤其涉及一种区块链访问控制中的权限传递的方法。

背景技术

区块链作为一种分布式去中心化的计算和存储架构,解决了访问控制中心化决策机构设计所导致的问题。中心化决策机构存在的问题主要体现在单点故障以及中心机构自身的安全问题。当研究者将区块链引入访问控制中后,提出了多种基于区块链的访问控制模型,由于区块链最初是作为一种以密码学算法为基础的点对点分布式账本技术,因此基于区块链在访问控制将资源的权限抽象成非同质通证,通过通证的交易传递来实现权限的授予。

将权限映射为通证的方法天然契合权限传递功能,通过区块链中的交易或者智能合约可以灵活的传递权限。但是也因此带来了安全隐患,权限拥有者可能会将权限传递给非法用户,从而导致权限泄露问题。目前,现有的在区块链上通过交易实现的权限传递方法,有着严重的安全隐患,这些传递方法中没有考虑权限的约束,即接收权限的用户并没有经过访问控制策略的决策而直接被权限拥有者赋予了权限,所以权限的传递会导致资源的访问权限可能被合法用户传递给非法用户。如何在权限传递过程中保证权限的安全性是目前基于区块链的访问控制所必须解决的一个问题

发明内容

针对现有技术的不足,本发明提出了一种区块链访问控制中的权限传递的方法,既提高了访问控制中权限管理的灵活性,同时又避免了权限在用户间传递所带来的安全问题。

本发明的目的是通过以下技术方案来实现的:一种区块链访问控制中的权限传递方法,该方法在原本仅需要权限的发送者和权限的接收者参与的权限传递方法的基础上,增加了权限的访问控制策略作为另一个参与方,权限接收者如果想要接收相应的权限,必须满足相应权限的访问控制策略。新的权限传递方案由部署在区块链上的智能合约实现。

一种区块链访问控制中权限传递的工作流程:

当权限允许被传递时,拥有资源访问权限的权限拥有者A想要将该权限传递给资源访问者B时,需要在符合该权限约束的条件下,共同商定一份满足权限传递智能合约要求的权限传递消息。

所述权限传递消息的内容是权限拥有者A将权限传递给资源访问者B。

所述权限传递消息起效需要获得权限拥有者A、B和资源的访问控制合约三者的共同认可。

若所述权限传递消息被发送到区块链中的权限传递智能合约,合约将传递的内容发送给资源的访问控制合约

所述访问控制合约S会从PIP获取资源访问者B的信息,同时结合权限的约束、属性做出决策。

若是同意传递,则访问控制合约会给权限传递合约发送同意的信息,然后权限传递合约将权限的拥有者由权限拥有者A改为资源访问者B。否则权限传递失败。

所述区块链访问控制中的权限传递方法包括三种实现方法,第一种方法是在每一次权限传递时都对权限接收者进行一次完整的授权决策过程,只有当权限接收者被访问控制系统判断满足使用该权限时,权限传递才可以发生,否则权限传递失败。

所述区块链访问控制中的权限传递的第二种方法,在基于区块链的访问控制中,权限通常以非同质通证的形式表示,权限的传递在区块链的表现就是通证的传递。所述权限传递的第一种方法需要对权限接收者进行一次完整的授权决策过程,对于例如物联网这样的复杂环境中,访问控制系统拥有大量的访问策略,而某个权限所对应的策略往往需要在大量的访问策略中搜索并组合形成,这个搜索的时间随着访问策略数的增加而增加。

因此权限传递的第二种方法,在权限通证中集成了权限对应访问策略的索引,每一次权限传递时,根据通证中的访问策略索引直接找到对应的访问控制策略,然后对权限接收者进行决策,只有当权限接收者被访问控制系统判断满足使用该权限时,权限传递才可以发生,否则权限传递失败。

所述区块链访问控制中的权限传递的第三种方法,将权限所对应的访问控制策略直接集成到通证中,这样当权限传递时,直接读取通证中的访问控制策略进行决策,判断权限接收者是否有权使用该权限,只有当权限接收者被判断满足使用该权限时,权限传递才可以发生,否则权限传递失败。

所述三种权限传递方法,各自有各自的优点和缺点,适用的场景也各不相。若所述第一种权限传递方法花费时间太长,可以使用第二种方法。若所述第二种权限传递方法花费的时间还长,可以使用第三种方法,但是这三种方法所需的存储开销是依次增加的,需要根据应用的不同选择不同的权限传递方法。

总的来说,本发明的有益效果如下:

本发明的三种权限传递方法,都在权限传递的过程中对权限接收者进行了验证,都判断了权限接收者是否有权使用被传递的权限,只有当权限接收者被判断满足使用该权限时,权限传递才可以发生,否则权限传递失败。本发明避免了权限在传递过程中被非法用户获取的可能性,解决了访问控制中的一种非授权访问漏洞。

附图说明

图1是本发明区块链访问控制中的权限传递方法示意图;

图2是本发明区块链访问控制中的权限传递方法第一实施例的流程示意图;

图3是本发明区块链访问控制中的权限传递方法第二实施例的流程示意图;

图4是本发明区块链访问控制中的权限传递方法第三实施例的流程示意图。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,图1是本发明方案涉及的基于区块链访问控制的权限传递流程示意图。该方法使用智能合约进行权限的传递。其中权限的传递指的是用户A获取的某资源的权限后,将该权限传递给用户B的过程,以下对本申请中所用的专业名词进行解释:

(1)通证(token)是区块链中代表访问控制权限的实体,本发明中的通证指的是非同质的通证。

(2)策略执行点(Policy Enforcement Point,PEP)是在一个具体的应用环境下执行访问控制的实体。

(3)策略信息点(Policy Information Point,PIP)是指提供给访问控制系统信息的实体,通过它可以获取主体、资源和环境的属性信息的实体。

如图1所示的权限传递流程按照如下步骤完成权限的传递:

第1步:拥有资源s的访问权限的权限拥有者A和资源访问者B协商,决定将资源s的权限通证传递给资源访问者B。

第2步:权限拥有者A将协商结果生成的权限传递消息发送给区块链网络中的权限传递智能合约,权限传递消息的内容是将权限拥有者A的权限TS传递给资源访问者B。

第3步:资源访问者B向权限传递智能合约发送确认接收授权令牌TS的请求。

第4步:权限传递的生效需要A、B和资源s的访问控制合约三方全部同意,因此SCAC要把权限传递消息的信息发送给SCT

第5步:SCAC中的访问控制策略需要做出决策是否同意授权令牌的传递,因此需要验证授权令牌TS的属性和约束是否合法,然后向PIP获取B的相关信息,验证B是否合法。

第6步:SCT根据收集到的信息做出决策,然后将决策结果返回给SCAC

第7步:若是同意,则SCAC将通证TS发送给B并告知A;若是拒绝,SCAC将拒绝信息发送给B并告知A。

基于上述的权限传递流程,提出区块链访问控制中的权限传递的各个实施例。

参照图2,图2为本发明区块链访问控制中的权限传递方法第一实施例的流程示意图。

本发明实施例提供了区块链访问控制方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

区块链访问控制中的权限传递方法第一实施例工作流程包括:

当权限传递双方确定要传递权限后,由权限发送者向区块链中的权限传递智能合约发送权限传递消息。

权限传递合约收到权限传递消息后首先会验证消息是否正确,然后将所传递的消息和权限接收者的信息发送给访问控制智能合约,由访问控制合约根据权限的访问控制策略判断权限接收者是否有权使用这个权限。

若所述权限接收者有权使用权限,权限传递合约会将权限的拥有者由权限发送者改为权限接收者,同时将权限传递的内容记录在区块链中,并返回结果。

若所述权限接收者没有使用权限的权力,则权限传递失败,返回失败结果。

参照图3,图3为本发明区块链访问控制中的权限传递方法第二实施例的流程示意图。所述权限传递方法第二实施例与所述区块链访问控制方法第一实施例的区别在于:

(1)在权限通证中集成了权限对应访问控制策略的索引。

(2)权限传递合约收到权限传递消息后首先会验证消息是否正确,然后从权限通证中提取出权限所对应的访问控制策略的索引,然后将索引信息和权限接收者的信息发送给访问控制智能合约。

(3)根据收到的策略索引组合成权限所对应的完整的访问控制策略,然后对权限接收者进行判断,判断其是否可以使用权限。

参照图4,图4为本发明区块链访问控制中的权限传递方法第三实施例的流程示意图。所述权限传递方法第三实施例与所述前面两个实施例的区别在于:

(1)将权限所对应的访问控制策略直接集成到通证中,因此当权限传递合约收到权限传递消息后,可以直接提取通证中的访问控制策略,判断权限接收者是否有权使用这个权限。

(2)不需要把信息传递给访问控制合约判断,因此传递所花时间更短,但是通证的存储代价更高。

本领域普通技术人员可以理解,以上所述仅为发明的优选实例而已,并不用于限制发明,尽管参照前述实例对发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在发明的精神和原则之内,所做的修改、等同替换等均应包含在发明的保护范围之内。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于强化学习的恶意用户行为智能检测方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类