Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[244]

г

9

8

7

6

5

4

3

2

1

0

bi

1

0

0

0

1

1

0

0

0

0

с

1

2

4

8

17

35

70

140

280

560

d

7

49

157

526

160

241

298

166

67

1

Рис. 33.4 Работа процедуры MODULAR-ExPONENTATION при а = 7, Ъ = 560 = (1000110000) и п = 561. Показаны значения переменных после очередного исполнения тела цикла for. Процедура возвращает ответ 1.

33.6-1

Найдите порядки всех элементов вНайдите наименьшую

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

33.7-2

Предложите алгоритм вычисления ab mod га, который обрабатывает биты двоичной записи Ь справа налево (от старших к младшим).

33.7-3

Объясните, как вычислить a~l mod га для а £ Z* при помощи процедуры Modular-Exponentation, если известно значение <р(п).

33.7. Криптосистема RSA с открытым ключом

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

Криптосистема RSA основана на таком обстоятельстве: в настоящее время известны эффективные алгоритмы поиска больших простых чисел, но не известно сколько-нибудь приемлемого по времени работы алгоритма разложения произведения двух больших простых чисел на множители. Мы рассмотрим эти задачи (проверка простоты и разложение на множители) в разделах 33.8 и 33.9.

Криптосистемы с открытым ключом.

При использовании таких систем каждый участник переговоров имеет открытый ключ (public key) и секретный ключ (secret key).


В системе RSA ключ состоит из пары целых чисел. Участников переговоров может быть несколько, но для примера мы будем говорить о переговорах Алисы (А) и Боба (В). Их открытые ключи мы будем обозначать Ра и Рв, а секретные - Sb и Sb-

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

Обозначим через V множество всех возможных сообщений (например, это может быть множество всех битовых строк). Потребуем, чтобы каждый ключ задавал перестановку множества V, и через Ра() и Sa() будем обозначать перестановки, соответствующие ключам Алисы. Мы считаем, что каждая из перестановок Ра() и $а() может быть быстро вычислена, если только известен соответствующий ключ.

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

M = SA(PA(M)),(33.37)

и

M = PA(SA(M)).(33.38)

было выполнено для любого сообщения М £ V.

Самое главное - чтобы никто, кроме Алисы, не мог вычислять функцию Sa() за разумное время; именно на этом основаны все полезные свойства криптосистемы, перечисленные выше. Потому-то Алиса и держит значение Sa в секрете: если кто-либо узнает её секретный ключ, он сможет расшифровывать адресованные ей сообщения, подделывать её подпись или перевирать сообщения, которые она отправляет от своего имени. Главная трудность при разработке криптосистем состоит в том, чтобы придумать функцию SaQ, Для которой трудно было бы найти быстрый способ вычисления, даже зная такой способ для обратной функции PaQ-

Опишем процесс пересылки шифрованного сообщения. Допустим, Боб желает послать Алисе секретное сообщение. Это происходит так:

•Боб находит Ра - открытый код Алисы (по справочнику или прямо от Алисы)

•Боб зашифровывает своё сообщение М и посылает Алисе шифровку (ciphertext) С = Ра(М).

•Алиса получает С и восстанавливает изначальное сообщение M = SA(C).

Этот процесс показан на рис. 33.5.


надписи:

encrypt - шифрование communication channel - линия связи eavesdropper - злоумышленник decrypt - расшифровка Боб, Алиса

Рис. 33.5 33.5 Шифрование с открытым ключом. Боб шифрует сообщение М с помощью функции Ра и получает шифровку С = Ра(М). Функции Sa() и Ра{) взаимно обратны, поэтому Алиса может восстановить исходное сообщение М по шифровке: М = Sa(C). Никто, кроме Алисы, не знает способа вычисления Sa (), поэтому сообщение М останется секретным, даже если злоумышленник подслушает С и знает Ра-

sign - вычисление подписи verify - проверка подписи accept - сообщение подлинное

Рис. 33.6 33.6 Цифровая подпись в системе с открытым ключом. Алиса подписывает своё сообщение М, прикладывая к нему цифровую подпись <т = Sa(M). Боб, получая от Алисы пару (М, <т), проверяет соотношение М = Ра(&)- Если оно выполняется, подпись и само сообщение подлинны.

Теперь объясним, как снабдить сообщение электронной подписью. Пусть Алиса хочет послать Бобу ответ М, подписанный электронной подписью (рис. 33.6).

•Алиса вычисляет электронную подпись (digital signature) а = Sa(M).

•Алиса посылает Бобу пару (М,а), состоящую из сообщения и подписи.

•Боб получает пару (М7, а) и убеждается в подлинности подписи, проверив равенство М = Ра(сг).

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

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

При таком сценарии содержимое подписанного сообщения не



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15] [стр.16] [стр.17] [стр.18] [стр.19] [стр.20] [стр.21] [стр.22] [стр.23] [стр.24] [стр.25] [стр.26] [стр.27] [стр.28] [стр.29] [стр.30] [стр.31] [стр.32] [стр.33] [стр.34] [стр.35] [стр.36] [стр.37] [стр.38] [стр.39] [стр.40] [стр.41] [стр.42] [стр.43] [стр.44] [стр.45] [стр.46] [стр.47] [стр.48] [стр.49] [стр.50] [стр.51] [стр.52] [стр.53] [стр.54] [стр.55] [стр.56] [стр.57] [стр.58] [стр.59] [стр.60] [стр.61] [стр.62] [стр.63] [стр.64] [стр.65] [стр.66] [стр.67] [стр.68] [стр.69] [стр.70] [стр.71] [стр.72] [стр.73] [стр.74] [стр.75] [стр.76] [стр.77] [стр.78] [стр.79] [стр.80] [стр.81] [стр.82] [стр.83] [стр.84] [стр.85] [стр.86] [стр.87] [стр.88] [стр.89] [стр.90] [стр.91] [стр.92] [стр.93] [стр.94] [стр.95] [стр.96] [стр.97] [стр.98] [стр.99] [стр.100] [стр.101] [стр.102] [стр.103] [стр.104] [стр.105] [стр.106] [стр.107] [стр.108] [стр.109] [стр.110] [стр.111] [стр.112] [стр.113] [стр.114] [стр.115] [стр.116] [стр.117] [стр.118] [стр.119] [стр.120] [стр.121] [стр.122] [стр.123] [стр.124] [стр.125] [стр.126] [стр.127] [стр.128] [стр.129] [стр.130] [стр.131] [стр.132] [стр.133] [стр.134] [стр.135] [стр.136] [стр.137] [стр.138] [стр.139] [стр.140] [стр.141] [стр.142] [стр.143] [стр.144] [стр.145] [стр.146] [стр.147] [стр.148] [стр.149] [стр.150] [стр.151] [стр.152] [стр.153] [стр.154] [стр.155] [стр.156] [стр.157] [стр.158] [стр.159] [стр.160] [стр.161] [стр.162] [стр.163] [стр.164] [стр.165] [стр.166] [стр.167] [стр.168] [стр.169] [стр.170] [стр.171] [стр.172] [стр.173] [стр.174] [стр.175] [стр.176] [стр.177] [стр.178] [стр.179] [стр.180] [стр.181] [стр.182] [стр.183] [стр.184] [стр.185] [стр.186] [стр.187] [стр.188] [стр.189] [стр.190] [стр.191] [стр.192] [стр.193] [стр.194] [стр.195] [стр.196] [стр.197] [стр.198] [стр.199] [стр.200] [стр.201] [стр.202] [стр.203] [стр.204] [стр.205] [стр.206] [стр.207] [стр.208] [стр.209] [стр.210] [стр.211] [стр.212] [стр.213] [стр.214] [стр.215] [стр.216] [стр.217] [стр.218] [стр.219] [стр.220] [стр.221] [стр.222] [стр.223] [стр.224] [стр.225] [стр.226] [стр.227] [стр.228] [стр.229] [стр.230] [стр.231] [стр.232] [стр.233] [стр.234] [стр.235] [стр.236] [стр.237] [стр.238] [стр.239] [стр.240] [стр.241] [стр.242] [стр.243] [стр.244] [стр.245] [стр.246] [стр.247] [стр.248] [стр.249] [стр.250] [стр.251] [стр.252] [стр.253] [стр.254] [стр.255] [стр.256] [стр.257] [стр.258] [стр.259] [стр.260] [стр.261] [стр.262] [стр.263] [стр.264] [стр.265] [стр.266] [стр.267] [стр.268] [стр.269] [стр.270] [стр.271] [стр.272] [стр.273] [стр.274] [стр.275] [стр.276] [стр.277] [стр.278] [стр.279] [стр.280] [стр.281] [стр.282] [стр.283] [стр.284] [стр.285] [стр.286] [стр.287] [стр.288] [стр.289] [стр.290] [стр.291] [стр.292] [стр.293] [стр.294]