예제 #1
0
def crypto_adfgvx_decipher_api(key:type_key_square(36), keyword: 'The keyword, any word or phrase will do', msg: 'Message to be [de]ciphered'):
        """The ADFGVX Cipher has a key consisting of a 6x6 key square and a word e.g. 'GERMAN'.
The algorithm is described here: http://www.practicalcryptography.com/ciphers/classical-era/adfgvx/
The key square consists of the letters A-Z and the numbers 0-9 (36 characters total)"""
        adfgvx = ADFGVX(key=key, keyword=keyword)
        return adfgvx.decipher(msg)
예제 #2
0
def crypto_vigenere_encipher_api(key:type_alphabetical_key, msg: 'Message to be [de]ciphered'):
        """The Vigenere Cipher has a key consisting of a word e.g. 'FORTIFICATION'.
This cipher encrypts a letter according to the Vigenere tableau, the algorithm can be 
seen e.g. http://practicalcryptography.com/ciphers/vigenere-gronsfeld-and-autokey-cipher/"""
        vigenere = ADFGVX(key=key)
        return vigenere.encipher(msg)