区块链账户密钥备份及恢复的方法、系统与流程

文档序号:17125321发布日期:2019-03-16 00:20阅读:1023来源:国知局
区块链账户密钥备份及恢复的方法、系统与流程

本申请涉及区块链技术领域,具体而言,涉及区块链账户密钥备份及恢复的方法、系统。



背景技术:

区块链技术是一种无需信任单个节点还能创建共识网络的方法,具有完备可追溯、去中心化和去信用化的特点,基于区块链技术的特点人类可以创造出非常丰富的服务及产品形态,可以适用于金融、政府、企业、跨行业等领域,前景广阔。

其中,区块链是支撑虚拟货币发展的底层技术,任何人都可以通过执行特定的密码学计算生成新的货币区块,从而获得一个可用于交易的数字货币。目前数字货币的钱包有两种:一种为热钱包,是一直处于联网状态的钱包,虽然方便使用,但存在被黑客攻击的危险;一种是冷钱包,它将用户密钥安全存储在硬件设备内部,在用户需要发布交易时,将交易信息发送给硬件钱包,由硬件钱包利用存储的密钥签名后返回给用户,再广播到区块链网络中,其中,私钥不接触互联网,可有效防止被黑客窃取,相对比较安全。

然而为了防止钱包丢失,需要用户能够安全的备份钱包密钥,才可以在钱包丢失后能够恢复钱包。目前冷钱包备份密钥一般采用助记词的方法,将生成密钥的种子备份出来,在钱包丢失后,利用备份的助记词恢复用户密钥,从而恢复钱包。然而,备份助记词的方法通常是手动记录在纸条上,或者通过自己的记忆力记住助记词,一旦纸条丢失或遗忘,将丢失助记词,给用户造成巨大的经济损失。



技术实现要素:

有鉴于此,本申请实施例的目的在于提供区块链账户密钥备份及恢复的方法、系统,能够对区块链中用户的区块链账户密钥进行备份以及恢复,从而避免用户的区块链账户密钥丢失,给用户造成巨大的经济损失的问题。

第一方面,本申请实施例提供了一种区块链账户密钥备份方法,其中,应用于密钥存储设备,所述密钥存储设备包括主控模块、密钥存储模块和蓝牙通信模块;所述方法包括:

所述主控模块获取用户输入的密钥存储模块密码,并向所述密钥存储模块发送密钥备份请求;

所述密钥存储模块用于存储和/或加密助记词;其中,所述助记词用于生成区块链账户密钥;

所述蓝牙通信模块向密钥备份设备发送处于加密状态的助记词,以使所述密钥备份设备保存所述助记词。

结合第一方面,本申请实施例提供了第一方面的第一种可能的实施方式,其中,所述密钥存储设备还包括显示模块;在所述蓝牙通信模块向密钥备份设备发送处于加密状态的助记词之后,还包括:

所述主控模块接收所述密钥备份设备根据解密后的所述助记词确定的助记词校验码;

所述密钥存储模块根据所述助记词,对所述助记词校验码进行验证;

所述显示模块根据验证后的验证结果,显示所述助记词的密钥备份结果。

结合第一方面,本申请实施例提供了第一方面的第二种可能的实施方式,其中,在所述主控模块获取用户输入的密钥存储模块密码,并向所述密钥存储模块发送密钥备份请求之前,还包括:

所述主控模块通过所述蓝牙通信模块与密钥备份设备建立连接;

在与密钥备份设备连接成功之后,所述蓝牙通信模块向所述密钥备份设备发送所述密钥存储模块生成的临时公钥,以使所述密钥备份设备基于所述临时公钥生成会话密钥;

所述蓝牙通信模块接收所述密钥备份设备返回的利用所述会话密钥加密的验证信息;其中,所述验证信息包括盲化因子与认证证书;

所述密钥存储模块对所述验证信息进行验证。

结合第一方面的第二种可能的实施方式,本申请实施例提供了第一方面的第三种可能的实施方式,其中,在密钥存储模块对所述验证信息进行验证之前,还包括:

所述蓝牙通信模块接收所述密钥备份设备返回的盲化公钥;所述盲化公钥为所述密钥备份设备根据盲化因子与所述认证证书的公钥生成的;

所述密钥存储模块对所述验证信息进行验证,包括:

根据临时私钥和所述盲化公钥生成的会话密钥对验证信息进行解密;所述临时私钥与所述临时公钥相对应;

根据解密出的盲化因子与认证证书中的公钥,对解密后的验证信息进行验证。

第二方面,本申请实施例还提供了一种区块链账户密钥恢复方法,其中,包括:应用于密钥存储设备,所述密钥存储设备包括主控模块、密钥存储模块和蓝牙通信模块;所述方法包括:

蓝牙通信模块向密钥备份设备发送提取助记词的提取助记词请求;其中,所述助记词用于生成区块链账户密钥;

蓝牙通信模块接收所述密钥备份设备根据所述提取助记词请求返回的处于加密状态的助记词;

所述密钥存储模块基于所述加密状态的助记词生成区块链账户密钥。

结合第二方面,本申请实施例提供了第二方面的第一种可能的实施方式,其中,所述密钥存储设备还包括显示模块;在所述密钥存储模块基于所述加密状态的助记词生成区块链账户密钥之前,还包括:

所述密钥存储模块解密所述加密状态的助记词,并基于所述加密状态的助记词生成助记词校验码;

所述主控模块通过所述蓝牙通信模块向所述密钥备份设备发送所述助记词校验码;

所述主控模块通过所述蓝牙通信模块接收所述密钥备份设备返回的对所述助记词校验码进行验证得到的验证结果;

所述显示模块根据验证后的验证结果,显示所述助记词的密钥恢复结果。

结合第二方面,本申请实施例提供了第二方面的第二种可能的实施方式,其中,在蓝牙通信模块向密钥备份设备发送提取助记词的提取助记词请求之前,还包括:

所述主控模块通过所述蓝牙通信模块与密钥备份设备建立连接;

在与密钥备份设备连接成功之后,所述蓝牙通信模块向所述密钥备份设备发送所述密钥存储模块生成的临时公钥,以使所述密钥备份设备基于所述临时公钥生成会话密钥;

所述蓝牙通信模块接收所述密钥备份设备返回的利用所述会话密钥加密的验证信息;其中,所述验证信息包括盲化因子与认证证书;

所述密钥存储模块对所述验证信息进行验证。

结合第二方面的第二种可能的实施方式,本申请实施例提供了第二方面的第三种可能的实施方式,其中,在密钥存储模块对所述验证信息进行验证之前,还包括:

所述蓝牙通信模块接收所述密钥备份设备返回的盲化公钥;所述盲化公钥为所述密钥备份设备根据盲化因子与所述认证证书的公钥生成的;

所述密钥存储模块对所述验证信息进行验证,包括:

根据临时私钥和所述盲化公钥生成的会话密钥对验证信息进行解密;所述临时私钥与所述临时公钥相对应;

根据解密出的盲化因子与认证证书中的公钥,对解密后的验证信息进行验证。

第三方面,本申请实施例还提供了一种区块链账户密钥备份系统,其中,包括密钥存储设备和密钥备份设备,其中,所述密钥存储设备通过蓝牙通信模块和所述密钥备份设备进行通信,其中:

所述密钥存储设备获取用户输入的密钥存储模块密码,并基于用户的密钥备份请求为存储的助记词进行加密,向所述密钥备份设备发送处于加密状态的助记词;

所述密钥备份设备保存所述助记词。

第四方面,本申请实施例还提供了一种区块链账户密钥恢复系统,其中,包括:密钥存储设备和密钥备份设备,其中,所述密钥存储设备通过蓝牙通信模块和所述密钥备份设备进行通信,其中:

所述密钥存储设备向所述密钥备份设备发送提取助记词的提取助记词请求;其中,所述助记词用于生成区块链账户密钥;

所述密钥备份设备根据所述提取助记词请求向所述密钥存储设备返回处于加密状态的助记词;

所述密钥存储设备基于所述加密状态的助记词生成区块链账户密钥。本申请实施例提供的区块链账户密钥备份及恢复的方法、系统,其中,区块链账户密钥备份方法,应用于密钥存储设备,密钥存储设备包括主控模块、密钥存储模块和蓝牙通信模块;该方法包括:主控模块获取用户输入的密钥存储模块密码,并向密钥存储模块发送密钥备份请求;密钥存储模块为存储的助记词进行加密;其中,助记词用于生成区块链账户密钥;蓝牙通信模块向密钥备份设备发送处于加密状态的助记词,以使密钥备份设备保存助记词,其能够对区块链中用户的区块链账户密钥进行备份以及恢复,避免了现有技术中用户将助记词手动记录在纸条上,或者通过自己的记忆力记住助记词,在纸条丢失或遗忘时,将丢失助记词,也即丢失区块链账户密钥,导致用户造成巨大经济损失的问题。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本申请实施例所提供的区块链账户密钥备份、恢复系统的结构示意图;

图2示出了本申请实施例一所提供的一种区块链账户密钥备份方法的流程图;

图3示出了本申请实施例一所提供的另一种区块链账户密钥备份方法的流程图;

图4示出了本申请实施例一所提供的另一种区块链账户密钥备份方法的流程图;

图5示出了本申请实施例一所提供的区块链账户密钥备份方法具体的流程图;

图6示出了本申请实施例二所提供的一种区块链账户密钥恢复方法的流程图;

图7示出了本申请实施例二所提供的另一种区块链账户密钥恢复方法的流程图;

图8示出了本申请实施例二所提供的另一种区块链账户密钥恢复方法的流程图;

图9示出了本申请实施例一所提供的区块链账户密钥恢复方法具体的流程图;

图10示出了本申请实施例三所提供的一种区块链账户密钥备份装置的结构示意图;

图11示出了本申请实施例四所提供的一种区块链账户密钥恢复装置的结构示意图;

图12示出了本申请实施例五所提供的区块链账户密钥备份系统的结构示意图;

图13示出了本申请实施例五所提供的区块链账户密钥恢复系统的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例下述方法、装置、电子设备或计算机存储介质可以应用于任何需要对区块链账户密钥备份及恢复的场景,比如,可以应用于用户终端、区块链账户密钥备份装置等。本申请实施例并不对具体的应用场景作限制,任何使用本申请实施例提供的方法对区块链账户密钥备份或恢复的方案均在本申请保护范围内。

本申请实施例首先对一种密钥存储终端进行说明,该密钥存储终端可以对区块链账户密钥进行存储,在用户进行交易时,可以在验证用户身份通过之后,利用区块链账户密钥为交易信息签名后广播到区块链中。在实际应用中,即使密钥存储终端可以对区块链账户密钥进行存储,但是,在使用时容易丢失,从而导致区块链账户密钥遗失。

有鉴于此,如图1所示,为本申请实施例提供的密钥存储设备及密钥备份设备组成的区块链账户密钥备份、恢复系统的示意图。密钥存储设备可以为对区块链账户密钥进行安全保存的设备,如冷钱包。本申请实施例提供的密钥存储设备包括:主控模块、密钥存储模块、蓝牙通信模块、显示模块及输入模块。

密钥存储设备可以包括主控模块和密钥存储模块,主控模块可以为密钥存储设备的控制中心,控制其他各个模块进行区块链交易以及密钥备份及恢复。密钥存储模块可以用于安全地存储用户的区块链账户密钥。这里,区块链账户密钥可以为用户的区块链账户私钥。密钥存储模块可以存储有助记词,由助记词可以生成多个区块链账户密钥,或者,密钥存储模块可以一次生成多个区块链账户密钥,并缓存在密钥存储模块中。密钥存储模块可以为一个独立的安全单元芯片,接收来自主控模块的签名指令、区块链账户密钥备份或恢复指令。

密钥存储设备可以通过蓝牙通信模块,与备份设备进行通信,实现密钥备份或恢复。

显示模块用于显示交易信息,在由密钥存储模块进行交易签名前,可以供用户检查确认交易信息,或者,用于显示密钥备份或恢复相关的信息,提示用户完成通过密钥存储设备进行的区块链账户密钥的备份或恢复的操作。

输入模块用于在交易签名、区块链账户密钥备份或恢复过程中,供用户输入验证密码,验证用户操作的权限。

这里,密钥存储设备与密钥备份设备可分离设置,这里的可分离设置可以理解为密钥存储设备与密钥备份设备相互分离且分离设置。密钥备份设备用于安全备份区块链账户密钥对应的助记词,并且可以利用存储的助记词将区块链账户密钥安全恢复到密钥存储终端中。

本申请实施例中提供的密钥存储设备可以对区块链账户密钥进行存储,并可以将区块链账户密钥对应的助记词备份在密钥备份设备中。密钥备份设备与密钥存储设备可分离设置,即使密钥存储设备丢失,用户也可以通过密钥备份设备中存储的助记词对区块链账户密钥进行恢复,避免区块链账户密钥丢失。

实施例一

本申请实施例提供的密钥存储设备及密钥备份设备,在具体实施中,可以通过本申请实施例提供的区块链账户密钥备份方法与区块链账户密钥恢复方案实现区块链账户密钥的备份与恢复,下面通过具体实施例对区块链账户密钥备份方法及恢复方案进行说明。

如图2所示,为本申请实施例提供的一种区块链账户密钥备份方法,作用于密钥存储设备,所述密钥存储设备包括:主控模块、密钥存储模块和蓝牙通信模块,该方法包括:

s201、主控模块获取用户输入的密钥存储模块密码,并向密钥存储模块发送密钥备份请求。

这里,主控模块可以获取用户在输入模块上输入的密钥存储模块密码,并向密钥存储模块发送该密钥存储模块密码。同时,向密钥存储模块发送密钥备份请求。

其中,该密钥备份请求可以是用户手动进行触发,也可以是密钥存储设备根据预设时间自动进行触发。

s202、密钥存储模块用于存储和/或加密助记词;其中,助记词用于生成区块链账户密钥。

这里,密钥存储模块在接收到密钥备份请求之后,验证用户输入的密钥存储模块密码,若验证成功,则为存储的助记词进行加密。其中,助记词用于生成区块链账户密钥。

s203、蓝牙通信模块向密钥备份设备发送处于加密状态的助记词,以使备份设备保存助记词。

这里,密钥存储设备在得到处于加密状态的助记词之后,密钥存储设备可以通过蓝牙通信模块向密钥备份设备发送处于加密状态的助记词,以及备份请求,以使所述密钥备份设备对助记词进行备份。

其中,密钥存储设备向密钥备份装置发送备份请求之后,密钥备份设备可以为处于加密状态的助记词进行解密,得到区块链账户密钥对应的助记词。

本申请实施例通过上述方法,密钥存储设备可以将内部存储的区块链账户密钥对应的助记词备份于密钥备份设备中,从而可以避免由于区块链账户密钥丢失而导致的用户账户名下的数字资产的遗失。此外,由于密钥备份设备为一种硬件设备,相比于数据文件或纸质文件等可以进行复制的文件,其内部数据受到密钥备份设备的访问权限控制,从而可以更加有效地对助记词进行保护,避免备份的助记词被非法读取及破解,导致区块链账户密钥泄露,给用户造成经济损失。

在上述步骤203之后,可以按照如图3所示的方法,进一步确认密钥备份设备的密钥备份结果,具体步骤如下:

s301、主控模块接收密钥备份设备根据解密后的助记词确定的助记词校验码;

s302、密钥存储模块根据助记词,对助记词校验码进行验证;

s303、显示模块根据验证后的验证结果,显示助记词的密钥备份结果。

这里,在密钥备份设备为处于加密状态的助记词进行解密之后,可以计算助记词的助记词校验码,并将计算得到的助记词校验码返回至密钥存储设备。

密钥存储设备中的主控模块通过蓝牙通信模块接收密钥备份设备返回的助记词校验码。进一步的,密钥存储模块可以针对助记词生成相应的助记词校验码,并将生成的助记词校验码与密钥备份设备返回的助记词校验码进行匹配,若助记词校验码相同,向密钥备份设备返回助记词验证成功信息,并在显示模块中提示区块链账户密钥备份成功。若助记词校验码不同,则向密钥备份装置返回助记词验证失败信息,并在显示模块中提示区块链账户密钥备份失败,密钥备份装置可以根据助记词验证失败信息对接收的区块链账户密钥进行删除处理。

在具体实施中,在主控模块获取用户输入的密钥存储模块密码,并向密钥存储模块发送密钥备份请求之前,密钥存储设备与密钥备份设备可以通过如图4所示的方法进行安全认证,以确保密钥存储设备与密钥备份设备可以安全通信,具体步骤如下:

s401、主控模块通过蓝牙通信模块与密钥备份设备建立连接;

s402、在与密钥备份设备连接成功之后,蓝牙通信模块向密钥备份设备发送密钥存储模块生成的临时公钥,以使密钥备份设备基于临时公钥生成会话密钥;

s403、蓝牙通信模块接收密钥备份设备返回的利用会话密钥加密的验证信息;其中,验证信息包括盲化因子与认证证书;

s404、密钥存储模块对验证信息进行验证。

这里,密钥存储设备与密钥备份设备建立连接之前,主控模块可以发送连接请求至密钥备份设备,密钥备份设备在接收到该连接请求之后,检测当前是否存在存储空间,使得密钥备份设备备份区块链账户密钥。若有,则将存储空间信息返回至主控模块,确定密钥存储设备与密钥备份设备建立连接。

在与密钥备份设备连接成功之后,密钥存储模块生成临时公钥和临时私钥,并通过蓝牙通信模块向密钥备份设备发送临时公钥,密钥备份设备在接收到临时公钥之后,生成盲化因子,基于盲化因子与预先保存在密钥备份设备的证书私钥,生成盲化私钥,利用密钥存储模块生成的临时公钥与盲化私钥,生成会话密钥,利用会话密钥为验证信息进行加密,并将加密的验证信息返回至密钥存储设备,同时,密钥备份设备根据盲化因子与认证证书的公钥生成盲化公钥,并将该盲化公钥返回至密钥存储设备。

其中,上述验证信息包括盲化因子与认证证书。

密钥存储模块通过蓝牙通信模块接收到密钥备份设备返回的利用会话密钥加密的验证信息之后,利用临时私钥和所述盲化公钥生成的会话密钥对验证信息进行解密,得到验证信息包括盲化因子与认证证书,并根据解密出的盲化因子与认证证书中的公钥,对解密后的验证信息进行验证,具体的,使用从认证中心获取的认证公钥验证认证证书的有效性。

基于上述作用于区块链账户密钥备份系统的区块链账户密钥备份方法,本申请实施例提供了区块链账户密钥备份方法的具体流程,密钥存储设备与密钥备份设备的交互过程如图5所示,包括:

步骤501,密钥存储设备的主控模块通过密钥存储设备的蓝牙通信模块向密钥备份设备发送连接请求,与密钥备份设备建立连接。密钥备份设备将存储空间信息返回至主控模块,确定密钥存储设备与密钥备份设备建立连接。

步骤502,密钥存储设备与密钥备份设备建立连接后,主控模块向密钥存储模块请求生成临时公私钥对(da,pa)。

步骤503,主控模块转发临时公钥给密钥备份设备。密钥备份设备接收到临时公钥后,利用临时公钥(pa)和盲化私钥(d_db),以及其他信息生成对称会话秘钥(如des/aes/sm4密钥),密钥备份设备保存会话密钥,向密钥存储设备返回携带有利用会话密钥加密的认证证书。

步骤504,密钥存储设备的主控模块向密钥存储模块返回加密数据,密钥存储模块利用盲化公钥与临时私钥生成会话密钥,使用会话密钥解密加密的数据,得到盲化因子与认证证书并进行验证,主控模块接收到验证成功的验证结果之后,会话密钥协商成功。

至此安全通道开启,后续密钥存储模块和密钥备份设备之间的通信将在会话密钥(sk)的保护下进行。

步骤505,密钥存储设备主控模块请求用户输入密钥存储模块密码,并将密钥存储模块密码与密钥备份请求发送给密钥存储模块,请求密钥备份。

步骤506,密钥存储模块验证密钥存储模块密码,验证通过后,对助记词进行加密,并返回加密后的助记词给主控模块。

步骤507,密钥存储设备的主控模块将加密后的助记词携带在密钥备份请求中发送给密钥备份设备,请求备份区块链账户密钥对应的助记词。密钥备份设备利用会话密钥解密助记词,然后将解密之后得到的助记词加密储存,并计算助记词校验码,返回助记词校验码给密钥存储设备的主控模块。

步骤508,主控模块转发助记词校验码给密钥存储模块,密钥存储模块验证助记词校验码,并给主控模块返回验证结果。

步骤509,主控模块根据验证结果控制显示模块显示区块链账户密钥备份结果,并关闭安全通道。

实施例二

如图6所示,为本申请实施例提供的一种区块链账户密钥恢复方法,方法包括:

s601、蓝牙通信模块向密钥备份设备发送提取助记词的提取助记词请求;其中,助记词用于生成区块链账户密钥。

这里,首先在输入模块上输入密钥存储模块密码,在密钥存储模块验证成功之后可以生成提取助记词的提取助记词请求,其中携带密钥存储设备的认证证书,返回至主控模块。

主控模块通过蓝牙通信模块向密钥备份设备发送该提取助记词请求;其中,助记词用于生成区块链账户密钥。

s602、蓝牙通信模块接收密钥备份设备根据提取助记词请求返回的处于加密状态的助记词。

这里,在密钥备份设备接收到提取助记词请求之后,首先使用认证授权机构获取的认证公钥对其中携带的密钥存储设备的认证证书进行验证,以保证密钥存储设备为合法设备。如果验证成功密钥备份设备可使用会话密钥对助记词进行加密,如果验证失败,密钥备份设备拒绝请求。

密钥备份设备将处于加密状态的助记词返回主控模块,主控模块通过蓝牙通信模块接收到处于加密状态的助记词之后,将处于加密状态的助记词转发至密钥存储模块。

s603、密钥存储模块基于助记词生成区块链账户密钥。

这里,密钥存储模块在收到处于加密状态的助记词之后,进行解密,并基于解密后的助记词生成区块链账户密钥,使得区块链账户密钥恢复完成。

采用上述方案,密钥存储终端可以从密钥备份装置中恢复区块链账户密钥,从而可以避免由于区块链账户密钥丢失而导致的用户账户名下的数字资产的遗失。此外,密钥备份装置为一种硬件设备,相比于数据文件或纸质文件等可以进行复制的文件,其内部数据受到密钥备份装置的访问权限控制,从而可以更加有效地对区块链账户密钥进行保护,避免备份的区块链账户密钥被非法读取及破解。

在上述步骤603之前,可以按照如图7所示的方法,进一步确认密钥恢复结果,具体步骤如下:

s701、密钥存储模块解密加密状态的助记词,并基于助记词生成助记词校验码;

s702、主控模块通过蓝牙通信模块向密钥备份设备发送助记词校验码;

s703、主控模块通过蓝牙通信模块接收密钥备份设备返回的对助记词校验码进行验证得到的验证结果;

s704、显示模块根据验证后的验证结果,显示助记词的密钥恢复结果。

这里,密钥存储模块解密加密状态的助记词之后,对加密状态的助记词进行解密,在根据解密后的助记词计算助记词校验码,并将助记词校验码返回主控模块。

主控模块通过蓝牙通信模块向密钥备份设备发送助记词校验码,使得密钥备份设备对助记词校验码进行验证,在密钥备份设备在验证成功之后,将验证结果返回给主控模块,主控模块接收到验证结果之后,根据验证后的验证结果控制密钥存储模块恢复密钥并控制显示模块显示密钥恢复结果。

在具体实施中,在蓝牙通信模块向密钥备份设备发送提取助记词的提取助记词请求之前,密钥存储设备与密钥备份设备可以通过如图8所示的方法进行安全认证,以确保密钥存储设备与密钥备份设备可以安全通信,具体步骤如下:

s801、主控模块通过蓝牙通信模块与密钥备份设备建立连接;

s802、在与密钥备份设备连接成功之后,蓝牙通信模块向密钥备份设备发送密钥存储模块生成的临时公钥,以使密钥备份设备基于临时公钥生成会话密钥;

s803、蓝牙通信模块接收密钥备份设备返回的利用会话密钥加密的验证信息;其中,验证信息包括认证证书;

s804、密钥存储模块对验证信息进行验证。

这里,s801-s804的实施方式与上述s401-s404相同,具体实施步骤在此不做过多赘述。

基于上述作用于区块链账户密钥恢复系统的区块链账户密钥恢复方法,本申请实施例提供了区块链账户密钥恢复方法的具体流程,密钥存储设备与密钥备份设备的交互过程如图9所示,包括:

步骤901-步骤903:与区块链账户密钥备份过程的步骤501-步骤503相同。

步骤904:密钥存储设备的主控模块请求用户输入密钥存储模块密码。

步骤905:密钥存储设备的主控模块向密钥存储模块发送携带有密钥存储模块密码的提取助记词请求。密钥存储模块验证密钥存储模块密码,验证通过后,向主控模块返回提取助记词请求。

步骤906:主控模块向密钥备份设备转发提取助记词请求并且其中携带有密钥存储设备的认证证书信息,请求提取助记词,进而恢复区块链账户密钥。密钥备份设备首先使用从认证授权机构获取的认证公钥验证密钥存储设备的认证证书的有效性,保证对方为合法设备。验证成功后再利用会话密钥(sk)加密助记词,返回处于加密状态的助记词给密钥存储设备的主控模块;验证失败则拒绝请求。

步骤907:密钥存储设备的主控模块将处于加密状态的助记词转发给密钥存储模块,请求恢复区块链账户密钥。密钥存储模块利用会话密钥解密处于加密状态的助记词,并计算助记词验证码,并返回助记词校验码给主控模块。

步骤908:主控模块通过蓝牙通信模块转发助记词校验码给密钥备份设备,密钥备份设备验证助记词校验码,并返回验证结果,密钥存储设备收到验证结果选择是否恢复区块链账户密钥。

步骤909:主控模块通过显示模块显示区块链账户密钥恢复结果,并关闭安全通道。

实施例三

基于同一发明构思,本申请实施例还提供了与区块链账户密钥备份方法对应的区块链账户密钥备份装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述区块链账户密钥备份方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参见图10所示,本申请又一实施例所提供的区块链账户密钥备份装置包括:

主控模块1001,用于获取用户输入的密钥存储模块密码,并向密钥存储模块发送密钥备份请求;

密钥存储模块1002,用于为存储的助记词进行加密;其中,助记词用于生成登录区块链账户的密钥;

蓝牙通信模块1003,用于向密钥备份设备发送处于加密状态的助记词,以使备份设备保存助记词。

在一种实施方式中,上述区块链账户密钥备份装置还包括:

主控模块1001,用于接收密钥备份设备根据解密后的助记词确定的助记词校验码;

密钥存储模块1002,用于根据助记词,对助记词校验码进行验证;

显示模块1004,用于根据验证后的验证结果,显示助记词的密钥备份结果。

在另一种实施方式中,上述区块链账户密钥备份装置还包括:

主控模块1001,用于通过蓝牙通信模块与密钥备份设备建立连接;

蓝牙通信模块1003,用于在与密钥备份设备连接成功之后,向密钥备份设备发送密钥存储模块生成的临时公钥,以使密钥备份设备基于临时公钥生成会话密钥;

蓝牙通信模块1003,用于接收密钥备份设备返回的利用会话密钥加密的验证信息;其中,验证信息包括盲化因子与认证证书;

密钥存储模块1002,用于对验证信息进行验证。

在又一种实施方式中,上述区块链账户密钥备份装置还包括:

蓝牙通信模块1003,用于接收密钥备份设备返回的盲化公钥;盲化公钥为密钥备份设备根据盲化因子与认证证书的公钥生成的;

密钥存储模块1002,具体用于:

根据生成的临时私钥和盲化公钥对加密的验证信息进行解密;临时私钥与临时公钥相对应;

根据预先存储的密钥备份设备的认证证书的公钥,对解密后的验证信息进行验证。

实施例四

参见图11所示,本申请又一实施例所提供的区块链账户密钥恢复装置,其中,本申请实施例中的装置解决问题的原理与本申请实施例上述区块链账户密钥恢复方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述,该区块链账户密钥恢复装置包括:

蓝牙通信模块1101,用于向密钥备份设备发送提取助记词的提取助记词请求;其中,助记词用于生成区块链账户密钥;

蓝牙通信模块1101,用于接收密钥备份设备根据提取助记词请求返回的处于加密状态的助记词;

密钥存储模块1102,用于基于助记词生成区块链账户密钥。

在一种实施方式中,上述区块链账户密钥恢复装置还包括:

密钥存储模块1102,用于解密加密状态的助记词,并基于助记词生成助记词校验码;

主控模块1103,用于通过蓝牙通信模块向密钥备份设备发送助记词校验码;

主控模块1103,用于通过蓝牙通信模块接收密钥备份设备返回的对助记词校验码进行验证得到的验证结果;

显示模块1104,用于根据验证后的验证结果,显示助记词的恢复密钥结果。

在另一种实施方式中,上述区块链账户密钥备份装置还包括:

主控模块1103,用于通过蓝牙通信模块与密钥备份设备建立连接;

蓝牙通信模块1101,用于在与密钥备份设备连接成功之后,向密钥备份设备发送密钥存储模块生成的临时公钥,以使密钥备份设备基于临时公钥生成会话密钥;

蓝牙通信模块1101,用于接收密钥备份设备返回的利用会话密钥加密的验证信息;其中,验证信息包括盲化因子与认证证书;

密钥存储模块1102,用于对验证信息进行验证。

在又一种实施方式中,上述区块链账户密钥备份装置还包括:

蓝牙通信模块1101,用于接收密钥备份设备返回的盲化公钥;盲化公钥为密钥备份设备根据盲化因子与认证证书的公钥生成的;

密钥存储模块1102,具体用于:

根据临时私钥和所述盲化公钥生成的会话密钥对验证信息进行解密;所述临时私钥与所述临时公钥相对应;

根据解密出的盲化因子与认证证书中的公钥,对解密后的验证信息进行验证。

实施例五

如图12所示,为本申请实施例所提供一种区块链账户密钥备份系统,包括:可分离设置的密钥存储设备1201和密钥备份设备1202,其中,密钥存储设备1201通过蓝牙通信模块和密钥备份设备1202进行通信,其中:

密钥存储设备1201获取用户输入的密钥存储模块密码,并基于用户的密钥备份请求为存储的助记词进行加密,向密钥备份设备1202发送处于加密状态的助记词;

密钥备份设备1202对处于加密状态的助记词进行解密,得到并保存助记词。

如图13所示,为本申请实施例所提供一种区块链账户密钥恢复系统,包括:可分离设置的密钥存储设备1301和密钥备份设备1302,其中,密钥存储设备1301通过蓝牙通信模块和密钥备份设备1302进行通信,其中:

密钥存储设备1301向密钥备份设备1302发送提取助记词的提取助记词请求;其中,助记词用于生成登区块链账户密钥;

密钥备份设备1302根据提取助记词请求向密钥存储设备1301返回处于加密状态的助记词;

密钥存储设备1301基于加密状态的助记词生成区块链账户密钥。

本申请实施例所提供的区块链账户密钥备份及恢复的方法、系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。

具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够对区块链中用户的区块链账户密钥进行备份以及恢复,从而避免用户的区块链账户密钥丢失,给用户造成巨大的经济损失的问题。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1