一尘不染

将任意GUID编码为可读ASCII(33-127)的最有效方法是什么?

algorithm

GUID的标准字符串表示形式大约需要36个字符。这是非常好的,而且真的很浪费。我想知道如何使用33-127范围内的所有ASCII字符以最短的方式对其进行编码。天真的实现产生22个字符,只是因为
128位 / 6位 产生22。

霍夫曼编码是我的第二好选择,唯一的问题是如何选择代码。

当然,编码必须是无损的。


阅读 417

收藏
2020-07-28

共1个答案

一尘不染

使用Base85。请参阅第4.1节。 为什么是85?
IPv6地址的紧凑表示

IPv6地址(如GUID)由八个16位组成。

2020-07-28