transpositionschifferlösning

Härär ett exempel med de tolv första bokstäverna i alfabetet

Kryptering

Message: ABCDEFGHIJKL
Columns: 3
ABC
DEF
GHI
JKL​
Läser vi kolumnvis ner får vi ADGJBEHKCFIL, vilket är vårt krypterade meddelande.

Dekryptering

Vi provar att skriva ut med olika antal kolumner tills vi hittar något begripligt.
Testa med två kolumner:
Message: ADGJBEHKCFIL
Columns: 2
AD
GJ
BE
HK
CF
IL
Testa med tre kolumner:
Message: ADGJBEHKCFIL
Columns: 3
ADG
JBE
HKC
FIL
Testa med fyra kolumner:
Message: ADGJBEHKCFIL
Columns: 4
ADGJ
BEHK
CFIL​
Aha, om vi läser kolumnvis hittar vi alfabetet!
Programkod för att skriva ut kolmumnvis:
def transpose(message, columns):
i = 0
for letter in message:
print(letter, end="")
i += 1
if i%columns == 0:
print()

msg = input("Message: ")
cols = int(input("Columns: "))
transpose(msg, cols)