English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Nella criptografia viene utilizzato il traduttore del codice Morse. È stato chiamato da Samuel FB Morse. Attraverso questa tecnologia, convertiamo il messaggio in una serie di punti, virgole, '-', '/'.
Questa tecnica è molto semplice. Ogni lettera inglese rappresenta una serie di punti, virgole, '/','-'.加密消息时,我们只是从消息到符号,然后从符号到英语解密消息。
Ecco il dizionario:
'A':'.-', 'B':'-...' 'C':'-.-.', 'D':'-..', 'E':'.' 'F':'..-.', 'G':'--.', 'H':'....' 'I':'..', 'J':'.---', 'K':'-.-' 'L':'.-..', 'M':'--', 'N':'-.' 'O':'---', 'P':'.--.', 'Q':'--.-' 'R':'.-.', 'S':'...', 'T':'-' 'U':'..-', 'V':'...-', 'W':'.--' 'X':'-..-', 'Y':'-.--', 'Z':'--..' '1':'.----', '2':'..---', '3':'...--' '4':'....-', '5':'.....', '6':'-....' '7':'--...', '8':'---..', '9':'----.' '0':'-----', ', ':'--..--', '.':'.-.-.-' '?':'..--..', '/':'-..-.', '-':'-.....' '(':'-.--.', ')':'-.--.-'}
Il messaggio è PYTHON-PROGRAM L'output è .--. -.-- - .... --- -. -....- .--. .-. --- --. .-. -. --
Codifica
Step1: Data una stringa, inizialmente estraiamo ogni lettera dalla parola e la abbiniamo al dizionario del codice Morse, poi consideriamo il codice corrispondente alla lettera. Step2: Il passo successivo è memorizzare il codice in una variabile. E dobbiamo seguire che uno spazio deve essere mantenuto tra ogni codice Morse. Step3: Dovrebbero essere mantenuti due spazi tra ogni parola.
Decodifica
Step1: Prima di tutto, aggiungiamo uno spazio alla fine della stringa. Step2: Ora esploriamo ogni lettera del messaggio fino a quando non incontriamo uno spazio. Step3: Quando otteniamo spazio, controlliamo con il dizionario del codice Morse e lo memorizziamo in una variabile. Passo4: Quando si ottengono 2 spazi consecutivi, aggiungeremo un altro spazio alla nostra variabile che contiene la stringa decodificata. Passo5: Quando si ottiene l'ultimo spazio del messaggio, significa che questo è l'ultimo carattere del generatore di codice Morse.
# -*- coding: utf-8 -*- """ Creato il Mar 2 Ott 11:21:31 2018 @autore: Satyajit """ # Dizionario che rappresenta la tabella del codice Morse MORSE_CODE_DICT = { 'A':'.-', 'B':'-...' } 'C':'-.-.', 'D':'-..', 'E':'.' 'F':'..-.', 'G':'--.', 'H':'....' 'I':'..', 'J':'.---', 'K':'-.-' 'L':'.-..', 'M':'--', 'N':'-.' 'O':'---', 'P':'.--.', 'Q':'--.-' 'R':'.-.', 'S':'...', 'T':'-' 'U':'..-', 'V':'...-', 'W':'.--' 'X':'-..-', 'Y':'-.--', 'Z':'--..' '1':'.----', '2':'..---', '3':'...--' '4':'....-', '5':'.....', '6':'-....' '7':'--...', '8':'---..', '9':'----.' '0':'-----', ', ':'--..--', '.':'.-.-.-' '?':'..--..', '/':'-..-.', '-':'-.....' '(':'-.--.', ')':'-.--.-' } def encryption(message): my_cipher = '' for myletter in message: if myletter != ' ' my_cipher += MORSE_CODE_DICT[myletter] + ' ' else: my_cipher += ' ' return my_cipher # Questa funzione viene utilizzata per decifrare # Codice Morse in inglese def decryption(message): message += ' ' decipher = '' mycitext = '' for myletter in message: # Verifica lo spazio if (myletter != ' '): i = 0 mycitext += myletter else: i += 1 if i == 2 : decipher += ' ' else: decipher += list(MORSE_CODE_DICT.keys())[list(MORSE_CODE_DICT .values()).index(mycitext)] mycitext = '' return decipher def main(): my_message = "PYTHON-PROGRAM" output = encryption(my_message.upper()) print(output) my_message = ".--. -.-- - ... --- -. -....- .--. .-. --- --. -. -.- --" output = decryption(my_message) print(output) # Esegue la funzione principale if __name__ == '__main__': main()
Risultato di output
.--. -.-- - ... --- -. -....- .--. .-. --- --. -. -.- -- PYTHON-PROGRAM