内容简介:Node.js 程式
學習目標
- 了解 Base58 特性、編碼表、計算方式與程式撰寫
特性
- Bitcoin 用來產生錢包 address 的編碼方式
- 不使用易於混淆文字
- 例如:數字【 0 】、字母大寫【 O 】、字母大寫 i【 I 】、字母小寫 L【 l 】與【 + 】、【 / 】符號
- 換句話說 Base58 是由不包括( 0、O、l、I )的大小寫字母和數字所组成的
- 字元集為 9 個數字、24 個大寫字母、25 個小寫字母
- 不使用易於混淆文字
Base58 編碼表
計算方式
使用 Base58 編碼 【 Hello 】 的字串,最後會得到 【 9Ajdvzr 】的編碼結果。
- 第一步
字元 ASCII 十進位 H 72 * 2^32 = 309237645312 e 101 * 2^24 = 1694498816 l 108 * 2^16 = 7077888 l 108 * 2^8 = 27648 o 111 * 2^0 = 111 ㊟ 總和:309237645312 + 1694498816 + 7077888 + 27648 + 111 = 310939249775 ㊟ 【 ^ 】 符號為 【 次方 】
- 第二步
商 餘 Base58 查表 310939249775 / 58 5361021547 49 r 5361021547 / 58 92431405 57 z 92431405 / 58 1593644 53 v 1593644 / 58 27476 36 d 27476 / 58 473 42 j 473 / 58 8 9 A 8 / 58 0 8 9 ※ 使用 Base58 編碼 【 Hello 】 的字串,最後會得到 【 9Ajdvzr 】的編碼結果
Node.js 程式 【 Code 】
Reference
以上所述就是小编给大家介绍的《[ Algorithm ] Base58 介紹》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入分析Java Web技术内幕(修订版)
许令波 / 电子工业出版社 / 2014-8-1 / CNY 79.00
《深入分析Java Web技术内幕(修订版)》新增了淘宝在无线端的应用实践,包括:CDN 动态加速、多终端化改造、 多终端Session 统一 ,以及在大流量的情况下,如何跨越性能、网络和一个地区的电力瓶颈等内容,并提供了比较完整的解决方案。 《深入分析Java Web技术内幕(修订版)》主要围绕Java Web 相关技术从三方面全面、深入地进行了阐述。首先介绍前端知识,即在JavaWeb ......一起来看看 《深入分析Java Web技术内幕(修订版)》 这本书的介绍吧!