在区块链中,用户的所有资产都保存在区块链上,通过私钥来证明对链上资产的控制权,如果没有私钥,就无法控制你的资产。所以钱包的本质是一个私钥管理工具,用户使用钱包可以创建私钥,保管私钥,使用私钥签名交易。(助记词是私钥的另外一种表现形式。我们推荐用户保管助记词是因为助记词更加方便保管和使用)
用户使用TB钱包创建钱包的本质是随机生成了一组助记词,由于去中心化的特性,币银钱包不保管用户钱包隐私信息。所以生成助记词后,用户一定要自己保管。这组助记词可以推导出钱包的私钥,通过私钥可以推导出钱包的公钥,通过公钥可以推导出钱包地址。
根据以上说明,如果要找回助记词,我们就要知道助记词的生成过程:先生成一个128位随机数,再加上对随机数做的校验4位,得到132位的一个数,然后按每11位做切分,这样就有了12个二进制数,然后用每个数去查BIP39定义的单词表,这样就得到12个助记词。那么问题来了,有没有可能通过暴力破解的方式碰撞出助记词呢。
我们来计算一下能够生成的助记词数量,BIP39的助记词词库共包含2048个单词,每组助记词共12个单词。根据公式:n!/( n - r )!计算可得出数量为2048!/(2048-12)! = 5.2715379713014884760003093175282 e+39。
大家可能对这个数字没有概念,我们可以举个例子类比一下,地球上的沙子数量大约是1后面18个零。如果你可以每秒生成 一百万个助记词,那么一年可以生成1000000*60*60*24*365=3.1536 e+13个助记词,大约需要1.6715937e+26年遍历所有助记词,所以暴力破解是不可能成功的。
所以对于用户来说,如果助记词、私钥全部丢失无法通过暴力破解的方式找回,因为币银钱包的去中心化特性,也无法从我们这里找回。但是如果助记词丢失,私钥还保存着,是不影响钱包使用的。