Как посчитать обратную матрицу, такой, чтобы она была целочисленная и неотрицательная? В общем, нужно по криптосистеме Хилла для расшифровки посчитать обратную матрицу-ключ, но не простую, а золотую целочисленную и неотрицательную.
Получилось найти целочисленную, но отрицательную. А отрицательной она становится из-за того, что мы делаем из исходной матрицу алгебраических дополнений.Пример:
|3 3| - исходная матрица A
|2 5|
|5 2| - матрица миноров M
|3 3|
|5 -2| - матрица алгебраических дополнений M'
|-3 3|
|5 -3| - транспонированная матрица ( M' )^t
|-2 3|
m = 34 (алфавит)
det = 3*5 - 3*2 = 9
det^-1 (обратный определитель) такой, что: det * det^-1 mod m = 1
9 * 19 mod 34 = 1
det^-1 = 19
A^-1= det^-1 * ( M' )^t mod mПолучается:
|27 -23|
| -4 23|
Она работает только на части биграмм, то есть через раз. Ее нужно как-то преобразовать в неотрицательную. Подскажите как это можно сделать.

21 Авг 2019 в 06:08
203 +1
0
Ответы
1

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

Найдите обратный определитель det^-1 по модулю 34. В вашем примере уже найдено, det^-1 = 19.Найдите обратную матрицу к матрице алгебраических дополнений (M') по модулю 34. Для этого вы должны найти обратный элемент к каждому элементу матрицы (M') по модулю 34. Если обратный элемент существует, то он будет таким, что a * a^-1 mod m = 1, где a - элемент матрицы, a^-1 - обратный элемент, m - модуль.После того как найдена матрица обратных элементов, полученную матрицу умножьте на обратный определитель det^-1 по модулю 34.Полученная матрица будет целочисленной и неотрицательной.

Например, для вашей матрицы M':
|M'|
|-2 3|
|5 -3|

Обратные элементы по модулю 34:
|-2 3| -> |9 2|
|5 -3| |-5 11|

Умножаем матрицу обратных элементов на обратный определитель det^-1:
|9 2| |19 0| |27 -23|
|-5 11| * | 0 19| = | -4 23|

Полученная матрица |27 -23|
| -4 23| будет целочисленной и неотрицательной и может использоваться для расшифровки по криптосистеме Хилла.

20 Апр в 13:23
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 493 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир