Методы и средства защиты информации


Линейное разделение секрета


Начнем с предложенной Шамиром элегантной схемы разделения секрета для пороговых структур доступа. Пусть К = GF(q) — конечное поле из q элементов (например, q = p — простое число и К = Zp) и q > n. Сопоставим участникам n различных ненулевых элементов поля {a1, …, an} и положим a0 = 0. При распределении секрета s0

дилер СРС генерирует k–1 независимых равномерно распределенных на GF(q) случайных величин fj (j = 1, …, k–1) и посылает і-му учаснику (і = 1, ..., n) “его” значение si = f(ai) многочлена f(x) = f0

+ f1x + … + fk-1xk-1, где f0 = s0. Поскольку любой многочлен степени k-1 однозначно восстанавливается по его значениям в произвольных k точках (например, по интерполяционной формуле Лагранжа), то любые k участников вместе могут восстановить многочлен f(x) и, следовательно, найти значение секрета как s0 = f(0). По этой же причине для любых k–1 участников, любых полученных ими значений проекций si и любого значения секрета s0 существует ровно один “соответствующий” им многочлен, т.е. такой, что si = f(ai) и s0 = f(0). Следовательно, эта схема является совершенной в соответствии с определением 2. “Линейность” данной схемы становится ясна, если записать “разделение секрета” в векторно-матричном виде:

s = fH,                                                                                                      (18.3)

где s = (s0, …, sn), f = (f0, …, fk–1), k× (n+1) — матрица H = (hij) = (aij-1) и h00 = 1. Заметим, что любые k столбцов этой матрицы линейно независимы, а максимально возможное число столбцов матрицы H равно q, чтобы добиться обещанного значения q+1 надо добавить столбец, соответствующий точке “бесконечность”.

Возьмем в (18.3) в качестве H произвольную r × (n + 1)-матрицу с элементами из поля K. Получаемую СРС, будем называть одномерной линейной СРС. Она является совершенной комбинаторной СРС со структурой доступа Г, состоящей из множеств А таких, что вектор h0

представим в виде линейной комбинации векторов {hj: j Î A}, где hj — это j-ый столбец матрицы H.
Строками матрицы V, соответствующей данной СРС, являются, как видно из (18.3), линейные комбинации строк матрицы H. Перепишем (18.3) в следующем виде

sj = (f, hj) для j = 0, 1, …, n,

где (f, hj) — скалярное произведение векторов f и hj. Если А Î Г, т.е. если h0 = ??jhj, то

s0 = (f, h0) = = ??j(f, hj) = ??jsj

и, следовательно, значение секрета однозначно находится по его “проекциям”. Рассмотрим теперь случай, когда вектор h0 не представим в виде линейной комбинации векторов {hj: j Î A}. Нам нужно показать, что в этом случае для любых заданных значений координат из множества А число строк матрицы V с данным значением любой координаты не зависит от этого значения. В этом не трудно убедится, рассмотрев (18.3) как систему линейных уравнений относительно неизвестных fi



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

Указание. Рассмотрите две системы: c “нулевым” уравнением и без него (т.е. со свободным членом). Так как вектор h0

не представим в виде линейной комбинации векторов {hj: j Î A}, то ранг матрицы коэффициентов второй системы на 1 больше ранга матрицы коэффициентов первой системы. Отсюда немедленно следует, что если первая система совместна, то совместна и вторая при любом s0.

Эта конструкция подводит нас к определению общей линейной СРС. Пусть секрет и его “проекции” представляются как конечномерные векторы si = (s, …, s) и генерируются по формуле si = fHi, где Hi

— некоторые r × mi-матрицы. Сопоставим каждой матрице Hi

линейное пространство Li

ее столбцов (т.е. состоящее из всех линейных комбинаций вектор-столбцов матрицы Hi). Несложные рассуждения, аналогичные приведенным выше для одномерного случая (все mi = 1), показывают, что данная конструкция дает совершенную СРС тогда и только тогда, когда семейство линейных подпространств {L0, …, Ln} конечномерного векторного пространства K удовлетворяет упомянутому выше свойству “все или ничего”.


При этом множество А является разрешенным {La: a Î A} содержит подпространство L0 целиком. С другой стороны, множество А является неразрешенным (А Ï Г), если и только если линейная оболочка подпространств {La: a Î A} пересекается с подпространством L0

только по вектору 0. Отметим, что если бы для некоторого А пересечение L0 и линейной оболочки {La: a Î A} было нетривиальным, то участники А не могли бы восстановить секрет однозначно, но получали бы некоторую информацию о нем, т.е. схема не была бы совершенной.

Пример 18.3. Рассмотрим следующую структуру доступа для случая четырех участников, задаваемую Гmin = {{1,2}, {2,3}, {3,4}}. Она известна как первый построенный пример структуры доступа, для которой не существует идеальной реализации. Более того, было доказано, что для любой ее совершенной реализации R(Г) ? 3/2. С другой стороны, непосредственная проверка показывает, что выбор матриц H0, H1, ..., H4, приведенных на рис. 18.2, дает совершенную линейную СРС с R = 3/2, реализующую эту структуру, которая, следовательно, является и оптимальной (наиболее экономной) СРС.



Рис. 18.2. Матрицы, реализующие совершенную линейную СРС


Содержание раздела