私钥生成方法、签名方法和签名验证方法技术

技术编号:38418929 阅读:20 留言:0更新日期:2023-08-07 11:20
本发明专利技术提供一种私钥生成方法、签名方法和签名验证方法。私钥生成方法,包括:获取移动端的原始私钥和针对所述移动端的Z算法实例;基于所述Z算法实例,结合预设实时参数,利用预设参数算法,生成指定参数;根据所述原始私钥和指定参数,利用预设私钥算法,生成目标私钥。根据本发明专利技术的方法,对原始私钥进行加密保护,移动端仅保存加密保护后的目标私钥。动端仅保存加密保护后的目标私钥。动端仅保存加密保护后的目标私钥。

【技术实现步骤摘要】
私钥生成方法、签名方法和签名验证方法


[0001]本专利技术涉及通信
,尤其涉及一种私钥生成方法、签名方法和签名验证方法。

技术介绍

[0002]PKI(Public Key Infrastructure,公钥基础设施)体系经历近30年的发展,已经充分满足了传统的固定封闭环境下的安全需求。但由于其核心还是建立在硬件和黑盒机制之上,在面对移动互联时代开放透明的“零信任”场景时,受到了密码机制、安全机制、安全体系的全方位挑战。PKI协同机制虽在一定程度上缓解了该问题,但由于其机制单一、视角局限,不可能从根本上解决PKI机制的缺陷。而从当前落地实践来看,采用相关机制的产品方案无论是从案例数量、典型性、商用规模等方面,均很难实现多场景、全方位、大规模的应用价值。
[0003]数字签名算法本身的安全性可由数学理论保证,但其使用安全性的问题从未完全得到解决,安全隐患一直伴随着。其中,如何保证私钥的安全性就是一个难题。用户在移动端设备上进行数字签名时,需要使用自身私钥进行计算,那么私钥的存储就存在安全隐患,一旦攻击者控制了移动端,就可以获得用户私钥,从而具备伪造签名的全部能力。相关技术中,通过外接的硬件保护用户私钥安全的方法,能够实现私钥的安全保存,但使用起来十分不便。
[0004]因此,需要一种新的私钥保护方法,来保证用户私钥的安全性。

技术实现思路

[0005]本专利技术的主要目的是提供一种私钥生成方法、签名方法和签名验证方法,以保证用户私钥的安全性。
[0006]第一方面,本专利技术提供一种私钥生成方法,应用于移动端或Z算法认证端,包括:获取移动端的原始私钥和针对移动端的Z算法实例;基于Z算法实例,结合预设实时参数,利用预设参数算法,生成指定参数;根据原始私钥和指定参数,利用预设私钥算法,生成目标私钥。
[0007]在一个实施例中,获取移动端的原始私钥,包括:获取基于非对称加密算法生成的移动端的原始私钥,其中,非对称加密算法包括SM2算法。
[0008]在一个实施例中,获取针对移动端的Z算法实例,包括:从Z算法认证端获取针对移动端的Z算法实例。
[0009]在一个实施例中,预设实时参数包括以下至少一个:移动端的用户ID、用户口令、当前时间戳和移动端的设备标识。
[0010]在一个实施例中,预设私钥算法包括以下至少一个:加法运算和乘法运算。
[0011]第二方面,本专利技术提供一种签名方法,应用于移动端,包括:利用如上文所述的私钥生成方法生成目标私钥;利用目标私钥对待签名数据进行签名以生成数据签名,并将数
据签名、预设私钥算法和移动端的原始公钥打包成数据包或将数据签名、预设私钥算法、指定参数和移动端的原始公钥打包成数据包,将数据包发送给服务端,以使服务端对数据签名进行验证。
[0012]在一个实施例中,在利用如上文所述的私钥生成方法生成目标私钥之前,该方法还包括:向服务端发送连接请求,其中,连接请求包括移动端身份信息,以使服务端将移动端身份信息转发给Z算法认证端以及由Z算法认证端根据移动端身份信息生成针对移动端的Z算法实例;接收服务端转发来的Z算法实例。
[0013]在一个实施例中,在获取到针对移动端的Z算法实例之后,且在生成指定参数之前,该方法还包括:向服务端发送通信请求,并接收服务端反馈的挑战值,其中,通信请求包括预设实时参数。
[0014]在一个实施例中,基于Z算法实例,结合预设实时参数,利用预设参数算法,生成指定参数,包括:基于Z算法实例,结合预设实时参数和服务端反馈的挑战值,利用预设参数算法,生成指定参数。
[0015]在一个实施例中,基于Z算法实例,结合预设实时参数和服务端反馈的挑战值,利用预设参数算法,生成指定参数,包括:基于Z算法实例,根据用户口令、移动端的设备标识和服务端反馈的挑战值,利用预设参数算法,生成指定参数。
[0016]在一个实施例中,在接收到服务端反馈的挑战值之后,且在生成指定参数之前,该方法还包括:基于Z算法实例,根据挑战值和预设实时参数,按照预设认证算法,与服务端之间进行双向认证,并向服务端反馈双向认证是否通过的结果信息,在双向认证通过之后,再基于Z算法实例,结合预设实时参数,利用预设参数算法,生成指定参数。
[0017]在一个实施例中,在将数据包发送给服务端之后,该方法还包括:销毁目标私钥和指定参数。
[0018]第三方面,本专利技术提供一种签名验证方法,应用于服务端,包括:接收移动端发来的数据包;当数据包中包含数据签名、预设私钥算法、指定参数和移动端的原始公钥时,根据预设私钥算法确定相应的公钥算法,以及根据指定参数和移动端的原始公钥,利用公钥算法,生成目标公钥;利用目标公钥对数据签名进行验证,并向移动端反馈验证结果。
[0019]在一个实施例中,该方法还包括:接收移动端发来的连接请求,其中,连接请求包括移动端身份信息,并将移动端身份信息转发给Z算法认证端,以使Z算法认证端根据移动端身份信息生成针对移动端的Z算法实例;接收Z算法认证端发来的针对移动端的Z算法实例,并将Z算法实例转发给移动端。
[0020]在一个实施例中,该方法还包括:接收移动端发来的通信请求,并向移动端反馈挑战值,其中,通信请求包括预设实时参数,以使移动端基于Z算法实例,结合预设实时参数和挑战值,利用预设参数算法,生成指定参数;其中,预设实时参数包括以下至少一个:移动端的用户ID、用户口令、当前时间戳和移动端的设备标识。
[0021]在一个实施例中,在向移动端反馈挑战值之后,该方法还包括:基于Z算法实例,根据挑战值和预设实时参数,按照预设认证算法,与移动端之间进行双向认证,并向移动端反馈双向认证是否通过的结果信息。
[0022]在一个实施例中,当数据包中包含数据签名、预设私钥算法和移动端的原始公钥时,在向移动端反馈挑战值之后或当与移动端之间进行双向认证通过时,该方法还包括:基
于Z算法实例,结合预设实时参数和挑战值,利用预设参数算法,生成指定参数。
[0023]在一个实施例中,基于Z算法实例,结合预设实时参数和挑战值,利用预设参数算法,生成指定参数,包括:基于Z算法实例,根据挑战值、移动端的用户口令和移动端的设备标识,利用预设参数算法,生成指定参数。
[0024]第四方面,本专利技术提供一种移动端,包括:存储器和处理器,存储器中存储有计算机程序,当计算机程序被处理器执行时,执行如上文所述的私钥生成方法的步骤或如上文所述的签名方法的步骤。
[0025]第五方面,本专利技术提供一种Z算法认证端,包括:存储器和处理器,存储器中存储有计算机程序,当计算机程序被处理器执行时,执行如上文所述的私钥生成方法的步骤。
[0026]第六方面,本专利技术提供一种服务端,包括:存储器和处理器,存储器中存储有计算机程序,当计算机程序被处理器执行时,执行如上文所述的签名验证方法的步骤。
[0027]第七方面,本专利技术提供一种加密系统,包括如上文所述的移动端、如上文所述的Z算法认证端以及如上本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种私钥生成方法,其特征在于,应用于移动端或Z算法认证端,包括:获取移动端的原始私钥和针对所述移动端的Z算法实例;基于所述Z算法实例,结合预设实时参数,利用预设参数算法,生成指定参数;根据所述原始私钥和指定参数,利用预设私钥算法,生成目标私钥。2.根据权利要求1所述的私钥生成方法,其特征在于,获取移动端的原始私钥,包括:获取基于非对称加密算法生成的移动端的原始私钥,其中,所述非对称加密算法包括SM2算法。3.根据权利要求1所述的私钥生成方法,其特征在于,获取针对所述移动端的Z算法实例,包括:从Z算法认证端获取针对所述移动端的Z算法实例。4.根据权利要求1所述的私钥生成方法,其特征在于,所述预设实时参数包括以下至少一个:移动端的用户ID、用户口令、当前时间戳和移动端的设备标识。5.根据权利要求1所述的私钥生成方法,其特征在于,所述预设私钥算法包括加法运算。6.一种签名方法,其特征在于,应用于移动端,包括:利用如权利要求1至5中任一项所述的私钥生成方法生成目标私钥;利用所述目标私钥对待签名数据进行签名以生成数据签名,并将所述数据签名、所述预设私钥算法和移动端的原始公钥打包成数据包或将所述数据签名、所述预设私钥算法、所述指定参数和移动端的原始公钥打包成数据包,将所述数据包发送给服务端,以使服务端对所述数据签名进行验证。7.根据权利要求6所述的签名方法,其特征在于,在利用如权利要求1至5中任一项所述的私钥生成方法生成目标私钥之前,所述方法还包括:向服务端发送连接请求,其中,所述连接请求包括移动端身份信息,以使服务端将所述移动端身份信息转发给Z算法认证端以及由Z算法认证端根据所述移动端身份信息生成针对移动端的Z算法实例;接收服务端转发来的所述Z算法实例。8.根据权利要求6所述的签名方法,其特征在于,在获取到针对所述移动端的Z算法实例之后,且在生成指定参数之前,所述方法还包括:向服务端发送通信请求,并接收服务端反馈的挑战值,其中,所述通信请求包括预设实时参数。9.根据权利要求8所述的签名方法,其特征在于,基于所述Z算法实例,结合预设实时参数,利用预设参数算法,生成指定参数,包括:基于所述Z算法实例,结合预设实时参数和服务端反馈的挑战值,利用预设参数算法,生成指定参数。10.根据权利要求9所述的签名方法,其特征在于,基于所述Z算法实例,结合预设实时参数和服务端反馈的挑战值,利用预设参数算法,生成指定参数,包括:基于所述Z算法实例,根据用户口令、移动端的设备标识和服务端反馈的挑战值,利用预设参数算法,生成指定参数。11.根据权利要求8至10中任一项所述的签名方法,其特征在于,在接收到服务端反馈
的挑战值之后,且在生成指定参数之前,所述方法还包括:基于所述Z算法实例,根据所述挑战值和预设实时参数,按照预设认证算法,与服务端之间进行双向认证,并向服务端反馈所述双向认证是否通过的结果信息,在所述双向认证通过之后,再基于所述Z算法实例,结合预设实时参数,利用预设参数算法,生成指定参数。12.根据权利要求6所述的签名方法,其特征在于,在将所述数据包发送给服务端之后,所述方法还包括:销毁所述目标私钥和指定参数。13.一种签名验证方法,其特征在于,应用于...

【专利技术属性】
技术研发人员:杨超明杨德光
申请(专利权)人:海量安全技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1