Base58

✍ dations ◷ 2025-06-08 07:29:47 #文件格式,字符编码,数字

Base58是用于Bitcoin中使用的一种独特的编码方式,主要用于产生Bitcoin的钱包地址。相比Base64,Base58不使用数字"0",字母大写"O",字母大写"I",和字母小写"l",以及"+"和"/"符号。
设计Base58主要的目的是:


以下引用自其作者Satoshi Nakamoto在base58.h中的注释:

//// Why base-58 instead of standard base-64 encoding?// - Don't want 0OIl characters that look the same in some fonts and//      could be used to create visually identical looking account numbers.// - A string with non-alphanumeric characters is not as easily accepted as an account number.// - E-mail usually won't line-break if there's no punctuation to break at.// - Doubleclicking selects the whole number as one word if it's all alphanumeric.//

编码

Base58编码可以表示的比特位数为Log258 {\displaystyle \approx } 5.858bit。经过Base58编码的数据为原始的数据长度的 8 5.858 1.37 {\displaystyle {\tfrac {8}{5.858}}\approx 1.37} 倍,稍稍多于Base64的1.33倍。
编码符号表:

由于256不能被58整除,Base58无法像Base64那样转换为8bits的2进制后依次取出6bits就可以快速完成转换。因此,Base58编码算法需要除法运算实现,如果被编码的数据较长,则要用特殊的类来处理大数,在Bitcoin使用了OpenSSL中的BIGNUM:

相关

  • 埃米利奥·塞格雷埃米利奥·吉诺·塞格雷(意大利语:Emilio Gino Segrè,1905年1月30日-1989年4月22日),犹太裔意大利-美国物理学家,因与欧文·张伯伦发现反质子而共同获得1959年诺贝尔物理学奖。190
  • 栃木三鹰椒香花小辣椒是河南省淅川县香花镇的一个辣椒品种。香花镇于1978年从日本引进栃木三鹰椒种植,之后经过培育和改良,形成了色泽鲜红、肉质肥厚、角小、辣味浓、油分高的一个辣椒品
  • 路史《路史》,宋朝人罗泌撰,共四十七卷。此书为杂史。路史,即大史之意,记述了上古以来有关历史,地理,风俗,氏族等方面的传说和史事,取材繁博庞杂。《路史》上自三皇五帝,下迄夏桀,对于中国
  • 林权泽林权泽(韩语:임권택,1936年5月2日-),韩国电影导演,拥有“韩国电影教父”之称。电影风格带有强烈视觉感以及丰富的感性智慧,被认为是最了解及最善于表现韩国文化神韵的导演,生涯执导作
  • 中欧班列中欧班列(英语译名:CHINA RAILWAY Express;简称 CR express)是指按照固定车次、线路、班期和全程运行时刻开行,往来于中国与欧洲以及一带一路沿线各国的集装箱国际铁路联运班列。
  • 睡衣派对睡衣派对可以指:
  • 富豪街系列富豪街系列(日版名:いただきストリート,英文版名:Fortune Street,港台译作“人生街道”)是由勇者斗恶龙系列设计者堀井雄二创作的电脑图版游戏系列。系列首作于1991年发行在日本红
  • 大靖龙朝大靖龙朝,是指1949年期间在山西乡宁县,由一贯道首领刘汉杰为首成立的一个秘密结社政权。1949年10月24日(农历九月初三日),反革命组织“晋南游击总队第三支队”支队长贺民权窜回乡
  • 罗德里格斯茜草罗德里格斯茜草(学名:)是一种极危的茜草,它们是罗德里格斯岛的特有种。罗德里格斯茜草最初于1877年由一个欧洲游客经过罗德里格斯岛时发现并记录下了其图像。20世纪50年代,该物种
  • 清太宗元妃清太宗元妃(1593年-1612年),索和济巴颜系钮祜禄氏,满洲镶黄旗人。额亦都之女,清太宗皇太极的福晋,后世文献称为清太宗元妃、元妃,视她为皇太极元配,并非当朝称谓。根据《开国佐运功臣