支持python字节的类似谜的模拟。
bitnigma的Python项目详细描述
Enigma Byte Machine===使用与构建my ‘classic’ Enigma simulation相同的原理;I 反向工程一个更新,更强,更强大的谜加密 能够编码任何标准8位字符的方案 称为字节)通过取消26个字符的限制,我们现在 能够使用与 最初的谜机。
技术细节
- 在Python3.6.1 for Windows上开发和测试。
- 支持其他python版本(>;=3.6.0)和其他操作 系统是可能的,但不能保证。
- 设计为作为模块调用,但可以从 __main__.py脚本也一样
- 可以导入并在自己的应用程序中使用,但不能 已经提供了文档(尽管 弄清楚)
- 需要requests模块和Internet连接才能正确 构建自述文件(从标记到重构文本的转换)。
正在下载
这个包现在在pypi上可用,可以使用 pip install bitnigma或直接从repo使用 pip install git+git://github.com/spgill/bitnigma。
用法
usage: python -m bitnigma [-h] [--plugboard PLUGBOARD [PLUGBOARD ...]] [--rotors ROTORS [ROTORS ...]] [--reflector REFLECTOR] [--state STATE] [--state-create] [--state-update] [--state-print] [--state-seed STATE_SEED] [--state-seed-file STATE_SEED_FILE] [--input INPUT] [--input-std] [--input-path INPUT_PATH] [--output-std] [--output-path OUTPUT_PATH] [--chunk-size CHUNK_SIZE] [--benchmark] [--progress] Process some data through a simulated Enigma machine optional arguments: -h, --help show this help message and exit --plugboard PLUGBOARD [PLUGBOARD ...], -pl PLUGBOARD [PLUGBOARD ...] Specify a list of byte pairings for the plugboard. ex; 10:25 50:77 102:33 --rotors ROTORS [ROTORS ...], -ro ROTORS [ROTORS ...] Specify a list of rotors in the following format: SHORTNAME[:SETTING] ex; byte1:52 --reflector REFLECTOR, -rf REFLECTOR Specify a reflector by its shortname. --state STATE, -s STATE Path for the state file (reading or writing). States can be used in lieu of manually specifying rotors and reflectors every time. --state-create, -sc Take the plugboard, rotor, and reflector args and save them to the state file (and then exit). --state-update, -su After processing, save the changed rotor state back to the state file. This allows for a continuous rotor progression over multiple program invocations. THERE IS NO ROLLBACK, SO BACK UP THE STATE. --state-print, -sp Print the state information to stdout and then exit. --state-seed STATE_SEED, -ss STATE_SEED String seed for to create a randomly generated state. --state-seed-file STATE_SEED_FILE, -ssf STATE_SEED_FILE File to use as seed for a randomly generated state. --input INPUT, -i INPUT Input a string via this command line argument. --input-std, -is Read data from stdin pipe. --input-path INPUT_PATH, -ip INPUT_PATH Open and read data from file path. --output-std, -os Write output to the stdout pipe. --output-path OUTPUT_PATH, -op OUTPUT_PATH Write output to the specified file path. --chunk-size CHUNK_SIZE, -c CHUNK_SIZE Chunk size for reading and writing data. --benchmark, -b Benchmark the processing time (prints results to stderr). --progress, -p Show the progress meter; written to stderr.