前言:没想到迅雷的区块链大会开完也没多久,我就要和区块链结缘了。从区块链钱包做起。
这里说说这周学习的主要成果:
一 区块链钱包:是一个管理工具,数字钱包密钥(即公钥和私钥)的管理工具。
私钥: (明文私钥)是一个64位的16机制哈希字符串。这个私钥非常重要:“谁掌握了私钥,谁就掌握了钱包使用权”。如果有人知道了你
的明文私钥,不需要任何密码,就可以转移你的资产
公钥: 私钥通过非对称加密椭圆曲线算法生成公钥,密钥对成对出现,私钥可得到公钥,不可反推
以太坊的地址:(以太坊钱包的地址/地址)以0x开头的42位的哈希值(16进制)字符串(公钥生成的地址)一个钱包对应一个钱包地址,地址
唯一且不能修改
keystore :明文私钥通过加密算法加密过后的json格式字符串,一般以文件形式存储
助记词 :12(或者15,18,21 等)单词构成,用户可以通过助记词导入钱包。如果有人知道了你的助记词,
不需 要任何密码就可以转移你的资产。所以要妥善保管
助记词是明文私钥的另一种表现形式。
几个关键词关系:
如下图:
Tips:
特别注意从圈1到圈2创建钱包 从助记词到私钥顺序不可逆,并不像网上好多博文说的那样助记词是由私钥衍生导出的,事实上根本不能从私钥反推出助记词!!!参考BIP39规则方案讲解:先按规则生成助记词,再将助记词转化成二进制种子seed。BIP44规则:让同一个 seed 可以支援多币种、多帐户等。根据BIP规则seed再转化生成密钥对。
"BIP32, BIP39, BIP44 共同定义了目前被广泛使用的 HD Wallet,包含其设计动机和理念、实作方式、实例等。"
大家都遵循同一个规则,创造出来的东西才能流通啊,不然不识别。
二:区块链钱包功能
管理钱包地址,创建和导入钱包 导出和备份 等。(目前我只能实现到的功能待丰富)
参考:
(1)https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki (BIP39)
(2) https://github.com/bitcoin/bips/blob/master/bip-0032/derivation.png(BIP32)
(3) https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki (BIP44)
(4)https://www.jianshu.com/p/099b520ba7a8
(5)https://blog.csdn.net/qq_39353009/article/details/79187567
(6)https://ethfans.org/posts/from-BIP-to-ethereum-HD-wallet
(7)http://e.c60block.com/2018/03/25/%E7%94%9F%E6%88%90%E5%8A%A9%E8%AE%B0%E8%AF%8D%E9%92%B1%E5%8C%85/