[ Algorithm ] Base58 介紹

栏目: 编程工具 · 发布时间: 7年前

内容简介:Node.js 程式

學習目標

  • 了解 Base58 特性、編碼表、計算方式與程式撰寫

特性

  • Bitcoin 用來產生錢包 address 的編碼方式
    • 不使用易於混淆文字
      • 例如:數字【 0 】、字母大寫【 O 】、字母大寫 i【 I 】、字母小寫 L【 l 】與【 + 】、【 / 】符號
      • 換句話說 Base58 是由不包括( 0、O、l、I )的大小寫字母和數字所组成的
      • 字元集為 9 個數字、24 個大寫字母、25 個小寫字母

Base58 編碼表

[ Algorithm ] 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 】

[ Algorithm ] Base58 介紹

Reference


以上所述就是小编给大家介绍的《[ Algorithm ] Base58 介紹》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

参与的胜利

参与的胜利

亨利·詹金斯 / 高芳芳 / 浙江大学出版社 / 2017-9-30 / CNY 42.00

《参与的胜利:网络时代的参与文化》是一场学者之间的对话,三位学者(亨利·詹金斯、伊藤瑞子和丹娜·博伊德)虽然来自不同的代际、不同的学科背景,但他们在相同的参与文化项目中展开合作,并试图解决相似的问题。 希望《参与的胜利:网络时代的参与文化》能够进一步激发团体内部及团体之间的对话,这些团体包括教育者、政策制定者、学者、关注参与文化的公民、业内人士、粉丝及其他任何关心我们文化的未来的人。理想的参......一起来看看 《参与的胜利》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具