保护你的信件不被盟军间谍发现!

enigmamachine的Python项目详细描述


#Enigma
一个cli engima机器,它可以为您的战时信息保密!

这个程序模拟二战期间纳粹使用的谜机。它允许用户将包含几乎所有ascii字符的任何长度的消息转换成加密格式,只有具有相同设置的单独的enigma机器才能解码。

翻译信息时转子转动,因此信息不同部分的相同字符将被编码为不同的字符,使这种编码方法比简单的字符替换更复杂、更难破译。

该程序包括支持文件输入/输出的选项以及31天的加密选项,与原来的机器很相似。


编写这个程序主要是为了加深我对python、加密、打包和命令行界面的个人知识。它不应用于加密任何重要消息,而只用于娱乐。

运行以下命令(对于ubuntu):
```
$sudo apt install python3
$sudo apt install python3 pip
```
其他linux发行版和非linux操作系统需要不同的指令来安装python和pip。要安装enigma,请运行:
```
$sudo pip3 install enigmachine
`````

文件,路径可以是相对的或绝对的

-d,-天:
使用今天的转子、插板和反射器设置加密/解密

-v,--版本:
显示版本信息
```

$enigma-i“translate.txt”
```
将翻译后的消息发送到文本文件:
`````
$enigma-o“translate d.txt”“翻译此消息”
``````


使用特定日期设置翻译文件的链选项:
``````
$enigma-d 25-i“translate.txt”
````
显示版本信息--版本:
```

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Android测试运行失败:没有测试结果   java设置JMenuItems与Nimbus LaF的边界   java是使用springboot、Crudepository和MySQL检查重复值的好方法吗   谷歌电子表格的Java时代日期   java向xml文件添加EditText不起作用   java ORA00933:SQL命令未正确结束WHERE子句   如何在java中防止JTextField上使用CTRL+C?   java绑定到TypeLiteral在google guice中是好的还是坏的做法   java找到了原始类型,缺少泛型类的返回参数   Kafka Streams API中ArrayList Serde的java问题   java在hibernate中,哪种持久化上下文的性能更好?   java通过本机查询获取数据库url、名称和模式版本   如何为Java枚举编写通用for循环?   在Java应用程序中播放MP3   如何使用VisualVM度量短时间运行的Java应用程序的性能?   java从当前日期获取datetime(秒)   简单JMH基准中的javagrpcoome和NPE   java如何加载Maven项目库中Spring jar的应用程序上下文   JavaCC XPath解析器   用于Scala和Java的类型安全生成器库