ТРЕБОВАНИЯ К КРИПТОГРАФИЧЕСКИМ СИСТЕМАМ
Раздел 3. Криптографические методы защиты информации
КРИПТОГРАФИЯ, ЕЕ ИСТОКИ И МЕСТО В СОВРЕМЕННОМ
ОБЩЕСТВЕ
Человек - существо социальное, вот уже много тысячелетий он живет в обществе себе подобных. И вполне естественно, что одной из важнейших его способностей является умение общаться с другими людьми - передавать им сведения о том, что происходит в окружающем их мире, и о фактах своей субъективной реальности. Вторая сигнальная система - речь - по праву считается одним из важнейших отличительных признаков, качественно выделяющих человечество из животного мира. Характер информационного обмена между членами даже самого дикого племени многократно превышает по своей сложности все то, что можно увидеть у животных. Коммуникация в человеческом обществе имеет еще один отличительный признак - она узко избирательна. Мы разговариваем с разными людьми совершенно по-разному, и то, что сообщаем одним, стараемся скрыть от других.
Таким образом, с зарождением человеческой цивилизации возникло умение сообщать информацию одним людям так, чтобы она не становилась известной другим. Пока люди использовали для передачи сообщений исключительно голос и жесты, сделать это обычно не составляло особого труда - нужно было лишь исключить присутствие в непосредственной близости от разговаривающих тех людей, для которых сообщаемые сведения не предназначены. Однако иногда внешние факторы накладывали на поведение собеседников ограничения, не позволявшие им укрыться от посторонних ушей и глаз для проведения конфиденциальной беседы. Для действия в подобных обстоятельствах была создана, а точнее сложилась сама собой, система кодированных речью или жестами сообщений. В различных ситуациях она носила совершенно различный характер - от отдельного тайного знака, говорящего о наступлении определенного события, до развитых секретных языков, позволявших выражать мысли практически любой сложности. Даже в самом простейшем случае это была по своей сути вторая сигнальная система в миниатюре, предназначенная для передачи ограниченного набора сведений и известная как правило лишь небольшой группе посвященных, осколок - большой или маленький - альтернативного языка, и именно она положила начало развившемуся позже искусству тайно передавать сообщения.
Конечно, использование развитого "секретного" языка для защиты передаваемых данных обеспечивает гораздо большую свободу в коммуникации, чем несколько тайных знаков, о которых участники договорились накануне, однако этот путь имеет и гораздо большие издержки. За всеми посвященными уследить трудно, и рано или поздно такой язык станет понятным тем, от кого пытаются скрыть разговор. В этом случае возникнет необходимость его заменить другим, разработать же достаточно мощный язык и обучить ему нужное количество людей весьма затруднительно и накладно, а сделать это оперативно - невозможно. Поэтому подобный подход к проблеме проходит только в особых случаях, когда тому благоприятствуют обстоятельства. Так, он использовался американцами во время второй мировой войны: корабли ВМФ США осуществляли связь на языке малочисленного и компактно проживающего индейского племени. На каждом корабле было несколько индейцев-"шифровальщиков", у противника не было практически никаких шансов раздобыть себе такого "криптографа".
С возникновением письменности задача обеспечения секретности и подлинности передаваемых сообщений стала особенно актуальной. Действительно, сообщение, переданное словесно или показанное жестами, доступно для постороннего только в тот краткий промежуток времени, пока оно "в пути", а в его авторстве и подлинности у получателя никаких сомнений быть не может, потому что он видит своего собеседника. Иное дело, когда сообщение записано - оно уже живет отдельной жизнью и имеет свой путь, зачастую далеко расходящийся с путем человека, его создавшего. Записанное на бумаге сообщение существует в материальном мире гораздо более длительный промежуток времени, и у людей, желающих ознакомиться с его содержанием против воли отправителя и получателя, появляется гораздо больше шансов сделать это. Поэтому именно после возникновения письменности появилось искусство тайнописи, искусство "тайно писать" - набор методов, предназначенных для секретной передачи записанных сообщений от одного человека другому.
Данные о первых способах тайнописи весьма обрывочны. Предполагается, что она была известна в Древнем Египте и Вавилоне. До нашего времени дошли указания на то, что искусство секретного письма использовалось в Древней Греции. Первые действительно достоверные сведения с описанием метода шифрования относятся к периоду смены старой и новой эры и описывают шифр Цезаря - способ, которым Юлий Цезарь прятал свои записи от излишне любопытных глаз. Использование шифра решало проблему секретности передаваемого сообщения, а проблема его подлинности решалась практически сама собой: во-первых, для человека, не знавшего шифр, было невозможно внести осмысленные изменения в зашифрованные сообщения, носившие исключительно текстовый характер, а изменения, внесенные наобум, приводили к тому, что после расшифрования получался бессмысленный набор букв; во-вторых, практически до совсем еще недавних по историческим меркам времен отправляемые сообщения записывались от руки, а каждый человек имеет свой индивидуальный, присущий только ему почерк, который очень трудно воспроизвести другому человеку; запомнить почерк даже нескольких десятков наиболее важных своих корреспондентов, - а больше ни у кого и не было, - не составляет особого труда.
Человечество изобрело большое число способов секретного письма, многие из них были известны еще в древности. В некоторых способах тайного письма используются физические особенности носителей информации. Так симпатические чернила исчезают вскоре после написания ими текста или невидимы с самого начала. Но их можно снова сделать видимыми, обработав документ специальным химическим реактивом или осветив лучами определенной части спектра, обычно - ультрафиолетом. Стеганография предполагает, что передаваемый текст "растворяется" в сообщении большего размера с совершенно "посторонним" смыслом. Но если взять и извлечь из него некоторые символы по определенному закону, например - каждый второй, или третий, и т.д., получим вполне конкретное тайное сообщение.
Шифрование является преобразованием сообщения по определенным правилам, что делает его бессмысленным набором знаков для непосвященного в тайну шифра человека.
Классифицировать способы засекречивания передаваемых сообщений можно по-разному, однако определяющих факторов всего два: используются ли для засекречивания свойства материальных носителей и материальной среды передачи информации или оно осуществляется независимо от них; прячется ли секретное сообщение или оно просто делается недоступным для всех, кроме получателя.
Как отмечено выше, большое число способов засекретить сообщение связано с воздействием на его носитель как на материальный объект. Это очень интересная тема, однако она является предметом изучения физики и химии, и никакого отношения к теории информации не имеет. Для массового практического применения гораздо больший интерес представляют методы защиты данных, которые опираются исключительно на свойства самих данных и никак не связаны с особенностями их физического представления. Образно говоря, при использовании методов данного типа барьер между собственно сообщением и злоумышленником, желающим его прочитать или исказить, возводится исключительно из самой информации. Речь в дальнейшем пойдет только о таких способах защиты.
Как же передать нужную информацию нужному адресату в тайне от других? Каждый в разное время и с разными целями наверняка пытался решить для себя эту практическую задачу. Выбрав подходящее решение, он, скорее всего, повторил изобретение одного из способов скрытой передачи информации, которым уже не одна тысяча лет.
Размышляя над данной задачей, нетрудно прийти к выводу, что есть три возможности.
1. Создать абсолютно надежный, недоступный для других канал связи между абонентами.
2. Использовать общедоступный канал связи, но скрыть сам факт передачи информации.
3. Использовать общедоступный канал связи, но передавать по нему нужную информацию в таком преобразованном виде, чтобы восстановить ее мог только адресат.
Прокомментируем эти три возможности.
1. При современном уровне развития науки и техники сделать такой канал связи между удаленными абонентами для неоднократной передачи больших объемов информации практически нереально.
2. Разработкой средств и методов скрытия факта передачи сообщения занимается стеганография.
Первые следы стеганографических методов теряются в глубокой древности. Например, известен такой способ скрытия письменного сообщения: голову раба брили, на коже головы писали сообщение и после отрастания волос раба отправляли к адресату.
Из детективных произведений хорошо известны различные способы тайнописи между строк обычного, незащищаемого текста: от молока до сложных химических реактивов с последующей обработкой.
Также из детективов известен метод ``микроточки'': сообщение записывается с помощью современной техники на очень маленький носитель (микроточку), который пересылается с обычным письмом, например, под маркой или где-нибудь в другом, заранее обусловленном месте.
В настоящее время в связи с широким распространением компьютеров известно много тонких методов ``скрытия'' защищаемой информации внутри больших объемов информации, хранящейся в компьютере. В этом и заключается принцип действия стеганографии. Например, мы отправляем нашему корреспонденту по электронной почте файл с растровой черно-белой картинкой, в котором наименее значащий бит в коде яркости каждой точки изображения будет элементом нашего тайного сообщения. Получатель письма извлечет все такие биты и составит из них "истинное" сообщение. Картинка, присутствующая здесь только для отвода глаз, так и останется для непосвященных простой картинкой. Стеганография бывает полезна, когда необходимо не просто передать секретное сообщение, а секретно передать секретное сообщение, то есть скрыть сам факт передачи секретного сообщения. Такой способ ведения тайной коммуникации, однако, имеет ряд недостатков: во-первых, трудно обосновать его стойкость - вдруг злоумышленникам станет известен способ "подмешивания" секретных данных к "болванке" - массиву открытых данных; во-вторых, при его использовании объем передаваемых или хранимых данных резко увеличивается, что отрицательно сказывается на производительности систем их обработки.
3. Другой подход - не скрывать факт передачи сообщения, но сделать его недоступным посторонним. Для этого сообщение должно быть записано так, чтобы с его содержимым не мог ознакомиться никто за исключением самих корреспондентов - в этом и заключается суть шифрования. И криптография возникла именно как практическая дисциплина, изучающая и разрабатывающая способы шифрования сообщений. Вернемся к истории. Чем оживленнее велась переписка в обществе, тем большая ощущалась потребность в средствах ее засекречивания. Соответственно, возникали все более совершенные и хитроумные шифры. Сначала при заинтересованных лицах появились шифровальщики, потом группы из нескольких шифровальщиков, а затем и целые шифровальные отделы. Когда объемы подлежащей закрытию информации стали критическими, в помощь людям были созданы механические устройства для шифрования. Надо сказать, что основными потребителями криптографических услуг были дипломатические и шпионские миссии, тайные канцелярии правителей и штабы войсковых соединений. Для этого этапа развития криптографии характерно следующее: защите подвергались исключительно текстовые сообщения, написанные на естественных языках - других типов дискретно представленных данных просто не существовало; шифрование сначала осуществлялось вручную, позднее были изобретены сравнительно несложные механические приспособления, поэтому использовавшиеся тогда шифры были достаточно простыми и несложными; криптография и криптоанализ были скорее искусством, чем наукой, научный подход к построению шифров и их раскрытию отсутствовал; криптография использовалась в очень узких сферах - только для обслуживания высших правящих слоев и военной верхушки государств. Основной задачей криптографии была защита передаваемых сообщений от несанкционированного ознакомления с ними, поскольку шифровались исключительно текстовые сообщения, никаких дополнительных методов защиты от навязывания ложных данных не применялось - вероятность получить нечто осмысленное после расшифрования искаженного зашифрованного текста была ничтожно мала в силу огромной избыточности, характерной для естественных языков.
Появление в середине нашего столетия первых электронно-вычислительных машин кардинально изменило ситуацию. С проникновением компьютеров в различные сферы жизни возникла принципиально новая отрасль хозяйства - информационная индустрия. Объем циркулирующей в обществе информации с тех пор стабильно возрастает по экспоненциальному закону - он примерно удваивается каждые пять лет. Фактически, на пороге нового тысячелетия человечество создало информационную цивилизацию, в которой от успешной работы средств обработки информации зависит само благополучие и даже выживание человечества в его нынешнем качестве.
Произошедшие за этот период изменения можно охарактеризовать следующим образом: объемы обрабатываемой информации возросли за полвека на несколько порядков; сложилось такое положение вещей, что доступ к определенным данным позволяет контролировать значительные материальные и финансовые ценности; информация приобрела стоимость, которую во многих случаях даже можно подсчитать; характер обрабатываемых данных стал чрезвычайно многообразным и более не сводится к исключительно текстовым данным; информация полностью "обезличилась", т.е. особенности ее материального представления потеряли свое значение - сравните письмо прошлого века и современное послание по электронной почте; характер информационных взаимодействий чрезвычайно усложнился, и наряду с классической задачей защиты передаваемых текстовых сообщений от несанкционированного прочтения и искажения возникли новые задачи сферы защиты информации, ранее стоявшие и решавшиеся в рамках используемых "бумажных" технологий - например, подпись под электронным документом и вручение электронного документа "под расписку"; субъектами информационных процессов теперь являются не только люди, но и созданные ими автоматические системы, действующие по заложенной в них программе; вычислительные "способности" современных компьютеров подняли на совершенно новый уровень как возможности по реализации шифров, ранее немыслимых из-за своей высокой сложности, так и возможности аналитиков по их взлому.
Перечисленные выше изменения привели к тому, что очень быстро после распространения компьютеров в деловой сфере практическая криптография сделала в своем развитии огромный скачок, причем сразу по нескольким направлениям: во-первых, были разработаны стойкие блочные шифры с секретным ключом, предназначенные для решения классической задачи - обеспечения секретности и целостности передаваемых или хранимых данных, они до сих пор остаются наиболее часто используемыми средствами криптографической защиты; во-вторых, были созданы методы решения новых, нетрадиционных задач сферы защиты информации, наиболее известными из которых являются задача подписи цифрового документа и открытого распределения ключей.
Как видим, термин "криптография" далеко ушел от своего первоначального значения - "тайнопись", "тайное письмо". Сегодня эта дисциплина объединяет методы защиты информационных взаимодействий совершенно различного характера, опирающиеся на преобразование данных по секретным алгоритмам, включая алгоритмы, использующие секретные параметры. Термин "информационное взаимодействие" или "процесс информационного взаимодействия" здесь обозначает такой процесс взаимодействия двух и более субъектов, основным содержанием которого является передача и/или обработка информации. По большому счету, криптографической может считаться любая функция преобразования данных, секретная сама по себе или зависящая от секретного параметра S:
T' = f(T), или
T' = f(T,S).
Теперь перейдем к характеристикам задач, решаемых криптографическими методами в наши дни. Информационные взаимодействия между различными субъектами могут носить различный, порой весьма запутанный характер, соответственно существуют различные угрозы их нормальному осуществлению.
ПРЕДМЕТ КРИПТОГРАФИИ
Что же является предметом криптографии?
Криптография занимается разработкой методов преобразования (шифрования) информации с целью ее защиты от незаконных пользователей. Такие методы и способы преобразования информации называются шифрами.
Шифрование (зашифрование) - процесс применения шифра к защищаемой информации, т.е. преобразование защищаемой информации (открытого текста) в шифрованное сообщение (шифртекст, криптограмму) с помощью определенных правил, содержащихся в шифре.
Дешифрование - процесс, обратный шифрованию, т.е. преобразование шифрованного сообщения в защищаемую информацию с помощью определенных правил, содержащихся в шифре.
Криптография - прикладная наука, она использует самые последние достижения фундаментальных наук и, в первую очередь, математики. С другой стороны, все конкретные задачи криптографии существенно зависят от уровня развития техники и технологии, от применяемых средств связи и способов передачи информации.
Прежде всего заметим, что эта задача возникает только для информации, которая нуждается в защите. Обычно в таких случаях говорят, что информация содержит тайну или является защищаемой, приватной, конфиденциальной, секретной. Для наиболее типичных, часто встречающихся ситуаций такого типа введены даже специальные понятия:
- государственная тайна;
- военная тайна;
- коммерческая тайна;
- юридическая тайна;
- врачебная тайна и т.д.
Далее мы будем говорить о защищаемой информации, имея в виду следующие признаки такой информации:
- имеется какой-то определенный круг законных пользователей, которые имеют право владеть этой информацией;
- имеются незаконные пользователи, которые стремятся овладеть этой информацией с тем, чтобы обратить ее себе во благо, а законным пользователям во вред.
Для простоты мы вначале ограничимся рассмотрением только одной угрозы - угрозы разглашения информации. Существуют и другие угрозы для защищаемой информации со стороны незаконных пользователей: подмена, имитация и др.
Теперь мы можем изобразить ситуацию, в которой возникает задача тайны передачи, следующей схемой (см. рис.1).
Рис. 1. |
Здесь A и B - удаленные законные пользователи защищаемой информации; они хотят обмениваться информацией по общедоступному каналу связи. П- незаконный пользователь (противник), который может перехватывать передаваемые по каналу связи сообщения и пытаться извлечь из них интересующую его информацию. Эту формальную схему можно считать моделью типичной ситуации, в которой применяются криптографические методы защиты информации.
Отметим, что исторически в криптографии закрепились некоторые военные слова (противник, атака на шифр и др.) Они наиболее точно отражают смысл соответствующих криптографических понятий. Вместе с тем широко известная военная терминология, основанная на понятии кода (военно-морские коды, коды Генерального штаба, кодовые книги, кодобозначения и т.п.), уже не применяется в теоретической криптографии. Дело в том, что за последние десятилетия сформировалась теория кодирования - большое научное направление, которое разрабатывает и изучает методы защиты информации от случайных искажений в каналах связи. И если ранее термины кодирование и шифрование употреблялись как синонимы, то теперь это недопустимо. Так, например, очень распространенное выражение ``кодирование- разновидность шифрования'' становится просто неправильным.
Криптография занимается методами преобразования информации, которые бы не позволили противнику извлечь ее из перехватываемых сообщений. При этом по каналу связи передается уже не сама защищаемая информация, а результат ее преобразования с помощью шифра, и для противника возникает сложная задача вскрытия шифра.
Вскрытие (взламывание) шифра - процесс получения защищаемой информации из шифрованного сообщения без знания примененного шифра.
Однако помимо перехвата и вскрытия шифра противник может пытаться получить защищаемую информацию многими другими способами. Наиболее известным из таких способов является агентурный, когда противник каким-либо путем склоняет к сотрудничеству одного из законных пользователей и с помощью этого агента получает доступ к защищаемой информации. В такой ситуации криптография бессильна.
Противник может пытаться не получить, а уничтожить или модифицировать защищаемую информацию в процессе ее передачи. Это - совсем другой тип угроз для информации, отличный от перехвата и вскрытия шифра. Для защиты от таких угроз разрабатываются свои специфические методы.
Следовательно, на пути от одного законного пользователя к другому информация должна защищаться различными способами, противостоящими различным угрозам. Возникает ситуация цепи из разнотипных звеньев, которая защищает информацию. Естественно, противник будет стремиться найти самое слабое звено, чтобы с наименьшими затратами добраться до информации. А значит, и законные пользователи должны учитывать это обстоятельство в своей стратегии защиты: бессмысленно делать какое-то звено очень прочным, если есть заведомо более слабые звенья («принцип равнопрочности защиты»).
Не следует забывать и еще об одной важной проблеме: проблеме соотношения цены информации, затрат на ее защиту и затрат на ее добывание. При современном уровне развития техники сами средства связи, а также разработка средств перехвата информации из них и средств защиты информации требуют очень больших затрат. Прежде чем защищать информацию, задайте себе два вопроса:
1) является ли она для противника более ценной, чем стоимость атаки;
2) является ли она для вас более ценной, чем стоимость защиты.
Именно перечисленные соображения и являются решающими при выборе подходящих средств защиты: физических, стеганографических, криптографических и др.
Некоторые понятия криптографии удобно иллюстрировать историческими примерами, поэтому сделаем небольшое историческое отступление.
Долгое время занятие криптографией было уделом чудаков-одиночек. Среди них были одаренные ученые, дипломаты, священнослужители. Известны случаи, когда криптография считалась даже черной магией. Этот период развития криптографии как искусства длился с незапамятных времен до начала ХХ века, когда появились первые шифровальные машины. Понимание математического характера решаемых криптографией задач пришло только в середине ХХ века - после работ выдающегося американского ученого К.Шеннона.
История криптографии связана с большим количеством дипломатических и военных тайн и поэтому окутана туманом легенд. Наиболее полная книга по истории криптографии содержит более тысячи страниц. Она опубликована в 1967 году и на русский язык не переведена. На русском языке недавно вышел в свет фундаментальный труд по истории криптографии в России.
Свой след в истории криптографии оставили многие хорошо известные исторические личности. Приведем несколько наиболее ярких примеров. Первые сведения об использовании шифров в военном деле связаны с именем спартанского полководца Лисандра (шифр «Сцитала»). Цезарь использовал в переписке шифр, который вошел в историю как «шифр Цезаря». В древней Греции был изобретен вид шифра, который в дальнейшем стал называться «квадрат Полития». Одну из первых книг по криптографии написал аббат И.Трителий (1462-1516), живший в Германии. В 1566 году известный математик Д.Кардано опубликовал работу с описанием изобретенной им системы шифрования («решетка Кардано»). Франция ХVI века оставила в истории криптографии шифры короля Генриха IV и Ришелье. В упомянутой книге Т.А.Соболевой подробно описано много российских шифров, в том числе и «цифирная азбука» 1700 года, автором которой был Петр Великий.
Некоторые сведения о свойствах шифров и их применении можно найти и в художественной литературе, особенно в приключенческой, детективной и военной. Хорошее подробное объяснение особенностей одного из простейших шифров – шифра замены и методов его вскрытия содержится в двух известных рассказах: «Золотой жук» Э.По и «Пляшущие человечки» А.Конан Дойла.
Рассмотрим более подробно два примера.
Шифр ``Сцитала''. Этот шифр известен со времен войны Спарты против Афин в V веке до н.э. Для его реализации использовалась сцитала - жезл, имеющий форму цилиндра. На сциталу виток к витку наматывалась узкая папирусная лента (без просветов и нахлестов), а затем на этой ленте вдоль оси сциталы записывался открытый текст. Лента разматывалась и получалось (для непосвященных), что поперек ленты в беспорядке написаны какие-то буквы. Затем лента отправлялась адресату. Адресат брал такую же сциталу, таким же образом наматывал на нее полученную ленту и читал сообщение вдоль оси сциталы.
Отметим, что в этом шифре преобразование открытого текста в шифрованный заключается в определенной перестановке букв открытого текста. Поэтому класс шифров, к которым относится и шифр ``Сцитала'', называется шифрами перестановки.
Шифр Цезаря. Этот шифр реализует следующее преобразование открытого текста: каждая буква открытого текста заменяется третьей после нее буквой в алфавите, который считается написанным по кругу, т.е. после буквы ``я'' следует буква ``а''. Отметим, что Цезарь заменял букву третьей после нее буквой, но можно заменять и какой-нибудь другой. Главное, чтобы тот, кому посылается шифрованное сообщение, знал эту величину сдвига. Класс шифров, к которым относится и шифр Цезаря, называется шифрами замены.
Из предыдущего изложения понятно, что придумывание хорошего шифра - дело трудоемкое. Поэтому желательно увеличить «время жизни» хорошего шифра и использовать его для шифрования как можно большего количества сообщений. Но при этом возникает опасность, что противник уже разгадал (вскрыл) шифр и читает защищаемую информацию. Если же в шифре есть сменный ключ, то, заменив ключ, можно сделать так, что разработанные противником методы уже не дают эффекта.
Под ключом в криптографии понимают сменный элемент шифра, который применяется для шифрования конкретного сообщения. Например, в шифре «Сцитала» ключом является диаметр сциталы, а в шифрах типа шифра Цезаря ключом является величина сдвига букв шифртекста относительно букв открытого текста.
Описанные соображения привели к тому, что безопасность защищаемой информации стала определяться в первую очередь ключом. Сам шифр, шифрмашина или принцип шифрования стали считать известными противнику и доступными для предварительного изучения, но в них появился неизвестный для противника ключ, от которого существенно зависят применяемые преобразования информации. Теперь законные пользователи, прежде чем обмениваться шифрованными сообщениями, должны тайно от противника обменяться ключами или установить одинаковый ключ на обоих концах канала связи. А для противника появилась новая задача - определить ключ, после чего можно легко прочитать зашифрованные на этом ключе сообщения.
Вернемся к формальному описанию основного объекта криптографии. Теперь в него необходимо внести существенное изменение - добавить недоступный для противника секретный канал связи для обмена ключами (см. рис.2). Создать такой канал связи вполне реально, поскольку нагрузка на него, вообще говоря, небольшая.
Рис. 2. |
Отметим теперь, что не существует единого шифра, подходящего для всех случаев. Выбор способа шифрования зависит от особенностей информации, ее ценности и возможностей владельцев по защите своей информации. Прежде всего подчеркнем большое разнообразие видов защищаемой информации: документальная, телефонная, телевизионная, компьютерная и т.д. Каждый вид информации имеет свои специфические особенности, и эти особенности сильно влияют на выбор методов шифрования информации. Большое значение имеют объемы и требуемая скорость передачи шифрованной информации. Выбор вида шифра и его параметров существенно зависит от характера защищаемых секретов или тайны. Некоторые тайны (например, государственные, военные и др.) должны сохраняться десятилетиями, а некоторые (например, биржевые) - уже через несколько часов можно разгласить. Необходимо учитывать также и возможности того противника, от которого защищается данная информация. Одно дело - противостоять одиночке или даже банде уголовников, а другое дело - мощной государственной структуре.
Способность шифра противостоять всевозможным атакам на него называют стойкостью шифра.
Под атакой на шифр понимают попытку вскрытия этого шифра.
Понятие стойкости шифра является центральным для криптографии. Хотя качественно понять его довольно легко, но получение строгих доказуемых оценок стойкости для каждого конкретного шифра - проблема нерешенная. Это объясняется тем, что до сих пор нет необходимых для решения такой проблемы математических результатов. Поэтому стойкость конкретного шифра оценивается только путем всевозможных попыток его вскрытия и зависит от квалификации криптоаналитиков, атакующих шифр. Такую процедуру иногда называют проверкой стойкости.
Важным подготовительным этапом для проверки стойкости шифра является продумывание различных предполагаемых возможностей, с помощью которых противник может атаковать шифр. Появление таких возможностей у противника обычно не зависит от криптографии, это является некоторой внешней подсказкой и существенно влияет на стойкость шифра. Поэтому оценки стойкости шифра всегда содержат те предположения о целях и возможностях противника, в условиях которых эти оценки получены.
Прежде всего, как это уже отмечалось выше, обычно считается, что противник знает сам шифр и имеет возможности для его предварительного изучения. Противник также знает некоторые характеристики открытых текстов, например, общую тематику сообщений, их стиль, некоторые стандарты, форматы и т.д.
Из более специфических приведем еще три примера возможностей противника:
- противник может перехватывать все шифрованные сообщения, но не имеет соответствующих им открытых текстов;
- противник может перехватывать все шифрованные сообщения и добывать соответствующие им открытые тексты;
- противник имеет доступ к шифру (но не к ключам!) и поэтому может зашифровывать и дешифровывать любую информацию.
На протяжении многих веков среди специалистов не утихали споры о стойкости шифров и о возможности построения абсолютно стойкого шифра. Приведем три характерных высказывания на этот счет.
Английский математик Чарльз Беббидж (ХIХ в.): «Всякий человек, даже если он не знаком с техникой вскрытия шифров, твердо считает, что сможет изобрести абсолютно стойкий шифр, и чем более умен и образован этот человек, тем более твердо это убеждение. Я сам разделял эту уверенность в течение многих лет».
«Отец кибернетики» Норберт Винер: «Любой шифр может быть вскрыт, если только в этом есть настоятельная необходимость и информация, которую предполагается получить, стоит затраченных средств, усилий и времени...»
Автор шифра PGP Ф. Зиммерманн : «`Каждый, кто думает, что изобрел непробиваемую схему шифрования, - или невероятно редкий гений, или просто наивен и неопытен...» «Каждый программист воображает себя криптографом, что ведет к распространению исключительно плохого криптообеспечения...»
В последнее время наряду со словом «криптография» часто встречается и слово «криптология», но соотношение между ними не всегда понимается правильно. Сейчас происходит окончательное формирование этих научных дисциплин, уточняются их предмет и задачи.
Криптология - наука, состоящая из двух ветвей: криптографии и криптоанализа.
Криптография - наука о способах преобразования (шифрования) информации с целью ее защиты от незаконных пользователей.
Криптоанализ - наука (и практика ее применения) о методах и способах вскрытия шифров.
Соотношение криптографии и криптоанализа очевидно: криптография - защита, т.е. разработка шифров, а криптоанализ - нападение, т.е. атака на шифры. Однако эти две дисциплины связаны друг с другом, и не бывает хороших криптографов, не владеющих методами криптоанализа.
КРИПТОГРАФИЧЕСКИЕ СИСТЕМЫ
Современная криптография разделяет криптографические методы на четыре крупных класса.
1. Симметричные криптосистемы.
2. Криптосистемы с открытым ключом.
3. Системы электронной цифровой подписи (ЭЦП).
4. Системы управления ключами.
Основные направления использования криптографических методов - передача конфиденциальной информации по каналам связи (например, электронная почта), установление подлинности передаваемых сообщений, хранение информации (документов, баз данных) на носителях в зашифрованном виде.
Итак, криптография дает возможность преобразовать информацию таким образом, что ее прочтение (восстановление) возможно только при знании ключа.
В качестве информации, подлежащей шифрованию и расшифрованию, будут рассматриваться тексты, построенные на некотором алфавите. Под этими терминами понимается следующее.
Алфавит — конечное множество используемых для кодирования информации знаков.
Текст — упорядоченный набор из элементов алфавита.
В качестве примеров алфавитов, используемых в современных ИС можно привести следующие:
— алфавит - 32 буквы русского алфавита (исключая «ё») и пробел;
— алфавит - символы, входящие в стандартные коды ASCII и КОИ-8;
— двоичный алфавит — = {0,1};
— восьмеричный или шестнадцатеричный алфавит.
Шифрование - процесс преобразования исходного текста, который носит также название открытого текста, в шифрованный текст.
Дешифрование- обратный шифрованию процесс. На основе ключа шифрованный текст преобразуется в исходный.
Ключ - информация, необходимая для беспрепятственного шифрования и дешифрования текстов.
Пространство ключей К - это набор возможных значений ключа. Обычно ключ представляет собой последовательный ряд букв алфавита.
Криптографическая система представляет собой семейство Т преобразований открытого текста. Элементы этого семейства индексируются, или обозначаются символом k; параметр k обычно называется ключом. Преобразование Т определяется соответствующим алгоритмом и значением ключа k.
Криптосистемы подразделяются на симметричныеи асимметричные(или с открытым ключом).
В симметричных криптосистемах для шифрования и для расшифрования используется один и тот же ключ.
В системах с открытым ключом используются два ключа — открытый и закрытый(секретный), которые математически связаны друг с другом. Информация шифруется с помощью открытого ключа, который доступен всем желающим, а расшифровывается с помощью закрытого ключа, известного только получателю сообщения.
Термины распределение ключей и управление ключами относятся к процессам системы обработки информации, содержанием которых является выработка и распределение ключей между пользователями.
Электронной цифровой подписью называется присоединяемое к тексту его криптографическое преобразование, которое позволяет при получении текста другим пользователем проверить авторство и подлинность сообщения.
Криптостойкостъю называется характеристика шифра, определяющая его стойкость к расшифрованию без знания ключа (т.е. криптоанализу). Имеется несколько показателей криптостойкости, среди которых:
- количество всех возможных ключей;
- среднее время, необходимое для успешной криптоаналитической атаки того или иного вида.
Эффективность шифрования с целью защиты информации зависит от сохранения тайны ключа и криптостойкости шифра.
ТРЕБОВАНИЯ К КРИПТОГРАФИЧЕСКИМ СИСТЕМАМ
Процесс криптографического закрытия данных может осуществляться как программно, так и аппаратно. Аппаратная реализация отличается существенно большей стоимостью, однако ей присущи и преимущества: высокая производительность, простота, защищенность и т.д. Программная реализация более практична, допускает известную гибкость в использовании.
Для современных криптографических систем защиты информации сформулированы следующие общепринятые требования:
- зашифрованное сообщение должно поддаваться чтению только при наличии ключа;
- число операций, необходимых для определения использованного ключа шифрования по фрагменту шифрованного сообщения и соответствующего ему открытого текста, должно быть не меньше общего числа возможных ключей;
- число операций, необходимых для расшифровывания информации путем перебора всевозможных ключей должно иметь строгую нижнюю оценку и выходить за пределы возможностей современных компьютеров (с учетом возможности использования сетевых вычислений), или требовать неприемлемо высоких затрат на эти вычисления;
- знание алгоритма шифрования не должно влиять на надежность защиты;
- незначительное изменение ключа должно приводить к существенному изменению вида зашифрованного сообщения даже при шифровании одного и того же исходного текста;
- незначительное изменение исходного текста должно приводить к существенному изменению вида зашифрованного сообщения даже при использовании одного и того же ключа;
- структурные элементы алгоритма шифрования должны быть неизменными;
- дополнительные биты, вводимые в сообщение в процессе шифрования, должны быть полностью и надежно скрыты в шифрованном тексте;
- длина шифрованного текста не должна превосходить длину исходного текста;
- не должно быть простых и легко устанавливаемых зависимостей между ключами, последовательно используемыми в процессе шифрования;
- любой ключ из множества возможных должен обеспечивать надежную защиту информации;
- алгоритм должен допускать как программную, так и аппаратную реализацию, при этом изменение длины ключа не должно вести к качественному ухудшению алгоритма шифрования.
МАТЕМАТИЧЕСКИЕ ОСНОВЫ
Большое влияние на развитие криптографии оказали появившиеся в середине XX века работы американского математика Клода Шеннона. В этих работах были заложены основы теории информации, а также был разработан математический аппарат для исследований во многих областях науки, связанных с информацией. Более того, принято считать, что теория информации как наука родилась в 1948 году после публикации работы К. Шеннона «Математическая теория связи».
В своей работе «Теория связи в секретных системах» Клод Шеннон обобщил накопленный до него опыт разработки шифров. Оказалось, что даже в очень сложных шифрах в качестве типичных компонентов можно выделить такие простые шифры как шифры замены, шифры перестановки или их сочетания.