Chapter 8 – The Transposition Cipher, Encrypting 99
Print the encrypted string in ciphertext to the screen, with
a | (called "pipe" character) after it in case there are spaces at
the end of the encrypted message.
- print(ciphertext + '|')
Copy the encrypted string in ciphertext to the clipboard.
- pyperclip.copy(ciphertext)
- def encryptMessage(key, message):
Each string in ciphertext represents a column in the grid.
- ciphertext = [''] * key
Loop through each column in ciphertext.
- for col in range(key):
- pointer = col
Keep looping until pointer goes past the length of the message.
- while pointer < len(message):
Place the character at pointer in message at the end of the
current column in the ciphertext list.
- ciphertext[col] += message[pointer]
move pointer over
- pointer += key
Convert the ciphertext list into a single string value and return it.
- return ''.join(ciphertext)
If transpositionEncrypt.py is run (instead of imported as a module) call
the main() function.
- if name == 'main':
- main()
Sample Run of the Transposition Cipher Encryption Program
When you run the above program, it produces this output:
Cenoonommstmme oo snnio. s s c|
This ciphertext (without the pipe character at the end) is also copied to the clipboard, so you can
paste it into an email to someone. If you want to encrypt a different message or use a different