区块链节点的服务获取方法、装置、电子设备及存储介质与流程

文档序号:32878101发布日期:2023-01-12 19:38阅读:33来源:国知局
区块链节点的服务获取方法、装置、电子设备及存储介质与流程

1.本发明涉及区块链技术领域,尤其涉及一种区块链节点的服务获 取方法、装置、电子设备及存储介质。


背景技术:

2.随着区块链科技的进步,各种形态不同的链展现在大家面前。由 于区块链的分散化,只需下载节点软件并执行,任何人都可以参与其 中。
3.现有的区块链网络主要有eos(即:商用分布式设计区块链操作 系统)、以太坊、bos(即:区块链操作系统)等。这些网络都是开放的 网网络,任何人都可以加入到网络中,读取网络的数据,竞争区块的 生产权利。
4.由于目前采用eos、以太坊等方案的区块链都属于开放的网络, 任何人都可以接入到网络中,参与区块的生产,查询链上的信息,这 就导致区块链节点极易受到攻击,进而导致某个区块链节点甚至整个 区块链网络瘫痪。
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.服务结果发送模块,用于将所述服务结果发送至所述终端。
41.第五方面,本发明提供一种终端,包括存储器,收发机,处理器;
42.存储器,用于存储计算机程序;收发机,用于在所述处理器的控 制下收发数据;处理器,用于读取所述存储器中的计算机程序并执行 以下操作:
43.发送携带有身份凭证的业务请求至服务网关;
44.在所述服务网关验证通过所述身份凭证的情况下,接收所述服务 网关发送的与所述业务请求相对应的服务结果;
45.其中,所述服务结果,为区块链节点基于所述服务网关发送的所 述业务请求,所得到并发送至所述服务网关的结果。
46.第六方面,本发明提供一种网关,包括存储器,收发机,处理器;
47.存储器,用于存储计算机程序;收发机,用于在所述处理器的控 制下收发数据;处理器,用于读取所述存储器中的计算机程序并执行 以下操作:
48.接收终端发送的携带有所述身份凭证的业务请求;
49.验证所述身份凭证,并在所述身份凭证验证通过的情况下,将所 述业务请求发送至区块链节点;
50.接收所述区块链节点基于所述业务请求所返回的服务结果;
51.将所述服务结果发送至所述终端。
52.第七方面,本发明提供一种电子设备,包括存储器和存储有计算 机程序的存储器,所述处理器执行所述程序时实现第一方面或第二方 面所述区块链节点的服务获取方法的步骤。
53.第八方面,本发明提供一种处理器可读存储介质,所述处理器可 读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执 行第一方面或第二方面所述区块链节点的服务获取方法的步骤。
54.本发明提供的区块链节点的服务获取方法、装置、电子设备及存 储介质,在发送业务请求至区块链节点,请求服务时,需要写到给终 端分配的身份凭证,服务网关可以验证身份凭证,确认终端用户的业 务权限,如果终端用户有权限,才可以允许将业务请求发送至区块链 节点,请求相应的服务,如果终端用户没有权限,则可以拒绝终端用 户的访问,从而保障区块链网络中的数据隐私性,减少区块链网络被 攻击的可能性,保障区块链网络的安全。
附图说明
55.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实 施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见 地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术 人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得 其他的附图。
56.图1是本发明提供的区块链节点的服务获取方法的流程示意图 之一;
57.图2是本发明提供的区块链节点的服务获取方法对应的业务执 行时序图;
58.图3是本发明提供的区块链节点的服务获取方法对应的业务流 程图;
59.图4是本发明提供的区块链节点的服务获取方法的流程示意图 之二;
60.图5是本发明提供的区块链节点的服务获取装置的原理框图之 一;
61.图6是本发明提供的区块链节点的服务获取装置的原理框图之 二;
62.图7是本发明提供的终端的结构示意图;
63.图8是本发明提供的网关的结构示意图;
64.图9是本发明提供的电子设备的结构示意图。
具体实施方式
65.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发 明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然, 所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造
性劳动前提 下所获得的所有其他实施例,都属于本发明保护的范围。
66.下面结合图1-图9描述本发明的区块链节点的服务获取方法、装 置、电子设备及存储介质。
67.本发明提供一种区块链节点的服务获取方法,该区块链节点的服 务获取方法应用于终端,也即是该区块链节点的服务获取方法的执行 主体可以是终端,下面以终端执行区块链节点的服务获取方法为例, 详细说明本发明提供的技术方案。
68.如图1所示,该区块链节点的服务获取方法包括:
69.步骤110、发送携带有身份凭证(即:apikey)的业务请求至服务网 关。
70.身份凭证表征消息发起方dapp(即:分布式应用软件)的身份, 可以事先从服务网关获取。
71.服务网关通过身份凭证验证终端用户身份,身份验证通过后,再 将业务请求发送至区块链节点。只有拥有合法身份凭证的业务请求才 可以发给区块链网络咨询。
72.步骤120、在服务网关验证通过身份凭证的情况下,接收服务网 关发送的与业务请求相对应的服务结果。
73.其中,服务结果,为区块链节点基于服务网关发送的业务请求, 所得到并发送至服务网关的结果。
74.需要说明的是,本发明提供的区块链节点的服务获取方法适用于 私有链或者联盟链。
75.本发明提供的区块链节点的服务获取方法,在发送业务请求至区 块链节点,请求服务时,需要写到给终端分配的身份凭证,服务网关 可以验证身份凭证,确认终端用户的业务权限,如果终端用户有权限, 才可以允许将业务请求发送至区块链节点,请求相应的服务,如果终 端用户没有权限,则可以拒绝终端用户的访问,从而保障区块链网络 中的数据隐私性,减少区块链网络被攻击的可能性,保障区块链网络 的安全。
76.在一些实施例中,区块链节点的服务获取方法还包括:
77.接收服务网关发送的身份凭证,该步骤可以在步骤110之前执行。
78.发送携带有用户身份的授权请求至服务网关。
79.可以通过post请求方式将携带有用户身份的授权请求发送至服 务网关,携带有用户身份的授权请求可以采用md5算法进行加密。
80.可以通过如下接口获取身份凭证:
81.终端发送的表征授权请求的请求参数如下表:
[0082][0083]
服务网关返回的应答参数如下表:
[0084][0085]
接收服务网关发送的身份凭证,包括:
[0086]
接收服务网关发送的基于授权请求而得到的身份凭证。
[0087]
其中,身份凭证包含有授权信息和身份描述信息,授权信息和 身份描述信息以json的格式进行描述。
[0088]
身份凭证是一段base64编码的字符串,包含终端用户的服务授 权信息以及这些信息的哈希值签名。身份凭证由服务网关管理平台产 生,并分发给合作方,做为终端dapp访问区块链系统的身份凭证使 用。
[0089]
身份凭证由header、payload以及signature等三部分组成。header 和payload经过base64编码,然后追加上signature就产生了身份凭证。
[0090]
header:签名采用的算法,常用为hs256,rs256算法。
[0091]
payload:描述过期时间,授权信息。
[0092]
signature:对header和payload的签名,例如hs256签名计算 的方法为:
[0093]
hmacsha256(
[0094]
base64urlencode(header)+

.

+
[0095]
base64urlencode(payload),
[0096]
aaaa-256-bit-sct
[0097]
)
[0098]
其中“aaaa-256-bit-sct”为加密和解密的密钥,密钥保存在服务 网关。
[0099]
需要说明的是,服务网关基于授权请求而得到身份凭证,具体可 以是采用密码学的签名技术,因此在服务网关不需要在数据库存储身 份凭证,进而在验证身份凭证的时候,无需对数据库进行查询,对于 高峰时段大量涌现的授权请求,可以明显的改善终端访问区块链的性 能。在一些实施例中,发送携带有用户身份的授权请求至服务网关, 包括:
[0100]
在终端内的现有身份凭证过期,或者现有身份凭证的数量低于目 标数量的情况下,基于用户指令,发送授权请求至服务网关。
[0101]
在一些实施例中,区块链节点的服务获取方法还包括:
[0102]
接收服务网关发送的基于授权请求而得到的目标过期时间,基于 该目标过期时间,判断对应的身份凭证是否过期,若获取身份凭证的 时间超出了目标过期时间,则确定身份凭证过期。
[0103]
身份凭证的默认有效期(即:目标过期时间)可以是30天,过期后 需要再次申请。同一个终端dapp在同一时间最多会保留目标数量个 身份凭证,例如,在同一时间最多可以保留两个身份凭证,即:最新 申请的两次。当续期成功,获取到最新的身份凭证后,上一个
身份凭 证会在目标期限后失效,例如在一小时后失效。
[0104]
需要说明的是,在上述实施例中,发送授权请求至服务网关,可 以是基于post请求方式将授权请求发送至服务网关。
[0105]
在初次将授权请求发送至服务网关时,可以采用md5算法对授 权请求进行加密后再发送至服务网关。
[0106]
在终端内的现有身份凭证过期,或者现有身份凭证的数量低于目 标数量的情况下,基于用户指令,发送授权请求至服务网关,此时可 以不用对授权请求进行加密。
[0107]
由于这里是重新发送授权请求至服务网关,本次不用加密,服务 网关在收到授权请求后,可以无需执行解密操作,节省了授权请求的 响应时间。
[0108]
本次发送授权请求至服务网关,可以通过如下接口获取身份凭证:
[0109]
终端发送的表征授权请求的请求参数如下表:
[0110][0111]
服务网关返回的应答参数如下表:
[0112][0113]
在一些实施例中,区块链节点的服务获取方法还包括:
[0114]
在接收到服务网关返回的新身份凭证的情况下,在目标期限内注 销现有身份凭证。
[0115]
身份凭证是有时效性的,过期就会作废,把因为泄露apikey所带 来的损失最小化。为了业务不间断的进行下去,在身份凭证失效前, 需要获取一个新的身份凭证。
[0116]
需要说明的是,上述的授权请求、业务请求、身份凭证和服务结 果数据的数据编码均为utf-8格式,无需进行转码。
[0117]
而且,服务网关在得到身份凭证后,无需通过数据库记录该身份 凭证,在后续验证身份凭证时,也不需要从数据库中查询终端dapp 的身份凭证的授权信息,而是直接从身份凭证中获取,极大提高了终 端dapp的身份验证效率,以及终端dapp访问区块链的效率,减少 了系统消耗。
[0118]
在一些实施例中,区块链的访问控制,需要以下步骤:
[0119]
申请发布终端dapp,合作方的通过区块链管理平台向管理员申 请终端dapp,经过审批流程通过后,获取[appid,appsecret]。
[0120]
终端dapp获取身份凭证,具体地可以是,使用接口请求服务网 关以获取身份凭证。
[0121]
如图2和图3所示,终端dapp发送业务请求给服务网关,在访 问区块链的服务的时候,需要在业务请求中附带身份凭证。
[0122]
服务网关收到业务请求后,检查身份凭证中签名和业务功能授权, 如果正确就会执行用户的请求,否则拒绝请求。
[0123]
本发明还提供一种区块链节点的服务获取方法,该区块链节点的 服务获取方法应用于服务网关,也即是该区块链节点的服务获取方法 的执行主体可以是服务网关,下面以服务网关执行区块链节点的服务 获取方法为例,详细说明本发明提供的技术方案。
[0124]
应用于服务网关的区块链节点的服务获取方法,与上述的应用于 终端的区块链节点的服务获取方法互相对应,可以互相参照。
[0125]
如图4所示,该区块链节点的服务获取方法包括:
[0126]
步骤410、接收终端发送的携带有身份凭证的业务请求;
[0127]
步骤420、验证身份凭证,并在身份凭证验证通过的情况下,将 业务请求发送至区块链节点;
[0128]
步骤430、接收区块链节点基于业务请求所返回的服务结果;
[0129]
步骤440、将服务结果发送至终端。
[0130]
在一些实施例中,区块链节点的服务获取方法还包括:
[0131]
接收终端发送的携带有用户身份的授权请求;
[0132]
基于授权请求以及用户身份的对应权限,得到身份凭证;
[0133]
将身份凭证发送至终端;其中,身份凭证包含有授权信息和身 份描述信息。
[0134]
在一些实施例中,验证身份凭证,包括:
[0135]
验证身份凭证中的签名、有效时限以及业务功能权限,基于身份 凭证中的签名、有效时限以及业务功能权限,确定身份凭证是否验证 通过。
[0136]
在上述实施例中,验证身份凭证具体步骤如下:
[0137]
服务网关收到身份凭证,经过base64解码,恢复header、payload 和signature的原始信息。
[0138]
检查身份凭证的签名,如果签名错误,则拒绝请求。
[0139]
检查playload中的expiration(对应有效时限)是否超时,超时则拒 绝请求。
[0140]
检查auth(即:确实性)中的功能权限,请求的业务功能的权限是 否为真,如果不为真则验证失败。由于身份凭证是经过签名验证的, 所以可以相信授权信息是真实可信,没有被篡改过的。
[0141]
身份凭证需要定期更换,一般每一个月更换一次。需要通过https 的方式发送请求,以防网络攻击而泄露。
[0142]
本发明提供的区块链节点的服务获取方法,可以基于区块链服务 平台实现。区块链服务平台基于eos(即:商用分布式设计区块链操 作系统)区块链技术和bos(即:区块链
操作系统)区块链技术,能够 提供在3秒内交易不可逆的性能,为更多广泛的业务需求提供基础支 撑。
[0143]
区块链服务平台利用kubernetes的集群管理优势,融合形成高 可用、高性能和动态扩展的区块链网络底层框架,支持集群自动扩缩、 节点故障恢复、共享存储管理等,帮助应对高数据增长带来的挑战。 业务方只需要集中内部开发资源于上层业务应用,而不需关注底层架 构。
[0144]
将ipfs(interplanetary file system,星际文件系统)与eos区块链 网络结合起来,基于ipfs来构建eos区块链网络,将区块生产层与 区块存储层分离,数据采用哈希方式分散存储在ipfs,很好地弥补 数据在eos区块链上存储增长快、查询效率低的缺陷。
[0145]
区块链服务平台提供区块链基础设施服务,相关协作主体开发智 能合约和dapp满足业务需求。形成“一个基础平台,多条业务链
”ꢀ
的协同运营。
[0146]
平台共分为三层:基础设施层(基于ipfs的区块数据存储)、虚 拟业务网络层(共识网络)和业务层(智能合约)。每个虚拟业务网 络可运行多个智能合约。
[0147]
区块链服务平台作为基础设施平台,提供以下几种业务支撑开发 模式:
[0148]
合作方没有区块链平台,可通过在虚拟业务网络层在合作方建立 区块链节点。
[0149]
合作方有区块链平台,通过自有的节点对接到区块链网络。
[0150]
由于区块链有潜在的攻击威胁,为了保障区块链的安全,需要对 发给区块链的请求进行审查,满足必要的条件后才能进入区块链网络 中。本发明提供的区块链节点的服务获取方法,具有如下特点:
[0151]
能够控制未经授权的合作方的终端dapp访问区块链。合作方必 须经过平台管理方的审核批准,并取得私有的唯一的身份凭证之后, 合作方才可以使用身份凭证,请求访问区块链网络,否则任何请求将 被拒绝。这就能够保障区块链的安全,防止外界的恶意攻击,或者错 误的操作带来的危害。
[0152]
能够控制合作方使用哪些服务。区块链网络本身提供很多的功能 和服务,例如创建账户,获取ram,获取cpu/net带宽,部署智 能合约,修改账户权限,读取合约的表数据等。这样可以把用户分成 不同的级别和分组,给于不同的功能权限。
[0153]
由于采用了密码学的签名技术,服务端不需要存储身份凭证,所 以无需对数据库进行查询,对于高峰时段大量涌现的业务请求,可以 明显的改善性能。本发明还提供一种区块链节点的服务获取装置,下 面对本发明提供的区块链节点的服务获取装置进行描述,下文描述的 区块链节点的服务获取装置,与上文描述的应用于终端的区块链节点 的服务获取方法可相互对应参照。
[0154]
如图5所示,该区块链节点的服务获取装置500包括:业务请求 发送模块520以及服务结果获取模块530。
[0155]
业务请求发送模块520用于发送携带有身份凭证的业务请求至 服务网关。
[0156]
服务结果获取模块530用于在服务网关验证通过身份凭证的情 况下,接收服务网关发送的与业务请求相对应的服务结果。
[0157]
其中,服务结果,为区块链节点基于服务网关发送的业务请求, 所得到并发送至服务网关的结果。
[0158]
在一些实施例中,服务获取装置500还包括:身份凭证获取模块 510。身份凭证获
取模块510用于接收服务网关发送的身份凭证。
[0159]
在一些实施例中,区块链节点的服务获取装置500还包括:授权 请求发送模块。
[0160]
授权请求发送模块用于发送携带有用户身份的授权请求至服务 网关。
[0161]
身份凭证获取模块510进一步用于接收服务网关发送的基于授 权请求而得到的身份凭证。
[0162]
其中,身份凭证包含有授权信息和身份描述信息。
[0163]
在一些实施例中,授权请求发送模块进一步用于在终端内的现有 身份凭证过期,或者现有身份凭证的数量低于目标数量的情况下,基 于用户指令,发送授权请求至服务网关。
[0164]
在一些实施例中,区块链节点的服务获取装置500还包括:凭证 注销模块。
[0165]
凭证注销模块用于在接收到服务网关返回的新身份凭证的情况 下,在目标期限内注销现有身份凭证。
[0166]
本发明还提供一种区块链节点的服务获取装置,该服务获取装置 应用于服务网关,且该服务获取装置与上述描述的应用于服务网关的 区块链节点的服务获取方法可相互对应参照。
[0167]
如图6所示,该区块链节点的服务获取装置600包括:业务请求 接收模块610、身份验证模块620、服务结果接收模块630和服务结 果发送模块640。
[0168]
业务请求接收模块610用于接收终端发送的携带有身份凭证的 业务请求。
[0169]
身份验证模块620用于验证身份凭证,并在身份凭证验证通过的 情况下,将业务请求发送至区块链节点;
[0170]
服务结果接收模块630用于接收区块链节点基于业务请求所返 回的服务结果;
[0171]
服务结果发送模块640用于将服务结果发送至终端。
[0172]
在一些实施例中,区块链节点的服务获取装置600还包括:授权 请求接收模块、身份凭证获取模块和身份凭证发送模块。
[0173]
授权请求接收模块用于接收终端发送的携带有用户身份的授权 请求。
[0174]
身份凭证获取模块用于基于授权请求以及用户身份的对应权限, 得到身份凭证。
[0175]
身份凭证发送模块用于将身份凭证发送至终端;其中,身份凭 证包含有授权信息和身份描述信息。
[0176]
在一些实施例中,身份验证模块620进一步用于验证身份凭证中 的签名、有效时限以及业务功能权限,基于身份凭证中的签名、有效 时限以及业务功能权限,确定身份凭证是否验证通过。
[0177]
本技术实施例涉及的终端,可以是指向用户提供语音和/或数据 连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制 解调器的其他处理设备等。在不同的系统中,终端的名称可能也不相 同,例如在5g系统中,终端可以称为用户设备(user equipment, ue)。
[0178]
下面对本发明提供的终端、网关电子设备和存储介质进行描述, 下文描述的终端、网关、电子设备和存储介质与上文描述的区块链节 点的服务获取方法可相互对应参照。
[0179]
图7为根据本技术实施例的终端的结构示意图,参照图7,本申 请实施例还提供一
种终端,可以包括:存储器710,收发机720以及 处理器730;
[0180]
存储器710用于存储计算机程序;收发机720,用于在所述处理 器730的控制下收发数据;处理器730,用于读取所述存储器710中 的计算机程序并执行以下操作:
[0181]
步骤110、发送携带有身份凭证的业务请求至服务网关;
[0182]
步骤120、在服务网关验证通过身份凭证的情况下,接收服务网 关发送的与业务请求相对应的服务结果。
[0183]
其中,在图7中,总线架构可以包括任意数量的互联的总线和桥, 具体由处理器730代表的一个或多个处理器和存储器710代表的存储 器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器 和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域 所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。 收发机720可以是多个元件,即包括发送机和接收机,提供用于在传 输介质上与各种其他装置通信的单元。针对不同的用户设备,用户接 口740还可以是能够外接内接需要设备的接口。
[0184]
处理器730负责管理总线架构和通常的处理,存储器710可以存 储处理器730在执行操作时所使用的数据。
[0185]
处理器730通过调用存储器710存储的计算机程序,用于按照获 得的可执行指令执行本技术实施例提供的任一所述方法。处理器与存 储器也可以物理上分开布置。
[0186]
可选地,处理器730还用于执行以下操作:
[0187]
接收服务网关发送的身份凭证,该步骤可以在步骤110之前执行。
[0188]
发送携带有用户身份的授权请求至服务网关。
[0189]
接收服务网关发送的基于授权请求而得到的身份凭证。
[0190]
接收服务网关发送的基于授权请求而得到的目标过期时间,基于 该目标过期时间,判断对应的身份凭证是否过期,若获取身份凭证的 时间超出了目标过期时间,则确定身份凭证过期。
[0191]
在接收到服务网关返回的新身份凭证的情况下,在目标期限内注 销现有身份凭证。
[0192]
图8为根据本技术实施例的网关的结构示意图,参照图8,本申 请实施例还提供一种网关,可以包括:存储器810,收发机820以及 处理器830;
[0193]
存储器810用于存储计算机程序;收发机820,用于在所述处理 器830的控制下收发数据;处理器830,用于读取所述存储器810中 的计算机程序并执行以下操作:
[0194]
步骤410、接收终端发送的携带有身份凭证的业务请求;
[0195]
步骤420、验证身份凭证,并在身份凭证验证通过的情况下,将 业务请求发送至区块链节点;
[0196]
步骤430、接收区块链节点基于业务请求所返回的服务结果;
[0197]
步骤440、将服务结果发送至终端。
[0198]
其中,在图8中,总线架构可以包括任意数量的互联的总线和桥, 具体由处理器830代表的一个或多个处理器和存储器810代表的存储 器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器 和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域 所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。 收发机820可以是多个元件,即包括发送机和接收机,提供用于在传 输介质上与各种其他装置
通信的单元。处理器830负责管理总线架构 和通常的处理,存储器810可以存储处理器830在执行操作时所使用 的数据。
[0199]
可选地,处理器830还用于执行以下操作:
[0200]
接收终端发送的携带有用户身份的授权请求;
[0201]
基于授权请求以及用户身份的对应权限,得到身份凭证;
[0202]
将身份凭证发送至终端;其中,身份凭证包含有授权信息和身份 描述信息。
[0203]
验证身份凭证中的签名、有效时限以及业务功能权限,基于身份 凭证中的签名、有效时限以及业务功能权限,确定身份凭证是否验证 通过。
[0204]
服务网关收到身份凭证,经过base64解码,恢复header、payload 和signature的原始信息。
[0205]
检查身份凭证的签名,如果签名错误,则拒绝请求。
[0206]
在此需要说明的是,本发明实施例提供的终端以及网关,能够实 现上述方法实施例所实现的所有方法步骤,且能够达到相同的技术效 果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行 具体赘述。
[0207]
图9示例了一种电子设备的实体结构示意图,如图9所示,该电 子设备可以包括:处理器(processor)910、通信接口 (communicationinterface)920、存储器(memory)930和通信总线 940,其中,处理器910,通信接口920,存储器930通过通信总线 940完成相互间的通信。处理器910可以调用存储器930中的计算机 程序,以执行区块链节点的服务获取方法的步骤,例如包括:
[0208]
步骤110、发送携带有身份凭证的业务请求至服务网关;
[0209]
步骤120、在服务网关验证通过身份凭证的情况下,接收服务网 关发送的与业务请求相对应的服务结果;
[0210]
或者,包括:
[0211]
步骤410、接收终端发送的携带有身份凭证的业务请求;
[0212]
步骤420、验证身份凭证,并在身份凭证验证通过的情况下,将 业务请求发送至区块链节点;
[0213]
步骤430、接收区块链节点基于业务请求所返回的服务结果;
[0214]
步骤440、将服务结果发送至终端。
[0215]
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的 形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可 读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说 对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品 的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若 干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者 网关等)执行本发明各个实施例所述方法的全部或部分步骤。而前述 的存储介质包括:u盘、移动硬盘、只读存储器(rom, read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、 磁碟或者光盘等各种可以存储程序代码的介质。
[0216]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序 产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计 算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能 够执行上述各方法所提供的区块链节点的服务获取方法,
该方法包括:
[0217]
步骤110、发送携带有身份凭证的业务请求至服务网关;
[0218]
步骤120、在服务网关验证通过身份凭证的情况下,接收服务网 关发送的与业务请求相对应的服务结果;
[0219]
或者,包括:
[0220]
步骤410、接收终端发送的携带有身份凭证的业务请求;
[0221]
步骤420、验证身份凭证,并在身份凭证验证通过的情况下,将 业务请求发送至区块链节点;
[0222]
步骤430、接收区块链节点基于业务请求所返回的服务结果;
[0223]
步骤440、将服务结果发送至终端。
[0224]
另一方面,本技术实施例还提供一种处理器可读存储介质,所述 处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述 处理器执行上述各实施例提供的方法,例如包括:
[0225]
步骤110、发送携带有身份凭证的业务请求至服务网关;
[0226]
步骤120、在服务网关验证通过身份凭证的情况下,接收服务网 关发送的与业务请求相对应的服务结果;
[0227]
或者,包括:
[0228]
步骤410、接收终端发送的携带有身份凭证的业务请求;
[0229]
步骤420、验证身份凭证,并在身份凭证验证通过的情况下,将 业务请求发送至区块链节点;
[0230]
步骤430、接收区块链节点基于业务请求所返回的服务结果;
[0231]
步骤440、将服务结果发送至终端。
[0232]
所述处理器可读存储介质可以是处理器能够存取的任何可用介 质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁 带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd 等)、以及半导体存储器(例如rom、eprom、eeprom、非易失 性存储器(nand flash)、固态硬盘(ssd))等。
[0233]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部 件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的 部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也 可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或 者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付 出创造性的劳动的情况下,即可以理解并实施。
[0234]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解 到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然 也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现 有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软 件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光 盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机, 服务器,或者网关等)执行各个实施例或者实施例的某些部分所述的 方法。
[0235]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而 非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领 域的普通技术人员应当理解:其依然
可以对前述各实施例所记载的技 术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修 改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方 案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1