将固定长度的短字符串(52个字符)压缩到小于40个

Compress short fixed length string (52 characters) down to less than 40

本文关键字:字符 52个 压缩 40个 小于 字符串      更新时间:2023-10-16

我试着在谷歌上搜索一种算法来压缩/加密一个固定长度的短字符串,从52个字符压缩到40个字符,但似乎找不到任何。

目标字符串是随机的字母数字[A-Z0-9]如"M5KS07VHN2X42JCY1PFHE1ZZGI2XUBDFAKQBEPFB7CH4SECXHJXL"

我尝试了huffman和smaz (https://github.com/antirez/smaz"),两者都膨胀到原始字符串的大小。

有谁知道一个好的算法吗?

对于a - z0 -9,最简单的编码是将每个字符编码为6位(这可能允许更多)。52个字符是52 * 8位,压缩后的字符串将是52 * 6 = 39字节。

编辑:稍微复杂一点的系统是使用DEC在其PDP-11和类似系统中使用的RADIX-50格式进行存储,该格式将在16位中存储3个字符,每个字符使用40的乘数。当我还是学生的时候,学校有一台运行RSTS/E的PDP-11,我就用过这个系统。