Advertisement
jukaukor

Scharnhorst.py

May 25th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. # Taisteluristeilijä Scharnhorstin viimeinen viesti 26.12.1943
  2. # Koodattu laitteella Kriegsmarine Enigma M3
  3. # Tiedot viestistä http://cryptocellar.org/bgac/Scharnhorst.html
  4. # Juhani Kaukoranta 25.5.2018
  5.  
  6. # Scharnhorstin viesti:
  7. #
  8. # UTKZ RBSB YKAE NZAP
  9. # MSCH ZBFO CUVM RMDP
  10. # YCOF HADZ IZME FXTH
  11. # FLOL PZLF GGBO TGOX
  12. # GRET DWTJ IQHL MXVJ
  13. # WKZU ASTR UTKZ RBSB
  14. #
  15. # viestin alun ja lopun blokit UTKZ RBBS ovat Schlüsselkenngruppe ja Verfahrenkenngruppe
  16. # ne eivät kuulu viestin sisältöön ja ohitetaan Enigmalla
  17.  
  18. # Avataan Scharnhorstin salakielinen vieti selväkieliseksi
  19. from enigma.machine import EnigmaMachine
  20.  
  21. # Scharnhorstin Enigma M3 asetukset
  22.  
  23. machine = EnigmaMachine.from_key_sheet(
  24. rotors='III VI VIII',
  25. reflector='B',
  26. ring_settings='A H M',
  27. plugboard_settings='AN EZ HK IJ LR MQ OT PV SW UX')
  28.  
  29. # asetetaan roottorien alkuasetukset, selkokielisen viestiavaimen UZV avulla
  30. machine.set_display('UZV')
  31.  
  32. # Scharnhorstin lähettämä salakielinen viesti
  33. # viestin alusta ja lopusta poistettu kaksi 4-kirjaimista blokkia (Schlüsselkenngruppe ja Verfahrenkenngruppe)
  34. ciphertext = 'YKAENZAPMSCHZBFOCUVMRMDPYCOFHADZIZMEFXTHFLOLPZLFGGBOTGOXGRETDWTJIQHLMXVJWKZUASTR'
  35. # avataan salakielinen viesti
  36. plaintext = machine.process_text(ciphertext)
  37.  
  38. print(plaintext)
  39. # siistitty selvemmäksi
  40. print("(Steuere Tanafjord an. Standort Qu. AC 4992 Fahrt 20 sm Scharnhorst)")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement