Base58编码简介

Base64是很多人熟知的一种编码。

在URL传输领域,还有类似的Base32编码。这个编码去掉了一些特殊字符,只留下了大写字母和数字。

本文要讨论的是Base58, 故其 基 是58个字母和数字组成,如下:

ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"

注意,少了数字0,大写字母I,大写字母O,小写字母l,一共是:

10+26×2-4=58

这个编码到底比前面两种好在那里呢?

首先,是好阅读,没有容易混淆的字母和数字。

第二,这个编码是一个混淆编码,看上去像Base64,但是其实不是。编码效率又高于Base32。

因此很适合用于抗自动监视的传输系统的底层编码机制。虽然基于概率模型的系统很容易识别出Base58,但是考虑到,基于概率模型的系统的巨大的计算和存储开销。监视TCP报文中Base58编码的数据流在目前是很难实现的。

 

 

 

转载于:https://my.oschina.net/linker/blog/140988

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值