【技术实现步骤摘要】
RSA密钥生成方法、计算机设备及介质本申请是于2017年12月27日提交中国专利局,申请号为2017114477448,专利技术名称为“RSA模数生成方法、RSA密钥生成方法、计算机设备及介质”的分案申请,其全部内容通过引用结合在本申请中。
本专利技术涉及密码学
,特别是涉及一种RSA模数生成方法、RSA密钥生成方法、计算机设备和计算机存储介质。
技术介绍
RSA分布式密钥托管通过在托管平台和客户端分别存储RSA私钥的分量,并要求客户端与托管平台协同执行RSA签名生成操作,以防止密钥托管机构滥用权力。为了确保分布式托管的私钥安全,在生成私钥的阶段就要求两个或多个参与方通过执行安全多方计算协议来产生私钥分量,而不能有任何一个参与方获得完整的RSA私钥。RSA私钥的生成,需要获得一个模数N,该模数N必须是两个素数P和Q的乘积。如何通过安全计算协议来获得满足条件的N成为分布式生成RSA私钥的关键技术。而目前的计算模数N的方案,需要消耗大量运算资源,导致效率低下。根据实际测试,对于1024比特的RSA模数平均需要1小时才能计算出一组RSA私钥。而对于2048比特的RSA模数,大约需要1~2天才能够计算出一组RSA私钥,显然并不具有工程实用价值。
技术实现思路
基于此,有必要提供一种RSA模数生成方法、RSA密钥生成方法、计算机设备和计算机存储介质。一种RSA模数生成方法,所述方法包括:当前参与方产生第一长度随机数,第二长度随机数;当前参与方与对端参与方执行乘法转加法协 ...
【技术保护点】
1.一种RSA私钥生成方法,其特征在于,包括步骤:/n当前参与方获得素数一当前参与方分量、素数二当前参与方分量,其中素数一当前参与方分量与对端参与方获得的素数一对端参与方分量共享素数一,素数二当前参与方分量与对端参与方获得的素数二对端参与方分量共享素数二;/n当前参与方根据素数一当前参与方分量、素数二当前参与方分量与对端参与方共享欧拉函数值,获得第一欧拉函数分量;/n当前参与方基于选择的第一选择随机数、第二选择随机数,与对端参与方执行安全点积协议,获得第三点积协议分量;/n当前参与方基于第三点积协议分量、第一选择随机数、第一欧拉函数分量、第二选择随机数以及公开指数,确定第一共享参数分量;/n当前参与方与对端参与方交换第一共享参数分量和对端参与方确定的第二共享参数分量后,确定第一整数和第二整数,其中,第一共享参数分量与第二共享参数分量的和值与第一整数的第一乘积,与第二整数与所述公开指数的第二乘积的和值为预设整数;/n当前参与方根据第一整数和第二整数,确定第一RSA私钥分量。/n
【技术特征摘要】
1.一种RSA私钥生成方法,其特征在于,包括步骤:
当前参与方获得素数一当前参与方分量、素数二当前参与方分量,其中素数一当前参与方分量与对端参与方获得的素数一对端参与方分量共享素数一,素数二当前参与方分量与对端参与方获得的素数二对端参与方分量共享素数二;
当前参与方根据素数一当前参与方分量、素数二当前参与方分量与对端参与方共享欧拉函数值,获得第一欧拉函数分量;
当前参与方基于选择的第一选择随机数、第二选择随机数,与对端参与方执行安全点积协议,获得第三点积协议分量;
当前参与方基于第三点积协议分量、第一选择随机数、第一欧拉函数分量、第二选择随机数以及公开指数,确定第一共享参数分量;
当前参与方与对端参与方交换第一共享参数分量和对端参与方确定的第二共享参数分量后,确定第一整数和第二整数,其中,第一共享参数分量与第二共享参数分量的和值与第一整数的第一乘积,与第二整数与所述公开指数的第二乘积的和值为预设整数;
当前参与方根据第一整数和第二整数,确定第一RSA私钥分量。
2.根据权利要求1所述的方法,其特征在于,当前参与方基于选择的第一选择随机数、第二选择随机数,与对端参与方执行安全点积协议,获得第三点积协议分量的步骤包括:
当前参与方随机生成随机参数;
当前参与方以选择的第一选择随机数、第二选择随机数以及所述随机参数构建当前参与方点积输入向量,与所述对端参与方执行安全点积协议,获得第三点积协议分量。
3.根据权利要求1或2所述的方法,其特征在于,在当前参与方确定第一RSA私钥分量之后,还包括步骤:
当前参与方接收对端参与方发送的差值,所述差值为所述对端参与方确定的第二RSA私钥分量和对端参与方私钥分量的差值;
当前参与方根据所述第一RSA私钥分量和所述差值确定当前参与方私钥分量。
4.根据权利要求1或2所述的方法,其特征在于,当前参与方确定第一RSA私钥分量之后,还包括步骤:
当前参与方根据设备ID和用户口令计算出与RSA私钥分量相关的敏感参数;
当前参与方根据所述敏感参数、第一RSA私钥分量派生出所述当前参与方私钥分量。
5.根据权利要求1或2所述的方法,其特征在于,在当前参与方为服务器时,当前参与方确定第一RSA私钥分量之后,还包括步骤:
当前参与方将第五随机数作为当前参与方私钥分量;
当前参与方确定所述第一RSA私钥分量和所述当前参与方私钥分量的差值,并将该差值发送给所述对端参与方;所述差值用于指示所述对端参与方根据所述差值和所述对端参与方确定的第一RSA私钥分量确定第一参与方私钥分量。
6.一种RSA私钥生成方法,其特征在于,包括步骤:
第一参与方获得素数一第一分量、素数二第一分量,第二参与方获得素数一第二分量、素数二第二分量;素数一第一分量与素数一第二分量共享素数一,素数二第一分量与素数二第二分量共享素数二;
第一参与方与第二参与方根...
【专利技术属性】
技术研发人员:张永强,
申请(专利权)人:数安时代科技股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。