Instructions:
- Open a new python file.
- Create a program to encrypt and decrypt messages using a substitution cipher. The user provides a word that does not have any duplicate letters and no numbers or special characters. The user then provides the instruction to either encrypt or decrypt the message. Finally, the user then provides the message to be encrypted or decrypted. Create a function to check if the transposition word is valid, another function to encrypt the message, and a third function to decrypt the message. When encrypting the message, only letters should be provided; do not return any spaces, numbers, or special character. Additionally, the program should not be case sensitive and all output should be in lowercase. Finally, add robust logging to collect insights about the effectiveness of the application.
- A substitution cipher is created by shifting the letters of the alphabet based on a keyword. For instance, if the word provided is "zebra", the cipher would be:
{"a": "z", "b": "e", "c": "b", "d": "r", "e": "a", "f": "c", "g": "d", "h": "f", etc.}
- Update the log file with what you have learned today.