2017-04-03 15 views
-2

Ich versuche eine Datei in Python zu entschlüsseln, die ich mit einem anderen Programm verschlüsselt habe. Einige Buchstaben werden korrekt entschlüsselt, andere nicht. Ich bin mir nicht sicher, was passiert. Alles, was ich im Wesentlichen tat, war, den Code für die Entschlüsselungsdateien umzukehren. Ich denke, es hat damit zu tun, wie es den Text durchläuft, aber ich bin nicht sicher, wie ich es beheben soll.Wie entschlüsselt man in Python?

Hier ist mein Entschlüsselungscode:

decryption_library = {'%':'A','9':'a','@':'B','#':'b','1':'C','2':'c','3':'D','4':'d', 
         '5':'E','6':'e','7':'F','8':'f','0':'G','}':'g','{':'H',']':'h','[':'I',',':'i', 
         '.':'J','>':'j','<':'K','/':'k','0':'L','\-':'l','\"':'M',':':'m',';':'N', 
         '+':'n','$':'O','-':'o','$':'Q','%':'q','^':'R','&':'r','*':'S', 
         '(':'s',')':'T','~':'t','`':'U','5':'u','\\':'V','+':'v','=':'W','7':'w', 
         '~':'X',')':'x','2':'Y','*':'y',']':'Z','8':'z'} 

orig_file = open('ENCRYPTED_Plain_Text_File.txt','r') 

file_read = orig_file.read() 

orig_file.close() 

encrypt_file = open('DECRYPTED_Plain_Text_File.txt','w') 

for ch in file_read: 
    if ch in decryption_library: 
     encrypt_file.write(decryption_library[ch]) 
    else: 
     encrypt_file.write(ch) 

encrypt_file.close() 

encrypt_file = open('ENCRYPTED_Plain_Text_File.txt','r') 

file_read = encrypt_file.read() 

encrypt_file.close() 

codes_items = decryption_library.items() 

for ch in file_read: 
    if not ch in decryption_library.values() or ch == '.' or ch == ',' or ch == '!': 
     print(ch) 
    else: 
     for k,v in codes_items: 
      if ch == v and ch != '.': 
       print(k,end='') 

Hier ist der verschlüsselte Text:

)]6 ^-94 ;-~)9/6+ 
@2 ^[email protected]^) 7^$*) 
)7- &-94(4,+6&}64 ,+ 9 *6\-\--7 7--4, 
%+4 (-&&* [ 2-5\-4 +-~ ~&9+6\- #-~] 
%+4 #6 -+6 ~&9+6\-6&, \--+} [ (~--4 
%+4 \---/64 4-7+ -+6 9(89& 9([ 2-5\-4 
)- 7]6&6 ,~ #6+~ ,+ ~]6 5+46&}&-7~]; 

Hier ist, was es sein sollte:

The Road Not Taken 
BY ROBERT FROST 
Two roads diverged in a yellow wood, 
And sorry I could not travel both 
And be one traveler, long I stood 
And looked down one as far as I could 
To where it bent in the undergrowth; 

Hier ist, was es dechiffriert zu :

xZe Road NoX xakev 
BY RQBuRx wRQyx 
xwo roads diverged iv a yeVoVoow woodi 
qvd sorry I YouVod voX XraveVo boXZ 
qvd be ove XraveVoeri Voovg I sXood 
qvd Voooked dowv ove as zar as I YouVod 
xo wZere iX bevX iv XZe uvdergrowXZN 
+3

Ihre Entschlüsselungslogik scheint korrekt zu sein, aber Ihre 'decryption_library' hat Duplikate:') 'maps to' T' und 'x',' ~ 'maps auf' t' sowie 'X', ... Mit diesen Unklarheiten können Sie den ursprünglichen Klartext nicht wiederherstellen. – Pit

+0

Sie haben den gleichen Schlüssel für unterschiedliche Werte! zum Beispiel: ']': 'h' und ']': 'Z' – RaminNietzsche

Antwort

1

Ihre decryption_library ist nicht korrekt. Fe für den Index ')' haben Sie den Wert 'T' und auch 'x'

Verwandte Themen