本发明涉及信息安全,更具体的说是涉及一种基于三方联动的密码安全认证方法、系统及存储介质。
背景技术:
1、在公钥密码体制中,椭圆曲线加密ecc凭借其高安全性、密钥量小、灵活性好等优势,成为了网络安全、物联网、射频、区块链等新兴技术领域的研究热点之一。其中,sm2椭圆曲线公钥密码算法作为ecc加密的一种延展算法,具备ecc算法在同等安全等级下密钥量更小的优势。因此,sm2算法被广泛应用于软件与技术的加解密、数字签名等领域。
2、sm2数字签名算法为国家密码管理部门发布的密码算法之一,该算法最耗时的计算是点乘(或称标量乘),即一个大数与椭圆曲线上的点相乘。由于点乘的复杂,造成了运算时间过长、内存占用过高的问题,因此如何解决上述问题是本领域技术人员亟需解决的问题。
技术实现思路
1、有鉴于此,本发明提供了一种基于三方联动的密码安全认证方法、系统及存储介质,克服上述缺陷。
2、为了实现上述目的,本发明提供如下技术方案:
3、一种基于三方联动的密码安全认证方法,具体步骤为:
4、客户端app接收外置终端设备的安全密码;
5、客户端app将安全密码发送至服务器,并接收服务器返回的第一签名s1;
6、客户端app将第一签名s1发送至外置终端设备,并接收外置终端设备返回的第二签名s2;
7、客户端app将第二签名s2发送至服务器,并接收服务器返回的认证结果;
8、客户端app根据认证结果执行对应操作。
9、可选的,第一签名s1的获得步骤为:
10、预处理:对待签名数据进行预处理,获取预处理结果;
11、性能优化:对预处理结果进行映射后,进行模运算优化处理和压缩函数优化处理;
12、获取签名:根据预处理结果,利用sm2标准签名算法获得第一签名s1。
13、可选的,预处理结果包括公钥、私钥、压缩函数sm3预计算与查找表的预处理结果。
14、可选的,私钥的预处理步骤为:获取多个随机数,利用同态加密算法对多个随机数进行加密获得第一私钥。
15、可选的,第二签名s2的获取步骤为:
16、对第一签名s1采用二进制展开法进行解密,获得安全密码;
17、对安全密码进行认证,获取认证结果;
18、根据第二标准参数利用sm2标准签名算法对第二待签名数据进行签名,获得第二签名s2。
19、可选的,第二待签名数据包括认证结果、第一签名s1、安全密码。
20、可选的,认证结果的获取步骤为:
21、对第二签名s2进行解密,获得解密数据;
22、将解密数据与发送数据进行比较,若相同,则获取认证结果;若不同,则客户端app发送告警信息。
23、可选的,客户端app根据认证结果执行对应操作的具体步骤为:
24、若获得认证结果,则按照输入信息进行相应操作;
25、若获得告警信息,则重新向服务器发送安全密码。
26、一种基于三方联动的密码安全认证系统,包括:
27、预处理模块:待签名数据进行预处理,获取预处理结果;
28、第一签名模块:根据预处理结果输出第一签名s1;
29、第一验签模块:对第一签名s1进行解密,获得外置终端设备的安全密码;
30、第一认证模块:对安全密码进行认证,输出第一认证结果;
31、第二签名模块:根据第一认证结果、第一签名s1、安全密码输出第二签名s2;
32、第二验签模块:对第二签名s2进行解密,获得第一认证结果、第一签名s1、安全密码;
33、第二认证模块:对第一签名s1、安全密码进行认证,输出第二认证结果;
34、客户端app:根据第二认证结果执行对应操作。
35、一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现基于三方联动的密码安全认证方法。
36、经由上述的技术方案可知,与现有技术相比,本发明公开了一种基于三方联动的密码安全认证方法、系统及存储介质,通过三方联动的密码认证方式,增强了信息传输的安全性;通过预先运算以及非邻近形式值的应用,减少了签名及验证的时间,加快了签名及验证的速度。
1.一种基于三方联动的密码安全认证方法,其特征在于,具体步骤为:
2.根据权利要求1所述的一种基于三方联动的密码安全认证方法,其特征在于,第一签名s1的获得步骤为:
3.根据权利要求2所述的一种基于三方联动的密码安全认证方法,其特征在于,预处理结果包括公钥、私钥、压缩函数sm3预计算与查找表的预处理结果。
4.根据权利要求3所述的一种基于三方联动的密码安全认证方法,其特征在于,私钥的预处理步骤为:获取多个随机数,利用同态加密算法对多个随机数进行加密获得第一私钥。
5.根据权利要求1所述的一种基于三方联动的密码安全认证方法,其特征在于,第二签名s2的获取步骤为:
6.根据权利要求5所述的一种基于三方联动的密码安全认证方法,其特征在于,第二待签名数据包括认证结果、第一签名s1、安全密码。
7.根据权利要求1所述的一种基于三方联动的密码安全认证方法,其特征在于,认证结果的获取步骤为:
8.根据权利要求1所述的一种基于三方联动的密码安全认证方法,其特征在于,客户端app根据认证结果执行对应操作的具体步骤为:
9.一种基于三方联动的密码安全认证系统,其特征在于,包括:
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~8任一项所述基于三方联动的密码安全认证方法。