一种私钥备份方法和相关设备技术

技术编号:20592748 阅读:25 留言:0更新日期:2019-03-16 08:58
本申请公开了一种私钥备份方法及相关设备,包括:当检测到数字钱包的注册指令时,区块链节点设备首先调用随机数发生器生成第一助记词和随机种子,所述随机种子用于确定所述数字钱包的用户私钥;接着接收用户终端发送的第二助记词;然后根据所述第一助记词和所述第二助记词,对所述随机种子进行加密得到所述用户私钥的备份数据。采用本申请实施例,可以提高助记词的记忆效率、更有效地防止用户私钥的遗失。

A Private Key Backup Method and Related Devices

This application discloses a private key backup method and related devices, including: when a registration instruction for a digital wallet is detected, the block chain node device first calls a random number generator to generate a first mnemonic word and a random seed for determining the user's private key of the digital wallet; then receives a second mnemonic word sent by the user terminal; and then according to the first aid, the block chain node device generates a first mnemonic word and a random seed. The random seed is encrypted to obtain the backup data of the user's private key by memorizing words and the second mnemonic word. By adopting the embodiment of the present application, the memory efficiency of mnemonic words can be improved and the loss of the user's private key can be prevented more effectively.

【技术实现步骤摘要】
一种私钥备份方法和相关设备
本申请涉及数据安全领域和区块链领域,尤其涉及一种私钥备份方法及相关设备。
技术介绍
随着区块链技术的发展,针对虚拟货币的区块链钱包应运而生。目前市面上的区块链钱包主要包括两种。一种是没有助记词的钱包,用户每次转账时的用户私钥都不相同,这种钱包通常应用于早期的区块链系统中。另一种是采用BIP39规范的助记词钱包,这种钱包通过随机种子生成用户私钥,将随机种子切分后在字典库中对应的单词作为该私钥的助记词。其中,用户私钥用于对钱包的转账等交易进行签名,掌握了用户私钥就完全掌握了钱包的使用权。通常用户私钥是固定长度(如64位)的字符串,而为了防止用户私钥泄露,用户应尽可能地通过人为记忆的方式来备份用户私钥。显然,64位的字符串非常不利于记忆。因此,在助记词钱包中以助记词(如“梅虾伴义字曾非的”为一组助记词)的方式来帮助用户记忆和备份用户私钥。当用户遗忘支付密码时就通过助记词恢复用户私钥。然而,助记词钱包中采用的方法所生成的助记词随机性强,单词与单词(如“梅”与“虾”)之间没有关联,导致助记词记忆困难,私钥的备份效果差。
技术实现思路
本申请实施例提供一种私钥备份方法及相关设备。可以提高助记词的记忆效率、更有效地防止用户私钥的遗失。本申请实施例第一方面提供了一种私钥备份方法,包括:当检测到数字钱包的注册指令时,调用随机数发生器生成第一助记词和随机种子,所述随机种子用于确定所述数字钱包的用户私钥;接收用户终端发送的第二助记词;根据所述第一助记词和所述第二助记词,对所述随机种子进行加密得到所述用户私钥的备份数据。其中,所述方法还包括:向所述用户终端发送所述第一助记词,以使所述用户终端呈现所述第一助记词。其中,所述根据所述第一助记词和所述第二助记词,对所述随机种子进行加密得到所述用户私钥的备份数据包括:根据所述第一助记词和所述第二助记词,确定加密密钥;根据所述加密密钥,对所述随机种子进行加密;将加密后的所述随机种子作为所述备份数据。其中,所述根据所述第一助记词和所述第二助记词,确定加密密钥包括:将所述第一助记词和所述第二助记词进行拼接得到组合助记词;确定所述组合助记词的信息摘要值;将所述信息摘要值作为所述加密密钥。其中,所述对所述随机种子进行加密得到所述用户私钥的备份数据之后,还包括:从所述区块链节点设备所在的区块链系统中的多个区块中选择目标区块;将所述备份数据存储在所述目标区块中。其中,所述将所述备份数据存储在所述目标区块中之后,还包括:确定所述目标区块的区块号;向所述用户终端发送所述区块号,以使所述用户终端呈现所述区块号。其中,所述对所述随机种子进行加密得到所述用户私钥的备份数据之后,还包括:当所述数字钱包的支付密码校验失败时,接收所述用户终端发送的第三助记词和第四助记词;确定所述第三助记词与所述第一助记词是否相同、以及所述第四助记词与所述第二助记词是否相同;当所述第三助记词与所述第一助记词相同、且所述第四助记词与所述第二助记词相同时,根据所述第三助记词和所述第四助记词,对所述备份数据进行解密得到所述随机种子;根据所述随机种子,确定所述用户私钥,所述用户私钥用于对所述数字钱包的账户交易进行签名。其中,所述根据所述第三助记词和所述第四助记词,对所述备份数据进行解密得到所述随机种子之前,还包括:获取所述备份数据所在区块的区块号;根据所述数字钱包的地址信息,从所述区块号对应的目标区块中查找所述备份数据。其中,所述根据所述第三助记词和第四助记词,对所述备份数据进行解密得到所述随机种子包括:对所述第三助记词和所述第四助记词进行拼接得到组合助记词;根据所述组合助记词,确定解密密钥;根据所述解密密钥,对所述备份数据进行解密。相应地,本申请实施例第二方面提供了一种区块链节点设备,包括:随机模块,用于当检测到数字钱包的注册指令时,调用随机数发生器生成第一助记词和随机种子,所述随机种子用于确定所述数字钱包的用户私钥;接收模块,用于接收用户终端发送的第二助记词;加密模块,用于根据所述第一助记词和所述第二助记词,对所述随机种子进行加密得到所述用户私钥的备份数据。其中,所述区块链节点设备还包括发送模块,用于:向所述用户终端发送所述第一助记词,以使所述用户终端呈现所述第一助记词。其中,所述加密模块还用于:根据所述第一助记词和所述第二助记词,确定加密密钥;根据所述加密密钥,对所述随机种子进行加密;将加密后的所述随机种子作为所述备份数据。其中,所述加密模块还用于:将所述第一助记词和所述第二助记词进行拼接得到组合助记词;确定所述组合助记词的信息摘要值;将所述信息摘要值作为所述加密密钥。其中,所述加密模块还用于:从所述区块链节点设备所在的区块链系统中的多个区块中选择目标区块;将所述备份数据存储在所述目标区块中。其中,所述发送模块还用于:确定所述目标区块的区块号;向所述用户终端发送所述区块号,以使所述用户终端呈现所述区块号。其中,所述接收模块还用于:当所述数字钱包的支付密码校验失败时,接收所述用户终端发送的第三助记词和第四助记词;所述区块链节点设备还包括解密模块,用于:确定所述第三助记词与所述第一助记词是否相同、以及所述第四助记词与所述第二助记词是否相同;当所述第三助记词与所述第一助记词相同、且所述第四助记词与所述第二助记词相同时,根据所述第三助记词和所述第四助记词,对所述备份数据进行解密得到所述随机种子;所述区块链节点设备还包括确定模块,用于:根据所述随机种子,确定所述用户私钥,所述用户私钥用于对所述数字钱包的账户交易进行签名。其中,所述解密模块还用于:获取所述备份数据所在区块的区块号;根据所述数字钱包的地址信息,从所述区块号对应的目标区块中查找所述备份数据。其中,所述解密模块还用于:对所述第三助记词和所述第四助记词进行拼接得到组合助记词;根据所述组合助记词,确定解密密钥;根据所述解密密钥,对所述备份数据进行解密。相应地,本申请提供了一种存储介质,其中,所述存储介质用于存储应用程序,所述应用程序用于在运行时执行本申请实施例第一方面公开的一种私钥备份方法。相应地,本申请实施例提供了一种应用程序,其中,所述应用程序用于在运行时执行本申请实施例第一方面公开的一种私钥备份方法。实施本申请实施例,当检测到数字钱包的注册指令时,区块链节点设备首先调用随机数发生器生成第一助记词和随机种子,所述随机种子用于确定所述数字钱包的用户私钥;接着接收用户终端发送的第二助记词;然后根据所述第一助记词和所述第二助记词,对所述随机种子进行加密得到所述用户私钥的备份数据,可以提高助记词的记忆效率、更有效地防止用户私钥的遗失。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1时本申请实施例提供的一种数字钱包的应用系统的结构示意图;图2是本申请实施例提供的一种私钥备份方法的流程示意图;图3是本申请实施例提供的另一种私钥备份方法的流程示意图;图4是本申请实施例提供的一种数字钱包的注册方法的流程示意图;图5是本申请实施例提供的一种数字钱包的使用方法的流程示意图;图本文档来自技高网...

【技术保护点】
1.一种私钥备份方法,其特征在于,所述方法应用于区块链节点设备,所述方法包括:当检测到数字钱包的注册指令时,调用随机数发生器生成第一助记词和随机种子,所述随机种子用于确定所述数字钱包的用户私钥;接收用户终端发送的第二助记词;根据所述第一助记词和所述第二助记词,对所述随机种子进行加密得到所述用户私钥的备份数据。

【技术特征摘要】
1.一种私钥备份方法,其特征在于,所述方法应用于区块链节点设备,所述方法包括:当检测到数字钱包的注册指令时,调用随机数发生器生成第一助记词和随机种子,所述随机种子用于确定所述数字钱包的用户私钥;接收用户终端发送的第二助记词;根据所述第一助记词和所述第二助记词,对所述随机种子进行加密得到所述用户私钥的备份数据。2.如权利要求1所述的方法,其特征在于,所述根据所述第一助记词和所述第二助记词,对所述随机种子进行加密得到所述用户私钥的备份数据包括:根据所述第一助记词和所述第二助记词,确定加密密钥;根据所述加密密钥,对所述随机种子进行加密;将加密后的所述随机种子作为所述备份数据。3.如权利要求2所述的方法,其特征在于,所述根据所述第一助记词和所述第二助记词,确定加密密钥包括:将所述第一助记词和所述第二助记词进行拼接得到组合助记词;确定所述组合助记词的信息摘要值;将所述信息摘要值作为所述加密密钥。4.如权利要求1-3任一项所述的方法,其特征在于,所述对所述随机种子进行加密得到所述用户私钥的备份数据之后,还包括:从所述区块链节点设备所在的区块链系统中的多个区块中选择目标区块;将所述备份数据存储在所述目标区块中。5.如权利要求4所述的方法,其特征在于,所述将所述备份数据存储在所述目标区块中之后,还包括:确定所述目标区块的区块号;向所述用户终端发送所述区块号,以使所述用户终端呈现所述区块号。6.如权利要求1所述的方法,其特征在于,所述对所述随机种子进行加密得到所述用户私钥的备份数据之后,还包括:当所述数字钱包的支付密码校验失败时,接收所述用户终端发送的第三助记词和第四助记词;确定所述第三助记词与所述第一助记词是否相同、以及所...

【专利技术属性】
技术研发人员:刘新侯利朋
申请(专利权)人:深圳市元征科技股份有限公司
类型:发明
国别省市:广东,44

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

1