Как создать программу дешифратор

Здравствуйте, у меня такая идея, но я не могу воплотить ее. Что если сделать что то типа шифратора и дешифратора, допустим: Вы пишете «Привет» а программа заменяет каждый символ переменной на другой, например «П» на английскую «U», и так все русские буквы на определенные английские. Дешифратор работает также только наоборот. Вы отправляете другу зашифрованное письмо, он копирует строку в дешифратор и получает нормальный, русский текст.

Код к задаче: «Создание шифратора и дешифратора»

Листинг программы

Const y = ‘абвгдеёжзийклмнопрстуфхцчшщъыьэюя’; z = ‘щбгфпзсэйхкялширыцжчвнтомдъьеаюуё’; Function Code(s : String) : String; Var i : Byte; Begin For i:=1 to Length(s) do If Pos(s[i],y)>0 then s[i]:=z[Pos(s[i],y)]; Code:=s; end; Function DeCode(s : String) : String; Var i : Byte; Begin For i:=1 to Length(s) do If Pos(s[i],z)>0 then s[i]:=y[Pos(s[i],z)]; Decode:=s; end; Begin Writeln(Code(‘за окном шёл дождь и рота красноармейцев’)); Writeln(DeCode(Code(‘за окном шёл дождь и рота красноармейцев’))); end.

Источник: studassistent.ru

Шифраторы, дешифраторы. Назначение, принцип работы, типовые схемы.

3.1.3. Разработка схемы дешифратора и его работа

Двоичные дешифраторы относятся к преобразователям кода. На вход дешифратора поступают коды символов, которые преобразуются в значения символов (двоичной код преобразуется в код «один из N»). Дешифратор, имеющий N входов, не может иметь больше 2 N выходов. В зависимости от входного двоичного кода на выходе дешифратора возбуждается один и только один выход.

В качестве примера рассмотрим построение дешифратора двоичного кода (8421) цифр в десятичные цифры, каждая из которых имеет свой выход (задача, обратная рассмотренной при изучении шифратора).

Читайте также:
Графические программы это какие программы

У дешифратора на входы поступают коды символов, которые преобразуются (декодируются) в символы, вызывающие появление активного уровня сигнала только на одном выходе. Его работа описывается той же, что и работа шифратора, таблицей 3.1, в которой меняются местами входные и выходные переменные: входными переменными будут коды десятичных цифр — значения X1, X2, X4, X8, а выходными – выходы самих десятичных цифр Y0 – Y9.

Построение дешифратора также начинается с записи описывающих его работу логических выражений. Так как на каждом выходе активный уровень (единица по таблице 3.1) появляется только при строго определенной комбинации входных переменных, то следует взять конъюнкцию входных переменных, а те из переменных, которые в коде цифры принимают значение нуля, проинвертировать, чтобы конъюнкция оказалась равна единице:

Для построения схемы рассматриваемого дешифратора необходимо взять 10 элементов И на 4 входа каждый и соединить их в соответствии с выше приведенной системой уравнений (рис. 3.4).

Шифруем файлы с помощью Python

Рис 3.4. Схема дешифратора

Теперь, если подать на входы какой-либо код в соответствии с таблицей 3.1, получим уровень единицы только на одном выходе (код символа которого задан входными переменными), на остальных же выходах будут уровни логического нуля.

Построение схем шифратора и дешифратора состоит из одинаковых этапов (составление таблицы работы, которая у них совпадает, составление по таблице системы логических выражений, в которой входные переменные для шифратора являются выходными для дешифратора и наоборот, приведение системы логических выражений к требуемому базису и построение схемы в соответствии с полученной системой). Необходимо обратить внимание на то, что при описании работы шифратора используют логические суммы (дизъюнкции) входных переменных, тогда как у дешифратора – логические произведения (конъюнкции).

Читайте также:
Как в контакте посмотреть чужую переписку в контакте без программ

Промышленностью выпускаются микросхемы дешифраторов на ограниченное число входов и выходов (обычно на четыре входа). Обычно они имеют инвертированные выходы (формируют инверсию выходных сигналов) и один или несколько управляющих входов. При запрещении работы микросхемы на выходе обычно устанавливается высокий уровень. На рис.

3.5 в качестве примера приведена ИМС дешифратора К155ИД3, работа которого описывается таблицей 3.3. Входы для подачи кодов сигналов обозначены 1, 2, 4, 8, соответствующие кодам выходы обозначены числами 1-15. Входы Е1 и Е2 служат для разрешения работы дешифратора. Причем его работа разрешена только в том случае, когда на оба разрешающих входа поданы уровни логического нуля.

Работа дешифратора К155ИД3 Таблица 3.3

Источник: studfile.net

C# — шифрование и расшифровка данных с помощью алгоритма симметричного ключа-Риндаэля.

Алгоритмы с симметричным ключом — это алгоритмы для криптографии, которые используют одни и те же криптографические ключи как для шифрования открытого текста, так и для расшифровки зашифрованного текста. Ключи могут быть идентичны или может быть простое преобразование, чтобы перейти между этими двумя ключами.

Реализация C# для шифрования и дешифрования данных с помощью симметричного ключа :

В приведенной ниже реализации мы будем использовать алгоритм Rijndael для шифрования и расшифровки данных в C#. Ниже приведены несколько ключевых параметров, которые мы будем использовать в реализации C#.
— парольная фраза: парольная фраза, из которой будет выведен псевдослучайный пароль. Полученный пароль будет использоваться для создания ключа шифрования. Парольная фраза может быть любой строкой.
— saltValue: значение соли, используемое вместе с парольной фразой для создания пароля. Соль может быть любой строкой.
— hashAlgorithm: алгоритм хэширования, используемый для генерации пароля. Допустимые значения: «MD5″ и » SHA256”
passwordIterations: количество итераций, используемых для создания пароля. Одной или двух итераций должно быть достаточно.
— initVector: вектор инициализации (или IV). Это значение необходимо для шифрования первого блока текстовых данных. Для RijndaelManaged class IV должно быть ровно 16 символов ASCII длиной.
— keySize: размер ключа шифрования в битах. Допустимые значения: 128, 192 и 256.

Читайте также:
Программа чтобы научиться подтягиваться

Источник: www.nookery.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru