本发明涉及数据处理,特别是指一种基于区块链网关的数据处理方法、装置及系统。
背景技术:
1、当前,以baas区块链服务平台为主的联盟链托管化管理已成为主要趋势,大多采用云计算环境进行区块链集群的部署。尽管baas实现了区块链网络的快速部署及多维度管理,但云端区块链账本的接入门槛仍较高,阻碍了区块链业务的批量化快速落地。
2、为解决上述问题,业界中出现了区块链网关平台方案,旨在实现区块链账本的低成本接入,这是区块链网关平台的主要目标。为实现此目标,业界中多采用基于http协议的区块链指令网关方案,方案采用http协议传输用户指令,由网关平台提取预存的用户私钥,再以传统的区块链交互方式,执行用户指令,并回执结果给用户。
3、传统区块链引擎的写入api应用程序接口时,都是在同一接口下,并以grpc多语言远程调用协议机制对外暴露。受此限制,以http协议暴露api的区块链网关,无法直接在用户本地使用grpc api,只能发送原始数据到网关,由网关代为执行指令。网关中执行指令时,网关需要预存用户私钥,以执行用户区块链指令,但这有悖于私钥私有的安全性原则,存在极大信息安全隐患。
技术实现思路
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、本发明的上述方案,通过接收数据访问请求,所述数据访问请求携带明文数据;通过调用第一开发组件利用存储于本地的第一私钥对所述明文数据进行签名处理,生成交易请求体;将所述交易请求体通过网关平台发送至目标执行端点,并由所述目标执行端点调用第二开发组件将所述交易请求体通过第一应用程序接口发送至目标区块链节点,提高了数据处理过程的安全性及有效性,降低用户信息泄露风险。
1.一种基于区块链网关的数据处理方法,其特征在于,应用于客户端,所述方法包括:
2.根据权利要求1所述的基于区块链网关的数据处理方法,其特征在于,通过调用第一开发组件利用存储于本地的第一私钥对所述明文数据进行签名处理,生成交易请求体,包括:
3.根据权利要求1所述的基于区块链网关的数据处理方法,其特征在于,还包括:
4.根据权利要求3所述的基于区块链网关的数据处理方法,其特征在于,还包括:
5.根据权利要求4所述的基于区块链网关的数据处理方法,其特征在于,将所述交易请求体通过网关平台发送至目标执行端点,并由所述目标执行端点调用第二开发组件将所述交易请求体通过第一应用程序接口发送至目标区块链节点,包括:
6.根据权利要求3或5所述的基于区块链网关的数据处理方法,其特征在于,将所述提交请求体通过网关平台发送至目标执行端点,并由所述目标执行端点调用第二开发组件将所述提交请求体通过第二应用程序接口发送至目标区块链节点,包括:
7.根据权利要求6所述的基于区块链网关的数据处理方法,其特征在于,由所述目标执行端点调用第二开发组件将所述提交请求体通过第二应用程序接口发送至目标区块链节点,包括:
8.一种基于区块链网关的数据处理装置,其特征在于,包括:
9.一种基于区块链网关的数据处理系统,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,存储有指令,所述指令在计算机上运行时,使得计算机执行如权利要求1至7任一项所述的方法。