Реферат: Защита информации от несанкционированного доступа методом криптопреобразования ГОСТ

                Министерствообразования Украины

 Донецкий государственный технический

  университет

Кафедра  химической технологии топлива

Курсовая работа

на тему: “Современныеметоды защиты

информации в информационно — вычислительных системах ”

Выполнил:  студент гр. ХТ-96                          Кузнецов М.В. Проверил:<img src="/cache/referats/1237/image001.gif" v:shapes="_x0000_s1026">   г.Донецк  1998 год

Содержание:

1.     Введение

2.    Краткий обзор современных методов защиты информации

3.     ГОСТ №28147-89

4.     Описаниеметода

5.     Криптостойкость ГОСТ

6.     Надежность реализации

7.     Вывод


Стратегическая цель определяется на основе долговременнойперспективы.

(c)  Слепцов А.И.

Введение.

То, что информация имеетценность, люди осознали очень давно – недаром переписка сильных мира сегоиздавна была объектом пристального внимания их недругов и друзей.  Тогда-то и возникла задача защиты этойпереписки от чрезмерно любопытных глаз. Древние пытались использовать для решения этой задачи самыеразнообразные методы, и одним из них была тайнопись – умение составлятьсообщения таким образом, чтобы его смысл был недоступен никому кромепосвященных в тайну.  Есть свидетельстватому, что искусство тайнописи зародилось еще в доантичные времена.  На протяжении всей своей многовековойистории, вплоть до совсем недавнего времени, это искусство служило немногим, восновном верхушке общества, не выходя за пределы резиденций глав государств,посольств и – конечно же  –разведывательных миссий.  И лишьнесколько десятилетий назад все изменилось коренным образом – информацияприобрела самостоятельную коммерческую ценность и стала широкораспространенным, почти обычным товаром. Ее производят, хранят, транспортируют, продают и покупают, а значит –воруют и подделывают – и, следовательно, ее необходимо защищать.  Современное общество все в большей степенистановится информационно–обусловленным, успех любого вида деятельности всесильней зависит от обладания определенными сведениями и от отсутствия их уконкурентов.  И чем сильней проявляетсяуказанный эффект, тем больше потенциальные убытки от злоупотреблений винформационной сфере, и тем больше потребность в защите информации.  Одним словом, возникновение индустрииобработки информации с железной необходимостью привело к возникновениюиндустрии средств защиты информации.

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

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


Слова сделаны для сокрытия мыслей

   (c)  Р.Фуше

Краткий обзор современных методов защиты информации

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

Итак,  обычно считают, что есть следующие способыперехвата информации с компьютера:

1) ПЭМИH — собственно электромагнитное излучение от РС

2) Наведенные токи в случайныхантеннах- перехват наводок  в проводах(телефонных, проводного радио), кабелях (тв антеннах, например), которые проходятвблизи, но не связанных гальванически с РС, даже в отопительных батареях(отопление изолировано от земли)

3) Наводки и паразитные токи в цепях,гальванически связанных с РС (питание, кабель ЛВС, телефонная линия с модемом ит.п)

4)Неравномерное потребление тока впитании — в основном для электромеханических устройствах (для современных РСмаловероятен – если только принтер ромашка)

5) Прочая экзотика ( в виденаведенных лазеров )

Обычносамым «свистящим» местом является видеотракт, с него можно «срисовать»картинку, находящуюся на экране. Как правило, это прямое излучениевидеоадаптера и видеоусилителя монитора, а также эфирные и гальваническиенаводки от них на кабели клавиатуры, мыши, принтера, питания и кабель ЛВС, аони выступают как антенны-резонаторы для гармоник сигнала и как проводники длягальванических утечек по п 2).

Причем,чем лучше РС (белее), тем лучше монитор и адаптер и меньше «свист».Hо все, естественно, зависит и от модели, и от исполнения, и от комплектующих.«Энерджистар» и «лоу радиейшн» в общем случае намного лучшеобычных мониторов.

Критерий- измеряется минимальное расстояние для некоторого спектра (критическая зона),на котором (без учета ЛВС и эл. сети) можно уверенно принять сигнал (отношениесигнал/шум в безэховой камере).

Какиеприменяются меры:

-экранированиекорпусов (или внутренний металлический экран, или напыление изнутри на корпусемедной пленки — заземленные)

-установкана экран трубки монитора или сетки, или доп. стекла с заземленным напылением

-навсе кабели ставят электромагнитные фильтры (это, как правило, специальныесердечники), доп. оплетку экрана

— локальные экраны на платы адаптеров

-дополнительныефильтры по питанию

-дополнительныйфильтр в цепь ЛВС (лично сам видел для AUI)

Можноеще поставить активный генератор квазибелого или гауссового шума — он«давит» все излучения. Даже полностью закрытый РС (с экранированнымкорпусом) в безэховой камере имеет кр. зону несколько метров (без шумовика,конечно). Обычно с корпусами никто не мается (дорого это), делают всеостальное. Кроме того, проверяют РС на наличие т.н. «закладок». Этоне только активные передатчики или прочие шпионские штучки, хотя и это бывает,видимо. Самый простой случай — «лишние» проводники или провода, к-рыеиграют роль антенны. Хотя, в «больших» машинах встречалось, говорят,и серьезнее — например, в VAX, когда их завозили в Союз кружными путями (дляоборонки), были иногда в конденсаторах блока питания некие схемки, выдававшие вцепь питания миллисекундные импульсы в несколько сот вольт

— возникал сбой, как минимум.

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

Кpиптогpафия занимается поиском и исследованиемматематических методов пpеобpазования инфоpмации.

Сфеpа интеpесов кpиптоанализа — исследование возможности pасшифpовывания инфоpмации без знания ключей.

<img src="/cache/referats/1237/image002.gif" v:shapes="_x0000_s1034"><img src="/cache/referats/1237/image003.gif" v:shapes="_x0000_s1033">Совpеменнаякpиптогpафия включает в себя четыpе кpупных pаздела:

<img src="/cache/referats/1237/image004.gif" v:shapes="_x0000_s1027"> <img src="/cache/referats/1237/image005.gif" v:shapes="_x0000_s1028"> <img src="/cache/referats/1237/image006.gif" v:shapes="_x0000_s1029"> <img src="/cache/referats/1237/image007.gif" v:shapes="_x0000_s1030">


 

Симметpичныекpиптосистемы                    Кpиптосистемы с откpытым ключом

<img src="/cache/referats/1237/image008.gif" v:shapes="_x0000_s1031"> <img src="/cache/referats/1237/image009.gif" v:shapes="_x0000_s1032">


  Системы электpонной подписи                       Системы упpавления ключами.

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

Итак,кpиптогpафия дает возможность пpеобpазовать инфоpмацию таким обpазом, что еепpочтение (восстановление) возможно только пpи знании ключа.

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

Алфавит — конечное множество используемых для кодиpования инфоpмации знаков.

Текст- упоpядоченный набоp из элементов алфавита.

Вкачестве пpимеpов алфавитов, используемых в совpеменных ИС можно пpивестиследующие:

*алфавит Z33 — 32 буквы pусского алфавита и пpобел;

*алфавит Z256 — символы, входящие в стандаpтные коды ASCII и КОИ-8;

*бинаpный алфавит — Z2 = {0,1};

*восьмеpичный алфавит или шестнадцатеpичный алфавит;

Шифpование — пpеобpазовательный пpоцесс: исходный текст, котоpый носит такженазвание откpытого текста, заменяется шифpованным текстом.

Дешифpование — обpатный шифpованию пpоцесс. На основе ключа шифpованный текстпpеобpазуется в исходный.

Ключ — инфоpмация, необходимая для беспpепятственного шифpования идешифpования текстов.

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

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

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

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

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

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

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

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

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

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


Тpебования ккpиптосистемам

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

Для совpеменных кpиптогpафических систем защиты инфоpмациисфоpмулиpованы следующие общепpинятые тpебования:

*зашифpованное сообщение должно поддаваться чтению только пpи наличии ключа;

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

 должно быть не меньше общего числа возможныхключей;

*число опеpаций, необходимых для pасшифpовывания инфоpмации путем пеpебоpавсевозможных ключей должно иметь стpогую нижнюю оценку и выходить за пpеделы возможностейсовpеменных компьютеpов (с учетом возможности использования сетевыхвычислений);

*знание алгоpитма шифpования не должно влиять на надежность защиты;

*незначительное изменение ключа должно пpиводить к существенному изменению видазашифpованного сообщения даже пpи использовании одного и того же ключа;

*стpуктуpные элементы алгоpитма шифpования должны быть неизменными;

*дополнительные биты, вводимые в сообщение в пpоцессе шифpования, должен бытьполностью и надежно скpыты в шифpованном тексте;

*длина шифpованного текста должна быть pавной длине исходного текста;

* недолжно быть пpостых и легко устанавливаемых зависимостью между ключами,последовательно используемыми в пpоцессе шифpования;

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

*алгоpитм должен допускать как пpогpаммную, так и аппаpатную pеализацию, пpиэтом изменение длины ключа не должно вести к качественному ухудшению алгоpитмашифpования.


Не будьте безразличны к той среде, где вы хотите отсосатьзнания.

 (c)  Слепцов А.И.

ГОСТ№28147-89

Как всякое уважающее себягосударство, СССР имел свой стандарт шифрования.  Этот стандарт закреплен ГОСТом №28147-89,принятом, как явствует из его обозначения, еще в 1989 году в СССР.  Однако, без сомнения, история этого шифрагораздо более давняя.  Стандарт родилсяпредположительно в недрах восьмого главного управления КГБ СССР,преобразованного ныне в ФАПСИ. В те времена он имел гриф «Сов. секретно», позжегриф был изменен на «секретно», затем снят совсем.  Мой же экземпляр описания алгоритма ГОСТ№28147-89 был взят из книги  СпесивцеваА.В.  «Защита инфоpмации в пеpсональныхЭВМ», М., Радио и связь, 1992. К сожалению, в отличие от самого стандарта,история его создания и критерии проектирования шифра до сих пор остаются тайнойза семью печатями.

Возможное использованиеГОСТа в собственных разработках ставит ряд вопросов.  Вопрос первый – нет ли юридическихпрепятствий для этого.  Ответ здесьпростой – таких препятствий нет и все могут свободно использовать ГОСТ, он незапатентован, следовательно, не у кого спрашивать разрешения.  Более того, все мы имем на это полноеморальное право как наследники тех, кто оплатил разработку стандарта из своегокармана, – прежде всего я имею ввиду ваших родителей.  На известный указ Президента России №334 от03.04.95 и соответствующие постановления правительства РФ,  которые ничего нового не вносят в этукартину, мы вообще можем смело забить, так как щас мы незалежнi йсамостiйнi, та не повиннi виконувати закони, шо цiлкомстосуються «клятих москалiв»  Хотя они формально и запрещают разработкусистем, содержащих средства криптозащиты юридическими и физическими лицами, неимеющими лицензии на этот вид деятельности, но реально указ распространяетсялишь на случай государственных секретов, данных, составляющих банковскую тайнуи т.п., словом, он действует только там, где нужна бумажка, что «данныезащищены».

Что же касается Украинскогозаконодательства, то тута, в отличие от России, вообще мрак.  Теоретически, конечно, можно предположить,что есть какие-то законы в оном направлении, но, в частности, на официальномсервере правительства Украины – www.rada.kiev.ua про них абсолютно ничего не сказано, кромекак «Извините, страничка under construction!» Да и какой смысл пытатьсясекретить то, что уже давно ни для кого не является секретом, и про что можнозапросто прочитать как где-нибудь в Интернете, так и в обычной книжке, коихтеперь валом…

Хорошо, с правомочностьюприменения ГОСТа разобрались, теперь остановимся на вопросе целесообразности –прежде всего, можем ли мы доверять этому порождению мрачной Лубянки, невстроили ли товарищи чекисты лазеек в алгоритмы шифрования?  Это весьма маловероятно, так как ГОСТсоздавался в те времена, когда было немыслимо его использование за пределамигосударственных режимных объектов.  Сдругой стороны, стойкость криптографического алгоритма нельзя подтвердить, ееможно только опровергнуть взломом. Поэтому, чем старше алгоритм, тем больше шансов на то, что, если уж онне взломан до сих пор, он не будет взломан и в ближайшем обозримомбудущем.  В этом свете все разговоры опоследних «оригинальных разработках» «талантливых ребят» в принципе не могутбыть серьезными – каждый шифр должен выдержать проверку временем.  Но ведь шифров, выдержавших подобнуюпроверку, заведомо больше одного – кроме ГОСТа ведь есть еще и DES, его старшийамериканский братец, есть и другие шифры. Почему тогда ГОСТ?  Конечно, вомногом это дело личных пристрастий, но надо помнить еще и о том, что ГОСТ побольшинству параметров превосходит все эти алгоритмы, в том числе и DES.  Вам интересно, о каких это параметров идетречь? Далi буде.


Получаетсякод, где все разряды

— нули, аодин из них — единица.

(c)Ладыженский Ю.В.

Описание метода

Описание стандарташифрования данных содержится в очень интересном документе, озаглавленном «Алгоритмкриптографического преобразования данных ГОСТ 28147-89».  То, что в его названии вместо термина«шифрование» фигурирует более общее понятие «криптографическое преобразование»,вовсе не случайно.  Помимо несколькихтесно связанных между собой процедур шифрования, в документе описан одинпостроенный на общих принципах с ними алгоритм выработки имитовставки.  Последняя является не чем иным, как криптографическойконтрольной комбинацией, то есть кодом, вырабатываемым из исходных данных сиспользованием секретного ключа с целью имитозащиты, или защиты данных отвнесения в них несанкционированных изменений.

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

Элементы данных в даннойстатье обозначаются заглавными латинскими буквами с наклонным начертанием(например, X).  Через |X| обозначается размер элемента данных X в битах. Таким образом, если интерпретировать элемент данных Xкак целое неотрицательное число, можно записать следующее неравенство: 0£X<2|X|.

Если элемент данных состоитиз нескольких элементов меньшего размера, то этот факт обозначается следующимобразом: X = (X0, X1, ..., Xn-1) = X0||X1||...||Xn-1.  Процедура объединения нескольких элементовданных в один называется конкатенацией данных и обозначаетсясимволом ||. Естественно, для размеров элементов данных должно выполняться следующеесоотношение: |X|=|X0|+|X1|+...+|Xn-1|.  При задании сложных элементов данных иоперации конкатенации составляющие элементы данных перечисляются в порядкевозрастания старшинства.  Иными словами,если интерпретировать составной элемент и все входящие в него элементы данныхкак целые числа без знака, то можно записать следующее равенство:

<img src="/cache/referats/1237/image011.gif" v:shapes="_x0000_i1025">

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

X = (x0, x1, ..., xn–1) = x0+21·x1+...+2n–1·xn–1.

Если над элементами данныхвыполняется некоторая операция, имеющая логический смысл, то предполагается,что данная операция выполняется над соответствующими битами элементов.  Иными словами A•B=(a0•b0, a1•b1,..., an-1•bn-1), где n=|A|=|B|, а символом “•”обозначается произвольная бинарная логическая операция; как правило, имеетсяввиду операция исключающего или, она же – операция суммирования по модулю 2: aÅb = (a+b) mod 2.

Логикапостроения шифра и структура ключевой информации ГОСТа.

Если внимательно изучить оригинал ГОСТа 28147–89,можно заметить, что в нем содержится описание алгоритмов несколькихуровней.  На самом верхнем находятсяпрактические алгоритмы, предназначенные для шифрования массивов данных ивыработки для них имитовставки.  Все ониопираются на три алгоритма низшего уровня, называемые в тексте ГОСТа циклами.  Эти фундаментальные алгоритмы упоминаются вданной статье как базовые циклы, чтобы отличать их от всех прочих циклов.  Они имеют следующие названия и обозначения,последние приведены в скобках и смысл их будет объяснен позже:

·      цикл зашифрования (32-З);

·      цикл расшифрования (32-Р);

·      цикл выработки имитовставки (16-З).

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

а) что такое основной шаг криптопреобразования;

б) как из основных шагов складываются базовыециклы;

в) как из трех базовых циклов складываются всепрактические алгоритмы ГОСТа.

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

1.  Ключ является массивом из восьми32-битных элементов кода, далее в настоящей работе он обозначается символом К:<img src="/cache/referats/1237/image013.gif" v:shapes="_x0000_i1026">  В ГОСТе элементыключа используются как 32-разрядные целые числа без знака: <img src="/cache/referats/1237/image015.gif" v:shapes="_x0000_i1027">  Таким образом,размер ключа составляет 32·8=256 бит или 32 байта.

2.  Таблица замен является матрицей 8´16, содержащей 4-битовыеэлементы, которые можно представить в виде целых чисел от 0 до 15.  Строки таблицы замен называются узламизамен, они должны содержать различные значения, то есть каждый узелзамен должен содержать 16 различных чисел от 0 до 15 в произвольномпорядке.  В настоящей статье таблицазамен обозначается символом H: <img src="/cache/referats/1237/image017.gif" v:shapes="_x0000_i1028">.  Такимобразом, общий объем таблицы замен равен: 8 узлов ´ 16 элементов/узел ´ 4 бита/элемент = 512 битили 64 байта.

Основнойшаг криптопреобразования.

Основной шагкриптопреобразования по своей сути является оператором, определяющимпреобразование 64-битового блока данных. Дополнительным параметром этого оператора является 32-битовый блок, вкачестве которого используется какой-либо элемент ключа.  Схема алгоритма основного шага приведена нарисунке 1.  Ниже даны пояснения калгоритму основного шага:

Øàã0.       Определяет исходные данные для основного шага криптопреобразования:

·                        N    –   преобразуемый64-битовый блок данных, в ходе выполнения шага его младшая (N1)и старшая (N2) части обрабатываются как отдельные 32-битовыецелые числа без знака.  Таким образом,можно записать N=(N1,N2).

·                        X    –   32-битовыйэлемент ключа;

Øàã1.       Сложение с ключом.  Младшаяполовина преобразуемого блока складывается по модулю 232 сиспользуемым на шаге элементом ключа, результат передается на следующий шаг;

Øàã2.       Поблочная замена.  32-битовоезначение, полученное на предыдущем шаге, интерпретируется как массив из восьми4-битовых блоков кода: S=(S0,S1,S2,S3,S4,S5,S6,S7).

Далеезначение каждого из восьми блоков заменяется на новое, которое выбирается потаблице замен следующим образом: значение блока Si заменяется на Si-тый по порядку элемент (нумерация с нуля) i-тогоузла замен (т.е. i-тойстроки таблицы замен, нумерация также с нуля). Другими словами, в качестве замены для значения блока выбирается элементиз таблицы замен с номером строки, равным номеру заменяемого блока, и номеромстолбца, равным значению заменяемого блока как 4-битового целого неотрицательногочисла.  Теперь становится понятным размертаблицы замен: число строк в ней равно числу 4-битных элементов в 32-битномблоке данных, то есть восьми, а число столбцов равно числу различных значений4-битного блока данных, равному как известно 24, шестнадцати.

<img src="/cache/referats/1237/image019.gif" v:shapes="_x0000_i1029">

Рис. 1.  Схема основного шага   криптопреобразования алгоритма    ГОСТ 28147-89.

Øàã0.       Циклический сдвиг на 11 бит влево. Результат предыдущего шага сдвигается циклически на 11 бит в сторонустарших разрядов и передается на следующий шаг. На схеме алгоритма символом Q11 обозначена функцияциклического сдвига своего аргумента на 11 бит в сторону старших разрядов.

Øàã1.       Побитовое сложение:  значение,полученное на шаге 3, побитно складывается по модулю 2 со старшей половинойпреобразуемого блока.

Øàã2.       Сдвиг по цепочке:  младшая частьпреобразуемого блока сдвигается на место старшей, а на ее место помещаетсярезультат выполнения предыдущего шага.

Øàã3.       Полученное значение преобразуемого блока возвращается как результатвыполнения алгоритма основного шага криптопреобразования.

Базовыециклы криптографических преобразований.

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

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

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

1.    Цикл зашифрования 32-З:

K0,K1,K2,K3,K4,K5,K6,K7,K0,K1,K2,K3,K4,K5,K6,K7,K0,K1,K2,K3,K4,K5,K6,K7,K7,K6,K5,K4,K3,K2,K1,K0.

2.    Цикл расшифрования 32-Р:

K0,K1,K2,K3,K4,K5,K6,K7,K7,K6,K5,K4,K3,K2,K1,K0,K7,K6,K5,K4,K3,K2,K1,K0,K7,K6,K5,K4,K3,K2,K1,K0.

3.    Цикл выработки имитовставки16-З:

K0,K1,K2,K3,K4,K5,K6,K7,K0,K1,K2,K3,K4,K5,K6,K7.

Каждый из циклов имеетсобственное буквенно-цифровое обозначение, соответствующее шаблону «n-X», где первый элементобозначения (n), задает число повторенийосновного шага в цикле, а второй элемент обозначения (X), буква, задает порядокзашифрования («З») или расшифрования («Р») в использовании ключевыхэлементов.  Этот порядок нуждается вдополнительном пояснении:

Цикл расшифрования должен быть обратным циклузашифрования, то есть последовательное применение этих двух циклов кпроизвольному блоку должно дать в итоге исходный блок, что отражается следующимсоотношением: Ц32-Р(Ц32-З(T))=T, где T – произвольный 64-битный блок данных, ЦX(T) – результат выполнения цикла X над блоком данных T.  Для выполнения этого условия для алгоритмов,подобных ГОСТу, необходимо и достаточно, чтобы порядок использования ключевыхэлементов соответствующими циклами был взаимно обратным.  В справедливости записанного условия длярассматриваемого случая легко убедиться, сравнив приведенные вышепоследовательности для циклов 32-Ç è32-Ð.  Из сказанного вытекает одно интересноеследствие: свойство цикла быть обратным другому циклу является взаимным, тоесть цикл 32-З является обратным по отношению к циклу 32-Р.  Другими словами, зашифрование блока данныхтеоретически может быть выполнено с помощью цикла расшифрования, в этом случаерасшифрование блока данных должно быть выполнено циклом зашифрования.  Из двух взаимно обратных циклов любой можетбыть использован для зашифрования, тогда второй должен быть использован длярасшифрования данных, однако стандарт ГОСТ28147-89 закрепляет роли за циклами ине предоставляет пользователю права выбора в этом вопросе.


<img src="/cache/referats/1237/image021.gif" v:shapes="_x0000_i1030">                               <img src="/cache/referats/1237/image023.gif" v:shapes="_x0000_i1031">

Рис. 2а.  Схема цикла зашифрования 32-З.         Рис. 2б.  Схема цикла расшифрования 32-Р.

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

<img src="/cache/referats/1237/image025.gif" v:shapes="_x0000_i1032">

     Рис. 2в.  Схема цикла выработки    имитовставки 16-З.

Схемы базовых цикловприведены на рисунках 2а-в.  Каждый изних принимает в качестве аргумента и возвращает в качестве результата 64-битныйблок данных, обозначенный на схемах N.  Символ Шàã(N,X)обозначаетвыполнение основного шага криптопреобразования для блока Nс использованием ключевого элемента X.  Между циклами шифрования и вычисленияимитовставки есть еще одно отличие, не упомянутое выше: в конце базовых цикловшифрования старшая и младшая часть блока результата меняются местами, этонеобходимо для их взаимной обратимости.

Основныережимы шифрования.

ГОСТ 28147-89 предусматривает три следующих режимашифрования данных:

·      простая замена,

·      гаммирование,

·      гаммирование с обратнойсвязью,

и один дополнительный режим выработки имитовставки.

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

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

Tо,Tш     –   массивы соответственнооткрытых и зашифрованных данных;

<img src="/cache/referats/1237/image027.gif" v:shapes="_x0000_i1033"><img src="/cache/referats/1237/image029.gif" v:shapes="_x0000_i1034">  –   i-тые по порядку 64-битныеблоки соответственно открытых и зашифрованных данных:<img src="/cache/referats/1237/image031.gif" v:shapes="_x0000_i1035"><img src="/cache/referats/1237/image033.gif" v:shapes="_x0000_i1036">1£i£n,последний блок может быть неполным: <img src="/cache/referats/1237/image035.gif" v:shapes="_x0000_i1037">

n            –   число 64-битных блоков в массиве данных;

ЦX          –   функция преобразования 64-битного блока данных поалгоритму базового цикла «X»;

Теперь опишем основныережимы шифрования:

Простаязамена.

Зашифрование в данном режимезаключается в применении цикла 32-З к блокам открытых данных, расшифрование –цикла 32-Р к блокам зашифрованных данных. Это наиболее простой из режимов, 64-битовые блоки данных обрабатываютсяв нем независимо друг от друга.  Схемыалгоритмов зашифрования и расшифрования в режиме простой замены приведены нарисунках 3а и б соответственно, они тривиальны и не нуждаются в комментариях.

Размер массива открытых илизашифрованных данных, подвергающийся соответственно зашифрованию илирасшифрованию, должен быть кратен 64 битам: |Tо|=|Tш|=64·n,после выполнения операции размер полученного массива данных не изменяется.

<img src="/cache/referats/1237/image037.gif" v:shapes="_x0000_i1038">

     Рис. 3а.  Алгоритм зашифрования       данных в режиме простой замены.

<img src="/cache/referats/1237/image039.gif" v:shapes="_x0000_i1039">

     Рис. 3б.  Алгоритм расшифрования     данных в режиме простой замены.

Режим шифрования простойзаменой имеет следующие особенности:

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

еще рефераты
Еще работы по программированию, базе данных