目录
1 数学基础
1.1 熵与疑义度
一条消息中的信息量: 要将消息中所有可能的含意编码所需的最少的比特位数。
熵: 用来形式化地衡量一条消息M中的信息量,记为H(M)。当用比特来衡量时,为log2n,其中n为消息的状态个数,假设所有状态有相等的出现概率。
H ( M ) = l o g 2 N H(M)=log_{2}N H(M)=log2N
例:表示星期的信息的熵 H(M)= log2n= log27=2.807
表示性别的信息的熵 H(M)= log2n= log22=1
表示季节的信息的熵 H(M)= log2n= log24=2
表示月份的信息的熵 H(M)= log2n log212=3.585
疑义度: 消息的熵同时也可衡量其不确定性(疑义度),即将消息隐藏在密文中时,要破译它所需的明文比特数。
例:性别的疑义度为1
1.2 自然语言率
自然语言率: 对于给定的一种语言,其自然语言率为
r = H ( M ) / N r = H(M)/ N r=H(M)/N
其中N为消息长度。
绝对语言率: 每个字符编码的最大比特数,这里假设每个字符序列出现的机会相等。若语言中有L个字母,则绝对语言率为: R = l o g 2 L R = log_{2}L R=log2L
为单个字母的最大熵。
冗余度:语言的冗余度记为D,定义为:
D = R − r D = R - r D=R−r
1.3 密码系统的安全性
绝对安全的密码系统: 一次一密(密钥与消息本身一样长,密钥随机产生且不重复使用)
密码系统的熵: 衡量密钥空间K的大小的一个标准,通常是密钥数以2为底的对数。 H ( M ) = l o g 2 k H(M)=log_{2}k H(M)=log2k
1.4 确定性距离
确定性距离: 能够唯一地确定密钥的最短的密文长度的近似值。
对称密码系统的确定性距离:定义为密码系统的熵除以语言的冗余度。 U = H ( K ) / D U = H(K)/ D U=