Предварительное распределение ключей позволяет сократить количество ключевого материала, хранящегося у пользователей. Пусть в сети с п пользователями каждая пара пользователей имеет независимые ключи. Ключевую систему сети описывает матрица: Кп = (к1з), /, 5 Е {1,…, п}, где к-^ есть ключ для связи /-го и 5-го пользователей, / Ф $ ки — пустой символ. Всего в сети используется п (п — 1) / 2 ключей, и любому пользователю для связи с остальными пользователями нужно хранить п — 1 ключей (г-й строки матрицы Кп). Следовательно, при большом п в сети заметно усложняются вопросы обеспечения ЖЦК. Для уменьшения объема хранимой информации применяются схемы предварительного распределения секретных ключей, суть которых в распределении не самих ключей, а информации, достаточной для вычисления пользователями ключа по заранее оговоренной процедуре.
Рассмотрим как пример предварительного распределения ключей схему Блома. Пусть Р — конечное поле большого порядка, г1? …, гп — несекретные числа поля Ру соответствующие п пользователям сети и хранящиеся на общедоступном сервере. Секретным является симметричный многочлен.
т т
1(ху //) = X X а1)х1У)?над полем Р степени 2 т, где 1 < т < п и = а# при / Ф].
/=0 /=0.
Коэффициенты многочлена/(.х, у) хранятся в ЦРК.
Ключевой материал /-го пользователя есть набор (а^ а1 …, а$) коэффициентов многочлена /(х, г,-) = + а‘^х + … + а^хт, / = 1,…, п. Для связи.
?-го и 7-го пользователей используется ключ /(/*, г;), вычисляемый обоими по известным числам г1?…, гп. В данной схеме каждому пользователю достаточно хранить т -г 1 секретных чисел вместо п — 1, всего в сети хранится т (т -I- 1) / 2 секретных коэффициентов вместо п (п — 1) / 2.