projects
/
cipher-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Refactored throughout to use pos() and unpos() rather than explict arithmetic on...
[cipher-tools.git]
/
cipherbreak.py
diff --git
a/cipherbreak.py
b/cipherbreak.py
index a2eecad9cb34f3bb596e2e38e22ed60c1ccca840..7c6cea7ef9758f638dc396049cb833c874d02820 100644
(file)
--- a/
cipherbreak.py
+++ b/
cipherbreak.py
@@
-301,7
+301,7
@@
def vigenere_frequency_break(message, max_key_length=20, fitness=Pletters):
"""
def worker(message, key_length, fitness):
splits = every_nth(sanitised_message, key_length)
"""
def worker(message, key_length, fitness):
splits = every_nth(sanitised_message, key_length)
- key = cat([
chr(caesar_break(s)[0] + ord('a')
) for s in splits])
+ key = cat([
unpos(caesar_break(s)[0]
) for s in splits])
plaintext = vigenere_decipher(message, key)
fit = fitness(plaintext)
return key, fit
plaintext = vigenere_decipher(message, key)
fit = fitness(plaintext)
return key, fit
@@
-376,8
+376,7
@@
def beaufort_variant_frequency_break(message, max_key_length=20, fitness=Pletter
"""
def worker(message, key_length, fitness):
splits = every_nth(sanitised_message, key_length)
"""
def worker(message, key_length, fitness):
splits = every_nth(sanitised_message, key_length)
- key = cat([chr(-caesar_break(s)[0] % 26 + ord('a'))
- for s in splits])
+ key = cat([unpos(-caesar_break(s)[0]) for s in splits])
plaintext = beaufort_variant_decipher(message, key)
fit = fitness(plaintext)
return key, fit
plaintext = beaufort_variant_decipher(message, key)
fit = fitness(plaintext)
return key, fit