区块链杂项

  区块链技术是一个对多种技术的组合创新,多种技术包括:

  1、 共识算法:POW/POS/DPOS/PBFT/BFT-Raft/Paxos/Kafka

  2、 P2P通讯:自举(bootstrapped)/连接/广播

  3、 签名验签:ECDSA/secp256k1/ED25519/MultiSig

  4、 Hash锁定:Merkle树/MPT树

  5、 UTXO记账:流水账

  6、 智能合约:P2PKH/P2SH/Oracle/状态机

  7、 隐私保护:零知识证明、同态加密、CoinJoin加密技术

  8、 私钥存储:HD协议(Hierarchical Deterministic Key Creation)、钱包Wallets、丢失找回

  9、 算力分发:矿池分发



什么是 HD 钱包

HD 钱包是目前常用的确定性钱包 ,说到 HD 钱包,大家可能第一反应会想到硬件钱包 (Hardware Wallet),其实这里的 HD 是 Hierarchical Deterministic(分层确定性)的缩写。所谓分层,就是一个大公司可以为每个子部门分别生成不同的私钥,子部门还可以再管理子子部门的私钥,每个部门可以看到所有子部门里的币,也可以花这里面的币。也可以只给会计人员某个层级的公钥,让他可以看见这个部门及子部门的收支记录,但不能花里面的钱,使得财务管理更方便了。

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

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

BIP44的规则使得 HD 钱包非常强大,用户只需要保存一个种子,就能控制所有币种,所有账户的钱包。


以太坊目前官方钱包采用 KDF 的形式,也就是我们常说的 Keystore 的形式。

在 EIP85 的讨论,以太坊社区似乎默认也采用了 BIP32 的做法,先来说一说 BIP32 的好处

1. 使用时间长,已经接受社区审查

2. 已经有多个编程语言的实现

3. 多个硬件钱包正在使用

4. 可以一个钱包,同时支持比特币和以太坊



参考:

https://zhuanlan.zhihu.com/p/30297080

https://www.zhihu.com/question/22399196

https://blog.csdn.net/xiatiancc/article/details/78842413

你可能感兴趣的:(区块链杂项)