X-Git-Url: http://git.tomasm.cz/krypto.git/blobdiff_plain/605632af85e84473724428eece2e4f6f70b3d9e4..0848894f484da082f0eecfee01bece0157a5b772:/robot.py?ds=sidebyside diff --git a/robot.py b/robot.py index 596f386..87c97f9 100755 --- a/robot.py +++ b/robot.py @@ -9,6 +9,7 @@ from ocesavac import ocesat import jakobsen from jakobsen import reference import koincidence +import posuny import pickle import os @@ -118,27 +119,23 @@ analyza.append("\nIndexy koincidence (vzdy bez mezer):") analyza.append(koincidence.tabulka_indexu(zprava)) # Jakobsen -# TODO verze bez mezer if mod_m: analyza.append("\nJakobsen (s mezerami):") analyza.append(jakobsen.desifruj(zprava, './ref')) +if mod_x: + analyza.append("\nJakobsen (bez mezer):") + analyza.append(jakobsen.desifruj(zprava, './bref')) # Posuny v abecede -# TODO najit nejvhodnejsi posuny a vypsat jenom ty -def posun(char): - if 65 <= ord(char) < 90: - return chr(ord(char) + 1) - if ord(char) == 90: - return 'A' - else: - return char +(posun, posunuty_text) = posuny.nejlepsi(zprava) + if 'P' in opsny or 'A' in opsny: - analyza.append("\nPosuny v abecede:") - posunuty = zprava - for i in range(26): - posunuty = map(posun, posunuty) - analyza.append(''.join(posunuty)) + analyza.append("\nPosuny v abecede (nejlepsi posun {0}):".format(posun)) + analyza.append("{0} {1}".format(i, posuny.vsechny(zprava)[i]) for i in range(26)) +else: + analyza.append("\nNejlepsi posun ({0}):".format(posun)) + analyza.append(posunuty_text) # Bigramy if ('B' in opsny or 'A' in opsny):