Устройство для определения совместно используемого ключа - заявка 2017102556 на патент на изобретение в РФ

1. Первое устройство (300), сконфигурированное с возможностью определять совместно используемый ключ со вторым устройством (350), при этом первое устройство содержит
- электронное хранилище (320) для хранения
- первого идентификационного номера (310, A),
- первой закрытой функции коррекции (376, ),
- первого закрытого одномерного ключевого полинома (372, ),
- при этом второе устройство (350) имеет доступ к второму закрытому одномерному ключевому полиному () и второй функции коррекции (), выполнено с возможностью получать второй промежуточный ключ от подстановки первого идентификационного номера (310, A) во второй закрытый одномерный ключевой полином (), и выполнено с возможностью получать второй скорректированный ключ от модификации второго промежуточного ключа с помощью коэффициента коррекции, при этом первая и вторая закрытая функция коррекции являются неполиномиальными целочисленными, монотонными функциями,
- блок (342) передачи данных, выполненный с возможностью получать второй идентификационный номер (355, ) второго устройства,
- блок (331) управления полиномами, выполненный с возможностью
- подставлять второй идентификационный номер (355) в первый закрытый одномерный ключевой полином (372), получая первый промежуточный ключ, при этом первый промежуточный ключ определяет первый набор ключей, при этом второй промежуточный ключ, полученный вторым устройством, содержится в первом наборе ключей,
- блок (391) коррекции ключей, выполненный с возможностью
- подставлять второй идентификационный номер (355) в первую закрытую функцию (376) коррекции, получая первый коэффициент коррекции, и
- модифицировать первый промежуточный ключ с помощью первого коэффициента коррекции, чтобы получать первый скорректированный ключ, при этом первый скорректированный ключ определяет второй набор ключей, при этом второй набор ключей меньше, чем первый набор ключей, при этом второй набор ключей содержит второй скорректированный ключ, при этом первое устройство выполнено с возможностью получать совместно используемый ключ из, по меньшей мере, первого скорректированного ключа.
2. Первое устройство (300) п. 1, в котором первая закрытая функция коррекции () является округленным полиномом с рациональными коэффициентами.
3. Первое устройство (300) по п. 2, в котором первая закрытая функция коррекции () является округленным полиномом с одиночным членом, имеющим рациональный коэффициент ().
4. Первое устройство (300) по п. 1, в котором первая закрытая функция коррекции (376, ), хранится как возрастающая последовательность целочисленных точек излома , так что , если , и так что , если .
5. Первое устройство (300) по любому из предшествующих пунктов, в котором первый закрытый одномерный ключевой полином (372, ), получен системой (200) для конфигурирования устройства (300) посредством получения набора одномерных полиномов посредством, для каждого конкретного полинома из первого закрытого набора двумерных полиномов (252, ) подстановки первого идентификационного номера () в упомянутый конкретный полином () и приведения по модулю целого числа приведения , ассоциированного с упомянутым конкретным полиномом, и сложения набора одномерных полиномов.
6. Первое устройство (300) по п. 5, в котором закрытые целые числа приведения удовлетворяют , для некоторых целых чисел с , и открытого глобального целого числа приведения (256, ).
7. Первое устройство (300) по любому из предшествующих пунктов, в котором первый набор ключей определяется посредством первого промежуточного ключа посредством добавления или вычитания кратного члена коррекции, при этом кратное меньше, чем верхняя граница и больше, чем нижняя граница.
8. Первое устройство (300) по любому из предшествующих пунктов, в котором электронное хранилище (320) дополнительно хранит открытое глобальное целое число приведения (374, ), и модификация первого промежуточного ключа содержит умножение первого коэффициента коррекции на открытое глобальное целое число приведения (374, ) и добавление или вычитание результата умножения к первому промежуточному ключу.
9. Первое устройство (300) по п. 8, в котором блок управления полиномами дополнительно выполнен с возможностью приводить результат подстановки по модулю открытого глобального целого числа приведения (), и дополнительно приводить результат приведения по модулю открытого глобального целого числа приведения () по модулю , чтобы получать первый промежуточный ключ, при этом первый промежуточный ключ имеет бит в длину, модификация первого промежуточного ключа дополнительно содержит приведение по модулю после добавления или вычитания.
10. Первое устройство (300) по п. 5, в котором функция коррекции аппроксимирует функцию
, где =, при этом представляют первый закрытый набор двумерных полиномов (252) и представляют второй закрытый набор модулей приведения.
11. Первое устройство (300) по любому из предшествующих пунктов, в котором
- блок (342) передачи данных дополнительно выполнен с возможностью принимать данные согласования ключей от второго устройства, при этом первое устройство содержит блок (336) согласования ключей, выполненный с возможностью модифицировать первый скорректированный ключ, чтобы он соответствовал принятым данным согласования ключей, при этом совместно используемый ключ получается из модифицированного первого скорректированного ключа.
12. Система (200) для конфигурирования первого устройства (300) для совместного использования ключа, при этом система содержит:
- модуль (210) получения ключевого материала, выполненный с возможностью получать в электронной форме корневой ключевой материал,
- менеджер (230) устройств для получения в электронной форме, по меньшей мере, первого идентификационного номера (310, ) для первого устройства
- блок (220) вычисления для вычисления для устройства закрытого одномерного ключевого полинома (229, ) и закрытой функции коррекции (271, ) из корневого ключевого материала и первого идентификационного номера (310, ) для использования в первом устройстве по п. 1, при этом первая закрытая функция коррекции является неполиномиальной целочисленной, монотонной функцией,
- менеджер (230) устройств дополнительно сконфигурирован с возможностью для электронного сохранения сгенерированного закрытого одномерного ключевого полинома (229, 236) и закрытой функции коррекции (271, ) в первом устройстве.
13. Система (200) для конфигурирования устройства (300) по п. 12, в которой
- корневой ключевой материал содержит первый закрытый набор двумерных полиномов (252, ), и второй закрытый набор целых чисел приведения (254, ), при этом каждый двумерный полином в первом наборе там ассоциирован с целым числом приведения из второго набора, модуль (210) получения ключевого материала дополнительно выполнен с возможностью получать открытое глобальное целое число приведения (256, ),
- блок (220) вычисления выполнен с возможностью вычислять для устройства закрытый одномерный ключевой полином (229, ) из первого и второго закрытых наборов посредством
- получения набора одномерных полиномов посредством
- для каждого конкретного полинома из первого закрытого набора, подстановки первого идентификационного номера () в упомянутый конкретный полином () и приведения по модулю целого числа приведения, ассоциированного с упомянутым конкретным полиномом, и
- сложения набора одномерных полиномов.
14. Система (200) для конфигурирования устройства (300) по п. 13, в которой блок вычисления выполнен с возможностью вычислять функцию коррекции посредством аппроксимации функции
, где =, при этом представляют первый закрытый набор двумерных полиномов (252) и представляют второй закрытый набор модулей приведения.
15. Способ для определения совместно используемого ключа со вторым устройством (350), при этом способ содержит
- сохранение
- первого идентификационного номера (A),
- первой закрытой функции коррекции (), при этом первая закрытая функция коррекции является неполиномиальной целочисленной, монотонной функцией,
- первого закрытого одномерного ключевого полинома (372, ),
- получение второго идентификационного номера (355, ) второго устройства,
- подстановку второго идентификационного номера в закрытый одномерный ключевой полином, получая первый промежуточный ключ, при этом промежуточный ключ определяет первый набор ключей,
- подстановку второго идентификационного номера в первую закрытую функцию коррекции, получая первый коэффициент коррекции,
- модификацию первого промежуточного ключа с помощью первого коэффициента коррекции, чтобы получать первый скорректированный ключ, при этом первый скорректированный ключ определяет второй набор ключей, при этом второй набор меньше, чем первый набор ключей.
16. Способ для конфигурирования устройства (300) для совместного использования ключа, при этом способ содержит:
- получение в электронной форме корневого ключевого материала,
- получения в электронной форме первого идентификационного номера (310, A) для устройства,
- вычисление для устройства закрытого одномерного ключевого полинома (229) и первой закрытой функции коррекции () из корневого ключевого материала и первого идентификационного номера (310, ), при этом первая закрытая функция коррекции является неполиномиальной целочисленной, монотонной функцией,
- электронное сохранение сгенерированного закрытого одномерного ключевого полинома (229, 236) и первой закрытой функции коррекции () в устройстве.
17. Компьютерная программа, содержащая инструкции, которые, когда исполняются на компьютере, предписывают процессору выполнять способ по п. 15 или 16.
18. Считываемый компьютером носитель, хранящий компьютерную программу по п. 17.
Наверх