CN108923908B - 授权处理方法、装置、设备及存储介质 - Google Patents

授权处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN108923908B
CN108923908B CN201810662711.3A CN201810662711A CN108923908B CN 108923908 B CN108923908 B CN 108923908B CN 201810662711 A CN201810662711 A CN 201810662711A CN 108923908 B CN108923908 B CN 108923908B
Authority
CN
China
Prior art keywords
authorization
node
party application
block
record
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
CN201810662711.3A
Other languages
English (en)
Other versions
CN108923908A (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.)
Baidu Online Network Technology Beijing Co Ltd
Original Assignee
Baidu Online Network Technology Beijing 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 Baidu Online Network Technology Beijing Co Ltd filed Critical Baidu Online Network Technology Beijing Co Ltd
Priority to CN201810662711.3A priority Critical patent/CN108923908B/zh
Publication of CN108923908A publication Critical patent/CN108923908A/zh
Application granted granted Critical
Publication of CN108923908B publication Critical patent/CN108923908B/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
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/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
    • 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/3247Cryptographic 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 digital signatures

Abstract

本发明实施例公开了一种授权处理方法、装置、设备和存储介质。其中,该方法区块链系统中的节点执行,该方法包括:依据资源拥有者对第三方应用的授权关系生成授权记录;向区块链系统中的区块生成节点发送所述授权记录,使所述区块生成节点在区块链中存储所述授权记录;接收所述区块生成节点返回的所述授权记录存储在所述区块链中的区块地址。本发明实施例的技术方案,由于授权记录是存储在区块链中的,并且授权服务节点和第三方应用节点均具有授权记录存储在区块链中的区块地址,均能够从区块链中得到授权记录,因而提高了授权记录的准确性,使得授权记录具有公信力。

Description

授权处理方法、装置、设备及存储介质
技术领域
本发明实施例涉及区块链技术领域,尤其涉及一种授权处理方法、装置、设备及存储介质。
背景技术
在某些互联网应用场景中,通过开放平台向用户提供内容服务的第三方应用(例如熊掌号平台的开发者或微信平台的公众号)需要调用平台中资源拥有者(即普通用户)的账号信息,那么第三方应用必须得到资源拥有者的授权。
基于现有OAuth(Open Authorization,开放授权)协议的授权过程如下:第三方应用通过授权服务器,向资源拥有者发送授权请求,资源拥有者对第三方应用授权的结果发送给授权服务器,授权服务器依据授权结果生成并存储授权记录,并且还依据授权记录生成并存储访问令牌(Access Token),且向第三方应用颁发访问令牌。后续第三方应用通过授权服务器颁发的访问令牌向平台方的资源服务器请求资源。
由于现有授权协议中授权记录单方面存储在授权服务器中的,如果授权服务器单方面修改授权规则或者授权服务器数据丢失等均会造成授权记录的不准确。
发明内容
本发明实施例提供了一种授权处理方法、装置、设备和存储介质,能够提高授权记录的准确性。
第一方面,本发明实施例提供了一种授权处理方法,由区块链系统中的节点执行,该方法包括:
依据资源拥有者对第三方应用的授权关系生成授权记录;
向区块链系统中的区块生成节点发送所述授权记录,使所述区块生成节点在区块链中存储所述授权记录;
接收所述区块生成节点返回的所述授权记录存储在所述区块链中的区块地址。
第二方面,本发明实施例还提供了一种授权处理方法,由区块链系统中的节点执行,该方法包括:
接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址;
依据所述区块地址生成访问令牌,并依据所述访问令牌进行资源访问。
第三方面,本发明实施例还提供了一种授权处理装置,配置于区块链系统中的节点中,该装置包括:
授权记录生成模块,用于依据资源拥有者对第三方应用的授权关系生成授权记录;
授权记录发送模块,用于向区块链系统中的区块生成节点发送所述授权记录,使所述区块生成节点在区块链中存储所述授权记录;
第一地址接收模块,用于接收所述区块生成节点返回的所述授权记录存储在所述区块链中的区块地址。
第四方面,本发明实施例还提供了一种授权处理装置,配置于区块链系统中的节点中,该装置包括:
第二地址接收模块,用于接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址;
令牌生成模块,用于依据所述区块地址生成访问令牌;
访问模块,用于依据所述访问令牌进行资源访问。
第五方面,本发明实施例还提供了一种设备,该设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现第一方面中任意所述的授权处理方法或者实现第二方面中任意所述的授权处理方法。
第六方面,本发明实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任意所述的授权处理方法或者实现第二方面中任意所述的授权处理方法。
本发明实施例提供的技术方案,区块链系统中的授权服务节点依据资源拥有者对第三方应用的授权关系生成授权记录,并向区块生成节点发送授权记录使区块生成节点在区块链中存储授权记录,并且区块生成节点向授权服务节点反馈授权记录存储在区块链中的区块地址,授权服务节点还向第三方应用节点发送区块地址。由于授权记录是存储在区块链中的,并且授权服务节点和第三方应用节点均具有授权记录存储在区块链中的区块地址,均能够从区块链中得到授权记录,因而提高了授权记录的准确性,使得授权记录具有公信力。
附图说明
图1是本发明实施例一中提供的一种授权处理方法的流程图;
图2是本发明实施例二中提供的一种授权处理方法的流程图;
图3是本发明实施例三中提供的一种授权处理方法的流程图;
图4是本发明实施例四中提供的一种授权处理方法的流程图;
图5是本发明实施例五中提供的一种授权处理装置的结构框图;
图6是本发明实施例六中提供的一种授权处理装置的结构框图;
图7是本发明实施例七中提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种授权处理方法的流程图,本实施例是以OAuth授权协议为基础,将区块链技术应用于授权场景中,用于解决现有的授权记录仅由授权服务器单方面背书,导致授权记录准确性及公信力低等问题。所适用的区块链可以是公有链或者联盟链。整套授权处理方法通常由区块链系统中的第三方应用节点、授权服务节点及区块链系统中的其他节点配合执行,各节点独立的参与到区块链系统的运行过程中。其中,第三方应用节点中配置有第三方应用客户端和区块链应用客户端,一个第三方应用节点可以供多个第三方应用账号使用;授权服务节点中也配置有区块链应用客户端,并且还集成有实现授权服务的功能模块。需要说明的是,区块链系统中可以有一种授权服务节点,也可以有多种授权服务节点。不同授权服务节点实现的授权服务功能不同,例如部分授权服务节点对第一开放平台的授权进行处理,部分授权服务器节点对第二开放平台的授权进行处理等。
本发明实施例的方案应用于区块链系统中的授权服务节点,该方法可以由本发明实施例提供的授权处理装置来执行,该装置可采用软件和/或硬件的方式实现,并可集成于承载区块链系统节点的计算设备中。参见图1,该方法具体包括:
S110,依据资源拥有者对第三方应用的授权关系生成授权记录。
其中,资源拥有者是指开放平台中资源所属用户,即为开放平台的普通用户;第三方应用是指借助开放平台向用户提供内容服务的内容提供者,如熊掌号平台的开发者或微信平台的公众号。授权关系是指资源拥有者设置的第三方应用可访问资源拥有者相关信息的权限;例如,用户在微信平台上授权微信公众号可访问用户的账户信息、头像或电话等,对应的授权关系即为微信平台的公众号可访问授权用户的账户信息、头像或电话。
具体的授权关系的确定可以通过如下过程实现:第三方应用通过授权服务节点向资源拥有者发起包含访问资源的授权请求,授权服务节点依据接收到的授权请求及第三方应用的可信度,对授权请求进行分析后,由资源拥有者确定授权关系,最终将授权关系返回至第三方应用。可选的,资源拥有者只对第三方应用发送的授权请求中的部分访问资源进行授权。如微信平台的公众号只可访问授权用户的账户信息,不授权电话信息等。
需要说明的是,第三方应用与资源拥有者之间是相对应的,不同的资源拥有者对相同的第三方应用授予的权限可以不同,也可以相同;相同的资源拥有者对不同的第三方应用授予的权限不同。
授权记录用于对授权关系进行记录。可选的,授权记录可以包括资源拥有者标识,第三方应用标识和授予权限集合;其中,资源拥有者标识可以是资源拥有者的用户名、账号、id等;第三方应用标识是指用于唯一识别第三方应用的身份标志,例如可以是第三方应用的公钥或ID等;授予权限集合是指资源拥有者授予第三方应用可访问其相关资源的权限集合,可以包括资源拥有者的用户名、账号、id、头像或身份信息权限等。
为了便于后续对授权记录更新或识别出授权记录是否变化,以及为了降低本机授权服务器节点作假的概率,示例性的,授权记录中还可以包括本机授权服务节点标识,授权时间以及本机授权服务节点的签名中的至少一个。其中,授权时间是指用于代表资源拥有者对第三方应用授予其可调用资源拥有者在某一平台上的相关资源的时间戳。该时间戳可以是本机授权服务节点生成授权记录的本地时间点,也可以是本机授权服务节点从公信力较强的、用于保障时间权威性的第三方如可信时间戳服务中心,获取的时间文件。
本机授权服务节点标识可以是授权服务节点的非对称加密公钥;本机授权服务节点的签名是指采用SHA256(Secure Hash Algorithm,安全哈希算法)、md5sum、公钥或私钥等对授权记录进行唯一的签名,如使用授权服务节点的非对称加密私钥,对授权记录中所包含的元素进行数字签名。例如,授权记录为{本机授权服务节点标识,资源拥有者标识,第三方应用标识,{授予权限集合},授权时间,签名}构成的6元组;对应的,本机授权服务节点的签名可以是对{本机授权服务节点标识,资源拥有者标识,第三方应用标识,{授予权限集合},授权时间}构成的5元组计算的数字签名。
具体的,区块链系统中的第三方应用节点将资源拥有者对第三方应用的授权关系发送至本机授权服务节点,本机授权服务节点接收到该授权关系后,依据该授权关系生成对应的授权记录。
需要说明的是,授权记录是可以更新的。若任一第三方应用与资源拥有者之间的授权关系有更新,本机授权服务节点将从区块链系统中的第三方应用节点获取最新的授权关系并生产新的授权记录。
示例性的,如果授权关系是取消授权,则对应的将授权记录中的授予权限集合设置为空集合。例如,将授权记录{本机授权服务节点标识,资源拥有者标识,第三方应用标识,{授予权限集合},授权时间,签名}6元组中的元素{授予权限集合}设置为空。
S120,向区块链系统中的区块生成节点发送授权记录,使区块生成节点在区块链中存储授权记录。
具体的操作可以是,本机授权服务节点生成授权记录后,将授权记录传输至区块链系统中的区块生成节点,以使区块生成节点将该授权记录存储在区块链中。同时,也可将授权记录发送至区块链系统中的其它节点。
示例性的,为了降低本机授权服务节点作假的概率,在区块生成节点将授权记录存储在区块链中之前,区块生成节点可通过验证本机授权服务节点接收到授权关系的时间与授权记录生成的时间之间是否足够短,来避免作假等现象。
需要说明的是,若本机授权服务节点从区块链系统中的第三方应用节点获取到任一第三方应用与资源拥有者之间最新的授权关系,则依据该最新的授权关系生产最新的授权记录。对应的,向区块链系统中的区块生成节点发送最新的授权记录,使区块生成节点在区块链中存储该最新的授权记录。其中,区块生成节点可通过查看授权记录中的授权时间来确定是否是新的授权记录。
S130,接收区块生成节点返回的授权记录存储在区块链中的区块地址。
其中,区块地址是指用于存储授权记录的区块的id。由于授权记录的字节数不同,将导致一个区块中,内部可以存储一条或多条授权记录。当一个区块存储多条授权记录时,为了便于用户、区块链系统中的第三方应用节点及本机授权服务节点等快速查找到的某一条授权记录,示例性的,区块地址可以包括区块id以及授权记录在区块内存储的字节偏移量。其中,区块id是区块唯一性标识可以是区块高度,字节偏移量是指能够准确定位到某一条授权记录所在区块中位置的偏移量。
具体的,当区块生成节点接收到本机授权服务节点发送的授权记录后,对该授权记录进行诸如信息转换、格式调整、或代码运行等处理,并将处理后的授权记录存储在区块中,同时将该授权记录所在区块链的区块地址返回给本机授权服务节点,本机授权服务节点接收到区块生成节点返回的授权记录存储在区块链中的区块地址后,可建立该区块地址与授权记录对应关系表,并在本地进行存储,以便于在举证等需要时随时对授权记录进行查询。
示例性的,区块链系统中还可以包括至少一个资源服务节点,资源服务节点中也配置有区块链应用客户端,并且还集成有提供资源服务的功能模块,用于向第三方应用提供资源。需要说明的是,区块链系统中可以有一种资源服务节点,也可以有多种资源服务节点。不同资源服务节点实现的资源服务功能不同,例如部分资源服务节点对第一开放平台的资源调用进行处理,部分资源服务器节点对第二开放平台的资源调用进行处理等。
为了保证授权关系在本机授权服务节点、资源服务节点和第三方应用之间是公开透明,不可篡改的,以便资源服务节点后续如果单方面拒绝第三方应用对资源的调用时,第三方应用可通过其所属的第三方应用节点获取区块链上存储的授权记录来进行举证。示例性的,接收区块生成节点返回的授权记录存储在区块链中的区块地址之后,还可以包括:向第三方应用反馈区块地址,使该第三方应用依据该区块地址进行资源调用。
需要说明的是,若区块生成节点接收到新的授权记录,则将向本机授权服务节点返回新的授权记录存储在区块链中的新的区块地址;本机授权服务节点接收到新的区块地址后将把该区块地址的返回给对应的第三方应用,使该第三方应用依据该区块地址进行资源调用。
本发明实施例提供的技术方案,区块链系统中的授权服务节点依据资源拥有者对第三方应用的授权关系生成授权记录,并向区块生成节点发送授权记录使区块生成节点在区块链中存储授权记录,并且区块生成节点向授权服务节点反馈授权记录存储在区块链中的区块地址,授权服务节点还向第三方应用节点发送区块地址。由于授权记录是存储在区块链中的,并且授权服务节点和第三方应用节点均具有授权记录存储在区块链中的区块地址,均能够从区块链中得到授权记录,因而提高了授权记录的准确性,使得授权记录具有公信力。
实施例二
图2为本发明实施例二提供的一种授权处理方法的流程图,本实施例在上述实施例一的基础上进一步的优化。参见图2,该方法具体包括:
S210,依据资源拥有者对第三方应用的授权关系生成授权记录。
S220,向区块链系统中的区块生成节点发送授权记录,使区块生成节点在区块链中存储授权记录。
S230,接收区块生成节点返回的授权记录存储在区块链中的区块地址。
S240,接收区块链系统中监管节点发送的授权校验请求,其中授权校验请求中包括待校验的授权关系。
其中,监管节点是指公信力较强的,用于保障授权关系权威性的第三方节点。可以是区块链中独立的节点,监管节点中也配置有区块链应用客户端。
授权校验请求是指用于指示监管节点对某一授权关系进行校验的请求。可选的,授权校验请求中可以包括待校验的授权关系。
具体的,若监管节点监测到第三方应用节点所支持的任一第三方应用,被本机资源服务节点单方面拒绝对资源的调用时,可直接向本机授权服务节点发送授权校验请求。
S250,调用本机授权服务节点提供的授权校验接口得到区块链中存储的授权关系所关联的授权记录,并依据关联的授权记录对待校验的授权关系进行校验,并向区块链系统中的其他节点反馈校验结果。
其中,授权校验接口是指专门用于对授权校验请求进行校验的接口,可以是一个虚拟的IP接口。
具体的,当本机授权服务节点接收到监管节点发送的授权校验请求后,通过调用本机授权服务节点提供的授权校验接口,获得存储在区块链中与该授权关系相关联的授权记录;并通过对相关联的授权记录进行解密,得到授权记录中所包含的各种元素;在授权记录中包含的资源拥有者标识与第三方应用标识相同的情况下,查看授予权限集合的内容是否与待校验的授权关系中记录的资源拥有者对该第三方应用的资源调用授权情况一致,若一致,则将向区块链系统中的其他节点发送校验一致的反馈校验结果;否则发送校验不一致的反馈校验结果。
需要说明的是,本实施例中,步骤S240和S250,与步骤S230之间没有先后之分,可以是本实施例中给出的顺序;也可以是先执行步骤S240和S250,再执行步骤S230;还可以是两个过程同时执行。
本实施例提供的技术方案,通过在区块链系统中设置公信力较强的监管节点,以实时对第三方应用的资源的调用情况进行监管;在第三方应用调用资源被拒绝时,向本机授权服务节点发送授权校验请求,使本机授权服务节点对授权校验请求进行校验,保证了第三方应用的权益。
实施例三
图3为本发明实施例三提供的一种授权处理方法的流程图,整套授权处理方法通常由区块链系统中的第三方应用节点、授权服务节点及区块链系统中的其他节点配合执行。本发明实施例的方案应用于区块链系统中的第三方应用节点,该方法可以由本发明实施例提供的授权处理装置来执行,该装置可采用软件和/或硬件的方式实现,并可集成于承载区块链系统节点的计算设备中。参见图3,该方法具体包括:
S310,接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址。
S320,依据区块地址生成访问令牌,并依据访问令牌进行资源访问。
其中,访问令牌是指第三方应用进行资源访问的依据;可选的,访问令牌中可以包括区块地址及本机第三方应用节点标识等。
具体的,当本机第三方应用节点接收到区块链系统中的授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址后,本机第三方应用节点将依据该区块地址、本机第三方应用节点标识等进行加密生成访问令牌,发送至区块链系统中的资源服务节点进行资源访问。
本实施例提供的技术方案,通过将授权记录存储在区块链系统中的区块地址发送至本机第三方应用节点,使授权服务节点和第三方应用节点均具有授权记录存储在区块链中的区块地址,均能够从区块链中得到授权记录,因而提高了授权记录的准确性,使得授权记录具有公信力。
示例性的,为了保证授权记录的准确性及本机第三方应用节点的权益,以及降低区块链系统中的授权服务节点作假的概率,接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址之后,还可以包括:依据区块地址获得存储在区块链中的授权记录。
具体的,本机第三方应用节点可通过区块地址获取存储在区块链中的授权记录,并查看该授权记录是否正确,若不正确,可向区块链系统中的监管节点发送授权校验请求,以维护其自身的权益。
实施例四
图4为本发明实施例四提供的一种授权处理方法的流程图,本实施在上述实施例的基础上,提供了一种区块链系统中的第三方应用节点、授权服务节点及区块链系统中的其他节点进行交互的优选示例。参见图4,该方法具体包括:
S410,授权服务节点依据资源拥有者对第三方应用的授权关系生成授权记录。
S420,授权服务节点向区块链系统中的区块生成节点发送授权记录,使区块生成节点在区块链中存储授权记录。
S430,区块生成节点向授权服务节点发送授权记录存储在区块链中的区块地址。
S440,授权服务节点接收区块生成节点返回的授权记录存储在区块链中的区块地址。
S450,授权服务节点向第三方应用反馈区块地址。
S460,第三方应用节点接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址。
S470,第三方应用节点依据区块地址生成访问令牌,并依据访问令牌进行资源访问。
本发明实施例提供的技术方案,区块链系统中的授权服务节点依据资源拥有者对第三方应用的授权关系生成授权记录,并向区块生成节点发送授权记录使区块生成节点在区块链中存储授权记录,并且区块生成节点向授权服务节点反馈授权记录存储在区块链中的区块地址,授权服务节点还向第三方应用节点发送区块地址。由于授权记录是存储在区块链中的,并且授权服务节点和第三方应用节点均具有授权记录存储在区块链中的区块地址,均能够从区块链中得到授权记录,因而提高了授权记录的准确性,使得授权记录具有公信力。
实施例五
图5为本发明实施例五提供的一种授权处理装置的结构框图,该装置配置于区块链系统中的节点,可执行本发明实施例一和实施例二所提供的授权处理方法,具备执行方法相应的功能模块和有益效果。如图5所示,该装置可以包括:
授权记录生成模块510,用于依据资源拥有者对第三方应用的授权关系生成授权记录;
授权记录发送模块520,用于向区块链系统中的区块生成节点发送授权记录,使区块生成节点在区块链中存储授权记录;
第一地址接收模块530,用于接收区块生成节点返回的授权记录存储在区块链中的区块地址。
示例性的,上述装置还可以包括:
地址发送模块,用于在接收区块生成节点返回的授权记录存储在区块链中的区块地址之后,向第三方应用反馈区块地址,使该第三方应用依据该区块地址进行资源调用。
本发明实施例提供的技术方案,区块链系统中的授权服务节点依据资源拥有者对第三方应用的授权关系生成授权记录,并向区块生成节点发送授权记录使区块生成节点在区块链中存储授权记录,并且区块生成节点向授权服务节点反馈授权记录存储在区块链中的区块地址,授权服务节点还向第三方应用节点发送区块地址。由于授权记录是存储在区块链中的,并且授权服务节点和第三方应用节点均具有授权记录存储在区块链中的区块地址,均能够从区块链中得到授权记录,因而提高了授权记录的准确性,使得授权记录具有公信力。
示例性的,上述装置还可以包括:
校验请求接收模块,用于接收区块链系统中监管节点发送的授权校验请求,其中授权校验请求中包括待校验的授权关系;
校验模块,用于调用本机授权服务节点提供的授权校验接口得到区块链中存储的授权关系所关联的授权记录,并依据关联的授权记录对待校验的授权关系进行校验,并向区块链系统中的其他节点反馈校验结果。
可选的,授权记录包括资源拥有者标识,第三方应用标识和授予权限集合。
可选的,授权记录还包括本机授权服务节点标识,授权时间以及本机授权服务节点的签名中的至少一个。
示例性的,区块地址包括区块id以及授权记录在区块内存储的字节偏移量。
实施例六
图6为本发明实施例六提供的一种授权处理装置的结构框图,该装置配置于区块链系统中的节点,可执行本发明实施例三所提供的授权处理方法,具备执行方法相应的功能模块和有益效果。如图6所示,该装置可以包括:
第二地址接收模块610,用于接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址;
令牌生成模块620,用于依据区块地址生成访问令牌;
访问模块630,用于依据访问令牌进行资源访问。
本发明实施例的技术方案,通过将授权记录存储在区块链系统中的区块地址发送至本机第三方应用节点,使授权服务节点和第三方应用节点均具有授权记录存储在区块链中的区块地址,均能够从区块链中得到授权记录,因而提高了授权记录的准确性,使得授权记录具有公信力。
示例性的,上述装置还可以包括:
授权记录获取模块,用于接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址之后,依据区块地址获得存储在区块链中的授权记录。
实施例七
图7为本发明实施例七提供的一种设备的结构示意图,图7示出了适于用来实现本发明实施例实施方式的示例性设备的框图。图7显示的设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。设备12典型的是承担区块链系统节点功能的计算设备。
如图7所示,设备12以通用计算设备的形式表现。设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明实施例各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明实施例所描述的实施例中的功能和/或方法。
设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和/或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与设备12的其它模块通信。应当明白,尽管图中未示出,可以结合设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明任意实施例所提供的授权处理方法。
实施例八
本发明实施例八还提供一种计算机可读存储介质,其上存储有计算机程序(或称为计算机可执行指令),该程序被处理器执行时可实现上述任意实施例所述的授权处理处理方法。该计算机可读存储介质,可以配置于承载区块链系统节点的计算设备中。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明实施例进行了较为详细的说明,但是本发明实施例不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种授权处理方法,其特征在于,由区块链系统中的授权服务节点执行,所述授权服务节点中配置有区块链应用客户端和用于实现授权服务的功能模块,所述方法包括:
依据资源拥有者对第三方应用的授权关系生成授权记录;
向区块链系统中的区块生成节点发送所述授权记录,使所述区块生成节点在区块链中存储所述授权记录;
接收所述区块生成节点返回的所述授权记录存储在所述区块链中的区块地址;
向所述第三方应用反馈所述区块地址,使该第三方应用依据该区块地址进行资源调用,其中,所述第三方应用通过其所属的第三方应用节点获取区块链上存储的授权记录。
2.根据权利要求1所述的方法,其特征在于,还包括:
接收区块链系统中监管节点发送的授权校验请求,其中所述授权校验请求中包括待校验的授权关系;
调用本机授权服务节点提供的授权校验接口得到区块链中存储的所述授权关系所关联的授权记录,并依据关联的授权记录对待校验的授权关系进行校验,并向区块链系统中的其他节点反馈校验结果。
3.根据权利要求1所述的方法,其特征在于,所述授权记录包括资源拥有者标识,第三方应用标识和授予权限集合。
4.根据权利要求3所述的方法,其特征在于,所述授权记录还包括本机授权服务节点标识,授权时间以及本机授权服务节点的签名中的至少一个。
5.根据权利要求1所述的方法,其特征在于,所述区块地址包括区块id以及所述授权记录在区块内存储的字节偏移量。
6.一种授权处理方法,其特征在于,由区块链系统中的第三方应用节点执行,所述第三方应用节点中配置有第三方应用客户端和区块链应用客户端,所述方法包括:
接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址;
依据所述区块地址获得存储在区块链中的区块生成节点的授权记录;
依据所述区块地址生成访问令牌,并依据所述访问令牌进行资源访问。
7.一种授权处理装置,其特征在于,配置于区块链系统中的授权服务节点中,所述授权服务节点中配置有区块链应用客户端和用于实现授权服务的功能模块,所述装置包括:
授权记录生成模块,用于依据资源拥有者对第三方应用的授权关系生成授权记录;
授权记录发送模块,用于向区块链系统中的区块生成节点发送所述授权记录,使所述区块生成节点在区块链中存储所述授权记录;
第一地址接收模块,用于接收所述区块生成节点返回的所述授权记录存储在所述区块链中的区块地址;
地址发送模块,用于向第三方应用反馈区块地址,使该第三方应用依据该区块地址进行资源调用,其中,所述第三方应用通过其所属的第三方应用节点获取区块链上存储的授权记录。
8.一种授权处理装置,其特征在于,配置于区块链系统中的第三方应用节点中,所述第三方应用节点中配置有第三方应用客户端和区块链应用客户端,所述装置包括:
第二地址接收模块,用于接收区块链系统中授权服务节点发送的本机第三方应用节点的授权记录在区块链中存储的区块地址;
令牌生成模块,用于依据所述区块地址生成访问令牌;
访问模块,用于依据所述访问令牌进行资源访问;
授权记录获取模块,用于依据区块地址获得存储在区块链中的区块生成节点的授权记录。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的授权处理方法或者实现如权利要求6所述的授权处理方法。
10.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的授权处理方法或者实现如权利要求6所述的授权处理方法。
CN201810662711.3A 2018-06-25 2018-06-25 授权处理方法、装置、设备及存储介质 Active CN108923908B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810662711.3A CN108923908B (zh) 2018-06-25 2018-06-25 授权处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810662711.3A CN108923908B (zh) 2018-06-25 2018-06-25 授权处理方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN108923908A CN108923908A (zh) 2018-11-30
CN108923908B true CN108923908B (zh) 2022-05-31

Family

ID=64420739

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810662711.3A Active CN108923908B (zh) 2018-06-25 2018-06-25 授权处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN108923908B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359478B (zh) * 2018-12-03 2020-11-10 北京中科晶上科技股份有限公司 基于加密许可文件的授权方法及系统
CN109614768B (zh) * 2018-12-03 2021-10-15 北京中科晶上科技股份有限公司 基于区块链数据文件实施产品授权的方法及系统
CN109992990B (zh) * 2019-01-11 2020-10-30 刘高峰 一种用户头像处理方法、装置及系统
CN109992991A (zh) * 2019-01-11 2019-07-09 刘高峰 一种用户头像处理方法、装置及公众平台
CN109951290B (zh) * 2019-01-31 2022-03-01 创新先进技术有限公司 一种链式账本的授时认证方法、装置及设备
CN109886675B (zh) * 2019-02-01 2021-03-30 杭州电子科技大学 基于区块链的资源访问令牌的分发和资源使用监控方法
CN109688163B (zh) * 2019-02-20 2021-11-30 中国联合网络通信集团有限公司 基于联盟链的数据处理方法、装置、设备及存储介质
CN110008690B (zh) * 2019-04-04 2023-12-12 百度在线网络技术(北京)有限公司 终端应用的权限管理方法、装置、设备和介质
CN110311787B (zh) * 2019-06-21 2022-04-12 深圳壹账通智能科技有限公司 授权管理方法、系统、设备及计算机可读存储介质
CN110535913A (zh) * 2019-07-31 2019-12-03 苏州白杨软件有限公司 一种基于区块链的用户授权及确权方法
CN110619222A (zh) * 2019-08-21 2019-12-27 上海唯链信息科技有限公司 基于区块链的授权处理方法、装置、系统及介质
CN110557401B (zh) * 2019-09-17 2022-01-11 百度在线网络技术(北京)有限公司 基于区块链的品牌事务处理方法、装置、设备和介质
CN110597924B (zh) * 2019-09-29 2021-08-06 腾讯科技(深圳)有限公司 基于区块链的用户标识处理方法、装置、设备及存储介质
CN112668043B (zh) * 2020-12-21 2023-08-11 山大地纬软件股份有限公司 基于区块链的数字资料支付与存入方法、客户端及系统
CN112436946B (zh) * 2021-01-27 2021-05-28 支付宝(杭州)信息技术有限公司 一种基于区块链的通信授权方法、装置、设备和存储介质
CN115168811B (zh) * 2022-09-07 2022-11-29 北京航天奥祥通风科技股份有限公司 一种软件防破解方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320262A (zh) * 2014-11-05 2015-01-28 中国科学院合肥物质科学研究院 基于加密数字货币公开账本技术的用户公钥地址绑定、检索和校验的方法及系统
CN106911641A (zh) * 2015-12-23 2017-06-30 索尼公司 用于授权访问的客户端装置、服务器装置和访问控制系统
CN108173850A (zh) * 2017-12-28 2018-06-15 杭州趣链科技有限公司 一种基于区块链智能合约的身份认证系统和身份认证方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170364936A1 (en) * 2016-06-15 2017-12-21 CouponCo Ltd. Computer-implemented electronic coupon system and methods using a blockchain

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320262A (zh) * 2014-11-05 2015-01-28 中国科学院合肥物质科学研究院 基于加密数字货币公开账本技术的用户公钥地址绑定、检索和校验的方法及系统
CN106911641A (zh) * 2015-12-23 2017-06-30 索尼公司 用于授权访问的客户端装置、服务器装置和访问控制系统
CN108173850A (zh) * 2017-12-28 2018-06-15 杭州趣链科技有限公司 一种基于区块链智能合约的身份认证系统和身份认证方法

Also Published As

Publication number Publication date
CN108923908A (zh) 2018-11-30

Similar Documents

Publication Publication Date Title
CN108923908B (zh) 授权处理方法、装置、设备及存储介质
CN108810006B (zh) 资源访问方法、装置、设备及存储介质
CN110414268B (zh) 访问控制方法、装置、设备及存储介质
US11520912B2 (en) Methods, media, apparatuses and computing devices of user data authorization based on blockchain
CN111258725B (zh) 一种基于区块链的数据处理方法、装置、设备和介质
CN110083610B (zh) 数据处理方法、装置、系统、可信计算装置、设备和介质
JP6464256B2 (ja) Androidアプリケーションのライフサイクルを変更することによって、コンテナ化ワークスペース環境内でアプリケーションの実行を管理する方法
CN113612740B (zh) 权限管理方法、装置、计算机可读介质及电子设备
US20200267187A1 (en) Security platform for multi-component system and services thereof
CN109657492B (zh) 数据库管理方法、介质及电子设备
CN110839087B (zh) 接口调用方法及装置、电子设备和计算机可读存储介质
CN110324416B (zh) 下载路径跟踪方法、装置、服务器、终端及介质
CN112131021A (zh) 一种访问请求处理方法及装置
CN113225351B (zh) 一种请求处理方法、装置、存储介质及电子设备
WO2023241060A1 (zh) 数据访问方法和装置
US20200412535A1 (en) Authentication information transmission method, apparatus, and storage medium
CN114866258A (zh) 一种访问关系的建立方法、装置、电子设备及存储介质
CN109492384B (zh) 接收实体访问、访问密码设备的方法、密码设备和实体
CN114125027A (zh) 一种通信建立方法、装置、电子设备及存储介质
CN111327680B (zh) 认证数据同步方法、装置、系统、计算机设备和存储介质
CN109635558B (zh) 访问控制方法、装置和系统
CN116956308A (zh) 数据库处理方法、装置、设备及介质
CN111355583B (zh) 一种业务提供系统、方法、装置、电子设备及存储介质
US20170118197A1 (en) Sharing data between sandboxed applications with certificates
CN113595962B (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
GR01 Patent grant
GR01 Patent grant