CN108989357B - 一种基于区块链的用户授权与数据共享访问控制方法 - Google Patents

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

Info

Publication number
CN108989357B
CN108989357B CN201811062956.9A CN201811062956A CN108989357B CN 108989357 B CN108989357 B CN 108989357B CN 201811062956 A CN201811062956 A CN 201811062956A CN 108989357 B CN108989357 B CN 108989357B
Authority
CN
China
Prior art keywords
user
pass
attribute
data
type
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.)
Active
Application number
CN201811062956.9A
Other languages
English (en)
Other versions
CN108989357A (zh
Inventor
丁滟
史佩昌
黄辰林
董攀
谭郁松
陈昌
杨文韬
李小玲
王晓川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201811062956.9A priority Critical patent/CN108989357B/zh
Publication of CN108989357A publication Critical patent/CN108989357A/zh
Application granted granted Critical
Publication of CN108989357B publication Critical patent/CN108989357B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

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

Description

一种基于区块链的用户授权与数据共享访问控制方法
技术领域
本发明涉及用户授权与数据共享访技术,具体涉及一种基于区块链的用户授权与数据共享访问控制方法。
背景技术
当前,人们的日常生活、社会活动都越来越依赖网络虚拟环境的支持,人类社会正在逐渐步入数字化社会时代,更多的现实世界行为被迁移到网络虚拟空间进行处理,并且呈现弱中心化的趋势。如何在数字世界中对纷繁芜杂的人类社会关系进行准确刻画并实施严格管理,成为摆在我们面前亟需解决的重要问题。例如,基于互联网的开放式信息流转平台不断涌现,越来越多的用户向平台主动提供数据信息内容,同时也可以获取他人提供的信息。通过这样的信息流转,完成了信息的高速流转。在这样的服务中,提供信息者会获得更多权益,从而去获取他人提供的信息。当所流转的信息具有较强的敏感性时(例如医疗、军工等),对信息流向的控制就显得尤为重要,需要对系统中的各类用户的权限进行准确刻画授权,并以此为基础实施有效的访问控制。
区块链技术作为此种背景下数字化社会信任问题的一种有效解决方案,成为研究热点。区块链技术最初是为解决比特币等加密电子货币的可信记账问题而产生。该技术基于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为客体的安全属性标记;Value为对该客体访问需要满足的条件,且条件以合取范式的通用表示为:“条件1||条件2||......”,每个条件描述主体通证所必须具有的属性通证的类型、数值通证的数量;每项访问控制规则的通用表示格式为:
{属性通证类别1}&&.....&&{属性通证类别n}&&数值通证1&&.....&&数值通证m:{允许的访问操作类型}
其中,属性通证类别1~属性通证类别n是指针对某一客体设置对该客体访问需要满足的条件所需满足的属性通证类别,数值通证1~m是指针对某一客体设置对该客体访问需要满足的条件所需满足的数值通证,允许的访问操作类型是指针对某一客体设置对该客体访问所被允许的访问操作类型。
优选地,每项访问控制规则的条件Value中以通配符“*”表示该类别中任何类型的通证均满足条件,以通配符“+”表示逻辑“或”运算。
和现有技术相比,本发明具有下述优点:本发明对用户在多种不同维度下所具有的权限进行标识,通过智能合约来实现系统访问过程中基于用户通证的分散式访问控制,在提高安全性、鲁棒性的同时兼顾决策性能,针对解决信息流转系统的多维授权具有很强的普适性,可以在各类基于区块链的应用系统上进行修改,实施对系统用户的权限管理与访问控制,用户通证的刻画与访问控制规则制定与实施的流程基本一致,仅需安全具体应用的行为调整具体要做控制的行为即可。
附图说明
图1为本发明实施例方法的基本流程示意图。
图2为本发明实施例中的系统原理结构示意图。
图3为本发明实施例中用户通证管理的流程示意图。
图4为本发明实施例中用户申请换发临时通证的流程示意图。
图5为本发明实施例中数据的安全属性标记管理的流程示意图。
具体实施方式
本发明基于区块链的用户授权与数据共享访问控制方法的基本原理是采取基于主客体安全标识来制定访问控制策略的基本思路是分别对开放式信息流转系统中的主体(用户)与客体(数据)进行安全属性标识,用户通证为主体安全标识,文件安全属性标记为客体安全标识,当访问发生时,系统通过智能合约检查当次主体对客体的访问类型是否满足访问控制规则的要求。下文将对本发明基于区块链的用户授权与数据共享访问控制方法进行进一步的详细说明。如图1所示,本实施例基于区块链的用户授权与数据共享访问控制方法的实施步骤包括:
1)预先根据用户在信息流转系统中所具有的身份,确定用户所具有的安全属性,生成并发布用户通证,将用户通证信息保存在区块链中;根据数据对象在信息流转系统中所具有的安全属性,对数据对象生成安全属性标记,将各个数据对象的安全属性标记保存在区块链中;根据信息流转系统中各类用户对不同数据对象的权限,生成以用户通证与数据安全属性标记为关键字的访问控制规则列表,以智能合约的形式保存在区块链上;
2)当用户访问数据对象时,首先从区块链上获取该用户的用户通证与被访问的数据对象的安全属性标记,运行智能合约,判断该用户是否具有对该数据对象的访问权限是否成立,如果成立则允许用户访问数据对象,否则拒绝用户访问数据对象。
本实施例中,步骤1)中生成并发布用户通证时,使用属性通证代表系统对用户的授权,将用户权限由属性通证来刻画,用户通证的通用表示格式为:
{属性通证类别1}:……:{属性通证类别n}:数值通证1:……:数值通证m
其中,属性通证类别表示用户在某一安全属性类别下的具有何种具体安全属性,该类通证仅区别币种,不区分具体通证的数量,如果第i个属性通证类别中的第j种属性通证账户余额大于0,表示该通证具有该属性;如果账户余额等于0,则表示该通证不具有该属性,n为属性通证类别的数量;数值通证表示用户的某一类型通证的具体数量多少,当交易发生时通证数量会相应的减少或增加,m为数值通证的数量;假设每种属性通证类别包含的通证种类为Ni,则共需发行N1+N2+...+Nn+m种通证。本实施例中,具体通过彩币(类似比特币,为虚拟货币的一种)的形式实现用户通证,对用户在多种不同维度下所具有的权限进行标识;通过智能合约来实现系统访问过程中基于用户通证的分散式访问控制,在提高安全性、鲁棒性的同时兼顾决策性能,每一种颜色的彩币仅有“0”和“1”两种状态,并不区分币值的数量大小,当币值为“1”时,表示用户拥有该类型的属性通证,当交易发生时,彩币的数量也不会相应的减少。以某行业协会的信息流转系统为例,协会的每个委员,即可以按照地理位置,属于某个地方分布;同时也可以根据具体的专业,属于某一个或多个专业委员会。假设系统按照该协会组织结构设定了“片区分布”、“专业委员会”、“工作委员会”、“职位”四种属性标记类别,包括:
片区分布:“中央理事会、东部片区、西部片区、南部片区、北部片区、中部片区”
职位1:“主任、常务委员、秘书长、委员”;
专业委员会:“专业1,...,专业5”
职位2:“主任、常务委员、秘书长、委员”;
本实施例中,步骤1)中生成并发布用户通证时,生成并发布的数值通证1~数值通证m中的存在一项用户通证j为有效期通证,j∈[1,m],有效期通证的具体数值代表该通证的有效期限,超过该时间的通证被认为是无效通证。常规通证的有效期一般较长;临时通证则根据用户申请的时间,有效期比较短。
本实施例中,步骤1)中生成并发布用户通证时,生成并发布的数值通证1~数值通证m中存在一项用户通证k为激励通证,k∈[1,m],激励通证代表该用户账户所持有的激励金,用户账户中有一个初始激励金余额,且当使用数据共享平台提供的数据存储以及数据处理等服务时,需要向数据拥有者或数据处理管理方支付一定数量的激励金;当该用户所共享的数据被其他用户访问时,也将获得一定量的激励金。激励通证代表用户在数据共享平台公共基础设施中的使用权与话语权。初始情况下,用户被赋予一定量的初始激励金;当用户在平台上存储/下载数据以及使用安全屋的服务时,都需要支付一定的激励金。当该用户的数据被其他用户访问时,将获得访问数据的用户所支付的激励金。拥有更多激励金意味着可以使用更多的服务,同时也激励大家提供更高质量的共享数据以获取更多的访问激励。以激励通证来鼓励用户共享高质量的数据,从而获取更多的使用数据共享平台应用的权力。需要注意的是,激励的增加并不代表用户的访问控制权限的扩大,所进行的访问仍受其属性通证的控制。
本实施例中系统共需发行6+4+5+4+2=21种通证。
示例一:常规通证“张三是东部片区的委员,加入了专业1委员会(任职秘书长)”,张三将获得以下通证:
“东部:委员:专业1:秘书长:205001010000:1000”
示例二:临时通证“李四是中央理事会的常务委员,加入了专业2委员会(委员)”这样的描述就可以定义为以下通证,其有效期为很短的一个时间限:
“中央:常务委员:专业2:委员:201804190000:1000”
如图2所示,本实施例中为了对整个数据共享平台进行统一管理,系统设置了集中管控端,负责对系统中的用户通证授权管理、用户密钥生成、访问控制规则管理,生成的用户密钥通过网络方式下发,通过给各用户赋予通证来进行授权;用户通过用户终端的文件安全属性标记管理模块管理自己拥有的数据的安全属性;数据访问控制决策模块位于通证链上,通过访问控制合约的执行来进行决策,访问控制实施由文件系统层执行,根据决策结果对访问行为进行控制。如图3所示,本实施例中常规通证的发布由集中管控端的用户通证管理模块完成,集中管控端的用户通证管理模块需要为集中管控用户提供如下接口:(1)用户通证的发布:用户通证管理模块根据该用户的具体安全属性生成通证,并通过交易转账的形式向该用户发布通证;(2)用户通证的撤销:用户通证管理模块发起交易,清空该用户的通证账户;(3)用户通证的修改:当用户的访问次数、账户余额等用完需要加币,或者用户的属性通证发生变化时,通过特定交易,修改用户的通证:对属性通证通过转账或清0,设置或取消相应的属性;对于数值型的通证,则通过交易调整通证余额。具体实现时,可基于智能合约方式进行自动批量处理。
如图4所示,本实施例中临时通证用于对某用户的临时授权,需要用户使用其常规通证作为抵押,并且需要有一个与目标临时通证的属性相同或具有更高安全级别的用户来做担保,符合条件时才后向其颁发临时通证,同时回收其常规通证;用户使用临时通证完成操作后,需要再向集中控制端换回其常规通证。并且临时通证通常有效期较短,超过有效时间后就不能再被使用。用户申请换发临时通证的流程如下:(1)需要换发临时通证的用户向集中管控端发起换证申请,包括希望换发的目标临时通证、担保用户信息、申请的有效期等;(2)集中管控端收到请求后,向担保用户求证,是否允许此次换发;(3)如果担保用户允许,则对该用户发布临时通证,其原有通证被撤销;(4)当用户使用临时通证完成操作后,向集中管控端申请换回其原有通证;(5)集中管控端撤销该用户临时通证,恢复其原有常规通证。
本实施例中,为了鼓励用户在平台上共享更高质量的数据,引入了激励金流通的概念。与用户激励金相关的各类操作有:(1)初始激励金下发:当用户账户在系统进行初始化时,将随着用户通证的初始化,向该用户下发一定数量的激励金;(2)激励金的支付流通:当一个用户需要使用数据共享平台提供的服务时,需要向服务提供一方支付一定数量的激励金。当用户上传数据时,将向平台中的数据存储管理者支付;当用户下载数据时,将向数据所有者用户支付;当用户使用数据处理服务时,将向数据处理服务管理者支付。
本实施例中,步骤1)中对数据对象生成安全属性标记时,数据对象的安全属性标记的通用表示格式为:
{属性标记类别1}:.....:{属性标记类别n}:数值标记1:.....:数值标记m
其中,属性标记类别表示数据在某一类别下的具有何种属性,该类标记仅区别币种,不区分数量,n为属性标记类别数量;数值标记表示文件在某一标记下的具体数量多少。当交易发生时,标记数量会相应的减少或增加,m为数值标记数量;假设每种属性标记类别包含的标记种类为Ni,则共需定义N1+N2+...+Nn+m种安全属性标记。
假设系统按照该协会组织结构设定了“片区分布”、“专业委员会”、“工作委员会”、“职位”四种属性标记类别,包括:
片区分布:“中央理事会、东部片区、西部片区、南部片区、北部片区、中部片区”
专业委员会:“专业1,...,专业5”
另外还包含一个访问价格数值标记:
价格标记:代表每次访问该数据需要支付的激励金数量。
那么,系统共需定义6+5+1=12种安全属性标记。该信息数据“属于东部片区、专业1委员会,并且每次访问需要支付20激励金”这样的描述就可以定义为以下安全属性标记:
“东部:专业1:20”。
如图5所示,本实施例中数据对象的安全属性标记管理流程包括:(1)用户登录客户端后,客户端会从链上获取该用户的通证,从而得到该用户的各类安全属性信息;(2)在用户端发起数据上传申请时,首先需要由用户终端系统的数据安全属性标记管理模块确定该数据的安全属性标记;其中,数据某些与属主相关的属性直接根据生成该数据的用户属性确定。例如上例中,数据的片区信息、属于哪个专业委员会等;(3)信息管理系统向通证平台确认请求权限时,需要确认该用户通证是否具有上传此类数据的权限,具体包括访问控制权限的检查以及用户是否持有足够的激励金;(4)通证平台得出允许上传的决策后,文件系统上传数据,在返回数据的位置索引;(5)用户终端向通证平台提交描述表单中包括数据的位置索引与数据的安全属性标记,并发起一笔向信息流转系统管理账户的缴费交易。
本实施例中,步骤1)中生成以用户通证与数据安全属性标记为关键字的访问控制规则列表时,在访问控制规则中,以数据的安全属性标记为关键字,每项访问控制规则以Key/Value形式表述且一个允许的访问操作类型集合,Key为客体的安全属性标记;Value为对该客体访问需要满足的条件,且条件以合取范式的通用表示为:“条件1||条件2||......”,每个条件描述主体通证所必须具有的属性通证的类型、数值通证的数量;每项访问控制规则的通用表示格式为:
{属性通证类别1}&&.....&&{属性通证类别n}&&数值通证1&&.....&&数值通证m:{允许的访问操作类型}
其中,属性通证类别1~属性通证类别n是指针对某一客体设置对该客体访问需要满足的条件所需满足的属性通证类别,数值通证1~m是指针对某一客体设置对该客体访问需要满足的条件所需满足的数值通证,允许的访问操作类型是指针对某一客体设置对该客体访问所被允许的访问操作类型。
本实施例中,访问控制规则列表规定主体对客体的访问空权限。在访问控制规则中,以数据的安全属性标记为关键字,而不是以数据index为关键字。这样做的好处是可以对数据进行逻辑分类,并且使得访问控制规则更好理解,进行访问控制规则的配置时逻辑更为清晰直观。
为了访问控制规则的表述更加方便,本实施例中还定义了以下特殊符号:每项访问控制规则的条件Value中以通配符“*”表示该类别中任何类型的通证均满足条件,以通配符“+”表示逻辑“或”运算。
示例:东部片区专业1委员会起草的批件,由东部主席进行审批;
Key=东部:专业1
Value={东部:委员:专业1:委员:起草+上传}||{东部:主席:*:*:下载+审批}
具体实现时,使用二进制位串来进行内部表示Key,每一个Key可能对应不同条目数的规则。规则之间是“或”的关系。每条规则分为两个部分内容,前一部分是允许执行的主体的安全属性,后一部分是允许该主体的操作类型集合,二者以位串拼接的形式进行表示。假定操作类型集合为{起草、上传、下载、审批},系统将Key与实际操作的数据对象安全属性标记做“位与”,结果不为0则认为是匹配;确定Key后,将当前访问的主体通证与Value中的主体通证进行“位与”,如果匹配就检查当前的访问操作类型与Value规则中的合法操作是否匹配,如果匹配就允许操作继续执行,如果不匹配则拒绝执行。例如:Key=0100011111(客体安全属性标记)的访问控制规则实例如表1所示。
表1:访问控制规则实例。
Figure GDA0002697667420000091
本实施例中,由集中管控端的访问控制规则管理模块进行配置,生成合约,发布到通证平台,对预访问控制列表的管理,主要提供“增、删、改、查”四种接口。
当用户要访问文件系统中的数据时,分布式存储系统向通证平台发起确认访问权限的请求,通证平台将完成以下步骤:(1)获取用户通证与被访问数据的安全属性标记;判断用户通证有效期是否小于当前时间,如果超过当前时间,则认为该通证已失效,返回“否”;(2)首先判断用户通证的激励金余额是否大于该数据的访问价格,如果是,则继续访问;如果不是,则拒绝返回“否”;(3)根据数据的安全属性标记查询访问控制规则列表,遍历以该数据安全属性标记为Key的访问控制规则。如果存在一条访问控制规则与当次访问的用户通证以及访问类型相符,则返回“是”;如果不符合,则返回“否”;(4)文件系统根据返回的请求结果,“是”则继续执行访问操作;“否”则中断访问的执行。
综上所述,本实施例基于区块链的用户授权与数据共享访问控制方法将基于区块链技术,研究对上层分布式应用系统的去权威化中心的权限管理问题。通过彩币的形式实现多维授权的用户通证,对用户在多种不同维度下所具有的权限进行标识;通过智能合约来实现系统访问过程中基于用户通证的分散式访问控制,在提高安全性、鲁棒性的同时兼顾决策性能。本实施例基于区块链的用户授权与数据共享访问控制方法以解决信息流转系统的多维授权为例,具有很强的普适性,可以在各类基于区块链的应用系统上进行修改,实施对系统用户的权限管理与访问控制。用户通证的刻画与访问控制规则制定与实施的流程基本一致,仅需安全具体应用的行为调整具体要做控制的行为即可。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (7)

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为激励通证,所述激励通证的具体数值代表该用户账户所持有的激励金,用户账户中有一个初始激励金余额,且当使用数据共享平台提供的数据存储与数据处理服务时,需要向数据拥有者或数据处理管理方支付指定数量的激励金;当该用户所共享的数据被其他用户访问时,也将获得指定数量的激励金。
5.根据权利要求1所述的基于区块链的用户授权与数据共享访问控制方法,其特征在于,步骤1)中对数据对象生成安全属性标记时,数据对象的安全属性标记的通用表示格式为:
{属性标记类别1}:.....:{属性标记类别n}:数值标记1:.....:数值标记m
其中,属性标记类别表示数据在某一类别下的具有何种属性,该类标记仅区别币种,不区分数量,n为属性标记类别数量;数值标记表示文件在某一标记下的具体数量多少;当交易发生时,标记数量会相应的减少或增加,m为数值标记数量;假设每种属性标记类别包含的标记种类为Ni,则共需定义N1+N2+...+Nn+m种安全属性标记。
6.根据权利要求1所述的基于区块链的用户授权与数据共享访问控制方法,其特征在于,步骤1)中生成以用户通证与数据安全属性标记为关键字的访问控制规则列表时,在访问控制规则中,以数据的安全属性标记为关键字,每项访问控制规则以Key/Value形式表述且一个允许的访问操作类型集合,Key为客体的安全属性标记;Value为对该客体访问需要满足的条件,且条件以合取范式的通用表示为:“条件1||条件2||......”,每个条件描述主体通证所必须具有的属性通证的类型、数值通证的数量;每项访问控制规则的通用表示格式为:
{属性通证类别1}&&.....&&{属性通证类别n}&&数值通证1&&.....&&数值通证m:{允许的访问操作类型}
其中,属性通证类别1~属性通证类别n是指针对某一客体设置对该客体访问需要满足的条件所需满足的属性通证类别,数值通证1~m是指针对某一客体设置对该客体访问需要满足的条件所需满足的数值通证,允许的访问操作类型是指针对某一客体设置对该客体访问所被允许的访问操作类型。
7.根据权利要求6所述的基于区块链的用户授权与数据共享访问控制方法,其特征在于,每项访问控制规则的条件Value中以通配符“*”表示该类别中任何类型的通证均满足条件,以通配符“+”表示逻辑“或”运算。
CN201811062956.9A 2018-09-12 2018-09-12 一种基于区块链的用户授权与数据共享访问控制方法 Active CN108989357B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811062956.9A CN108989357B (zh) 2018-09-12 2018-09-12 一种基于区块链的用户授权与数据共享访问控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811062956.9A CN108989357B (zh) 2018-09-12 2018-09-12 一种基于区块链的用户授权与数据共享访问控制方法

Publications (2)

Publication Number Publication Date
CN108989357A CN108989357A (zh) 2018-12-11
CN108989357B true CN108989357B (zh) 2021-02-05

Family

ID=64545496

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811062956.9A Active CN108989357B (zh) 2018-09-12 2018-09-12 一种基于区块链的用户授权与数据共享访问控制方法

Country Status (1)

Country Link
CN (1) CN108989357B (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109600441B (zh) * 2018-12-14 2022-04-29 深圳壹账通智能科技有限公司 联盟链信息发布控制方法及终端设备
CN109583905A (zh) * 2018-12-21 2019-04-05 众安信息技术服务有限公司 基于区块链网络的利用通证来实现数据共享的方法和设备
CN109754322A (zh) * 2018-12-27 2019-05-14 石更箭数据科技(上海)有限公司 一种数据服务系统
CN109617896B (zh) * 2018-12-28 2021-07-13 浙江省公众信息产业有限公司 一种基于智能合约的物联网访问控制方法和系统
CN109816021B (zh) * 2019-01-28 2021-07-13 网易(杭州)网络有限公司 智能合约处理方法及装置、系统、存储介质和电子设备
CN109768867A (zh) * 2019-03-08 2019-05-17 上海一健事信息科技有限公司 一种基于区块链技术的数据访问控制的方法
CN110008743B (zh) * 2019-03-26 2023-02-28 创新先进技术有限公司 一种块链式账本中的数据属性标识方法、装置及设备
CN110049111A (zh) * 2019-03-27 2019-07-23 厦门大学 一种基于区块链技术的工业控制系统远程指令控制方法
CN109977172A (zh) * 2019-03-29 2019-07-05 北京金山安全软件有限公司 用于区块链的信息交互方法、装置、电子设备及存储介质
CN110266681B (zh) * 2019-06-17 2021-05-07 西安纸贵互联网科技有限公司 基于区块链的数据安全处理系统及数据安全处理方法
CN110516417B (zh) * 2019-08-09 2021-04-16 中国银联股份有限公司 一种智能合约的权限验证方法及装置
CN110807189B (zh) * 2019-11-15 2023-07-07 内蒙古大学 一种区块链访问控制中的权限分割方法
CN111669386B (zh) * 2020-05-29 2021-06-04 武汉理工大学 一种基于令牌且支持客体属性的访问控制方法及装置
CN111800410B (zh) * 2020-06-30 2023-03-31 远光软件股份有限公司 基于区块链的数据访问控制方法、电子设备和存储介质
CN111865580A (zh) * 2020-07-13 2020-10-30 深圳前海益链网络科技有限公司 token生成及验证方法、装置、计算机设备和存储介质
CN112115498B (zh) * 2020-09-28 2023-12-01 上海申铁信息工程有限公司 一种基于区块链的数据访问权限控制方法与装置
CN112184194A (zh) * 2020-11-02 2021-01-05 立旃(上海)科技有限公司 基于区块链的资源授权方法及装置
CN112214518B (zh) * 2020-11-09 2021-06-11 广东新禾道信息科技有限公司 一种基于区块链的地理空间基础数据共享方法及系统
CN112364366B (zh) * 2020-11-26 2024-04-16 中国人民解放军国防科技大学 基于区块链的联盟数据共享访问控制方法及系统
CN113794673B (zh) * 2021-01-29 2024-02-09 北京京东拓先科技有限公司 数据共享方法和装置
CN113034144A (zh) * 2021-05-20 2021-06-25 北京百度网讯科技有限公司 区块链社区治理的方法、装置、设备和存储介质
CN112990929A (zh) * 2021-05-20 2021-06-18 北京百度网讯科技有限公司 区块链社区治理的方法、装置、设备和存储介质
CN113239123A (zh) * 2021-06-10 2021-08-10 杭州安恒信息技术股份有限公司 一种数据共享方法及系统
CN113779609B (zh) * 2021-09-22 2024-03-22 北方健康医疗大数据科技有限公司 数据管理方法、装置、电子设备及存储介质
CN113643078B (zh) * 2021-10-14 2022-04-01 北京华宜信科技有限公司 基于区块链的信息价值标记方法、装置、设备及介质
CN114024742A (zh) * 2021-11-03 2022-02-08 北京天融信网络安全技术有限公司 授权管理方法、装置、设备及存储介质
CN115394392B (zh) * 2022-08-31 2023-06-20 西安交通大学 一种医疗数据的共享系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107332847A (zh) * 2017-07-05 2017-11-07 武汉凤链科技有限公司 一种基于区块链的访问控制方法和系统
WO2017213847A1 (en) * 2016-06-09 2017-12-14 Mastercard International Incorporated Method and system for use of a proprietary private blockchain
CN108462568A (zh) * 2018-02-11 2018-08-28 西安电子科技大学 一种基于区块链的安全文件存储和共享方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9979718B2 (en) * 2016-05-11 2018-05-22 Bank Of America Corporation System for managing security and access to resource sub-components

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017213847A1 (en) * 2016-06-09 2017-12-14 Mastercard International Incorporated Method and system for use of a proprietary private blockchain
CN107332847A (zh) * 2017-07-05 2017-11-07 武汉凤链科技有限公司 一种基于区块链的访问控制方法和系统
CN108462568A (zh) * 2018-02-11 2018-08-28 西安电子科技大学 一种基于区块链的安全文件存储和共享方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Digital Asset Management with Distributed Permission over Blockchain and Attribute-based Access Control";Yan Zhu;《IEEE》;20180906;全文 *
"基于区块链的物联网访问控制简化模型构建";梅颖;《中国传媒大学学报自然科学版》;20171031;全文 *

Also Published As

Publication number Publication date
CN108989357A (zh) 2018-12-11

Similar Documents

Publication Publication Date Title
CN108989357B (zh) 一种基于区块链的用户授权与数据共享访问控制方法
Bamakan et al. Patents and intellectual property assets as non-fungible tokens; key technologies and challenges
US11410235B2 (en) Method, apparatus, and computer-readable medium for compliance aware tokenization and control of asset value
CN111919417A (zh) 在基于云的计算环境中用共识管理为分布式分类账技术实现超级社区和社区侧链的系统、方法和装置
US20210357927A1 (en) Transaction authentication system and related methods
CN111417977A (zh) 管理专利风险的系统和方法
US11695741B2 (en) Blockchain network incorporating an individual's geo-location via a communication network and applications using the same
CN115719265A (zh) 区块链实现的方法和系统
AU2016288644A1 (en) Systems and methods of secure provenance for distributed transaction databases
CN108711051A (zh) 一种基于区块链的知识产权交易共享平台及方法
US20120215809A1 (en) Search mediation system
CN111916172A (zh) 一种基于区块链智能合约的医疗数据共享系统
Benji et al. A study on the Corda and Ripple blockchain platforms
KR20210059165A (ko) 블록체인을 이용한 미술작품 저작권 p2p 거래시스템
CN112435006A (zh) 一种应用区块链技术的专利全过程管理方法、系统及设备
Kwame et al. V-chain: A blockchain-based car lease platform
Chai et al. BHE-AC: A blockchain-based high-efficiency access control framework for Internet of Things
Gu et al. Autonomous resource request transaction framework based on blockchain in social network
KR20200124121A (ko) 간편하고 안전한 마이데이터이동 인증방법
US11270292B2 (en) Key pair authentication in a label tracking system
US20230342849A1 (en) Method, apparatus, and computer-readable medium for compliance aware tokenization and control of asset value
US20230049791A1 (en) Federated data room server and method for use in blockchain environments
WO2021249208A1 (zh) 采用码链区块的数字货币模型、方法、系统及装置
Hopf et al. Blockchain technology impacting property rights and transaction cost regimes
KR102450412B1 (ko) 사물인터넷에서 서비스 수준 협약 기반 공유경제 서비스 제공시스템 및 제공방법

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
GR01 Patent grant
GR01 Patent grant