An enhanced simulation of the enigma machine
Project description
Features
A simulation of the historic enigma machine, covering its flaws and improving the scope of the technique.
- Adding to the original Enigma, this technique can accept most characters, numbers and even spaces in the key.
- Each character in the string is capable of being encrypted unlike the original edition.
- The key length is not limited to just 5, as in a usual enigma machine, the user can create any n length key
- Alphabets, characters and even empty spaces are encrypted in this technique and the key can also have empty spaces as a character !
To decrypt a message enter the decrypted message and use the same key length and key used for encryption
Usage
The module is easy to use. To use the module after installing it, write the following code-
From Multi_Rotor_Enigma import Multi_Rotor_Enigma
print(Multi_Rotor_Enigma.Encrypt(msg,no. of rotors,key))
There is the main function Enigma which has 3 attributes- they are (in order)
Message to encrypt (string)
Number of rotors user wants (integer)
Setting of rotors (string)
Note- The length of setting and number of rotors should be the same otherwise an error will occur
Example
Let’s quickly see with an example how the module works. For example if
we have to encrypt the string, ‘hello world’ with 6 rotors and using
the key as#wr% I shall write
import Multi_Rotor_Enigma
print(Multi_Rotor_Enigma.Multi_Rotor_Enigma.Enigma(‘hello
world’,6,‘as#wr%’))
For decryption, I repeat the same process, just that the message to decrypt will replace the ‘hello world’ part while the key length and number of rotors combination will remain the same as used during the encryption part.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file Multiple_Rotor_Enigma-0.2.1.tar.gz
.
File metadata
- Download URL: Multiple_Rotor_Enigma-0.2.1.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 44759a66aa9a6079b668fc0488430f775c87fe111576a48c0458f244fd84f831 |
|
MD5 | 878331f568be0124246114f241050af8 |
|
BLAKE2b-256 | 1e0fbffb97ed3e0578a141270a6e6259990a6721eaacbd0bcd194b224cfc8743 |