pyEnigma / pyenigma /

#! /usr/bin/env python
#-*- coding: utf-8 -*-

import sys

from rotor import *
from enigma import *

"""A trivial and minimaliste CLI.

def usage():
    print('\techo "Hello World" | ./ ABC ref rotor1 rotor2 rotor3 plugboard')
    print('\t$ echo "Hello World" | ./ ABC A  I II III "AV BS CG DL FU HZ IN KM OW RX"')
    print("\tImweq Ltzda")

if __name__ == "__main__":
    # Point of entry in execution mode
        key = sys.argv[1]
        ref = sys.argv[2]
        r1 = sys.argv[3]
        r2 = sys.argv[4]
        r3 = sys.argv[5]
        plugs = sys.argv[6]
    raw =

    rotors = { \
    reflectors = { \
          "A":ROTOR_Reflector_A,"B":ROTOR_Reflector_B, \
          "C":ROTOR_Reflector_C \

    engr = Enigma(reflectors[ref], rotors[r1], rotors[r2], rotors[r3], key=key, plugs=plugs)
    res = engr.encipher(raw)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.