1. 常见的编码

base64:26个小写字母、26个大写字母、10个数字、/、+
base58(区块链):去掉6个容易混淆的,去掉0,大写的o、大写的i、小写的l、/、+/、+影响双击选择

2. go语言实现base64的编码与解码

2.1 base64编码原理

base64是一种编码方式,而并非加密,这种编码因为采用的64种基础字符(可见字符)所以可以全世界通用,大家都认可这一套编码规范

2.2 实现base64的编码与解码

base64

3. go语言实现base58编码与解码

base58编码表

3.1 base58的编码过程

  • 将字符串的每个字节换算成ascii,字符串实际上就是256进制的数字组合
  • 将256进制的数字转换成10进制数字
  • 将10进制数字转换成58进制数字(除以58,每次得到的余数就是对应的58进制,0用编码1来代表)
  • 将58进制数字对照58编码表找到对应的字符

例子:

  • fan对应的换成ascii:77 97 110
  • 将77 97 110的256转换10进值:77256256 + 97*256 + 110 = 4612462
  • 将4612462除以58,每次得到的余数就是对应的58进制,0用编码1来代表:
  • 用余数的值去查表

3.2 base58编解码具体实现

4. 最后

到此这篇关于go语言实现base64、base58编码与解码的文章就介绍到这了,更多相关go语言base64、base58编码与解码内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!