Теория чисел на Верченко
Ошибка.
Попробуйте повторить позже
Каждый из трех владельцев криптокошельков имеет на своем счету по 10 криптокойнов. Каждый из двух дней ими совершаются по две транзакции: по переводу части криптокойнов со своего криптокошелька на криптокошелек другого владельца и по возврату оставшихся криптокойнов обратно на свой кошелек. У каждого имеется свой секретный ключ . При совершении транзакции указываются три числа , где - число переводимых криптокойнов, - электронная подпись перевода.
Электронная подпись находится по правилу: выбираем произвольное , затем находим , где остаток от деления числа на . На рисунке указаны совершенные транзакции (пронумерованы числами в кружках) за два дня. Сколько будет криптокойнов у каждого владельца криптокошелька по окончании двух дней?
Источники:
Подсказка 1:
Давайте попробуем записать условие кратко, через переменные. Какие уравнения получим?
Подсказка 2:
Запишем уравнения из криптокошелька владельца 1 на 1 день, владельца 1 на 2 день, владельца 2 на 2 день, владельца 3 на 2 день. Какие ещё уравнения можно написать?
Подсказка 3:
Мы знаем, что транзакции 1 и 8 осуществлены одним и тем же владельцем, и в электронной подписи одинаковое. Можем получить из этого уравнение. Для этого вспомните сравнение по модулю. Из каких транзакций можно получить ещё уравнение?
Подсказка 4:
Транзакции 5 и 12! Теперь из полученных уравнений можем найти Y₁ и Y₅. Мы можем найти количество криптокойнов у первого владельца. Какие ещё уравнения можно получить из условия, чтобы решить задачу?
Подсказка 5:
Посмотрим на транзакции 9 и 10. Для них использовались одинаковые k, но с разными знаками. Какие уравнения можно получить из этих транзакций?
Подсказка 6:
Получаем, что Y₄ = 1. Сумма криптокойнов была равна 30 и останется такой же, 30.
Сначала по рисунку выпишем очевидные соотношения:
Необходимо найти:
Далее, заметим, что транзакции №1 и №8 осуществлены одним и тем же владельцем владельцем 1. То есть использовался один и тот же секретный ключ , при этом использовалось одно и то же значение в подписи, поэтому
Отсюда получим
Следовательно, . С учетом (2) имеем: .
Аналогичное свойство замечаем у транзакций №5 и №12:
Отсюда получим
Следовательно
С учетом (4) имеем: и уже находится . Теперь обратим внимание на транзакции №9 и №10, осуществленные владельцем 2 , для которых, как нетрудно заметить, использовались одинаковые , но с разными знаками, т.к. .
Поэтому:
Отсюда получим:
Т.к. исходная сумма криптокойнов была равна 30 , то
Ошибка.
Попробуйте повторить позже
В криптосистеме RSA (знания алгоритма шифрования не требуется для решения задачи) элементы надёжности определяются несколькими параметрами. В частности, выбором числа , где — различные нечётные простые числа, и значением
Известна следующая теорема (малая теорема Ферма): если — простое число, — целое число, не делящееся на , то
Используя это:
a) докажите, что
для всех .
b) найдите и , если известно, что
для всех
Источники:
Пункт а, подсказка
Возведите сравнение aᵖ⁻¹ ≡ 1 (mod p) в нужные степени, и, совместив два сравнения, получите искомое.
Пункт б, подсказка
Мы знаем сравнение из пункта a, тогда хочется, чтобы 21240913 было равно φ(N) / 2 + 1. Давайте предположим это и найдём такие p и q, нужно только решить систему от двух переменных.
a) из условия задачи и равенства следует
для любого натурального . Тогда при получим
Аналогично
Так как - простые числа, то из этих полученных выше равенств следует
b) из доказанного в пункте (а) получим а отсюда систему
Решением в нечётных простых числах является неупорядоченная пара
b)
Ошибка.
Попробуйте повторить позже
Вася хочет заполнить квадратную таблицу (криптографическую мозаику) размера целыми числами от 1 до 16 по следующему правилу. Сначала он выбирает четыре целых числа . Затем первую строку Вася заполняет числами
вторую строку — числами
третью
и, аналогично, четвертую
При этом числа Вася выбрать должен так, чтобы все числа в таблице оказались различными. Сумеет ли Вася это сделать? Если да, то чему равны ?
Источники:
Подсказка 1
Видите вопрос "сможет ли...?" и сразу руки чешутся как-нибудь доказать, что не получится? :) Давайте сначала успокоимся и попробуем посмотреть на то, что от нас просят. В табличке должны получиться различные остатки по модулю 17, причем эти aᵢ очень подозрительно выглядят... 1 и 16 в сумме дают 17, 3 и 14 тоже.... Что можно сказать?
Подсказка 2
Да, в одном столбце получаются числа bᵢ + 1, bᵢ + 4, bᵢ - 4, bᵢ - 1 (mod 17). Полученная симметрия так и бросается в глаза, правда? Вот бы можно было выбрать какое-нибудь b и наглядно видеть остатки от чисел, которые оно образует... Вам же наверняка тоже не хочется долго перебирать и считать аᵢ
Подсказка 3
А что если остатки по модулю 17 изобразить по кругу? И правда, если мы выберем какое-нибудь число b из круга, то число b+r пойдет по кругу на r шагов от него в сторону увеличения, а b-r, на те же r шагов в сторону уменьшения. Получается, если выбрать какое-нибудь число b, то оно вычеркивает два числа рядом с собой и два числа на расстоянии 4. Получится ли у нас подобрать еще 3 числа так, чтобы вычеркнутые числа не пересекались?
Подсказка 4
Да, получится. Если это вызывает затруднения, заметьте, что само число b в табличку не входит, поэтому оно может быть среди вычеркнутых. Если вы пойдете по кругу от самого первого выбранного вами числа и выберете числа на расстоянии 1, 7 и 11, то у вас точно никакие вычеркнутые числа не пересекутся :)
Заметим, что
Представим остатки полученных от в виде круга остатков. Числа получаются от смещением на или шага по часовой или против часовой стрелки в зависимости от знака.
Заметим, что важен лишь набор , а не их порядок, тогда без ограничения общности выберем пару , — одно из чисел или такое число, которого нет в таблицы. Докажем, что тогда обязательно соседняя с .
Предположим противное, то есть что ни одна пара , не являются соседями (так как иначе можем взять их в качестве , ).
случай (): возьмём (если все различные числа сдвинуть на одинаковое число по модулю , то они останутся одинаковыми, а значит мы можем взять ), в таблицу уже попали числа: , тогда “запрещённые” позиции — (они получены путём прибавления и вычитания , по модулю к полученным клеткам в таблице), а значит, — , но тогда они соседи — противоречие.
случай (): переименуем , в , и получится случай 1.
случай ( аналогично, без ограничения общности, не входит в таблицу): Все остальные числа входят, так как с каждой в таблицу добавляются по 4 числа. Рассмотрим число , у нас уже "запрещены"числа для , иначе входит в таблицу и , иначе в таблице есть повторяющиеся числа, тогда , получается, что , т.е. .
Посмотрим на “запрещённые” числа для : , но снова соседние.
Мы получили, что обязательно должны быть 2 соседних числа. С одной стороны, зачёркнутые ячейки на расстоянии от и образуют место для и (поскольку есть две свободные ячейки вокруг двух зачеркнутых чисел). С другой стороны, при выборе двух , набор двух оставшихся определяется однозначно, поэтому итого вариантов выбора комбинации столько же, сколько и выбор двух подряд идущих чисел в круге, т.е. .
Ошибка.
Попробуйте повторить позже
Найдите все восьмизначные числа такие, что где , Решение обоснуйте.
Источники:
Подсказка 1
Мы понимаем, как устроены цифры B относительно цифр A. Какое выражение с использованием A и B можно составить, которое не будет зависеть от конкретных цифр в числе А?
Подсказка 2
A+B! А дальше просто решается задачка, нахождением последней цифры числа A)
Заметим, что
Тогда из условия получим
Следовательно, по признаку делимости на 9
Разделим число на . Получим число
Ошибка.
Попробуйте повторить позже
Найдите наибольшее пятизначное число, которое в раз больше квадрата суммы своих цифр. Решение обоснуйте.
Подсказка 1
Давайте введём переменные и составим уравнение из условия. Решать мы должны в целых числах, значит, имеет смысл зацепиться за делимость!
Подсказка 2
Наше число должно делиться на 3. Но как это может повлиять на сумму?
Подсказка 3
Сумма тоже будет делиться на 3. Продолжая рассуждать, сможем оценить сумму цифр и разобраться, какие значения она может принимать ;)
Обозначим — искомое число, - сумма его цифр. Тогда Следовательно, делится нацело на По признаку делимости на число делится на Но тогда делится на По признаку делимости на делится на Так как искомое число пятизначное, то для возможны вариантов: Для каждого соответственно, находим: Первое и последнее — не пятизначные, у четвёртого сумма цифр не равна Подходящие:
или
Ошибка.
Попробуйте повторить позже
Для зашифрования осмысленного слова его буквы заменили числами по таблице.
Затем выбирали четные натуральные числа и и для каждого числа из соотношений
нашли целые числа и .
Потом по формулам
получили числа
(где — остаток от деления числа на 32), которые вновь заменили буквами согласно таблице:
В результате получили вот что: ЖЯЮЦКР.
Найдите исходное слово, если известно, что оно начинается на букву В.
Подсказка 1
Нам надо явным образом связать x и z’ по модулю 32. Давайте тогда вычтем из первого равенство второе, чтобы у нас лишняя переменная y ушла. Тогда как можно связать x и z’?
Подсказка 2
Тогда выходит, что x(1 + q) = z’(1 + p) (mod 32). Если мы выразим (1 + q) через (1 + p) по модулю 32 с некоторыми константными коэффициентами, то мы сможем домножить на это модульное равенство наше равенство выше и после сокращения (1 + q) и (1 + p) в обеих частях мы получим явную связь x и z’. Стоит вспомнить, что мы ещё не использовали условие на первую букву!
Подсказка 3
Давайте теперь возьмем условие для первой буквы и посмотрим, что оно дает. Получается, что (1 + q) = 3(1 + p) (mod 16). Помножим на 3^-1 mod 16, и получим некоторое равенство, где коэффициент теперь у (1 + q). Тогда выходит, что c(1 + q) = (1 + p) (mod 32), где c = 11 или 27. А значит, получили явную связь на x и z’. Осталось проверить дешифровку на осмысленность и задача решена!
Рассмотрим произвольную букву открытого и шифрованного текстов. Для соответствующих им (по таблице) чисел и выполняются равенства и , при некотором и . При этом по условию . Используя свойство сравнений по модулю целого числа, получим: или . Для дальнейшего решения будем пользоваться следующим свойством: если наибольший общий делитель чисел и равен то сравнение равносильно . Используя условие задачи для первой буквы открытого и шифрованного текста, получим равенство . Заметим, что сравнение имеет 2 решения по модулю , . Тогда получим, что или для каждого . Таким образом, или соответственно. Остается воспользоваться полученными соотношениями для остальных букв.
Осмысленное слово получается только при втором варианте. А значит, исходное слово ВЕКТОР.
ВЕКТОР