一种区块链用户私钥的安全防护方法技术

技术编号:18898741 阅读:46 留言:0更新日期:2018-09-08 13:38
本发明专利技术公开了一种区块链用户私钥的安全防护方法,用于解决私钥丢失后的找回和私钥被盗后的安全防护问题。本发明专利技术利用Hash算法的随机性扩散和不可逆的特点,利用用户可以控制的保密参数的Hash值作为私钥,在满足私钥随机性要求的前提下引入用户参数,有效解决私钥的归属证明问题和私钥的找回问题。本发明专利技术可以广泛应用于采用随机数作为非对称密码算法私钥的应用系统,特别是在区块链网络中具有良好的应用前景。

A security protection method for private key of block chain

The invention discloses a security protection method for a block chain user's private key, which is used to solve the security protection problems after the loss of the private key and the stolen private key. The invention takes advantage of the randomness diffusion and irreversibility of Hash algorithm, uses the Hash value of the secret parameter that the user can control as the private key, and introduces the user parameters on the premise of satisfying the randomness of the private key, thus effectively solves the problem of the ownership proof of the private key and the problem of the private key retrieval. The invention can be widely used in an application system that uses random numbers as the private key of an asymmetric cryptographic algorithm, and has a good application prospect especially in a block chain network.

【技术实现步骤摘要】
一种区块链用户私钥的安全防护方法
本专利技术属于区块链及其私钥安全
,尤其涉及一种区块链用户私钥的安全防护方法。
技术介绍
区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证不可篡改和不可伪造的分布式账本。在区块链系统中,私钥是每个用户自己生成并且自己负责保管的随机数,理论上没有第三方的参与,所以私钥一旦丢失,便失去对账户资产的管控。以目前的算力和技术,从钱包地址或公钥倒推私钥是不可行的。因此,对于区块链用户来说,私钥就是一切。由于目前还缺少行之有效的解决方案,所以区块链特别是比特币的用户面临着因私钥丢失或被盗而造成数字资产损失的风险,解决用户私钥失控问题对提升区块链网络的安全性具有非常重要的实际意义。
技术实现思路
针对区块链用户私钥防护的迫切需求和现有技术的不足,为了解决用户私钥的所有权归属证明问题和安全防护问题,本专利技术提供了一种区块链用户私钥的安全防护方法。本专利技术方法基于Hash函数的单向性和随机性扩散特性,利用用户的生物特征的Hash值和用户口令的Hash值异或运算值的Hash值作为私钥。对于不知道生物特征和用户口令的黑客来说,即使其获得了私钥,也不能找到一个生物特征和口令并得到同样的私钥,因而可以把生物特征和口令作为私钥归属的证明,即,在私钥被盗的情况下,可以利用产生私钥的生物特征和口令作为私钥归属的证明,在私钥丢失的情况下,可以利用生物特征和口令重新恢复私钥,从而实现用户私钥的安全保护,即防丢失也防被盗取。本专利技术的一种区块链用户私钥的安全防护方法,包括私钥产生方法和安全防护方法,其中,私钥产生方法包括但不限于:采用一个保密参数的Hash值作为用户私钥;安全防护方法包括但不限于:(1)用户账户登录和发起交易时,系统实时给用户所注册的通信终端发送提醒消息,当用户发现账户被非法操作时,用户及时在区块链网络中广播其私钥失控的警报消息(即广播失控的私钥和公钥)并发起冻结由该私钥所签名的所有未确认交易,所有节点都把相应的未确认交易处理为非法交易;(2)在某个私钥的归属权存在争议时,如果一个用户能够在限定的时间内出示一个参数并被其它节点验证该参数的Hash值与存在争议的私钥完全一致,则该用户被视为所述私钥的合法拥有者;(3)所述私钥的合法拥有者重新产生新的私钥,提交把争议私钥所对应账户中的全部数字资产转移到新的私钥账户中的交易,并出示用于产生所述存在争议私钥的生物特征的Hash值与用户口令的Hash值,如果所述生物特征的Hash值与用户口令的Hash值的异或运算值的Hash值与存在争议的私钥完全一致,则账户私钥变更被认可。进一步的,本专利技术方法所采用的Hash值包括采用标准Hash算法和抗量子计算的Hash算法得到的输出结果。进一步的,本专利技术方法所采用的保密参数包括但不限于用户生物特征的Hash值与用户口令的Hash值的异或运算值。进一步的,本专利技术方法所采用的用户生物特征包括但不限于指纹特征、面部特征和虹膜特征。进一步的,本专利技术方法中的私钥包括但不限于256比特、384比特和512比特的ECC算法(包括签名算法和加密算法)的私钥。与现有技术相比,本专利技术的一种区块链用户私钥的安全防护方法具有以下显著创新性:本专利技术利用Hash算法的随机性扩散和不可逆的特点,利用用户可以控制的保密参数的Hash值作为私钥,在满足私钥随机性要求的前提下合理引入用户参数,可以有效解决私钥的归属证明问题和私钥的找回问题,从而实现用户私钥的安全保护,即防丢失也防被盗取。本专利技术可以广泛应用于采用随机数作为私钥的应用系统,特别是在区块链网络中具有良好的应用前景。附图说明图1为本专利技术的私钥产生方法示意图。具体实施方式为使本专利技术的技术方案及优点更加清楚,作为本专利技术的一部分,以下结合附图及具体实施例,对本专利技术作进一步详细的说明。本专利技术适用于所有采用随机数作为非对称密码算法的私钥的情形,本专利技术不具体限定相应公钥产生的方法(比如,可以采用比特币的公钥产生方法spec256k1)。本专利技术中所使用的Hash值包括采用标准Hash算法(比如MD5、SHA_1、SHA_256等)和抗量子计算的Hash算法(比如抗量子标准算法)得到的输出结果。本专利技术中所使用的多个Hash值可以采用同一个Hash算法产生,也可以采用多个Hash算法产生。通常情况下,区块链用户节点随机产生一个随机数作为私钥,但是,该私钥不具有用户特征。私钥被盗后,用户没有有效的手段控制风险;私钥丢失后,用户也没有办法找回。本专利技术利用Hash算法的随机性扩散和不可逆的特点,利用用户可以控制的保密参数的Hash值作为私钥,可以有效解决私钥的归属证明问题和私钥的找回问题,从而实现用户私钥的安全保护,即防丢失也防被盗取。作为一个优选的实施例,本专利技术的私钥产生方法如图1所示,该实施例用于产生256比特的ECC算法的私钥,其中,采用指纹特征和口令作为用户参数,采用用户指纹特征的Hash值与用户口令的Hash值的异或运算值的Hash值作为私钥,即,记用户指纹特征为C,口令为P,则,私钥SK=SHA_256(SHA_256(C)⊕SHA_256(P)),其中,⊕表示异或运算。用户采用私钥SK登录区块链账户,而不使用指纹特征和口令,以降低指纹特征和口令被黑客窃取的风险。实际应用时,需要在区块链系统中增加相应的安全机制,即,用户账户登录和发起交易时,系统实时给用户所注册的通信设备(比如手机)发送提醒消息,当用户发现账户被非法操作时,用户可以采用失控账户或其它账户及时在区块链网络中广播其私钥失控的警报消息(其中,警报消息包括用户的公钥和私钥)并发起冻结由该私钥所签名的所有未确认交易,所有节点都把相应的未确认交易处理为非法交易(即,不处理该非法交易,记账节点把所有非法交易从交易池中剔除);由此可以降低用户私钥被盗可能造成的损失;然后,区块链系统启动私钥归属权仲裁,即,如果一个用户能够在限定的时间内出示一个参数并被其它节点验证该参数的Hash值与存在争议的私钥完全一致,则该用户被视为所述私钥的合法拥有者;显然,盗取SK的用户无法出示产生SK的保密参数,而该私钥的合法拥有者可以顺利出示SHA_256(C)⊕SHA_256(P)和SK,从而解决私钥的归属权证明问题;最后,所述私钥的合法拥有者重新产生新的私钥,提交把争议私钥所对应账户中的全部数字资产转移到新的私钥账户中的交易,并出示用于产生所述存在争议私钥的指纹特征的Hash值SHA_256(C)与用户口令的Hash值SHA_256(P),如果所述指纹特征的Hash值SHA_256(C)与用户口令的Hash值SHA_256(P)的异或运算值的Hash值与存在争议的私钥完全一致,则账户私钥变更和相应的转账交易被认可。从而实现对用户私钥账户的安全防护。当用户私钥丢失时,用户可以利用指纹特征的Hash值SHA_256(C)与用户口令的Hash值SHA_256(P)恢复私钥。当然,为了实现更好的安全保护,用户口令和私钥应该隔离存储保护。为了实现更高的算法安全性,也可以采用384比特和512比特的ECC算法的私钥。需要说明的是,本专利技术方法可以广泛用于私钥的产生,而不仅限于用于区块链用户私钥的产生。以上所描述的实施例仅是本专利技术的一本文档来自技高网...

【技术保护点】
1.一种区块链用户私钥的安全防护方法,其特征在于,包括私钥产生方法和安全防护方法,其中,私钥产生方法包括:采用一个保密参数的Hash值作为用户私钥;安全防护方法包括:(1)用户登录账户和发起交易时,系统实时给用户所注册的通信终端发送提醒消息,当用户发现账户被非法操作时,用户及时在区块链网络中广播其私钥失控的警报消息并发起冻结由该私钥所签名的所有未确认交易的请求,所有节点把相应的未确认交易处理为非法交易;(2)在某个私钥的归属权存在争议时,如果一个用户能够在限定的时间内出示一个参数并被其它节点验证该参数的Hash值与存在争议的私钥完全一致,则该用户被视为所述私钥的合法拥有者;(3)所述私钥的合法拥有者重新产生新的私钥,提交把争议私钥所对应账户中的全部数字资产转移到新的私钥账户中的交易,并出示用于产生所述存在争议私钥的生物特征的Hash值与用户口令的Hash值,如果所述生物特征的Hash值与用户口令的Hash值的异或运算值的Hash值与存在争议的私钥完全一致,则账户私钥变更被认可。

【技术特征摘要】
1.一种区块链用户私钥的安全防护方法,其特征在于,包括私钥产生方法和安全防护方法,其中,私钥产生方法包括:采用一个保密参数的Hash值作为用户私钥;安全防护方法包括:(1)用户登录账户和发起交易时,系统实时给用户所注册的通信终端发送提醒消息,当用户发现账户被非法操作时,用户及时在区块链网络中广播其私钥失控的警报消息并发起冻结由该私钥所签名的所有未确认交易的请求,所有节点把相应的未确认交易处理为非法交易;(2)在某个私钥的归属权存在争议时,如果一个用户能够在限定的时间内出示一个参数并被其它节点验证该参数的Hash值与存在争议的私钥完全一致,则该用户被视为所述私钥的合法拥有者;(3)所述私钥的合法拥有者重新产生新的私钥,提交把争议私钥所对应账户中的全部数字资...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:成都零光量子科技有限公司
类型:发明
国别省市:四川,51

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

1