本申请涉及信息安全,特别是涉及一种随机数生成方法、装置、计算机设备和存储介质。
背景技术:
1、随着互联网的快速发展,动态口令认证系统应运而生,以满足运营商、金融机构等企业在身份安全认证方面的日益增长的需求。这些需求集中在网银身份认证、网游身份认证、移动支付身份认证、企业内部登录认证、以及电信自营业务身份认证等领域。动态口令认证系统的出现提高了对用户身份安全的保障,帮助企业有效防范身份盗窃和信息泄露的风险,同时也促进了互联网应用的安全和可靠性。
2、传统技术中,大多采用为随机数生成算法,用于产生看起来具有随机性的数据序列。然后采用生成的数据序列用于生成加密密钥或认证口令等,以保护数据的安全性。
3、然而,传统技术中,伪随机数生成算法通常基于确定性的数学计算或固定的种子,这使得算法的输出在一定程度上是可预测的。当攻击者获得了一部分随机数序列的信息,就有可能推断出接下来的随机数,从而加剧了安全风险。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够提高数据随机性、提高数据安全性的随机数生成方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本申请提供了一种随机数生成方法,包括:
3、根据待处理项目相关数据和加密机响应数据确定目标编码数据;
4、根据预设密码杂凑算法对编码数据进行数据转换,获得编码特征序列;
5、根据预设提取指标、编码特征序列和预设字符数据进行多次运算处理,获得目标多位随机数。
6、在其中一个实施例中,根据待处理项目相关数据和加密机响应数据确定目标编码数据,包括:
7、在接收项目响应请求时,发送加密机响应请求并记录加密机响应时长;其中,项目响应请求包括待处理项目相关数据;
8、将加密机响应时长与预设加密机响应阈值进行比较,获得响应比较结果;
9、基于响应比较结果和待处理项目相关数据确定目标编码数据。
10、在其中一个实施例中,基于响应比较结果和待处理项目相关数据确定目标编码数据,包括:
11、当响应比较结果为在预设加密机响应阈值内获得响应反馈数据时,结束加密机响应时长的记录;
12、对待处理项目相关数据和响应反馈数据进行数据预处理,获得第一目标编码数据;其中,待处理项目相关数据包括待处理项目数据及其对应时间戳数据,响应反馈数据包括随机数据;
13、当响应比较结果为加密机响应时长超过预设加密机响应阈值时,对待处理项目相关数据进行数据预处理,获得第二目标编码数据。
14、在其中一个实施例中,根据预设密码杂凑算法对目标编码数据进行数据转换,获得编码特征序列,包括:
15、根据所述预设密码杂凑算法对所述目标编码数据进行数据预处理,获得预处理编码数据;
16、基于预设随机函数对所述预处理编码数据进行数据提取,获得编码特征序列。
17、在其中一个实施例中,根据预设提取指标、编码特征序列和预设字符数据进行多次运算处理,获得目标多位随机数,包括:
18、根据已运算次数与预设运算处理阈值进行运算执行判断,获得执行判断结果;
19、当执行判断结果为已运算次数未超过预设运算处理阈值,基于预设随机数生成函数确定当前运算的序列提取位置;
20、根据当前运算的序列提取位置、预设提取指标、编码特征序列和预设字符数据进行多次运算处理,获得当前运算的目标随机字符并更新已运算次数;
21、直至更新后的已运算次数等于预设运算处理阈值,基于获取顺序对多个目标随机字符进行排序,获得目标多位随机数。
22、在其中一个实施例中,根据当前运算的序列提取位置、编码特征序列和预设字符数据进行多次运算处理,获得当前运算的目标随机字符并更新已运算次数,包括:
23、根据当前运算的序列提取位置和预设提取长度对编码特征序列进行数据提取,获得当前运算的目标部分序列;
24、基于预设数据处理算法对当前运算的目标部分序列进行运算处理,获得目标索引数据;
25、根据目标索引数据、预设映射关系和预设字典表确定目标随机字符,并更新当前已运算次数。
26、第二方面,本申请还提供了一种随机数生成装置,包括:
27、编码选取模块,用于根据待处理项目相关数据和加密机响应数据确定目标编码数据;
28、数据处理模块,用于根据预设密码杂凑算法对编码数据进行数据转换,获得编码特征序列;
29、字符生成模块,用于根据预设提取指标、编码特征序列和预设字符数据进行多次运算处理,获得目标多位随机数。
30、第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
31、根据待处理项目相关数据和加密机响应数据确定目标编码数据;
32、根据预设密码杂凑算法对编码数据进行数据转换,获得编码特征序列;
33、根据预设提取指标、编码特征序列和预设字典表进行多次运算处理,获得目标多位随机数。
34、第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
35、根据待处理项目相关数据和加密机响应数据确定目标编码数据;
36、根据预设密码杂凑算法对编码数据进行数据转换,获得编码特征序列;
37、根据预设提取指标、编码特征序列和预设字符数据进行多次运算处理,获得目标多位随机数。
38、第五方面,本申请还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
39、根据待处理项目相关数据和加密机响应数据确定目标编码数据;
40、根据预设密码杂凑算法对编码数据进行数据转换,获得编码特征序列;
41、根据预设提取指标、编码特征序列和预设字符数据进行多次运算处理,获得目标多位随机数。
42、上述随机数生成方法、装置、计算机设备、存储介质和计算机程序产品,在接收到项目响应请求时,从项目响应请求中提取待处理项目相关数据,再结合加密机响应数据进行数据处理得到用于生成待处理项目对应随机数的编码特征序列,从编码特征序列中随机获取一定长度的部分序列,对获取的部分序列转换为整数,对转化后整数运算处理得到查询索引,并在预设字典表中查找对应字符,经过多次循环操作后,得到一定长度的随机数,能够就不同项目需求生成具有随机性、不可推测性和不可重复性的随机数,并且可以基于加密机响应数据选择效率更高的随机数生成方式,避免发生硬件加密机响应慢等特殊情况造成前端应用线程池占用,从而保障服务高可用性。
1.一种随机数生成方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述根据待处理项目相关数据和加密机响应数据确定目标编码数据,包括:
3.根据权利要求2所述的方法,其特征在于,所述加密机响应数据包括响应反馈数据;所述基于所述响应比较结果和所述待处理项目相关数据确定目标编码数据,包括:
4.根据权利要求1所述的方法,其特征在于,所述根据预设密码杂凑算法对所述目标编码数据进行数据转换,获得编码特征序列,包括:
5.根据权利要求1所述的方法,其特征在于,所述根据预设提取指标、所述编码特征序列和预设字符数据进行多次运算处理,获得目标多位随机数,包括:
6.根据权利要求5所述的方法,其特征在于,所述预设提取指标包括预设提取长度;所述预设字符数据包括预设映射关系和预设字典表;根据所述当前运算的序列提取位置、所述编码特征序列和预设字符数据进行多次运算处理,获得当前运算的目标随机字符并更新已运算次数,包括:
7.一种随机数生成装置,其特征在于,所述装置包括:
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。