CN114928499B - 一种基于区块链和信任系统的访问控制方法 - Google Patents

一种基于区块链和信任系统的访问控制方法 Download PDF

Info

Publication number
CN114928499B
CN114928499B CN202210707003.3A CN202210707003A CN114928499B CN 114928499 B CN114928499 B CN 114928499B CN 202210707003 A CN202210707003 A CN 202210707003A CN 114928499 B CN114928499 B CN 114928499B
Authority
CN
China
Prior art keywords
blockchain
attribute
user
trust value
chain code
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
CN202210707003.3A
Other languages
English (en)
Other versions
CN114928499A (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.)
Shenzhen Jianke Network Technology Co ltd
Original Assignee
Shenzhen Jianke Network Technology Co ltd
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 Shenzhen Jianke Network Technology Co ltd filed Critical Shenzhen Jianke Network Technology Co ltd
Priority to CN202210707003.3A priority Critical patent/CN114928499B/zh
Publication of CN114928499A publication Critical patent/CN114928499A/zh
Application granted granted Critical
Publication of CN114928499B publication Critical patent/CN114928499B/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
    • 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/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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

Landscapes

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

Abstract

本发明属于物联网访问控制领域,具体涉及一种基于区块链和信任系统的访问控制方法,包括搭建联盟链平台,管理员对区块链网络进行初始化,编写策略管理链码、权限验证链码、信任管理链码、资源管理链码,将链码安装到区块链并初始化;制定访问管理策略,由管理员将制定的访问策略上传到区块链中;管理员对用户的属性进行验证,利用策略管理链码将用户属性保存在区块链上;调用资源管理链码,将资源URL储存到区块链上;户通过区块链向资源请求访问,访问后调用信用管理链码对用户的信任值进行计算,得出的结果将储存在区块链上,并对用户的信任值属性进行更新保存;本发明保证区块链网络的安全,使用令牌减少区块链的存储压力,加快访问速度。

Description

一种基于区块链和信任系统的访问控制方法
技术领域
本发明属于物联网访问控制领域,具体涉及一种基于区块链和信任系统的访问控制方法。
背景技术
随着智能设备和通信技术的快速发展,物联网作为资源受限的低功耗网络的主要标准得到了广泛的接受和普及,已经应用到智能家居、智能交通、智能医疗等众多领域,使人们进入万物互联时代。物联网在给我们带来极大的便利的同时,也伴随着一些安全问题。同时,物联网会产生海量的数据,这些数据中包含着大量的个人隐私,一旦产生泄露将会对用户造成严重的后果。所以,如何让保护物联网上的资源,防止未经授权的访问成为了物联网访问控制的重大挑战。
传统的使用较多的物联网访问控制有自主访问控制(Discretionary AccessControl,DAC)、强制访问控制(Mandatory Access Control,MAC)、基于角色的访问控制(Role Based Access Control,RBAC)、基于属性的访问控制(Attributes Based AccessControl,ABAC)。传统的访问控制模型多使用一个中心实体或一个可信第三方来集中管理用户权限和访问信息,随着越来越多的智能设备接入物联网,中央实体需要管理大量的智能设备,容易发生单点故障,且存在缺乏透明度等问题。区块链所具有的去中心化,不可纂改,可溯源的特性,可以极好的担任物联网访问控制中可信第三方的角色,为物联网中的访问控制提供一个可信的计算环境。同时,联盟链作为一种由多个机构公同参与管理的区块链,它的交易确认时间,每秒交易数比私有链和公有链有较大区别,对安全和性能要求较高,并且没有交易费用,更加适合物联网体系。
发明内容
为了解决解决物联网中访问控制中心化,权限的动态授予以及区块链中节点安全的问题,本发明提出一种基于区块链和信任系统的访问控制方法,具体包括以下步骤:
S1、搭建联盟链平台,管理员对区块链网络进行初始化,包括为该网络中的用户创建证书;
S2、在Hyperledger Fabric平台上使用golang编写链码,包括策略管理链码、权限验证链码、信任管理链码、资源管理链码,将链码安装到区块链并进行初始化;
S3、用户和管理员一起制定访问管理策略,由管理员将制定的访问策略上传到区块链中;同时管理员对用户的属性进行验证,利用策略管理链码将用户属性保存在区块链上;
S4、调用资源管理链码,将资源URL储存到区块链上;
S5、用户通过区块链向资源请求访问,用户发送请求后,链码将检查相应的访问策略和用户的属性,如果用户的属性和策略匹配,则生成一个令牌发送给用户,并将令牌的哈希值保存在区块链上,以便进行权限验证;
S6、区块链记录步骤S5中的并调用信用管理链码对用户的信任值进行计算,得出的结果将储存在区块链上,并对用户的信任值属性进行更新保存。
进一步的,策略管理链码用于实现用户的属性认证和储存,并为系统添加基于属性的访问控制模型的访问控制策略,该链码包括以下接口:
Auth()结构,用于存储用于属性,即当用户向管理员发送属性注册请求,管理员根据规范验证其属性,验证完成后通过该接口将用户属性储存到区块链中;
AddPolicy()接口,用于添加新的基于属性的访问控制模型的访问策略到区块链中;
UpdatePolicy()接口,用于将使用新接收的访问控制策略对旧的进行覆盖,以达到访问控制策略更新的效果;
DeletePolicy()接口,用于将删除储存在区块链中的访问控制策略;
QueryPolicy()接口,用于实现使用索引搜索目标策略的功能。
进一步的,属性验证链码通过调用策略管理链码获得访问策略和用户属性,再通过属性验证链码中的接口验证属性和策略是否匹配,若匹配则发送令牌来代表用户的访问权限,令牌由有效时间、主体账户和客体ID、主体信任值、主体对客体操作权限组成,该链码包括以下接口:
GetAttrs()接口,用于搜索储存在区块链中的用户属性,并返还对应的属性;
CheckAccess()接口,用于完成资源请求用户与资源持有用户之间的交互,即该端口调用QueryPolicy()端口和GetAttrs()端口获得访问控制策略和用户属性,逐一判断属性和策略是否匹配,若匹配则生成令牌发送给资源请求用户,并将令牌的哈希值储存到区块链上,否则返回错误信息,并根据该次交互更新信任值。
进一步的,信任管理链码用于计算每个节点的信任值,包括以下端口:
TrustCaculate()端口,通过储存在区块链中的节点交互行为分别计算直接信任值和推荐信任值,最后对直接和推荐信任值进行加权求和,得出来的最终信任值会作为一种属性储存在区块链上。
进一步的,资源管理链码用于将资源的URL储存到区块链上,包括以下端口:
AddURL()端口,用于以DeviceId作为键,把资源的URL储存到区块链SDB上;
GetURL()端口,用于根据DeviceId从SDB中获得相应的URL。
进一步的,用户的属性包括主体属性、客体属性、操作属性以及环境属性,所述主体属性至少包括用户的ID、角色、组织、信任值和所属的域;所述客体属性至少包括设备的ID和设备的MAC地址;所述操作属性,即主体对客体资源的属性也,包括读、写、执行三种操作;所述环境属性,即策略所需求的上下文条件,至少包括时间、位置、安全级别。
进一步的,步骤S5中用户通过区块链向资源请求访问的过程包括:
S51:用户通过调用存储在区块链网络上的属性验证链码对资源发起请求;
S52:区块链上的属性管理链码收到来自节点的请求后,调用策略管理链码,以此来获得区块链上的访问策略和节点属性,并进行验证;
S53:若请求节点满足访问策略要求,则发送访问令牌给请求节点,并将令牌的哈希值储存在区块链上;
S54:请求节点发送令牌到区块链进行验证,区块链确认令牌的正确性后,将资源发送给请求节点。
进一步的,步骤S6中计算信任值的过程包括以下步骤:
S61、根据存储在区块链中的两个节点间的交互行为,计算出直接信任值Direct_T;
S62、从区块链中获取节点和其他节点间的交互行为,计算出推荐信任值Recommend_T;
S63、对直接信任值和推荐信任值进行加权求和得出最终信任值T,将得出的信任值对节点属性进行更新,最终信任值T表示为:
T=aDirect_T+bRecommend_T;
其中,a是一个随着交互次数增加而增加的值,b是一个随着交互次数增加而减少的值,且a+b=1。
进一步的,若当前用户第n次与网络中节点的交互,则选取最近的n-m次交互计算当前节点的直接信任值,直接信任值Direct_T表示为:
其中,γn-m为老化参数,且0<γ<1;δi为交互的权重,根据节点是否积极互动选择权值,本发明不对该权重的具体值进行限定,但是选取的权重值应当满足δpos>0且vneg<0且|δpos|<|δneg|;a、b和c为常数,e为自然数。
进一步的,若前用户与N个其他域的节点有过交互,则当前用户的间接信任值的计算包括:
其中,x为最少的推荐节点个数,即若有过交互的节点数N小于x则认为当前用户的间接信任值不可信,此时当前用户的间接信任值取0;z为一个常数;Tj为作为资源请求用户与其他域的d第j个用户节点的直接信任值,wj为Tj对应的权重,N为当前节点交互的节点中其他域节点的数量;Nj为第j个其他域节点与当前节点交互过的次数;M为在直接信任值时选取的当前用户与网络中其他节点的交互次数;S为资源敏感度。
本发明使用部署在区块链中的信任管理链码将区块链中的节点可信度作一个量化,通过策略管理链码为资源的访问设置限制,以此来实现权限的动态授予,撤销;同时降低区块链中节点的作恶能力,保证区块链网络的安全,使用令牌的概念进一步减少了区块链的存储压力,加快了访问速度。
附图说明
图1为本发明一种基于区块链和信任系统的访问控制方法的流程示意图;
图2为本发明实施例中采用的用户属性样例;
图3为本发明的令牌结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提出一种基于区块链和信任系统的访问控制方法,具体包括以下步骤:
S1、搭建联盟链平台,管理员对区块链网络进行初始化,包括为该网络中的用户创建证书;
S2、在Hyperledger Fabric平台上使用golang编写链码,包括策略管理链码、权限验证链码、信任管理链码、资源管理链码,将链码安装到区块链并进行初始化;
S3、用户和管理员一起制定访问管理策略,由管理员将制定的访问策略上传到区块链中;同时管理员对用户的属性进行验证,利用策略管理链码将用户属性保存在区块链上;
S4、调用资源管理链码,将资源URL储存到区块链上;
S5、用户通过区块链向资源请求访问,用户发送请求后,链码将检查相应的访问策略和用户的属性,如果用户的属性和策略匹配,则生成一个令牌发送给用户,并将令牌的哈希值保存在区块链上,以便进行权限验证;
S6、区块链记录步骤S5中的并调用信用管理链码对用户的信任值进行计算,得出的结果将储存在区块链上,并对用户的信任值属性进行更新保存。
本实施例的流程如图1,具体包括以下步骤:
搭建联盟链平台,管理员对区块链网络进行初始化,包括为该网络中的用户创建证书;
在Hyperledger Fabric平台上使用golang编写链码,包括策略管理链码、权限验证链码、信任管理链码、资源管理链码,将链码安装到区块链并进行初始化;
调用策略管理合约将属性和访问策略上传到区块链中,策略管理合约由编写的链码构成,主要包括策略管理链码;
服务请求者调用属性验证合约请求资源,属性验证合约由编写的链码构成,主要包括属性验证链码;
属性验证合约判断访问请求者时候符合访问要求,若符合则生成令牌传递给访问请求者;否则根据此次交互调用信任管理链码更新访问请求者的信任值;
资源持有者通过属性验证合约验证令牌是否正确,并计算对应的信任值。
在本实施例中,用户的属性包括主体属性、客体属性、操作属性和环境属性四个部分,主体属性(简称SA)主要包括ID、角色、组织、信任值和所属的域;客体属性(简称OA)由设备ID和设备的MAC地址组成;操作属性(简称AA)代表着主体对客体资源的权限,其由二进制数表示(0x001-读,0x010-写,0x100-执行),作为一种优选的实施方式,通过简单的与或运算来对权限进行调整,即进行主体对客体资源的权限可以同时具有一种或者一种以上;环境属性代表策略所需求的上下文条件,比如时间、位置、安全级别等。
图2给出一种用户属性的具体样例,在该样例中,主题属性包括主体ID、角色、组织以及所属域,每种属性对应一个属性值,例如角色对应工人;客体属性包括客体ID和MAC地址;该实例的操作属性的属性值为0x011,该值为0x001-读与0x010-写两个值的与或操作,表示可进行读操作、写操作;该示例中给出两个环境属性,包括介质时间和允许的IP,表示用户只能在该时间和IP地址的条件进行操作,时间是一个编码值,可以根据实际情况进行编码设置,即环境属性包括当前用户在当前时间、空间以及当前用户的安全等级下可以进行操作的条件,安全等级为用户自定义等级。
在本实施例中,在Hyperledger Fabric平台上使用golang编写的策略管理链码、属性验证链码、信任管理链码、资源管理链码,具体包括:
(一)策略管理链码
策略管理链码用于实现用户的属性认证和储存,并为系统添加基于属性的访问控制模型的访问控制策略,该链码包括以下接口:
Auth()接口:用户像管理员发送属性注册请求,管理员根据规范验证其属性,验证完成后通过该接口将用户属性储存到区块链中。
AddPolicy()接口:该接口被用来添加新的基于属性的访问控制模型的访问策略到区块链中。
UpdatePolicy()接口:该接口将使用新接收的访问控制策略对旧的进行覆盖,以达到访问控制策略更新的效果。
DeletePolicy()接口:该接口将删除储存在区块链中的访问控制策略。
QueryPolicy()接口:该接口实现了使用索引搜索目标策略的功能。
(二)属性验证链码
属性验证链码通过调用策略管理链码获得访问策略和用户属性,再通过属性验证链码中的接口验证属性和策略是否匹配,若匹配则发送令牌来代表用户的访问权限。令牌由有效时间、主体账户和客体ID、主体信任值、主体对客体操作权限组成。图3给出一个令牌的示例,在该示例中,另外包括信任等级Rep、令牌有效时间T、访问的主体账户Asubject、访问的客体账户Aobject以及主体对客体资源的权限R,其中访问的主体账户Asubject、方位的客体账户Aobject分别可以用主体、客体的ID进行表示。属性验证链码包括以下端口:
GetAttrs():该接口能够搜索储存在区块链中的用户属性,并返还对应的属性。
CheckAccess():该接口实现了访问控制管理。该端口首先调用QueryPolicy()和GetAttrs()接口获得访问控制策略和用户属性,然后逐一判断属性和策略是否匹配,若匹配则生成令牌发送给请求者,并将令牌的哈希值储存到区块链上,否则返回错误信息。并根据此次交互行为对信任值进行更新。
CheckToken():根据请求者所发过来的令牌验证其哈希值是否和链上的值匹配。并根据此次交互行为对信任值进行更新。
(三)信任管理链码
信任管理链码通过评估和计算每个节点的信任值。信任值将作为一种属性储存在区块链中,为访问控制提供更为可信的判断依据,实现动态权限控制。该链码包括以下端口:
TrustCaculate():通过储存在区块链中的节点交互行为分别计算直接信任值和推荐信任值,最后对直接和推荐信任值进行加权求和,得出来的最终信任值会作为一种属性储存在区块链上。
(四)资源管理链码
资源管理链码主要负责将资源的URL储存到区块链上,主要包括以下端口:
AddURL():以DeviceId作为键,把资源的URL储存到区块链SDB上。
GetURL():根据DeviceId从SDB中获得相应的URL。
节点通过区块链网络对资源发起访问请求,具体包括以下步骤:
S51:节点通过调用存储在区块链网络上的属性验证链码对资源发起请求;
S52:区块链上的属性管理链码收到来自节点的请求后,调用策略管理链码,以此来获得区块链上的访问策略和节点属性,并进行验证;
S53:若请求节点满足访问策略要求,则发送访问令牌给请求节点,并将令牌的哈希值储存在区块链上;
S54:请求节点发送令牌到区块链进行验证,区块链确认令牌的正确性后,将资源发送给请求节点;
区块链网络会记录节点通过区块链网络对资源发起访问请求过程中节点的访问行为,储存在区块链中。在访问结束后,区块链会调用信任管理合约计算信任值,并对节点信任属性进行更行。
本实施例把信任值计算分为直接信任值和推荐信任值两部分。直接信任值是通过发生在同一个域内的交互作用计算得到的,推荐信任值由跨域交互作用计算得到。该交互作用可能是正的,也可能是负的。积极的交互能够获得正的交互值,而消极的互动则相反。具体步骤如下:
S61:根据存储在区块链中的两个节点间的交互行为,计算出直接信任值Direct_T。
本实施例采用公式(3)来计算直接信任值。与现实中的社交互动一样,积极的互动会使信任增长,而消极的互动会使信任下降。除此之外,本实施例还认为最近的互动会比以前的互动更具有参考价值。所以,引入了一个老化函数,为最近的交互分配更高的权重。老化函数公式如下:
公式(1)中,γn-m是老化参数,其中0<γ<1;在计算直接信任值时,本实施例只选取最近的n-m次交互计算信任值,δi是交互的权重,δpos>0、δneg<0,且|δpos|<|δneg|,因此建立信任比失去信任更难。
公式(1)的输出将被输入到信任增长函数(3)中,具体公式如下:
其中,a、b和c为常数,表示的是直接信任值函数的渐近线、沿x轴的位移参数和增长率;e为自然数。
S62:再从区块链中获取节点和其他节点间的交互行为,计算出推荐信任值Recommend_T。
在某些情况下,没有足够的证据或经验来证明请求者的直接信任值,所以需要对间接信任进行评估。间接信任或是推荐信任是通过请求者和其他域中的交互历史的情况评估得到的。其中推荐域的重要性和共谋是间接信任评估中应该考虑的突出问题。间接信任值的具体计算公式如下:
其中公式(4)对请求者和其他域进行交互后的信任值进行加权求和,并取其平均值。同时,为了避免请求者通过与少数几个节点进行交互来建立欺骗性的信任值,本实施例将纳入参考的信任值个数设置为大于x个,x可以由用户自行设定;Nj为第j个其他域节点与当前节点交互过的次数;Tj为请求者与其他域的直接信任值,wj为权重,z为一个常数,本发明中出现的常数均可由用户自定义设置,本发明不对此做进一步讨论。
公式(5)是权重的计算方式,Nj为请求者与该节点的交互次数,M为在直接信任值时选取的当前用户与网络中其他节点的交互次数计算直接信任值,即公式(1)中的n-m,可以根据该值对间接信任值,这是因为在计算当前用户节点与其他域的用户节点交互情况时,如果一个用户节点比另一个用户节点与当前用户节点有更多的交互次数,且交互次数较多的用户节点是善意的,那么这个节点的推荐肯定比交互次数较少的节点的推荐更可靠。由于不同的节点有着不同的安全目标,其中所包含的资源的重要性也有所不同,推荐信任值的价值也不同。所以,给不同的节点设置不同的敏感度S(S=1,2,3,4,5),该值由用户节点自行根据实际情况选择,本发明不对此进行深入探讨。
S63:对直接信任值和推荐信任值进行加权求和得出最终信任值T,将得出的信任值对节点属性进行更新。
最终信任值计算公式如下:
T=aDirect_T+bRecommend_T (6)
其中,a是一个随着交互次数增加而增加的值,b与a相反,即b是一个随着交互次数减少而减少的值,且二者相加为1。
以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (3)

1.一种基于区块链和信任系统的访问控制方法,其特征在于,具体包括以下步骤:
S1、搭建联盟链平台,管理员对区块链网络进行初始化,包括为该网络中的用户创建证书;
S2、在Hyperledger Fabric平台上使用golang编写链码,包括策略管理链码、权限验证链码、信任管理链码、资源管理链码,将链码安装到区块链并进行初始化;
S3、用户和管理员一起制定访问管理策略,由管理员将制定的访问策略上传到区块链中;同时管理员对用户的属性进行验证,利用策略管理链码将用户属性保存在区块链上;
S4、调用资源管理链码,将资源URL储存到区块链上;
S5、用户通过区块链向资源请求访问,用户发送请求后,链码将检查相应的访问策略和用户的属性,如果用户的属性和策略匹配,则生成一个令牌发送给用户,并将令牌的哈希值保存在区块链上,以便进行权限验证;
S6、区块链记录步骤S5中的并调用信用管理链码对用户的信任值进行计算,得出的结果将储存在区块链上,并对用户的信任值属性进行更新保存;
策略管理链码用于实现用户的属性认证和储存,并为系统添加基于属性的访问控制模型的访问控制策略,该链码包括以下接口:
Auth()结构,用于存储用于属性,即当用户向管理员发送属性注册请求,管理员根据规范验证其属性,验证完成后通过该接口将用户属性储存到区块链中;
AddPolicy()接口,用于添加新的基于属性的访问控制模型的访问策略到区块链中;
UpdatePolicy()接口,用于将使用新接收的访问控制策略对旧的进行覆盖,以达到访问控制策略更新的效果;
DeletePolicy()接口,用于将删除储存在区块链中的访问控制策略;
QueryPolicy()接口,用于实现使用索引搜索目标策略的功能;
权限验证链码通过调用策略管理链码获得访问策略和用户属性,再通过属性验证链码中的接口验证属性和策略是否匹配,若匹配则发送令牌来代表用户的访问权限,令牌由有效时间、主体账户和客体ID、主体信任值、主体对客体操作权限组成,该链码包括以下接口:
GetAttrs()接口,用于搜索储存在区块链中的用户属性,并返还对应的属性;
CheckAccess()接口,用于完成资源请求用户与资源持有用户之间的交互,即该端口调用QueryPolicy()端口和GetAttrs()端口获得访问控制策略和用户属性,逐一判断属性和策略是否匹配,若匹配则生成令牌发送给资源请求用户,并将令牌的哈希值储存到区块链上,否则返回错误信息,并根据该次交互更新信任值;
信任管理链码用于计算每个节点的信任值,包括以下端口:
TrustCaculate()端口,通过储存在区块链中的节点交互行为分别计算直接信任值和推荐信任值,最后对直接和推荐信任值进行加权求和,得出来的最终信任值会作为一种属性储存在区块链上;
资源管理链码用于将资源的URL储存到区块链上,包括以下端口:
AddURL()端口,用于以DeviceId作为键,把资源的URL储存到区块链SDB上;
GetURL()端口,用于根据DeviceId从SDB中获得相应的URL;
步骤S6中计算信任值的过程包括以下步骤:
S61、根据存储在区块链中的两个节点间的交互行为,计算出直接信任值Direct_T;
S62、从区块链中获取节点和其他节点间的交互行为,计算出推荐信任值Recommend_T;
S63、对直接信任值和推荐信任值进行加权求和得出最终信任值T,将得出的信任值对节点属性进行更新,最终信任值T表示为:
T=aDirect_T+bRecommend_T;
其中,a是一个随着交互次数增加而增加的值,b是一个随着交互次数增加而减少的值,且a+b=1;
若当前用户第n次与网络中节点的交互,则选取最近的n-m次交互计算当前节点的直接信任值,直接信任值Direct_T表示为:
其中,γn-m为老化参数,且0<γ<1;δi为交互的权重,δpos>0,δneg<0,且|δpos|<|δneg|;a、b和c为常数,e为自然数;
若前用户与N个其他域的节点有过交互,则当前用户的间接信任值的计算包括:
其中,x为最少的推荐节点个数,即若有过交互的节点数N小于x则认为当前用户的间接信任值不可信,此时当前用户的间接信任值取0;z为一个常数;Tj为作为资源请求用户与其他域的d第j个用户节点的直接信任值,wj为Tj对应的权重,N为当前节点交互的节点中其他域节点的数量;Nj为第j个其他域节点与当前节点交互过的次数;M为在直接信任值时选取的当前用户与网络中其他节点的交互次数;S为资源敏感度。
2.根据权利要求1所述的一种基于区块链和信任系统的访问控制方法,其特征在于,用户的属性包括主体属性、客体属性、操作属性以及环境属性,所述主体属性至少包括用户的ID、角色、组织、信任值和所属的域;所述客体属性至少包括设备的ID和设备的MAC地址;所述操作属性,即主体对客体资源的属性也,包括读、写、执行三种操作;所述环境属性,即策略所需求的上下文条件,至少包括时间、位置、安全级别。
3.根据权利要求1所述的一种基于区块链和信任系统的访问控制方法,其特征在于,步骤S5中用户通过区块链向资源请求访问的过程包括:
S51:用户通过调用存储在区块链网络上的属性验证链码对资源发起请求;
S52:区块链上的属性管理链码收到来自节点的请求后,调用策略管理链码,以此来获得区块链上的访问策略和节点属性,并进行验证;
S53:若请求节点满足访问策略要求,则发送访问令牌给请求节点,并将令牌的哈希值储存在区块链上;
S54:请求节点发送令牌到区块链进行验证,区块链确认令牌的正确性后,将资源发送给请求节点。
CN202210707003.3A 2022-06-21 2022-06-21 一种基于区块链和信任系统的访问控制方法 Active CN114928499B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210707003.3A CN114928499B (zh) 2022-06-21 2022-06-21 一种基于区块链和信任系统的访问控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210707003.3A CN114928499B (zh) 2022-06-21 2022-06-21 一种基于区块链和信任系统的访问控制方法

Publications (2)

Publication Number Publication Date
CN114928499A CN114928499A (zh) 2022-08-19
CN114928499B true CN114928499B (zh) 2023-09-19

Family

ID=82814628

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210707003.3A Active CN114928499B (zh) 2022-06-21 2022-06-21 一种基于区块链和信任系统的访问控制方法

Country Status (1)

Country Link
CN (1) CN114928499B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115622798A (zh) * 2022-11-22 2023-01-17 国网湖北省电力有限公司营销服务中心(计量中心) 一种电力负荷管理系统的用户权限分配方法
CN116527372B (zh) * 2023-05-16 2023-12-15 深圳建安润星安全技术有限公司 基于互联网的数据安全交互系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104935590A (zh) * 2015-06-10 2015-09-23 南京航空航天大学 一种基于角色和用户信任值的hdfs访问控制方法
CN110519066A (zh) * 2019-09-29 2019-11-29 广东电网有限责任公司 一种基于区块链技术的物联网隐私保护访问控制方法
CN111950019A (zh) * 2020-06-05 2020-11-17 成都链向科技有限公司 一种基于区块链的物联网访问控制系统及方法
CN113761583A (zh) * 2021-09-30 2021-12-07 西安理工大学 在区块链上的基于属性的访问控制方法
CN114567473A (zh) * 2022-02-23 2022-05-31 南通大学 一种基于零信任机制的车联网访问控制方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019050527A1 (en) * 2017-09-07 2019-03-14 Visa International Service Association SYSTEM AND METHOD FOR GENERATING TRUSTED TOKENS
US11720906B2 (en) * 2020-02-26 2023-08-08 Touch Point Worldwide, Inc. Blockchain-based product authentication system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104935590A (zh) * 2015-06-10 2015-09-23 南京航空航天大学 一种基于角色和用户信任值的hdfs访问控制方法
CN110519066A (zh) * 2019-09-29 2019-11-29 广东电网有限责任公司 一种基于区块链技术的物联网隐私保护访问控制方法
CN111950019A (zh) * 2020-06-05 2020-11-17 成都链向科技有限公司 一种基于区块链的物联网访问控制系统及方法
CN113761583A (zh) * 2021-09-30 2021-12-07 西安理工大学 在区块链上的基于属性的访问控制方法
CN114567473A (zh) * 2022-02-23 2022-05-31 南通大学 一种基于零信任机制的车联网访问控制方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Block Chain-Based Data Audit and Access Control Mechanism in Service Collaboration;Chao Wang;《IEEEXplore》;全文 *
一种基于信任的动态访问控制策略;林庆国;刘宴兵;;重庆邮电大学学报(自然科学版)(第04期);全文 *
基于BP神经网络的用户信息隐私查询访问控制;马相芬;;计算机仿真(第07期);全文 *
基于区块链技术的安全访问控制机制;刘雪贞;孙从翔;;信息与电脑(理论版)(第07期);全文 *

Also Published As

Publication number Publication date
CN114928499A (zh) 2022-08-19

Similar Documents

Publication Publication Date Title
CN114928499B (zh) 一种基于区块链和信任系统的访问控制方法
JP6895478B2 (ja) パラメータベースのキー導出
Wu et al. A hierarchical security framework for defending against sophisticated attacks on wireless sensor networks in smart cities
US8561152B2 (en) Target-based access check independent of access request
Arora et al. Cloud security ecosystem for data security and privacy
US7882359B2 (en) Method and system for user attestation-signatures with attributes
KR101496329B1 (ko) 네트워크의 디바이스 보안 등급 조절 방법 및 장치
US20220224535A1 (en) Dynamic authorization and access management
US20090217056A1 (en) Secure and Usable Protection of a Roamable Credentials Store
CN105207780B (zh) 一种认证用户方法及装置
KR20170106515A (ko) 다중 팩터 인증 기관
EP3100432A1 (en) Virtual identity of a user based on disparate identity services
US20070255958A1 (en) Claim transformations for trust relationships
US9223949B1 (en) Secure transformable password generation
US11275865B2 (en) Privacy friendly decentralized ledger based identity management system and methods
CN114884680B (zh) 一种基于上下文认证的多服务器可持续信任评估方法
CN110941856A (zh) 一种基于区块链的数据差分隐私保护共享平台
CN108604990A (zh) 终端中本地授权凭证的使用方法及装置
GB2431746A (en) Authorising a computing entity using path label sequences
Singh et al. Identity management in cloud computing through claim-based solution
CN115459992A (zh) 资源访问请求的处理方法、装置、存储介质及电子设备
Harbajanka et al. Security issues and trust management in cloud computing
Alshomrani et al. PUFDCA: A Zero‐Trust‐Based IoT Device Continuous Authentication Protocol
KR20200125279A (ko) 블록 체인기반의 사용자 인증 방법, 시스템
CN109756469A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20230802

Address after: 710000 No. B49, Xinda Zhongchuang space, 26th Street, block C, No. 2 Trading Plaza, South China City, international port district, Xi'an, Shaanxi Province

Applicant after: Xi'an Huaqi Zhongxin Technology Development Co.,Ltd.

Address before: 400065 Chongwen Road, Nanshan Street, Nanan District, Chongqing

Applicant before: CHONGQING University OF POSTS AND TELECOMMUNICATIONS

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20230823

Address after: No. 402, Changhong science and technology building, No. 18, Keji South 12th Road, high tech community, Yuehai street, Nanshan District, Shenzhen, Guangdong 518000

Applicant after: Shenzhen Jianke Network Technology Co.,Ltd.

Address before: 710000 No. B49, Xinda Zhongchuang space, 26th Street, block C, No. 2 Trading Plaza, South China City, international port district, Xi'an, Shaanxi Province

Applicant before: Xi'an Huaqi Zhongxin Technology Development Co.,Ltd.

GR01 Patent grant
GR01 Patent grant