CN109302284B - 一种硬件钱包 - Google Patents
一种硬件钱包 Download PDFInfo
- Publication number
- CN109302284B CN109302284B CN201811141434.8A CN201811141434A CN109302284B CN 109302284 B CN109302284 B CN 109302284B CN 201811141434 A CN201811141434 A CN 201811141434A CN 109302284 B CN109302284 B CN 109302284B
- Authority
- CN
- China
- Prior art keywords
- key
- sub
- stored
- target
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000015654 memory Effects 0.000 claims abstract description 316
- 238000003860 storage Methods 0.000 claims description 155
- 238000012795 verification Methods 0.000 claims description 92
- 238000000034 method Methods 0.000 description 23
- 238000012545 processing Methods 0.000 description 16
- 230000010365 information processing Effects 0.000 description 13
- 238000000354 decomposition reaction Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000013478 data encryption standard Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000014759 maintenance of location Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005336 cracking Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephone Function (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供了一种硬件钱包,硬件钱包包括第一存储器和第二存储器,第一存储器和第二存储器连接;第一存储器用于存储第一份待存储子密钥,第二存储器,用于存储第二份待存储子密钥,第一数量和第二数量均小于第一目标数量,第一份待存储子密钥和第二份待存储子密钥能够得到待存储密钥。通过本申请实施例提供的技术方案,待存储密钥被分解为多个待存储子密钥,第一存储器和第二存储器中分别存储一部分待存储子密钥,只有将第一存储器中存储的第一份待存储子密钥与第二存储器中存储的第二份待存储子密钥一起才能够得到完整的待存储密钥。这样,将完整的待存储密钥分散于硬件钱包中的两个存储器,提高了硬件钱包存储密钥的安全性。
Description
技术领域
本申请涉及信息安全技术领域,特别是涉及一种硬件钱包。
背景技术
为了保障账户、数字货币的安全,账户或者数字货币均会设置有对应的密钥,只有使用正确的密钥才能进入账户或者提取数字货币,因此,密钥的重要性不言而喻。一般来说,密钥会被存储在网络中,利用安全网络技术保障密钥的安全存储。但是再安全的技术也可能存在漏洞,进而可能导致密钥被盗的风险。为了解决这个问题,硬件钱包应运而生。
硬件钱包是一种新型的密钥存储方法,硬件钱包将数字资产密钥单独存储在一个芯片中,实现密钥与网络隔离。只有在需要使用密钥时,采用即插即用的方式将硬件钱包连接网络,从硬件钱包中获取所存储的密钥。通过硬件钱包存储密钥的方式,可以降低以网络攻击的方式盗取密钥的风险。
然而,目前一个硬件钱包中存储一个完整的密钥,若存储密钥的硬件钱包丢失,则密钥也会丢失。这种情况下,通过暴力破解等手段,可能破解硬件钱包,导致密钥被盗。
发明内容
本申请实施例的目的在于提供一种硬件钱包,以提高硬件钱包存储密钥的安全性。具体技术方案如下:
第一方面,本申请实施例提供了一种硬件钱包,所述硬件钱包包括第一存储器和第二存储器,所述第一存储器和所述第二存储器连接;
所述第一存储器,用于存储第一份待存储子密钥,所述第一份待存储子密钥包括:在待存储密钥被分解处理后所得到的第一目标数量的待存储子密钥中第一数量的待存储子密钥;
所述第二存储器,用于存储第二份待存储子密钥,所述第二份待存储子密钥包括:在所述待存储密钥被分解处理后所得到的所述第一目标数量的待存储子密钥中第二数量的待存储子密钥;
其中,所述第一数量和所述第二数量均小于所述第一目标数量,所述第一份待存储子密钥和所述第二份待存储子密钥能够得到所述待存储密钥。
可选地,所述第一存储器和所述第二存储器均与客户端连接;
所述客户端,用于存储第三份待存储子密钥,所述第三份待存储子密钥包括:在所述待存储密钥被分解处理后所得到的所述第一目标数量的待存储子密钥中第三数量的待存储子密钥;
其中,所述第三数量小于所述第一目标数量,所述第一份待存储子密钥和所述第二份待存储子密钥中任一与所述第三份待存储子密钥能够得到所述待存储密钥。
可选地,所述客户端,具体用于利用预设加密算法对待存储密钥进行加密处理,得到加密处理后的待存储密钥;对加密处理后的待存储密钥进行分解处理,得到所述第一目标数量的待存储子密钥;将所述第一目标数量的待存储子密钥中的第一数量的待存储子密钥确定为第一份待存储子密钥,将所述第一目标数量的待存储子密钥中的第二数量的待存储子密钥确定为第二份待存储子密钥,将所述第一目标数量的待存储子密钥中的第三数量的待存储子密钥确定为第三份待存储子密钥;
获取所述预设加密算法的目标密钥,并对所述目标密钥进行分解处理,得到第二目标数量的目标子密钥,并将所述第二目标数量的目标子密钥中的第四数量的目标子密钥确定为第一份目标子密钥,将所述第二目标数量的目标子密钥中的第五数量的目标子密钥确定为第二份目标子密钥,将所述第二目标数量的目标子密钥中的第六数量的目标子密钥确定为第三份目标子密钥;
将所述第一份待存储子密钥和所述第一份目标子密钥发送至所述第一存储器进行存储;将所述第二份待存储子密钥和所述第二份目标子密钥发送至所述第二存储器进行存储;将所述第三份待存储子密钥和所述第三份目标子密钥存储于本地。
可选地,所述客户端,还用于利用预设加密算法分别对所述第一份待存储子密钥、所述第二份待存储子密钥和所述第三份待存储子密钥进行加密处理,并获取所述预设加密算法的目标密钥;
所述第一存储器,还用于存储所述第一份目标子密钥,其中,所述第一份目标子密钥包括:在所述目标密钥被分解处理后所得到的第二目标数量的目标子密钥中第四数量的目标子密钥;
所述第二存储器,还用于存储所述第二份目标子密钥,其中,所述第二份目标子密钥包括:在所述目标密钥被分解处理后所得到的所述第二目标数量的目标子密钥中第五数量的目标子密钥;
所述客户端,还用于存储所述第三份目标子密钥,其中,所述第三份目标子密钥包括:在所述目标密钥被分解处理后所得到的所述第二目标数量的目标子密钥中第六数量的目标子密钥;
其中,所述第四数量、所述第五数量和所述第六数量均小于所述第二目标数量,所述第一份目标子密钥、所述第二份目标子密钥和所述第三份目标子密钥中的任意两份目标子密钥能够得到所述目标密钥。
可选地,所述客户端,具体用于对所述目标密钥进行分解处理,得到所述第二目标数量的目标子密钥;从所得到的目标子密钥中,将所述第四数量的目标子密钥确定为所述第一份目标子密钥,将所述第五数量的目标子密钥确定为所述第二份目标子密钥,将所述第六数量的目标子密钥确定为所述第三份目标子密钥;将所述第一份目标子密钥发送至所述第一存储器,将所述第二份目标子密钥发送至所述第二存储器,对所述第三份目标子密钥进行存储;
所述第一存储器,具体用于接收所述客户端发送的第一份目标子密钥,并存储所述第一份目标子密钥;
所述第二存储器,具体用于接收所述客户端发送的第二份目标子密钥,并存储所述第二份目标子密钥;
可选地,所述第二目标数量为三,所述第四数量、所述第五数量和所述第六数量均为二。
可选地,所述客户端,具体用于利用预设加密算法对待存储密钥进行加密处理,得到加密处理后的待存储密钥;对加密处理后的待存储密钥进行分解处理,得到所述第一目标数量的待存储子密钥;
将所述第一目标数量的待存储子密钥中的第一数量的待存储子密钥作为第一份待存储子密钥和目标密钥发送至第一存储器进行存储;将所述第一目标数量的待存储子密钥中的第二数量的待存储子密钥作为第二份待存储子密钥和所述目标密钥发送至第二存储器进行存储;将所述第一目标数量的待存储子密钥中的第三数量的待存储子密钥作为第三份待存储子密钥和所述目标密钥存储于本地;其中,所述目标密钥为所述预设加密算法的密钥。
可选地,所述客户端,还用于利用预设加密算法分别对所述第一份待存储子密钥、所述第二份待存储子密钥和所述第三份待存储子密钥进行加密处理,并获取所述预设加密算法的目标密钥;将所述目标密钥分别发送至所述第一存储器和所述第二存储器;并在本地存储所述目标密钥;
所述第一存储器,还用于接收所述客户端发送的所述目标密钥,并存储所述目标密钥;
所述第二存储器,还用于接收所述客户端发送的所述目标密钥,并存储所述目标密钥。
可选地,所述客户端,还用于在分别与所述第一存储器、所述第二存储器建立连接之后,对所述第一存储器进行验证,对所述第二存储器进行验证;当对所述第一存储器的验证、对所述第二存储器的验证均成功时,确定与所述第一存储器、所述第二存储器均匹配。
可选地,所述客户端,具体用于利用第一密钥对本地存储的第一验证信息进行加密处理,并将加密处理后的第一验证信息发送至所述第一存储器;
所述第一存储器,具体用于接收所述客户端发送的经过加密处理后的第一验证信息,并利用本地存储的第一预设验证信息对该第一验证信息进行解密处理,得到所述第一密钥,利用所述第一密钥对本地存储的第一标识进行加密处理,并将加密处理后的第一标识发送至所述客户端;
所述客户端,具体用于接收所述第一存储器发送的加密处理后的第一标识,利用所述第一密钥对加密处理后的第一标识进行解密处理,得到解密后的第一标识,将该第一标识与预先存储的第一预设标识进行匹配,若匹配,则判定对所述第一存储器验证成功。
可选地,所述客户端,具体用于利用第二密钥对本地存储的第二验证信息进行加密处理,并将加密处理后的第二验证信息发送至所述第二存储器;
所述第二存储器,具体用于接收所述客户端发送的经过加密处理后的第二验证信息,并利用本地存储的第二预设验证信息对该第二验证信息进行解密处理,得到所述第二密钥,利用所述第二密钥对本地存储的第二标识进行加密处理,并将加密处理后的第二标识发送至所述客户端;
所述客户端,具体用于接收所述第二存储器发送的加密处理后的第二标识,利用所述第二密钥对加密处理后的第二标识进行解密处理,得到解密后的第二标识,将该第二标识与预先存储的第二预设标识进行匹配,若匹配,则判定对所述第二存储器验证成功。
可选地,所述第一目标数量为三,所述第一数量、所述第二数量和所述第三数量均为二。
可选地,所述第一存储器与所述第二存储器连接,所述客户端通过所述第一存储器与所述第二存储器连接。
本申请实施例提供的技术方案中,硬件钱包包括第一存储器和第二存储器,第一存储器和第二存储器连接;第一存储器,用于存储第一份待存储子密钥,第二存储器,用于存储第二份待存储子密钥;其中,第一数量和第二数量均小于第一目标数量,第一份待存储子密钥和第二份待存储子密钥能够得到待存储密钥。通过本申请实施例提供的技术方案,待存储密钥被分解为若干份待存储子密钥,第一存储器和第二存储器中分别存储该若干份待存储子密钥中的一部分待存储子密钥,并且只有将第一存储器中存储的第一份待存储子密钥与第二存储器中存储的第二份待存储子密钥结合才能够得到完整的待存储密钥。这样,即使第一存储器和第二存储器中的任一个丢失,也不会导致完整的待存储密钥丢失,并且,将完整的待存储密钥分散于硬件钱包中的两个存储器,提高了硬件钱包存储密钥的安全性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的硬件钱包的第一种结构示意图;
图2为本申请实施例提供的硬件钱包的一种应用场景示意图;
图3为本申请实施例提供的硬件钱包的第二种结构示意图;
图4为本申请实施例提供的硬件钱包的第三种结构示意图;
图5为本申请实施例提供的硬件钱包的另一种应用场景示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了提高硬件钱包存储密钥的安全性,本申请实施例提供了一种硬件钱包,硬件钱包包括第一存储器和第二存储器,第一存储器和第二存储器连接;
第一存储器,用于存储第一份待存储子密钥,第一份待存储子密钥包括:在待存储密钥被分解处理后所得到的第一目标数量的待存储子密钥中第一数量的待存储子密钥;
第二存储器,用于存储第二份待存储子密钥,第二份待存储子密钥包括:在待存储密钥被分解处理后所得到的第一目标数量的待存储子密钥中第二数量的待存储子密钥;
其中,第一数量和第二数量均小于第一目标数量,第一份待存储子密钥和第二份待存储子密钥能够得到待存储密钥。
本申请实施例提供的技术方案中,硬件钱包包括第一存储器和第二存储器,第一存储器和第二存储器连接;第一存储器,用于存储第一份待存储子密钥,第二存储器,用于存储第二份待存储子密钥;其中,第一数量和第二数量均小于第一目标数量,第一份待存储子密钥和第二份待存储子密钥能够得到待存储密钥。通过本申请实施例提供的技术方案,待存储密钥被分解为若干份待存储子密钥,第一存储器和第二存储器中分别存储该若干份待存储子密钥中的一部分待存储子密钥,并且只有将第一存储器中存储的第一份待存储子密钥与第二存储器中存储的第二份待存储子密钥结合才能够得到完整的待存储密钥。这样,即使第一存储器和第二存储器中的任一个丢失,也不会导致完整的待存储密钥丢失,并且,将完整的待存储密钥分散于硬件钱包中的两个存储器,提高了硬件钱包存储密钥的安全性。
如图1所示的本申请实施例提供的硬件设备的一种结构示意图,本申请实施例提供的一种硬件设备100,包括第一存储器110和第二存储器120。
其中,如图2所示的本申请实施例提供的硬件设备的一种应用场景示意图,第一存储器110和第二存储器120连接,第一存储器110和第二存储器120之间可以通信。一种实现方式中,第一存储器110和第二存储器120之间通过并行总线连接。
第一存储器,用于存储第一份待存储子密钥。第一份待存储子密钥包括:在待存储密钥被分解处理后所得到的第一目标数量的待存储子密钥中第一数量的待存储子密钥
第二存储器,用于存储第二份待存储子密钥。第二份待存储子密钥包括:在待存储密钥被分解处理后所得到的第一目标数量的待存储子密钥中第二数量的待存储子密钥。
其中,待存储密钥即为硬件钱包所需存储的密钥。第一目标数量可以是自定义设定的。比如,第一目标数量为3,则将待存储密钥进行分解处理之后,可以得到3个待存储子密钥。
待存储密钥被分解处理的规则可以是自定义设定的。一种实现方式中,可以按照待存储密钥的密钥长度对待存储密钥进行平均分解,即分解处理之后所得到的每一个待存储子密钥的密钥长度是相同的。例如,待存储密钥的密钥长度为90比特,第一目标数量为3,则将该90比特的待存储密钥进行平均分解处理,可以得到3个待存储子密钥,每一个待存储子密钥的密钥长度30比特。
另一种实现方式中,待存储密钥被分解处理还可以是随机分解,即所得到的每一个待存储子密钥的密钥长度可能不相同。例如,待存储密钥的密钥长度为68比特,第一目标数量为3,则对该68比特的待存储密钥进行随机分解处理,可以得到子密钥1、子密钥2和子密钥3,其中,子密钥1的密钥长度为10比特,子密钥2的密钥长度为20比特,子密钥3的密钥长度为38比特。
待存储密钥被分解处理的规则并不仅限于以上两种实现方式,在此不做限定。
其中,第一数量和第二数量均可以是自定义设定的,第一数量和第二数量均小于第一目标数量,即第一存储器中存储的第一份待存储子密钥和第二存储器中存储的第二份待存储子密钥均不是完整的待存储密钥,第一份存储子密钥为所得到的待存储子密钥中的一部分待存储子密钥,第二份存储子密钥也为所得到的待存储子密钥中的一部分待存储子密钥。这样,在第一存储器和第二存储器中的任一个发生丢失或被盗等情况时很大程度上降低了完整的待存储密钥被盗的可能性。
另外,第一份待存储子密钥和第二份待存储子密钥能够得到待存储密钥。在使用硬件钱包时,从第一存储器中获取第一份待存储子密钥,并从第二存储器中获取第二份待存储子密钥,将第一份待存储子密钥和第二份待存储子密钥合成,可以得到待存储密钥。这样,不仅降低了完整的待存储密钥被盗的可能性,而且提高了硬件钱包对待存储密钥进行存储的安全性。
为了进一步地提高安全性,第一存储器和第二存储器在匹配的情况下硬件钱包才可以使用。一种实现方式中,预先设定第一存储器和第二存储器之间的对应关系,该对应关系可以是自定义设定的,第一存储器和第二存储器在满足该对应关系时,可以确定第一存储器和第二存储器匹配,此时硬件钱包才可以使用。这样,即使第一存储器和第二存储器中任意一个出现丢失、被盗等意外情况时,因为不能满足对应关系而不能使用,进而可以保障存储器中所存储密钥的安全,降低了密钥被盗的可能性。
一种实现方式中,第一存储器与第二存储器为一一对应的关系,也就是说,每一个第一存储器与唯一的第二存储器是匹配的,第一存储器与匹配的第二存储器才能使用。
例如,第一存储器C11与第二存储器C12是相匹配的,且第一存储器C11与第二存储器C12是一一对应的关系。那么,第一存储器C11只能与第二存储器C12配合才能使用,获取到第一存储器C11中存储的密钥以及第二存储器C12中存储的密钥。而第一存储器C11与第二存储器C22、C32等其他的第二存储器是不匹配的,即使连接也不能使用的。
一种实施方式中,硬件钱包100还可以包括客户端。客户端可以是安装于终端设备上的应用程序,其中,终端设备可以是手机、平板、电脑等电子设备。客户端分别与第一存储器110、第二存储器120连接。其中,连接的方式包括直接连接和间接连接,直接连接是指客户端与存储器之间可以直接通信,间接连接是指客户端与存储器之间需要通过其他设备才能进行通信。
一种实施方式中,如图3所示的本申请实施例提供的硬件钱包的一种结构示意图,客户端130与第一存储器之间为直接连接,即客户端可以与第一存储器直接进行通信。客户端与第二存储器之间也为直接连接,即客户端可以与第二存储器直接进行通信。
另一种实施方式中,第一存储器和第二存储器中的任意一个存储器与客户端直接连接,另一个存储器则通过与客户端直接连接的存储器,与该客户端间接连接。
一种实现方式中,如图4所示的本申请实施例提供的硬件钱包的另一种结构示意图,第一存储器与客户端直接连接,则第二存储器通过第一存储器与该客户端间接连接。也就是说,客户端可以将信息直接发送至第一存储器,而当客户端向第二存储器发送信息时,客户端将信息发送至第一存储器,由第一存储器将该信息转发至第二存储器,这样实现客户端与第二存储器之间的通信连接。
另一种实现方式中,第一存储器与第二存储器之间连接,第二存储器与客户端直接连接,则第一存储器通过第二存储器与该客户端间接连接。
在该实施方式中,与客户端直接连接的存储器具有信息处理能力,对于具有信息处理能力的存储器,可以称为母盘。与客户端间接连接的存储器则可以不具有信息处理能力,通过连接的具有信息处理能力的存储器进行信息处理,对于不具有信息处理能力的存储器,可以称为子盘。子盘通过母盘与客户端通信连接,这样可以节省成本。
如图5所示的一种应用场景示意图,应用程序为“硬件钱包”的客户端安装在终端设备上,客户端与第一存储器直接连接,即该终端设备与第一存储器直接连接,第一存储器与第二存储器连接,这样,客户端与第二存储器间接连接。与客户端直接连接的第一存储器具有信息处理能力,即第一存储器为母盘,第二存储器为子盘。
客户端,用于存储第三份待存储子密钥,第三份待存储子密钥包括:在待存储密钥被分解处理后所得到的第一目标数量的待存储子密钥中第三数量的待存储子密钥。
其中,客户端中存储的第三份待存储子密钥可以是存储于该客户端安装的终端设备中,还可以是存储于该客户端连接的云服务器。
其中,第三数量可以是自定义设定的,第三数量小于第一目标数量,即客户端中存储的第三份待存储子密钥不是完整的待存储密钥。这样,即使客户端中存储的第三份待存储子密钥发生丢失、被盗等意外情况时,也不会导致完整的待存储密钥丢失,进而降低了完整的待存储密钥被盗的可能性。
其中,第一数量、第二数量和第三数量三者可以均相同,例如,在第一目标数量为3时,第一数量、第二数量和第三数量均为2。还可以只有其中任意两者相同,例如,在第一目标数量为4时,第一数量为3,第二数量和第三数量均为2;还可以均不相同,例如,在第一目标数量为5时,第一数量为2,第二数量为3,第三数量为4。
其中,第一份待存储子密钥和第二份待存储子密钥中任一与第三份待存储子密钥能够得到待存储密钥。即第一份待存储子密钥、第二份待存储子密钥和第三份待存储子密钥中的任意两份待存储子密钥能够得到待存储密钥。
例如,所得到的待存储子密钥包括子密钥1、子密钥2、子密钥3和子密钥4,其中,将子密钥1、子密钥2和子密钥3确定为第一份待存储子密钥,将子密钥2、子密钥3和子密钥4确定为第二份待存储子密钥,将子密钥3、子密钥4和子密钥1确定为第三份待存储子密钥,将子密钥4、子密钥1和子密钥2确定为第四份待存储子密钥。则由第一份待存储子密钥和第二份待存储子密钥可以得到所得到的待存储子密钥,即可以得到待存储密钥,或者,由第二份待存储子密钥和第三份待存储子密钥也可以得到待存储密钥,等等任意两份待存储子密钥能够得到待存储密钥。
第一份待存储子密钥、第二份待存储子密钥和第三份待存储子密钥中,每两者之间可以包含不同的待存储子密钥,还可以包含相同的待存储子密钥。
例如,所得到的待存储子密钥包括子密钥1、子密钥2、子密钥3和子密钥4,其中,将子密钥1、子密钥2和子密钥3确定为第一份待存储子密钥,将子密钥2、子密钥3和子密钥4确定为第二份待存储子密钥,将子密钥1、子密钥2和子密钥4确定为第三份待存储子密钥。则其中,第一份待存储子密钥与第二份待存储子密钥均包含有子密钥2和子密钥3,第一份待存储子密钥包含的子密钥1与第二份待存储子密钥包含的子密钥4是不相同的。
一种实施方式中,第一目标数量为三,第一数量、第二数量和第三数量均为二。也就是说,对待存储密钥进行分解处理,可以得到三个待存储子密钥;从这三个待存储子密钥中,可以将其中两个待存储子密钥确定为第一份待存储子密钥,将其中两个待存储子密钥确定为第二份待存储子密钥,将其中两个待存储子密钥确定为第三份待存储子密钥。其中,第一份待存储子密钥、第二份待存储子密钥和第三份待存储子密钥中的任意两份待存储子密钥能够得到待存储密钥
例如,所得到的待存储子密钥包括子密钥1、子密钥2和子密钥3,其中,将子密钥1和子密钥2确定为第一份待存储子密钥,将子密钥2和子密钥3确定为第二份待存储子密钥,将子密钥1和子密钥3确定为第三份待存储子密钥。则由第一份待存储子密钥和第二份待存储子密钥可以得到所得到的待存储子密钥,即可以得到待存储密钥,或者,由第二份待存储子密钥和第三份待存储子密钥也可以得到待存储密钥,或者,由第一份待存储子密钥和第三份待存储子密钥也可以得到待存储密钥。
对于硬件钱包的使用,可以结合客户端、第一存储器和第二存储器来使用。此时,除了第一存储器与第二存储器匹配以外,第一存储器、第二存储器还要与客户端进行匹配,也就是说,客户端、第一存储器和第二存储器三者匹配的情况下硬件钱包才能使用。其中,第一存储器、第二存储器与客户端的匹配可以至少包括以下两种情况。
第一种情况,第一存储器、第二存储器与客户端所安装的终端设备进行匹配,即在第一存储器、第二存储器与客户端三者的对应关系中,第一存储器、第二存储器与客户端的对应关系,即为与终端设备的对应关系。
例如,在第一存储器、第二存储器与客户端三者的对应关系中,第一存储器、第二存储器与安装客户端的终端设备a是相匹配的,则第一存储器、第二存储器只有与该终端设备a建立连接才能与该终端设备a上安装的客户端进行使用。
第二种情况,客户端是以用户认证登录的方式使用。第一存储器、第二存储器与客户端三者的对应关系,即为第一存储器、第二存储器与登录该客户端的用户的对应关系。在这种情况下,只要是同一用户,即使用不同的客户端登录,也可以与对应的第一存储器、第二存储器相匹配并进行使用。
例如,第一存储器、第二存储器和用户a是对应关系,则当用户a登录客户端1时,此时该客户端1可以与第一存储器、第二存储器匹配。当用户a登录客户端2时,此时该客户端2可以与第一存储器、第二存储器匹配。
第一存储器、第二存储器与客户端的匹配情况并不仅限于以上两种,还可以包括其他的情况,在此不做限定。
一种实施方式中,在客户端与第一存储器、第二存储器均匹配之后,客户端可以对待存储密钥进行分解处理,得到第一目标数量的待存储子密钥。
为了进一步地提高密钥存储的安全性,可以对所得到的待存储子密钥进行加密处理。一种实施方式中,客户端,还用于利用预设加密算法分别对第一份待存储子密钥、第二份待存储子密钥和第三份待存储子密钥进行加密处理,并获取预设加密算法的目标密钥。
其中,预设加密算法可以是自定义设定的,例如,预设加密算法可以是AES(Advanced Encryption Standard,高级加密标准)加密算法、RSA加密算法、DES(DataEncryption Standard,数据加密标准)加密算法等加密算法中的任一种。本申请实施例中的预设加密算法不仅限于以上三种加密算法,还可以包括其他的加密算法,在此不做限定。
获取预设加密算法的目标密钥。一种实现方式中,目标密钥是预先设定的、针对预设加密算法的密钥,客户端可以从本地获取预设的目标密钥。目标密钥为利用预设加密算法加密后对应的解密密钥。即该目标密钥可以对加密处理后的第一份待存储子密钥进行解密,可以对加密处理后的第二份待存储子密钥进行解密,还可以加密处理后的第三份待存储子密钥进行解密。
为了提高针对目标密钥存储的安全性,一种实施方式中,客户端可以具体用于对目标密钥进行分解处理,得到第二目标数量的目标子密钥;从所得到的目标子密钥中,将第四数量的目标子密钥确定为第一份目标子密钥,将第五数量的目标子密钥确定为第二份目标子密钥,将第六数量的目标子密钥确定为第三份目标子密钥;将第一份目标子密钥发送至第一存储器,将第二份目标子密钥发送至第二存储器,对第三份目标子密钥进行存储。
其中,第二目标数量可以是自定义设定的,比如,第二目标数量为3,则将目标密钥进行分解处理之后,可以得到3个目标子密钥。
对目标密钥进行分解处理可以通过门限算法进行分割处理,还可以通过其他的分解方式,在此不做限定。
对目标密钥进行分解处理的规则可以是自定义设定的。一种实现方式中,可以按照目标密钥的密钥长度对目标密钥进行平均分解,即分解处理之后所得到的每一个目标子密钥的密钥长度是相同的。例如,目标密钥的密钥长度为60比特,第一目标数量为3,则将该60比特的目标密钥进行平均分解处理,可以得到3个目标子密钥,每一个目标子密钥的密钥长度20比特。
另一种实现方式中,还可以对目标密钥进行随机分解,即所得到的每一个目标子密钥的密钥长度可能不相同。例如,目标密钥的密钥长度为128比特,第一目标数量为3,则对该128比特的目标密钥进行随机分解处理,可以得到目标子密钥1、目标子密钥2和目标子密钥3,其中,目标子密钥1的密钥长度为30比特,目标子密钥2的密钥长度为40比特,目标子密钥3的密钥长度为58比特。
对目标密钥进行分解处理的规则并不仅限于以上两种实现方式,在此不做限定。
客户端在得到第二目标数量的目标子密钥之后,可以从所得到的目标子密钥中,将第四数量的目标子密钥确定为第一份目标子密钥,将第五数量的目标子密钥确定为第二份目标子密钥,将第六数量的目标子密钥确定为第三份目标子密钥。
其中,第四数量、第五数量和第六数量均小于第二目标数量,第四数量、第五数量和第六数量均可以是自定义设定的。第四数量、第五数量和第六数量三者可以均相同,例如,在第二目标数量为3时,第四数量、第五数量和第六数量均为2;还可以只有其中任意两者相同,例如,在第二目标数量为4时,第四数量为3,第五数量和第六数量均为2;还可以均不相同,例如,在第二目标数量为5时,第四数量为2,第五数量为3,第六数量为4。
其中,第四数量的目标子密钥、第五数量的目标子密钥以及第六数量的目标子密钥均为所得到的目标子密钥中的一部分目标子密钥。
所确定出的第一份目标子密钥、第二份目标子密钥和第三份目标子密钥中,每两者之间可以包含不同的目标子密钥,还可以包含相同的目标子密钥。
例如,所得到的目标子密钥包括目标子密钥1、目标子密钥2、目标子密钥3和目标子密钥4,其中,将目标子密钥1、目标子密钥2和目标子密钥3确定为第一份目标子密钥,将目标子密钥2、目标子密钥3和目标子密钥4确定为第二份目标子密钥,将目标子密钥1、目标子密钥2和目标子密钥4确定为第三份目标子密钥。则其中,第一份目标子密钥与第二份目标子密钥均包含有目标子密钥2和目标子密钥3,第一份目标子密钥包含的目标子密钥1与第二份目标子密钥包含的目标子密钥4是不相同的。
其中,第一份目标子密钥、第二份目标子密钥和第三份目标子密钥中的任意两份目标子密钥能够得到目标密钥。
例如,所得到的目标子密钥包括目标子密钥1、目标子密钥2、目标子密钥3和目标子密钥4,其中,将目标子密钥1、目标子密钥2和目标子密钥3确定为第一份目标子密钥,将目标子密钥2、目标子密钥3和目标子密钥4确定为第二份目标子密钥,将目标子密钥3、目标子密钥4和目标子密钥1确定为第三份目标子密钥,将目标子密钥4、目标子密钥1和目标子密钥2确定为第四份目标子密钥。则由第一份目标子密钥和第二份目标子密钥可以得到所得到的目标子密钥,即可以得到目标密钥,或者,由第二份目标子密钥和第三份目标子密钥也可以得到目标密钥,等等任意两份目标子密钥能够得到目标密钥。
基于上述实施方式,第一存储器还可以存储第一份目标子密钥,第二存储器还可以存储第二份目标子密钥,客户端还可以存储第三份目标子密钥。
一种实现方式中,客户端在确定出第一份目标子密钥、第二份目标子密钥和第三份目标子密钥之后,可以将第一份目标子密钥发送至第一存储器,将第二份目标子密钥发送至第二存储器,并对第三份目标子密钥进行存储。
对于第一存储器,可以接收客户端发送的第一份目标子密钥,并存储该第一份目标子密钥。对于第二存储器,可以接收客户端发送的第二份目标子密钥,并存储该第二份目标子密钥。
根据客户端与第一存储器、第二存储器连接的方式不一样,客户端与第一存储器、第二存储器之间交互包括以下三种情况。
第一种情况,当客户端与第一存储器、第二存储器均直接连接时,客户端可以将第一份待存储子密钥直接发送至第一存储器,由第一存储器存储第一份待存储子密钥。客户端可以将第二份待存储子密钥直接发送至第二存储器,由第二存储器存储第二份待存储子密钥。
第二种情况,当客户端与第一存储器直接连接,而与第二存储器间接连接时,即第二存储器通过第一存储器与客户端连接。则客户端可以将第一份待存储子密钥直接发送至第一存储器进行存储。对于第二份待存储子密钥的存储,客户端可以将第二份待存储子密钥发送至第一存储器,由第一存储器再将该第二份待存储子密钥转发至第二存储器进行存储。
第三种情况,当客户端与第二存储器直接连接,而与第一存储器间接连接时,即第一存储器通过第二存储器与客户端连接。则客户端可以将第二份待存储子密钥直接发送至第二存储器进行存储。对于第一份待存储子密钥的存储,客户端可以将第一份待存储子密钥发送至第二存储器,由第二存储器再将该第一份待存储子密钥转发至第一存储器进行存储。
一种实施方式中,第二目标数量可以为三,第四数量、第五数量和第六数量均可以为二。
即客户端在得到预设加密算法对应的目标密钥后,对目标密钥进行分解处理,得到三个目标子密钥;从所得到的三个目标子密钥中,将两个目标子密钥确定为第一份目标子密钥,将两个目标子密钥确定为第二份目标子密钥,将两个目标子密钥确定为第三份目标子密钥,其中,第一份目标子密钥、第二份目标子密钥和第三份目标子密钥中的任意两份目标子密钥能够得到目标密钥。
例如,对目标密钥进行分解处理,得到三个目标子密钥包括目标子密钥1、目标子密钥2和目标子密钥3,其中,将目标子密钥1和目标子密钥2确定为第一份目标子密钥,将目标子密钥2和目标子密钥3确定为第二份目标子密钥,将目标子密钥3和目标子密钥1确定为第三份目标子密钥。则由第一份目标子密钥和第二份目标子密钥可以得到目标密钥,或者,由第二份目标子密钥和第三份目标子密钥也可以得到目标密钥,由第一份目标子密钥和第三份目标子密钥可以得到目标密钥。
一种实施方式中,客户端,具体用于利用预设加密算法对待存储密钥进行加密处理,得到加密处理后的待存储密钥;对加密处理后的待存储密钥进行分解处理,得到第一目标数量的待存储子密钥;将第一目标数量的待存储子密钥中的第一数量的待存储子密钥确定为第一份待存储子密钥,将第一目标数量的待存储子密钥中的第二数量的待存储子密钥确定为第二份待存储子密钥,将第一目标数量的待存储子密钥中的第三数量的待存储子密钥确定为第三份待存储子密钥。
其中,对加密处理后的待存储密钥进行分解处理可以通过门限算法进行分割处理,还可以通过其他的分解方式,在此不做限定。
获取预设加密算法的目标密钥,并对目标密钥进行分解处理,得到第二目标数量的目标子密钥,并将第二目标数量的目标子密钥中的第四数量的目标子密钥确定为第一份目标子密钥,将第二目标数量的目标子密钥中的第五数量的目标子密钥确定为第二份目标子密钥,将第二目标数量的目标子密钥中的第六数量的目标子密钥确定为第三份目标子密钥。
其中,对目标密钥进行分解处理可以通过门限算法进行分割处理,还可以通过其他的分解方式,在此不做限定。
将第一份待存储子密钥和第一份目标子密钥发送至第一存储器进行存储;将第二份待存储子密钥和第二份目标子密钥发送至第二存储器进行存储;将第三份待存储子密钥和第三份目标子密钥存储于本地。
一种实施方式中,客户端,具体用于利用预设加密算法对待存储密钥进行加密处理,得到加密处理后的待存储密钥;对加密处理后的待存储密钥进行分解处理,得到第一目标数量的待存储子密钥;
将第一目标数量的待存储子密钥中的第一数量的待存储子密钥作为第一份待存储子密钥和目标密钥发送至第一存储器进行存储;将第一目标数量的待存储子密钥中的第二数量的待存储子密钥作为第二份待存储子密钥和目标密钥发送至第二存储器进行存储;将第一目标数量的待存储子密钥中的第三数量的待存储子密钥作为第三份待存储子密钥和目标密钥存储于本地;其中,目标密钥为预设加密算法的密钥。
一种实施方式中,客户端,还用于利用预设加密算法分别对第一份待存储子密钥、第二份待存储子密钥和第三份待存储子密钥进行加密处理,并获取预设加密算法对应的目标密钥;将目标密钥分别发送至第一存储器和第二存储器;并在本地存储目标密钥;第一存储器还用于接收客户端发送的目标密钥,并存储目标密钥;第二存储器还用于接收客户端发送的目标密钥,并存储目标密钥。
一种实施方式中,客户端,还可以在分别与第一存储器、第二存储器建立连接之后,对第一存储器进行验证,对第二存储器进行验证;当对第一存储器的验证、对第二存储器的验证均成功时,确定与第一存储器、第二存储器均匹配。
其中,对第一存储器的验证和对第二存储器的验证可以是分别进行的,既可以先对第一存储器进行验证再对第二存储器进行验证,还可以先对第二存储器进行验证再对第一存储器进行验证。本申请实施例中对第一存储器和第二存储器进行验证的顺序不做限定。
对第一存储器和第二存储器进行验证之后的验证结果可以包括以下四种情况:对第一存储器和第二存储器的验证均成功;对第一存储器的验证成功而对第二存储器的验证失败;对第二存储器的验证成功而对第一存储器的验证失败;对第一存储器和第二存储器的验证均失败。
在完成对第一存储器和第二存储器的验证之后,判断对第一存储器的验证、对第二存储器的验证是否均成功。如果对第一存储器和第二存储器的验证均成功,则可以判定客户端与第一存储器、第二存储器均匹配。
如果判断出对第一存储器的验证、对第二存储器的验证不是均成功,即出现以下三种情况中的任一种:对第一存储器的验证成功而对第二存储器的验证失败;对第二存储器的验证成功而对第一存储器的验证失败;对第一存储器和第二存储器的验证均失败。则可以判定客户端与第一存储器、第二存储器的匹配失败。
在判断出匹配失败后,可以将客户端与第一存储器的连接断开,将客户端与第二存储器的连接断开。
通过该实施方式,客户端在进行存储之前,对第一存储器和第二存储器分别进行验证,只有在验证通过的情况下才可以认为客户端与第一存储器、第二存储器匹配,才能继续存储操作。通过验证过程,提高了存储的安全性。
一种实施方式中,客户端对第一存储器进行验证,可以包括如下步骤。
客户端可以利用第一密钥对本地存储的第一验证信息进行加密处理,并将加密处理后的第一验证信息发送至第一存储器。
其中,第一验证信息是客户端预先存储在本地的验证信息。客户端对第一验证信息进行加密处理的方式可以是预设的,例如,RSA加密方式、AES加密方式、DES(DataEncryption Standard,数据加密标准)加密方式等,在此不作限定。
其中,所利用的第一密钥可以是自定义设定的。一种实现方式中,为了提高对第一验证信息加密处理后的安全性,第一密钥可以是随机密钥,即每一次对第一验证信息进行加密的第一密钥均是不相同的。采用随机密钥增加了破解的难度,提高了安全性。
其中,将第一验证信息发送至第一存储器的方式至少包括以下两种:若客户端与第一存储器直接连接,则客户端可以将第一验证信息直接发送至第一存储器;若客户端与第一存储器间接连接,则客户端可以将第一验证信息发送至第二存储器,由第二存储器将该第一验证信息转发至第一存储器。
对于第一存储器,可以接收客户端发送的经过加密处理后的第一验证信息,并利用本地存储的第一预设验证信息对该第一验证信息进行解密处理,得到第一密钥,利用第一密钥对本地存储的第一标识进行加密处理,并将加密处理后的第一标识发送至客户端。
其中,第一预设验证信息是第一存储器预先存储在本地的验证信息,该第一预设验证信息与客户端存储的第一验证信息是对应的,一种实现方式中,第一存储器存储的第一预设验证信息与客户端存储的第一验证信息是相同的。
第一密钥与第一验证信息是相互作用的。也就是说,第一密钥可以对第一验证信息进行加密,第一验证信息可以对利用第一密钥加密处理的第一验证信息进行解密处理,进而得到该第一密钥。
基于第一预设验证信息与第一验证信息的对应关系,第一存储器可以利用第一预设验证信息对所接收到的第一验证信息进行解密处理,进而可以得到第一密钥。第一存储器所得到的第一密钥与客户端所利用的第一密钥相同。
第一存储器在得到第一密钥之后,可以利用第一密钥对第一存储器本地存储的第一标识进行加密处理,并将加密处理后的第一标识发送至客户端。
其中,第一标识是第一存储器中预先存储的,第一标识可以是固定字符串,固定字符串可以是自定义设定的。
其中,第一标识与第一存储器为对应关系。一种实施方式中,第一标识与第一存储器为一一对应关系,每一个第一存储器对应唯一的第一标识,这样便于客户端可以依据第一标识对第一存储器进行验证。
其中,针对第一存储器是否具有信息处理能力,第一存储器利用本地存储的第一预设验证信息对第一验证信息进行解密处理得到第一密钥,利用第一密钥对第一存储器本地存储的第一标识进行加密处理,并将加密处理后的第一标识发送至客户端,可以分为以下两种情况。
第一种情况,第一存储器具有信息处理能力,则第一存储器自身可以完成解密处理、加密处理等操作。具体地,第一存储器获取本地存储的第一预设验证信息,并利用该第一预设验证信息对第一验证信息进行解密处理得到第一密钥,利用第一密钥对第一存储器本地存储的第一标识进行加密处理,并将加密处理后的第一标识发送至客户端。
第二种情况,第一存储器不具有信息处理能力,则第一存储器可以与具有信息处理能力的第二存储器进行交互,通过第二存储器完成解密处理、加密处理等操作。一种实现方式中,第一存储器将本地存储的第一预设验证信息和第一标识发送至第二存储器,第二存储器利用第一预设验证信息对进行解密处理得到第一密钥,利用第一密钥对第一标识进行加密处理,并将加密处理后的第一标识发送至第一存储器。
对于客户端,可以接收第一存储器发送的加密处理后的第一标识,利用第一密钥对加密处理后的第一标识进行解密处理,得到解密后的第一标识,将该第一标识与预先存储的第一预设标识进行匹配,若匹配,则判定对第一存储器验证成功。
其中,客户端预先存储的第一预设标识与第一标识是对应关系,第一预设标识与第一标识的对应关系可以是预设的。对于客户端来说,只有接收到的第一标识与预先存储的第一预设标识满足预设的对应关系,则可以确定该第一标识与该第一预设标识匹配。
一种实现方式中,第一预设标识与第一标识为相同标识,也就是说,在匹配的客户端和第一存储器中,存储的标识是相同的。例如,客户端与第一存储器匹配,第一存储器中存储的第一标识为字符串a,则客户端中存储的第一预设标识也为字符串a。
一种实施方式中,客户端对第二存储器进行验证,可以包括如下步骤。
客户端可以利用第二密钥对本地存储的第二验证信息进行加密处理,并将加密处理后的第二验证信息发送至第二存储器。
其中,第二验证信息是客户端预先存储在本地的验证信息。客户端对第二验证信息进行加密处理的方式可以是预设的,例如,RSA加密方式、AES加密方式、DES(DataEncryption Standard,数据加密标准)加密方式等,在此不作限定。
其中,所利用的第二密钥可以是自定义设定的。一种实现方式中,为了提高对第二验证信息加密处理后的安全性,第二密钥可以是随机密钥,即每一次对第二验证信息进行加密的第二密钥均是不相同的。采用随机密钥增加了破解的难度,提高了安全性。
其中,将第二验证信息发送至第二存储器的方式至少包括以下两种:若客户端与第二存储器直接连接,则客户端可以将第二验证信息直接发送至第二存储器;若客户端与第二存储器间接连接,则客户端可以将第二验证信息发送至第一存储器,由第一存储器将该第二验证信息转发至第二存储器。
对于第二存储器,可以接收客户端发送的经过加密处理后的第二验证信息,并利用本地存储的第二预设验证信息对该第二验证信息进行解密处理,得到第二密钥,利用第二密钥对本地存储的第二标识进行加密处理,并将加密处理后的第二标识发送至客户端。
其中,第二预设验证信息是第二存储器预先存储在本地的验证信息,该第二预设验证信息与客户端存储的第二验证信息是对应的,一种实现方式中,第二存储器存储的第二预设验证信息与客户端存储的第二验证信息是相同的。
第二密钥与第二验证信息是相互作用的。也就是说,第二密钥可以对第二验证信息进行加密,第二验证信息可以对利用第二密钥加密处理的第二验证信息进行解密处理,进而得到该第二密钥。
基于第二预设验证信息与第二验证信息的对应关系,第二存储器可以利用第二预设验证信息对所接收到的第二验证信息进行解密处理,进而可以得到第二密钥。第二存储器所得到的第二密钥与客户端所利用的第二密钥相同。
第二存储器在得到第二密钥之后,可以利用第二密钥对第二存储器本地存储的第二标识进行加密处理,并将加密处理后的第二标识发送至客户端。
其中,第二标识是第二存储器中预先存储的,第二标识可以是固定字符串,固定字符串可以是自定义设定的。
其中,第二标识与第二存储器为对应关系。一种实施方式中,第二标识与第二存储器为一一对应关系,每一个第二存储器对应唯一的第二标识,这样便于客户端可以依据第二标识对第二存储器进行验证。
其中,针对第二存储器是否具有信息处理能力,第二存储器利用本地存储的第二预设验证信息对第二验证信息进行解密处理得到第二密钥,利用第二密钥对第二存储器本地存储的第二标识进行加密处理,并将加密处理后的第二标识发送至客户端,可以分为以下两种情况。
第一种情况,第二存储器具有信息处理能力,则第二存储器自身可以完成解密处理、加密处理等操作。具体地,第二存储器获取本地存储的第二预设验证信息,并利用该第二预设验证信息对第二验证信息进行解密处理得到第二密钥,利用第二密钥对第二存储器本地存储的第二标识进行加密处理,并将加密处理后的第二标识发送至客户端。
第二种情况,第二存储器不具有信息处理能力,则第二存储器可以与具有信息处理能力的第一存储器进行交互,通过第一存储器完成解密处理、加密处理等操作。一种实现方式中,第二存储器将本地存储的第二预设验证信息和第二标识发送至第一存储器,第一存储器利用第二预设验证信息对进行解密处理得到第二密钥,利用第二密钥对第二标识进行加密处理,并将加密处理后的第二标识发送至第二存储器。
对于客户端,可以接收第二存储器发送的加密处理后的第二标识,利用第二密钥对加密处理后的第二标识进行解密处理,得到解密后的第二标识,将该第二标识与预先存储的第二预设标识进行匹配,若匹配,则判定对第二存储器验证成功。
其中,客户端预先存储的第二预设标识与第二标识是对应关系,第二预设标识与第二标识的对应关系可以是预设的。对于客户端来说,只有接收到的第二标识与预先存储的第二预设标识满足预设的对应关系,则可以确定该第二标识与该第二预设标识匹配。
一种实现方式中,第二预设标识与第二标识为相同标识,也就是说,在匹配的客户端和第二存储器中,存储的标识是相同的。例如,客户端与第二存储器匹配,第二存储器中存储的第二标识为字符串b,则客户端中存储的第二预设标识也为字符串b。
针对于上述第一存储器的验证和第二存储器的验证,一种实施方式中,第一密钥和第二密钥可以为相同的密钥,还可以均为随机密钥。客户端存储的第一验证信息和第二验证信息为相同的验证信息,第一预设标识和第二预设标识为相同的预设标识。
相应地,在客户端、第一存储器和第二存储器三者匹配的情况下,第一存储器中存储的第一预设验证信息和第二存储器中存储的第二预设验证信息可以相同,即第一预设验证信息、第二预设验证信息、客户端存储的第一验证信息和第二验证信息四者之间存在对应关系,在四者满足该对应关系时,则对于客户端、第一存储器和第二存储器三者中的任一个来说,可以利用本地存储的验证信息对其他任一方发送的经过加密处理的验证信息进行解密处理。
一种实现方式中,在客户端、第一存储器和第二存储器三者匹配的情况下,第一预设验证信息、第二预设验证信息、第一验证信息和第二验证信息四者均相同,为同一验证信息。这种情况下,对于客户端来说,在本地只存储一个验证信息便可以对第一存储器和第二存储器进行验证,不仅节省了存储空间,而且降低了验证过程的复杂程度。
相应地,在客户端、第一存储器和第二存储器三者匹配的情况下,第一存储器中存储的第一标识和第二存储器中存储的第二标识可以相同,即第一标识、第二标识、第一预设标识和第二预设标识四者之间存在对应关系。根据该对应关系,客户端可以分别对第一存储器中的标识和第二存储器中的标识进行匹配。
一种实现方式中,在客户端、第一存储器和第二存储器三者匹配的情况下,第一标识、第二标识、第一预设标识和第二预设标识相同,为同一标识。此时,客户端仅需存储一个标识便可以对第一存储器和第二存储器进行匹配,不仅节省了存储空间,而且降低了匹配过程的复杂程度。
本申请实施例提供的技术方案中,硬件钱包包括第一存储器和第二存储器,第一存储器和第二存储器连接;第一存储器,用于存储第一份待存储子密钥,第二存储器,用于存储第二份待存储子密钥;其中,第一数量和第二数量均小于第一目标数量,第一份待存储子密钥和第二份待存储子密钥能够得到待存储密钥。通过本申请实施例提供的技术方案,待存储密钥被分解为若干份待存储子密钥,第一存储器和第二存储器中分别存储该若干份待存储子密钥中的一部分待存储子密钥,并且只有将第一存储器中存储的第一份待存储子密钥与第二存储器中存储的第二份待存储子密钥结合才能够得到完整的待存储密钥。这样,即使第一存储器和第二存储器中的任一个丢失,也不会导致完整的待存储密钥丢失,并且,将完整的待存储密钥分散于硬件钱包中的两个存储器,提高了硬件钱包存储密钥的安全性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (7)
1.一种硬件钱包,其特征在于,所述硬件钱包包括第一存储器和第二存储器,所述第一存储器和所述第二存储器连接;
所述第一存储器,用于存储第一份待存储子密钥,所述第一份待存储子密钥包括:在待存储密钥被分解处理后所得到的第一目标数量的待存储子密钥中第一数量的待存储子密钥;
所述第二存储器,用于存储第二份待存储子密钥,所述第二份待存储子密钥包括:在所述待存储密钥被分解处理后所得到的所述第一目标数量的待存储子密钥中第二数量的待存储子密钥;
其中,所述第一数量和所述第二数量均小于所述第一目标数量,所述第一份待存储子密钥和所述第二份待存储子密钥能够得到所述待存储密钥;
所述第一存储器和所述第二存储器与客户端连接;
所述客户端,具体用于在分别与所述第一存储器、所述第二存储器建立连接之后,对所述第一存储器进行验证,对所述第二存储器进行验证;当对所述第一存储器的验证、对所述第二存储器的验证均成功时,确定与所述第一存储器、所述第二存储器均匹配;
在与所述第一存储器、所述第二存储器均匹配的情况下,利用预设加密算法对待存储密钥进行加密处理,得到加密处理后的待存储密钥;对加密处理后的待存储密钥进行分解处理,得到所述第一目标数量的待存储子密钥;将所述第一目标数量的待存储子密钥中的第一数量的待存储子密钥确定为第一份待存储子密钥,将所述第一目标数量的待存储子密钥中的第二数量的待存储子密钥确定为第二份待存储子密钥,将所述第一目标数量的待存储子密钥中的第三数量的待存储子密钥确定为第三份待存储子密钥;其中,所述第三数量小于所述第一目标数量;所述第一份待存储子密钥和所述第二份待存储子密钥中任一与所述第三份待存储子密钥能够得到所述待存储密钥;
获取所述预设加密算法的目标密钥,并对所述目标密钥进行分解处理,得到第二目标数量的目标子密钥,并将所述第二目标数量的目标子密钥中的第四数量的目标子密钥确定为第一份目标子密钥,将所述第二目标数量的目标子密钥中的第五数量的目标子密钥确定为第二份目标子密钥,将所述第二目标数量的目标子密钥中的第六数量的目标子密钥确定为第三份目标子密钥;其中,所述第四数量、所述第五数量和所述第六数量均小于所述第二目标数量;所述第一份目标子密钥、所述第二份目标子密钥和所述第三份目标子密钥中的任意两份目标子密钥能够得到所述目标密钥;
将所述第一份待存储子密钥和所述第一份目标子密钥发送至所述第一存储器进行存储;将所述第二份待存储子密钥和所述第二份目标子密钥发送至所述第二存储器进行存储;将所述第三份待存储子密钥和所述第三份目标子密钥存储于本地。
2.根据权利要求1所述的硬件钱包,其特征在于,所述客户端,还用于利用预设加密算法分别对所述第一份待存储子密钥、所述第二份待存储子密钥和所述第三份待存储子密钥进行加密处理,并获取所述预设加密算法的目标密钥;
所述第一存储器,还用于存储所述第一份目标子密钥,其中,所述第一份目标子密钥包括:在所述目标密钥被分解处理后所得到的第二目标数量的目标子密钥中第四数量的目标子密钥;
所述第二存储器,还用于存储所述第二份目标子密钥,其中,所述第二份目标子密钥包括:在所述目标密钥被分解处理后所得到的所述第二目标数量的目标子密钥中第五数量的目标子密钥;
所述客户端,还用于存储所述第三份目标子密钥,其中,所述第三份目标子密钥包括:在所述目标密钥被分解处理后所得到的所述第二目标数量的目标子密钥中第六数量的目标子密钥;
其中,所述第四数量、所述第五数量和所述第六数量均小于所述第二目标数量,所述第一份目标子密钥、所述第二份目标子密钥和所述第三份目标子密钥中的任意两份目标子密钥能够得到所述目标密钥。
3.根据权利要求1所述的硬件钱包,其特征在于,所述第二目标数量为三,所述第四数量、所述第五数量和所述第六数量均为二。
4.根据权利要求1所述的硬件钱包,其特征在于,
所述客户端,具体用于利用第一密钥对本地存储的第一验证信息进行加密处理,并将加密处理后的第一验证信息发送至所述第一存储器;
所述第一存储器,具体用于接收所述客户端发送的经过加密处理后的第一验证信息,并利用本地存储的第一预设验证信息对该第一验证信息进行解密处理,得到所述第一密钥,利用所述第一密钥对本地存储的第一标识进行加密处理,并将加密处理后的第一标识发送至所述客户端;
所述客户端,具体用于接收所述第一存储器发送的加密处理后的第一标识,利用所述第一密钥对加密处理后的第一标识进行解密处理,得到解密后的第一标识,将该第一标识与预先存储的第一预设标识进行匹配,若匹配,则判定对所述第一存储器验证成功。
5.根据权利要求1所述的硬件钱包,其特征在于,
所述客户端,具体用于利用第二密钥对本地存储的第二验证信息进行加密处理,并将加密处理后的第二验证信息发送至所述第二存储器;
所述第二存储器,具体用于接收所述客户端发送的经过加密处理后的第二验证信息,并利用本地存储的第二预设验证信息对该第二验证信息进行解密处理,得到所述第二密钥,利用所述第二密钥对本地存储的第二标识进行加密处理,并将加密处理后的第二标识发送至所述客户端;
所述客户端,具体用于接收所述第二存储器发送的加密处理后的第二标识,利用所述第二密钥对加密处理后的第二标识进行解密处理,得到解密后的第二标识,将该第二标识与预先存储的第二预设标识进行匹配,若匹配,则判定对所述第二存储器验证成功。
6.根据权利要求1-5任一项所述的硬件钱包,其特征在于,所述第一目标数量为三,所述第一数量、所述第二数量和所述第三数量均为二。
7.根据权利要求1-5任一项所述的硬件钱包,其特征在于,所述第一存储器与所述第二存储器连接,所述客户端通过所述第一存储器与所述第二存储器连接。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811141434.8A CN109302284B (zh) | 2018-09-28 | 2018-09-28 | 一种硬件钱包 |
PCT/CN2019/105466 WO2020063354A1 (zh) | 2018-09-28 | 2019-09-11 | 一种区块链私钥的存储、恢复方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811141434.8A CN109302284B (zh) | 2018-09-28 | 2018-09-28 | 一种硬件钱包 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109302284A CN109302284A (zh) | 2019-02-01 |
CN109302284B true CN109302284B (zh) | 2021-10-22 |
Family
ID=65164796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811141434.8A Expired - Fee Related CN109302284B (zh) | 2018-09-28 | 2018-09-28 | 一种硬件钱包 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109302284B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020063354A1 (zh) * | 2018-09-28 | 2020-04-02 | 北京金山安全软件有限公司 | 一种区块链私钥的存储、恢复方法、装置及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9892460B1 (en) * | 2013-06-28 | 2018-02-13 | Winklevoss Ip, Llc | Systems, methods, and program products for operating exchange traded products holding digital math-based assets |
US10068228B1 (en) * | 2013-06-28 | 2018-09-04 | Winklevoss Ip, Llc | Systems and methods for storing digital math-based assets using a secure portal |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8028329B2 (en) * | 2005-06-13 | 2011-09-27 | Iamsecureonline, Inc. | Proxy authentication network |
CN101621375A (zh) * | 2009-07-28 | 2010-01-06 | 成都市华为赛门铁克科技有限公司 | 密钥管理方法、装置及系统 |
CN101694778B (zh) * | 2009-09-27 | 2013-07-31 | 卢林发 | 一种防止数据丢失的方法和可移动数据存储器 |
WO2013151852A1 (en) * | 2012-04-01 | 2013-10-10 | Authentify, Inc. | Secure authentication in a multi-party system |
US10263770B2 (en) * | 2013-11-06 | 2019-04-16 | Pure Storage, Inc. | Data protection in a storage system using external secrets |
US9077710B1 (en) * | 2013-12-18 | 2015-07-07 | Sabaki Corporation | Distributed storage of password data |
CN107959566A (zh) * | 2016-10-14 | 2018-04-24 | 阿里巴巴集团控股有限公司 | 量子数据密钥协商系统及量子数据密钥协商方法 |
CN107623569A (zh) * | 2017-09-30 | 2018-01-23 | 矩阵元技术(深圳)有限公司 | 基于秘密共享技术的区块链密钥托管和恢复方法、装置 |
-
2018
- 2018-09-28 CN CN201811141434.8A patent/CN109302284B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9892460B1 (en) * | 2013-06-28 | 2018-02-13 | Winklevoss Ip, Llc | Systems, methods, and program products for operating exchange traded products holding digital math-based assets |
US10068228B1 (en) * | 2013-06-28 | 2018-09-04 | Winklevoss Ip, Llc | Systems and methods for storing digital math-based assets using a secure portal |
Non-Patent Citations (3)
Title |
---|
"Low-Cost Distributed Key Management";Venkatesh Gopal et al.;《2018 IEEE World Congress on Services(SERVICES)》;20180707;全文 * |
分布式数据存储中的机密性保护;韦大伟;《微电子学与计算机》;20061015;全文 * |
基于Shamir密钥分发算法的Android网盘多点存储系统;李帅等;《通信技术》;20170110(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109302284A (zh) | 2019-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109981255B (zh) | 密钥池的更新方法和系统 | |
CN107005577B (zh) | 指纹数据的处理方法及处理装置 | |
CN110059458B (zh) | 一种用户口令加密认证方法、装置及系统 | |
CN110690956B (zh) | 双向认证方法及系统、服务器和终端 | |
CN108809633B (zh) | 一种身份认证的方法、装置及系统 | |
CN104639516A (zh) | 身份认证方法、设备及系统 | |
KR101103403B1 (ko) | 향상된 보안성을 갖는 데이터 관리 시스템의 제어방법 | |
CN112565265B (zh) | 物联网终端设备间的认证方法、认证系统及通讯方法 | |
CN110505055B (zh) | 基于非对称密钥池对和密钥卡的外网接入身份认证方法和系统 | |
CN103678174A (zh) | 数据安全方法、存储装置和数据安全系统 | |
US20220029819A1 (en) | Ssl communication system, client, server, ssl communication method, and computer program | |
CN113472793A (zh) | 一种基于硬件密码设备的个人数据保护系统 | |
CN107368737A (zh) | 一种防止拷贝攻击的处理方法、服务器及客户端 | |
CN103780609A (zh) | 一种云数据的处理方法、装置和云数据安全网关 | |
CN109088729B (zh) | 一种密钥存储方法及装置 | |
CN114793184B (zh) | 一种基于第三方密钥管理节点的安全芯片通信方法及装置 | |
CN101771680A (zh) | 一种向智能卡写入数据的方法、系统以及远程写卡终端 | |
CN114244508A (zh) | 数据加密方法、装置、设备及存储介质 | |
CN110198320B (zh) | 一种加密信息传输方法和系统 | |
CN110519222B (zh) | 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和系统 | |
CN106789928B (zh) | 基于系统双向认证的解锁方法及装置 | |
CN109299618B (zh) | 基于量子密钥卡的抗量子计算云存储方法和系统 | |
CN109302284B (zh) | 一种硬件钱包 | |
CN111291398B (zh) | 基于区块链的认证方法、装置、计算机设备及存储介质 | |
CN109412799B (zh) | 一种生成本地密钥的系统及其方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211022 |