• XSS.stack #1 – первый литературный журнал от юзеров форума

Простое шифрование текста

tabac

CPU register
Пользователь
Регистрация
30.09.2018
Сообщения
1 610
Решения
1
Реакции
3 332
90bfUnH.gif


Захотелось сделать очень простое криптографическое приложение для текста, вдруг будет такая необходимость. Смысл в том что шифрование происходит случайными числами от заданных bit, второе значение randзадает количество ключей для каждого символа, чтобы он не повторялся и нельзя было найти закономерность текста. Сам ключ храниться в .json поэтому отправить, посмотреть, редактировать его просто.

Как это работает ?
  1. Создать ключ.
  2. Поделиться ключом.
  3. Написать текст в окно «Закодировать» нажать на кнопку.
  4. Отправить текст из окна «Декодировать».
Из за особенности tkinter он отвечает не list а обычным str и поэтому каждый отступ в окне «Декодировать» важен.

Создание ключа
Код:
bit = input()
rand = input()
l = {}
a = list('б','у','к','в','ы')

for x in a:
    l[x]=[]
    for y in range(rand):
        l[x].append(random.getrandbits(bit))
print(l)

Кодировать текст
Код:
slo = input()
red =dict(созданный словарь с ключом)
v = []
for x in slo:
    if x in red:
        v.append(random.choice(red[x]))
print(v)

Декодировать
Код:
list_code = input()
red = dict(созданный словарь с ключом)
v = {}

for x in red.items():
    for z in list_code:
        if z in x[1]:
            v[z]=x[0]

zx = []
for x in  list_code:
    if x in v:
        zx.append(v[x])

Github
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх