Atbash Cipher - Gravity Falls Cryptic Messages 2

Posted by : Ali Khundmiri Last Updated : Aug. 10, 2017, 4:02 p.m.


Atbash ciphers are much easier than Caesar Ciphers (for which i have already have written a script, you can check it out here in my blogs)

Atbash are simple in reverse order alphabets. For example,

if you are making the Atbash Script for first 5 alphabets, it will be like this

Alphabets - A B C D E
Key - E D C B A

really simple.

The Script

The script of this cipher is mostly similar, with the inclusion of alphabet reversal line.
We will won't be needing the english language verification module since there is only one possibility in the decrypted answer.

If you don't understand what i am taking about, you can check out the previous part of this Blog, but here the TL;DR

TL;DR

When we get a decrypted string, we verify if the words in the string have valid english words and we rank them on the bases on how many proper words there are in one sentence.
for example, if there are 10 words in a string, and only 3 are proper words, then it is given a score of 30%

Code

'''
An atbash cipher usually simply reverses the order of entire range of alphabets.
abc becomes cba
'''

intab = "abcdefghijklmnopqrstuvwxyz"
outtab = intab[::-1] #this will reverse whatever is in intab

def get_crypt():
input_user = input("Please enter the string you believe is Atbash Crypted > ")
input_user = input_user.lower()
print("You entered : " + input_user)
return input_user

def get_translated(string_input):
print(string_input.translate({ord(x): y for (x, y) in zip(intab, outtab)}))

if __name__ == "__main__":
message = get_crypt()
print("\nHere's what i got:\n")
get_translated(message)

Github

You can download the script from Github from here
Link : https://github.com/alikhundmiri/gravity_falls/blob/master/atbash_cipher_decrypter-en.py

Up next

with in a few days i should be ready with the script for A1Z26 Cipher decoder.

Do comment and leave your feed back!. You messages and corrections are Much appreciated.