Python/ciphers/transposition_cipher_encrypt_decrypt_file.py

42 lines
1.1 KiB
Python
Raw Normal View History

import os
import sys
import time
from . import transposition_cipher as transCipher
2018-10-19 12:48:28 +00:00
2019-10-05 05:14:13 +00:00
2018-10-19 12:48:28 +00:00
def main():
2019-10-05 05:14:13 +00:00
inputFile = "Prehistoric Men.txt"
outputFile = "Output.txt"
key = int(input("Enter key: "))
mode = input("Encrypt/Decrypt [e/d]: ")
2018-10-19 12:48:28 +00:00
if not os.path.exists(inputFile):
2019-10-05 05:14:13 +00:00
print("File %s does not exist. Quitting..." % inputFile)
2018-10-19 12:48:28 +00:00
sys.exit()
if os.path.exists(outputFile):
2019-10-05 05:14:13 +00:00
print("Overwrite %s? [y/n]" % outputFile)
response = input("> ")
if not response.lower().startswith("y"):
2018-10-19 12:48:28 +00:00
sys.exit()
2018-10-19 12:48:28 +00:00
startTime = time.time()
2019-10-05 05:14:13 +00:00
if mode.lower().startswith("e"):
with open(inputFile) as f:
content = f.read()
2018-10-19 12:48:28 +00:00
translated = transCipher.encryptMessage(key, content)
2019-10-05 05:14:13 +00:00
elif mode.lower().startswith("d"):
with open(outputFile) as f:
content = f.read()
2019-10-05 05:14:13 +00:00
translated = transCipher.decryptMessage(key, content)
2018-10-19 12:48:28 +00:00
2019-10-05 05:14:13 +00:00
with open(outputFile, "w") as outputObj:
outputObj.write(translated)
2018-10-19 12:48:28 +00:00
totalTime = round(time.time() - startTime, 2)
2019-10-05 05:14:13 +00:00
print(("Done (", totalTime, "seconds )"))
2019-10-05 05:14:13 +00:00
if __name__ == "__main__":
2018-10-19 12:48:28 +00:00
main()