CN109691015A - 区块链上的动态访问控制 - Google Patents

区块链上的动态访问控制 Download PDF

Info

Publication number
CN109691015A
CN109691015A CN201780053286.1A CN201780053286A CN109691015A CN 109691015 A CN109691015 A CN 109691015A CN 201780053286 A CN201780053286 A CN 201780053286A CN 109691015 A CN109691015 A CN 109691015A
Authority
CN
China
Prior art keywords
ability
sender
target
access control
block
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.)
Granted
Application number
CN201780053286.1A
Other languages
English (en)
Other versions
CN109691015B (zh
Inventor
M·斯泰普斯
P·林木巴
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.)
Commonwealth Scientific and Industrial Research Organization CSIRO
Original Assignee
Commonwealth Scientific and Industrial Research Organization CSIRO
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
Priority claimed from AU2016903450A external-priority patent/AU2016903450A0/en
Application filed by Commonwealth Scientific and Industrial Research Organization CSIRO filed Critical Commonwealth Scientific and Industrial Research Organization CSIRO
Publication of CN109691015A publication Critical patent/CN109691015A/zh
Application granted granted Critical
Publication of CN109691015B publication Critical patent/CN109691015B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • 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
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3265Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2145Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本公开描述了在区块链系统180上使用能力(经由动态访问控制接口150)的动态访问控制。区块链数据结构是密码链接在一起的区块的加时间戳的列表。在本公开中,能力可以被记录在区块链系统上(经由能力存储装置(170)),并且因此访问传播是已知的。这使得可通过记录新交易实现对访问权限的撤销,这实际上移除了先前的授权。交易历史不会被改变,而是新的交易记录(170)能力的当前状态。区域链系统(180)上的示例实现在以太坊中给出,其允许被称为“智能合约”的程序作为交易运行。

Description

区块链上的动态访问控制
对相关申请的交叉引用
本申请要求于2016年8月30日提交的澳大利亚临时专利申请No 2016903450的优先权,其内容通过引用并入本文。
技术领域
本公开涉及在用于计算机安全系统的区块链系统上实现动态访问控制的计算机实现的方法、软件和系统。
背景技术
访问控制是分布式系统(诸如跨企业中不同部门和行业中不同公司共享的受控信息)中安全性的重要特征。公司中的不同部门通常具有不同的策略,访问控制和传统系统的不同实现经常会产生互操作性问题。
在大多数访问控制系统中,由于个人角色的变化和部门转移,对个人的访问权限进行跟踪可能很困难。此外,在访问控制和访问权限由不同系统管理的情况下,跟踪访问权限变得更加困难。可以使用访问权限的审计跟踪(audit trail),但由于安全策略模型的组合,难以进行关联并且审计跟踪的复杂性增加。在分布式访问控制系统中,访问权限的约束是个问题,其中访问权限可能在已知用户之外传播或泄漏。
对本说明书中包含的文档、行为、材料、设备、物品等的任何讨论不应该被视为承认任何或所有这些事项构成现有技术基础的一部分或者是在本申请的每项权利要求的优先权日之前存在的与本公开相关的领域中的众所周知的常识。
在整个说明书中,词语“包括”或其变体“包括”或“包含”将被理解为暗示包括所述元素、整数或步骤,或元素、整数或步骤的组,但是不排除任何其它元素、整数或步骤,或元素、整数或步骤的组。
发明内容
一种用于通过创建能力来进行动态访问控制的计算机实现的方法,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,包括:
(a)从发送方接收创建针对对象的能力的请求;
(b)确定发送方存在针对对象的能力;
(c)如果确定发送方不存在针对对象的能力,则为发送方创建针对对象的能力;以及
(d)将发送方的针对对象的能力存储在区块链系统上,其中所述能力能够用于动态地确定针对对象的访问控制。
由于被称为分布式账本(ledger)的计算上安全的防篡改的不可变数据存储(其可以用作审计跟踪),这具有若干优点并且由于其使用区块链系统而特别有利。其它好处包括允许各种授权委托策略和动态访问控制。动态访问控制包括选择性地允许或限制委托的传播和撤销委托的能力。此外,能力可以被记录在区块链上,因此访问传播是已知的。这允许对访问权限进行细粒度的控制,取决于访问权限的粒度如何,这有助于解决混淆代理问题(Confused Deputy Problem)。当具有为某一目的而赋予其访问权限的程序将这些访问权限应用于与访问权限的原始意图相反的一些其它目的,并因此允许它不应被允许的一些事情时,会发生混淆代理问题。此问题的典型示例涉及被允许写入到目录中的程序,该目录包含日志文件和计费信息文件。该程序获取它将写入调试信息的文件的参数。然后,用户可以将计费信息文件供应给程序,并因此覆盖计费信息。这可能不是在系统设计期间预期的,但如果程序具有必要的访问权限,那么程序可能在恶意或不正确的用户控制下执行此动作。本发明是有利的,因为它有助于克服该问题。
本方法还可以包括向发送方发送成功消息。
一种用于通过授予能力来进行动态访问控制的计算机实现的方法,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,包括:
(a)从发送方接收向目标授予针对对象的能力的请求;
(b)为目标确定发送方针对对象的访问权限;
(c)确定所述访问权限是否允许将向目标授予针对对象的能力;以及
(d)将目标的针对对象的能力存储在区块链系统上,其中所述能力能够用于动态地确定针对对象的访问控制。
步骤(c)可以包括确定是否已经为对象授予了能力。
目标的针对对象的能力是发送方的针对对象的能力的子集。
一种非瞬态计算机可读介质,具有根据前述权利要求中任一项所述的用于在区块链上创建能力的计算机可读指令。
一种用于通过创建能力来进行动态访问控制的系统,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,所述系统包括:
一个或多个智能合约实例,所述一个或多个智能合约实例在区块链上执行以:
(a)从发送方接收创建针对对象的能力的请求;
(b)确定发送方存在针对对象的能力;
(c)如果确定发送方不存在针对对象的能力,则为发送方创建针对对象的能力;以及
(d)存储发送方的针对对象的能力,其中所述能力能够用于动态地确定针对对象的访问控制。
一种用于通过授予能力来进行动态访问控制的系统,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,所述系统包括:
一个或多个智能合约实例,所述一个或多个智能合约实例在区块链上执行以:
(a)从发送方接收向目标授予针对对象的能力的请求;
(b)为目标确定发送方针对对象的访问权限;
(c)确定所述访问权限是否允许将向目标授予针对对象的能力;以及
(d)存储目标的针对对象的能力,其中所述能力能够用于动态地确定针对对象的访问控制。
一种用于通过删除能力来进行动态访问控制的计算机实现的方法,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,包括:
(a)从发送方接收删除针对对象的能力的请求;
(b)确定发送方存在针对对象的能力;以及
(c)如果确定发送方存在针对对象的能力,则删除发送方的针对对象的能力。
一种用于通过撤销能力来进行动态访问控制的计算机实现的方法,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,包括:
(a)从发送方接收撤销目标的针对对象的能力的请求;
(b)为目标确定发送方针对对象的访问权限;
(c)确定所述访问权限是否允许撤销目标的针对对象的能力;
(d)撤销目标的针对对象的能力。
所述计算机实现的方法还可以包括确定能力是否不是主能力(mastercapability)。
一种用于通过删除能力来进行动态访问控制的系统,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,所述系统包括:
一个或多个智能合约实例,所述一个或多个智能合约实例在区块链上执行以:
(a)从发送方接收删除针对对象的能力的请求;
(b)确定发送方存在针对对象的能力;以及
(c)如果确定发送方存在针对对象的能力,则删除发送方的针对对象的能力。
一种用于通过撤销能力来进行动态访问控制的系统,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,所述系统包括:
一个或多个智能合约实例,所述一个或多个智能合约实例在区块链上执行以:
(a)从发送方接收撤销目标的针对对象的能力的请求;
(b)为目标确定发送方针对对象的访问权限;
(c)确定所述访问权限是否允许撤销目标的针对对象的能力;
(d)撤销目标的针对对象的能力。
附图说明
将参考以下各图描述本公开的示例:
图1图示了示例性应用场景。
图2图示了用于创建能力的计算机实现的方法。
图3图示了用于授予能力的计算机实现的方法。
图4图示了用于删除能力的计算机实现的方法。
图5图示了用于撤销能力的计算机实现的方法。
图6图示了用于调用能力的计算机实现的方法。
图7图示了示例发送方。
具体实施方式
本发明一般而言涉及用于在区块链系统上实现动态访问控制的方法软件和系统。在本公开中,智能合约的完整性确保了访问控制逻辑和管理的安全处理。智能合约构成了可以用于执行以及存储能力操作的历史的许多区块链系统的计算基础设施的一部分。
在本公开中,在区块链系统上实现能力,并且对能力的操作被存储为交易。因此,区块链成为所有对能力的操作的实际不可改变的和不可伪造的历史。区块链的副本表示能力的当前状态。在一个示例中,能力记录被存储在智能合约存储空间中。该存储空间可以是包括变量的任何数据结构。对能力的操作修改变量以跟踪能力记录的最新状态。触发操作的交易被记录在区块链上,以提供对能力记录的更改和修改的审计跟踪。
区块链
区块链被设计为由对等网络内的所有节点维护的公开共享账本。区块链系统不像传统银行和支付系统那样依赖任何中央可信管理机构。相反,信任被实现为来自网络内节点之间的交互的涌现性(emergent property)。区块链的完整副本包含区块链网络中执行的每个交易,因此在区块链上进行交易的一方可以高度确定地确认另一方能够像另一方所声称的那样进行交易。进一步的结果是区块链被证明对于伪造或黑客攻击是强健的。这样做的一个重要结果是没有必要利用诸如银行之类的可信第三方来进行货币交易或利用可信安全程序来进行访问权限的交易。
作为概念,区块链最初是在比特币的基础设施中定义的。从那时起,该概念已被推广到使用区块链来验证和存储任何交易而无需加密货币或代币的分布式账本中。许多加密货币现在使用区块链作为其平台的基础。流行的区块链系统包括比特币和以太币。
交易
如上所述,区块链本质上是基于商定的协议参与系统的所有节点共享的交易列表。每笔交易表示具体数量的数字资产从一方的地址转移到另一方的地址。因此,地址功能类似于银行账户。例如,Alice可以通过在区块链上创建交易来支付Bob 5比特币,并从她的一个地址转移5比特币并指定Bob的地址作为输出。
区块链记录所有已经发生的交易,并提供被称为分布式账本的防篡改的不可变的数据存储。整个参与实体网络就包括到分布式账本中的交易达成共识。交易是本质上可以表示用户希望交易的任何事物的可识别的数据包。在许多区块链系统中,数据包是诸如比特币或以太币之类的货币价值的指示,但是它们在智能合约中也可以包括函数调用的参数和结果。通过密码技术确保区块链系统中交易的完整性。包含货币的区块链的完整副本的、连接到并参与区块链系统的计算机被称为“完整节点”。
区块
在区块链系统中,交易被聚合成区块。每个区块包含前一个区块的数学函数计算,其被称为散列。在给定具体交易时,这种数学函数计算易于计算,但在给定具体散列时难以逆转。这表示确定交易中的内容是否已以任何方式被修改的手段。通过在交易中包含散列,这将创建一个链,其中对区块进行的任何更改都将更改该区块的散列,该散列必须被重新计算并存储在下一个区块中。这会更改下一个区块的散列,下一个区块的散列也必须被重新计算,依此类推,直到链的末尾。
因此,通过包含前一个区块的引用,每个区块也链接到前一个区块(“父”区块)。这具有创建从当前区块到称为创世区块(genesis block)的第一个区块的区块链的效果。保证每个区块按时间顺序排在前一个区块之后,因为否则将不知道前一个区块的散列。一旦每个区块在链中已存在一段时间(通常在比特币中这平均大约是60分钟或6个区块),对它进行修改在计算上就也是不切实际的,因为它之后的每个区块也必须被重新生成。这些特性使得与区块链上的能力相关的交易难以伪造。
智能合约
区块链系统中的智能合约旨在复制合约的法律概念。即,如果合约是对合约各方施加义务的相互协议,那么智能合约是自动对交易施加义务或条件的方式。
比特币和以太坊(以及大多数其它区块链系统)利用脚本来验证交易。智能合约有可能作为脚本来实现,并且其运行方式与正常交易被验证的方式相同。虽然这是比特币采用的做法,但这相当困难,因为脚本必须执行才能验证交易。在以太坊中,智能合约与验证交易截然不同。因此,智能合约可以独立于发起合约的交易而存在。其它差异包括智能合约必须在可以被执行之前部署,并且一旦被部署,智能合约就将执行,除非被明确终止。在比特币和以太坊中,脚本都包含自动执行合约所需的所有函数调用(操作代码)。两个区块链系统上的所有节点都执行该脚本。
在区块链系统中使用脚本存在许多限制。对于比特币,一个这样的限制是脚本语言被认为不是图灵完整的(Turing-complete)。结果是比特币脚本不用于创建任何循环。这个限制可以防止攻击者在比特币系统上运行充当拒绝服务(DOS)类型的攻击的无限循环的脚本。相比之下,以太坊具有内置的用于编写智能合约的图灵完整脚本语言。以太坊克服DOS攻击可能性的方式是,要求以货币进行交易的各方支付与脚本所需的CPU周期成比例的费用(这在以太坊中被称为Gas)。因此,脚本不能无限循环,因为攻击者需要无限量的货币来支付脚本执行的费用。
在文献中,术语“智能合约”可互换使用以既指用于执行智能合约的代码又指实际执行或被执行的智能合约。为清楚起见,在本公开中,术语“处理实例”是指智能合约的执行和由其提供的服务。术语“脚本”是指可以作为处理实例执行的智能合约代码。
本公开使用术语“区块链”来指实际的区块链本身(即,具有顺序添加的区块的公开共享账本)。本公开还使用术语与区块链系统相关的区块链和区块链网络。术语“区块链系统”旨在指使区块链操作的所有部件。这包括钱包、代码、交易、区块链网络以及区块链本身。本公开中使用的区块链系统的示例包括比特币和以太坊。在使用术语区块链网络(例如以太坊区块链网络)的情况下,这旨在指运行区块链代码的计算机,这些计算机能够经由诸如互联网之类的通信网络彼此通信。区块链网络中的计算机被称为节点,并且完整节点是区块链网络中包含整个区块链的副本的计算机。
以下是说明性示例。虽然它描述了以太坊的使用,但这仅仅是为了说明区块链系统。其主要原因是以太坊原生地支持智能合约。智能合约用作在以太坊区块链上持有对象的能力。它们包含代码函数,并且可以与其它合约交互、创建新合约、制定决策、存储数据以及向其它人发送以太币。
区块链部件
本公开涉及区块链上的三种截然不同的部件。这些部件是:
动态访问控制接口
该部件将区块链进程执行与外部世界连接起来。接口为发送方提供用于调用的外部应用可编程接口(API)函数。发送方是发起能力操作的用户进程。
操作
然后,来自接口的函数调用可以调用以下操作之一:“创建能力”152、“授予能力”154、“删除能力”156、“撤销能力”158和“调用能力”159。这些操作可以是区块链上的处理实例。这些处理实例处理创建、授予、删除和撤销能力的大部分处理逻辑,并且还可以将处理状态存储在区块链上。
存储管理器
这是处理与能力数据库的所有交互的部件。所有上述操作至少需要访问能力数据库,并且也可能涉及改变存储在数据库中的数据。通常,存储管理器会跟踪被添加到区块链的任何能力交易。
链外(off-chain)部件
系统中存在三个主要的链外部件。
发送方
如上所述,发送方是发起能力操作的用户进程。
对象
能力操作通常关于对象进行。通常,用户创建对象,并且然后向其它用户授予针对该对象的能力。对象通常是用户进程或资源,并且可以是任何用户进程或任何类型的计算资源。对象可以是数字对象,诸如文档和文件,或者对象可以是物理对象,诸如建筑物或站点。对象也可以是对计算机系统的电子访问。在计算机系统中,对象例如可以是变量、数据结构、函数或方法。但是对象也可以在计算机外部,诸如网络资源,例如,另一个计算机、网络打印机或存储装置。对象也可以是由计算资源表示的物理对象,诸如充当该对象的唯一标识符的字符串。
目标
目标是可以根据发送方的能力操作获得或失去能力的用户进程。
示例系统
图1是所提出的系统的示例图示。在该系统中,Alice 110、Bob 112和Carol 114是用户。存在多个链外程序:发送方120、目标130和对象140。如上所述,发送方通常是发起能力请求的程序,并且如果发送方希望代表他们改变目标能力,那么目标可选地被指定。通常,对象是发送方120或目标130正在寻求访问的对象,或者替代地,对象与授予或修改哪一个或多个能力有关。
在区块链网络180上,存在多个智能合约的处理实例。动态访问控制接口是允许外部API调用的智能合约的处理实例。还存在多个与能力的具体操作相关的智能合约处理实例:“创建能力”152、“授予能力”154、“删除能力”156、“撤销能力”158和“调用能力”159。还存在作为存储管理器操作的智能合约的处理实例,并且该处理实例与能力存储装置170处理实例交互。
上述操作的这些操作和变体可以用于导出更复杂的操作。这可以在存在可以被支持的不同类型的权限的情况下完成。本节中使用的能力只是说明性的表示,绝不是权限的唯一表示。
如上所述,上面概述的“创建能力”152、“授予能力”154、“删除能力”156、“撤销能力”158和“调用能力”159的操作修改智能合约存储空间中的变量以跟踪能力记录的最新状态。触发操作的交易被记录在区块链上,以提供对能力记录的更改和修改的审计跟踪。
能力
Dennis和Van Horn提出了能力作为用于描述对数据的受控访问的语义的技术。本公开中的能力是安全对象引用。能力是对对象的引用,其中系统维护对与该能力相关联的该对象的一组特权或访问权限。在基于能力的安全模型中,安全对象引用是对对象和访问权限两者的引用。访问权限是对访问对象的一组限制,其中访问可以包括进入或使用对象。能力,尤其是访问能力可以涉及数字对象,诸如文档和文件,以及物理对象,诸如建筑物或站点以及对计算机系统的电子访问。
能力是可传送的,在某种意义上它可以从一方发送或传送到另一方(诸如发送方到目标或用户进程到任何其它用户进程)。能力可以像任何其它通信一样作为数据传送。这允许用户进程确定能力的来源来自哪里。
此外,能力是安全的,因为系统提供保护,使得对象引用不容易复制或计算上不可能伪造。在本公开中,通过使用区块链系统来实现保护。在一个实施例中,可以仅通过使用智能合约中的特权指令来创建作为受保护对象引用的能力,该特权指令可以在区块链上执行以实现区块链系统上的能力。
基于能力的访问控制
基于能力的访问控制系统阻止对对象的访问,除非用户拥有解锁对象的有效能力。因此,为了访问对象,用户必须使用能力。它在概念上类似于具有锁上的门的房间中的对象,其中希望访问对象的用户首先需要有效的钥匙来解锁门。
基于能力的访问控制基于能力的拥有,正如在钥匙和锁的场景中,其中钥匙也可以由用户分配和重新分发;能力可以在用户之间传播或传递。当存在能力的泄漏时发生约束问题,这是由于无法限制能力传播所致。
拥有能力的用户进程可能被赋予如由针对该能力的访问权限所确定的以某种受限的方式与对象交互的能力。访问权限的示例包括读取、写入、读取/写入,以及存储位置被允许或存储位置被拒绝。
这将能力与通常作为分层保护操作的其它安全模型类型区分开来,在分层保护中,存在给予用户进程的访问权限层。在分层保护模型中,最受信任的用户进程被赋予最大的访问权限,而最不受信任的用户进程被赋予最低的访问权限。在这些类型的系统中,对诸如路径名之类的对象的可伪造引用不足以确定访问权限,并且访问取决于请求访问对象的用户进程的环境权力。
创建能力
以下描述用于利用如图1所示的示例系统的示例方法。Alice 110可以访问发送方程序120并且Bob可以访问目标程序130。
初始地,Alice 110创建对象140。作为对象所有者的Alice具有对该对象的完全访问,因此有权对该对象执行任何操作。Alice的发送方程序120访问动态访问控制接口150的API,以首先为发送方120创建针对对象140的能力。
如图2所示,动态访问控制接口150从发送方接收210创建针对对象的能力的请求。然后,动态访问控制接口150调用创建能力152。创建能力152处理实例首先确定220发送方120存在针对对象的能力。即,发送方只能存在一个针对对象的能力,因此该步骤是为了确保尚未创建能力。可以通过询问存储管理器160是否存储这样的能力来确定发送方存在针对对象的能力。存储管理器160可以从一个或多个能力存储装置170查询。如果能力存储装置170不包含能力,那么能力被确定为不存在。如果确定发送方不存在针对对象的能力,那么创建能力152处理实例可以为发送方创建针对对象的能力。
一旦为发送方创建了针对对象的能力,存储管理器160就可以存储该能力。能力的数据结构可以被表示为(对象,权限,派生)的元组,其中对象和权限是任意长度的串。存储管理器可以在存储能力时使用该表示。当在区块链上存储能力时,存储管理器可以获得交易的散列。
以下是创建能力的示例算法:
输入:对象
授予能力
初始地,Alice 110信任Bob 112,并且Alice 110希望Bob 112具有对她的对象140的完全访问。Alice希望授予Bob对对象140的访问。系统利用授予能力操作来处理该场景。
如图3所示,动态访问控制接口150从发送方接收310向目标授予针对对象的能力的请求。然后,动态访问控制接口150调用授权能力154处理实例。授权能力154处理实例首先针对目标130确定320发送方120针对对象140的访问权限。即,授权能力处理实例确定发送方对该对象具有什么访问权限。然后,授权能力处理实例确定330该访问权限是否允许向目标授予针对对象的能力。即,授权能力处理实例确定330发送方的访问权限是否使得发送方能够目标130授予针对对象140的能力。一旦发送方被授予了针对对象的能力,存储管理器就可以将能力存储340在区块链上。
虽然在该示例中,步骤320和330由相同的处理实例执行,但是它们可以由不同的处理实例执行。实际上,与所有示例一样,每个步骤可以在一个处理实例内执行,或者可以跨多个处理实例执行。
以下是授予能力的示例算法:
输入:对象,目标,权限
删除能力
可能有这种情况,即,在某个时候,Alice 110不再需要与Bob 112共享对象140。在这种情况下,Alice可能只是希望删除针对对象140的该能力。
图4是用于删除能力操作的示例方法。在该示例中,动态访问控制接口150从发送方接收410删除针对对象的能力的请求。然后,动态访问控制接口150调用删除能力156处理实例。删除能力156处理实例首先确定420发送方存在和拥有针对对象的能力。即,删除能力处理实例确定发送方对该对象具有什么访问权限,并且特别地,它确定发送方是否是所有者。然后,删除功能处理实例确定该访问权限是否允许删除针对对象的该能力。即,删除能力处理实例确定430发送方的访问权限是否使得发送方能够删除针对对象140的能力。通常,如果确定发送方是对象140的所有者,那么发送方将能够删除针对对象的能力。随后,存储管理器可以删除440该能力。这是实际上从数据库中删除能力的步骤。
删除能力的示例算法是:
输入:对象
删除能力的第二个示例算法是:输入:对象
撤销能力
在Alice 110和Bob 112分开之后,Alice 110不再信任Bob 112访问她的对象140。Alice想要使Bob对对象140的访问失效。不幸的是,Alice已授予Bob对该对象的完全访问,这意味着Bob可以将该访问委托给他的朋友Carol 114。在这种情况下,访问的传播已不被Alice所知道。这就是所谓的约束问题。撤销能力158操作可以通过撤销和删除从Bob 112导出的所有能力来处理这种场景。
图5是撤销能力操作的示例方法。在该示例中,动态访问控制接口150从发送方接收510撤销针对对象的能力的请求。然后,动态访问控制接口150调用撤销能力158处理实例。撤销能力158处理实例首先确定520发送方存在和拥有针对对象的能力。即,撤销能力处理实例确定发送方对该对象具有什么访问权限,并且特别地,它确定发送方是否是所有者。
然后,撤销能力处理实例确定530发送方对对象的访问权限是否允许撤销目标的针对对象的能力。即,撤销能力处理实例确定发送方的访问权限是否使得发送方能够撤销目标的针对对象140的能力。通常,如果确定发送方是对象140的所有者,那么发送方将能够撤销针对该对象的能力。随后,存储管理器可以移除540该能力。这是从数据库中移除能力的步骤。
以下是撤销能力的示例算法:
输入:对象,目标,权限
调用能力
Bob 112可能希望对对象140执行活动。服务资源所有者将通过调用调用能力操作来检查Bob被允许执行活动。
图6是调用能力操作的示例方法。在该示例中,动态访问控制接口150从发送方接收610调用针对对象的能力的请求。然后,动态访问控制接口150调用调用能力159处理实例。调用能力159处理实例首先确定620发送方存在和拥有针对对象的能力。即,调用能力处理实例确定发送方对该对象具有什么访问权限,特别是它确定发送方是否是所有者。
然后,调用能力159处理实例确定630发送方针对对象的访问权限是否允许目标调用针对对象的能力。即,调用能力处理实例确定发送方的访问权限是否使得发送方能够调用目标的针对对象140的能力。通常,如果确定发送方是对象140的所有者,那么发送方将能够调用针对该对象的能力。
以下是调用能力的示例算法:
输入:对象,目标,权限
成功和失败消息
在任何上述操作中,该方法还可以包括将成功或错误消息返回给调用处理实例或发送方。成功消息指示能力操作正常完成,而错误消息指示能力操作未继续。错误消息可以指示例如访问权限不允许操作继续进行。例如,在上面针对调用能力描述的方法之后,调用能力159处理实例可以向发送方返回640针对对象的调用的成功或错误消息。
散列值
在任何上述操作中,还可以包括将散列值返回给发送方。在一个示例中,散列值是撤销给Bob 112的能力的交易。然后可以使用散列值来查找区块链中的交易。查找交易对检查交易时间或内容或确定能力数据库的当前状态可能是有用的。例如,可以通过使用诸如www.blockchain.info的公开可用的设施使用交易的散列作为交易标识符来访问交易记录。
用于创建散列的实际散列算法取决于区块链系统。例如,可以使用SHA-256算法确定交易的散列来创建信息的256位表示。应该认识到的是,可以使用其它散列算法,包括安全散列算法(SHA)系列中的其它算法。一些特定示例包括SHA-3子集中的实例,包括SHA3-224、SHA3-256、SHA3-384、SHA3-512、SHAKE128、SHAKE256。其它散列算法可以包括RACE完整性原语评估消息摘要(RIPEMD)系列中的那些算法。特定示例可以包括RIPEMD-160。其它散列函数可以包括基于Zémor-Tillich散列函数和基于knapsack的散列函数的族。
部署智能合约
在以太坊(一种示例区块链系统)中,智能合约在可以被执行之前必须被部署。为了将智能合约部署为处理实例,需要编译后的脚本代码和应用二进制接口(ABI)。ABI定义如何与动态访问控制接口170交互。而API定义要利用的源代码的接口,ABI定义特定体系架构上的两个或更多个软件之间的低层二进制接口。ABI定义处理实例将如何与其自身交互、处理实例如何与以太坊网络150交互,以及处理实例170如何与任何代码库交互。当编译智能合约脚本时,编译器通常会产生编译代码和ABI两者。发送方120和目标140两者都可以访问动态访问控制接口170的ABI,使得它可以与动态访问控制接口170交互。
发送方示例
图8中所示的发送方120包括经由总线804彼此通信的处理器802、存储器810、网络接口设备806和接口设备808。存储器存储用于参考图1至6描述的处理的指令812、814和816和数据,并且处理器执行来自存储器的指令以实现处理。
处理器702执行存储在存储器710上的指令。处理器702接收用户110对来自链外接口设备706的处理的输入。处理器702根据API模块712确定指令。指令可以是与动态访问控制接口150通信的函数。处理器702可以执行存储在接口模块716中的指令,以与链外网络190上的接口180通信。
变体实现和应用
基于能力的访问控制旨在是计算机安全系统的一个部件。大多数计算机安全系统将需要某种形式的认证。认证可以由诸如在本公开中给出的示例中描述的以太坊的底层区块链系统处理。例如,可能存在与人的地址相关联的对象,但是该系统假定该人被正确地认证并且正确的人与该地址相关联。应该注意的是,许多认证的变体可以与这种基于能力的系统一起使用。
示例应用是网络文件系统,该系统与区块链系统交互以利用本公开中描述的能力。以这种方式,可以向用户进程授予对网络文件系统中的文件的读取访问的能力。用户进程可以请求对文件的读取访问,并将该能力作为参数传递。网络文件系统可以调用调用能力函数以确保用户进程具有对文件的适当的读取访问权。
另一个示例应用是用于实时监控对可能具有资源限制的对象的访问。即,使用本公开中的方法意味着可以监控对象的资源使用,因为能力的活动可以被跟踪。例如,如果有20个用户进程被给予对具有15个读取操作的资源限制的对象的读取能力,那么只有四分之三的用户进程可以访问该对象。替代地,系统可以施加固定限制15,其中一旦用户进程已执行适当的动作就撤销并重新分配访问对象的能力,或者替代地,可以将访问传送给请求访问的另一个用户进程。这与其中用户进程通常在需要访问时请求访问的环境授权系统形成对比。本系统可以在用户进程请求访问时授予访问或拒绝访问。
本公开中描述的能力特别适用于委托访问。委托授权可能在许多情况下发生。在现实世界的示例中,政府可能有权制定道路规则,但政府可能会将道路规则的实际创建委托给个人或政府机构。被委托的人可以具有与给政府的相同或更少的权限。例如,政府可能有权创建和维护交通规则,但可以将道路和海事服务的权限委托给政府机构,以定期更新规则。本公开的能力方法使得实现这样的应用变得简单。
上述区块链系统上的基于能力的访问控制可以用于自动访问控制。一种形式的自动访问控制是其中发送方或某些类别的发送方可以被委托某些能力。一个这样的示例可以是由设备执行的认证。在该示例中,可以向诸如执行水的饮用水质的质量保证的水质测量设备之类的设备类别授予对对象(诸如数据库)的访问,以记录城市供水的水质的测量。鉴于该设备是特定类别的水测量设备,可能存在委托给该类别中的所有水测量设备访问测量数据库的能力。这是有利的,因为对对象的访问控制可以是自动的,并且该设备不需要进行手动授权。
以上公开的操作的变体可以支持其它类型的策略。这些策略包括委托,其中能力被转移到另一个用户或从一个用户复制到另一个用户。策略也包括撤销策略,其中第一用户具有能力并且第二用户可以具有撤销第一用户的能力的能力。策略还包括比每个用户访问更精细的访问策略。例如,一些文档可以由特定角色访问,其中角色和用户的关联由系统单独管理。
本领域技术人员将认识到的是,在不脱离如权利要求中限定的范围的情况下,可以对具体实施例进行多种变化和/或修改。
应该理解的是,可以使用各种技术来实现本公开的技术。例如,本文描述的方法可以通过驻留在合适的计算机可读介质上的一系列计算机可执行指令来实现。合适的计算机可读介质可以包括易失性(例如RAM)和/或非易失性(例如ROM,盘)存储器、载波和传输介质。示例性载波可以采用沿着本地网络或诸如互联网的公开可访问的网络传送数字数据流的电信号、电磁信号或光信号的形式。
还应该理解的是,除非从以下讨论中具体指出或以其它方式明确说明,否则应该认识到的是,在整个描述中,利用诸如“估计”或“处理”或“计算”或“算出”,“优化”或“确定”或“显示”或“最大化”等之类的术语的讨论是指计算机系统或类似电子计算设备的动作和处理,该计算机系统或类似电子计算设备将被表示为计算机系统的寄存器和存储器内的物理(电子)量的数据处理和变换为类似地表示为计算机系统存储器或寄存器或其它此类信息存储装置、传输或显示设备内的其它数据。
因此,本实施例在所有方面都被认为是说明性的而非限制性的。

Claims (16)

1.一种用于通过创建能力来进行动态访问控制的计算机实现的方法,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,包括:
(a)从发送方接收创建针对对象的能力的请求;
(b)确定发送方存在针对对象的能力;
(c)如果确定发送方不存在针对对象的能力,则为发送方创建针对对象的能力;以及
(d)将发送方的针对对象的能力存储在区块链系统上,其中所述能力能够用于动态地确定针对对象的访问控制。
2.根据权利要求1所述的计算机实现的方法,还包括向发送方发送成功消息。
3.一种用于通过授予能力来进行动态访问控制的计算机实现的方法,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,包括:
(a)从发送方接收向目标授予针对对象的能力的请求;
(b)为目标确定发送方针对对象的访问权限;
(c)确定所述访问权限是否允许将向目标授予针对对象的能力;以及
(d)将目标的针对对象的能力存储在区块链系统上,其中所述能力能够用于动态地确定针对对象的访问控制。
4.根据权利要求3的方法所述的用于在区块链系统上授予能力的计算机实现的方法,其中所述能力是根据权利要求1的方法来创建的。
5.根据权利要求3所述的计算机实现的方法,其中步骤(c)包括确定是否已经为对象授予了能力。
6.根据权利要求3、4或5所述的计算机实现的方法,其中目标的针对对象的能力是发送方的针对对象的能力的子集。
7.一种非瞬态计算机可读介质,具有根据前述权利要求中任一项所述的用于在区块链上创建能力的计算机可读指令。
8.一种用于通过创建能力来进行动态访问控制的系统,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,所述系统包括:
一个或多个智能合约实例,所述一个或多个智能合约实例在区块链上执行以:
(a)从发送方接收创建针对对象的能力的请求;
(b)确定发送方存在针对对象的能力;
(c)如果确定发送方不存在针对对象的能力,则为发送方创建针对对象的能力;以及
(d)存储发送方的针对对象的能力,其中所述能力能够用于动态地确定针对对象的访问控制。
9.一种用于通过授予能力来进行动态访问控制的系统,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,所述系统包括:
一个或多个智能合约实例,所述一个或多个智能合约实例在区块链上执行以:
(a)从发送方接收向目标授予针对对象的能力的请求;
(b)为目标确定发送方针对对象的访问权限;
(c)确定所述访问权限是否允许将向目标授予针对对象的能力;以及
(d)存储目标的针对对象的能力,其中所述能力能够用于动态地确定针对对象的访问控制。
10.一种用于通过删除能力来进行动态访问控制的计算机实现的方法,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,包括:
(a)从发送方接收删除针对对象的能力的请求;
(b)确定发送方存在针对对象的能力;以及
(c)如果确定发送方存在针对对象的能力,则删除发送方的针对对象的能力。
11.一种根据权利要求10的方法所述的用于删除能力的计算机实现的方法,其中能力根据权利要求1的方法来创建。
12.一种用于通过撤销能力来进行动态访问控制的计算机实现的方法,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,包括:
(a)从发送方接收撤销目标的针对对象的能力的请求;
(b)为目标确定发送方针对对象的访问权限;
(c)确定所述访问权限是否允许撤销目标的针对对象的能力;
(d)撤销目标的针对对象的能力。
13.根据权利要求12的方法所述的用于撤销能力的计算机实现的方法,其中能力根据权利要求1的方法来创建。
14.根据权利要求12或13所述的计算机实现的方法,还包括确定能力是否不是主能力。
15.一种用于通过删除能力来进行动态访问控制的系统,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,所述系统包括:
一个或多个智能合约实例,所述一个或多个智能合约实例在区块链上执行以:
(a)从发送方接收删除针对对象的能力的请求;
(b)确定发送方存在针对对象的能力;以及
(c)如果确定发送方存在针对对象的能力,则删除发送方的针对对象的能力。
16.一种用于通过撤销能力来进行动态访问控制的系统,其中能力是对对象的安全引用,其中所述能力被存储在区块链系统上,所述系统包括:
一个或多个智能合约实例,所述一个或多个智能合约实例在区块链上执行以:
(a)从发送方接收撤销目标的针对对象的能力的请求;
(b)为目标确定发送方针对对象的访问权限;
(c)确定所述访问权限是否允许撤销目标的针对对象的能力;
(d)撤销目标的针对对象的能力。
CN201780053286.1A 2016-08-30 2017-08-30 一种区块链上的动态访问控制方法及系统 Active CN109691015B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2016903450 2016-08-30
AU2016903450A AU2016903450A0 (en) 2016-08-30 Dynamic Access Rights on Blockchain
PCT/AU2017/050928 WO2018039722A1 (en) 2016-08-30 2017-08-30 Dynamic access control on blockchain

Publications (2)

Publication Number Publication Date
CN109691015A true CN109691015A (zh) 2019-04-26
CN109691015B CN109691015B (zh) 2022-02-01

Family

ID=61299529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780053286.1A Active CN109691015B (zh) 2016-08-30 2017-08-30 一种区块链上的动态访问控制方法及系统

Country Status (7)

Country Link
US (1) US11153092B2 (zh)
EP (1) EP3479519B1 (zh)
JP (1) JP7019697B2 (zh)
KR (1) KR102480035B1 (zh)
CN (1) CN109691015B (zh)
AU (1) AU2017320341B2 (zh)
WO (1) WO2018039722A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110598454A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 区块链中的数据处理方法、装置、存储介质和计算机设备
CN111291420A (zh) * 2020-01-21 2020-06-16 国家市场监督管理总局信息中心 一种基于区块链的分布式离链数据存储方法

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10936721B1 (en) * 2018-03-01 2021-03-02 Amdocs Development Limited System, method, and computer program for splitting and distributing a privileged software component into dependent components in order to deliver better security
EP3420668B1 (en) 2016-02-23 2023-08-23 nChain Licensing AG Method and system for efficient transfer of cryptocurrency associated with a payroll on a blockchain that leads to an automated payroll method and system based on smart contracts
EP3860037A1 (en) 2016-02-23 2021-08-04 Nchain Holdings Limited Cryptographic method and system for secure extraction of data from a blockchain
KR101999188B1 (ko) 2016-02-23 2019-07-11 엔체인 홀딩스 리미티드 비밀 공유를 위한 타원 곡선 암호를 사용하는 개인용 장치 보안
KR20180114942A (ko) 2016-02-23 2018-10-19 엔체인 홀딩스 리미티드 분산형 해시 테이블 및 블록체인을 사용하여 컴퓨터 소프트웨어를 보호하기 위한 방법 및 시스템
SG10202011640TA (en) 2016-02-23 2021-01-28 Nchain Holdings Ltd System and method for controlling asset-related actions via a blockchain
GB2561727A (en) 2016-02-23 2018-10-24 Nchain Holdings Ltd Blockchain-based exchange with tokenisation
AU2017223129A1 (en) 2016-02-23 2018-07-12 nChain Holdings Limited Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
CA3013182A1 (en) 2016-02-23 2017-08-31 nChain Holdings Limited Universal tokenisation system for blockchain-based cryptocurrencies
EP3420517B1 (en) 2016-02-23 2022-07-06 nChain Holdings Limited A method and system for the secure transfer of entities on a blockchain
SG10202011641RA (en) 2016-02-23 2021-01-28 Nchain Holdings Ltd Tokenisation method and system for implementing exchanges on a blockchain
EP3754901A1 (en) * 2016-02-23 2020-12-23 Nchain Holdings Limited Blockchain implemented counting system and method for use in secure voting and distribution
SG11201805472RA (en) 2016-02-23 2018-07-30 Nchain Holdings Ltd Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
CA3227439A1 (en) 2016-02-23 2017-08-31 nChain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts
CN113595726A (zh) 2016-02-23 2021-11-02 区块链控股有限公司 用于控制和分发数字内容的区块链实现的方法
EP3683707A4 (en) * 2017-09-14 2020-10-14 Sony Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING PROCESS AND PROGRAM
US11449634B2 (en) * 2017-10-24 2022-09-20 Tzero Ip, Llc Federated personally identifiable information (PII) service
TWI677213B (zh) * 2017-11-23 2019-11-11 財團法人資訊工業策進會 監控裝置、方法及其電腦程式產品
CN108492180B (zh) 2018-02-14 2020-11-24 创新先进技术有限公司 资产管理方法及装置、电子设备
CN110290094B (zh) * 2018-03-19 2022-03-11 华为技术有限公司 一种数据访问权限的控制方法和装置
US20210044589A1 (en) * 2018-03-25 2021-02-11 British Telecommunications Public Limited Company Access control
US11888985B2 (en) * 2018-04-06 2024-01-30 Nippon Telegraph And Telephone Corporation Blockchain system, registration terminal, approval terminal, smart contract registration method, and smart contract registration program
EP3557496A1 (en) * 2018-04-18 2019-10-23 Chain IP Holdings, Inc. Multiple layer smart-contract
CN112204555A (zh) * 2018-04-30 2021-01-08 锂离子工业公司 电力基础设施安全系统
US11669914B2 (en) 2018-05-06 2023-06-06 Strong Force TX Portfolio 2018, LLC Adaptive intelligence and shared infrastructure lending transaction enablement platform responsive to crowd sourced information
CA3098670A1 (en) 2018-05-06 2019-11-14 Strong Force TX Portfolio 2018, LLC Methods and systems for improving machines and systems that automate execution of distributed ledger and other transactions in spot and forward markets for energy, compute, storage and other resources
JP6730369B2 (ja) * 2018-05-16 2020-07-29 株式会社日立製作所 利用管理方法、利用管理システム、および、ノード
CN109190409B (zh) * 2018-09-14 2020-09-01 京东数字科技控股有限公司 记录信息传播路径的方法、装置、设备及可读存储介质
EP3637342A1 (en) * 2018-10-08 2020-04-15 CTF Markets GmbH Method and system for auditable and incentive compatible prevention of front-running
US10958421B2 (en) 2018-11-20 2021-03-23 International Business Machines Corporation User access control in blockchain
JP6756914B2 (ja) 2018-11-27 2020-09-16 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited ブロックチェーンネットワーク内のファンクションアズアサービス(FaaS)プラットフォーム
EP3549028A4 (en) * 2018-11-30 2020-01-15 Alibaba Group Holding Limited SCHEME FOR STRUCTURING BLOCKCHAIN DATA RELATIONSHIPS BASED ON REPLICATION OF BINARY LOG REPLICATION
US11405182B2 (en) 2018-12-03 2022-08-02 Ebay Inc. Adaptive security for smart contracts using high granularity metrics
US11250125B2 (en) 2018-12-03 2022-02-15 Ebay Inc. Highly scalable permissioned block chains
US11263315B2 (en) 2018-12-03 2022-03-01 Ebay Inc. System level function based access control for smart contract execution on a blockchain
US10733152B2 (en) * 2018-12-29 2020-08-04 Alibaba Group Holding Limited System and method for implementing native contract on blockchain
US11086847B2 (en) 2018-12-29 2021-08-10 Advanced New Technologies Co., Ltd. System and method for implementing native contract on blockchain
CN109828847B (zh) * 2019-01-25 2023-09-01 平安科技(深圳)有限公司 基于区块链的锁处理方法、装置、计算机设备及存储介质
CN111033468B (zh) 2019-03-26 2024-04-19 创新先进技术有限公司 实施不同类型的区块链合约的系统和方法
US11201726B2 (en) 2019-05-02 2021-12-14 International Business Machines Corporation Multi-layered image encoding for data block
KR20210059547A (ko) 2019-11-15 2021-05-25 서강대학교산학협력단 스마트 컨트랙트를 기반으로 한 데이터 암호화 가능한 블록체인 네트워크
CN110807189B (zh) * 2019-11-15 2023-07-07 内蒙古大学 一种区块链访问控制中的权限分割方法
US11982993B2 (en) 2020-02-03 2024-05-14 Strong Force TX Portfolio 2018, LLC AI solution selection for an automated robotic process
CN111327618B (zh) * 2020-02-25 2023-04-18 上海链民信息科技有限公司 一种基于区块链的精准访问控制方法、装置及系统
CN111444524B (zh) * 2020-03-26 2023-11-10 广州智慧城市发展研究院 一种基于联盟链的动态双访问控制机制
CN114024700B (zh) * 2020-07-17 2024-03-26 中国电信股份有限公司 基于区块链的数据文件的访问控制方法、介质及装置
CN114117507B (zh) * 2020-08-28 2024-01-30 中国电信股份有限公司 对象存储系统及其访问控制方法和设备、存储介质
GB202018919D0 (en) * 2020-12-01 2021-01-13 Smarter Contracts Ltd Consent Management
US11271716B1 (en) 2021-01-28 2022-03-08 Emtruth, Inc. Blockchain-based data management of distributed binary objects
KR102549385B1 (ko) * 2022-11-03 2023-06-29 주식회사 커먼컴퓨터 데이터 액세스 제어 제공 방법 및 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140143889A1 (en) * 1995-02-13 2014-05-22 Intertrust Technologies Corporation Systems and methods for secure transaction management and electronic rights protection
US20160028552A1 (en) * 2014-07-25 2016-01-28 Blockchain Technologies Corporation System and method for creating a multi-branched blockchain with configurable protocol rules
CN105488431A (zh) * 2015-11-30 2016-04-13 布比(北京)网络技术有限公司 区块链系统权限管理方法和装置
CN105809062A (zh) * 2016-03-01 2016-07-27 布比(北京)网络技术有限公司 一种合约构建、执行方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5263157A (en) 1990-02-15 1993-11-16 International Business Machines Corporation Method and system for providing user access control within a distributed data processing system by the exchange of access control profiles
JP3765191B2 (ja) 1998-09-21 2006-04-12 富士ゼロックス株式会社 オブジェクトのアクセス管理方法
US7685123B1 (en) 2006-08-30 2010-03-23 Network Appliance, Inc. Method and system for controlling access to dynamically specified resources
US8285990B2 (en) 2007-05-14 2012-10-09 Future Wei Technologies, Inc. Method and system for authentication confirmation using extensible authentication protocol
US9338148B2 (en) * 2013-11-05 2016-05-10 Verizon Patent And Licensing Inc. Secure distributed information and password management
WO2016189488A2 (en) 2015-05-27 2016-12-01 Vishal Gupta Universal original document validation platform

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140143889A1 (en) * 1995-02-13 2014-05-22 Intertrust Technologies Corporation Systems and methods for secure transaction management and electronic rights protection
US20160028552A1 (en) * 2014-07-25 2016-01-28 Blockchain Technologies Corporation System and method for creating a multi-branched blockchain with configurable protocol rules
CN105488431A (zh) * 2015-11-30 2016-04-13 布比(北京)网络技术有限公司 区块链系统权限管理方法和装置
CN105809062A (zh) * 2016-03-01 2016-07-27 布比(北京)网络技术有限公司 一种合约构建、执行方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GUY ZYSKIND: "Decentralizing Privacy: Using Blockchain to Protect Personal Data", 《2015 IEEE SECURITY AND PRIVACY WORKSHOPS》 *
SAYED HADI HASHEMI: "World of Empowered IoT Users", 《2016 IEEE FIRST INTERNATIONAL CONFERENCE ON INTERNET-OF-THINGS DESIGN AND IMPLEMENTATION(IOTDI)》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110598454A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 区块链中的数据处理方法、装置、存储介质和计算机设备
CN110598454B (zh) * 2019-09-20 2021-07-06 腾讯科技(深圳)有限公司 区块链中的数据处理方法、装置、存储介质和计算机设备
CN111291420A (zh) * 2020-01-21 2020-06-16 国家市场监督管理总局信息中心 一种基于区块链的分布式离链数据存储方法

Also Published As

Publication number Publication date
JP7019697B2 (ja) 2022-02-15
EP3479519A1 (en) 2019-05-08
EP3479519A4 (en) 2020-02-19
AU2017320341B2 (en) 2022-04-28
AU2017320341A1 (en) 2019-02-14
KR102480035B1 (ko) 2022-12-21
KR20190042567A (ko) 2019-04-24
US11153092B2 (en) 2021-10-19
US20190199531A1 (en) 2019-06-27
EP3479519B1 (en) 2022-11-02
JP2019530109A (ja) 2019-10-17
CN109691015B (zh) 2022-02-01
WO2018039722A1 (en) 2018-03-08

Similar Documents

Publication Publication Date Title
CN109691015A (zh) 区块链上的动态访问控制
WO2021017433A1 (zh) 基于智能合约的数据授权方法及装置
US11611560B2 (en) Systems, methods, and apparatuses for implementing consensus on read via a consensus on write smart contract trigger for a distributed ledger technology (DLT) platform
TWI729719B (zh) 基於區塊鏈的資料授權方法及裝置、電子設備及電腦可讀儲存媒介
US11212296B2 (en) Systems and methods for managing digital identities
WO2021017441A1 (zh) 基于区块链的数据授权方法及装置
KR101987692B1 (ko) 블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법
Baird et al. Hedera: A public hashgraph network & governing council
Baird et al. Hedera: A governing council & public hashgraph network
CN109583885A (zh) 回合控制可重写区块链
JP2019515534A (ja) 分散ハッシュテーブル及びピア・ツー・ピア分散型台帳を利用した契約の実行を制御する方法及びシステム
CN111814156B (zh) 一种基于可信设备的数据获取方法、装置及设备
CN109428892A (zh) 多阶段可重写区块链
US20230342849A1 (en) Method, apparatus, and computer-readable medium for compliance aware tokenization and control of asset value
Jiang et al. Unified identity authentication system based on blockchain
Sudha An analytical review on privacy-preserving and public auditing in cloud storage
Kaplan et al. Blockchain: A Decentralized Approach to Big Data

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