# 第 16 章 信息指纹及其应用

一段文字所包含的信息，就是它的信息嫡。如果对这段信息进行无损压缩编码，理论上编码后的最短长度就是它的信息嫡。但是，如果仅仅要区分两段文字或者图片，则远不需要那么长的编码。任何一段信息，都可以对应一个不太长的随机数，作为区分它和其他信息的指纹。

## 信息指纹的用途

* 网址消重：比如一般网址由字符串组成，长度不固定，所以查找困难，占用容量较大。可以将字符串看成是一个特殊的、长度很长的整数，利用伪随机数产生算法器，将其转换成特定长度的伪随机数，即信息指纹。
* 密码：cookie也是一种信息指纹，网站无法根据信息指纹了解用户的身份，这样可以起到保护隐私的作用。信息指纹具有不可逆性。
* 网络爬虫：可以利用信息指纹判断一个网址是否已经下载过。
* 判定集合相同：计算两个集合元素的信息指纹，由于加法的交换律，保证集合的指纹不因元素出现的次序而改变，如果两个集合元素相同，那么它们的信息指纹一定相同。
* 判定集合基本相同：比较两个网页是否相同，只需找出每个网页中IDF最大的几个词，计算并比较他们的信息指纹。
* 反盗版：提取并比较视频的关键帧。

## 小结

信息指纹可以理解成将一段信息（文字、图片、音频、视频等）随机地映射到一个多维二进制空间的一个点（一个二进制数字）。

