УСТРОЙСТВО И СПОСОБ СОВМЕСТНОГО ИСПОЛЬЗОВАНИЯ МАТРИЦЫ ДЛЯ ИСПОЛЬЗОВАНИЯ В КРИПТОГРАФИЧЕСКОМ ПРОТОКОЛЕ

1. Первый электронный сетевой узел (110), сконфигурированный для криптографического протокола на основе совместно используемой матрицы и закрытого вектора, причем совместно используемая матрица имеет множественные записи, причем каждая запись имеет значение, причем первый сетевой узел содержит:
- интерфейс (120) связи, выполненный с возможностью цифровой связи со вторым сетевым узлом (111),
1
2
- кэш-память, выполненную с возможностью кэшировать последовательность значений (A, A), при этом множественным записям совместно используемой матрицы назначается значение из последовательности значений как кэшировано в кэш–памяти,
- процессорную схему, выполненную с возможностью:
- получать последовательность значений, из которых выбираются значения для совместно используемой матрицы, причем последовательность значений совместно используется со вторым сетевым узлом, и кэшировать последовательность значений для использования с множеством соединений,
- принимать данные выбора из второго сетевого узла или определять данные выбора и отправлять данные выбора во второй сетевой узел, причем данные выбора указывают множественные позиции в последовательности значений и назначают множественным записям совместно используемой матрицы значение из кэшированной последовательности значений, указываемых посредством данных выбора,
- формировать совместно используемую матрицу (A) в соответствии с данными выбора и последовательностью значений с заданием упомянутых множественных записей совместно используемой матрицы равными множественным значениям, назначаемым посредством данных выбора,
- применять совместно используемую матрицу в криптографическом протоколе, содержащем вычисление матричного произведения между совместно используемой матрицей и закрытым вектором.
2. Первый сетевой узел (110) по п. 1, в котором процессорная схема выполнена с возможностью выбирать предварительно определенную первую группу значений в последовательности значений для соответствующей предварительно определенной второй группы записей совместно используемой матрицы, причем данные выбора указывают множественные позиции в первой группе для записей во второй группе таким образом, что каждой записи во второй группе назначается значение из первой группы, причем вторая группа имеет меньше записей, чем совместно используемая матрица.
3. Первый сетевой узел (110) по п. 2, в котором часть данных выбора, которые указывают множественные значения в первой группе для записей во второй группе, имеет размер в битах меньше 1/100 от полного размера в битах значений во второй группе.
4. Первый сетевой узел (110) по любому из предшествующих пунктов, в котором данные выбора содержат множественные параметры, процессорная схема выполнена с возможностью вычислять из параметра в данных выбора по меньшей мере одну запись в последовательности значений и по меньшей мере одну запись в совместно используемой матрице, причем упомянутое вычисление является линейным в параметре и назначает значение упомянутой вычисленной записи в последовательности значений упомянутой записи в совместно используемой матрице.
5. Первый сетевой узел (110) по п. 2, 3 или 4, в котором последовательность значений образует базовую матрицу, причем данные выбора указывают циклическую перестановку по меньшей мере одной строки и/или столбца базовой матрицы посредством указания числа записей, на которое поворачивается упомянутая строка и/или столбец.
6. Первый сетевой узел (110) по любому из предшествующих пунктов, в котором данные выбора содержат случайное начальное число, причем процессорная схема выполнена с возможностью инициализировать детерминированный генератор псевдослучайных чисел случайным начальным числом и получать из вывода детерминированного генератора псевдослучайных чисел индикатор множественных значений в последовательности значений и/или множественных записей совместно используемой матрицы.
7. Первый сетевой узел (110) по любому из предшествующих пунктов, в котором данные выбора содержат перестановку, причем процессорная схема выполнена с возможностью переставлять последовательность значений согласно перестановке и назначать перестановочную последовательность значений записям совместно используемой матрицы согласно назначению по умолчанию.
l
8. Первый сетевой узел (110) по любому из предшествующих пунктов, в котором процессорная схема выполнена с возможностью вычислять матричное произведение между совместно используемой матрицей (A) и закрытым вектором или матрицей (r; S) первого сетевого узла в качестве части криптографического протокола.
9. Первый сетевой узел (110) по п. 8, в котором первый и второй сетевой узел сконфигурированы для протокола обмена ключами, и процессорная схема выполнена с возможностью:
l
- формировать матрицу (S) закрытых ключей,
l
- формировать матрицу (P) открытых ключей, причем упомянутое формирование содержит по меньшей мере:
l
- вычисление матричного произведения между совместно используемой матрицей (A) и матрицей (S) закрытых ключей для получения матричного произведения,
- отправку матрицы открытых ключей первого сетевого узла во второй сетевой узел,
R
- прием матрицы (P) открытых ключей второго сетевого узла,
- вычисление необработанного ключа в качестве матричного произведения между принимаемым открытым ключом второго узла и матрицей закрытых ключей первого сетевого узла, при этом первый сетевой узел дополнительно выполнен с возможностью вычислять совместно используемый ключ из по меньшей мере необработанного ключа.
10. Первый сетевой узел (110) по п. 8, в котором первый и второй сетевой узел сконфигурированы для протокола шифрования с открытым ключом, процессорная схема выполнена с возможностью:
- получать открытый ключ второго сетевого узла, причем упомянутый открытый ключ содержит данные выбора и дополнительную матрицу (B) открытых ключей, причем дополнительная матрица открытых ключей заранее получается из совместно используемой матрицы и матрицы (S) закрытых ключей,
- выбирать случайный вектор r и вычислять два матричных произведения (например, , ) между случайным вектором (r) и совместно используемой матрицей и между случайным вектором (r) и дополнительной матрицей открытых ключей,
- вычислять зашифрованное сообщение из сообщения простым текстом посредством добавления вектора сокрытия данных, вычисленного из первого произведения из двух матричных произведений, причем зашифрованное сообщение дополнительно включает в себя информацию дешифрования, вычисленную из второго произведения из двух матричных произведений.
11. Первый сетевой узел (110) по любому из предшествующих пунктов, содержащий:
1
2
- кэш–память, выполненную с возможностью кэшировать последовательность значений (A, A) вместе с соответствующим идентификатором последовательности, который идентифицирует упомянутую кэшированную последовательность значений, при этом
- процессорная схема выполнена с возможностью:
- принимать идентификатор последовательности из второго сетевого узла и проверять, кэшируется или нет последовательность значений, соответствующих принимаемому идентификатору последовательности, в кэш–памяти, и если такая последовательность значений не кэшируется в матрице кэша, получать последовательность значений из второго сетевого узла и/или отправлять идентификатор последовательности во второй сетевой узел, соответствующий последовательности значений, кэшированных в кэш–памяти,
- использовать последовательность значений, идентифицированных посредством идентификатора последовательности, чтобы формировать совместно используемую матрицу.
12. Первый сетевой узел (110) по п. 11, в котором идентификатор последовательности содержит дополнительное случайное начальное число, получение или совместное использование последовательности значений содержат инициализацию детерминированного генератора псевдослучайных чисел дополнительным случайным начальным числом и получение последовательности значений из вывода инициализированного детерминированного генератора псевдослучайных чисел.
13. Первый сетевой узел по любому из предшествующих пунктов, в котором последовательность значений получается от доверенной третьей стороны.
64
14. Первый сетевой узел по любому из предшествующих пунктов, в котором число разных совместно используемых матриц, получаемых из одиночной последовательности значений с использованием разных данных выбора, составляет по меньшей мере 2.
15. Первый сетевой узел по любому из предшествующих пунктов, выполненный с возможностью принимать зашифрованные сетевые соединения от множественных вторых сетевых узлов, причем первый сетевой узел выполнен с возможностью принимать запрос на установление соединения от второго узла посредством отправки ответного сообщения, причем упомянутое ответное сообщение содержит случайное начальное число, причем упомянутое случайное начальное число указывает последовательность значений, сохраненных в кэш-памяти первого сетевого узла, причем второй сетевой узел отправляет данные выбора в первый сетевой узел.
16. Электронная сетевая система, содержащая первый сетевой узел (110) по любому из предшествующих пунктов и второй сетевой узел, при этом второй сетевой узел сконфигурирован для криптографического протокола на основе совместно используемой матрицы и закрытого вектора, причем второй сетевой узел содержит:
- интерфейс (120) связи, выполненный с возможностью цифровой связи с первым сетевым узлом,
1
2
кэш–память, выполненную с возможностью кэшировать последовательность значений (A, A), при этом множественным записям совместно используемой матрицы назначается значение из последовательности значений как кэшировано в кэш-памяти,
- процессорную схему, выполненную с возможностью:
- получать ту же последовательность значений, что и первый узел, причем значения для совместно используемой матрицы выбираются из последовательности, и кэшировать последовательность значений для использования с множественными соединениями,
- определять данные выбора и отправлять данные выбора в первый сетевой узел или принимать данные выбора из первого сетевого узла, причем данные выбора указывают множественные позиции в последовательности значений и назначают множественным записям совместно используемой матрицы значение из последовательности значений, указанных данными выбора,
- формировать ту же совместно используемую матрицу (A), что и первый сетевой узел, в соответствии с данными выбора и последовательностью значений с заданием упомянутых множественных записей совместно используемой матрицы равными множественным значениям, назначенным посредством данных выбора,
- применять совместно используемую матрицу в криптографическом протоколе, содержащем вычисление матричного произведения между совместно используемой матрицей и закрытым вектором.
17. Электронный способ (400) для первого электронного сетевого узла (110), сконфигурированного для криптографического протокола на основе совместно используемой матрицы и закрытого вектора, причем совместно используемая матрица имеет множественные записи, причем каждая запись имеет значение, при этом упомянутый способ содержит этапы, на которых:
- устанавливают (410) цифровую связь между первым сетевым узлом и вторым сетевым узлом (111),
- получают (420) последовательность значений, из которых выбирают значения для совместно используемой матрицы, причем последовательность значений совместно используют со вторым сетевым узлом, и кэшируют последовательность значений для использования с множественными соединениями,
- принимают (430) данные выбора из второго сетевого узла или определяют данные выбора и отправляют данные выбора во второй сетевой узел, причем данные выбора указывают множественные позиции в последовательности значений и назначают множественным записям совместно используемой матрицы значение из последовательности значений, указываемых посредством данных выбора,
- формируют (440) совместно используемую матрицу (A) в соответствии с данными выбора с заданием упомянутых множественных записей совместно используемой матрицы равными множественным значениям, назначенным посредством данных выбора, и
- применяют (450) совместно используемую матрицу в криптографическом протоколе, содержащем вычисление матричного произведения между совместно используемой матрицей и закрытым вектором.
18. Машиночитаемый носитель (1000), содержащий временные или невременные данные (1020), представляющие инструкции, чтобы инструктировать процессорной системе осуществлять способ по п. 17.