一种基于区块链的用户授权与数据共享访问控制方法技术

技术编号:19751439 阅读:29 留言:0更新日期:2018-12-12 05:48
本发明专利技术公开了一种基于区块链的用户授权与数据共享访问控制方法,实施步骤包括:确定用户所具有的安全属性生成并发布用户通证且保存在区块链中;对数据对象生成安全属性标记且保存在区块链中;生成以用户通证与数据安全属性标记为关键字的访问控制规则列表且以智能合约的形式保存在区块链上;当用户访问数据对象时,首先从区块链上获取该用户的用户通证与被访问的数据对象的安全属性标记,运行智能合约,判断该用户是否具有对该数据对象的访问权限,如果具有则允许用户访问数据对象,否则拒绝用户访问数据对象。本发明专利技术能够提高安全性、鲁棒性的同时兼顾决策性能,针对解决多维授权与访问控制具有很强的普适性。

【技术实现步骤摘要】
一种基于区块链的用户授权与数据共享访问控制方法
本专利技术涉及用户授权与数据共享访技术,具体涉及一种基于区块链的用户授权与数据共享访问控制方法。
技术介绍
当前,人们的日常生活、社会活动都越来越依赖网络虚拟环境的支持,人类社会正在逐渐步入数字化社会时代,更多的现实世界行为被迁移到网络虚拟空间进行处理,并且呈现弱中心化的趋势。如何在数字世界中对纷繁芜杂的人类社会关系进行准确刻画并实施严格管理,成为摆在我们面前亟需解决的重要问题。例如,基于互联网的开放式信息流转平台不断涌现,越来越多的用户向平台主动提供数据信息内容,同时也可以获取他人提供的信息。通过这样的信息流转,完成了信息的高速流转。在这样的服务中,提供信息者会获得更多权益,从而去获取他人提供的信息。当所流转的信息具有较强的敏感性时(例如医疗、军工等),对信息流向的控制就显得尤为重要,需要对系统中的各类用户的权限进行准确刻画授权,并以此为基础实施有效的访问控制。区块链技术作为此种背景下数字化社会信任问题的一种有效解决方案,成为研究热点。区块链技术最初是为解决比特币等加密电子货币的可信记账问题而产生。该技术基于P2P网络与密码学的支持,综合运用时间戳、分布式共识以及经济激励等手段,实现了基于分散式(Decentralized)信用的加密货币交易与用户协作。由于该技术在去权威中心或弱权威中心的条件下成功地解决了分布式系统的信用问题,并具有防伪造、防篡改、可追溯等安全特点,后续研究对该技术不断进行扩展,引入智能合约对上层多种形式的应用提供支持。当前,区块链技术受到了广泛关注,在数字货币、数据存储、数据鉴证、金融交易、资产管理和选举投票等方向的应用探索已经全面展开。随着这些应用不断落地实现,相信在不远的未来,区块链将成为未来解决数字社会信任关系的基础性支撑技术。在各类应用场景中,上层应用系统主要利于区块链记录数据高度冗余、难于篡改的特性,来完成对安全敏感行为的记录与控制。其中,通证与智能合约是区块链中对上层应用提供的重要安全支持的技术手段。通证(Token)是数字权益证明,以数字的形式表示用户在系统中的权益凭证,代表用户在应用中所具有的权利,是用户固有和内在价值的集中体现。通证在区块链系统中最具特色的应用之一,区块链为通证的权利验证与流通提供了信任基础,通过区块链的分散式不可篡改特性来保证通证的真实性、完整性与隐私性。因此,在基于区块链系统构建的对上层应用的权益管理时,通证可以作为天然的用户权益代表,在用户授权与访问控制的过程当中发挥重要作用。智能合约是在区块链系统上一种自动运行的计算机协议,由某个用户进行制定和部署,然后合约将在整个系统中进行自我执行与自我验证,无需人为干预。目前,以太坊等已经支持图形完备的脚本语言,支持针对上层各类复杂应用灵活制定的多样化的精准智能合约,对系统执行实施自动化控制。由于智能合约一旦部署就自动实施,人工无法干预,因此更能够保证控制过程的公平与安全;而由于智能合约是分散部署在区块链各个节点上,控制决策的监督与仲裁由网络全体用户来共同判断,很好的解决了分布式系统中安全控制的单点问题,避免单个权威引起的安全公正性问题,并且极大增强了鲁棒性。同时在性能方面,由于智能合约的自动执行特点,大大缩短了用户请求响应时间,提高了交易决策效率。因此,将区块链用于信息流转系统实现用户多维授权与访问控制具有良好的应用前景,但是如何将区块链实现用户多维授权与访问控制,仍然是一项亟待解决的关键技术问题。
技术实现思路
本专利技术要解决的技术问题:针对现有技术的上述问题,提供一种基于区块链的用户授权与数据共享访问控制方法,本专利技术对用户在多种不同维度下所具有的权限进行标识,通过智能合约来实现系统访问过程中基于用户通证的分散式访问控制,在提高安全性、鲁棒性的同时兼顾决策性能,针对解决信息流转系统的多维授权具有很强的普适性,可以在各类基于区块链的应用系统上进行修改,实施对系统用户的权限管理与访问控制,用户通证的刻画与访问控制规则制定与实施的流程基本一致,仅需安全具体应用的行为调整具体要做控制的行为即可。为了解决上述技术问题,本专利技术采用的技术方案为:一种基于区块链的用户授权与数据共享访问控制方法,实施步骤包括:1)预先根据用户在信息流转系统中所具有的身份,确定用户所具有的安全属性,生成并发布用户通证,将用户通证信息保存在区块链中;根据数据对象在信息流转系统中所具有的安全属性,对数据对象生成安全属性标记,将各个数据对象的安全属性标记保存在区块链中;根据信息流转系统中各类用户对不同数据对象的权限,生成以用户通证与数据安全属性标记为关键字的访问控制规则列表,以智能合约的形式保存在区块链上;2)当用户访问数据对象时,首先从区块链上获取该用户的用户通证与被访问的数据对象的安全属性标记,运行智能合约,判断该用户是否具有对该数据对象的访问权限是否成立,如果成立则允许用户访问数据对象,否则拒绝用户访问数据对象。优选地,步骤1)中生成并发布用户通证时,使用属性通证代表系统对用户的授权,将用户权限由属性通证来刻画,用户通证的通用表示格式为:{属性通证类别1}:……:{属性通证类别n}:数值通证1:……:数值通证m其中,属性通证类别表示用户在某一安全属性类别下的具有何种具体安全属性,该类通证仅区别币种,不区分具体通证的数量,如果第i个属性通证类别中的第j种属性通证账户余额大于0,表示该通证具有该属性;如果账户余额等于0,则表示该通证不具有该属性,n为属性通证类别的数量;数值通证表示用户的某一类型通证的具体数量多少,当交易发生时通证数量会相应的减少或增加,m为数值通证的数量;假设每种属性通证类别包含的通证种类为Ni,则共需发行N1+N2+...+Nn+m种通证。优选地,步骤1)中生成并发布用户通证时,生成并发布的数值通证1~数值通证m中存在一项用户通证j为有效期通证,所述有效期通证的具体数值代表该通证的有效期限,超过该时间的通证被认为是无效通证。优选地,步骤1)中生成并发布用户通证时,生成并发布的数值通证1~数值通证m中存在一项用户通证k为激励通证,所述激励通证的具体数值代表该用户账户所持有的激励金,用户账户中有一个初始激励金余额,且当使用数据共享平台提供的数据存储与数据处理服务时,需要向数据拥有者或数据处理管理方支付指定数量的激励金;当该用户所共享的数据被其他用户访问时,也将获得指定数量的激励金。优选地,步骤1)中对数据对象生成安全属性标记时,数据对象的安全属性标记的通用表示格式为:{属性标记类别1}:.....:{属性标记类别n}:数值标记1:.....:数值标记m其中,属性标记类别表示数据在某一类别下的具有何种属性,该类标记仅区别币种,不区分数量,n为属性标记类别数量;数值标记表示文件在某一标记下的具体数量多少;当交易发生时,标记数量会相应的减少或增加,m为数值标记数量;假设每种属性标记类别包含的标记种类为Ni,则共需定义N1+N2+...+Nn+m种安全属性标记。优选地,步骤1)中生成以用户通证与数据安全属性标记为关键字的访问控制规则列表时,在访问控制规则中,以数据的安全属性标记为关键字,每项访问控制规则以Key/Value形式表述且一个允许的访问操作类型集合,Key为客体的安全本文档来自技高网
...

【技术保护点】
1.一种基于区块链的用户授权与数据共享访问控制方法,其特征在于实施步骤包括:1)预先根据用户在信息流转系统中所具有的身份,确定用户所具有的安全属性,生成并发布用户通证,将用户通证信息保存在区块链中;根据数据对象在信息流转系统中所具有的安全属性,对数据对象生成安全属性标记,将各个数据对象的安全属性标记保存在区块链中;根据信息流转系统中各类用户对不同数据对象的权限,生成以用户通证与数据安全属性标记为关键字的访问控制规则列表,以智能合约的形式保存在区块链上;2)当用户访问数据对象时,首先从区块链上获取该用户的用户通证与被访问的数据对象的安全属性标记,运行智能合约,判断该用户是否具有对该数据对象的访问权限是否成立,如果成立则允许用户访问数据对象,否则拒绝用户访问数据对象。

【技术特征摘要】
1.一种基于区块链的用户授权与数据共享访问控制方法,其特征在于实施步骤包括:1)预先根据用户在信息流转系统中所具有的身份,确定用户所具有的安全属性,生成并发布用户通证,将用户通证信息保存在区块链中;根据数据对象在信息流转系统中所具有的安全属性,对数据对象生成安全属性标记,将各个数据对象的安全属性标记保存在区块链中;根据信息流转系统中各类用户对不同数据对象的权限,生成以用户通证与数据安全属性标记为关键字的访问控制规则列表,以智能合约的形式保存在区块链上;2)当用户访问数据对象时,首先从区块链上获取该用户的用户通证与被访问的数据对象的安全属性标记,运行智能合约,判断该用户是否具有对该数据对象的访问权限是否成立,如果成立则允许用户访问数据对象,否则拒绝用户访问数据对象。2.根据权利要求1所述的基于区块链的用户授权与数据共享访问控制方法,其特征在于,步骤1)中生成并发布用户通证时,使用属性通证代表系统对用户的授权,将用户权限由属性通证来刻画,用户通证的通用表示格式为:{属性通证类别1}:……:{属性通证类别n}:数值通证1:……:数值通证m其中,属性通证类别表示用户在某一安全属性类别下的具有何种具体安全属性,该类通证仅区别币种,不区分具体通证的数量,如果第i个属性通证类别中的第j种属性通证账户余额大于0,表示该通证具有该属性;如果账户余额等于0,则表示该通证不具有该属性,n为属性通证类别的数量;数值通证表示用户的某一类型通证的具体数量多少,当交易发生时通证数量会相应的减少或增加,m为数值通证的数量;假设每种属性通证类别包含的通证种类为Ni,则共需发行N1+N2+...+Nn+m种通证。3.根据权利要求2所述的基于区块链的用户授权与数据共享访问控制方法,其特征在于,步骤1)中生成并发布用户通证时,生成并发布的数值通证1~数值通证m中存在一项数值通证j为有效期通证,所述有效期通证的具体数值代表该通证的有效期限,超过该时间的通证被认为是无效通证。4.根据权利要求2所述的基于区块链的用户授权与数据共享访问控制方法,其特征在于,步骤1)中生成并发布用户通证时,生成并发布的数值通证1~数值通证m中存在一项数值通证k为激励通证,所述激励通证的具体数值代表该用户账户所持有的激励金,用户账户中有一个初...

【专利技术属性】
技术研发人员:丁滟史佩昌黄辰林董攀谭郁松陈昌杨文韬李小玲王晓川
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:湖南,43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1