Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Шифрование методом Плейфейра

Читайте также:
  1. Анализ рисков проекта методом сценариев
  2. Бэкон выдвинул новаторскую идею, в соответствии с кото­рой главным методом познания должна стать индукция.
  3. ВИЗНАЧЕННЯ ЄМНОСТI КОНДЕНСАТОРIВ I ДIЕЛЕКТРИЧНОI ПРОНИКНОСТI ДIЕЛЕКТРИКIВ РЕЗОНАНСНИМ МЕТОДОМ
  4. Визначення кислотності круп потенціометричним методом.
  5. Визначення прискорення вільного падіння методом математичного маятника
  6. ВИМIРЮВАННЯ ЕЛЕКТРОРУШIЙНОI СИЛИ ХIМIЧНОГО ДЖЕРЕЛА ПОСТIЙНОГО ЕЛЕКТРИЧНОГО СТРУМУ МЕТОДОМ КОМПЕНСАЦII
  7. Експериментальна практична робота 6. Визначення рН води та модельних розчинів потенціометричним методом.

Ключевое слово: ЕЖИК.

Е Ж И К А Б В Г
Д З Й Л М Н О П
Р С Т У Ф Х Ц Ч
Ш Щ Ъ Ы Ь Э Ю Я

 

В 1987 году стандарт DES.

Стандарт DES предназначен для защиты от несанкционированного доступа важной, но несекретной информации.

Зашифрованные сообщения с помощью одного пакета программ можно расшифровать используя другой любой другой пакет программ соответствующий стандарту DES.

Относительная простота алгоритма обеспечивает высокую скорость обработки от 2 до 8 мегабайт/с.

Достаточная высокая стойкость алгоритма.

Алгоритм DES использует комбинацию подстановок и перестановок.

DES разбивается на блоки 64 биты, в котором значащими являются 56 битов, а остальные 8 бит предназначен контроля четности и других нужд.

Дешифрование является обратной шифрованию DES и выполняется путем повторения шифрования в обратном порядке.

Общая схема алгоритма шифрования DES следующая.

Где ИТ – исходный текст, НТ – начальная перестановка, Ш – шифрование, К – ключ, КП – конечная перестановка, ШТ – шифрованный текст.

Процесс шифрования заключается в начальной перестановке 64 битового блока, 16 циклов шифрования

Пусть из файла исходного текста считаны

               
               
               
               
               
               
               
               

 

ГОСТ 28147-89 от 1989 года

 

В Российской Федерации установлен единый стандарт криптографического преобразования текста для информационных систем. Он носит обязательный характер для государственных органов, организаций, предприятий, банковских и иных учреждений связаный с информационной безопасностью государства. Данный стандарт формировался с учетом мирового опыта и в частности были приняты во внимание недостатки и не реализованные возможности алгоритма DES, поэтому использования стандарта ГОСТ предпочтительнее.

Алгоритм шифрования построен с использованием сети Фейстела. В этом алгоритме будем использовать следующие операции сложения.

А + В - это побитовое сложение по модулю 2.

А [+] B – это побитовое сложение в 2 в степени 32.

А {+} B – это сложение 2 в степени 32 -1

Алгоритм криптографического преобразования предусматривает несколько режимов работы:

1. Режим простой замены

2. Режим гаммирования

3. Режим гаммирования с обратной связью

Во всех режимах используется ключ W длиной 256 бит, представляемый в виде 8 32-разрядных чисел.

W=x7x6x5x4x3x2x1x0

Для расшифрования используется тот же ключ но процесс расшифрования является инверсным по отношению к исходному.

Базовым режимом работы алгоритма является режим простой замены. Пусть открытые текст разбит на блоки по 64 бита в каждом, который обозначен как To. Затем блок То разбивается на 2 последовательности Вo и Ao по 32-бита. Далее выполняются итерационные процессы шифрования, которые можно описать следующими формулами.

1. От i=1..24

Ai=RK(Ai-1[+] X(i-1)(mod*8))+Bi-1

Bi=Ai-1

2. I=25..31

Ai=RK(Ai-1[+] X(32-i)+Bi-1

Bi=Ai-1

Здесь I обозначает номер итерации. Функция шифрования включает 2 операции над 32 разрядным аргументом KR. 1-ая операция является подстановкой. Блок подстановки K состоит из 8 узлов замены с памятью по 64 бита каждой.

Поступающий на 8 последовательно идущих 4 разрядных векторов, каждый из которых преобразуется в 4 разрядный вектор с соответствующим узлом замены, представляющим из себя таблицу из 16 чисел в диапазоне от 0 до 15.

Входной вектор определяет адрес строки в таблице, число из которой является выходным вектором. Затем полученные 4-ех разрядные векторы вновь последовательно объединяются в 32 разрядные выходной.

ГОСТ 28147-89 в явном виде не указывает таблицы подстановок.

2 операция - это циклический сдвиг 32 разрядного вектора в результате подстановки в K на 11 шагов влево.

64 разрядный блок зашифрованных данных, который обозначен Tш представляется в виде

Тш=А32*В32.

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

Общая схема режима простой замены:

Рис. В мобильнике

 

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

Рис 1.1

Где А - это отправитель,B – это получатель, M – исходное сообщение, c – зашифрованное сообщение, Eb – блок шифрования, Db – блок дешифрования, Ny – начальная установка, Gk – генератор установки, kb – секретный ключ, Kb – открытый ключ, Nk – незащищенный канал связи, П – противник.

Генератор ключей целесообразно располагать на стороне получателя, чтобы не передавать не секретный ключ по незащищенному каналу связи.

Характерные особенности ассиметричных криптосистем:

1)Открытый ключ K могут быть отправлены по незащищенному каналу связи n.е. будут известны противнику. Алгоритм шифрования и расшифрования является открытым таким образом защита информации в ассиметричной криптосистемы основана на секретности открытого ключа.

Диффи и Хеллман сформулировали требования выполнение которых обеспечивает безопасность ассиметричной криптосистемы:

1) Вычисление пары Kb и kb получателем B на основе начальных установок должно быть простым.

2) Отправитель A, зная открытый ключ и сообщение M может легко вычислить криптограмму.

3) Получатель B используя секретный ключ Kb и криптограмму C может легко восстановить исходное сообщение.

4) Противник зная открытый ключ Kb при попытки вычислить секретный ключ kb наталкивается на преодолимую вычислительную проблему.

5) Противник, зная открытый ключ Kb и криптограмму C при попытки вычислить исходное сообщение наталкиваемся на непреодолимую вычислительную проблему.

Криптосистема шифрования данных RSA.

Алгоритм RSA предложили в 1978 году 3 автора: Райвест, Шамир, Адлемен.

Алгоритм получил название по первым буквам фамилий его авторов.

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

В криптосистеме RSA открытый ключ Kb, kb, M, C принадлежат множеству целых чисел.

Zn={0,1,…,N-1}, где N – это модуль

N=P*Q, где P и Q – 2 простых больших случайных числа.

Для обеспечения максимальной безопасности выбирают P и Q равной длины и хранят в секрете.

Множество Zn с операциями сложения и умножения по модулю N образуют арфиметику по модулю N.

 

Отркрытый ключ Kb выбирают случайным образом так чтобы выполнялись следующие условия:

1<Kb<=¥(N).

НОД (Kb, ¥(N))=1

¥(N)=(P-1)(Q-1), где ¥(N) – это функция Эйлера

Функция Эйлера ¥(N) указывает количество положительных целых чисел от 1 до N, которые взаимнопростые с N.

Далее Используя расширенный алгоритм Эвклида вычисляем секретный ключ

kb*Kb=1(mod ¥(N))

Или kb=Kb(mod (P-1)(Q-1))

Замечание

Из вышенаписанного следует, что секретный ключ kb и N должны быть взаимнопростыми.

Шифрования сообщения можно описать следующих образом:

C=Ekb(M)=Eb(M)=

Обращение к функции Eb(M)= , т.е. получение N по известным значениям практически не осуществимо при N= .

Однако имея секретный ключ можно легко восстановить секретное сообщение.

M=

Процедура шифрования и расшифрования RSA.

Последовательность действий, которые должен выполнить получатель B:

1. Пользователь B выбирает 2 произвольно больших ключа P и Q.

2. Пользователь B вычисляет значение mod N=P*Q.

3. Пользователь B вычисляет функцию Эйлера и выбирает случайным образом открытый ключ Kb с учетом выполнения условий 1<Kb<=¥(N); НОД (Kb, ¥(N))=1

4. Получает открытый ключ по формуле Эвклида

5. Пользователь B пересылает пользователю A пару чисел, т.е. (N,Kb); Дальше происходят действия пользователя A

 

6. Пользователь A разбивает исходный открытый текст M на блоки, каждый из которых может быть представлен в виде чисел.

7. Пользователь A шифрует текст в виде последовательности чисел Ci= C1,C2,… - буквы

Пользователь B расшифровывает криптограмму по формуле: Mi=

 

Примечание:

Чтобы алгоритм RSA имел практическую ценность необходимо иметь возможность без существенных затрат генерировать большие простые числа, уметь оперативно вычислять значения открытого и секретного ключей.

Пример:

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

Шифруем: САВ.

1. P=3, Q=11

2. N=33

3. ¥(N)=(3-1)(11-1)=20

4. Kb=7

5. kb=3

6. Представим шифруемое сообщение как последовательность целых чисел в диапазоне от 0..32

А-1 М1=3

В-2 М2=1

С-3 М3=2

Ci=

C1=9

C2=1

C3=29

Шифр Эльгмеля

Простое число P и большое целое число G, при чем G<P.

Могут быть распространены среди группы пользователей. Затем выбираем случайное целое число X<P. Число X является секретным ключом и должно храниться в секрете.

Далее вычисляют Y=G(в степени x) mod P.

Y – открытый ключ.

Далее чтобы зашифровать сообщение M выбирают случайное число K такое что:

1<K<P-1.

НОД(K,P-1)=1

Затем вычисляют числа:

a=G(в степени K) mod P

b=Y(в степени K) M mod P

Пара чисел А и Б являются шифром текста.

Примечание:

Длина шифра текста в 2-ое больше длины исходного открытого текста M.

Для того чтобы расшифровать шифр текст А и Б.

M=b/a(в степени X) mod P.

Пример:

Сразу же нам нужно выбрать P=11.

G=2;

X=8;

Y=G(в степени X) mod P=256 mod 11=3;

А-5, Пусть M=5;

К=9;

Y=3;

a= G(в степени K) mod P=512 mod 11=6

b=Y(в степени K) M mod P= 19683*5 mod 11=9;

 

 

Система шифрования Полига-Хэлмена

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

Зашифровать данные можно по следующей формуле:

С= mod n

P= mod n

P – исходное сообщение

С- криптограмма

N – составное число

 

Идентификация и проверка подлинности

Для обеспечения идентификация и проверки подлинности необходимо:

1. Получатель должен быть уверен в подлинности источника данных.

2. Получатель должен быть уверен в подлинности передаваемых данных.

3. Отправитель должен быть уверен в доставке данных получателю

4. Отправитель должен быть уверен в подлинности доставленных данных

Для выполнения первых 2-ух требований средством защиты является цифровая подпись. Для выполнения 3 и 4 требования отправитель должен получить уведомление о вручении получателю сообщения.

Идентификация и аутентификация пользователя.

Идентификация – это когда пользователь сообщает системе по ее запросу свое имя или идентификатор

Аутентификация – это когда пользователь подтверждает свою идентификацию вводя в систему уникальную неизвестную другим пользователем информацию о себе, например: пароль.

Типовые схемы идентификации и аутентификации пользователей

1. Компьютерной системе выделяется объект эталон для идентификации и аутентификации пользователей.

Ei =F(IDi,Ki)

Где F – функция обладает свойством «невостановимости».

E- это информация

Невостановимость Ki оценивается некоторой пороговой трудоемкостью To.

На практике получается 10 в 20 степени или 30 в 20 степени.

Кроме того для пары Ki и Kj возможны совпадения соответствующих значению E.

В связи с этим вероятность ложно аутентификации пользователя не должна быть больше некоторого пограничного значения Po. Н а практике Po равно от 10 в -7 степени до 10 в -9 степени.

Протокол идентификации и аутентификации:

1. Пользователь предъявляет свой идентификатор ID

2. Если ID не совпадает ни с одним Idi зарегистрированным Idi в компьютерной систем, то идентификатор не принимается и пользователь не допускается к работе. В противном случае пользователь проходит идентификацию.

3. Субъект аутентификации запрашивает у пользователя его пароль или ключ.

4. Субъект аутентификации вычисляет значение Y=F(Idi, Ki)

5. Объект аутентификации производит сравнение значений Y и Ei. Если они совпали, то пользователь прошел аутентификацию, в противном случае ему отказано в доступе.

 

Схема 2

В компьютерной системе выделяется модифицированный объект эталон. В этой схеме информация для аутентификации вычисляется по следующей формуле:

Ei=F(Si,Ki), где Si – это случайный вектор задаваемый при идентификации пользователя.

Особенности применения пароля для аутентификации пользователя.

Простейший метод подтверждения подлинности при помощи пароля основан на сравнении представляемого пользователем пароля Pa с исходным значением Pa’.

Эту проверку можно проверить следующим способом (фото).

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

Эту проверку можно описать следующей схемой

Биометрическая и аутентификация пользователей

Основные достоинства биометрических методов идентификации по сравнению с исходными:

1. Высокая степень достоверности идентификации по биометрическим признакам из-за из уникальности.

2. Неотделимость биометрических признаков от дееспособной личности.

3. Трудность фальсификации биометрических признаков.

В качестве биометрических признаков можно выделить следующее:

1. Узор радужной оболочки и сетчатки глаз

2. Отпечатки пальцев

3. Геометрическая форма руки

4. Формы и размеры лица

5. Особенности голоса

6. Биомеханические характеристики ручной подписи

7. Биомеханические характеристики клавиатурного подчерка

 

Системы идентификации по Узор радужной оболочки и сетчатки глаз

1. Использующий рисунок радужной оболочки глаза и кровеносных сосудов на сетчатке. Эти системы являются наиболее надежными поскольку вероятность повторения данных параметров равна 10 в -78 степени. Такие средства идентификации применяются там где требуется высокий уровень безопасности. Например в США в зонах военных и обороных объектов.

2. Система идентификации по отпечаткам пальцев является самой распространённой. Это связанно с тем, что существует наличие большого банка данных с отпечатками пальцев. Основными пользователями этой системы является полиция, милиция, различные государственные банки.

3. Системы идентификации по геометрической форме руки использует сканеры формы руки обычно устанавливаемые на стенах.

4. Системы идентификации по лицу и голосу являются наиболее доступными из-за их дешевизны поскольку большинство современных компьютеров имеются аудио и видео модули. Используются при удаленной идентификации субъекта доступа в телекоммуникационных сетях.

5. Системы идентификации личности по динамике рукописной подписи учитывает интенсивность каждого усилия подписывающего, частотные характеристики каждого элемента подписи и начертания подписи в целом.

6. Системы идентификации по биомеханическим характеристикам клавиатурного подчерка пользователя основывается на том, что моменты нажатия и отпускания клавиш при наборе текста на клавиатуре существенно различаются у каждого пользователя. Этот динамический ритм набора позволяет построить достаточно надежную средство идентификации.

 

Взаимная проверка подлинности пользователей!

Обычно стороны вступающие в информационный обмен обычно нуждаются во взаимной проверки подлинности друг друга. Этот процесс взаимной аутентификации происходит в начале сеанса. Для проверки подлинности применяются следующие способы:

1. Механизм запрос – ответ

2. Механизм отметки времени («временной штемпель»)

Механизм запроса ответа состоит в следующем:

Если пользователь A хочет быть уверен, что сообщение получаемое им от пользователя B не являются ложными, он включает в посылаемые для B сообщении не предсказуемый элемент – запрос X, например некоторое случайное число. При ответе пользователь B должен выполнить над этим элементом некоторую операцию, например вычислить функцию F(x). Получив ответ с результатом действия B пользователь A может судить о подлинности сообщений.

Механизм отметки времени подразумевает регистрацию времени для каждого сообщения в этом случае каждый пользователь сети может определить на сколько подлинно сообщение и принять решение о его прочтении.

Для взаимной проверки подлинности обычно используют процедуру «рукопожатия».

Эта процедура базируется на вышеописанном механизме и заключается во взаимной проверке ключей.

Эту проверку можно описать следующей схемой (фотка).

1. Пусть пользователь A инициализирует проверку «рукопожатия» отправляя пользователю B свой идентификатор в открытой форме.

2. Пользователь B получает идентификатор пользователя A находит в БД секретный ключ пользователя A и вводит его в свою криптосистему

3. В это время пользователь А генерирует случайную последовательность S с помощью псевдослучайного генератора и отправляет ее пользователю B в виде криптограммы.

4. Пользователь B расшифрует эту криптограмму и раскрывает исходный вид последовательности S.

5. Затем оба пользователя A и B преобразует последовательность S используя открытую одностороннюю функцию α.

6. Пользователь B шифрует сообщение α(S) и отправляет эту криптограмму пользователю A.

7. Пользователь A расшифровывает эту криптограмму и сравнивает полученное сообщение α’(S) c исходным α(S) и если эти сообщения равны, то пользователь A признает подлинность пользователя B. Затем B проводит тоже самое с пользователем A.

 

 

Достоинством модели рукопожатия является то, что ни один из участников сеанса связи не получает никакой секретной информации во время процедуры подтверждения подлинности.

Иногда пользователя хотят иметь непрерывную проверку подлинности отправителей в течении всего сеанса.

Эту ситуацию можно представить в виде следующей схемы (схема).

При передаче очередного сообщения пользователь A шифрует свой идентификатор и свое сообщение и отправляет пользователю B.

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


Дата добавления: 2015-11-14; просмотров: 65 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Традиционные симметричные криптосистемы| Протоколы идентификации с нулевой передачей знаний

mybiblioteka.su - 2015-2024 год. (0.03 сек.)