我正在研究使用一种算法来缩短/加密URL的可能性,该URL的长度从150到250个字符到最大12个字符。最初,我怀疑是否有可能,但我想利用StackOverflow的出色思想:)
该算法应该是可以用经典的asp,sql,c#,vb或foxpro或其他语言编写的算法。
如果没有以数据库为中心的方法,那是否有可能?
我在这里阅读的内容是,CFB模式下的AES将执行流密码,并且输出长度将与输入长度相同。有什么办法可以缩短它吗?
一如既往,答案是“取决于”。有一种数学理论讨论一堆数据的“信息内容”。如果您的数据最初是这样的字符串:
lleAgByD2rREjzqj85g68207NsjspdINfPRNvU9udgWw7y4qXh0EQLSy0yEi2
那么信息的内容要比您的字符串看起来要大得多:
one zero one one zero one zero zero one zero one one zero one
即使字符串实际上是相同的长度。使用压缩,可以减少表达相同含义所需的位数,但只能减少到一点。那一点取决于原始消息的信息内容。
在我看来,您的150到250个字符的字符串几乎没有信息内容,因此可以有效地压缩为12个字符。您可能必须将较长的数据存储在数据库中,并为每个数据项分配较短的“键”。