Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- MAX_KEY_SIZE = 26
- def getKey():
- key = 0
- while True:
- print('Enter the key number (1-%s)' % (MAX_KEY_SIZE))
- key = int(input())
- if (key >= 1 and key <= MAX_KEY_SIZE):
- return key
- def getTranslatedMessage(mode, message, key):
- if mode[0] == 'd':
- key = -key
- translated = ''
- for symbol in message:
- if symbol.isalpha():
- num = ord(symbol)
- num += key
- if symbol.isupper():
- if num > ord('Z'):
- num -= 26
- elif num < ord('A'):
- num += 26
- elif symbol.islower():
- if num > ord('z'):
- num -= 26
- elif num < ord('a'):
- num += 26
- translated += chr(num)
- else:
- translated += symbol
- return translated
- def main (argv) :
- mode = 'b'
- key = 25
- print
- print '..........................'
- print 'caesar-cypher.py'
- print 'mode ==> e = encrypt : d = decrypt : b = brute-force ==> ',mode
- mode = raw_input("Please Enter Mode > ")
- key = raw_input("Please enter key '1-26' > ")
- message = raw_input("Please enter message > ")
- key = int(key)
- print 'key = ',key
- print 'Original Message: ',message
- x = getTranslatedMessage(mode,message,key)
- print
- print
- print 'Encrypted Txt :', x
- print('Your translated text is:')
- if mode[0] != 'b':
- print x
- else:
- print
- print 'brute force attack'
- for key in range (1,MAX_KEY_SIZE + 1) :
- print (key,getTranslatedMessage('decrypt',message,key))
- if __name__=='__main__':
- main(sys.argv)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement