一种种子生成方法及其设备技术

技术编号:20049552 阅读:42 留言:0更新日期:2019-01-09 05:42
本发明专利技术实施例公开一种种子生成方法及其设备,其中方法包括如下步骤:获取算法密钥,并根据所述算法密钥和种子算法组生成目标种子算法序列,然后获取输入的种子生成数据,最后将所述种子生成数据输入所述目标种子算法序列,生成所述种子生成数据对应的种子。具体实现中目标种子算法采用种子选择算法生成,种子选择算法输入算法密钥,计算轮次,目标种子算法组,输出当前计算轮次采用的目标种子算法,所有的计算轮次的目标种子算法组合为目标种子算法序列。采用本发明专利技术,通过目标种子算法序列生成种子,可以增加第三方通过种子生成数据碰撞出种子的计算复杂度,进而可以提高种子的安全性。

【技术实现步骤摘要】
一种种子生成方法及其设备
本专利技术涉及互联网
,尤其涉及一种种子生成和恢复的方法及其设备。
技术介绍
在互联网
,使用非对称算法进行数字签名,保证传输信息的完整性,确定发送者的身份认证,防止信息以及基于信息的交易的抵赖。在这过程中,非对称算法的公钥可以对外公开,私钥必须由本人保存,不得泄露和丢失,因此安全地生成、备份和管理密钥尤为重要。现有技术中,通过种子生成数据(助记单词和助记单词密码)生成和备份种子,并通过种子生成不同用途的子密钥,例如,现有数字货币中,已经使用BIP39规范使用抄录的助记单词来生成和备份种子,在保存种子的软件/硬件损坏或丢失时,可以使用助记单词恢复出种子,上述规范也建议增加用户设置并记忆在大脑中的助记单词密码避免助记单词被窃取或者偷窥时种子被知悉。然而,用户选择的助记单词密码有一定的规律性,第三方在获取明文保存的助记单词之后可以使用密钥词典进行碰撞,现有的高性能计算机和云计算具有极强的碰撞能力,可以完成每秒十万甚至更快的碰撞,从而降低了种子安全性。
技术实现思路
本专利技术实施例提供一种种子生成方法及其设备,通过目标种子算法序列生成种子,可以增加第三方通过部分种子生成数据恢复种子的计算复杂度,进而可以提高种子的安全性。本专利技术实施例第一方面提供了一种种子生成方法,可包括:获取算法密钥,并根据所述算法密钥和种子算法组生成目标种子算法序列;获取输入的种子生成数据;将所述种子生成数据输入所述目标种子算法序列,生成所述种子生成数据对应的种子。本专利技术实施例第二方面提供了一种种子生成设备,可包括:序列生成模块,用于获取算法密钥,并根据所述算法密钥和种子算法组生成目标种子算法序列;生成数据获取模块,用于获取输入的种子生成数据;种子生成模块,用于将所述种子生成数据输入所述目标种子算法序列,生成所述种子生成数据对应的种子。在本专利技术实施例中,通过获取算法密钥,并根据算法密钥和种子算法组生成目标种子算法序列,再获取输入的种子生成数据,最后将种子生成数据输入目标种子算法序列,生成种子生成数据对应的种子。通过由算法密钥保护的目标种子算法序列生成种子,增加了第三方通过部分种子生成数据,碰撞出种子的计算复杂度,进而提高了种子的安全性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种种子生成方法的流程示意图;图2是本专利技术实施例提供的另一种种子生成方法的流程示意图;图3是本专利技术实施例提供的另一种种子生成方法的流程示意图;图4是本专利技术实施例提供的一种种子生成系统架构图;图5是本专利技术实施例提供的另一种种子生成系统架构图;图6是本专利技术实施例提供的一种种子生成设备的结构示意图;图7是本专利技术实施例提供的又一种种子生成设备的结构示意图;图8是本专利技术实施例提供的又一种种子生成设备的结构示意图;图9是本专利技术实施例提供的又一种种子生成设备的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供的种子生成方法可以应用于数字资产安全环节中确保种子安全性的应用场景中,例如:种子生成设备获取算法密钥,并根据所述算法密钥和种子算法组生成目标种子算法序列,然后获取输入的种子生成数据,最后将所述种子生成数据输入所述目标种子算法序列,生成所述种子生成数据对应的种子。通过由算法密钥保护的目标种子算法序列生成种子,增加了第三方通过部分种子生成数据碰撞出种子的计算复杂度,进而提高种子的安全性。本专利技术实施例涉及的种子生成设备可以是任何具备代码执行功能以及数据输出和显示等功能的终端设备,例如,单片机,可编程逻辑控制器PLC等。下面将结合附图1-附图5,对本专利技术实施例提供的种子生成方法进行详细介绍。请参见图1,为本专利技术实施例提供了一种种子生成方法的流程示意图。如图1所示,本专利技术实施例的所述方法可以包括以下步骤S101-步骤S103。S101,获取算法密钥,并根据所述算法密钥和种子算法组生成目标种子算法序列。可以理解的是,种子生成设备在生产阶段中可以基于上位机的控制指令存储算法密钥,例如,当所述种子生成设备接收到保存算法密钥的指令时,将上位机给出的加密并签名的算法密钥按照约定的算法和方法进行验证和解密,当验证成功之后将算法密钥保存到硬件的安全存储单元中。具体的,所述种子生成设备可以获取算法密钥,并可以根据所述算法密钥和种子算法组生成目标种子算法序列,可以理解的是,所述种子算法组中至少有两个种子生成算法,所述种子生成设备可以在目标算法序列中的任一步骤选择算法种子算法组中的任意一个算法,其中每个步骤可以选择的算法个数与种子算法组算法个数相同。例如种子算法组有4个种子生成算法,目标种子算法序列有1000个算法步骤组成,每一个算法步骤有4个可能,进而整个算法序列有41000种组合方式,进一步的,所述种子生成设备根据所述算法密钥和种子算法组生成目标种子算法序列,不同的算法密钥生成不同的种子算法序列。可以理解的是,生成种子的目标种子算法序列具有很大的取值范围和随机性。S102,获取输入的种子生成数据。可以理解的是,当所述种子生成设备获取到种子生成指令时,可以生成随机数并基于所述随机数使用预制的助记单词字典和单词生成算法生成助记单词,并可以将所述助记单词向用户展示,以便用户抄录记录,可以在用户抄录完成后通过用户确认的方式确保抄录的结果的正确性。具体的,所述种子生成设备可以获取输入的种子生成数据,可以理解的是,所述种子生成数据可以包括所述助记单词,也可以包括用户输入的助记单词密码,所述助记单词密码可以是用户根据自己记忆习惯自行设定的密码,可选的,所述种子生成设备可以定时提醒用户输入所述助记单词密码,确保用户输出正确的助记单词密码。可选的,所述种子生成设备可以对所述助记单词密码进行检验,例如,可以对用户身份进行PIN验证,之后获取用户输入的助记单词密码,再匹配设备中之前存储的助记单词密码哈希值与当前获取的用户输入的助记单词密码的哈希值,当两者匹配时,输出指示所述助记单词密码正确的验证结果,否则输出验证错误的提示信息。S103,将所述种子生成数据输入所述目标种子算法序列,生成所述种子生成数据对应的种子。具体的,所述种子生成设备可以将所述种子生成数据输入所述目标种子算法序列,生成所述种子生成数据对应的种子。可以理解的是,所述种子生成数据可以包括助记单词和所述助记单词密码,所述种子生成设备可以将所述助记单词和所述助记单词密码作为所述目标种子算法序列的初始输入,经过一次次迭代直至所述目标算法序列完成全部计算过程。例如,所述目标算法序列迭代完1000次之后可以生成种子。可以理解的是,在本专利技术实施例中即使种子算法组和部分种子生成数据如助记单词被第三方知悉,第三方也需要为每一个可能的助记单词密码分本文档来自技高网...

【技术保护点】
1.一种种子生成方法,其特征在于,包括:获取算法密钥,并根据所述算法密钥和种子算法组生成目标种子算法序列;获取输入的种子生成数据;将所述种子生成数据输入所述目标种子算法序列,生成所述种子生成数据对应的种子。

【技术特征摘要】
1.一种种子生成方法,其特征在于,包括:获取算法密钥,并根据所述算法密钥和种子算法组生成目标种子算法序列;获取输入的种子生成数据;将所述种子生成数据输入所述目标种子算法序列,生成所述种子生成数据对应的种子。2.根据权利要求1所述的方法,其特征在于,在根据所述算法密钥和种子算法组生成目标种子算法序列时:根据所述算法密钥和目标种子算法生成目标种子算法序列。3.根据权利要求2所述的方法,其特征在于,所述目标种子算法为采用种子选择算法基于当前计算轮次在所述种子算法组中选择的目标种子算法。4.根据权利要求3所述方法,其特征在于,在生成种子的计算轮次中,算法密钥以及对应的轮次直接或者计算转换后作为目标种子算法的输入。5.根据权利要求1所述的方法,其特征在于,所述获取算法密钥之前,还包括:基于上位机的控制指令存储算法密钥。6.根据权利要求1所述的方法,所述获取输入的种子生成数据之前,还包括:当获取到种子生成指令时,获取所述种子生成指令携带的种子生成参数;根据所述种子生成参数生成随机数并基于所述随机数、助记单词字典以及单词生成算法生成助记单词;展示所生成的助记单词;根据种子生成指令参数或种子恢复指令参数获取用户输入的助记单词密码;将所述助记单词和所述助记单词密码确定为种子生成数据。7.根据权利要求1所述的方法,还包括:当获取到所述种子生成指令和所述种子恢复指令时,获取所述种子生成指令或所述种子恢复指令携带的种子恢复参数;根据所述种子恢复参数获取用于恢复种子的助记单词;根据所述种子恢复参数获取用户输入的助记单词密码;将所述助记单词和所述助记单词密码输入所述目标种子算法序列,生成所述助记单词和所述助记单词密码对应的种子。8.一种种子生成设备,其特征在于,包括:序列生成模块,用于获取算法密钥,并根据所述算法密钥和种子算法组生成目...

【专利技术属性】
技术研发人员:孔燕斌
申请(专利权)人:上海易酷信息技术服务有限公司
类型:发明
国别省市:上海,31

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

1