访问授权方法、装置、电子设备及可读存储介质与流程



1.本发明涉及区块链技术领域,具体涉及一种访问授权方法、装置、电子设备及可读存储介质。


背景技术:



2.区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,其本质上是一个去中心化的分布式数据库,被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术,作为构造信任的机器,将可能彻底改变整个人类社会价值传递的方式,能够实现数据一致性存储、反篡改和去中心。
3.算力节点的访问授权一般由算力节点的管理者来负责。例如,算力调度平台的运营者把算力节点调度给某用户之后,需要通知算力节点管理者来为该用户增加访问权限,当该用户使用完毕后必须删除相应的权限。这就要求算力节点管理者具备算力节点的超级管理权限,然而,从安全的角度考虑,用户是不可接受的。如何让用户自动并且安全地获得算力节点访问权限成为需要解决的问题。


技术实现要素:



4.为此,本发明提供一种访问授权方法、装置、电子设备及可读存储介质,以解决现有技术中由于要求算力节点管理者具备算力节点的超级管理权限,既不安全,用户对这点也不可接受而导致的用户无法自动并且安全地获得算力节点的访问权限的问题。
5.第一方面,本技术实施例提供了一种访问授权方法,应用于算力节点,包括:
6.接收用户节点在区块链发起的算力请求,并将所述算力节点的标识返回至用户节点;其中,所述算力请求包括所述用户节点的用户标识;
7.在所述用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;
8.基于所述用户标识将所述用户节点注册为临时管理者,以及利用所述用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;
9.利用所述算力节点的私钥对所述第一加密信息进行签名,获得第一签名信息;
10.将所述第一签名信息在所述区块链广播,以供所述用户节点基于所述访问秘钥和访问期限访问所述算力节点。
11.其中,所述预设条件至少包括以下一项:
12.所述用户节点通过区块链交易的形式支付所述算力请求对应的交易的令牌;
13.所述算力节点的拥有者对所述算力请求对应的交易进行了确认;
14.以及,所述算力请求对应的交易写入所述区块链的新区块和区块链账本中。
15.其中,所述将所述第一签名信息在所述区块链广播,以供所述用户节点基于所述访问秘钥和访问期限访问所述算力节点之后,还包括:
16.在所述访问期限到期、且所述用户节点未续期的情况下,撤销所述用户节点的临时管理者身份。
17.其中,所述在所述访问期限到期、且基于区块链账本确认所述用户节点未续期的情况下,撤销所述用户节点的临时管理者身份之后,还包括:
18.在所述用户节点获得临时管理者期间所产生的用户数据加密并存储在预设的存储空间。
19.其中,所述在所述用户节点获得临时管理者的过程中,产生的数据加密并存储在预设的存储空间之后,还包括:
20.在所述用户节点再次获得所述临时管理者的情况下,将所述用户数据从所述存储空间取回。
21.其中,所述在所述用户节点获得临时管理者的过程中,产生的数据加密并存储在预设的存储空间之后,还包括:
22.在所述存储空间不足的情况下,按照先进先出的原则删除所述用户数据。
23.第二方面,本技术实施例提供了一种访问授权方法,应用于用户节点,包括:
24.在区块链广播算力请求;其中,所述算力请求包括所述用户节点的用户标识;
25.接收算力节点在所述区块链广播的第一签名信息;其中,所述第一签名信息是所述算力节点基于所述算力请求,在所述用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;并基于所述用户标识将所述用户节点注册为临时管理者,以及利用所述用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;再利用所述算力节点的私钥对所述第一加密信息进行签名获得的信息;
26.基于所述访问秘钥和访问期限访问所述算力节点。
27.第三方面,本技术实施例提供了一种访问授权装置,应用于算力节点,包括:
28.第一接收模块,用于接收用户节点在区块链发起的算力请求;其中,所述算力请求包括所述用户节点的用户标识;
29.第一发送模块,用于将所述算力节点的标识返回至用户节点;
30.获取模块,用于在所述用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;
31.注册模块,用于基于所述用户标识将所述用户节点注册为临时管理者;
32.加密模块,用于利用所述用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;
33.签名模块,用于利用所述算力节点的私钥对所述第一加密信息进行签名,获得第一签名信息;
34.所述第一发送模块,还用于将所述第一签名信息在所述区块链广播,以供所述用户节点基于所述访问秘钥和访问期限访问所述算力节点。
35.第四方面,本技术实施例提供了一种访问授权装置,应用于用户节点,包括:
36.第二发送模块,用于在区块链广播算力请求;其中,所述算力请求包括所述用户节点的用户标识;
37.第二接收模块,用于接收算力节点在所述区块链广播的第一签名信息;其中,所述第一签名信息是所述算力节点基于所述算力请求,在所述用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;并基于所述用户标识将所述用户节点注册为临时管理者,以及利用所述用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得
第一加密信息;再利用所述算力节点的私钥对所述第一加密信息进行签名获得的信息;
38.访问模块,用于基于所述访问秘钥和访问期限访问所述算力节点。
39.第五方面,本技术实施例提供了一种电子设备,包括:
40.至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6和权利要求7中任一项所述的方法。
41.第六方面,本技术实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据本技术实施例提供的任一项所述的方法。
42.本实施例提供的访问授权方法能够让用户节点在对算力资源有需求时,主动在区块链中发送算力请求,和算力节点建立通信,自动且安全地得到算力节点的授权,获得算力节点的访问秘钥和访问权限,访问算力节点。整个授权过程不需要依赖算力节点管理者,不要求用户节点必须信任算力节点管理者,保障了安全性,提高了效率。并且,在获取用户节点的用户标识和用户公钥之前,判断用户节点是否满足预设条件,避免了算力节点被黑客访问攻击等,让系统的安全性得到了保障。
附图说明
43.附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。
44.图1为本发明实施例提供的一种访问授权方法的流程图;
45.图2为本发明实施例提供的判断用户节点是否满足预设条件的流程图;
46.图3为本发明实施例提供的另一种访问授权方法的流程图;
47.图4为本发明实施例提供的一种访问授权方法的流程图;
48.图5为本发明实施例提供的一种访问授权装置的结构示意图;
49.图6为本发明实施例提供的另一种访问授权装置的流程图;
50.图7为本发明实施例提供的一种访问授权装置的结构示意图;
51.图8为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
52.以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
53.如本发明所使用的,术语“和/或”包括一个或多个相关列举条目的任何和全部组合。
54.本发明所使用的术语仅用于描述特定实施例,且不意欲限制本发明。如本发明所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。
55.当本发明中使用术语“包括”和/或“由
……
制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其组。
56.除非另外限定,否则本发明所用的全部术语(包括技术和科学术语)的含义与本领
域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本发明的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本发明明确如此限定。
57.图1为本技术实施例提供的一种访问授权方法的流程图,应用于算力节点。如图1所示,该方法包括以下步骤:
58.步骤s101,接收用户节点在区块链发起的算力请求,并将算力节点的标识返回至用户节点。
59.其中,算力请求包括用户节点的用户标识。
60.用户节点是区块链中需要获取算力资源的节点,算力节点是能够为用户节点提供所需的算力资源的节点。
61.在一些实施例中,区块链中可以有一个或多个用户节点,用户标识是用来区分用户节点的标识,用户标识与用户节点存在对应关系,通过用户标识可以唯一确定用户节点。
62.在一些实施例中,区块链中可以有一个或多个算力节点,算力节点的标识是用来区分算力节点的标识,算力节点的标识与算力节点存在对应关系,通过算力节点的标识可以唯一确定算力节点。
63.当用户节点存在算力需求时,用户节点在区块链中发出算力请求,以从区块链中获得算力节点提供的算力资源。
64.在一些实施例中,用户节点发出的算力请求中携带该用户节点的用户标识,以供算力节点根据该用户标识确定用户节点,以便后续为该用户节点提供算力资源。
65.步骤s102,在用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥。
66.其中,预设条件可以根据使用需求设定,而且,预设条件可以是通用的条件,也可以是个性化的条件。
67.用户公钥和用户私钥是用户节点的密钥对,用户公钥可以向算力节点公布,但用户私钥由用户节点保留,算力节点可以利用用户公钥对所要传输的数据进行加密,用户节点可以利用用户私钥对用户公钥加密的数据解密。
68.在一些实施例中,算力节点接收到用户节点的算力请求后,判断用户节点是否满足预设条件,并在用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥。
69.步骤s103,基于用户标识将用户节点注册为临时管理者,以及利用用户公钥对算力节点的访问秘钥和访问期限进行加密,获得第一加密信息。
70.其中,临时管理者是指对算力节点的算力资源进行控制的角。用户节点获得临时管理者的身份后,可以对算力节点进行访问和控制,使用该算力节点的算力资源。
71.本技术实施例对用户节点注册为临时管理者的注册方式不作限定,算力节点可以采用预先设定的任意方式对用户节点进行注册,以使用户节点获得临时管理者的身份。
72.在一些实施例中,为了确保传输访问秘钥和访问期限的安全性,算力节点在传输访问秘钥和访问期限之前,利用用户公钥对访问秘钥和访问期限进行加密,获得第一加密信息。
73.步骤s104,利用算力节点的私钥对第一加密信息进行签名,获得第一签名信息。
74.其中,算力节点的私钥和算力节点的公钥是算力节点的密钥对,与用户节点的用
户公钥和用户私钥类似,算力节点的公钥可以向用户节点公布,但算力节点的私钥由算力节点保留。
75.在一些实施例中,为了防止第一加密信息在传输过程中被篡改,算力节点在传输第一加密信息之前,利用算力节点的私钥对第一加密信息进行签名。
76.步骤s105,将第一签名信息在区块链广播,以供用户节点基于访问秘钥和访问期限访问算力节点。
77.示例地,算力节点a和用户节点b均连接在区块链中,用户节点b在区块链中广播算力请求,并在算力请求中携带用户节点的用户标识。当算力节点a收到用户节点b发出的算力请求后,判断该用户节点是否满足预设条件,并在用户节点b满足预设条件的情况下,获取用户节点b的用户标识和用户公钥。
78.本实施例提供的访问授权方法能够让用户节点在对算力资源有需求时,主动在区块链中发送算力请求,和算力节点建立通信,自动且安全地得到算力节点的授权,获得算力节点的访问秘钥和访问权限,访问算力节点。整个授权过程不需要依赖算力节点管理者,不要求用户节点必须信任算力节点管理者,保障了安全性,提高了效率。并且,在获取用户节点的用户标识和用户公钥之前,判断用户节点是否满足预设条件,避免了算力节点被黑客访问攻击等,让系统的安全性得到了保障。
79.在一些实施例中,预设条件至少包括以下一项:
80.所述用户节点通过区块链交易的形式支付所述算力请求对应的交易的令牌,所述算力节点的拥有者对所述算力请求对应的交易进行了确认,以及,所述算力请求对应的交易写入所述区块链的新区块和区块链账本中。
81.其中,算力节点的拥有者是指安装在算力节点上的支持区块链的操作系统或者区块链插件,该拥有者实时检测区块链上的交易情况,对算力资源有需求的用户节点在收到算力节点的标识后,需要与算力节点的拥有者进行交易。
82.区块链账本是区块链中所有节点共同维护的一个账本,区块链上发生的所有交易都会记录在该账本。
83.在一些实施例中,用户节点只有与算力节点的拥有者进行(算力)交易后才能获得该算力节点提供的算力资源。例如,用户节点需要支付该交易的令牌。
84.在一些实施例中,用户节点可以通过区块链交易的形式支付由其发起的算力请求对应的交易的令牌。其中,区块链交易的形式可以相关领域的有多种形式,本技术实施例对此不作限定。
85.在一些实施例中,只有将算力请求对应的交易写入所述区块链的新区块以及区块链账本中,用户节点才能获得该算力节点提供的算力资源。
86.示例地,图2为判断用户节点是否满足预设条件的流程图。如图2所示,算力节点判断用户节点是否满足预设条件包括:
87.步骤s201,判断用户节点是否通过区块链交易的形式支付了算力请求对应的交易的令牌。
88.在一些实施例中,在算力节点判断用户节点已经通过区块链交易的形式支付了算力请求对应的交易的令牌的情况下,执行步骤s202,在算力节点判断用户节点未通过区块链交易的形式支付了算力请求对应的交易的令牌的情况下,流程结束;
89.步骤s202,判断算力节点的拥有者是否对算力请求对应的交易进行确认。
90.在本技术实施例中,算力节点的拥有者需要对算力请求对应的交易进行确认,确认的方式可以有多种形式,例如,算力节点的拥有者可以通过区块链进行确认,或者,通过其它形式进行确认。
91.在一些实施例中,在算力节点对算力请求对应的交易确认的情况下,执行步骤s203;在算力节点未对算力请求对应的交易确认的情况下,流程结束。
92.步骤s203,判断算力请求对应的交易是否写入了区块链的新区块和区块链账本中。
93.在一些实施例中,在算力节点的拥有者对交易进行确认后,会基于该交易生成新区块,并将该交易写入区块链账本中。
94.在算力节点判断算力请求对应的交易写入了区块链的新区块和区块链账本中的情况下,获取用户节点的用户标识和用户公钥,在算力节点判断算力请求对应的交易未写入了区块链的新区块和区块链账本中的情况下,流程结束。
95.需要说明的是,上述步骤s201至步骤s203的顺序并不局限于此,在实际应用中,步骤s201至步骤s203可以任意排序。
96.在一些实施例中,算力节点实时检测区块链中令牌的交易情况,当检测到涉及本算力节点的交易时,开始判断该交易是否满足预设条件。
97.在一些实施例中,算力节点是通过区块链客户端来检测区块链中令牌的交易情况,即每个算力节点具有对应的区块链客户端,由算力节点的区块链客户端来检测令牌的交易情况。
98.在一些实施例中,如图3所示,步骤s105,将所述第一签名信息在所述区块链广播,以供所述用户节点基于所述访问秘钥和访问期限访问所述算力节点之后,还可以包括:
99.步骤s106,在访问期限到期、且用户节点未续期的情况下,撤销用户节点的临时管理者身份。
100.其中,用户节点是否续期是基于区块链账本确认的。
101.访问期限是用户节点可以使用算力节点的算力资源的时长,在访问期限内,用户节点可以使用算力节点的算力资源。在访问期限到期后,用户节点无法使用算力节点的算力资源。当访问期限到期后,用户节点若继续使用算力节点的算力资源,需要续期。续期的流程与初次申请算力资源的流程可以相同,也可以根据已有的资料,简化续期流程。在用户节点对算力节点的算力资源续期后,该续期记录对应交易的在区块链账本中。
102.在一些实施例中,当用户节点的访问期限到期后,算力节点查询区块链账本,判断该用户节点是否已经续期。
103.在一些实施例中,算力节点把用户节点注册为临时管理者后,用户节点能够在访问期限内使用算力节点的算力资源,当访问期限到期、且用户节点未续期时,用户节点对算力节点使用完毕,算力节点收回用户节点的使用权限,即撤销用户节点的临时管理者身份。
104.本实施例提供的访问授权方法能够在用户节点对算力节点使用完毕后,自动删除用户节点的使用权限,使得算力节点的访问权限得到安全控制,并在用户节点续期的情况下,继续保持用户节点的使用权限,以保持使用的连续性,提高用户的使用体验。
105.在一些实施例中,步骤s106,在所述访问期限到期、且基于区块链账本确认所述用
户节点未续期的情况下,撤销所述用户节点的临时管理者身份之后,还包括:
106.步骤s107,在用户节点获得临时管理者期间所产生的用户数据加密并存储在预设的存储空间。
107.其中,用户数据是用户节点在访问期限内访问算力节点并使用算力资源的过程中产生的数据。
108.预设的存储空间是区块链预先设定的用于存放用户数据的空间,如:预设的存储空间为算力节点自身的存储空间,或者,预设的存储空间为区块链中算力节点和用户节点之外的专用的存储空间。
109.在一些实施例中,预先设置专门的存储空间用于存储用户数据,以便需要时取出使用。为了防止用户数据被篡改,保障安全性,在将用户数据存储在预设的存储空间之前,对用户数据加密。其中,加密方式可以采用相关技术领域的加密方式,本技术实施例对加密方式不作限定。
110.在一些实施例中,算力节点也可以选择遗弃用户数据,即不存储用户数据。
111.本实施例提供的访问授权方法将用户数据加密后存储在预设的存储空间,后期在使用用户数据时,可以直接从存储空间调用。
112.在一些实施例中,步骤s107,在所述用户节点获得临时管理者的过程中,产生的数据加密并存储在预设的存储空间之后,还包括:
113.步骤s108,在用户节点再次获得临时管理者的情况下,将用户数据从存储空间取回。
114.在一些实施例中,用户节点被撤销临时管理者身份后,可以根据需求,再次获得同一算力节点的临时管理者身份,以获得算力资源。当用户节点再次获得临时管理者身份后,可以从存储空间取回之前产生的用户数据。
115.在一些实施例中,用户节点可以根据需要从存储空间取回之前产生的用户数据。另外,用户节点可以在付费后从存储空间取回之前产生的用户数据,也可以以免费方式从存储空间取回之前产生的用户数据。
116.本实施例提供的访问授权方法,当用户节点再次获得临时管理者身份后,可以根据需要从存储空间取回之前产生的用户数据,获得之前算力资源的使用情况以及相关数据,从而提高用户体验。
117.在一些实施例中,步骤s107,在所述用户节点获得临时管理者的过程中,产生的数据加密并存储在预设的存储空间之后,还包括:
118.步骤s109,在存储空间不足的情况下,按照先进先出的原则删除用户数据。
119.在一些实施例中,区块链中有多个用户节点,不同用户节点均有可能需要访问算力节点以获得算力资源,并在使用过程中产生相应的用户数据。然而,预设的存储空间有限,当预设的存储空间不足时,可以按照先进先出的原则删除用户数据。本技术实施例对删除用户数据所依据的原则不作限定。例如,预先设定的原则可以是最近未使用原则、最久未使用原则等,以释放存储空间。
120.本技术实施例提供的访问授权方法在判断空间不足的时候按照先进先出原则删除用户数据,合理地应用了预设的存储空间,节省了算力节点删除数据时的开销,提升了处理用户数据的公平性。
121.需要说明的是,算力节点的访问授权一般来说由算力节点的管理者负责,由管理者为用户节点增加访问权限和删除访问权限,为此管理者必须永远具备算力节点的超级管理权限,导致用户节点无法自动且安全地获得算力节点的访问权限。本技术实施例提供的访问授权方法仅在注册阶段使用算力节点的管理者,注册完成之后,管理者的管理权限被撤销。
122.具体地,算力节点的管理者安装区块链操作系统或者算力网络区块链客户端,并在区块链中具有唯一的身份,并且注册到算力节点拥有者名下,即算力节点在算力网络区块链中注册成功;只要算力节点在算力网络区块链中注册成功,就自动删除算力节点的管理者对该算力节点的访问权限,算力节点的访问权限处于待激活状态,只有接收功能和发送功能可以正常使用。
123.在一些实施例中,算力节点上的区块链客户端可以对区块链中的交易信息进行实时检测。当区块链客户端检测到涉及该算力节点的交易时,算力节点的访问权限才被激活,交易对应的用户节点获得该算力节点的访问权限。
124.本技术实施例还提供一种访问授权方法,该方法应用于用户节点。
125.图4为本技术实施例提供的一种访问授权方法的流程图。如图4所示,该方法包括以下步骤:
126.步骤s401,在区块链广播算力请求。
127.其中,算力请求包括用户节点的用户标识。
128.用户节点是区块链中需要获取算力资源的节点,算力节点是能够为用户节点提供所需的算力资源的节点,当用户节点存在算力需求时,用户节点在区块链中广播算力请求,以从区块链中获得算力节点提供的算力资源。
129.在一些实施例中,区块链中可以有一个或多个用户节点,用户标识是用来区分用户节点的标识,用户标识与用户节点存在对应关系,通过用户标识可以唯一确定用户节点。
130.在一些实施例中,用户节点发出的算力请求中携带该用户节点的用户标识,以供算力节点根据该用户标识确定用户节点,以便后续为该用户节点提供算力资源。
131.步骤s402,接收算力节点在区块链广播的第一签名信息。
132.其中,第一签名信息是算力节点基于算力请求,在用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;并基于用户标识将用户节点注册为临时管理者,以及利用用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;再利用算力节点的私钥对第一加密信息进行签名获得的信息。
133.在一些实施例中,算力节点获得第一签名信息后,在区块链广播该第一签名信息,由于用户公钥和用户私钥是用户节点的密钥对,用户公钥可以向算力节点公布,但用户私钥由用户节点保留,算力节点可以利用用户公钥对所要传输的数据进行加密,用户节点可以利用用户私钥对用户公钥加密的数据解密,因此用户节点接收并利用用户私钥解密算力节点在区块链广播的第一签名信息,获得算力节点的访问秘钥和访问期限。
134.步骤s403,基于访问秘钥和访问期限访问算力节点。
135.在一些实施例中,用户节点获得算力节点的访问秘钥和访问期限后,基于访问秘钥和访问期限任意访问算力节点,使用算力节点提供的算力资源满足自身的算力需求。
136.需要说明的是,用户节点在区块链广播算力请求后,可以接收到算力节点的响应。
该响应包括算力节点的标识,用户节点基于该标识可以确定即将为自己提供算力资源的算力节点,用户节点需要与该算力节点的拥有者进行区块链交易,以支付算力请求对应的交易令牌,以进一步获得算力节点的授权。
137.算力节点在判断用户节点满足预设条件的情况下,确定用户节点的访问期限,并在访问期限到期、且基于区块链账本确认用户节点未续期的情况下,撤销该用户节点的临时管理者身份。在一些实施例中,用户节点被撤销临时管理者身份后,根据对算力资源的需求,可以再次获得同一算力节点的临时管理者身份。
138.用户节点再次获得同一算力节点的临时管理者身份后,可以根据需要从算力节点预设的存储空间,以付费或者免费的方式取回之前访问算力节点过程中产生的数据。
139.本技术实施例提供的访问授权方法能够让用户节点在对算力资源有需求时,主动在区块链中发送算力请求,和算力节点建立通信,通过接收并利用用户私钥解密算力节点在区块链广播的第一签名信息,自动且安全地获得算力节点的访问秘钥和访问权限,以访问算力节点。本技术实施例提供的方法,用户节点可以自动、高效地访问算力节点并获得算力资源,保障算力节点的安全性,提高用户体验度。
140.图5为本技术实施例提供的一种访问授权装置的结构示意图。该访问授权装置应用于算力节点,如图5所示,该访问授权装置500包括:
141.第一接收模块501,用于接收用户节点在区块链发起的算力请求。
142.其中,算力请求包括用户节点的用户标识。用户标识用于唯一确定用户节点,算力节点根据该用户标识确定发出算力请求的用户节点,以便后续为该用户节点提供算力资源。
143.在一些实施例中,算力节点在算力网络区块链中注册成功后,只有接收功能和发送功能可以正常使用,第一接收模块501持续接收区块链上有算力需求的用户节点发起的算力请求。
144.第一发送模块502,用于将算力节点的标识返回至用户节点。
145.其中,算力节点的标识用于唯一确定算力节点。
146.在一些实施例中,算力节点在算力网络区块链中注册成功后,只有接收功能和发送功能可以正常使用,第一接收模块501接收算力请求后,第一发送模块502发送响应至该算力请求对应的用户节点,该响应包括算力节点的标识,以供用户确定即将为自己提供算力资源的算力节点。
147.获取模块503,用于在用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥。
148.其中,预设条件可以根据使用需求设定;用户公钥和用户私钥是用户节点的密钥对,算力节点可以利用用户公钥对所要传输的数据加密,用户节点可以利用用户私钥对用户公钥加密的数据解密。
149.在一些实施例中,获取模块503在算力节点接收到用户节点的算力请求后,判断用户节点是否满足预设条件,并在用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥。
150.在一些实施例中,获取模块503包括判断单元和提取单元,判断单元在算力节点接收到用户节点的算力请求后,判断用户节点是否满足预设条件,并且,提取单元在判断用户
节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥。
151.注册模块504,用于基于用户标识将用户节点注册为临时管理者。
152.其中,临时管理者是指对算力节点的算力资源进行控制的角。用户节点获得临时管理者的身份后,可以对算力节点进行访问和控制,使用该算力节点的算力资源。
153.在一些实施例中,获取用户节点的用户标识后,注册模块504将该用户标识对应的用户节点注册为临时管理者,该用户节点拥有了在访问期限内对该算力节点的访问权限,算力节点的访问权限被激活。
154.加密模块505,用于利用用户公钥对算力节点的访问秘钥和访问期限进行加密,获得第一加密信息。
155.其中,用户节点使用访问秘钥可以任意访问算力节点;访问期限是算力节点基于用户节点和算力节点拥有者进行的区块链交易确定的时长,在访问期限内,用户节点可以任意使用算力节点的算力资源。
156.在一些实施例中,为了确保所传输访问秘钥和访问期限的安全性,在传输访问秘钥和访问期限之前,加密模块505利用用户公钥对访问秘钥和访问期限进行加密,获得第一加密信息。
157.签名模块506,用于利用算力节点的私钥对第一加密信息进行签名,获得第一签名信息。
158.其中,算力节点的私钥和算力节点的公钥是算力节点的密钥对,算力节点的公钥可以向用户节点公布,但算力节点的私钥由算力节点保留。
159.在一些实施例中,为了防止第一加密信息在传输过程中被篡改,在传输第一加密信息之前,签名模块506利用算力节点的私钥对第一加密信息进行签名。
160.第一发送模块502,还用于将第一签名信息在区块链广播,以供用户节点基于访问秘钥和访问期限访问算力节点。
161.本实施例提供的访问授权装置可用于实施图1所示实施例提供的访问授权方法。
162.本实施例提供的访问授权装置能够让用户节点在对算力资源有需求时,主动在区块链中发送算力请求,和算力节点建立通信,自动且安全地得到算力节点的授权,获得算力节点的访问秘钥和访问权限,访问算力节点。整个授权过程不需要依赖算力节点管理者,不要求用户节点必须信任算力节点管理者,保障了算力节点的安全性,提高了授权的效率。并且,在获取用户节点的用户标识和用户公钥之前,判断用户节点是否满足预设条件,避免了算力节点被黑客访问攻击等,让系统的安全性得到了保障。
163.图6为本技术实施例提供的另一种访问授权装置的结构示意图,如图6所示,在上述图5所示实施例的基础上,该访问授权装置500还包括:
164.撤销模块507,用于在访问期限到期、且基于区块链账本确认用户节点未续期的情况下,撤销用户节点的临时管理者身份。
165.其中,区块链账本是区块链中所有节点共同维护的一个账本,区块链上发生的所有交易都会记录在该账本。
166.在一些实施例中,注册模块504把用户节点注册为临时管理者后,用户节点能够在访问期限内使用算力节点的算力资源,当访问期限到期、且用户节点未续期时,用户节点对算力节点使用完毕,算力节点收回用户节点的使用权限,即撤销模块507撤销用户节点的临
时管理者身份。
167.存储模块508,用于在用户节点获得临时管理者的过程中,产生的用户数据加密并存储在预设的存储空间。
168.其中,用户数据是用户节点在访问期限内访问算力节点并使用算力资源的过程中产生的数据,预设的存储空间是区块链预先设定的用于存放用户数据的空间。
169.在一些实施例中,预先设置存储模块508用于存储用户数据,以便需要时取出使用。
170.在一些实施例中,预先设置存储模块508,存储模块508包括加密单元和存储单元。加密单元对用户数据加密,以防止用户数据被篡改;存储单元存储加密的用户数据,以便需要时取出使用。其中,加密单元使用的加密方式可以采用相关技术领域的加密方式设置,本技术实施例对加密方式不作限定。
171.用户数据处理模块509,用于在用户节点再次获得临时管理者的情况下,将用户数据从存储空间取回。
172.在一些实施例中,撤销模块507撤销用户节点的临时管理者身份后,用户节点可以根据需求,再次获得同一算力节点的临时管理者身份,以获得算力资源。当用户节点再次获得临时管理者身份后,用户数据处理模块509可以从存储模块508取回该用户节点之前产生的用户数据,以满足使用需求。
173.在一些实施例中,用户数据处理模块509包括收费单元和读取单元。用户节点向收费单元付费,读取单元从存储模块508取回该用户节点之前产生的用户数据,以满足使用需求。
174.存储空间管理模块510,用于在存储空间不足的情况下,按照先进先出的原则删除用户数据。
175.在一些实施例中,区块链中有多个用户节点,不同用户节点均有可能需要访问算力节点以获得算力资源,并在使用过程中产生相应的用户数据。然而,存储模块508的存储空间有限,当该存储空间不足时,存储空间管理模块510可以按照先进先出的原则删除存储模块508的存储空间中的用户数据。
176.本实施例提供的访问授权装置可用于实施图3所示实施例提供的访问授权方法。本发明实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现和技术效果可参照上文方法实施例的描述,为了简洁,这里不再赘述。
177.本实施例提供的访问授权装置能够让用户节点在对算力资源有需求时,主动在区块链中发送算力请求,和算力节点建立通信,自动且安全地得到算力节点的授权,获得算力节点的访问秘钥和访问权限,访问算力节点。整个授权过程不需要依赖算力节点管理者,不要求用户节点必须信任算力节点管理者,保障了安全性,提高了效率。并且,在获取用户节点的用户标识和用户公钥之前,判断用户节点是否满足预设条件,避免了算力节点被黑客访问攻击等,让系统的安全性得到了保障。另外,该访问授权装置在用户节点对算力节点使用完毕后,自动删除用户节点的使用权限,并在用户节点续期的情况下,继续保持用户节点的使用权限,将用户数据加密后存储在预设的存储空间,当用户节点再次获得临时管理者身份后,可以根据需要从存储空间取回之前产生的用户数据,在判断空间不足的时候按照先进先出原则删除用户数据。因此,该访问授权装置能够使算力节点的访问权限得到安全
控制,妥善处理用户数据,提高用户节点的使用体验,合理地应用数据存储空间。
178.本技术实施例还提供一种访问授权装置,该装置应用于用户节点。
179.图7为本技术实施例提供的一种访问授权装置的结构示意图。如图7所示,该访问授权装置700包括以下模块:
180.第二发送模块701,用于在区块链广播算力请求。
181.其中,算力请求包括用户节点的用户标识。
182.当用户节点存在算力需求时,第二广播模块701在区块链中广播算力请求,以从区块链中获得算力节点提供的算力资源。
183.第二接收模块702,用于接收算力节点在区块链广播的第一签名信息。
184.其中,第一签名信息是算力节点基于算力请求,在用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;并基于用户标识将用户节点注册为临时管理者,以及利用用户公钥对算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;再利用算力节点的私钥对第一加密信息进行签名获得的信息。
185.在一些实施例中,第一广播模块在区块链广播算力节点获得的第一签名信息后,第二接收模块702接收并利用用户私钥解密该第一签名信息,以获得算力节点的访问秘钥和访问期限。
186.访问模块703,用于基于访问秘钥和访问期限访问算力节点。
187.在一些实施例中,第二接收模块702获得算力节点的访问秘钥和访问期限后,访问模块703基于访问秘钥和访问期限任意访问算力节点,使用算力节点提供的算力资源满足用户节点的算力需求。
188.本实施例提供的访问授权装置可用于实施图4所示实施例提供的访问授权方法。本发明实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现和技术效果可参照上文方法实施例的描述,为了简洁,这里不再赘述。
189.本实施例提供的访问授权装置能够让用户节点在对算力资源有需求时,主动在区块链中发送算力请求,和算力节点建立通信,通过接收并利用用户私钥解密算力节点在区块链广播的第一签名信息,自动且安全地获得算力节点的访问秘钥和访问权限,以访问算力节点。本技术实施例提供的方法,用户节点可以自动、高效地访问算力节点并获得算力资源,保障算力节点的安全性,提高用户体验度。
190.上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
191.参照图8,本发明实施例提供一种电子设备,其包括:
192.一个或多个处理器801;
193.存储器802,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述任意一项的一种访问授权方法;
194.一个或多个i/o接口803,连接在处理器与存储器之间,配置为实现处理器与存储器的信息交互。
195.其中,处理器801为具有数据处理能力的器件,其包括但不限于中央处理器(cpu)
等;存储器802为具有数据存储能力的器件,其包括但不限于随机存取存储器(ram,更具体如sdram、ddr等)、只读存储器(rom)、带电可擦可编程只读存储器(eeprom)、闪存(flash);i/o接口(读写接口)803连接在处理器801与存储器802间,能实现处理器801与存储器802的信息交互,其包括但不限于数据总线(bus)等。
196.在一些实施例中,处理器801、存储器802和i/o接口803通过总线相互连接,进而与计算设备的其它组件连接。
197.本实施例还提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本实施例提供的一种访问授权方法,为避免重复描述,在此不再赘述一种访问授权方法的具体步骤。
198.本领域普通技术人员可以理解,上文中所发明方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其它存储器技术、cd-rom、数字多功能盘(dvd)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。
199.本领域普通技术人员可以理解,上文中所发明方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其它存储器技术、cd-rom、数字多功能盘(dvd)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储器、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。
200.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
201.本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本实施例的范围之内并且形成不同的实施例。
202.可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

技术特征:


1.一种访问授权方法,其特征在于,应用于算力节点,包括:接收用户节点在区块链发起的算力请求,并将所述算力节点的标识返回至所述用户节点;其中,所述算力请求包括所述用户节点的用户标识;在所述用户节点满足预设条件的情况下,获取所述用户节点的所述用户标识和用户公钥;基于所述用户标识将所述用户节点注册为临时管理者,以及利用所述用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;利用所述算力节点的私钥对所述第一加密信息进行签名,获得第一签名信息;将所述第一签名信息在所述区块链广播,以供所述用户节点基于所述访问秘钥和访问期限访问所述算力节点。2.根据权利要求1所述的方法,其特征在于,所述预设条件至少包括以下一项:所述用户节点通过区块链交易的形式支付所述算力请求对应的交易的令牌;所述算力节点的拥有者对所述算力请求对应的交易进行了确认;以及,所述算力请求对应的交易写入所述区块链的新区块和区块链账本中。3.根据权利要求2所述的方法,其特征在于,所述将所述第一签名信息在所述区块链广播,以供所述用户节点基于所述访问秘钥和访问期限访问所述算力节点之后,还包括:在所述访问期限到期、且所述用户节点未续期的情况下,撤销所述用户节点的临时管理者身份。4.根据权利要求3所述的方法,其特征在于,所述在所述访问期限到期、且基于区块链账本确认所述用户节点未续期的情况下,撤销所述用户节点的临时管理者身份之后,还包括:在所述用户节点获得临时管理者期间所产生的用户数据加密并存储在预设的存储空间。5.根据权利要求4所述的方法,其特征在于,所述在所述用户节点获得临时管理者的过程中,产生的数据加密并存储在预设的存储空间之后,还包括:在所述用户节点再次获得所述临时管理者的情况下,将所述用户数据从所述存储空间取回。6.根据权利要求4所述的方法,其特征在于,所述在所述用户节点获得临时管理者的过程中,产生的数据加密并存储在预设的存储空间之后,还包括:在所述存储空间不足的情况下,按照先进先出的原则删除所述用户数据。7.一种访问授权方法,其特征在于,应用于用户节点,包括:在区块链广播算力请求;其中,所述算力请求包括所述用户节点的用户标识;接收算力节点在所述区块链广播的第一签名信息;其中,所述第一签名信息是所述算力节点基于所述算力请求,在所述用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;并基于所述用户标识将所述用户节点注册为临时管理者,以及利用所述用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;再利用所述算力节点的私钥对所述第一加密信息进行签名获得的信息;基于所述访问秘钥和访问期限访问所述算力节点。8.一种访问授权装置,其特征在于,应用于算力节点,包括:
第一接收模块,用于接收用户节点在区块链发起的算力请求;其中,所述算力请求包括所述用户节点的用户标识;第一发送模块,用于将所述算力节点的标识返回至用户节点;获取模块,用于在所述用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;注册模块,用于基于所述用户标识将所述用户节点注册为临时管理者;加密模块,用于利用所述用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;签名模块,用于利用所述算力节点的私钥对所述第一加密信息进行签名,获得第一签名信息;所述第一发送模块,还用于将所述第一签名信息在所述区块链广播,以供所述用户节点基于所述访问秘钥和访问期限访问所述算力节点。9.一种访问授权装置,其特征在于,应用于用户节点,包括:第二发送模块,用于在区块链广播算力请求;其中,所述算力请求包括所述用户节点的用户标识;第二接收模块,用于接收算力节点在所述区块链广播的第一签名信息;其中,所述第一签名信息是所述算力节点基于所述算力请求,在所述用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;并基于所述用户标识将所述用户节点注册为临时管理者,以及利用所述用户公钥对所述算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;再利用所述算力节点的私钥对所述第一加密信息进行签名获得的信息;访问模块,用于基于所述访问秘钥和访问期限访问所述算力节点。10.一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6和权利要求7中任一项所述的方法。11.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-6和权利要求7中任一项所述的方法。

技术总结


本发明公开了一种访问授权方法、装置、电子设备及可读存储介质,属于区块链技术领域。该方法包括:接收用户节点在区块链发起的算力请求,并将算力节点的标识返回至用户节点;在用户节点满足预设条件的情况下,获取用户节点的用户标识和用户公钥;基于用户标识将用户节点注册为临时管理者,以及利用用户公钥对算力节点的访问秘钥和访问期限进行加密,获得第一加密信息;利用算力节点的私钥对第一加密信息进行签名,获得第一签名信息;将第一签名信息在区块链广播,以供用户节点基于访问秘钥和访问期限访问算力节点。该访问授权方法提高了授权的效率,降低了算力节点被黑客访问攻击的概率。率。率。


技术研发人员:

田新雪 李朝霞 肖征荣 马书惠 杨子文

受保护的技术使用者:

中国联合网络通信集团有限公司

技术研发日:

2022.08.26

技术公布日:

2022/11/25

本文发布于:2024-09-24 18:20:09,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/11562.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:节点   用户   所述   区块
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议