本技术涉及大数据,特别是涉及一种业务数据获取方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术:
1、随着大数据技术的发展,对业务数据进行加密的应用场景也在逐渐增加。以手机验证码为例,一般地,手机验证码是明文传输至用户手机中,但是在这一过程中验证码容易被截获,导致验证码泄露,因此,出现了对手机验证码进行加密的技术。
2、目前,对手机验证码等业务数据进行加密的方法可以是:终端上传业务数据获取请求至服务器,服务器采用通用的加密算法对业务数据来进行加密,并将加密密钥对应的解密密钥、加密后的业务数据发送至终端,终端接收加密密钥对应的解密密钥、加密后的业务数据,采用解密密钥对加密后的业务数据进行解密。但是,这种方法的安全性还不够,无法实现安全进行业务数据的加密。
技术实现思路
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、基于所述用户标识,生成、并向服务端发送第二业务数据获取请求;
41、获取所述服务端基于所述第二业务数据获取请求反馈的业务数据消息,所述业务数据消息包括加密的业务数据、及用户标识,所述加密的业务数据由所述服务端根据加密密钥对业务数据进行加密后得到,所述加密密钥由所述服务端基于所述用户标识,从区块链中查询得到;
42、从所述区块链中查询所述用户标识对应的解密密钥;
43、基于所述解密密钥,对所述加密的业务数据进行解密,得到目标业务数据。
44、第五方面,本技术还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
45、获取用户上传的第一业务数据获取请求,提取所述第一业务数据获取请求中携带的用户标识;
46、基于所述用户标识,生成、并向服务端发送第二业务数据获取请求;
47、获取所述服务端基于所述第二业务数据获取请求反馈的业务数据消息,所述业务数据消息包括加密的业务数据、及用户标识,所述加密的业务数据由所述服务端根据加密密钥对业务数据进行加密后得到,所述加密密钥由所述服务端基于所述用户标识,从区块链中查询得到;
48、从所述区块链中查询所述用户标识对应的解密密钥;
49、基于所述解密密钥,对所述加密的业务数据进行解密,得到目标业务数据。
50、上述业务数据获取方法、装置、计算机设备、存储介质和计算机程序产品,在服务端基于用户标识从区块链中查询加密密钥对业务数据进行加密,将加密的业务数据发送至应用端,在应用端基于用户标识从区块链中查询加密的业务数据对应的解密密钥,对加密的业务数据进行解密,即加密密钥和解密密钥被存放至区块链中,只有基于用户标识才能够准确查询到,而不需要将加密密钥和解密密钥从服务端传输至应用端,能够避免密钥的泄露,实现安全的业务数据获取。