伪随机序列相关知识
- m序列是采用LFSR生成的伪随机序列,一个n级LFSR如果共有2^n-1种输出状态,全0状态除外,则它能生成一个周期为2^n-1的小m序列,同时如果只看n级移位寄存器中的状态,则总共有2^n-1种状态,可见如果将初始状态作为输入,输出为移位后的状态,则该LFSR是一个permutation,即一个集合到自身的双射。
- 由于对于1-(2^n-1)这些数,奇数比偶数多一个,因此m序列,也即每个状态的最后一位1的个数必然比0的个数大1,因此m序列的一个周期中1的个数比0大1,这很好模拟了随机序列的特点,因此在m序列的一个周期中无法判断这是伪随机序列还是随机序列。对于纯随机序列,可以从置硬币实验中得到启发,有一个结论为多次实验后出现0,1的频数与总数之比趋近于先验概率,但如果利用排列组合的方法计算,n次实验后0,1相等的概率比0比1多2或1比0多2的概率小,这可以通过杨辉三角看出,因此硬币正、反面朝上次数接近的概率随n增大而增大。
- 伪随机序列有游程概念,也就是连0或连1的长度,长度k的游程占总游程的概率为2^(-k)。
- 一个加密系统可以看做一个伪随机序列发生器。(这个值得探讨)