【技术实现步骤摘要】
一种协同签名和解密方法、装置、电子设备和存储介质
[0001]本申请涉及安全
,特别是涉及一种协同签名和解密方法、装置、电子设备和存储介质。
技术介绍
[0002]针对证券行业交易频繁,实时性要求高的业务,用户需要随身携带硬件介质,例如智能密码钥匙(Ukey),需要签名时,通过调用智能密码钥匙的硬件驱动完成签名运算。这种签名方式具有操作不便捷,携带不方便,智能密码钥匙接受度不高等缺点。
技术实现思路
[0003]为解决上述问题,本申请提出了一种协同签名和解密方法、装置、电子设备和存储介质。
[0004]第一方面,本申请实施例提供一种协同签名方法,包括:
[0005]客户端对第一消息进行第一部分签名处理,得到第一处理结果;
[0006]所述客户端向服务端发送所述第一处理结果,由所述服务端基于所述第一处理结果进行第二部分签名处理并得到第二处理结果;
[0007]所述客户端接收所述服务端发送的第二处理结果,基于所述第二处理结果计算所述第一消息对应的签名结果。
[0008]第二方面,本申请实施例提供一种协同解密方法,包括:
[0009]客户端将密文中的第一目标数据发送给服务端,由所述服务端对所述第一目标数据进行第一部分解密处理并得到第一解密结果;其中,所述密文由明文通过协同公钥进行加密得到,所述密文由以下数据组成:第一目标数据、第二目标数据和第三目标数据;
[0010]所述客户端对所述密文中的第一目标数据进行第二部分解密处理并得到第二解密结果;r/>[0011]所述客户端接收所述服务端发送的第一解密结果,并基于所述第一解密结果和所述第二解密结果,计算协同解密结果;
[0012]所述客户端基于所述协同解密结果计算派生密钥,并基于所述派生密钥对所述密文中的第二目标数据进行解密,得到所述密文对应的明文。
[0013]第三方面,本申请实施例提供一种协同签名装置,包括:
[0014]处理单元,用于对第一消息进行第一部分签名处理,得到第一处理结果;
[0015]交互单元,用于向服务端发送所述第一处理结果,由所述服务端基于所述第一处理结果进行第二部分签名处理并得到第二处理结果;接收所述服务端发送的第二处理结果;
[0016]所述处理单元,还用于基于所述第二处理结果计算所述第一消息对应的签名结果。
[0017]第四方面,本申请实施例提供一种协同解密装置,包括:
[0018]交互单元,用于将密文中的第一目标数据发送给服务端,由所述服务端对所述第一目标数据进行第一部分解密处理并得到第一解密结果;其中,所述密文由明文通过协同公钥进行加密得到,所述密文由以下数据组成:第一目标数据、第二目标数据和第三目标数据;
[0019]处理单元,用于对所述密文中的第一目标数据进行第二部分解密处理并得到第二解密结果;
[0020]所述交互单元,还用于接收所述服务端发送的第一解密结果;
[0021]所述处理单元,还用于基于所述第一解密结果和所述第二解密结果,计算协同解密结果;基于所述协同解密结果计算派生密钥,并基于所述派生密钥对所述密文中的第二目标数据进行解密,得到所述密文对应的明文。
[0022]第五方面,本申请实施例提供一种电子设备,包括:
[0023]一个或多个处理器;
[0024]与所述一个或多个处理器通信连接的存储器;
[0025]一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序被配置为执行以上所述的方法。
[0026]第四方面,本申请实施例提供一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现以上所述的方法。
[0027]采用本申请实施例的上述技术方案,参与签名的客户端和服务端两方不泄露各自私钥的情况下协同完成签名过程,由于签名过程必须要双方同时参与,且签名过程中不需要恢复完整的私钥,保证了客户端和服务端两方的私钥的安全性,此外,由于服务端参与了部分签名过程,因而可以利用服务端的处理优势提高签名效率及质量。另一方面,参与解密的客户端和服务端两方不泄露各自私钥的情况下协同完成解密过程,由于解密过程必须要双方同时参与,且解密过程中不需要恢复完整的私钥,保证了客户端和服务端两方的私钥的安全性,此外,由于服务端参与了部分解密过程,因而可以利用服务端的处理优势提高解密效率及质量。
附图说明
[0028]图1为本申请实施例提供的协同签名方法的实现流程示意图一;
[0029]图2为本申请实施例提供的协商公钥方法的实现流程示意图一;
[0030]图3为本申请实施例提供的协同解密方法的实现流程示意图一;
[0031]图4为本申请实施例提供的协商公钥方法的实现流程示意图二;
[0032]图5为本申请实施例提供的协同签名方法的实现流程示意图二;
[0033]图6为本申请实施例提供的协同解密方法的实现流程示意图二;
[0034]图7为本申请实施例提供的协同签名装置的结构组成示意图;
[0035]图8为本申请实施例提供的协同解密装置的结构组成示意图;
[0036]图9本申请实施例提供的电子设备的结构示意图。
具体实施方式
[0037]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0038]在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
[0039]数字签名机制作为保障网络信息安全的手段之一,可以解决伪造、抵赖、冒充和篡改问题。当前证券行业网上交易系统使用智能密码钥匙(Ukey)储存密钥信息,需要签名时,通过调用智能密码钥匙的硬件驱动完成签名运算。用户的私钥不能泄露,需要始终保存在客户手中,是智能密码钥匙保障的核心。
[0040]针对证券行业交易频繁,实时性要求高的业务,用户需要随身携带硬件介质,例如智能密码钥匙(Ukey),需要签名时,通过调用智能密码钥匙的硬件驱动完成签名运算。然而,这种签名方式具有操作不便捷,携带不方便,易丢失,硬件成本高等缺点。另外,随着移动互联网的普及,移动交易占比证券网交易逐步升高,传统的智能密码钥匙的硬件设备大部分是通用串行总线(Universal Serial Bus,USB)接口,无法和移动设备兼容,普及难度较大。
[0041]基于此,本申请实施例提供了一种协同签名和解密方法、装置、电子设备和存储介质。
[0042]本申请实施例的技术方案提出一种新型的SM2签名方法和SM2解密方法。其中,新型的SM2签名方法属于一种协同签名方法,即需要客户端和服务器端双方共同参与的签名方法,新型的SM2签名本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种协同解密方法,其特征在于,所述方法包括:客户端将密文中的第一目标数据发送给服务端,由所述服务端对所述第一目标数据进行第一部分解密处理并得到第一解密结果;其中,所述密文由明文通过协同公钥进行加密得到,所述密文由以下数据组成:第一目标数据、第二目标数据和第三目标数据;所述客户端对所述密文中的第一目标数据进行第二部分解密处理并得到第二解密结果;所述客户端接收所述服务端发送的第一解密结果,并基于所述第一解密结果和所述第二解密结果,计算协同解密结果;所述客户端基于所述协同解密结果计算派生密钥,并基于所述派生密钥对所述密文中的第二目标数据进行解密,得到所述密文对应的明文。2.根据权利要求1所述的方法,其特征在于,所述第一解密结果通过以下公式表示:T1=(D2
⊕
U2)[*]C1;其中,T1表示第一解密结果,D2
⊕
U2表示服务端侧的第二私钥,C1表示第一目标数据,[*]表示点乘运算;所述第二解密结果通过以下公式表示:T2=(D1
⊕
U1)[*]C1;其中,T2表示第二解密结果,D1
⊕
U1表示客户端侧的第一私钥,C1表示第一目标数据,[*]表示点乘运算。3.根据权利要求2所述的方法,其特征在于,所述客户端接收所述服务端发送的第一解密结果,并基于所述第一解密结果和所述第二解密结果,计算协同解密结果,包括:所述客户端基于以下公式计算协同解密结果:(x2,y2)=T1+T2+(D1
⊕
U1)[*]T1;其中,(x2,y2)表示协同解密结果,T1表示第一解密结果,T2表示第二解密结果,D1
⊕
U1表示客户端侧的第一私钥,[*]表示点乘运算。4.根据权利要求3所述的方法,其特征在于,所述客户端基于所述协同解密结果计算派生密钥,并基于所述派生密钥对所述密文中的第二目标数据进行解密,得到所述密文对应的明文,包括:所述客户端基于以下公式计算派生密钥:t=KDF(x2||y2,klen);其中,t表示派生密钥,KDF表示密钥派生函数,||表示拼接符号,x2表示协同解密结果的横坐标,y2表示协同解密结果的纵坐标,klen表示派生密钥的长度;所述客户端基于以下公式计算密文对应的明文:M`=C2
⊕
t,其中,M`表示密文对应的明文,C2表示密文中的第二目标数据,
⊕
表示异或运算。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:所述客户端基于所述客户端的第一设备信息和第一目标随机数,生成所述客户端侧的第一私钥,所述客户端侧的第一私钥表示为U1
⊕
D1,其中,U1表示客户端的第一设备信息,D1表示第一目标随机数;所述客户端基于所述第一私钥和基点,计算所述客户端侧的第一公钥...
【专利技术属性】
技术研发人员:冯飞龙,郭昕,石吉东,
申请(专利权)人:浙江同花顺智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。