Мегаобучалка Главная | О нас | Обратная связь


СОЗДАНИЕ И ПРОВЕРКА КРИПТОГРАФИЧЕСКОЙ ЗАЩИТЫ ТЕКСТОВОЙ ИНФОРМАЦИИ МАКРОСАМИ ЯЗЫКА VBA.



2019-11-13 326 Обсуждений (0)
СОЗДАНИЕ И ПРОВЕРКА КРИПТОГРАФИЧЕСКОЙ ЗАЩИТЫ ТЕКСТОВОЙ ИНФОРМАЦИИ МАКРОСАМИ ЯЗЫКА VBA. 0.00 из 5.00 0 оценок




 

Методическое руководство к лабораторной работе № 4 по курсу «Информатика»

для направления 11.03.03 «Конструирование и технология электронных средств» по профилю «Проектирование и технология радиоэлектронных средств»

 

                   Составитель: О. Я. Шамсиахметов

 

Издательство ИжГТУ

имени М. Т. Калашникова Ижевск 2019


УДК 004.49

 

             Рецензент

С.В.Клишин, канд. физ.-мат. наук, доцент

П.А.Ушаков, доктор техн. наук, профессор

 

 

      Составители

О.Я.Шамсиахметов, старший преподаватель

 

 

Рекомендовано к изданию на заседании кафедры «Конструирование радиоэлектронной аппаратуры» ИжГТУ имени М. Т. Калашникова (протокол № 60 от 16.01.2019 г.).

 

 

Создание и проверка криптографической защиты текстовой информации макросами языка VBA:методическое руководство к. лаб. раб. № 4 / сост.: О.Я.Шамсиахметов. − Ижевск : Изд-во ИжГТУ имени М. Т. Калашникова, 2019. − 76 с.

 

Настоящие методические указания определяют последователь­ность выполнения лабораторной работы по дисциплине «Информатика» и включают в себя рекомендации по созданию прикладных программ криптозащиты, анализ стойкости криптографических ключей и методы предотвращения несанкционнированного доступа к ценной информации.

 

 

УДК 004.49

 

© ИжГТУ имени М. Т. Калашникова, 2019

 

© Шамсиахметов О.Я., составление, 2019


      

                                          Краткая теория.

                              Защита информации паролями.

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

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

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

Самый простой способ заключается в том, чтобы сохранить установленный пользователем пароль в файле документа. В этом случае доступ к документу (или к его редактированию) пользователь получит только при совпадении вводимого пароля с установленным. Однако данный способ парольной защиты легко преодолеть, так как пароль в открытом виде сохраняется в самом документе. Такой пароль можно подсмотреть с помощью любого HEX-редактора. Данный способ парольной защиты  применяется, в частности в документах MS Office (Word, Excel).Программно предусмотрено использование пароля защиты документа от записи, который сохраняется в самом документе в чистом виде.

Чтобы исключить возможность несанкционированного просмотра пароля,   сохраняемого в самом документе или в файле, чаще применяется з ащит а с помощью хэш­функций (hash) паролей. Хэш­функция получается в результате одностороннего преобразования пароля по специальному алгоритму, при помощи которого для исходного блока данных произвольной длины вычисляется уникальный идентификатор фиксированной длины. Особенность алгоритма хэширования паролей заключается в том, что, зная хэш пароля (результат преобразования), в принципе нельзя вычислить исходный блок данных, то есть сам пароль.   Невозможность расшифровки пароля по его хэш­функции (реализации обратного преобразования) и заложена в понятие одностороннего (то есть только в одну сторону) преобразования.

Независимо от длины пароля его хэш­функция имеет фиксированную длину. Алгоритмов одностороннего преобразования (хэширования) пароля существует огромное множество. Возможна самостоятельная разработка такого алгоритма.

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

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

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

В-третьих, можно попытаться подобрать пароль. При этом стойкость защиты зависит от длины хэш­функции. К примеру, если длина хэш­функции составляет 32 бита, то количество возможных хэш­функций равно 232 = 4 294 967 296, что не так уж много. Естественно, что одной и той же хэш­функции может соответствовать несколько паролей, поэтому при такой длине хэша подобрать подходящий пароль несложно, причем совсем необязательно, что найденный пароль будет таким же, какой изначально установлен пользователем.

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

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

Первая — это произвольная случайная последовательность,

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

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

Алгоритм парольной защиты с шифрованием является достаточно стойким.

В документах MS Word и Excel применяется несколько типов защиты. Так, можно установить пароль на редактирование документов, то есть пользователь сможет открыть документ для чтения, а для внесения в него изменений потребуется ввести пароль. Кроме того, можно реализовать защиту на доступ к документу, когда пароль вводится при его открытии.

В случае защиты документов Word от редактирования применяется сохранение хэш­функций пароля в заголовке самого документа. Длина хэша в этом случае составляет 32 бита (4 байта).

Абсолютно такой же способ парольной защиты с помощью хэш­функций используется при защите документов Excel, когда посредством пароля документ защищается от изменения. Правда, в документах Excel существуют и другие специфические пароли, которые устанавливаются на книгу или на отдельный лист (пароль защиты от видоизменения структуры книги, пароль защиты на редактирование листа). Принцип парольной защиты от редактирования листа примерно такой же, как и от изменений в документе. Отличие лишь в том, что в данном случае длина хэша еще меньше — всего 16 бит (2 байта) — и существует всего 216 = 65 536 различных вариантов хэшей, поэтому подобрать такой пароль не составит особого труда.

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

Длина пароля на открытие документов MS Office Word 2003 и Excel  2003 ограничивается 15 символами (для документов MS Office 2003 длину пароля можно сделать неограниченной, но для этого нужно выбрать шифрование с 128-битным ключом).

Рассчитаем, сколько возможных паролей при этом может существовать, учитывая, что в качестве символа можно использовать спецсимволы (30 символов), цифры (10 символов), а также заглавные и строчные буквы как английского (52 символа), так и локализованного алфавита (66 символов). Итого, количество возможных символов — 30 + 10 + 52 + 66 = 158. При максимальной длине пароля в 15 символов получим возможных комбинаций 15815. Число это просто огромно, и с задачей перебора всех возможных паролей за приемлемое время не справится ни один суперкомпьютер.

В документах MS Word 2007/2013 и Excel 2007/2013 длина пароля на открытие документов вообще ничем не ограничивается, то есть пароль может быть любым, а количество возможных паролей бесконечно велико.

Однако в ранних версиях MS Office 2003 и Excel 2003 для шифрования документов использовался алгоритм симметричного шифрования RC4. В данном алгоритме ключ шифрования мог иметь длину до 128 бит, однако экспортные ограничения на криптоалгоритмы не допускали применения секретного ключа такой длины. Поэтому ключ, применяемый при шифровании RC4 в документах MS Office, имел длину только 40 бит, что существенно снижало стойкость этого алгоритма. Реализовать перебор всех возможных секретных ключей можно на обычном ПК за приемлемое время. Действительно, при длине секретного ключа 40 бит количество возможных секретных ключей составляет 240 = 1 099 511 627 776. Перебор всех этих комбинаций на современном ПК займет менее одного месяца.

Впоследствии в пакете MS Office 2003 стали использовать ключ шифрования длиной 128 бит. Соответственно количество возможных секретных ключей составило 2128. С перебором такого количества ключей за приемлемое время (хотя бы за несколько лет) уже не справится ни один, даже самый мощный компьютер. Отметим, что по умолчанию в документах MS Office 2003 применяется 40-битный ключ шифрования и для использования 128-битного ключа необходимо выбрать соответствующий алгоритм шифрования.

В приложениях MS Office 2007/2013 для шифрования применяется алгоритм AES, а не RC4, и алгоритм хэширования SHA-1. В сравнении с предыдущими версиями пакета MS Office в пакетах MS Office 2007/2010 изменился и алгоритм преобразования пароля в ключ шифрования. Если ранее пароль просто хэшировался вместе со случайным набором байтов, уникальных для каждого документа (SHA-1 преобразование), то в пакетах MS Office 2007/2013 для преобразования пароля в ключ нужно выполнить последовательно 50 тысяч SHA-1-преобразований. При открытии документа это незаметно — операция выполняется за доли секунды. Однако когда мы начинаем последовательно перебирать пароли, то скорость перебора катастрофически падает. Поэтому если использовать вычислительную мощность только одного компьютера, то реально можно найти пароль длиной лишь до 4-5 символов, не более.

В MS Office 2007/2013 существенно изменился и алгоритм проверки паролей Read only (открытие в режиме чтения), защиты документа, а также книг и листов Excel. Раньше в документе хранился хэш пароля, состоящий из 2 байт. Соответственно было возможно его реверсирование в первый подходящий пароль. В MS Office 2007/2013 в алгоритме хэширования используются 50 тыс. итераций хэша SHA-1, а следовательно, этот пароль мгновенно найти уже не представляется возможным.

Нужно отметить, что пакет MS Office 2007/2013 позволяет сохранять документы в режиме совместимости с предыдущими версиями пакета. В этом случае для обеспечения совместимости применяются режимы защиты, которые характерны для предыдущих версий пакета.

Сегодня можно найти достаточно много как платных, так и бесплатных программ для подбора паролей к офисным документам. Более того, некоторые компании предлагают даже онлайн-сервис по подбору пароля к документу.

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

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

Традиционно выделяют три типа атак на пароли:

атака по словарю;

атака методом последовательного перебора;

атака по маске.

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

Для увеличения эффективности атаки по словарю в некоторых утилитах предусмотрена возможность производить дополнительные настройки такой атаки. В частности, к словарю можно добавлять сочетания соседних клавиш (типа последовательностей qwert и др.), проверять дважды записанное слово (например, useruser), обратный порядок символов в словах (например, resu), конкатенацию с обратным порядком символов (в частности, userresu), усеченные слова, слова без гласных, транслитерацию букв (типа parol). Кроме того, можно проверять замену локализованной раскладки латинской (слово «пароль» в латинской раскладке будет выглядеть как «gfhjkm») и замену латинской раскладки локализованной (слово «password» в русской раскладке — «зфыыцщкв»). Помимо этого при атаке по словарю возможно подключение нескольких словарей.

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

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

Методом последовательного перебора подобрать пароль можно всегда — это лишь вопрос времени, которое может исчисляться годами, столетиями или даже тысячелетиями. Поэтому эффективность такого метода весьма низкая. Естественно, если заранее известен набор символов, используемый для пароля (например, только английские буквы и цифры, или только русские буквы, или только цифры), а также приблизительная длина пароля, то это существенно упрощает задачу его подбора и делает ее вполне решаемой. Если же заранее о пароле ничего не известно, то подобрать его методом последовательного перебора практически невозможно.

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

Утилиты подбора паролей можно условно разбить на два класса: многоцелевые программные пакеты, позволяющие подбирать пароли к различному типу файлов, и специализированные утилиты, которые ориентированы на подбор паролей к файлам, созданным каким-­либо одним приложением. Фактически многоцелевые программные пакеты представляют собой сборник отдельных утилит (иногда такие пакеты предусматривают использование единой программной оболочки для доступа к отдельным утилитам).

Среди многоцелевых программных пакетов можно выделить:

Accent Office Password Recovery от компании AccentSoft (www.passwordrecoverytools.com);

Passware Kit  от компании Passware (www.lostpassword.com);

Advanced Office Password Recovery от компании ElcomSoft (www.elcomsoft.com, www.passwords.ru);

Они обеспечивают примерно одинаковую производительность при переборе паролей и могут загружать все ядра процессоров, а также задействовать графические процессоры. Данные программы поддерживают одни и те же типы атак и различаются лишь возможностями по их тонкой настройке. Кроме того, эти программы теоретически способны подбирать пароли к документам MS Office всех версий.

Подбирать пароли имеет смысл только в том случае, если документы созданы в MS Office 2003 или более ранних версиях. Подбор паролей для документов MS Office 2007/2013 фактически невозможен, несмотря на возросшие скорости перебора. Действительно, даже на самых производительных рабочих станциях с многоядерными процессорами и несколькими графическими картами скорость перебора составляет всего лишь десятки тысяч паролей в секунду. Даже если известно, что максимальная длина пароля не более семи символов и в нем используются только латинские буквы (большие и маленькие) и не применяются ни цифры, ни специальные символы, то количество возможных комбинаций составит 1 048 229 971 204 штук — на перебор всех этих комбинаций при скорости в 10 000 паролей в секунду потребуется почти три года! Если же о пароле неизвестно ничего, то задачу по его подбору можно смело отнести к разряду нерешаемых.

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

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

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

 

 

           Защита информации криптологическими методами.

 

Проблемой защиты информации путем ее преобразования занимается криптология (kryptos - тайный, logos - наука). Криптология разделяется на два направления - криптографию и криптоанализ. Цели этих направлений прямо противоположны.

Криптография занимается поиском и исследованием математических методов преобразования информации. Сфера интересов криптоанализа - исследование возможности расшифровывания информации без знания ключей. Криптография дает возможность преобразовать информацию так, что ее прочтение (восстановление) возможно только при знании ключа.

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

В качестве примеров алфавитов можно привести следующие:

 алфавит Z33 - 33 буквы русского алфавита;

 алфавит Z32 - 32 буквы русского алфавита (исключается одна из трех букв - ё, й или ь);

 алфавит Z30 - 30 буквы русского алфавита (исключаются все три буквы - ё, й или ь).

Шифрование - преобразование исходного текста (открытый) в шифрованный текст. Дешифрование - процесс обратный шифрованию при котором на основе ключа шифротекст преобразуется в исходный.

Ключ - информация, необходимая для беспрепятственного шифрования и дешифрования текстов. Криптографическая система представляет собой семейство T преобразований открытого текста. Члены этого семейства индексируются, или обозначаются символом k; параметр k является ключом. Пространство ключей K - это набор возможных значений ключа. Обычно ключ представляет собой последовательный ряд букв алфавита.

Криптосистемы делятся на симметричные и с открытым ключом.

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

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

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

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

 количество всех возможных ключей;

 среднее время, необходимое для криптоанализа.

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

 

 

       Классификация методов шифрования информации .

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

В симметричных криптосистемах зашифрование и расшифрование производятся с помощью одного и того же ключа. И соответственно этот ключ необходимо хранить в секрете (отсюда другое название симметричных криптосистем - криптосистемы с секретным ключом ).

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

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

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

По типу шифрующего преобразования криптосистемы делятся:

на шифры перестановок;

на шифры замены;

на шифры гаммирования;

на шифры, основанные на аналитических преобразованиях шифруемых данных;

на композиционные шифры.

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

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

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

Идея, лежащая в основе составных, или композиционных шифров, состоит в построении криптостойкой системы путем многократного применения относительно простых криптографических преобразований, в качестве которых К. Шеннон предложил использовать преобразования подстановки (substitution) и транспозиции (permutation). Многократное использование этих преобразований позволяет обеспечить два свойства, которые должны быть присущи стойким шифрам: рассеивание(diffusion) и перемешивание (confusion)

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

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

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

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

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

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

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

Для получения шифрованного текста можно воспользоваться 2 способами.

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

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

Рассмотрим пример использования шифра Полибия и зашифруем слово УСИЛИТЕЛЬ выше рассмотренными способами (таблицы 1 и 2).

 

Способ

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

34 32 21 24 21 33 16 24 45

Таблица 1. Кодирование слова УСИЛИТЕЛЬ шифром Полибия 1-м способом

 

 

Способ

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

 Ы Щ Р У Р Ъ Н Д

Таблица 2. Кодирование слова УСИЛИТЕЛЬ шифром Полибия 2-м способом

 

 

Шифр Цезаря является частным случаем шифра простой замены (одноалфавитной подстановки). Свое название этот шифр получил по имени римского императора Гая Юлия Цезаря, который использовал этот шифр при переписке с Цицероном (около 50 г. до н.э.).

В шифре Цезаря каждая буква исходного сообщения сдвигается в алфавите на фиксированное число позиций (К) вперед, при необходимости переходя циклически на начало алфавита. Цезарь использовал шифр замены при К = 3.

Достоинством системы шифрования Цезаря является простота шифрования и расшифрования. К недостаткам системы Цезаря следует отнести следующие:

подстановки, выполняемые в соответствии с системой Цезаря, не маскируют частот появления различных букв исходного текста;

сохраняется алфавитный порядок в последовательности заменяющих букв; при изменении значения К изменяются только начальные позиции такой последовательности;

число возможных ключей К мало;

шифр Цезаря легко вскрывается на основе анализа частот появления букв в шифртексте.

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

В 1508 г. аббат из Германии Иоганн Трисемус написал печатную работу по криптологии под названием "Полиграфия". В этой книге он впервые систематически описал применение шифрующих таблиц, заполненных алфавитом в случайном порядке.

Для получения такого шифра замены обычно использовались таблица для записи букв алфавита и ключевое слово (или фраза). В таблицу сначала вписывалось по строкам ключевое слово, причем повторяющиеся буквы отбрасывались. Затем эта таблица дополнялась не вошедшими в нее буквами алфавита по порядку.

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

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

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

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

Алгоритм шифрования включает следующие шаги:

 1. Составить алфавитную таблицу.

 2. Разбить открытый текст исходного сообщения на пары букв (биграммы).

 3. Мысленно построить прямоугольник таким образом, чтобы 2 буквы лежали в противоположных углах, тогда две другие буквы прямоугольника дадут две буквы шифротекста.

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

Зашифруем текст на примере использование шифра Плейфера :

ВСЕ ТАЙНОЕ СТАНЕТ ЯВНЫМ.

 

Алгоритм шифрования:

 разбить текст на биграммы: ВС ЕТ АЙ НО ЕС ТА НЕ ТЯ ВН ЫМ

составить шифровальную таблицу (таблица 3):

 

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

                      Таблица 3.  Шифр Плейфера.

 

 

найти в таблице две буквы открытого текста;

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

Полученное шифрованное сообщение имеет вид:

ГП ДУ ОВ ДЛ НУ ПД ДР ЦЫ ГА ЧТ

При расшифровывании применяется обратный порядок действий.

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

Шифр перестановки "скитала"-известно, что в V веке до нашей эры правители Спарты, наиболее воинственного из греческих государств, имели хорошо отработанную систему секретной военной связи и шифровали свои послания с помощью скитала, первого простейшего криптографического устройства, реализующего метод простой перестановки.

Шифрование выполнялось следующим образом. На стержень цилиндрической формы, который назывался скитала, наматывали спиралью (виток к витку) полоску пергамента и писали на ней вдоль стержня несколько строк текста сообщения (рис.1.). Затем снимали со стержня полоску пергамента с написанным текстом. Буквы на этой полоске оказывались расположенными хаотично. Такой же результат можно получить, если буквы сообщения писать по кольцу не подряд, а через определенное число позиций до тех пор, пока не будет исчерпан весь текст.

Рис.1.Шифр "скитала"

Сообщение “НАСТУПАЙТЕ” при размещении его по окружности стержня по три буквы дает шифртекст

НУТАПЕСАТЙ

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

Шифрующие таблицы:

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

В качестве ключа в шифрующих таблицах используются:

• размер таблицы;

• слово или фраза, задающие перестановку;

• особенности структуры таблицы.

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

ТЕРМИНАТОР ПРИБЫВАЕТ СЕДЬМОГО В ПОЛНОЧЬ

записывается в таблицу поочередно по столбцам. Результат заполнения таблицы из 5 строк и 7 столбцов показан на рис. 2.

После заполнения таблицы текстом сообщения по столбцам для формирования шифртекста считывают содержимое

2019-11-13 326 Обсуждений (0)
СОЗДАНИЕ И ПРОВЕРКА КРИПТОГРАФИЧЕСКОЙ ЗАЩИТЫ ТЕКСТОВОЙ ИНФОРМАЦИИ МАКРОСАМИ ЯЗЫКА VBA. 0.00 из 5.00 0 оценок









Обсуждение в статье: СОЗДАНИЕ И ПРОВЕРКА КРИПТОГРАФИЧЕСКОЙ ЗАЩИТЫ ТЕКСТОВОЙ ИНФОРМАЦИИ МАКРОСАМИ ЯЗЫКА VBA.

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...
Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (326)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.019 сек.)