MATLAB实现Enigma 密码机

Matlab 模拟实现 enigma 密码机。密码机包含三个转子和反射器,满足以下条件:1. 输入信号从左往右通过各个转子(在到达反射器之前);2. 根据输入信号的流经次序,从左到右将转子依次标号为转子 1、转子 2、转子 3,并分别设定为慢速转子、中速转子、快速转子;3. 转子转动方向为从上往下转动;4. 每加密/解密一个字母后,快速转子转动 1 位;快速转子每转动一圈,中速转子转动一位;中速转子每转动一圈,慢速转子转动一位(转子状态从 1 转动到 26 判定为转子转动一圈,执行上述操作);5. 各个转子当前的状态由每个转子当前左侧第一个标号表示;6. 各个转子左侧标号为 1-26 顺序排列,右侧对应标号随机且给定; 7. 反射器中的两两对应关系随机且给定。 示意图如下: MATLAB实现Enigma 密码机
文章图片
可以看到,对于第n个输入时,它是一一对应的,所以加密和解密算法一样。
MATBLE代码收录于
MATLAB实现Enigma密码机-Matlab文档类资源-CSDN下载
【MATLAB实现Enigma 密码机】

    推荐阅读