Реализация шифра одноразового блокнота

Python включает в себя хитрый модуль реализации для one-time-padреализация шифра. Имя пакета называется One-Time-Pad, которое включает в себя инструмент шифрования командной строки, который использует механизм шифрования, аналогичный алгоритму шифрования одноразового блокнота.

Установка

Вы можете использовать следующую команду для установки этого модуля -

pip install onetimepad

Если вы хотите использовать его из командной строки, выполните следующую команду -

onetimepad

Код

Следующий код помогает сгенерировать одноразовый шифр -

import onetimepad

cipher = onetimepad.encrypt('One Time Cipher', 'random')
print("Cipher text is ")
print(cipher)
print("Plain text is ")
msg = onetimepad.decrypt(cipher, 'random')

print(msg)

Вывод

Вы можете увидеть следующий результат, когда запустите приведенный выше код -

Note - Зашифрованное сообщение очень легко взломать, если длина ключа меньше длины сообщения (простой текст).

В любом случае ключ не обязательно является случайным, что делает одноразовый шифр с блокнотом полезным инструментом.