Управление синхронизированными симметричными ключами для защиты данных, которыми обмениваются узлы связи
Иллюстрации
Показать всеИзобретение относится к защите данных, которыми обмениваются узлы связи. Технический результат - защита данных, которыми обмениваются узлы связи. Способ использования ключей защиты для защиты/снятия защиты данных, которыми обмениваются узлы связи, содержит: защиту посредством первого узла связи данных, подлежащих отправке в один или более вторых узлов связи, на основе заданного ключа защиты и снятие защиты посредством каждого из вторых узлов связи защищенных данных, принятых из первого узла связи, на основе упомянутого заданного ключа защиты, синхронизацию посредством каждого узла связи соответственной привязки к внутреннему времени с привязкой к глобальному времени таким образом, чтобы получить соответственную привязку к синхронному времени, и извлечение посредством каждого узла связи, заданного ключа защиты на основе соответственной привязки к синхронному времени из одной и той же упорядоченной последовательности ключей защиты, каждый из которых должен быть использован в соответственном интервале времени достоверности. 3 н. и 11 з.п. ф-лы, 8 ил.
Реферат
Область техники, к которой относится изобретение
Настоящее изобретение относится к управлению синхронизированными симметричными ключами и к их использованию для защиты данных, которыми обмениваются узлы связи. В частности, конкретный аспект настоящего изобретения имеет отношение к управлению синхронизированными симметричными ключами шифрования/дешифрования и к симметричному шифрованию/дешифрованию, основанному на них.
Предшествующий уровень техники
В настоящее время симметричные ключи широко используются, чтобы защищать данные, которыми обмениваются узлы связи.
Например, в криптографии алгоритмы симметричных ключей используют один и тот же криптографический ключ, называемый симметричным ключом, как для шифрования, так и дешифрования, т. е. чтобы преобразовывать нешифрованный текст в зашифрованный текст, и наоборот. Симметричный ключ должен быть известен узлам связи, обменивающимся данными, зашифрованными на основе упомянутого симметричного ключа, для того чтобы дать возможность правильного дешифрования.
Во многих современных системах связи, использующих симметричное шифрование/дешифрование, чтобы защищать связь, симметричные ключи распространяются заранее в узлы связи таким образом, чтобы минимизировать риск, что распространяемые ключи перехватятся. Тем не менее, упомянутый риск никогда полностью не исключается, и, следовательно, если распространяемые ключи перехватываются несанкционированной стороной, упомянутая несанкционированная сторона может дешифровать зашифрованные данные, которыми обмениваются санкционированные узлы связи.
Вследствие этого современные системы связи, распространяющие заранее симметричные ключи в узлы связи, никогда полностью не являются защищенными.
Задача и сущность изобретения
Задачей настоящего изобретения является предоставить методологию для управления симметричными ключами, которая может устранить по меньшей мере частично вышеупомянутые недостатки.
Эта задача решается посредством настоящего изобретения, которое относится к способу защиты/снятия защиты данных, которыми обмениваются узлы связи, к устройству связи, сконфигурированному с возможностью осуществления упомянутого способа, и к программному продукту программного обеспечения для осуществления упомянутого способа, как определено в прилагаемой формуле изобретения.
В частности, способ в соответствии с настоящим изобретением содержит:
защиту, посредством первого узла связи, данных, подлежащих отправке в один или более вторых узлов связи, на основе заданного ключа защиты; и
снятие защиты, посредством каждого из вторых узлов связи, защищенных данных, принятых из первого узла связи, на основе упомянутого заданного ключа защиты;
и отличается тем, что дополнительно содержит:
синхронизацию, посредством каждого узла связи, соответственной привязки к внутреннему времени с привязкой к глобальному времени таким образом, чтобы получить соответственную привязку к синхронному времени; и
извлечение, посредством каждого узла связи, заданного ключа защиты на основе соответственной привязки к синхронному времени из одной и той же упорядоченной последовательности ключей защиты, каждый из которых должен быть использован в соответственном интервале времени достоверности.
Краткое описание чертежей
Для лучшего понимания настоящего изобретения предпочтительные варианты осуществления, которые подразумеваются только в качестве примера, а не должны быть истолкованы как ограничивающие, будут теперь описаны со ссылкой на прилагаемые чертежи (все не в масштабе), на которых:
фиг. 1 схематически иллюстрирует первый процесс генерации ключа в соответствии с первым предпочтительным вариантом осуществления настоящего изобретения;
фиг. 2 схематически иллюстрирует второй процесс генерации ключа в соответствии со вторым предпочтительным вариантом осуществления настоящего изобретения;
фиг. 3 изображает скачки ключа в соответствии с примерным вариантом осуществления настоящего изобретения;
фиг. 4 изображает зависимость между временем такта внутреннего генератора тактовых импульсов и временем выдержки ключа в соответствии с примерным вариантом осуществления настоящего изобретения;
фиг. 5 схематически иллюстрирует пример функциональной архитектуры отправляющего узла в соответствии с конкретным предпочтительным вариантом осуществления настоящего изобретения;
фиг. 6 изображает примерную генерацию синхронизированного времени, выполняемую отправляющим узлом фиг. 5;
фиг. 7 изображает пример окна ключей, используемого при приеме, в соответствии с упомянутым конкретным предпочтительным вариантом осуществления настоящего изобретения; и
фиг. 8 схематически иллюстрирует пример функциональной архитектуры принимающего узла в соответствии с упомянутым конкретным предпочтительным вариантом осуществления настоящего изобретения.
Подробное описание предпочтительных вариантов осуществления изобретения
Последующее описание представлено, чтобы дать возможность специалисту в данной области техники реализовать и использовать изобретение. Различные модификации в вариантах осуществления будут без труда понятны специалистам в данной области техники, не выходя за рамки объема настоящего изобретения, как заявлено в формуле изобретения. Таким образом, настоящее изобретение не подразумевается как ограниченное изображенными вариантами осуществления, а должно соответствовать самым широким рамкам объема, согласующимся с принципами и признаками, раскрытыми в настоящей заявке и определенными в прилагаемой формуле изобретения.
Настоящее изобретение имеет отношение к локальной генерации синхронизированных симметричных ключей и к их использованию для защиты данных, которыми обмениваются узлы связи.
Некоторые основные концепции настоящего изобретения не зависят от разных прикладных сценариев, несмотря на то, что некоторые параметры адаптированы к конкретным прикладным сценариям. Вследствие этого в последующем будут описаны сначала общие концепции настоящего изобретения, а затем конкретные характеристики, приспособленные к разным сценариям.
Некоторые концепции настоящего изобретения являются применимыми ко всем узлам связи, участвующим в защищенной связи, т. е. к отправителю (отправителям) и приемнику (приемникам), и, следовательно, в последующем описании упомянутые концепции не будут повторяться, в то время как будут подчеркнуты конкретные функциональные возможности, осуществляемые только посредством отправителя (отправителей) или посредством приемника (приемника).
Конкретный аспект настоящего изобретения имеет отношение к локальной генерации синхронизированных симметричных ключей шифрования на обеих сторонах канала связи, а именно открытого, т. е. перехватываемого, канала связи.
В частности, в соответствии с конкретным аспектом настоящего изобретения, узлы связи шифруют и дешифруют данные, которыми они взаимно обмениваются через канал связи, посредством использования синхронизированных ключей шифрования/дешифрования, извлеченных из одной и той же последовательности ключей защиты, и посредством изменения используемого ключа шифрования/дешифрования во время передачи/приема. Изменение ключа может планироваться на основе времени или события и синхронизируется между узлами связи, для того чтобы гарантировать правильное дешифрование. Эта концепция представляет аналогию со способами связи со скачкообразной перестройкой частоты, в соответствии с которыми передатчик (передатчики) и приемник (приемники) изменяют частоту на основе времени, следуя совместно используемой последовательности частот. В частности, в способах связи со скачкообразной перестройкой частоты изменение между двумя последовательными частотами в заданной последовательности частот называется «скачок частоты» и аналогично в последующем аналогичное название, а именно «скачок ключа», будет заимствовано, чтобы идентифицировать изменение между двумя последовательными ключами в заданной последовательности ключей.
В более общей перспективе настоящее изобретение позволяет узлам связи генерировать одинаковые последовательности ключей и извлекать синхронизированные ключи из упомянутых последовательностей. Извлеченные ключи могут преимущественно использоваться, чтобы предоставлять разные услуги защиты, как шифрование/дешифрование, проверка целостности и проверка аутентичности, или могут использоваться как индекс для поиска одного ключа в заданной последовательности ключей. В частности, ключи, извлеченные из каждой последовательности, могут использоваться, чтобы предоставлять соответственную услугу защиты.
В соответствии с настоящим изобретением, генерация ключа выполняется независимо каждым узлом связи. Узлы связи не обмениваются никакими сообщениями, для того чтобы договариваться о подлежащем использованию ключе. Единственным требованием для генерации ключа является, чтобы используемые функции генерации ключей создавали одинаковые ключи для обоих узлов связи, для того чтобы позволять принимающему узлу (узлам) правильно извлекать информацию.
Предпочтительно генерация локального ключа выполняется в два этапа:
1. Генерация или извлечение одной или более упорядоченных последовательностей чисел (OSN); и
2. Генерация ключей на основе сгенерированных/извлеченных OSN.
Упомянутый двухэтапный процесс генерации ключа позволяет независимо генерировать разные ключи для разных услуг защиты на основе одной и той же OSN. В частности, упомянутый двухэтапный процесс генерации ключа позволяет независимо генерировать разные упорядоченные последовательности ключей (OSK) на основе одной и той же OSN.
В этой связи фиг. 1 схематически иллюстрирует первый процесс генерации ключа для генерации разных OSK на основе одной OSN, в соответствии с первым предпочтительным вариантом настоящего изобретения.
В частности, фиг. 1 изображает функциональную блок-схему модуля 1 генерации ключа, сконфигурированного с возможностью:
предоставления OSN (блок 11) посредством генерации ее на основе начального числа группы услуг, предпочтительно действуя в качестве генератора псевдослучайных чисел (PRNG) (подблок 111), или в качестве альтернативы посредством извлечения ее из сохраненных OSN (подблок 112); и
применения, для каждой из N услуг защиты (где N - целое число, равное или большее единицы, т. е. N ≥ 1 ), предоставляемых на основе соответственной OSK, соответственного преобразования защиты, основанного на соответственном слове дня (WOD) услуги, к сгенерированной/извлеченной OSN, таким образом, чтобы сгенерировать соответственную OSK услуги (блоки 12).
Подробно, как изображено на фиг. 1, разная OSK генерируется для каждой услуги защиты посредством применения соответственного преобразования защиты в одной сгенерированной/извлеченной OSN. Каждое преобразование защиты использует, в качестве входных данных, одну сгенерированную/извлеченную OSN и конкретное соответственное WOD услуги.
Вышеупомянутая генерация ключа дает возможность генерации OSK, которые являются одинаковыми для отправителя (отправителей) и приемника (приемников), если упомянутые узлы связи загружаются с одинаковыми OSN и WOD услуг.
Обычно используемые преобразования защиты являются такими, чтобы гарантировать хорошие статистические характеристики зашифрованного текста, даже с шаблонами нешифрованного текста, применяемыми в качестве входных данных, и чтобы допускать, что невозможно делать предсказание о входной OSN посредством изучения выходных OSK.
Фиг. 2 схематически иллюстрирует второй процесс генерации ключа на основе разных OSN в соответствии со вторым предпочтительным вариантом осуществления настоящего изобретения.
В частности, фиг. 2 схематически иллюстрирует второй процесс генерации ключа для генерации разных OSK, каждой на основе соответственной OSN.
Подробно фиг. 2 изображает функциональную блок-схему модуля 2 генерации ключа, сконфигурированного, для каждой из N последовательностей защиты (при N ≥ 1 ), предоставляемых на основе соответственной OSK, с возможностью:
предоставления соответственной OSN (блок 21) посредством генерации ее на основе соответственного начального числа услуги, предпочтительно действуя в качестве PRNG (подблок 211), или, в качестве альтернативы, посредством извлечения ее из соответственных сохраненных OSN (подблоки 212); и
применения соответственного преобразования защиты, основанного на соответственном WOD услуги, к соответственной сгенерированной/извлеченной OSN, таким образом, чтобы сгенерировать соответственную OSK услуги (блоки 22).
Это второе решение для генерации OSK услуг является вычислительно более сложным, чем первое решение, ранее описанное в связи с фиг. 1, но является предпочтительным в некоторых прикладных сценариях, например, когда некоторые из OSK услуг должны быть отправлены в нешифрованном тексте через открытый канал, для того чтобы использоваться как индексы, которые идентифицируют ключи в других OSK услуг.
Промежуточное решение может быть получено посредством разделения услуг защиты на группы и посредством использования разного начального числа групп услуг для каждой группы услуг защиты.
Как ранее описано, имеются два основных варианта для локальной генерации OSN, а именно:
1. OSN генерируется посредством использования PRNG или
2. OSN извлекается из хранилища OSN, которое содержит предварительно сгенерированные последовательности чисел, и является одинаковым для отправителя (отправителей) и приемника (приемников).
С использованием первого варианта для локальной генерации OSN все элементы OSN динамически создаются посредством функции PRNG, начиная с начального числа, упомянутого как начальное число группы услуг или начальное число услуги.
Функция PRNG может быть определена как функция генерации случайных чисел, которая создает последовательность значений на основе начального числа и текущего состояния. Если задано одно и то же начальное число, функция PRNG будет всегда создавать одну и ту же последовательность значений. Эта характеристика гарантирует, что одна и та же OSN будет генерироваться на обоих концах канала связи, начиная с одного и того же начального числа. Генератор не псевдослучайных чисел, такой как генератор случайных чисел аппаратного обеспечения, является неподходящим для настоящего изобретения, так как он генерировал бы разные OSN на двух сторонах канала связи.
Когда алгоритм неполиноминального времени может различать выходные данные PRNG и истинную случайную последовательность, PRNG упоминается как «криптографически сильный». Предпочтительно, в соответствии с настоящим изобретением, используется криптографически сильный PRNG, поскольку он делает невозможным предсказание сгенерированной последовательности. Кроме того, наличие большой порции выходных данных из PRNG не помогает в предсказании прошлых или будущих значений.
Кроме того, для того чтобы гарантировать непредсказуемость выходных данных используемого криптографически сильного PRNG, упомянутый PRNG обычно запускается с непредсказуемого начального числа, например начального числа, сгенерированного с использованием нелинейной функции.
Вместо этого с использованием второго варианта для локальной генерации OSN последовательность OSN, используемая, чтобы генерировать ключи услуги, извлекается из хранилища OSN; очевидно, хранилище (хранилища) OSN является/являются одинаковыми для всех узлов связи.
Первый вариант имеет преимущество в том, что дает возможность связи потенциально неограниченной длительности, поскольку элементы OSN генерируются динамически, в то время как второй вариант ограничивается размером хранилища OSN. Это преимущество, так или иначе, ограничивается периодичностью PRNG. На самом деле, после фиксированного числа операций генерации (обычно очень высокого) PRNG опять создает одну и ту же выходную последовательность.
Шаблоны в PRNG могут вносить риски безопасности. Эти риски обычно могут быть устранены посредством использования преобразования (преобразований) защиты, гарантирующего хорошие статистические характеристики зашифрованного текста, даже с шаблонами нешифрованного текста, подаваемыми в качестве входных данных.
Кроме того, предпочтительно цикл PRNG длиннее, чем необходимая длина OSK. Фактически, если преобразование защиты с блочным шифром, действующее в режиме электронной кодовой книги (EBC), используется, чтобы генерировать OSK из OSN, сгенерированная OSK имеет одну и ту же длину цикла PRNG. Эта проблема может быть обычно устранена посредством использования, как упомянуто ранее, преобразования (преобразований) защиты, гарантирующего хорошие статистические характеристики зашифрованного текста, даже с шаблонами нешифрованного текста, подаваемыми в качестве входных данных. Например, преимущественно могут использоваться преобразования защиты с блочным шифром, действующие в режиме цепочки цифровых блоков (СВС), поскольку они имеют характеристику, скрывать шаблоны данных.
В последующем работа узлов связи при функционировании в качестве отправляющих и принимающих узлов будет описана, ради простоты описания, в связи с одной услугой защиты, применяемой к данным, которыми обмениваются упомянутые узлы связи, хотя понятно, что концепции настоящего изобретения, описанные в последующем относительно одной услуги защиты, очевидно, являются также применимыми, чтобы предоставлять множество услуг защиты.
Что касается работы отправителей, отправляющий узел выбирает ключ услуги из сгенерированной OSK услуги с использованием своего локального времени, синхронизированного с общим глобальным эталонным временем посредством внешней привязки к локальному точному и стабильному времени (LASTER). LASTER может обычно получаться из внешнего источника или из внутреннего источника, используемого отправляющим узлом, чтобы помечать передаваемые пакеты данных.
Каждый ключ услуги в OSK услуги имеет ограниченное время достоверности, в дальнейшем упоминаемое как время действия ключа Т.
В частности, время действия ключа Т является временем, проведенным с использованием каждого ключа услуги, извлеченного из OSK услуги между двумя последовательными скачками ключей.
Подробно время действия ключа Т связано с единицами внутреннего времени, обычно характеризующими источник внутреннего времени, такой как внутренний генератор тактовых импульсов, узлов связи, причем внутренний генератор тактовых импульсов обычно ограничивает временное разрешение посредством своей частоты. Таким образом, время действия ключа Т обычно может быть вычислено как кратное времени в тактах внутреннего генератора тактовых импульсов, где время в тактах является обратным частоте внутреннего генератора тактовых импульсов.
Иначе говоря, используя математический формализм, в результате получается, что:
T = m × t i c k _ t i m e ,
где m - целое число, равное или большее единицы (т. е. m ≥ 1 ), а время в тактах, как объяснено ранее, является обратным частоте внутреннего генератора тактовых импульсов, а именно
t i c k _ t i m e = 1 c l o c k _ f r e q u e n c y .
Индекс n=0, 1, 2, … может использоваться, чтобы идентифицировать последовательные интервалы достоверности ключа. В частности, типовой интервал достоверности ключа n соответствует времени действия ключа Т, начинающемуся в t _ 0 + n T и заканчивающемуся в t _ 0 + ( n + 1 ) T .
Начальное время t _ 0 обычно может быть выбрано как начальное время услуги защиты, упомянутое как глобальное эталонное время, выраженное в координированном универсальном времени (UTC).
Все кадры данных, которые должны передаваться в интервале достоверности ключа n, защищаются посредством ключа услуги K[n], который извлекается из OSK услуги, сгенерированной для рассматриваемой услуги защиты, и который математически может быть выражен как
K [ n ] = G e n K ( n , W O D , s e e d ) ,
где G e n K обозначает функцию генерации ключа для упомянутой рассматриваемой услуги защиты, причем функция генерации ключа G e n K генерирует OSK услуги для рассматриваемой услуги защиты на основе WOD услуги, ассоциированной с упомянутой рассматриваемой услугой защиты, и начального числа группы услуг или начального числа услуги, ассоциированного с упомянутой рассматриваемой услугой защиты, например, в соответствии с первым процессом генерации ключа, ранее описанным в связи с фиг. 1, или в соответствии со вторым процессом генерации ключа, ранее описанным в связи с фиг. 2, или в соответствии с процессом генерации ключа, промежуточным между первым и вторым процессами генерации ключа; и
извлекает ключ услуги K[n] из сгенерированной OSK услуги на основе индекса интервала достоверности ключа n (который можно понимать также как индекс этапа генерации ключа).
Фиг. 3 изображает, как связаны начальное время (услуги защиты) t _ 0 , время действия ключа Т и индекс интервала достоверности ключа n, и интервалы достоверности для разных ключей услуги K[n], где n=0,1,2,3,4,5,6.
Фиг. 4 изображает пример зависимостей между временем в тактах, временем действия ключа Т и индексом интервала достоверности ключа n согласно гипотезе, что T = 5 × t i c k _ t i m e .
Функция генерации ключа GenK обычно может генерировать OSK услуги на основе фиксированных значений WOD услуги и начального числа услуги (группы услуг) и извлекать из сгенерированной OSK услуги, когда внутреннее время идет дальше, текущий ключ услуги K[n] на основе текущего индекса интервала достоверности ключа n.
Обычно узлы связи могут обмениваться начальным числом услуги (группы услуг), временем действия ключа Т и начальным временем (услуги защиты) в нешифрованном тексте до начала обмена данными защиты, они могут быть фиксированными значениями или могут держаться в секрете, но могут быть известными двум узлам связи, например, могут быть предварительно совместно используемыми секретными значениями, или узлы связи могут обмениваться ими через канал связи защищенным способом. При сохранении в секрете начального числа услуги (группы услуг), времени действия ключа T и начального времени (услуги защиты) t _ 0 защита связи увеличивается.
Фиг. 5 схематически иллюстрирует пример функциональной архитектуры передающего узла, сконструированного с возможностью предоставления заданной услуги защиты, например шифрования, в соответствии с конкретным предпочтительным вариантом осуществления настоящего изобретения.
В частности, фиг. 5 изображает функциональную блок-схему отправляющего узла 5, который содержит:
источник 51 LASTER, сконфигурированный с возможностью предоставления текущей LASTER;
источник 52 локального времени, сконфигурированный с возможностью предоставления текущего локального времени;
модуль 53 синхронизации, который связан с источником 51 LASTER и источником 52 локального времени, чтобы получать из них, соответственно, текущую LASTER и текущее локальное время, и который сконфигурирован с возможностью синхронизации текущего локального времени с текущей LASTER таким образом, чтобы предоставлять текущее время синхронизации;
модуль 54 очереди полезной нагрузки, сконфигурированный с возможностью приема данных полезной нагрузки, подлежащих защите в соответствии с заданной услугой защиты (например, подлежащих шифрованию), и предоставления сигнала запуска, связанного с упомянутыми данными полезной нагрузки;
модуль 55 вычисления индекса, который связан с источником 52 локального времени, модулем 53 синхронизации и модулем 54 очереди полезной нагрузки, чтобы получать из них соответственно текущее локальное время, текущее время синхронизации и сигнал запуска, и который сконфигурирован с возможностью вычисления текущего индекса интервала достоверности ключа n на основе текущего локального времени, текущего времени синхронизации, сигнала запуска, предварительно определенного времени действия ключа Т и начального времени t _ 0 , ассоциированных с заданной услугой защиты;
модуль 56 генерации ключа, который связан с модулем 55 вычисления индекса, чтобы получать из него текущий индекс интервала достоверности ключа n, и который сконфигурирован с возможностью генерации OSK услуги на основе WOD услуги и начального числа услуги (группы услуг), ассоциированных с заданной услугой защиты, и извлечения текущего ключа услуги K[n] из сгенерированной OSK услуги на основе текущего индекса интервала достоверности ключа n; и
модуль 57 преобразования защиты полезной нагрузки, который связан с модулем 54 очереди полезной нагрузки и модулем 56 генерации ключа, чтобы получать из них соответственно текущие данные полезной нагрузки, подлежащие защите в соответствии с заданной услугой защиты, и текущий ключ услуги K[n], и который сконфигурирован с возможностью применения к упомянутым текущим данным полезной нагрузки преобразования защиты полезной нагрузки, основанного на текущем ключе услуги K[n] и связанного с заданной услугой защиты таким образом, чтобы создавать защищенные данные полезной нагрузки (например, зашифрованные данные полезной нагрузки).
Подробно источник 51 LASTER обычно может быть:
глобальной спутниковой системой навигации (GNSS), такой как глобальная система позиционирования (GPS), или терминалом Galileo или GLONASS, который связан с отправляющим узлом 5 и из которого упомянутый отправляющий узел 5 получает текущее время GNSS; или
приемником, сконфигурированным с возможностью приема радиосигналов, связанных со временем, из радиостанции, основанной на атомных часах, и извлечения из принятых радиосигналов, связанных со временем, текущего точного времени, таким как приемник DCF77, или приемник HBG, или приемник WWVB; или
клиентом протокола сетевого времени (NTP); или
другим источником глобального времени, из которого отправляющий узел 5 может получать текущую LASTER, например отправляющий узел 5 мог бы использовать в качестве LASTER привязку ко времени, которую он использует, чтобы синхронизировать кадры.
Обычно источник LASTER, такой как приемник GPS, имеет два выходных сигнала, а именно:
выходной сигнал данных, передающий значения глобального времени в виде данных UTC и значений времени (т. е. ГГГГ/MM/ДД ЧЧ/мм/сс); и
сигнал запуска, который сигнализирует, когда последнее значение глобального времени, записанное на выходном сигнале данных, становится действительным.
При использовании источник LASTER обычно записывает значения глобального времени на выходном сигнале данных до сигнализации начального времени их действительности посредством сигнала запуска.
Предпочтительно источник 52 локального времени является внутренним генератором тактовых импульсов отправляющего узла 5, причем внутренний генератор тактовых импульсов сконфигурирован с возможностью обеспечения счетчика локального времени в тактах.
Как описано ранее, модуль 53 синхронизации синхронизирует текущее локальное время с текущей LASTER, для того чтобы гарантировать минимальное влияние дрейфов локального времени.
Время синхронизации, выведенное модулем 53 синхронизации, является эталонным временем, выраженным в единицах внутреннего времени, синхронизированными/связанными с глобальным и точным временем, подаваемым источником 51 LASTER.
Предпочтительно время синхронизации содержит два поля:
счетчик локального времени в тактах, фиксируемый при запуске LASTER (в дальнейшем обозначенный как SyncTime.c); и
значение глобального времени LASTER при запуске LASTER (в дальнейшем обозначенное как SyncTime.GlobalTime).
Фиг. 6 изображает примерную генерацию времени синхронизации, выполняемую модулем 53 синхронизации.
Модуль 55 вычисления индекса вычисляет текущий индекс интервала достоверности ключа n на основе:
последнего принятого времени синхронизации;
текущего счетчика локального такта;
начального времени t _ 0 ;
предварительно определенного времени действия ключа T; и
сигнала запуска из модуля 54 очереди полезной нагрузки.
В асинхронном сценарии модуль 54 очереди полезной нагрузки предпочтительно предоставляет сигнал запуска, когда новая полезная нагрузка готова к передаче.
Предпочтительно модуль 55 вычисления индекса 55 фиксирует текущий счетчик локального такта в момент времени приема сигнала запуска, сигнализирующего, что подлежащие защите текущие данные полезной нагрузки являются доступными (в дальнейшем обозначенный как current_c), и вычисляет текущий индекс интервала достоверности ключа n в соответствии со следующим математическим выражением:
n = t _ 0 − S y n c T i m e . G l o b a l T i m e l o c a l _ t i c k _ t i m e _ c o u n t e r + c u r r e n t _ c − S y n c T i m e . c T .
Обычно модуль 56 генерации ключа сконфигурирован с возможностью генерации OSK обслуживания в соответствии с первым процессом генерации ключа, ранее описанным в связи с фиг. 1, или в соответствии со вторым процессом генерации ключа, ранее описанным в связи с фиг. 2, или в соответствии с процессом генерации ключа, промежуточным между первым и вторым процессами генерации ключа.
Важно подчеркнуть тот факт, что ранее описанный конкретный предпочтительный вариант осуществления настоящего изобретения может быть осуществлен посредством архитектуры, отличной от архитектуры отправляющего узла 5, ранее описанной и изображенной на фиг. 5, при условии, что упомянутая отличная архитектура сконфигурирована с возможностью выполнения ранее упомянутой синхронизации текущего локального времени с текущей LASTER, ранее описанного вычисления текущего индекса интервала достоверности ключа и ранее описанного извлечения текущего ключа услуги из OSK обслуживания.
Иначе говоря, отправляющий узел 5 может быть любым устройством/аппаратом связи, сконфигурированным с возможностью выполнения ранее упомянутой синхронизации текущего локального времени с текущей LASTER, ранее описанного вычисления текущего индекса интервала достоверности ключа и ранее описанного извлечения текущего ключа услуги из OSK обслуживания.
В частности, отправляющий узел 5 обычно может быть компьютером, переносным портативным компьютером, планшетом, рабочей станцией, смартфоном, устройством спутниковой связи или сетевым устройством, таким как маршуртизатор или базовая приемопередающая станция (BTS), соответственно сконфигурированными с возможностью выполнения ранее упомянутой синхронизации текущего локального времени с текущей LASTER, ранее описанного вычисления текущего индекса интервала достоверности ключа и ранее описанного извлечения текущего ключа услуги из OSK обслуживания.
Кроме того, функции, осуществляемые отправляющим узлом 5, могут преимущественно использоваться, чтобы защищать данные, связанные с любым уровнем модели взаимодействия открытых систем (OSI).
Наконец, функции, осуществляемые отправляющим узлом 5, могут преимущественно использоваться, чтобы предоставлять одну или более услуг защиты, такие как услуга (услуги) шифрования, и/или аутентификации, и/или целостности.
Что касается работы приемников, принимающие узлы также используют свое локальное время, синхронизированное с LASTER.
В отличие от отправителей, которые используют один ключ для преобразования защиты полезной нагрузки при каждом скачке ключа, приемники предпочтительно используют окно ключей таким образом, чтобы компенсировать дрейфы генератора тактовых импульсов и задержки распространения.
Окно ключей предпочтительно содержит, по меньшей мере, три ключа, извлекаемых из сгенерированной OSK услуги. В частности, окно ключей сдвигается на одну позицию в OSK услуги каждое время действия ключа Т.
В некоторых сценариях, когда информация о времени непосредственно доставляется в потоке данных, приемник может восстановить время отправителя из данных, таким образом исключая необходимость в окне ключей.
Очевидно, что отправители и приемники должны использовать одну и ту же OSK услуги, для того чтобы позволить приемникам извлекать данные полезной нагрузки из принятых защищенных данных полезной нагрузки.
Это получается посредством использования одной и той же функции (функций) генерации ключа GenK и одних и тех же значений для WOD (множества WOD) услуг и для начального числа (чисел) услуги (группы услуг) при передаче и приеме. Также время действия ключа Т и начальное время (услуги защиты) t_0 обычно совместно используются узлами связи для правильной синхронизации.
Допуская, что k - значение, связанное с размером окна ключей, для индекса интервала достоверности ключа n окно ключей KW[n] предпочтительно содержит:
некоторые предыдущие ключи услуги
K[n-1]=GenK((n-1), WOD, начальное число),
где i - содержится в диапазоне [1,k];
текущий ключ услуги
K[n]=GenK((n), WOD, начальное число); и
некоторые будущие ключи услуги
K[n+1]=GenK((n+1), WOD, начальное число),
где i - всегда содержится в диапазоне [1,k].
Следовательно, полное окно ключей для интервала достоверности ключа n, KW[n], содержит 2k+1 ключей услуги. Каждый ключ услуги в общем KW обычно может быть идентифицирован посредством использования следующей нотации: kw[n;i], с i в [-k,k].
Кроме того, ради простоты описания окно ключей KW[n] обычно может быть выражено через следующую формулу:
kw[n;i]=GenK((n+1), WOD, начальное число),
где i содержится в диапазоне [-k,k].
Фиг. 7 изображает пример окна ключей, сдвигающегося в OSK услуги. В частности, в примере, изображенном на фиг. 7, окно ключей KW включает в себя три ключа услуги, а именно предыдущий ключ услуги, текущий ключ услуги и следующий ключ услуги, таким образом получается, что значение, связанное с размером окна ключей k, равно единице, т. е. k=1, и индекс i содержится в диапазоне [-1,1].
Подробно, как изображено на фиг. 7, в интервале достоверности ключа n=1 ок