Схема Блома

Схема Блома

Схема Блома — в криптографии, схема распределения ключей.

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

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

Схема используется в протоколе HDCP в целях защиты видео от копирования.

Содержание

Описание протокола

Инициализация

Доверенная сторона выбирает симметричную матрицу D_{k,k} над конечным полем GF\left( p \right).

Добавление участника

Когда новый участник хочет присоединиться к группе, доверенная сторона выбирает для него новый открытый ключ, который представляет собой вектор (столбец) I размера k. Далее доверенная сторона вычисляет закрытый ключ g:

g=D_{k,k}I

Открытый и закрытый ключ сообщаются участнику по надёжному каналу без прослушивания.

Установление сессии

Если два участника хотят установить между собой секретный канал, они посылают друг другу по открытому каналу свои открытые ключи. Далее каждый из них умножает свой закрытый ключ на открытый ключ другой стороны. Если I_A, g_A — открытый и закрытый ключ одной стороны, I_B, g_B — ключи другой стороны, то:

\begin{align}
 s_A &= (g^t_A I_B)^t &= (I^t_A D I_B)^t &= I^t_B D I_A\\
 s_B &= (g^t_B I_A)^t &= (I^t_B D I_A)^t &= I^t_A D I_B\\
 s_A &= s_B \\
\end{align}

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

Надёжность схемы

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

Пример

Инициализация

Доверенный центр выбирает размер конечного поля и секретную матрицу:

\begin{align}
 p &= 17\\
 D &= \begin{pmatrix} 1&6&2\\6&3&8\\2&8&2\end{pmatrix}\ \mathrm{mod}\ 17
\end{align}

Алиса и Боб выбирают себе идентификаторы (также могут выдаваться доверенным центром):

I_{\mathrm{Alice}} = \begin{pmatrix} 3 \\ 10 \\ 11 \end{pmatrix}, I_{\mathrm{Bob}} = \begin{pmatrix} 1 \\ 3 \\ 15 \end{pmatrix}

Доверенный центр вычисляет Алисе и Бобу закрытые ключи:

\begin{align}
 g_{\mathrm{Alice}} &= DI_{\mathrm{Alice}} &= \begin{pmatrix} 1&6&2\\6&3&8\\2&8&2\end{pmatrix}\begin{pmatrix} 3 \\ 10 \\ 11 \end{pmatrix} &= \begin{pmatrix} 0\\0\\6\end{pmatrix}\ \mathrm{mod}\ 17\\
 g_{\mathrm{Bob}} &= DI_{\mathrm{Bob}} &= \begin{pmatrix} 1&6&2\\6&3&8\\2&8&2\end{pmatrix}\begin{pmatrix} 1 \\ 3 \\ 15 \end{pmatrix} &= \begin{pmatrix} 15\\16\\5\end{pmatrix}\ \mathrm{mod}\ 17
\end{align}
Вычисление общего секретного ключа

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

\begin{align}
 k_{\mathrm{Alice / Bob}} &= g_{\mathrm{Alice}}^t I_{\mathrm{Bob}} &= \begin{pmatrix} 0\\0\\6 \end{pmatrix}^t \begin{pmatrix} 1\\3\\15 \end{pmatrix} &= 0 \times 1 + 0 \times 3 + 6 \times 15 &= 5\ \mathrm{mod}\ 17\\
 k_{\mathrm{Bob / Alice}} &= g_{\mathrm{Bob}}^t I_{\mathrm{Alice}} &= \begin{pmatrix} 15\\16\\5 \end{pmatrix}^t \begin{pmatrix} 3\\10\\11 \end{pmatrix} &= 15 \times 3 + 16 \times 10 + 5 \times 11& = 5\ \mathrm{mod}\ 17
\end{align}

Литература


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Полезное


Смотреть что такое "Схема Блома" в других словарях:

  • HDCP — Не следует путать с DHCP. У этого термина существуют и другие значения, см. HD. Работа с оптическими дисками Оптический диск Образ оптического диска, ISO образ Эмулятор оптических дисководов Программное обеспечение для работы с файловыми… …   Википедия

  • Ольмеки — Эта статья или раздел нуждается в переработке. Пожалуйста, улучшите статью в соответствии с правилами написания статей. Ольмеки  название племени …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»