主页 > imtoken冷钱包安全吗 > BTC比特币高清钱包开发教程1|简单知识

BTC比特币高清钱包开发教程1|简单知识

imtoken冷钱包安全吗 2023-01-18 13:49:18

BTC比特币高清钱包开发教程1|简单知识

今天我们来看看BTC高清钱包的发展历程。

我们先来看看什么是高清钱包。

HD钱包,分层确定性钱包,我们知道数字钱包是用来保存我们的密钥和地址的,数字货币记录在区块链网络中的每个区块中。因此,如何安全、方便地生成、保存和备份恢复密钥是钱包的关键。为此,钱包经历了3次进化,从最初的非确定性(随机)钱包到第二代确定性(种子)钱包比特币原始钱包的私钥,直到现在的分层确定性钱包,钱包的更新迭代经历了三个阶段。

比特币原始钱包的私钥

比特币最早的客户端(Satoshi 客户端)是一个非确定性钱包,是随机生成的私钥的集合。客户端预先生成 100 个随机私钥,每个私钥只使用一次。每笔交易使用一个地址的概念是由 Satoshi Nakamoto 提出的。如果交易频繁,可能会用完私钥,然后生成一批私钥,所以每100笔交易后,必须备份一个新的wallet.dat文件,否则可能会丢失资产。这样的钱包很难管理和备份。如果您生成许多私钥,则必须保留所有私钥的副本。这意味着钱包必须经常备份。每一个私钥都必须备份,否则一旦钱包无法访问,就无法找回钱包。

确定性钱包不需要为每次转账进行备份。确定性钱包的私钥是通过对种子进行单向哈希运算生成的,种子是由随机数生成器生成的一串随机数。数字。在确定性钱包中,只要你有这个种子,你就可以取回所有的私钥。只备份种子就相当于备份了你所有的钱包,所以这个种子也很重要,一定要备份在安全的地方。

比特币原始钱包的私钥

层次决定论的概念是在 BIP32 提案的早期提出的。 Pieter Wuille 基于比特币核心开发者 Gregory Maxwell 的原始描述和讨论,于 2012 年 2 月 11 日完成了提交 BIP32。它直到 2016 年 6 月 15 日才并入 Bitcoin Core,目前几乎所有的钱包服务都集成了该协议。 BIP32是HD钱包的核心提案。通过种子生成主私钥,然后衍生出大量的子私钥和地址。但是种子是一长串随机数,不利于记录,所以我们使用一种算法将种子转化为字符串助记符(Mnemonic),方便保存记录,这就是BIP39,扩展了生成算法高清钱包种子。 BIP43在BIP32树形结构中增加了子索引标识目的的扩展m/purpose‘/*。 BIP44是在BIP43和BIP32的基础上增加多种币种,通过HD钱包衍生出多个地址,可以同时管理主网和测试网的比特币。 BIP44提出了一个5层路径提议,如下:

*m/purpse'/coin_type'/account'/change/address_index*,

比特币原始钱包的私钥

BIP44的规则让HD钱包非常强大,用户只需保存一个种子,就可以控制所有币种比特币原始钱包的私钥,所有Account的钱包。

如下图:

比特币原始钱包的私钥

BTC比特币HD钱包开发教程1|简单知识

BTC比特币HD钱包开发教程1|简单知识

比特币原始钱包的私钥

所以简单来说,HD钱包生成的步骤如下:

\1. 生成助记词(见 BIP39)

\2. 这个助记词被转换成Seed(见BIP39)

\3. 种子用于使用 HMAC-SHA512 生成根私钥(参见 BIP32)

\4. 从此根私钥派生出子私钥(参见 BIP32),其中节点布局由 BIP44 设置