数字签名处理方法、装置、计算机设备和存储介质转让专利

申请号 : CN202111615446.1

文献号 : CN114006705B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 吴军勇杨帆

申请人 : 深圳市名竹科技有限公司

摘要 :

本申请涉及一种数字签名处理方法、装置、计算机设备和存储介质。该方法包括:响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得签名服务程序对服务访问密钥进行验证,并在验证通过后向资源转移请求端发送原生验证码;获取资源转移请求端发送的输入验证码,并基于输入验证码向签名服务程序发起一致性验证请求,使得签名服务程序验证输入验证码与原生验证码之间的一致性;在一致性验证通过后,获取签名服务程序返回的资源转移签名结果;资源转移签名结果,用于指示对资源转移请求进行相应处理。采用本方法能够提高数字签名处理的安全性。

权利要求 :

1.一种数字签名处理方法,其特征在于,所述方法包括:响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行验证,并在验证通过后向所述资源转移请求端发送原生验证码;所述签名服务程序是由资源转移请求方自定义用于实现资源转移签名的、且经过代码混淆处理的服务程序;

获取所述资源转移请求端发送的输入验证码,并基于所述输入验证码向所述签名服务程序发起一致性验证请求,使得签名服务程序验证所述输入验证码与所述原生验证码之间的一致性;

在一致性验证通过后,获取所述签名服务程序返回的资源转移签名结果;所述资源转移签名结果,用于指示对所述资源转移请求进行相应处理。

2.根据权利要求1所述的方法,其特征在于,所述响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行验证,并在验证通过后向所述资源转移请求端发送原生验证码包括:

响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行验证,在验证通过后针对所述资源转移签名请求生成原生验证码,并通过验证码平台向所述资源转移请求端发送所述原生验证码。

3.根据权利要求2所述的方法,其特征在于,所述签名服务程序包括签名请求处理程序和配置文件;所述签名请求处理程序是经过代码混淆处理的、且用于实现资源转移签名的程序;所述配置文件中包括所述资源转移请求方的私钥;

所述在一致性验证通过后,获取所述签名服务程序返回的资源转移签名结果包括:在一致性验证通过后,获取所述签名请求处理程序返回的资源转移签名结果;所述资源转移签名结果,是所述签名请求处理程序基于所述配置文件中的所述私钥生成的。

4.根据权利要求3所述的方法,其特征在于,所述配置文件中还包括所述资源转移请求方的通讯信息和所述验证码平台的地址;

所述响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行验证,并在验证通过后向所述资源转移请求端发送原生验证码包括:响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行验证,在验证通过后针对所述资源转移签名请求生成原生验证码,并按照所述验证码平台的地址向所述验证码平台发送所述通讯信息和所述原生验证码,以指示所述验证码平台按照所述通讯信息向所述资源转移请求端发送所述原生验证码。

5.根据权利要求1所述的方法,其特征在于,所述响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求包括:响应于资源转移请求端发送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并基于所述服务访问密钥生成资源转移签名请求;

按照预先存储的签名服务程序的访问地址,将所述资源转移签名请求向所述签名服务程序发送。

6.根据权利要求5所述的方法,其特征在于,在所述响应于资源转移请求端发送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并基于所述服务访问密钥生成资源转移签名请求之前包括:

接收资源转移请求端发送的签名服务程序的访问地址和服务访问密钥;

对所述签名服务程序的访问地址和服务访问密钥进行存储。

7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:在一致性验证不通过的情况下,获取所述资源转移请求端重新发送的输入验证码;所述重新发送的输入验证码,是在所述签名服务程序向所述资源转移请求端重新发送原生验证码后,由所述资源转移请求方基于资源转移请求端重新输入的验证码;

基于所述重新发送的输入验证码向所述签名服务程序再次发起一致性验证请求,以使得签名服务程序验证所述重新发送的输入验证码与重新发送的所述原生验证码之间的一致性。

8.一种数字签名处理装置,其特征在于,所述装置包括:响应模块,用于响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行验证,并在验证通过后向所述资源转移请求端发送原生验证码;所述签名服务程序是由资源转移请求方自定义用于实现资源转移签名的、且经过代码混淆处理的服务程序;

数字签名处理模块,用于获取所述资源转移请求端发送的输入验证码,并基于所述输入验证码向所述签名服务程序发起一致性验证请求,使得签名服务程序验证所述输入验证码与所述原生验证码之间的一致性;在一致性验证通过后,获取所述签名服务程序返回的资源转移签名结果;所述资源转移签名结果,用于指示对所述资源转移请求进行相应处理。

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。

说明书 :

数字签名处理方法、装置、计算机设备和存储介质

技术领域

[0001] 本申请涉及计算机安全技术领域,特别是涉及一种数字签名处理方法、装置、计算机设备和存储介质。

背景技术

[0002] 随着计算机安全技术的发展,出现了数字签名处理技术。传统方法中,用户可以将私钥存储在服务器上,使用时从服务器中下载私钥,以在浏览器或移动设备上使用该私钥
进行签名。
[0003] 这种方法虽然十分便捷,但是无法避免不良用户恶意攻击和盗取私钥的风险,安全性不高。因此,亟需提出一种能够提高安全性的数字签名处理方法。

发明内容

[0004] 基于此,有必要针对上述技术问题,提供一种能够提高安全性的数字签名处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0005] 第一方面,本申请提供了一种数字签名处理方法。所述方法包括:
[0006] 一种数字签名处理方法,其特征在于,所述方法包括:
[0007] 响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行
验证,并在验证通过后向所述资源转移请求端发送原生验证码;所述签名服务程序是由资
源转移请求方自定义用于实现资源转移签名的、且经过代码混淆处理的服务程序;
[0008] 获取所述资源转移请求端发送的输入验证码,并基于所述输入验证码向所述签名服务程序发起一致性验证请求,使得签名服务程序验证所述输入验证码与所述原生验证码
之间的一致性;
[0009] 在一致性验证通过后,获取所述签名服务程序返回的资源转移签名结果;所述资源转移签名结果,用于指示对所述资源转移请求进行相应处理。
[0010] 在其中一个实施例中,所述响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程
序对所述服务访问密钥进行验证,并在验证通过后向所述资源转移请求端发送原生验证码
包括:
[0011] 响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行
验证,在验证通过后针对所述资源转移签名请求生成原生验证码,并通过验证码平台向所
述资源转移请求端发送所述原生验证码。
[0012] 在其中一个实施例中,所述签名服务程序包括签名请求处理程序和配置文件;所述签名请求处理程序是经过代码混淆处理的、且用于实现资源转移签名的程序;所述配置
文件中包括所述资源转移请求方的私钥;
[0013] 所述在一致性验证通过后,获取所述签名服务程序返回的资源转移签名结果包括:
[0014] 在一致性验证通过后,获取所述签名请求处理程序返回的资源转移签名结果;所述资源转移签名结果,是所述签名请求处理程序基于所述配置文件中的所述私钥生成的。
[0015] 在其中一个实施例中,所述配置文件中还包括所述资源转移请求方的通讯信息和所述验证码平台的地址;
[0016] 所述响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥
进行验证,并在验证通过后向所述资源转移请求端发送原生验证码包括:
[0017] 响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服务访问密钥进行
验证,在验证通过后针对所述资源转移签名请求生成原生验证码,并按照所述验证码平台
的地址向所述验证码平台发送所述通讯信息和所述原生验证码,以指示所述验证码平台按
照所述通讯信息向所述资源转移请求端发送所述原生验证码。
[0018] 在其中一个实施例中,所述响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求包括:
[0019] 响应于资源转移请求端发送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并基于所述服务访问密钥生成资源转移签名请求;
[0020] 按照预先存储的签名服务程序的访问地址,将所述资源转移签名请求向所述签名服务程序发送。
[0021] 在其中一个实施例中,在所述响应于资源转移请求端发送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并基于所述服务访问密钥生成资源转移签名请
求之前包括:
[0022] 接收资源转移请求端发送的签名服务程序的访问地址和服务访问密钥;
[0023] 对所述签名服务程序的访问地址和服务访问密钥进行存储。
[0024] 在其中一个实施例中,所述方法还包括:
[0025] 在一致性验证不通过的情况下,获取所述资源转移请求端重新发送的输入验证码;所述重新发送的输入验证码,是在所述签名服务程序向所述资源转移请求端重新发送
原生验证码后,由所述资源转移请求方基于资源转移请求端重新输入的验证码;
[0026] 基于所述重新发送的输入验证码向所述签名服务程序再次发起一致性验证请求,以使得签名服务程序验证所述重新发送的输入验证码与重新发送的所述原生验证码之间
的一致性。
[0027] 第二方面,本申请还提供了一种数字签名处理装置。所述装置包括:
[0028] 响应模块,用于响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述服
务访问密钥进行验证,并在验证通过后向所述资源转移请求端发送原生验证码;所述签名
服务程序是由资源转移请求方自定义用于实现资源转移签名的、且经过代码混淆处理的服
务程序;
[0029] 数字签名处理模块,用于获取所述资源转移请求端发送的输入验证码,并基于所述输入验证码向所述签名服务程序发起一致性验证请求,使得签名服务程序验证所述输入
验证码与所述原生验证码之间的一致性;在一致性验证通过后,获取所述签名服务程序返
回的资源转移签名结果;所述资源转移签名结果,用于指示对所述资源转移请求进行相应
处理。
[0030] 第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本申请各实施
例所述方法中的步骤。
[0031] 第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时本申请各实施例所述方法中的步
骤。
[0032] 第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本申请各实施例所述方法中的步骤。
[0033] 上述数字签名处理方法、装置、计算机设备、存储介质和计算机程序产品,响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序
发送资源转移签名请求,使得签名服务程序对服务访问密钥进行验证,并在验证通过后向
资源转移请求端发送原生验证码;签名服务程序是由资源转移请求方自定义用于实现资源
转移签名的、且经过代码混淆处理的服务程序;获取资源转移请求端发送的输入验证码,并
基于输入验证码向签名服务程序发起一致性验证请求,使得签名服务程序验证输入验证码
与原生验证码之间的一致性;在一致性验证通过后,获取签名服务程序返回的资源转移签
名结果;资源转移签名结果,用于指示对资源转移请求进行相应处理。能够由资源转移业务
平台与签名服务程序交互进行数字签名处理,不同于终端下载秘钥生成数字签名的形式,
无需终端下载秘钥生成数字签名,避免了秘钥暴露的风险,提高了数字签名处理的安全性。
并且,通过签名服务程序基于服务访问密钥进行验证,以确定资源转移业务平台具有正确
的服务访问密钥,从而可以避免不良业务平台的恶意访问。在该次验证通过后,再次通过签
名服务程序基于验证码进行验证,以确定资源转移请求是由资源转移请求端发送的,从而
可以避免不良用户的终端获取资源转移签名结果,进一步提高了数字签名处理的安全性。

附图说明

[0034] 图1为一个实施例中数字签名处理方法的应用环境图;
[0035] 图2为一个实施例中数字签名处理方法的流程示意图;
[0036] 图3为一个实施例中进行数字签名处理的原理示意图;
[0037] 图4为一个实施例中数字签名处理装置的结构框图;
[0038] 图5为一个实施例中计算机设备的内部结构图;
[0039] 图6为另一个实施例中计算机设备的内部结构图。

具体实施方式

[0040] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不
用于限定本申请。
[0041] 本申请实施例提供的数字签名处理方法,可以应用于如图1所示的应用环境中。其中, 资源转移请求端102、资源转移业务平台104和签名服务程序106所在的计算机设备通
过网络进行通信。可以理解,签名服务程序可以被部署在计算机设备上。资源转移业务平台
104可以响应于资源转移请求端102发送的资源转移请求,基于签名服务程序106的服务访
问密钥向签名服务程序106发送资源转移签名请求,使得签名服务程序106对服务访问密钥
进行验证,并在验证通过后向资源转移请求端102发送原生验证码资源转移业务平台104可
以获取资源转移请求端102发送的输入验证码,并基于输入验证码向签名服务程序106发起
一致性验证请求,使得签名服务程序106验证输入验证码与原生验证码之间的一致性。在一
致性验证通过后,资源转移业务平台104可以获取签名服务程序106返回的资源转移签名结
果;资源转移签名结果,用于指示资源转移业务平台104对资源转移请求进行相应处理。
[0042] 其中,资源转移请求端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能
空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。资源转移
业务平台104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0043] 在一个实施例中,如图2所示,提供了一种数字签名处理方法,以该方法应用于图1中的资源转移业务平台为例进行说明,可以理解,该方法可以通过资源转移业务平台、资源
转移请求端和签名服务程序所在的计算机设备之间的交互实现,包括以下步骤:
[0044] 步骤202,响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得签名服务程序对服务访问密钥进行
验证,并在验证通过后向资源转移请求端发送原生验证码。
[0045] 其中,资源转移请求用于请求资源转移业务平台进行资源转移。资源转移签名请求用于请求签名服务程序返回资源转移签名结果。签名服务程序是由资源转移请求方自定
义用于实现资源转移签名的、且经过代码混淆处理的服务程序。资源转移请求端是资源转
移请求方的终端。原生验证码是由签名服务程序生成的验证码。资源转移业务平台,是用于
进行资源转移的业务平台。资源转移是指对虚拟资源进行转移。
[0046] 具体地,资源转移请求方可以在资源转移请求端进行资源转移操作,资源转移请求端可以响应于该操作向资源转移业务平台发送资源转移请求。资源转移业务平台可以接
收资源转移请求,并查询该资源转移请求对应的签名服务程序的服务访问密钥。资源转移
业务平台可以向签名服务程序发送携带有服务访问密钥的资源转移签名请求。签名服务程
序可以接收该资源转移签名请求,并对资源转移签名请求中的服务访问密钥进行验证。签
名服务程序可以在验证通过之后,针对该资源转移签名请求生成原生验证码,并向资源转
移端发送该原生验证码。
[0047] 在一个实施例中,签名服务程序可以在对服务访问密钥的验证不通过之后,向资源转移业务平台发送表征资源转移签名请求错误的信息。可以理解,资源转移业务平台可
以通过资源转移请求端展示表征资源转移签名请求错误的信息。
[0048] 在一个实施例中,资源转移业务平台可以是用于进行资源转移的区块链服务平台(BaaS,Blockchain as a Service)。
[0049] 在一个实施例中,虚拟资源可以与现实资源存在对应关系,例如可以是对现实资源进行虚拟化后得到的资源,如现实货币的电子化资源(如数字货币);虚拟资源也可以脱
离于现实资源,例如可以是虚拟道具、信用分和虚拟货币等。可以理解,数字货币是可以是
现实中流通的法定货币数字化后的货币。虚拟货币可以是建立在点对点网络和密码学基础
之上的网络流通币。资源转移请求方可以通过资源转移业务平台进行虚拟资源转移。比如,
资源转移请求方可以通过资源转移业务平台进行线上支付或线上转账。
[0050] 步骤204,获取资源转移请求端发送的输入验证码,并基于输入验证码向签名服务程序发起一致性验证请求,使得签名服务程序验证输入验证码与原生验证码之间的一致
性。
[0051] 其中,输入验证码是资源转出方在资源转移请求端输入的验证码。一致性验证请求用于请求验证输入验证码与原生验证码之间的一致性。
[0052] 具体地,资源转移请求端可以接收原生验证码,并向资源转移请求方展示该原生验证码。资源转移请求方可以按照原生验证码,在资源转移请求端输入输入验证码。资源转
移业务平台可以获取资源转移请求端发送的输入验证码,并向签名服务程序发送携带有输
入验证码的一致性验证请求。签名服务程序可以响应于该一致性验证请求,验证输入验证
码与原生验证码之间的一致性。可以理解,若输入验证码与原生验证码相同,则二者一致;
否则不一致。
[0053] 步骤206,在一致性验证通过后,获取签名服务程序返回的资源转移签名结果。
[0054] 其中,资源转移签名结果,用于指示对资源转移请求进行相应处理。
[0055] 具体地,若一致性检验通过,即,输入验证码与原生验证码一致,签名服务程序可以针对资源转移签名请求生成资源转移签名结果,并将资源转移签名结果返回至资源转移
业务平台。资源转移业务平台可以在一致性验证通过后,获取签名服务程序返回的资源转
移签名结果。
[0056] 在一个实施例中,资源转移业务平台可以通过资源转移请求方的公钥验证资源转移签名结果以对资源转移请求进行相应处理。
[0057] 在一个实施例中,签名服务程序可以针对资源转移签名请求进行数字签名,得到资源转移签名结果。
[0058] 上述数字签名处理方法中,响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得签名服务程序对
服务访问密钥进行验证,并在验证通过后向资源转移请求端发送原生验证码;签名服务程
序是由资源转移请求方自定义用于实现资源转移签名的、且经过代码混淆处理的服务程
序;获取资源转移请求端发送的输入验证码,并基于输入验证码向签名服务程序发起一致
性验证请求,使得签名服务程序验证输入验证码与原生验证码之间的一致性;在一致性验
证通过后,获取签名服务程序返回的资源转移签名结果;资源转移签名结果,用于指示对资
源转移请求进行相应处理。能够通过签名服务程序基于服务访问密钥进行验证,以确定资
源转移请求中具有服务访问密钥,从而可以避免不良业务平台的恶意访问。在该次验证通
过后,再次通过签名服务程序基于验证码进行验证,以确定资源转移请求是由资源转移请
求端发送的,从而可以避免不良用户的终端获取资源转移签名结果,提高了数字签名处理
的安全性。
[0059] 此外,本申请的方法能够在接收到资源转移请求后,主动触发资源转移业务平台向签名服务程序发送资源转移签名请求,相较于将私钥置于芯片上隔离网络上攻击的方式
而言,避免了反复插拔导致的繁复操作,因为,将私钥放置于芯片上隔离网络上的攻击的方
式,使用时需要通过计算机上的端口插入芯片,再请求数字签名,操作很繁琐。并且,芯片损
坏或丢失都会造成私钥的损失,因此还需要做好私钥的备份。因此,本申请的方法相较于直
接将私钥置于芯片更加便捷。
[0060] 在一个实施例中,响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得签名服务程序对服务访问
密钥进行验证,并在验证通过后向资源转移请求端发送原生验证码包括:响应于资源转移
请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源
转移签名请求,使得签名服务程序对服务访问密钥进行验证,在验证通过后针对资源转移
签名请求生成原生验证码,并通过验证码平台向资源转移请求端发送原生验证码。
[0061] 其中,验证码平台是用于向资源转移请求端发送原生验证码的平台。
[0062] 具体地,资源转移请求端可以响应于资源转移请求端发送的资源转移请求,向签名服务程序发送携带有该签名程序的服务访问密钥的资源转移签名请求。签名服务程序可
以对资源转移签名请求中的服务访问密钥进行验证,在验证通过后针对资源转移签名请求
生成原生验证码。签名服务程序可以调用验证码平台的接口,触发验证码平台将原生验证
码发送到资源转移请求端。
[0063] 在一个实施例中,验证码平台可以以字符和语音中的至少一种方式发送原生验证码。可以理解,验证码平台可以以语音短信、字符短信或语音通话的方式将原生验证码发送
到资源转移请求端。验证码平台还可以以邮件的方式将原生验证码发送至资源转移请求
端。
[0064] 本实施例中,签名服务程序在对服务访问密钥进行验证之后,针对资源转移签名请求生成原生验证码,并通过验证码平台将原生验证码发送至资源转移请求端,从而能够
进行后续的一致性验证,只有同时具有正确的服务访问密钥和原生验证码才能够获取资源
转移签名结果,提高了数字签名处理的安全性。
[0065] 在一个实施例中,签名服务程序包括签名请求处理程序和配置文件;签名请求处理程序是经过代码混淆处理的、且用于实现资源转移签名的程序;配置文件中包括资源转
移请求方的私钥;在一致性验证通过后,获取签名服务程序返回的资源转移签名结果包括:
在一致性验证通过后,获取签名请求处理程序返回的资源转移签名结果;资源转移签名结
果,是签名请求处理程序基于配置文件中的私钥生成的。
[0066] 其中,代码混淆是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。签名请求处理程序用于处理签名服务程序接收到的资源转移签名请
求。可以理解,签名请求处理程序和配置文件共同组成了签名服务程序,签名请求处理程序
可以基于配置文件中的信息处理资源转移签名请求。
[0067] 具体地,签名请求处理程序可以在一致性检验通过后,使用资源转移请求方的私钥进行签名,生成资源转移签名结果。签名请求处理程序可以向资源转移业务平台返回该
资源转移签名结果,资源转移业务平台可以获取签名请求处理程序返回的资源转移签名结
果。可以理解,签名服务程序中实质执行操作的是签名请求处理程序,签名请求处理程序可
以接收资源转移业务平台发送的资源转移签名请求。
[0068] 本实施例中,签名服务程序中的配置文件中有资源转出请求方的私钥,签名服务程序中的签名请求处理程序可以基于私钥生成资源转移签名结果,能够在对服务访问密钥
验证和一致性验证之后,签名请求处理程序生成资源转移签名结果,保证了数字签名处理
的安全性。
[0069] 在一个实施例中,配置文件中还包括资源转移请求方的通讯信息和验证码平台的地址;响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向
签名服务程序发送资源转移签名请求,使得签名服务程序对服务访问密钥进行验证,并在
验证通过后向资源转移请求端发送原生验证码包括:响应于资源转移请求端发送的资源转
移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得
签名服务程序对服务访问密钥进行验证,在验证通过后针对资源转移签名请求生成原生验
证码,并按照验证码平台的地址向验证码平台发送通讯信息和原生验证码,以指示验证码
平台按照通讯信息向资源转移请求端发送原生验证码。
[0070] 其中,通讯信息是与资源转移请求方通讯的信息。
[0071] 具体地,资源转移业务平台可以响应于资源转移请求端发送的资源转移请求,向签名服务程序发送携带有服务访问密钥的资源转移签名请求。签名服务程序可以对服务访
问密钥进行验证,在验证通过后针对资源转移签名请求生成原生验证码。签名服务程序可
以访问验证码平台的地址,调用该验证码平台的接口,向验证码平台发送通讯信息和原生
验证码。验证码平台可以按照通讯信息向资源转移请求端发送原生验证码。
[0072] 在一个实施例中,通讯信息可以包括资源转移请求方的手机号码和邮箱地址等信息中的至少一种。可以理解,验证码平台可以按照手机号码以短信的方式向资源转移请求
端发送原生验证码。验证码平台可以按照邮箱地址以邮件的形式发送原生验证码。
[0073] 本实施例中,配置文件中包括资源转移请求方的通讯信息和验证码平台的地址,签名服务程序可以按照验证码平台的地址,向验证码平台发送通讯信息和原生验证码,以
通过验证码平台准确地将原生验证码发送至资源转移请求端,从而能够基于对原生验证码
和输入验证码的一致性验证,将资源转移签名结果发送至资源转移业务平台,保证数字签
名处理的安全性。
[0074] 在一个实施例中,响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求包括:响应于资源转移请求端发
送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并基于服务访问密钥
生成资源转移签名请求;按照预先存储的签名服务程序的访问地址,将资源转移签名请求
向签名服务程序发送。
[0075] 具体地,资源转移业务平台可以响应于资源转移请求端发送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并生成携带有该服务访问密钥的资源转移签
名请求。资源转移业务平台可以访问预先存储的签名服务程序的访问地址,将资源转移签
名请求向签名服务程序发送。
[0076] 在一个实施例中,资源转移请求携带资源转移请求方的标识信息。资源转移业务平台可以按照该标识信息,确定资源转移请求方的签名服务程序的访问地址和服务访问密
钥。可以理解,资源转移业务平台可以按照资源转移请求方的标识信息存储资源转移请求
方的签名服务程序的访问地址和服务访问密钥。
[0077] 本实施例中,资源转移业务平台可以响应于资源转移请求端发送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并基于服务访问密钥生成资源转移签
名请求;按照预先存储的签名服务程序的访问地址,将资源转移签名请求向签名服务程序
发送,只有具有服务访问密钥和访问地址的资源转移业务平台可以访问签名服务程序,从
而得到签名服务程序返回的资源转移签名结果,提高了数字签名处理的安全性。
[0078] 在一个实施例中,在响应于资源转移请求端发送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并基于服务访问密钥生成资源转移签名请求之前包括:
接收资源转移请求端发送的签名服务程序的访问地址和服务访问密钥;对签名服务程序的
访问地址和服务访问密钥进行存储。
[0079] 具体地,资源转移请求方可以通过资源转移请求端自定义签名服务程序,并在编译时,对签名服务程序进行代码混淆处理。在签名服务程序部署完毕后,资源转移请求方可
以将签名服务程序的访问地址和服务访问密钥输入至资源转移请求端。资源转移业务平台
可以接收资源转移请求端发送的签名服务程序的访问地址和服务访问密钥,并对签名服务
程序的访问地址和服务访问密钥进行存储。
[0080] 在一个实施例中,资源转移业务平台可以提供用于接收签名服务程序的访问地址和服务访问密钥的接口。资源转移请求端可以调用该接口,将签名服务程序的访问地址和
服务访问密钥发送至资源转移业务平台。
[0081] 本实施例中,接收资源转移请求端发送的签名服务程序的访问地址和服务访问密钥;对签名服务程序的访问地址和服务访问密钥进行存储,从而能够基于访问地址和服务
访问密钥对签名服务程序进行访问,保证了数字签名处理的安全性。
[0082] 在一个实施例中,方法还包括:在一致性验证不通过的情况下,获取资源转移请求端重新发送的输入验证码;重新发送的输入验证码,是在签名服务程序向资源转移请求端
重新发送原生验证码后,由资源转移请求方基于资源转移请求端重新输入的验证码;基于
重新发送的输入验证码向签名服务程序再次发起一致性验证请求,以使得签名服务程序验
证重新发送的输入验证码与重新发送的原生验证码之间的一致性。
[0083] 具体地,在一致性验证不通过的情况下,签名服务程序可以向资源转移请求端重新发送原生验证码,资源转移请求端可以向资源转移请求方展示该原生验证码,资源转移
请求方可以按照原生验证码重新在资源转移请求端中输入输入验证码。资源转移业务平台
可以获取资源转移请求端重新发送的输入验证码。资源转移业务平台可以向签名服务程序
再次发起一致性验证请求。可以理解,一次性验证请求中包括资源转移请求端重新发送的
输入验证码。签名服务程序验证重新发送的输入验证码与重新发送的原生验证码之间的一
致性。
[0084] 在一个实施例中,签名服务程序可以检测到输入验证码和原生验证码不一致,并向资源转移业务平台返回表征二者不一致的信息。资源转移业务平台可以通过资源转移请
求端展示该信息,资源转移请求方可以通过资源转移请求端触发资源转移业务平台向签名
服务程序发起重新获取原生验证码的请求。签名服务程序可以重新针对资源转移签名请求
生成原生验证码,并将该原生验证码重新发送至资源转移请求端。可以理解,即使资源转移
请求方可以对照着资源转移请求端展示的原生验证码输入输入验证码,但是资源转移请求
方依然发生输入错误的情况。
[0085] 本实施例中,在一致性验证不通过的情况下,获取资源转移请求端重新发送的输入验证码;基于重新发送的输入验证码向签名服务程序再次发起一致性验证请求,以使得
签名服务程序验证重新发送的输入验证码与重新发送的原生验证码之间的一致性,在前一
次一致性验证不通过后,能够基于签名服务程序重新发送的原生验证码再次进行一致性验
证,保证了数字签名处理的安全性。
[0086] 在一个实施例中,如图3,为进行数字签名处理的原理示意图。在进行数字签名处理之前,资源转移请求方可以自定义一个签名服务程序。签名服务程序中至少包括签名请
求处理程序代码和配置文件。可以理解,签名请求处理程序代码实质上就是签名服务程序
的代码。配置文件中包括资源转移请求方的私钥和通讯信息(比如手机号码),以及验证码
平台的地址。可以理解,在签名服务程序编译时,资源转移请求方可以对其进行代码混淆处
理,这样使得服务程序即使被盗取,无法被反编译。签名服务程序可以被部署在计算机设备
上,以供后续的访问。资源转移请求方可以通过资源转移请求端向资源转移业务平台输入
签名服务程序的访问地址,以及用于访问签名服务程序的服务访问密钥。可以理解,资源转
移业务平台可以提供接收签名服务程序的访问地址和服务访问密钥的接口,资源转移请求
端可以通过该接口将签名服务程序的访问地址和服务访问密钥发送至资源转移业务平台。
[0087] 资源转移请求方可以通过资源转移请求端向资源转移业务平台输入签名服务程序的访问地址和服务访问密钥,资源转移业务平台可以存储签名服务程序的访问地址和服
务访问密钥。资源转移请求方可以通过资源转移请求端向资源转移业务平台发起资源转移
请求,资源转移业务平台访问签名服务程序的访问地址,向签名服务程序发送资源转移签
名请求。可以理解,资源转移业务平台不立刻针对资源转移请求进行资源转移操作,而是自
动地向签名服务程序发送资源转移签名请求。签名服务程序可以验证资源转移签名请求携
带的服务访问密钥,在验证通过之后,签名服务程序可以针对资源转移签名请求生成原生
验证码。签名服务程序可以访问验证码平台的地址,调用验证码平台的接口,以通过验证码
平台将原生验证码发送至资源转移请求端。可以理解,若服务访问秘钥验证不通过,则说明
该服务访问密钥并不是该签名服务程序的,或者是资源转移请求方输入的签名服务程序的
信息有误,签名服务程序可以向资源转移业务平台返回表征资源转移签名请求错误的信
息。
[0088] 资源转移请求端向资源转移请求方展示接收到的原生验证码,资源转移请求方可以通过资源转移请求端向资源转移业务平台输入输入验证码,资源转移业务平台可以将输
入验证码发送至签名服务程序。签名服务程序可以验证原生验证码和输入验证码之间的一
致性,在一致性验证通过之后,签名服务程序可以使用资源转移请求方的私钥进行签名,得
到资源转移签名结果。可以理解,若一致性验证不通过,则签名服务程序可以通过验证码平
台重新发送原生验证码。签名服务可以将资源转移签名结果发送至资源转移业务平台,资
源转移业务平台可以对资源转移签名结果进行验证,在验证通过之后响应资源转移请求进
行资源转移。
[0089] 本实施例中,签名服务程序经过代码混淆处理,即使被不良用户盗取,也无法被反编译以获取资源转移请求方的私钥。资源转移业务平台访问签名服务程序需要服务访问密
钥,并且只有在一致性验证通过之后才能够获取资源转移签名结果。相较于传统方法中直
接将私钥放置于服务器,更具安全性。此外,目前为了保证安全性,能够将私钥放置于芯片
上隔离网络上的攻击,但是使用时需要通过计算机上的端口插入芯片,再请求数字签名,无
法避免操作繁琐的问题。并且,芯片损坏或丢失都会造成私钥的损失,因此还需要做好私钥
的备份。显然,本实施例中的方法相较于直接将私钥置于芯片更加便捷。
[0090] 在一个实施例中,资源转移请求中携带资源转移请求方的公钥,资源转移业务平台可以利用该公钥解密资源转移签名结果中的数字签名,以对资源转移签名结果进行验
证。
[0091] 在一个实施例中,资源转移请求端可以向资源转移业务平台发送资源转移请求方的公钥,资源转移业务平台可以存储资源转移请求方的公钥。
[0092] 应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有
明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而
且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个
阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这
些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的
步骤或者阶段的至少一部分轮流或者交替地执行。
[0093] 基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数字签名处理方法的数字签名处理装置。该装置所提供的解决问题的实现方案与上述方法中所记
载的实现方案相似,故下面所提供的一个或多个数字签名处理装置实施例中的具体限定可
以参见上文中对于数字签名处理方法的限定,在此不再赘述。
[0094] 在一个实施例中,如图4所示,提供了一种数字签名处理装置,包括:响应模块402和数字签名处理模块404,其中:
[0095] 响应模块402,用于响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务程序对所述
服务访问密钥进行验证,并在验证通过后向所述资源转移请求端发送原生验证码;所述签
名服务程序是由资源转移请求方自定义用于实现资源转移签名的、且经过代码混淆处理的
服务程序;
[0096] 数字签名处理模块404,用于获取所述资源转移请求端发送的输入验证码,并基于所述输入验证码向所述签名服务程序发起一致性验证请求,使得签名服务程序验证所述输
入验证码与所述原生验证码之间的一致性;在一致性验证通过后,获取所述签名服务程序
返回的资源转移签名结果;所述资源转移签名结果,用于指示对所述资源转移请求进行相
应处理。
[0097] 在一个实施例中,响应模块402还用于响应于资源转移请求端发送的资源转移请求,基于签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述
签名服务程序对所述服务访问密钥进行验证,在验证通过后针对所述资源转移签名请求生
成原生验证码,并通过验证码平台向所述资源转移请求端发送所述原生验证码。
[0098] 在一个实施例中,所述签名服务程序包括签名请求处理程序和配置文件;所述签名请求处理程序是经过代码混淆处理的、且用于实现资源转移签名的程序;所述配置文件
中包括所述资源转移请求方的私钥;数字签名处理模块404还用于在一致性验证通过后,获
取所述签名请求处理程序返回的资源转移签名结果;所述资源转移签名结果,是所述签名
请求处理程序基于所述配置文件中的所述私钥生成的。
[0099] 在一个实施例中,所述配置文件中还包括所述资源转移请求方的通讯信息和所述验证码平台的地址;响应模块402还用于响应于资源转移请求端发送的资源转移请求,基于
签名服务程序的服务访问密钥向签名服务程序发送资源转移签名请求,使得所述签名服务
程序对所述服务访问密钥进行验证,在验证通过后针对所述资源转移签名请求生成原生验
证码,并按照所述验证码平台的地址向所述验证码平台发送所述通讯信息和所述原生验证
码,以指示所述验证码平台按照所述通讯信息向所述资源转移请求端发送所述原生验证
码。
[0100] 在一个实施例中,响应模块402还用于响应于资源转移请求端发送的资源转移请求,获取预先存储的签名服务程序的服务访问密钥,并基于所述服务访问密钥生成资源转
移签名请求;按照预先存储的签名服务程序的访问地址,将所述资源转移签名请求向所述
签名服务程序发送。
[0101] 在一个实施例中,响应模块402还用于接收资源转移请求端发送的签名服务程序的访问地址和服务访问密钥;对所述签名服务程序的访问地址和服务访问密钥进行存储。
[0102] 在一个实施例中,数字签名处理模块404还用于在一致性验证不通过的情况下,获取所述资源转移请求端重新发送的输入验证码;所述重新发送的输入验证码,是在所述签
名服务程序向所述资源转移请求端重新发送原生验证码后,由所述资源转移请求方基于资
源转移请求端重新输入的验证码;基于所述重新发送的输入验证码向所述签名服务程序再
次发起一致性验证请求,以使得签名服务程序验证所述重新发送的输入验证码与重新发送
的所述原生验证码之间的一致性。
[0103] 上述数字签名处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形
式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0104] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。
其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易
失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该
内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备
的数据库用于存储数字签名处理相关数据。该计算机设备的网络接口用于与外部的终端通
过网络连接通信。该计算机程序被处理器执行时以实现一种数字签名处理方法。
[0105] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示
屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存
储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程
序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算
机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、
移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种
数字签名处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计
算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按
键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0106] 本领域技术人员可以理解,图5和图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算
机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件
布置。
[0107] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
[0108] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0109] 在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
[0110] 需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户
授权或者经过各方充分授权的信息和数据。
[0111] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机
可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,
本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括
非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read‑Only 
Memory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器
(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器
(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,
PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,
RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存
取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random 
Access Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据
库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,
不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形
处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0112] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛
盾,都应当认为是本说明书记载的范围。
[0113] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员
来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保
护范围。因此,本申请的保护范围应以所附权利要求为准。