17571

Атаки на алгоритм RSA. Взлом RSA при неудачном выборе параметров криптосистемы

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа № 4.1 Тема: Атаки на алгоритм RSA. Взлом RSA при неудачном выборе параметров криптосистемы. Цель: изучить атаки на алгоритм шифрования RSA посредством метода Ферма атаки повторным шифрованием атаки на основе китайской теоремы об остатках и метода к

Русский

2013-07-04

600 KB

143 чел.

Лабораторная работа № 4.1

Тема: Атаки на алгоритм RSA. Взлом RSA при неудачном выборе параметров криптосистемы.

Цель: изучить атаки на алгоритм шифрования RSA посредством метода Ферма, атаки повторным шифрованием, атаки на основе китайской теоремы об остатках и метода ключевого чтения. Ознакомиться с приринципом их реализации средствами прогамм  Bcalc и PS.

Задание:

1. Ознакомиться с теоретическими положениями, посвященными принципам реализации атак на RSA.

2. При изучении метода Ферма:

– используя разложение модуля на простые числа методом Ферма и полученные исходные данные, определить следующие показатели:

– множители модуля (p и q);

– значение функции Эйлера для данного модуля ;

– обратное значение экспоненты по модулю ;

– дешифровать зашифрованный текст, исходный текст должен быть фразой на русском языке;

3. При изученнии атаки повторным шифрованием:

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

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

4. При изучении атаки, основанной на китайской теореме об остатках:

– по полученным данным определить значения r и s при условии, чтобы e1re2s  =1. Для этого необходимо использовать расширенный алгоритм Евклида;

– используя полученные выше значения r и s, записать исходный текст;

5. При изучении атаки методом бесключевого чтения:

– получить вариант задания у преподавателя (табл. 4 приложения). Экспонента для всех вариантов е = 3;

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

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

Структура отчета

  1.  Титульный лист.
  2.  Тема и цель работы.
  3.  Задание и номер варианта.
  4.  Краткие теоретические сведения.
  5.  Ход работы.
  6.  Выводы.

Теоретические сведения

Концепция криптографии с открытым ключом была предложена Уитфилдом Диффи (Whitfield Diffie) и Мартином Хеллманом (Martin Hellman), и, независимо от них, Ральфом Мерклом (Ralph Merkle). Основная идея заключается в том, чтобы использовать ключи парами, состоящими из ключа зашифрования и ключа расшифрования, которые невозможно вычислить один из другого.

Алгоритм является общедоступным, нет необходимости в секретных каналах связи. Общая схема выглядит следующим образом:

1. Каждый пользователь генерирует пару ключей: один для шифрования, другой для дешифрования.

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

3. Если пользователь A собирается послать сообщение пользователю B, он шифрует сообщение открытым ключом пользователя B.

4. Когда пользователь B получает сообщение, он дешифрует его с помощью своего личного (секретного) ключа. Другой получатель не сможет дешифровать сообщение, поскольку личный ключ B знает только B.

Описание алгоритма RSA

В 1978 г. появилась работа, в которой Рон Райвест (Ron Rivest), Ади Шамир (Adi Shamir) и Лен Адлеман (Len Adleman) предложили алгоритм с открытым ключом. Схема Райвеста–Шамира–Адлемана (RSA) получила широкое распространение.

Опишем процесс шифрования. Исходный текст должен быть переведен в числовую форму, этот метод считается известным. В результате этого текст представляется в виде одного большого числа. Затем полученное число разбивается на части (блоки) так, чтобы каждая из них была числом в промежутке
[0,
N1] (о выборе N — см. ниже). Процесс шифрования одинаков для каждого блока. Поэтому мы можем считать, что блок исходного текста представлен числом x, .

Каждый абонент вырабатывает свою пару ключей. Для этого он генерирует два больших простых числа p и q, вычисляет произведение . Затем он вырабатывает случайное число e, взаимно простое со значением функции Эйлера от числа N,  и находит число d из условия
ed = 1(mod φ(N)).

Так как НОД, то такое число d существует и оно единственно. Пару (N, e) он объявляет открытым ключом и помещает в открытый доступ. Пара (N, d) является секретным ключом. Для расшифрования достаточно знать секретный ключ. Числа p, q,  в дальнейшем не нужны, поэтому их можно уничтожить.

Пользователь A, отправляющий сообщение x абоненту B, выбирает из открытого каталога пару (N, e) абонента B и вычисляет шифрованное сообщение . Чтобы получить исходный текст, абонент B вычисляет . Так как , т. е. , где k – целое, то применяя теорему Эйлера,  получим: следующее соотношение: .

Пример 1. Пусть p = 7, q = 17. Тогда N = 7∙17 = 119,  Выбираем значение е: . Пусть в нашем случае e = 5. Находим d: . Получаем d = 77, так как 77∙5 = 4∙96 + 1. Открытый ключ (119,5), личный ключ (119,77). Пусть х = 19. Для зашифрования число 19 возводим в 5-ю степень по модулю 119, тогда имеем 195 = 2 476 099 и остаток от деления 2 476 099 на 119 равен 66. Итак, y = 195 mod 119 = 66, а расшифрование x = 667 mod 119 = 19.

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

Безопасность алгоритма RSA основана на трудоемкости разложения на множители больших чисел. Современное состояние технических средств разложения на множители таково, что число, содержащее 193 десятичных знака, факторизовано в 2005 г. Следовательно, выбираемое N должно быть больше. Большинство общепринятых алгоритмов вычисления простых чисел p и q носят вероятностный характер.

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

Кроме разрядности p и q, к ним предъявляются следующие дополнительные требования:

–  числа не должны содержаться в списках известных больших простых чисел;

– они не должны быть близкими, так как иначе можно воспользоваться для факторизации N методом Ферма и решить уравнение .

– в алгоритме RSA всегда есть эквивалентные по расшифрованию показатели степеней, например d и . При этом эквивалентных решений тем больше, чем больше НОД(p1,q–1). В лучшем случае НОД(p1,q1)=2,
p = 2t + 1, q = 2s + 1, где s, t – нечетные числа с условием НОД(s, t) = 1.

Чтобы исключить возможность применения методов факторизации накладывают следующее ограничение: числа p1, p + 1, q1, q + 1 не должны разлагаться в произведение маленьких простых множителей, должны содержать в качестве сомножителя хотя бы одно большое простое число. В 1978 г. Райвест сформулировал наиболее сильные требования. Числа  должны быть простыми, причем
числа
p1 – 1 и q1 – 1 не должны разлагаться в произведение маленьких простых.

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

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

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

Атаки на алгоритм RSA

Для дешифрации необходимо по известным N, e и шифртексту y найти такое , что .

Попытаемся решить сравнение при конкретных y, затем использовать гомоморфность отображения D(x).

Один из возможных способов следующий: пусть имеется набор пар  с условием, что , 1 < y < N, (y, N) = 1. Если каким-либо образом удалось представить y в виде  с целыми sk, то  будет решением сравнения

Пример 3. В наличии имеется открытый ключ N = 31459, e = 5 и набор пар соответствующих друг другу исходных и зашифрованных сообщений: (23,
18707), (755, 26871), (631, 6384). Требуется расшифровать шифртекст
y = 11 638. Для этого представим y в виде  Отсюда легко вычислить исходное сообщение: .

Заметим, что этот подход не менее труден, чем поиск алгоритма решения сравнения

Взлом RSA при неудачном выборе параметров криптосистемы (Метод Ферма)

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

Пример 4. Пусть пользователь выбрал N = 2047, e = 179, d = 411. Так как 2047 = 2389, а  имеют наименьшее общее кратное 88, то любой обратный к 179 по модулю 88, например 59, будет действовать как d.

Пример 5. Число N = 536813567 является произведением простого числа Мерсенна 8191 и простого числа Ферма 65537. Это очень плохой выбор.

Пример 6. Число 23360947609 является очень плохим выбором для N из-за того, что два его простых делителя слишком близки к друг другу. Пусть p > q, тогда имеем . Обозначим: . Так как S мало, то t – целое число, лишь немного большее  причем t2 N является полным квадратом. Проверяем подряд целые числа  В нашем примере t1 = 152843, t2 = 152844, t3 = 152845 и тогдар = 152845 – 804. Таким образом, мы с третьей попытки нашли p и q. Количество попыток, необходимых для факторизации N, можно при известных p и q вычислить по следующей формуле: , где [x] – операция округления x до ближайшего целого числа.

Релизация атаки на алгоритм шифрования RSA посредством метода Ферма c помощью программы BCalc

Исходные данные: N = 65815671868057; e = 7423489; C = 38932868535359. Найти

1. Вычисляем n = [sqrt(N)] + 1. В поле A помещаем N, в поле B – 2; нажимаем кнопку «D = A^(1/B)». В поле D заносится число 8112686, в первую строку таблицы – сообщение «[error]». Это свидетельствует, о том, что N не является квадратом целого числа.

2. t1 = n + 1. Возводим число t1 в квадрат: A: = 8112687, B: = 2, C: = 0 (возведение в квадрат будет производиться не по правилам модульной арифметики), нажимаем «D = A^B mod C» => D = t1^2 = 65815690359969.

Вычисляем  w1 = t1^2 – N. Для этого A:= t1^2, B:= –N, затем нажимаем «D = A + B» => D= w1 = 18491912. Проверяем, является ли w1 квадратом целого числа: A:= w1,
B:= 2, нажимаем «D = A^(1/B)» => в первой строке таблицы появляется сообщение «[error]», следовательно проделываем п. 2 заново с t2 = n + 2 и так далее, пока не найдем, что некое wi является квадратом целого числа.

3. При вычислении квадратного корня w5 первая строка таблицы остается пустой, а D = sqrt(w5) = 9132, что свидетельствует об успехе факторизации.
t5 = 8112691.

4. Вычисляем p = t5 + sqrt(w5); A:= t5, B:= sqrt(w5), нажимаем «D = A + B»  => D = p = 8121823; q = t5 sqrt(w5) = 8103559.

Вычисляем Phi(N) = (p – 1)(q – 1), A:= 8121822, B:= 8103558, нажимаем «D = AB» => D= Phi(N) = 65815655642676.

Вычисляем d, как обратный к e: A:= e, B:= –1,
C:= Phi(N), нажимаем «D = A^B mod C» => D = d = 12490789985101.

5. Производим дешифрацию шифрблока С: A:= C; B:= d; C:= N. Нажимаем «D = A^B mod C». В поле D находится исходное сообщение M = 3402418120. Переводим M в текстовый вид. Для этого A:= M, нажимаем «D = text(A)» => D =  = «КМЗИ».

Снимок экрана с окном программы «BCalc» приведен ниже.

Атака повторным шифрованием

Строим последовательность: . Итак, , а так как НОД, то существует такое натуральное число m, что . Но тогда , отсюда следует, что , значит, ym-1 – решение сравнения .

Пример 7. Пусть у нас имеется открытый ключ N =84517 , e = 397 и зашифрованное им сообщение y = 8646. Необходимо найти исходный текст x. Возведем y в степень e и получим y2 = 37043. Будем повторять операцию до тех пор, пока не получим yn = y. yn-1 – искомое сообщение: y3 = 5569, y4 = 61833,
y5 = 83891, y6 = 16137, y7 = 8646. y6 является решением сравнения , а, следовательно, искомым сообщением x.

Замечание. Анализ метода повторного шифрования хорошо показывает необходимость соблюдения требований на выбор p и q для обеспечения стойкости. В данном примере d = 82 225. Неудачный выбор криптосистемы привел к тому, что атака методом повторного шифрования дала результат почти сразу, тогда как нахождение d потребовало бы на порядок больших вычислений.

Реализация атаки на алгоритм шифрования RSA методом повторного шифрования c помощью программы PS

Исходные данные: N = 453819149023; e = 1011817; C = 442511634532.

1. Определить порядок экспоненты. Для этого необходимо ввести значение модуля в поле N, экспоненты в поле e, в поле Y записывается произвольное число, меньше чем N. После этого нужно нажать кнопку Запуск повторного шифрования и дождаться, пока в поле X появится значение, равное корню е степени от числа Y по модулю N, а в поле i порядок e в конечном поле . В данном примере он составляет 435.

2. Дешифровать зашифрованный текст. Для этого нужно в область редактирования поля C поместить блоки зашифрованного текста, разделенные символом конца строки, значение модуля в поле N, экспоненты в поле e и порядка экспоненты в поле i. Затем нажать на кнопку Дешифрация и дождаться появления исходного текста в области редактирования M. Ответ – открытый текст – «null».

Атака на основе Китайской теоремы об остатках

Как отмечалось ранее, системы шифрования с открытыми ключами работают сравнительно медленно. Для повышения скорости шифрования RSA на практике используют малую экспоненту зашифрования.

Если выбрать число е небольшим или таким, чтобы в его двоичной записи было мало единиц, то процедуру шифрования можно значительно ускорить. Например, выбрав е = 3 (при этом ни р – 1, ни q 1 не должны делиться на 3), мы сможем реализовать шифрование с помощью одного возведения в квадрат по модулю N и одного перемножения. Выбрав  65 537 – число, двоичная запись которого содержит только две единицы, мы сможем реализовать шифрование с помощью 16 возведений в квадрат по модулю N и одного перемножения. Если экспонента е выбирается случайно, то реализация шифрования по алгоритму RSA потребует s возведений в квадрат по модулю N и в среднем s/2 умножений по тому же модулю, где 5 – длина двоичной записи числа N. Вместе с тем выбор небольшой экспоненты е может привести к негативным последствиям. Дело в том, что у нескольких корреспондентов могут оказаться одинаковые экспоненты е.

Пусть, например, три корреспондента имеют попарно взаимно простые  модули N1, N2, N3 и общую экспоненту е = 3. Если еще один пользователь посылает им некое циркулярное сообщение x, то криптоаналитик противника может получить  в  свое  распоряжение  три   шифрованных   текста
i = 1, 2, 3. Далее он может найти решение системы сравнений, лежащее в интервале 0 < y < N1N2N3

По китайской теореме об остатках такое решение единственно, а так как , то y = x3. Значение х можно найти, вычислив кубический корень .

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

Пример 8. Три пользователя имеют модули N1 = 26549, N2 = 45901,
N3 = 25351. Все пользователи используют экспоненту e = 3. Всем пользователям было послано некое сообщение x, причем пользователи получили сообщения y1 = 5366, y2 = 814, y3 = 4454. Найдем M0 = N1N2N3 = 30893378827799. Далее находим

m1 = N2N3 = 1163636251

m2 = N1N3 = 673043699

m3 = N1N2 = 1218625649

n1 = m1-1 mod N1 = 13533

n2 = m2-1 mod N2 = 27930

n3 = m3-1 mod N3 = 22354

S = y1n1m1 + y2n2m2 + y3n3m3 = 84501028038745578 + 15301661957638980 + + 121332116653000684 = 221134806649385242

S mod M0 = 1000000000

x = (S mod M0)1/3 = 1000 – исходное сообщение, отправленное пользователям.

Атака на алгоритм шифрования RSA, основанная на китайской теореме об остатках, c помощью программы «BCalc»

Исходные данные: N1 = 363542076673; N2 = 728740902979;
N3 = 522993716719; C1 = 246562834516; C2 = 291375746601; C3 = 222724269731.

Последовательно вычисляем следующие значения:

M0 = N1N2N3 = 138555669564008119302694433926047373;

m1 = N2N3 = 381126913374147389205901;

m2 = N1N3 = 190130221862955939995887;

m3 = N1N2 = 264927981225542872108867;

n1 = m1^ (–1) mod N1 = 287993142707;

n2 = m2^ (–1) mod N2 = 106614970676;

n3 = m3^ (–1) mod N3 = 32171022265;

S = c1n1m1 + c2n2m2 + c3n3m3 = 34867892796403337952181607384067689087012354329;

S mod M0 = 67675640795094503562173784000;

M = (S mod M0)^(1/e) = 4075154940;

text(M) = «тень».

Ниже приведен снимок экрана с окном программы «BCalc».

Бесключевое чтение

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

Пример 9. Два пользователя применяют общий модуль N = 137759, но разные взаимно простые экспоненты e1 = 191 и e2 = 233. Пользователи получили шифртексты y1 = 60197 и y2 = 63656, которые содержат одно и то же сообщение. Найдем исходное сообщение методом бесключевого чтения. Так как e1 и e2 взаимно просты, то найдем такие r и s, что  С помощью расширенного алгоритма Евклида находим r = 61, s = –50. Искомое сообщение

Атака на алгоритм шифрования RSA методом бесключевого чтения c помощью программы «bcalc»

Исходные данные: N = 357114156277; e1 = 1025537; e2 = 722983;
C1 = 68639736967; C2 = 204258645263.

1. Решаем уравнение e1re2s = ±1. Для этого в поле A помещаем значение e1, в поле B – значение e2. Нажимаем кнопку «AD – BC = N», затем – кнопку C = s = 406030; D = r = 286243.

2. Производим дешифрацию: c1 возводим в степень r, а c2 – в степень –s по модулю N, тогда c1^r = 189703239311, c2^(–s) = 104340380259.

После этого результаты перемножаем и получаем, что m^(e1re2s) =
= 19793708126073817161549. Д
алее берем модуль от полученного значения:  (m^(e1re2s) mod N) = 1381187873 и преобразуем в текст «RSA!».

Ниже приведен снимок экрана с окном программы «BCalc».

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

Описание программы «BCalc»

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

– преобразование числа в данные и обратно;

– возведение в степень по модулю;

– вычисление обратных значений по модулю;

– нахождение целых корней любых натуральных степеней;

– нахождение подходящих дробей для цепной дроби.

Описание интерфейса программы

В окне программы находятся следующие элементы интерфейса:

– поля ввода, помеченные латинскими буквами A, B, C, D;

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

– нижняя группа кнопок, предназначенных для очистки полей и таблицы;

– таблица для хранения промежуточных результатов.

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

Для любого поля таблицы можно вызвать контекстное меню указателем мыши, нажав ее правую кнопку, в котором содержатся следующие пункты:

– «To [поле ввода]» – копирует значение ячейки таблицы в соответствующее поле ввода;

– «From [поле ввода]» – копирует значение соответствующего поля ввода в выбранную ячейку таблицы.

Кнопки «Clear D», «Clear A, B, C», «Clear grid» очищают соответственно поле D, поля A, B, C – таблицу.

Кнопка «Increase number of rows» увеличивает количество строк в таблице на пять.

Кнопка «D – > A» копирует значение, находящееся в данный момент в поле D, в поле A. Кнопка «D – >» копирует значение поля D в первую сверху пустую ячейку второй колонки таблицы.

Остальные кнопки запускают математические функции, описанные ниже.

Математические функции программы

«D = A + B» – значения A и B складываются, результат помещается
в поле
D.

«D = AB» – значения A и B перемножаются, результат помещается
в поле
D.

«D = A div B» – в D помещается результат целочисленного деления A на B.

«D = A mod B» – в D помещается остаток от целочисленного деления
A на B.

«D = A^B mod C» – в D помещается результат возведения A в степень B по модулю C. Экспонента может быть отрицательным числом. Если поле C = 0, то возведение в степень будет происходить не по правилам модульной арифметики. В таком случае не стоит задавать в качестве экспоненты большие числа, так как вычисления могут занять слишком много времени. Невозможно также вычислять обратные значения, если в качестве модуля задан ноль.

«D = A^(1/B)» – в поле D помещается корень B степени от A. Если в результате извлечения корня получилось нецелое число, то в D помещается ближайшее бόльшее целое число, а в первой строке таблицы появится надпись «[error]».

«A ∙ D – B ∙ C = N», где – A – числитель дроби; B – знаменатель подходящей дроби n порядка. В поле C будет помещен числитель, а в D – знаменатель подходящей дроби n-1 порядка. В первую строку таблицы будет помещено значение выражения A ∙ DB ∙ C. Если после начала вычисления дроби поля C и D равны нулю, то это значит, что числа A и B не взаимно просты.

«D = text(A)» – число A интерпретируется как строка из символов в ANSI- кодировке. Строка помещается в поле D.

«D = number(A)» – строка A, состоящая из символов, интерпретируется как число и помещается в поле редактирования D.

В программе используется модернизированный модуль «BigNum v2.0»
(Jes R. Klinke).

Описание программы «PS»

Программа PS предназначена для нахождения порядка чисел в конечном поле  и дешифрации сообщений методом перешифрования.

Нахождение порядка чисел

Для нахождения порядка числа методом перешифрования следует указать в поле редактирования N значение модуля, в поле e экспоненты, а в поле Y – произвольное число, меньшее чем модуль. При нажатии кнопки Запуск повторного шифрования программа начнет возводить число Y в степень e (т. е. ) до тех пор, пока Yi не будет равен Y. Значение , а число шагов повторного шифрования является порядком числа e в конечном поле ZPhi(N). При завершении работы алгоритма в поле i будет записано количество шагов повторного шифрования, а в поле X – значение Yi-1 . Во время работы программы кнопка Pause приостанавливает работу алгоритма. Для продолжения работы следует нажать кнопку Pause еще раз. Флаг «Show results» указывает, будут ли отображаться результаты промежуточных вычислений. Его отключение увеличивает скорость работы приблизительно на 20 %.

Дешифрации сообщений методом перешифрования

Для дешифрации сообщения необходимо указать в поле редактирования N значение модуля, в поле e – экспоненты, в поле i – порядок экспоненты, а в область редактирования C поместить блоки зашифрованного текста (разделитель – символ конца строки). При нажатии кнопки Дешифрация начнется процесс вычисления исходного сообщения. Результат будет помещен в область редактирования M.

В программе используется модернизированный модуль «BigNum v2.0» автор (Jes R. Klinke).

Контрольные вопросы

Варианты заданий для лабораторных работ

Таблица 1

Варианты исходных данных к заданию 2

Вариант

Модуль, N

Экспонента, е

Блок зашифрованного текста, C

1

99595193774911

1908299

75790643190143

36869061035180

38422576553598

68899435645717

16193161920958

98487458352335

34167725433806

96613844267045

26583768908805

73052827576371

94695336463618

69092596694070

2

95841214023781

2005229

49190327214217

84609592142386

90112415897890

58321768145112

18048020096041

46703140105758

5914356051570

1805696039350

28838003818624

70062757763886

13846553049563

90432970156505

3

93767386321457

2091619

62984326732858

22123186696272

24425203655789

45995309006047

8176196426076

12816278693250

27474201663022

86909026690842

20469575723850

29205116646939

21002901408912

79168478687790

4

89318473363897

2227661

3403106899606

26746900101177

67769260919924

77873792354218

15782947730235

15100267747684

28877721728826

62898555111378

4989704651236

55293402838380

4108112294245

8492269964172

5

87046121832829

2342047

38288567928461

32933111631628

3796990272007

14526017018271

6637183116942

46455894660145

17024410119252

49991104309343

20967672129390

3377231740209

37201047739579

56818318686813

6

85609460573249

2448539

523815866990

26788001211021

34569932939126

85581094055910

23256663175806

62527703621248

7622521689363

32655715523491

81242663069415

60438288306445

73937478628138

7793112362388

7

84032429242009

2581907

54879925681459

72167008182929

17828219756166

17814399744948

37136636080011

77223434260215

4272415279426

73759271926435

74021335775875

16903113250201

77520052156956

41247980943013

8

81177745546021

2711039

61553353723258

11339642237403

55951185642146

38561524032018

34517298669793

33641624424571

78428225355946

50176820404544

68017840453091

5507834749606

26675763943141

47457759065088

9

78908333904637

2821057

66488995800290

61829195949215

75187156530365

66944513684556

15641889286263

25273508344802

33011686981708

63079735408371

71989137480846

15936556748887

35940951317181

65389528900590

10

77027476849549

2936957

18937689886043

6667195679130

53238895771820

6189192838687

48623327840257

47264919314001

42510070950746

16878504505970

22744978157662

23644842894223

71614018816334

24651499733229

11

7533841359567

3063167

20373576587572

48282448633797

2859826820449

30302044163645

30736783387104

5008734894376

23296448238734

41172678840173

58656690066465

44574048719827

21962937148701

38826220113907

12

74701165267919

3145553

32035658541536

35242897170964

6268303368709

6877322610982

16329207109754

35007623593376

26715311593240

36220800128563

25019660581036

61639733671958

21186453949445

72477207535811

13

72903890242273

3261683

37429454018574

65632293727338

71955235122455

71474662312159

18537435780920

58372142077460

68330829196451

60882917270796

24142764117328

31238010810556

66143215653810

30769266886306

14

70109121369029

3401467

65044661056628

62698810905915

6384243931214

64581496145197

34821902367398

47317941132118

31834994240307

32916261351098

27399527764660

20797651714466

56226270748693

51223181240405

15

67510894259489

3543923

1834956116931

7762509478845

22384877417897

36443182878894

61287041306052

17680469174617

14632055288035

23212409940234

45782556562975

7533626343287

14537172455552

60777304839141

16

64806601923671

3676721

20691828453967

58551582619533

52687210920168

20981648665029

19111617348524

54100651527277

13292121860367

56392703591321

14438767538210

42480181826283

48812319440355

15451410455351

17

62781628076903

3804071

25330591599065

45107236866391

8515908980750

18360023777159

60224747641795

24722319023840

4621794604408

11003643584575

42083518378885

62245525096402

41697616662831

32054453631323

18

60902079700513

3914857

31747356280388

54631087879066

42721453914357

12859490321362

47949527200923

39725118829906

37400171509625

34240435626806

20191794760289

16358289451487

35717279691675

60689890535412

19

59046883376179

4044583

32279109612093

17838629182964

4165776716262

13093284635895

20048651313008

54626454832531

12801053743903

54675332003643

4544911979279

31928373564570

798945495513

19569174668782

20

55925060669503

4156793

53145801111837

24757475715890

19729078348176

49091835965654

29986321429979

35162644705488

45317135042859

49645513101014

1804825908594

35789821714579

3713734911002

23648998987066

21

54296750879837

4282063

32264505547820

29767871186846

53860104221061

41263256335998

13036826201487

1768770254540

9330533044207

38163092407394

9296514119883

7805642363730

46249084085075

13177891469510

22

50824793010569

4440901

14852129687156

2828083503727

40199165363197

50374743756265

38804027318759

48809751439118

17692593759762

11950610647201

31150513650241

18538876359272

30210358214233

23631880532900

23

48992988576733

4545733

12530303611339

47274247086952

20068556933394

41300245344157

27564916776233

45997492729411

11416336760074

17516700753417

10586755223028

5642378694993

17949047899806

13276902592875

24

47050437355283

4674517

30307619697810

38075405389785

37116384337234

20795372941054

22354675528431

20104615399105

403582911849

16733578384925

37765786204941

16059974394842

10942482418438

39745386116422

25

42982346145803

4777621

19787649423728

18211753517576

29287420774392

15153812654780

18356070190939

42856511463744

9446489409913

31515169706630

40480861340273

5995498078936

1615344586866

6467700235586

26

40874866482797

4890013

30098470920348

10084491526640

23441958595352

33281521148728

37973385618526

9343475069587

2406343345685

7678583166238

37712932671543

31339429556436

26029018118292

35429221689605

27

37853809989851

5000881

810492251513

3192611214542

10318029344126

2220994223088

7937732363223

7917915062052

5784071798565

12491569110482

8519113859496

34533923334624

8671493920268

9656068990180

28

36382368990571

5138117

34729094860720

993016310794

32382972793694

11451559981371

27603779105556

2722565595283

27187050268006

14126480994141

30653849585538

29540033120497

20304283070750

5290885426574

29

33644210466973

5285461

2887763929737

14268468183889

17106478222082

11308338337725

22932870001788

22780920502986

3159009422412

22191880208231

24883589317156

20042326937734

21464252061935

6743660373779

30

30515981241589

5365813

6462676848037

11940196919771

26211958940622

16634847261054

8103271691885

2435085233132

6122398937225

12097045969811

16751413858962

23878019243430

23189713210013

13681118402740

Таблица 2

Варианты исходных данных к заданию 3

Вариант

Модуль, N

Экспонента, e

Блок зашифрованного текста, С

1

307080138389

358703

150223836156

41077612181

164221721708

163231492773

84606189584

211632968571

76644428054

67904620890

263054305449

31191567018

224545225463

30878012295

216396046580

2

707096259383

928253

6952874554

579478452421

88828702123

225263521086

340528371521

583666721140

254303812163

584762191247

620918717873

52726307774

172435791721

293646690249

323995569099

3

385181864647

938573

331245775481

282425324609

65377570000

89972965825

264803627317

320989226085

324723654667

294634302620

142237555971

221994269576

209958712589

221718426295

163788492835

4

489740760623

892627

237434928568

89382477865

257542914775

153947910848

219678068406

166466311168

49516725114

55375254449

370796045103

322927050068

196366079994

39243100230

299525662956

5

152206953707

959689

106157029398

26037756325

64970468176

111381095515

102219112033

10446585653

125818085975

140293474360

118182182667

102323948722

81537011095

534009223

79513867811

6

299547350633

854929

273814931280

42731365375

226290712100

144895466043

54022172482

256403869247

20427366939

109560373874

17926624122

276548101136

138551457160

178721641850

153958773591

7

255886599799

1042193

75872140695

243623122014

66870731769

142602808011

42354989089

119395329034

242619634774

180213272917

166447493863

167768838568

120544075858

77559779546

136453339801

8

290716329017

497729

1135414239

169213008965

175441050863

109545918774

123669279758

149542889269

43068653151

32806195453

285151390718

137668394392

140567677417

176736386447

218957656245

9

144050016983

1163719

90401727778

50205386780

66796441575

1200754589

25390276538

64927766600

89595489304

12806265575

95100428023

7746226795

126261029912

66580024238

118827632497

10

517284804989

1016137

393966099521

489691449904

125845553926

278237347671

101391774540

70812690734

166080101475

356969244744

59015316810

480894389103

454155667817

124365264763

412526965953

11

301916099393

301319

300229084086

103375119523

47856681522

299308768883

259681434827

155394796250

203569645393

81385593446

153370193599

11291771251

297354725266

71677781247

298448677628

12

680953235477

920197

391097155052

640128264104

655783446185

380882921502

243151555158

525608289811

439378081915

674406455075

295448137012

494853048412

566308391875

623790961908

222667625162

13

915012974539

1001953

763770087861

432343847598

764682728575

206635140312

627210520886

794063631890

309297959146

68118108284

116045398315

912085643674

257483784869

167814127445

55188158350

14

112546779899

280297

70526810403

14149862236

45856385641

70576010398

55035023176

13450029743

87602027501

5373321283

106271591904

105497609146

58279045288

104373761049

16432846070

15

674752561177

395173

419211463126

212906356161

631644741157

73228488037

302781784962

348369666049

269324039584

666490555214

580635922832

30319178550

304297088216

461362299290

408519568281

16

381864434327

1195459

163872954111

20331233144

247841893982

24077680684

186232454225

170708316287

287353419177

53300545679

235380537126

229388042972

213972178887

351137706462

71827041797

17

509394020393

466357

240117673168

198646030609

299632505275

245910981124

103645806141

129428103430

20356709898

492178278680

233595118807

334625983625

176223275722

244450104851

63497900496

18

1123918263359

1296973

337170174448

110065284116

225074454552

978078749787

1113908641985

396219512028

932134251667

1046744729838

458139532624

319141259386

1098244186318

139438193945

197233306845

19

762930465497

369197

272601390768

146191862405

56417639739

25010208392

569176485965

292815488501

152909580675

634319609453

578700740159

648142948177

39319966771

517127377434

490584971826

20

544136348213

358793

91846629660

119935413056

171909861239

312597665654

149569107987

217729521757

269500353046

510985189336

131214208695

241687081897

362099358567

467378483313

539916818577

21

836168881111

1031923

83092605748

825802235227

32508735922

407171918452

614975177493

774349835780

323601958615

82169286450

198807945618

594897575157

542729555491

812833939532

694084199661

22

914022837691

517823

133088999278

758078110965

705889026842

98403371042

768948684522

78137927374

383272719045

341665550116

407871370619

382219973835

653544166840

658599075370

825218892763

23

888532740131

508097

251133768996

359801014616

557356431645

75854873865

768478933532

624174758081

306027834198

586384787006

155294489444

358096762086

197284968232

498688500894

467532994504

24

175749265511

562439

148649649353

106749700084

111279099426

123808752263

135559497150

641323741

146710462903

18875910866

10741502182

84181024769

83326297438

168979058954

74728979200

25

226206740959

931169

90602081758

155748167901

43664963557

119662283421

128548684055

224153458766

195788143843

18231611138

35594188617

74744847247

54882677589

38908769560

166766625254

26

300104708753

983363

143263029236

113515979624

198998498966

232259814103

36155668324

142429090416

112345291625

27921291938

269458157437

298799815265

162143730402

126750403087

51777038634

27

333333164557

953093

5481684542

14785211849

24230838324

156363450797

254864312357

282334378772

101468922110

330970823045

53322569148

330510315592

287013027083

223374578887

26195032100

28

705703109311

795709

210618901858

461070758554

254341305329

432167203884

537128801619

307179448989

237267800094

276288788567

627186938797

7521018311

638757343218

263719789788

153146378944

29

414634315817

1039187

200343263939

13939901815

329718769183

169659670872

49667978685

11286581382

92461615100

173590557244

62542045222

310782145259

348390168011

308011216304

154928746700

30

81931393421117

1249841

53326375006739

60159105931963

20367806441444

77032482774732

38672218391631

6990304921236

44495129703609

76487744048201

58557027754174

1016517574381

49254811194021

674135756615

65887286918402

Таблица 3

Варианты исходных данных к заданию 4

Вариант

Модуль, N

Экспоненты

Блок зашифрованного текста

e1

e2

C1

C2

1

420882327013

1372369

961447

373413138774

142492164990

181970101695

71400620884

83588687662

111752930680

154836140461

191336073909

186412386345

303121580659

167437105893

279265271451

105783140624

384545054504

91022339898

266856044417

106548952403

160772152396

128969469496

242028887287

256618243529

47586486979

306022591934

419219258598

2

302296233419

1365787

763067

4735234112

222492941603

91642935786

258679721851

127352436654

270884254827

278389245811

229277148124

143477017416

56472903944

229332603068

60190953676

131720982156

50767819341

146687208678

65444189922

275196580101

21582029531

14338137631

4177778322

75624657756

274012339373

159018739186

49970035122

3

445632735571

1120289

559633

348555354398

351363944134

96907337112

141119651255

317600466893

84967944527

340088880266

311235549494

41838603784

333172824695

89494655477

3256803669

366337925832

29318249989

120058862823

428190500861

322426909958

286841513079

150392378882

441874945028

297137742269

304115257300

123106598046

110955623263

4

535598392051

455341

396971

444982997352

277831853272

133187882628

331361392426

273206302188

470299046774

168157171491

258737286129

312335302650

489235057221

427689116872

418723605534

135022585485

358696089912

360292494113

91390259562

534590606880

193203217609

166702058071

68207231399

487524624411

325841328769

533726724224

369967614519

247201359991

478832067683

5

572953270159

337903

301933

342095517391

19455909955

221503536026

316042040322

311339725976

339044089754

359623172126

138544673544

148226083413

3486028632

23290754913

425720995382

32476529608

452342848743

506694128118

262070340689

206245109461

116518622136

147952236274

457665805346

27001690429

396682057113

239803556225

519526641494

6

622722921281

924383

648391

416413766755

461616049371

495579558550

119296856822

288338597320

189325419759

179661796706

26462194558

543527404419

511749608651

131463006437

116692606609

363561291438

349913226640

410678799422

49400187802

264465166065

617558055726

378919757053

550605507870

341759776368

125364611909

288965980272

434023259043

7

516439217617

1206433

1141277

400408320444

241545246801

282223079755

490328978748

350509811006

142356755075

109547314116

414823859933

330990395685

377471732609

44017319588

499241372980

171071879560

374984721363

438491303024

498951362977

218681974856

365827206348

175049781656

359111505460

297734746741

96963152197

362138584797

102758207364

37817394150

120430068125

8

392117053283

744721

1297633

188779427301

142624237358

222856552604

64779987640

184552630472

357891671735

159800573947

320365191568

53704108470

29809614757

236651896578

5185872557

374026260505

330155414629

183843269790

113231290101

381735803560

115846890704

117837936469

188064551177

241636957582

253908524873

219235963059

333424804843

278400905892

254102728294

9

319418480417

602087

523639

52405618926

216147098445

216743861265

66972942908

191820297330

190353918873

110095200781

90183965366

296876615222

154988611456

166443759664

9906682687

82810335170

187684665216

48173641649

96024498047

247351492178

97241452868

255901558905

27364319220

227156630511

66990230889

183816391944

104719299259

10

308044228439

976013

667829

41142528888

168186504906

136093203364

242964689121

35088399935

235615713434

255931630761

243205294010

282148730043

167665545881

236133809262

248077895012

188066920245

300946560686

297065980706

52463722858

288700402082

74622590470

304422560213

89572425507

192865433148

279658192310

97431270440

276505744422

11

287726313019

632699

418997

214922055033

35721658373

111494982431

18199110430

42343010608

252248400710

63424999529

119923175349

154343666939

161871538168

66104514148

20594515433

120762948296

236363326198

60659772128

89634195001

159962549494

38784417281

280743496547

132419834073

260926903227

246447810193

110060458786

96973974426

175463381167

178887056429

12

385751370271

365797

1109663

58541562205

167003685579

381877628242

256218527098

164244249864

6588741823

180308234660

174572441677

259951955034

378589342820

319378579620

21405495597

226860843155

78032032470

13064174635

326727914830

364066420370

177576861402

65863828523

111437045566

124743274954

119577259869

85769669875

4688914942

261002397567

341722428571

13

518587807081

293177

1209781

373852443734

447989059513

140756140384

207791711792

252160015422

151272799305

431450717984

252882800366

112417596471

301753741810

480461056512

334158277030

368394150653

22286870422

343015689591

281801228231

360270382562

264253306719

128520421967

399665129411

448878989738

70913527757

295285211952

247990966487

202711954425

201121363025

14

573308195401

973169

550351

327707922480

455697659443

469317095774

41173012855

95114431187

183548202066

114278917224

111319924653

302320646938

497834611165

207393954597

469317095774

184588110993

484439401392

92203619034

199299165882

100840467257

42877265767

537319004931

212469277565

335238563578

215934710265

248375790884

8143413999

199299165882

484325656679

15

634875396959

797611

375841

215938301159

156476855390

629025629999

390282732416

486255942680

301447617826

611079544000

9815582940

238155160282

89572033554

259610717355

561079697420

68884371224

592194596499

618920283747

481110939902

118468312259

152271753836

245706953152

357574573601

517943651115

449088004034

549269593969

274641120696

170397276793

150603791351

16

512453104601

1365347

972793

17680290297

359514971944

395933838767

135375405636

424188955183

480774525813

176693333558

366722473439

257271491888

437238044102

280697746591

192092245943

180087210668

410084071984

150398051936

489149759410

11043062086

452072614483

94954712588

373871024394

194623183329

478231887994

452346492359

145030784098

310653569484

280971453825

17

549840164113

830309

1122659

421894113021

70151618285

256033134230

230572827320

345706195727

379296943648

131864337239

345346802879

460224575827

28746971542

176535748663

395695787161

460364462002

377869829708

315408321663

403500544217

90051720740

398226212020

357731842992

394252754984

318030259077

317217533534

42352806819

277427982170

18

521194405273

293767

492511

70696562

136043022917

65407415375

164404262967

445647345197

118953770797

512196733213

103009198361

317437263597

284559552852

490098245083

149823933745

224803955806

139896254161

268972783372

281244321042

190886094

183760973977

127631527830

29296947894

342466717237

76798964679

346421581772

345796314978

281195436813

359213893561

19

500984306287

470149

267797

274230487503

6821302647

172152295595

454539302130

462305524774

73589652382

274794725040

295185494003

159348742119

62021560582

311827395163

159638616315

176943898057

272954693703

141643708385

238296127866

270971764501

389314459147

476866404163

295344931481

288885538254

144738759088

52793710114

416204845784

20

502110569407

693661

366287

451590415251

110439571420

183752091528

274872936616

28541011195

450835617776

260759622383

342128341762

158761845107

190701543235

336633436793

107036107438

143086295492

489035727840

352254618578

112984103119

324252397833

258279989467

309371933868

309370695834

275718202556

484547254614

319090281932

321505940571

499673648361

445389404030

21

635476116169

866707

1123211

164724618825

386399947495

569519600328

335674131307

591926181226

331711492017

222632530911

159285067102

529695664488

462703958023

508391137110

573759000564

48989336806

119849004283

156284059617

399964659582

411242163372

473998672968

449146422851

178846180173

431421957979

209987811333

627608476514

23204756436

43305372061

542459119849

22

606089625293

524123

1109309

496663520230

573686340098

317277380080

311062242263

87966670626

156120202050

517816376872

255107405391

70642465288

390229374493

333422604916

2671384922

509131255766

196561923290

102658895412

577585560553

44037449636

508496748333

278687486043

261550581766

487843663934

314450235982

345028986924

104569551730

486557652833

337080661180

23

303958823183

1173551

1366693

300865234944

280167078723

44778324729

15647443106

72500796041

127042219796

220297476381

159193146152

281783946206

83397684706

218587175059

32628200905

87293077359

158205869566

47430389231

235868270647

60933642983

230961885063

189840956692

155026770625

118061171422

64695094087

90093203015

140628953794

156685525752

96578125026

24

216044621671

493001

693169

204707607052

131209885175

74127570208

167559112602

114202832764

175086144102

173536223165

123432367535

82425793128

185507595143

95061918272

193636415087

162487637030

161085576818

166651266503

210362428729

29681376125

51404224010

85147589057

53004594773

4926673942

28134852744

16056810738

57750263032

146784016398

143689492474

25

193576240729

376133

633317

159391395691

157577675381

191080992560

149368918681

53984801508

4424043610

58203874858

76432058336

16217372577

149007313066

63447430442

64914562999

127848484896

187917061998

100356696331

115395060871

22072994636

10119558157

166188791942

81150163516

112715855314

19232790590

106250648527

21826060759

12414159731

192871647135

26

199463062753

419513

830477

177528135337

131197957980

181321285074

96738779356

127632416974

161779284378

148599198368

2033602084

141914496373

105405878640

120038779975

7139491789

63508097139

142467940607

131649552179

182684157712

22912524157

94825501208

189716623763

86236434624

94875774697

120252092430

26215384541

53782670605

27

588649943243

829883

1365563

280515585129

474432358443

550494122120

286014860208

177909397442

66300460308

528884282560

399515563309

304891197599

119078987025

209691758955

462036206743

586085056988

565691730736

150449148254

518339002836

225616510542

385610089653

374937066213

115466710052

142918798684

522983594973

48256241870

459229046518

179338322451

224548199183

28

731873369393

492413

667421

47341507804

127997685870

257646548539

354472751726

587866819301

488667442604

462576579278

538441126972

558240817424

150554102888

253275371077

417636957585

568703073461

74847904635

278470286823

448348870301

607786930695

529369369754

75925175772

29907063957

10458852803

90276241841

730446811079

467685526579

583892394223

353477871749

29

1176879950087

550169

376237

236505725833

12096288569

1062670335800

541231133081

529745761698

79574674510

518908160088

195753762481

284194617926

861518052504

844805726716

575330762793

319168661888

377123370130

169179266140

617962027334

332483986069

1065692323879

420409290920

733896529297

201622748685

457529162746

1037225648947

732504268577

1172056967964

1002467039854

850197148213

279510203667

30

1254157128997

975427

1209269

1098122654723

224532500446

195052151737

340669256856

1019975678508

210896047315

749213378601

949523491515

154878238856

1101522983540

511950016486

435736453734

873855208934

68049065095

513397077403

1191564999894

524725711866

662476316059

229085787378

943515500203

942246429245

905815635635

Таблица 4

Варианты исходных данных к заданию 2

Вариант

Модуль

Блок зашифрованного текста

N1

N2

N3

C1

C2

C3

1

359690807803

361062169537

363514381513

177412278620

8631904062

60910035474

297496979396

44306701511

223949114264

95163574676

126740768642

306466049596

82343556476

97754924718

242675823829

227891126441

175684889961

108275398403

50799922679

50861774819

120598551775

214220319631

193858968963

243446962166

168236630688

260389624172

86845867002

230974691188

345734293737

118726556071

220369632983

69236028918

121704957571

269179568504

201685371953

75708873566

101720600746

131962627319

44909629158

2

368166998833

368656533313

371205502531

100018221941

357476497416

360704892674

258968522463

363378787391

38938998120

165805097876

328038699497

297851010158

184316347833

202277180039

260169809092

136359418113

219670103959

299234661384

321665231322

303452309552

197707480483

271136973244

31151628083

195899793924

230643014304

323745610236

125326155250

4695289469

154882534227

258489005115

193486305912

317085850998

228076833982

118470145682

302313432794

214437258395

132123789026

96889642413

300010020637

249393170795

187672572758

93192923225

3

380077454101

380903460337

383306345689

120321295984

116941070964

156315192664

260149644765

357688967002

165841867143

349826484990

337993834720

117681826230

36279369135

124613350713

106958422772

261990433834

232071459327

305414687540

348455852917

206680974925

327578130329

5548686870

295985428633

157420509616

256913681356

271869775627

310864218021

322305651846

286065905390

188633713225

131649116365

253206684415

46677871611

65268441973

317133281785

52226297600

255637668770

201873507225

260192105953

4

389091381643

391569053221

393864798289

23283117034

199910300344

122379231308

129836433029

266167362913

322794903721

164367877138

317459368677

210705957227

38878534867

199295177267

116980227366

81950696329

310054893565

132301878314

52795246284

276197768422

265696804182

238369333190

66855113681

316766995365

321182915473

118193576787

190068391425

57844537762

368640254231

220965124671

260183659429

299904567942

286935730637

266053541214

146542714390

79442443012

28368938795

30970811879

72570776324

5

397066122499

397797027109

400288163101

257953403766

177168684125

98569851945

111013170885

126870693789

356996906573

369112783220

118662185076

192227498736

13981739973

77574341290

98562917188

14769259640

128730750274

391893911248

323200994518

152862355610

23614632228

96365786831

207779539976

70218040709

317562220506

111815966551

1949429944

8329351035

147453838103

382653707323

186385219382

394103230832

16445037923

382954747667

387456992444

258166753697

375871570884

342932316985

104729956068

46092487953

69550838402

289762815713

6

408685041841

409542365311

411702675541

161938982030

93539768747

198680625546

324985467275

364301388858

121946924018

130171610724

264709094112

198127513690

98490234931

86416406414

347341863803

261057850418

227240021793

240397026641

319693734726

143364329762

267584092696

104392885896

60224870888

54379930123

281164821607

51747910478

152858842656

198634569843

304306303763

124238176183

56013695777

98169308648

320302328458

257566073714

180123701720

231998512656

220441010255

105926142958

104088206001

312601660772

358423325011

229574485891

7

420250053679

420998138947

422793377077

17599664694

221343847340

181796040962

210108814452

124320289825

323995715057

260285700707

72474978285

226746757036

369084323018

133261286623

336107911000

303767221006

388099839383

141363764478

253757042128

162556515860

289849639847

126598663712

171600933709

80576580207

347679322161

408725538627

244886980553

171682264557

366784660912

84003082499

245906362572

398398702796

157559004814

157418944324

411242039391

270378838199

182942084181

33847193530

149137845569

382620866773

120769412025

272019119100

8

431972773933

432558060211

434276528083

43268974598

302331913599

47134049761

126642563008

165827503054

232086597542

31465887151

30373336865

284998624093

89084365158

322533676789

383736009455

108545189851

330701159000

104807592171

45038416117

81063981859

427734601871

27505991527

81910363197

190166502949

116404011104

249933949107

90486698466

206265723002

276536042468

269237460393

165034165638

207280715083

151936477226

7495879547

141105308724

316939568874

360819196331

46940627813

137301580237

168518778628

113124777920

282998095133

9

441716293693

442258294987

444399387571

324500796659

324547036186

367901833181

38558700097

401956144715

260421328704

356041474179

113539876955

304515179769

302662240842

282367185538

432213853716

364411844182

137247785047

389030356498

293766643714

259139396276

429702138150

17968702271

84037113464

91988591941

425057692992

391906969363

244207991747

57065247639

130359065508

391859459727

128196485994

412050631244

367300386309

83703862830

218100297714

10243576841

232358719915

412546535924

398872645339

10

449094675559

449774960461

451557288811

445451352210

249439394113

387029823615

132042218903

73614801093

101481466259

448458747498

443385035969

75012412264

19096037043

259197438248

220559106494

424531890296

430487757843

273579896124

163172411830

299409036513

34387871280

190507227268

108323290415

332577990284

213248626661

78257808298

238075298353

118710004991

307218752883

366564784860

182819846943

86662518238

405369976705

111221455773

368248616971

227865580737

38736323891

137144185691

231896396336

11

457829717113

461639371789

463811451073

118519640042

325725597818

449577094588

225738390357

390837010969

417997930307

186946730799

307353836168

331923022405

439103095463

415559987555

407104561771

68925059719

320794723471

106708759661

267503416207

176633626568

370938941185

256010935139

375173961262

50942041502

13373860798

369523972407

268680126161

360911630335

49077546247

367587011852

205773073385

166430526462

166130351420

240614091730

1307748376

289507057580

309981198851

123903944003

113555743553

12

473302960111

476210148031

478258728547

384927940677

473049749478

98141220439

47772742554

85402795076

49762300554

243238759870

132174590679

394107604075

292566652796

394413369679

176379334217

425745574767

279970734890

47337377053

15502694428

81559584886

360290532716

378412185459

471133458035

276394936545

2116712669

37111299200

387986386867

97786707059

256442600412

455327955288

119517607360

342954751710

440889851539

67503329756

462595462377

84092175909

57911552136

60433527302

25311956275

370327609107

296462225245

241699085506

465708091819

454345671530

210180151910

13

483603920323

484627023409

486046777033

45854580612

105237269523

169259415669

93616181002

111788215636

19646301574

344814513220

284120677804

135039654745

8393533606

277869220393

95747282494

31789892340

274960963762

445004609734

314321127441

121008447611

77289255193

185428067959

268033072619

483476916533

378663280169

145768361237

164058939780

427513468440

16789037076

245417628800

58500957429

337297880630

192371047425

368079140170

444426125103

485088147460

384977923665

52336096116

217360431271

261094805307

77329919173

280539607542

14

494980336813

495019868347

496510218943

405186643929

264588538265

58896941920

424470122024

445830333875

98276685134

210238595626

176058872641

185715938214

418034348683

52552730024

481876348312

438600466605

298462743436

26894204289

266800308083

469634672912

423565503334

418775305332

112405305103

302129659337

323850375295

438598232992

10359943018

298111389169

277384894755

372083067441

354383414943

31782553847

213067042090

22742161466

313919341914

71514328634

117790204322

268549130622

409153352258

316714994539

270152277750

128472385009

15

503847739471

505210110529

506974617943

65555047695

224704827698

426614994776

482499765759

499927141525

251539329355

288065643935

500487899533

284158354428

179929130009

4059729507

337999368066

324422804544

374009722121

291369610887

103658691090

355087189555

403634830552

45811542091

342405362400

397470779417

143094497045

16866311017

162845742211

435445028187

207888333371

344446367064

372373145295

26158114757

389306763320

15362084660

342395172034

275443080668

219501574324

343966567526

291026935191

16

519445678909

522088422619

523328119219

302279248041

398777422648

382393465830

109346520792

393648988334

83456507369

503695835656

409770589873

483819180150

358939341533

402486907104

347176414967

1633679742

48522238217

116578598684

98210011370

452947538650

113090002659

130683028799

170075383039

19947030841

458406287083

178964953872

500143943025

189689940709

218613469572

129856570412

82270781294

140695444887

510689827054

42634086860

516267119547

5616396143

8388941434

73724586316

290433741122

102266925300

75736288391

406132000561

17

530262062431

533023659991

534655902139

281386842307

121824522874

245939933284

25488678869

245966715725

346164781438

240458184136

477792982000

50321051371

249631869316

346825618977

352450998028

5670875437

330566529390

465969872193

104239877954

421060036048

26548660136

226283588677

232398586638

141813896655

455313322872

64540250896

175680952596

380269517653

366125418676

400608227248

119236616785

40916016109

6459310768

111454112735

191143773891

428929030217

441962444995

334966880931

380319156170

18

542029523461

545442955261

543651655507

252761993375

439317043104

524563666624

200316247013

168730893537

276462662401

95027181355

153947838824

517609475112

21916921129

186570691221

188654245468

175866403284

297457023908

352677317646

525837137252

500452725795

255875720416

484409681814

36312121014

208360918386

288089579742

492797454334

91193680807

432443719708

291474822430

142735272242

317684793012

216551100123

30474056356

501398385288

405101779653

371861659744

467319917841

209273129747

270602387237

19

553399203289

555525439597

556783358239

532587529932

466776013367

194393214430

551419753294

235808018295

521345765147

62408122881

238014267850

282320724474

421626850723

477001857725

59354292288

453172264962

295084884945

184687156359

110229199835

452343899082

61700963597

371846842

184524760412

349901424433

66575580602

38470059268

27434041612

283795978048

548212520352

50623875598

45628043554

374654069771

454067424044

140771995786

230698987467

416727167751

87650410693

75414175302

305387967882

20

564051718543

567177464083

568582697167

178430347017

275798270566

150441557212

35319995468

214899391564

454509168990

241622156972

47081057682

532012996953

114671548487

272811533565

464060851187

466784394057

113750938542

50225874889

135816601540

383147938913

445379546704

20609631777

530473256199

291868875010

327407870868

112360892551

48950009370

204834012880

472985274437

150470587109

437368878774

348445464666

120707881073

424353814205

495774818876

460590967231

21

570206339323

572010531679

573673162471

400967861722

402921963995

345366187498

170749944344

398474550143

14128843304

525338681306

553357177665

554714202377

378737847392

241207247252

330231009566

400511331925

359110439723

156672928720

81237697207

446268495117

567101402400

380678770261

405322363448

250349383856

480141604318

201068876886

160562856485

365230039044

503139848290

452112473725

98832137945

16750539498

496867432761

98372266130

349596187748

172522293935

161623878001

405142270947

404286756199

22

582980801989

585089367091

586408807447

428799001102

417746620458

233652090970

425829696584

132807280253

540064099057

191642450251

364237792802

294540030550

287338190886

8030576378

562848664519

330278110381

413803169370

399528613141

431344022162

133251402314

579394141601

339286468279

235332969532

1036448642

400656499573

47204841232

249621210713

426468615928

348743875265

261688856582

29957256669

108448874326

23970225383

410917339855

179638698652

282723305676

115801357719

575898855271

528022904569

23

588465234361

586195041433

587299922977

179564892807

489396036392

176575769058

269255594799

422117999595

257369618664

539258064402

177014956905

234449256532

387357205774

183843097094

189558056464

376452630248

569864359142

124688754894

562457224201

22357940168

151586582904

533949898858

116088884375

221471039114

16723092454

343577678223

313846942324

369376837096

167105576017

449990310238

417101045217

404468253839

1603305513

478144160973

212789604411

559954258624

55850508600

85339397069

409000193866

24

590059443367

586035939793

582032534407

534935192069

586334468916

575821575470

158445010924

168022188272

419451618702

403150327598

462915818163

156960926738

423280293357

308065052008

70956316615

196061328294

472946437612

167175113770

213280914294

97582680057

87487791156

319786583031

526032348303

561873181810

93452497746

547351293988

558349441596

209735294323

257527905634

328543700761

241383661927

318686253990

391540759391

124252499803

400043751247

36326931192

25

593974289329

590987500549

585323335717

461743067035

16510154740

541409292183

147537040251

121241807149

383535805471

420328432686

360735839890

426786420629

268507362618

381406130147

369378326912

429395271160

404839447718

431790388728

84465928224

179431496912

250884484533

367066937735

493669050691

588637988770

235309880383

79134719899

469747448675

293399822655

408678947374

461462830734

469093286418

229214387811

405621273396

566681986508

381039554115

30236954381

124256080362

424813292522

425803797156

26

589912731103

586562277157

585692399101

480322890668

244470713436

462556788069

362053532314

129240753531

544548971962

471246885335

471262437778

271836962090

394188269580

178451939299

197569306719

256707875408

318007508695

214091275189

161567294188

87540207148

401376536208

21963401602

283235880013

180909701662

310291949010

62477508978

13427830322

123762397027

398319090007

260268164234

400914805152

112841539554

295019543024

63931832229

41567356849

260659808675

27

588420697063

587923144219

588187913011

549837201524

41062678977

558361700271

340524813262

380989701140

72777555501

148516910596

239893043138

550275162587

504639682332

286887201361

109402692159

549767170235

417891652669

18105731747

561561302352

24647793868

459446623668

97023224221

315504133409

175823987146

98357398109

554098076849

2182860074

431364287035

324545189457

251931822912

72129334869

312886718193

268813577112

455339743965

91344488466

67230102308

491296963100

514352457528

80958415820

28

588740645851

584129775637

585272485753

471258791682

512980753348

322484372265

538756637439

317805186675

366951662937

587477142741

68752542454

430997342376

161403026083

50500565847

79917839116

239747618261

468272716420

275958595006

87603018262

331796452131

345512142914

565661549787

319582444655

403978789269

303825337329

452342997389

267966157661

309319918217

185898586915

308249502751

44445413863

449569591513

11827383253

481618003611

226750819584

92751686853

138208291614

78550840689

423076706001

29

582270860077

583571056801

588041120767

301957293366

422372499160

367264077803

200553983048

552090919991

511311819647

198014108536

60996803849

51278851473

142223911954

7655292102

163043538613

380571398658

274564613819

427604843641

201608075041

170827048149

38704990415

111915962261

397434320138

372982884858

373432544252

318605249871

276204030043

458070084011

321585917344

535492729100

366740626240

479766734947

114744478843

580651081116

352640075141

121134933335

16649676893

327976264894

99216599320

30

588858863227

593022249661

586952985613

83775950282

499684444618

249072759951

493679699487

441751231546

223784905416

105330855230

208113933189

541948134894

23436365527

494488176283

316805307951

71012941259

123921632644

529814173563

561882221400

217161522052

214335556154

513051401804

330790125104

409144828637

182758754527

197544530536

14524587796

262947010943

51615754782

240863300083

377803962605

331127107982

27311727587

402318079295

41197363802

564624489377

349281398612

569063475434

300796590703


 

А также другие работы, которые могут Вас заинтересовать

3966. Пакет Swing компонувальники LayoutManager 379.45 KB
  Лабораторна робота (Пакет Swing – компонувальники (LayoutManager)) Тема роботи: Пакет Swing – компонувальники (LayoutManager). Мета роботи: Дослідити роботу, одного з компонентів пакету Swing, компонувальники (LayoutManager). План ро...
3967. Определение момента инерции маятника Максвелла 379.34 KB
  определить момент инерции маятника экспериментально и сравнить его с теоретическим значением. Установка маятника Максвелла может отличаться от ниже описанной, но принцип работы тот же
3968. МОБІЛЬНІ ГЕНЕТИЧНІ ЕЛЕМЕНТИ ГЕНОМУ ЛЮДИНИ: СТРУКТУРА, РОЗПОДІЛ І ФУНКЦІОНАЛЬНА РОЛЬ 377.25 KB
  Наведено дані про мобільні генетичні елементи (МГЕ) людини, на частку яких припадає майже 45% геному. Поряд із класифікацією і локалізацією МГЕ особливу увагу приділено їхній ролі у функціонуванні геному, зокрема участі у рекомбінаційних процесах, регуляції ак тивності генів та в утворенні нових генів.
3969. Типове положення про службу захисту інформації в автоматизованій системі 375.74 KB
  «Типове положення про службу захисту інформації в автоматизованій системі» Виконала: ст. гр. СН-41 Ковальчук Лариса У загальному випадку «Типове положення про службу захисту інформації (СЗІ) в автоматизованій системі (АС)» складається з таких розділ...
3970. Схемотехніка логічних елементів та їх реалізація на мікропроцесорі 365.86 KB
  Специфіка програмування мікроконтролера PIC16F628. Рішення задач. Створення проекту в MPLAB. Створення проекту в PROTEUS. Схемотехніка логічних елементів та їх реалізація на базі мікропроцесорів. Прості висловлення – логічний елемент (змінна) – входить до складу складного висловлення логічної функції, яка залежить від істинності чи помилковості аргументів.
3971. ІНФОРМАЦІЙНА БЕЗПЕКА WEB 2.0 359.9 KB
  ІНФОРМАЦІЙНА БЕЗПЕКА WEB 2.0. Що таке Web 2.0 WEB 2.0 – це методика проектування систем, котрі шляхом врахування мережевих взаємодій стають тим краще, чим більше ними користуються. Web 2.0 - не технологія і не особливий ...
3972. АЭРОНАВИГАЦИЯ Методические указания по изучению дисциплины и выполнению контрольных работ 355.61 KB
  Дисциплина «Аэронавигация» является профилирующей, которая определяет уровень профессиональной подготовки студентов специализации «Летная эксплуатация гражданских воздушных судов». Она является основой для изучения других дисциплин, формирующих профессиональную подготовку.
3973. Знайомство з пакетом Swing 350.08 KB
  Лабораторна робота №7 (Знайомство з пакетом Swing) Тема роботи: Знайомство з пакетом Swing Мета роботи: Дослідити пакет Swing. План роботи. Ознайомлення з компонентами бібліотеки Swing. Навчитися добавляти компоненти до контейнерів Озн...
3974. ОСОБЕННОСТИ УЧЕТА ОСНОВНЫХ СРЕДСТВ СУБЪЕКТАМИ МАЛОГО И СРЕДНЕГО БИЗНЕСА 336.63 KB
  Развитие малого предпринимательства является одним из условий перехода России к полноценным рыночным отношениям, устойчивому развитию экономики, а также обеспечению стабильности в социальной сфере. Особая роль отводится бизнесу в развитие сферы услуг, которая является своего рода индикатором оценки уровня развития экономики любой страны....