在CPA4软件中有提供设计LFSR加密器的功能:

输入LFSR的大小,初始密钥,还有反馈密钥。

点击Set Key后点击Show LFSR

观察LFSR,发现初始密钥是1101,转成十六进制是D,反馈密钥是1001,转成十六进制是9,正确。

接下来输入循环的次数20000,点击run就自动生成20000个二进制位。

结果仅截取前面一部分来验证是否达到最大周期:

1111

0101

1001

0001

1110

1011

0010

0011

1101

0110

0100

0111

1010

1100

1000

1111

发现周期是15,已经达到最大周期。特征多项式为x4+x+1

CAP4也提供随机性测试:

无法通过单个位测试

无法通过扑克牌测试

所以虽然这个LFSR达到最大周期,但是随机性测试没有通过,是无法作为一个合格的密钥流生成器的。

本文章不旨在设置合格的密钥流生成器,仅说明如何去设计LFSR及测试随机性的方法。

最新文章

  1. SQL Server服务器上需要导入Excel数据的必要条件
  2. 强制IE使用最高版本引擎渲染页面,避免默认使用IE7引擎导致的页面布局混乱及其它问题
  3. liunx下安装MYSQL时需要安装的相关软件的作用
  4. hdu 3635 Dragon Balls (带权并查集)
  5. 在win7上建立本地FTP站点详细步骤
  6. 将[{},{}]转为dict
  7. 从零开始学C++之STL(四):算法简介、7种算法分类
  8. 5. Java反射机制
  9. WebGIS中使用ZRender实现前端动态播放轨迹特效的方案
  10. j2ee分布式架构 dubbo + springmvc + mybatis + ehcache + redis 分布式架构
  11. nuxtJs中直接使用自带的@nuxtjs/axios
  12. leetcode56
  13. 用 Lua 控制 MIDI 合成器来播放自定义格式乐谱
  14. 【Python】唯品会购买商品
  15. C语言版kafka消费者代码运行时异常kafka receive failed disconnected
  16. 总结html
  17. ThinkJava-File类
  18. AutoResetEvent和ManualResetEvent理解
  19. [T-ARA][HOLIDAY]
  20. 字符串的partition函数

热门文章

  1. Re-enable Alcatraz on Xcode 6.3.2 or newer
  2. FPGA开发板
  3. Spark RDD概念学习系列之RDD的容错机制(十七)
  4. 在 windows 上面安装 tensorflow
  5. Delphi- 数据加密和解密
  6. Android实时监听网络状态(2)
  7. [置顶] [VS2010]逸雨清风 永久稳定音乐外链生成软件V0.1
  8. 多线程读写共享变量时,synchronized与volatile的作用
  9. sudo 免密码
  10. css :after和:before