-技术资料参考
项目本地根目录-source
-
天空链设计参考链接
https://www.figma.com/file/efvGt8mcdRQScuevWAojfF8v/Skycoin-Wallets?node-id=3%3A910
//蓝湖: https://lanhuapp.com/web/#/item/board?pid=f747528f-8b48-41a9-8c83-8579c979f134
processon:https://www.processon.com/mindmap/5a0bf8f3e4b049e7f4fdcc0a
一,先生成128-256位随机数字,也就是熵;
二,根据随机数字进行SHA256算法求出前4位校验和
三,把随机数和校验和进行相拼接
四,将拼接的结果划分位11位不同的部分
五,每一个11部分对应的十进制数据就是助记词映射表中对应的角标,一般为0-2047 六,完成映射关系后,生成有序的单词组就是助记词 七,得到助记词后,使用秘钥延伸函数PBKDF2算法可以计算种子,PBKDF2算法包含两个参数,第一个为助记词,第二个是盐,也就是密码,不同密码产生不同的种子,种子长度一般为512位 八,根据种子创建HD钱包,HD钱包中所有的秘钥都衍生于这个种子,所以有了这个种子就等于有了所有的秘钥 九,根据种子创建主私钥和主公钥,使用HMAC-SHA512算法就可以得到一个512的哈希值,哈希值左256位部分为主私钥,右256位部分为主链代码。主私钥可以根据椭圆曲线乘法计算出主公钥,主链代码,用于衍生子私钥或子公钥的必须条件 十,私有子私钥衍生,母私钥,主链代码,索引三者结合在一起在根据HMAC-SHA512算法计算出512的哈希值,左256位部分为子私钥,右256位部分为链代码,子私钥在根据椭圆曲线乘法计算出子公钥,同时子私钥也可以生成自己的子私钥,一层一层往下,即树型结构
助记词的理解:
为什么会有助记词? 1,早起比特币钱包中是没有助记词规范的,它在内部默认产生了100多对私钥以及公钥来管理比特币地址的,所以使用者需要特别注意备份,因为一旦丢失私钥就意味着你失去了你对钱包(比特币)的控制,而且一个私钥以及公钥只能对应一个具体地址,这并不方便管理。 2,相对于字母+数字的普通私钥,助记词更方便与用户的记忆。
Keystory是以太坊提出的规范,助记词是比特币提出的规范,还有普通私钥和观察者,本质上都是属于私钥。