Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Шемякин лекции 2023 / Алфёров А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Основы криптографии

.pdf
Скачиваний:
27
Добавлен:
30.05.2023
Размер:
7.75 Mб
Скачать

Основные понятия

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

Схема разделения секрета

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

Задачу построения схемы разделения секрета можно обобщить

71

I лава 2

либо путем введения так называемой структуры дос­ тупа, когда решение может приниматься не одной, а не­ сколькими различными группами, причем часть из участни­ ков может наделяться правом “вето”,

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

либо введением специального протокола распределе­ ния долей между участниками с подтверждением правильно­ сти полученной информации и аутентификацией сторон.

§2.3. Инфраструктура открытых ключей

Сертификаты

Создание цифровой подписи позволило решить проблему

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

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

7?

Основные понятия

Международный стандарт 180 Х.509 определяет общую структуру сертификатов открытых ключей и протоколы их использования для аутентификации в распределенных систе­ мах.

Центры сертификации

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

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

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

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

73

Iлава 2

§ 2.4. Формальные модели шифров

Для того чтобы иметь возможность доказывать в крипто­ графии точные результаты, нужны математические модели основных исследуемых объектов, к которым относятся в пер­ вую очередь шифр и открытый текст. Введем сначала алгеб­ раическую модель шифра (шифрсистемы), предложенную, по сути дела, К. Шенноном [ШенбЗ]. С моделями открытых тек­ стов мы познакомимся ниже.

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

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

Формализуем сказанное.

74

Основные понятия

Пусть Х , К , У — конечные множества возможных от­ крытых текстов, ключей и шифрованных текстов соответст­

венно; Е к \ Х —» У

правило

зашифрования

на

ключе

к е К . Множество {Ек : к е К \

обозначим через

Е , а мно­

жество

{Ек ( х ) : х е Х }

— через Ек ( X ) . Пусть

В к :

Ек( Х ) —> X — правило расшифрования на ключе к е К , и

В — множество {В к : к е К ] .

 

 

 

Здесь

и далее мы будем предполагать, что если

к е К

представляется в виде к = 3, А:р), где к3— ключ зашифро­ вания, а кр— ключ расшифрования (причем к3 Ф А:р), то Ек

понимается как функция Е к^, а О к— как функция В к .

Определение 1. Шифром (шифрсистемой) назовем со­ вокупность

2 А = ( Х 9К 9У9Е9В)

введенных множеств, для которых выполняются следующие свойства:

1) для любых х е X и к е К выполняется равенство Е>к(Ек(х)) = х;

2) Г = 1 ) Е, ( Х) .

к е К

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

Отметим, что условие 1) отвечает требованию однознач­ ности расшифрования. Условие 2) означает, что любой эле­ мент у е У может быть представлен в виде Е к( х ) для под­ ходящих элементов х е X и к е К . Отметим также, что в

75

/ лава 2

общем случае утверждение “для любых к е К и у е Е к(X )

выполняется равенство Ек(Ок (у)) = у ” является неверным.

Легко проверить, что из условия 1) следует свойство инъективности функции Ек. Другими словами, если х ]9х 2 е X , причем х х Ф х 2, то при любом к ^ К выполняется неравен-

ство Д ( х ,) * Ек(х2).

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

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

Введем теперь вероятностную модель шифра. Следуя

К. Шеннону [ШенбЗ], определим

априорные распределения

вероятностей Р(Х ), Р (^ )

на множествах X

и К соответст­

венно. Тем самым для любого х е

X определена вероятность

р х (х ) е

Р(Х )

и для любого

к е К

— вероятность

р К(к ) е

Р (К ) , причем выполняются равенства

 

2

Рх(х) = \

И ^

р К(к) = \.

 

х е Х

 

к е К

 

В тех случаях, когда нам требуется знание распределений Р(X ) и Р(АГ), мы будем пользоваться вероятностной моде­

лью , состоящей из пяти множеств, связанных условиями 1) и 2) определения 1, и двух вероятностных распределений:

Е В = (Х ,К ,7 ,Е ,Д Р (Т ),Р (Ю ) .

Забегая вперед, отметим, что вероятностные характери­ стики шифров используются лишь в криптоанализе — разде­

76

Основные понятия

ле криптографии, посвященном решению задач вскрытия (или взлома) шифров.

В большинстве случаев множества X и У представляют собой объединения декартовых степеней некоторых мно­ жеств А и В соответственно, так что для некоторых нату­ ральных Ь и Ц

Х = (] Л ', У = 1 ) В ‘ .

/=1 /=1

Множества А и В называют соответственно алфавитом открытого текста и алфавитом шифрованного текста.

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

букв.

 

 

 

 

 

Введем шифр простой замены в алфавите А .

 

 

 

 

 

ь

 

Определение

2. Пусть

X = У =

А1, К с; 8(А), где

 

 

 

 

/ = 1

 

В(А)

симметрическая группа подстановок множества

А .

Для любого

ключа

к ^ К ,

открытого

текста

х = (х19...9х 1) и шифрованного текста у = (у х

прави­

ла зашифрования и расшифрования шифра простой замены в алфавите А определяются формулами:

Е 1с(х) = (к(х{),...,к(х1)),

В(С у) = (*~'СУ|

где к~х подстановка, обратная к к.

В более общей ситуации для шифра простой замены

/.I

X = \ ^ А \

У = \ ^ В 1, причем |д |= |5 |,

а К представляет

/=1

1=\

 

собой множество биекций множества А

на множество В .

Правила зашифрования и расшифрования определяются для 77

/ лава 2

к е К, х е X , у е У (и обратной к к биекции к 1) формула­ ми (1).

Определим еще один шифр, называемый шифром пере­

становки.

 

 

 

 

 

Определение 3. Пусть X = У = А 1 и пусть К с: 8 1, где

8 (

симметрическая

группа

подстановок множества

М

, . . . , 4

Для любого

ключа

к ,

открытого текста

х = (х1,...,х/ ) и шифрованного текста

У = (У\9~-9У1 ) пра­

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

Е к(х) = (хк(1)>-,**(!)), Л к (У) =

где к 1 — подстановка, обратная к к .

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

Приведем пример асимметричного шифра.

В следующем определении шифра К8А мы будем пользо­ ваться общепринятыми в алгебре терминологией и обозначе­ ниями (см. Приложение 3).

Определение 4. Пусть п - р ^ , где р и ц простые числа. Пусть X = У = Ъп кольцо вычетов по модулю п . Положим

к = {(п ,р , д, а, Ь): а,Ь е 2„, п =рд, аЪ = 1(тос1$и))},

78

Основные понятия

где ф функция Эгтера. Предстаешь ключ к е К в виде

к = (к3,кр) , где к3 =(п,Ь) и кр = (п ,р ,ц ,а ) ключи за­

шифрования и расшифрования соответственно. Правила зашифрования и расшифрования шифра К8А определим для

х е X и у

формулами:

 

Е кз(х) = х ь т ойп, О к^(у) = у а тойп. (2)

Аббревиатура К8А определяется начальными буквами фамилий создателей этого шифра — Клуез!, 8Ьагтг, АсИетап. Корректность формул (2) следует из малой теоремы Ферма (подробнее это сделано в § 11.1).

Введенные определения и термины не исчерпывают пол­ ный перечень необходимых нам понятий, которые будут вво­ диться далее по необходимости.

§ 2.5. Модели открытых текстов

Введенная нами математическая модель шифра Е в (см.

§ 2.4) содержит вероятностные распределения Р (Х ) и Р(К )

на множествах открытых текстов и ключей соответственно. Если Р(К ) определяется свойствами устройств, служащих

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

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

79

Глава 2

Математические модели открытого текста

Потребность в математических моделях открытого текста продиктована, прежде всего, следующими соображениями. Во-первых, даже при отсутствии ограничений на временные и материальные затраты по выявлению закономерностей, имеющих место в открытых текстах, нельзя гарантировать того, что такие свойства указаны с достаточной полнотой. Например, хорошо известно, что частотные свойства текстов в значительной степени зависят от их характера. Поэтому при математических исследованиях свойств шифров прибегают к упрощающему моделированию, в частности, реальный от­ крытый текст заменяется его моделью, отражающей наиболее важные его свойства. Во-вторых, при автоматизации методов криптоанализа, связанных с перебором ключей, требуется “научить” ЭВМ отличать открытый текст от случайной по­ следовательности знаков. Ясно, что соответствующий крите­ рий может выявить лишь адекватность последовательности знаков некоторой модели открытого текста.

Один из естественных подходов к моделированию от­ крытых текстов связан с учетом их частотных характеристик, приближения для которых можно вычислить с нужной точно­ стью, исследуя тексты достаточной длины (см. Приложе­ ние 1). Основанием для такого подхода является устойчивость частот А:-грамм или целых словоформ реальных языков че­ ловеческого общения (то есть отдельных букв, слогов, слов и некоторых словосочетаний). Основанием для построения мо­ дели может служить также и теоретико-информационный подход, развитый в работах К. Шеннона [ШенбЗ],

Учет частот к -грамм приводит к следующей модели от­

крытого текста. Пусть Р <"к){А) представляет собой массив,

состоящий из

приближений для вероятностей р(Ь{Ь2--Ьк)

появления А;-грамм Ь]Ь2.,Ък в открытом

тексте,

А е Ы ,

А = {а]9...9ап}

— алфавит открытого текста,

Ь1е А,

/ = 1,Аг.

80