способ защищенной связи в сети, устройство связи, сеть и компьютерная программа для этого
Классы МПК: | H04L9/08 с ключевым распределением |
Автор(ы): | МААС Мартейн (NL), ГАРСИЯ МОРЧОН Оскар (NL) |
Патентообладатель(и): | КОНИНКЛЕЙКЕ ФИЛИПС ЭЛЕКТРОНИКС Н.В. (NL) |
Приоритеты: |
подача заявки:
2009-09-09 публикация патента:
10.09.2014 |
Изобретение относится к вычислительной технике, а именно к средствам защищенной связи в сети. Технический результат заключается в повышении безопасности передачи данных за счет разделения ключей на сегменты для предварительного распределительного материала создания ключа согласно переменному распределению. Способ относится к защищенной передаче информации из первого узла (N1) во второй узел (N2) сети, причем первый узел содержит материал создания ключа (KM(ID1)) первого узла, второй узел содержит материал создания ключа (KM(ID2)) второго узла, при этом каждый из материала создания ключа первого узла и материала создания ключа второго узла содержит множество совместно используемых частей прародителя ключей, сформированных сегментами совместно используемой части прародителя ключей. Сеть связи, содержащая по меньшей мере два устройства связи, реализует вышеуказанный способ. 3 н. и 10 з.п. ф-лы, 5 ил.
Формула изобретения
1. Способ защищенной передачи информации из первого узла (N1) во второй узел (N2) в сети, причем первый узел содержит материал создания ключа (KM(ID1)) первого узла, второй узел содержит материал создания ключа (KM(ID2)) второго узла, причем каждый из материала создания ключа первого узла (N1) и материала создания ключа второго узла (N2) содержит множество совместно используемых частей прародителя ключей, сформированных сегментами совместно используемой части прародителя ключей, причем способ содержит следующие операции для первого узла:
a) определяют идентификатор (ID2) второго узла (N2),
b) определяют состав материала создания ключа второго узла (KM (ID2)), причем эта операция определения содержит операцию выбора каждого i-того сегмента совместно используемой части прародителя ключей материала создания ключа второго узла из предварительно распределенного набора материала создания ключа, причем такой набор зависит, по меньшей мере, от i и от идентификатора второго узла;
c) сравнивают материал создания ключа (KM(ID1) ) первого узла и материал создания ключа (KM(ID2)) второго узла для идентификации общих сегментов совместно используемой части прародителя ключей, при этом i-тый общий сегмент совместно используемой части прародителя ключей определяют путем извлечения сегмента совместно используемой части прародителя ключей, который является общим между набором, содержащим i-тые сегменты совместно используемой части прародителя ключей каждой совместно используемой части прародителя ключей из материала создания ключа второго узла, и набором, содержащим i-тые сегменты совместно используемой части прародителя ключей каждой совместно используемой части прародителя ключей из материала создания ключа первого узла,
d) вычисляют совместно используемый ключ (K) между первым узлом (N1) и вторым узлом (N2) на основании, по меньшей мере, одного из идентифицированных общих сегментов совместно используемой части прародителя ключей, идентификатора второго узла (ID2) и идентификатора i сегмента.
2. Способ по п.1, содержащий начальную операцию, выполняемую перед операцией a), которая состоит в следующем: в первом узле (N1) определяют состав материала создания ключа (KM(ID1)) первого узла, причем эта операция определения содержит операцию выбора каждого i-того сегмента материала создания ключа первого узла из предварительно распределенного набора материала создания ключа, причем такой набор зависит, по меньшей мере, от i и от идентификатора первого узла.
3. Способ по п.1, содержащий начальную операцию, выполняемую перед операцией a), которая состоит в следующем: в первом узле (N1) определяют состав материала создания ключа (KM(ID1) ) первого узла, причем эту операцию определения материала создания ключа для узла выполняют таким образом, чтобы минимизировать корреляцию различных сегментов материала создания ключа.
4. Способ по п.3, в котором сеть организована в виде различных иерархически распределенных доменов безопасности (SD) и в котором операцию определения материала создания ключа для узлов выполняют таким образом, чтобы минимизировать корреляцию совместно используемых частей материала создания ключа в различных узлах и количество скомпрометированных прародителей ключей, подвергаемых атаке.
5. Способ по п.1, в котором операция d) содержит операцию вычисления сегментов ключа из идентифицированных сегментов прародителей ключей и из идентификатора (ID1) первого узла и идентификатора (ID2) второго узла и операцию генерации совместно используемого ключа (K) либо путем конкатенации, либо путем объединения вычисленных сегментов ключа.
6. Способ по п.5, содержащий, перед операцией b), операцию приема значений переменного распределения из централизованного или распределенного полномочного сетевого объекта, содержащего один или несколько узлов, причем упомянутая операция приема содержит:
- операцию, для первого узла (N1), передачи запроса в полномочный сетевой объект,
- операцию, для полномочного сетевого объекта, принятия решения о том, разрешено ли первому узлу генерировать совместно используемый ключ, и
в том случае, если узлу разрешено генерировать совместно используемый ключ,
- операцию, для полномочного сетевого объекта (NA), передачи значений переменного параметра в упомянутый узел.
7. Способ по п.1, в котором заданный набор сегментов, используемый для выбора i-того сегмента совместно используемой части прародителя ключей в операции b), индексируется элементами, сгенерированными как элементы конечных проективных плоскостей.
8. Способ по п.4, в котором предварительно распределенный набор материала создания ключа, используемый для определения материала создания ключа узла, соответствует набору элементов конечных проективных плоскостей, распределенных согласно переменному распределению по узлам в сети, проиндексированному переменным параметром и являющемуся зависимым от i и от идентификатора узла, материал создания ключа которого определяют.
9. Способ по п.8, в котором переменное распределение определено следующим образом:
идентификатор (ID) узла назначается классу , где , v - переменный параметр, n - порядок конечной проективной плоскости, а x - целая часть от x.
10. Способ по п.8 или 9, в котором переменный параметр зависит от i.
11. Способ по п.1, в котором прародители ключей, используемые для получения совместно используемых частей прародителя ключей, представляют собой лямбда-защищенные функции, например полиномы степени лямбда от нескольких переменных.
12. Устройство связи, предназначенное для его включения в состав сети в качестве первого узла (N1), которое содержит:
- средство хранения информации для хранения материала создания ключа (KM(ID1)) первого узла, причем этот материал создания ключа (KM(ID1)) первого узла содержит множество совместно используемых частей прародителя ключей, сформированных сегментами совместно используемой части прародителя ключей,
- средство определения идентификатора (ID2) второго узла,
- контроллер, приспособленный для определения состава материала создания ключа (KM(ID2)) второго узла, причем этот материал создания ключа второго узла содержит множество совместно используемых частей прародителя ключей, сформированных сегментами совместно используемой части прародителя ключей,
при этом контроллер дополнительно содержит средство определения, содержащее средство выбора для выбора каждого i-того сегмента совместно используемой части прародителя ключей материала создания ключа из предварительно распределенного набора материала создания ключа, причем такой набор зависит от i и от идентификатора второго узла,
- при этом контроллер дополнительно содержит средство сравнения для сравнения материала создания ключа (KM(ID1) ) первого узла и материала создания ключа (KM(ID2) ) второго узла для идентификации общих сегментов совместно используемой части прародителя ключей,
причем средство сравнения содержит средство извлечения для определения i-того общего сегмента совместно используемой части прародителя ключей путем извлечения сегмента совместно используемой части прародителя ключей, являющегося общим между набором, содержащим i-тый сегмент совместно используемой части прародителя ключей для каждой совместно используемой части прародителя ключей материала создания ключа второго узла, и набором, содержащим i-тый сегмент совместно используемой части прародителя ключей для каждой совместно используемой части прародителя ключей заданного материала создания ключа первого узла,
- при этом контроллер дополнительно содержит средство вычисления для вычисления совместно используемого ключа (K) между первым узлом и вторым узлом на основании, по меньшей мере, одного из идентифицированных общих сегментов совместно используемой части прародителя ключей, идентификатора второго узла и идентификатора сегмента.
13. Сеть связи, содержащая, по меньшей мере, два устройства связи по п.12, в которой одно устройство связи представляет собой первый узел (N1) сети, а другое устройство связи представляет собой второй узел (N2) сети и в которой первый узел и второй узел осуществляют связь друг с другом с использованием способа по п.1.
Описание изобретения к патенту
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к способу защищенной связи и к сетям связи, содержащим устройства связи, в которых используют такие средства защиты, как система шифрования, для обеспечения защиты передаваемой информации. Это изобретение находит полезное применение в беспроводных сетях мобильных датчиков и выключателей (WSN) и, в частности, в медицинских беспроводных сетях для контроля за пациентами.
ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
Вследствие того что эти области применения являются конфиденциальными, подобные сети должны быть снабжены такими службами обеспечения защиты, как службы обеспечения конфиденциальности, аутентификации, целостности и авторизации.
Системы шифрования, используемые в традиционных сетях связи, обычно реализуют способы шифрования, основанные на криптографии, для обеспечения защиты передаваемой информации.
Следовательно, в частности, в некоторых сетях, содержащих узлы, которые должны быть очень рентабельными, обычно применяется криптография с симметричными шифрами для обеспечения требуемых служб обеспечения защиты. В действительности, в подобных сетях, например в сетях беспроводных датчиков, узлы обычно являются ограниченными по ресурсам, а именно с точки зрения энергии аккумулятора, ширины полосы частот связи, вычислительной мощности или емкости памяти. Следовательно, способы обеспечения защиты, основанные на криптографии с асимметричными шифрами, обычно считают неэффективными или нереализуемыми в таких узлах.
Основная проблема в криптографии с симметричными шифрами заключается в распределении ключей, то есть в установлении совместно используемых секретов в узлах, которые принадлежат к сети, и должны осуществлять защищенную связь. Эта проблема является особенно важной в сетях WSN, поскольку их размер может варьироваться от десятков до нескольких десятков тысяч узлов, и по своему характеру они могут быть очень динамичными, например, топология сети не может быть априорно известной.
Обычные способы предварительного распределения ключей, используемые в сетях WSN, представляют собой комбинаторные способы, которые состоят в разделении узлов на классы и в назначении каждому узлу набора ключей, соответствующих его классу. Значение термина "класс" в рамках настоящего описания соответствует набору элементов, собранных в соответствии с заданным законом, например математическим, арифметическим или логическим законом. В таких способах все узлы в одном и том же классе совместно используют одни и те же ключи и гарантировано, что узлы из различных классов совместно используют, по меньшей мере, один ключ для обеспечения возможности связи.
Однако эти способы представляют собой главный недостаток с точки зрения устойчивости к внешним воздействиям, поскольку захват узла злоумышленником влечет за собой то, что все ключи из набора ключей захваченного узла являются скомпрометированными и, следовательно, является скомпрометированным обмен информацией для всех узлов в этом классе и даже для узлов в других классах, использующих те же самые ключи.
Кроме того, некоторые прикладные сценарии в сети WSN, такие как, например, контроль за пациентами в больницах, требуют наличия различных доменов безопасности, организованных иерархическим образом. В таких сетях узлы датчиков принадлежат к одному или к нескольким доменам безопасности в зависимости от их уровня авторизации. В существующих иерархических схемах распределения ключей каждый домен безопасности связан с распределением ключей, следовательно, захват домена безопасности на низком уровне, то есть домена безопасности, содержащего много узлов, даже если это не приводит к компрометации материала создания ключа других доменов безопасности на низких уровнях, может все же нарушить защиту на более высоких уровнях.
В публикации D. Sanchez Sanchez "Key Management for Wireless Ad hoc Networks", Universität Cottbus, от 29 июня 2006 г. раскрывается концепция детерминистического попарного предварительного распределения ключей, которая гарантирует, что любые два узла являются носителями отдельных совместно используемых частей t-полиномиального набора из одного общего t-полиномиального набора и, таким образом, может быть установлен парный ключ. Эта схема детерминистического попарного предварительного распределения ключей состоит из этапа начальной установки, на котором выполняют генерацию и оценку нескольких t-полиномиальных наборов для того, чтобы они были приспособлены для узлов количеством до N, этапа предварительного распределения, на котором несколько совместно используемых частей t-полиномиального набора предварительно распределяют в каждый узел, этапа обнаружения совместно используемых частей, на котором два узла обнаруживают, что являются носителями совместно используемых частей одного и того же t-полиномиального набора, и этапа установления парного ключа, на котором два узла устанавливают парный ключ. На этапе предварительного распределения совместно используемых частей каждый узел совокупности из N узлов принимает из сервера начальной установки отдельный вызов, который включает в себя n+1 совместно используемых частей t-полиномиального набора. Для гарантированного обеспечения уникальности парных ключей два различных узла не могут принимать один и тот же t-полиномиальный набор, оцененный в той же самой точке. Для вычисления парного ключа узел сначала производит оценку t полиномов для получения t частичных ключей. Наконец, узел производит усечение t частичных ключей и сцепляет t сегментов ключа для формирования окончательного парного ключа.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Задача настоящего изобретение состоит в том, чтобы предложить способ, в котором используют концепцию распределения ключей для устранения вышеизложенных недостатков.
Другая задача настоящего изобретение состоит в том, чтобы предложить способ, обеспечивающий лучшую устойчивость к атакам. Еще одна задача настоящего изобретения состоит в предоставлении эффективного способа защищенной связи.
С этой целью предложен способ защищенной передачи информации из первого узла во второй узел, причем первый узел содержит материал создания ключа первого узла, второй узел содержит материал создания ключа второго узла, причем каждый из материала создания ключа первого узла и материала создания ключа второго узла, содержит множество совместно используемых частей прародителя ключей (keying root shares), сформированных сегментами совместно используемой части прародителя ключей.
Этот способ содержит следующие операции:
операцию a) определения идентификатора второго узла;
операцию b) определения состава материала создания ключа второго узла, причем этот материал создания ключа содержит множество совместно используемых частей прародителя ключей, сформированных сегментами совместно используемой части прародителя ключей, а эта операция определения содержит операцию выбора каждого -того сегмента совместно используемой части прародителя ключей из материала создания ключа из предварительно распределенного набора материала создания ключа, причем этот набор зависит, по меньшей мере, от и от идентификатора второго узла;
операцию c) сравнения материала создания ключа первого узла и материала создания ключа второго узла для идентификации общих сегментов совместно используемой части прародителя ключей, при этом -тый общий сегмент совместно используемой части прародителя ключей определяют путем извлечения сегмента совместно используемой части прародителя ключей, который является общим между набором, содержащим все -тые сегменты совместно используемой части прародителя ключей из материала создания ключа второго узла, и набором, содержащим все -тые сегменты совместно используемой части прародителя ключей из материала создания ключа первого узла, и
операцию d) вычисления ключа, совместно используемого первым узлом и вторым узлом, на основании, по меньшей мере, одного из следующих параметров: идентифицированных общих сегментов совместно используемой части прародителя ключей, идентификатора второго узла и идентификатора сегмента.
В приведенном ниже описании два узла и упомянуты как принадлежащие к одному и тому же классу для -того сегмента ключа, когда предварительно распределенный набор материала создания ключа, зависящий от и , является тем же самым, что и предварительно распределенный набор материала создания ключа, зависящий от и .
Способ согласно настоящему изобретению позволяет обеспечивать многообразие сегментов ключа, поскольку два узла, принадлежащие к одному и тому же классу для -того элемента ключа, вероятно, принадлежат к различным классам для других сегментов совместно используемой части прародителя ключей.
Вследствие этого размер групп узлов, совместно использующих в точности одни и те же сегменты прародителя, сильно уменьшается по сравнению с традиционными способами. Соответственно, захват ограниченного количества узлов, относящихся к одному и тому же классу для одного сегмента ключа, привел бы к компрометации только этого конкретного сегмента соответствующих ключей, а не всего ключа, что, следовательно, повышает устойчивость от внешних воздействий этого способа.
В одном из вариантов осуществления изобретения операция d) содержит операцию вычисления сегментов ключа по распознанным сегментам совместно используемых частей прародителя ключей и по идентификаторам обоих узлов: по идентификатору первого узла и по идентификатору второго узла, и операцию генерации совместно используемого ключа либо путем конкатенации, либо путем объединения вычисленных сегментов ключа.
Конкатенация сегментов ключа для генерации совместно используемого ключа позволяет увеличивать вычислительную эффективность способа, поскольку длина сегментов ключа в битах является меньшей, чем длина совместно используемого ключа в битах, а это означает отсутствие непроизводительных издержек, связанных с сохранением информации или с вычислениями. Это имеет особое значение для сетей WSN, в которых вычислительная мощность в узлах является ограниченной.
Кроме конкатенации один из возможных способов объединения заключается в логическом объединении сегментов с использованием оператора "исключающее ИЛИ" (XOR). В этом случае длина сегментов ключа в битах является той же самой, что и длина возможного ключа в битах, что имеет преимущество, заключающееся в том, что компрометация любого количества сегментов, меньшего, чем размер ключа, не уменьшает устойчивости ключа к внешним воздействиям.
В одном из вариантов осуществления изобретения предварительно распределенный набор материала создания ключа используют для определения того, что материал создания ключа узла соответствует набору элементов одной или нескольких конечных проективных плоскостей, распределенных согласно переменному распределению по узлам в сети, индексированному переменным параметром распределения, и в зависимости от и от идентификатора того узла, материал создания ключа которого определяют.
Использование переменного параметра для распределения помогает увеличить устойчивость способа к внешним воздействиям, поскольку это позволяет добавлять другой источник изменения при вычислении совместно используемого ключа.
Кроме того, в предпочтительном варианте осуществления изобретения закон изменения переменного параметра первоначально держат в секрете и, следовательно, способ содержит операцию для узла, приема значений переменного параметра из централизованного или распределенного полномочного сетевого объекта, содержащего один или несколько узлов.
Эта операция приема может быть выполнена следующим образом: первый узел посылает запрос в полномочный сетевой объект, который принимает решение о том, разрешено ли первому узлу генерировать совместно используемый ключ и при наличии положительного результата в итоге посылает, предпочтительно, защищенным образом значения переменного параметра в первый узел.
То, что закон изменения переменного параметра держат в секрете, означает, что во время этапа перед развертыванием сети, то есть до того, как узлы фактически объединяют в конкретную сеть, в узел не предоставлены значения параметра, используемого для переменного распределения и, таким образом, достигнуты два главных преимущества:
- во-первых, выполняется управление доступом, поскольку узлы сначала должны сообщить в полномочный сетевой объект сети, к которой они подключены, причем полномочный сетевой объект управляет тем, разрешено ли узлу генерировать ключ или нет, и
- увеличена устойчивость к внешним воздействиям вследствие того факта, что если узел захвачен до того, как развернута сеть, то есть до его присоединения к сети, то злоумышленник-взломщик способен извлекать материал создания ключа в узле сети, но не прародителей ключей, которые зависят от секретного переменного параметра.
Настоящее изобретение также относится к устройству связи, предназначенному для включения в состав сети в качестве первого узла, которое содержит:
- средство хранения информации для хранения материала создания ключа первого узла, причем этот материал создания ключа первого узла содержит множество совместно используемых частей прародителя ключей, сформированных сегментами совместно используемой части прародителя ключей,
- средство определения идентификатора второго узла,
- контроллер, приспособленный для определения состава материала создания ключа второго узла, причем этот материал создания ключа содержит множество совместно используемых частей прародителя ключей, сформированных сегментами совместно используемой части прародителя ключей,
при этом контроллер содержит средство выбора для выбора каждого -того сегмента совместно используемой части прародителя ключей материала создания ключа из предварительно распределенного набора материала создания ключа, а этот набор зависит, по меньшей мере, от и от идентификатора второго узла,
- при этом контроллер дополнительно содержит средство сравнения для сравнения материала создания ключа первого узла и материала создания ключа второго узла для идентификации индекса общих сегментов совместно используемого прародителя ключей,
причем это средство сравнения содержит средство извлечения для определения -того общего сегмента совместно используемого прародителя ключей путем извлечения сегмента совместно используемого прародителя ключей, являющегося общим между набором, содержащим -тый сегмент совместно используемого прародителя ключей для каждого совместно используемого прародителя ключей из материала создания ключа второго узла, и набором, содержащим -тый сегмент совместно используемого прародителя ключей из каждого совместно используемого прародителя ключей из заданного материала создания ключа первого узла,
- при этом контроллер дополнительно содержит средство вычисления для вычисления ключа, совместно используемого первым узлом и вторым узлом, на основании, по меньшей мере, одного из следующих параметров: идентифицированных общих сегментов совместно используемого прародителя ключей, идентификатора второго узла и идентификатора сегмента.
Настоящее изобретение также относится к сети, содержащей, по меньшей мере, два описанных выше устройства связи, причем одно устройство связи представляет собой первый узел этой сети, и другое устройство связи представляет собой второй узел этой сети, и при этом первый узел и второй узел осуществляют связь друг с другом с использованием совместно используемого ключа для обеспечения защищенной связи.
Согласно другому объекту настоящего изобретения предложена компьютерная программа для реализации способа согласно изобретению.
Настоящее изобретение также находит целесообразное применение в некоторых сетях, содержащих различные домены безопасности, распределенные иерархическим образом. В таких сетях каждый домен безопасности обычно связан с различной и независимой криптографической информацией, и распределение материала создания ключа при развертывании сети выполняют таким образом, чтобы гарантировать полную функциональную совместимость защиты между узлами сети, а также распределенное управление доступом и иерархическую идентификацию узла. Таким образом, в одном из вариантов осуществления изобретения, в способе по настоящему изобретению в том случае, когда сеть содержит несколько доменов безопасности, распределенных иерархическим образом, определение материала создания ключа узлов выполняют таким образом, что корреляция материала создания ключа, совместно используемого в различных узлах, и объем скомпрометированных прародителей ключей, подвергаемых атаке, сводится к минимуму.
Эти и другие объекты настоящего изобретения станут очевидными из описанных ниже вариантов осуществления изобретения, и будут пояснены со ссылкой на эти варианты осуществления.
Далее будет приведено более подробное описание настоящего изобретения на примерах со ссылкой на сопроводительные чертежи, на которых изображено следующее:
на Фиг. 1 изображена сеть согласно одному из вариантов осуществления настоящего изобретения,
на Фиг. 2 изображена блок-схема способа защищенной передачи информации из первого узла во второй узел согласно одному из вариантов осуществления настоящего изобретения,
на Фиг. 3 изображена подробная блок-схема одной операции способа, показанного на Фиг. 1,
на Фиг. 4 изображен пример иерархического распределения ключей, и
на Фиг. 5 показана устойчивость к внешним воздействиям от интеллектуальных злоумышленников, подвергающих атаке системы с многообразием сегментов ключа и без него.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Настоящее изобретение относится к способу защищенной передачи информации из первого узла во второй узел в сети. Настоящее изобретение, в частности, предназначено для беспроводных сетей датчиков и выключателей, используемых для контроля за пациентами, например для сетей, содержащих узлы датчиков для измерения физических параметров пациента, узлы приемников для предоставления этих параметров медицинскому персоналу и узлы выключателей (исполнительных механизмов).
Однако следует отметить, что настоящее изобретение не ограничено подобными сетями и что оно может быть реализовано в сети любого типа, используемой для любого технического применения.
Далее будет приведено описание способа согласно одному из вариантов осуществления настоящего изобретения со ссылкой на чертежи Фиг. 1 и Фиг. 2.
Сеть согласно настоящему изобретению содержит, по меньшей мере, два узла N1 и N2, каждый из которых снабжен идентификатором, соответственно ID1 и ID2. В одном из вариантов осуществления изобретения сеть также содержит узел центра управления безопасностью (TC), используемый для конфигурирования сети и для обеспечения узлов N1 и N2 всей необходимой информацией о материале создания ключа для генерации криптографических ключей. Этот узел TC центра управления безопасностью представляет собой один из возможных вариантов осуществления вышеупомянутого полномочного сетевого объекта.
Во время этапа эксплуатации для обеспечения связи между первым узлом N1 и вторым узлом N2 каждый из этих узлов генерирует совместно используемый ключ с использованием информации о распределенном материале создания ключа и использует этот ключ для защиты любой передаваемой информации, посылаемой в другой узел, или для декодирования любой переданной информации, принятой из другого узла. На Фиг. 2 описаны различные операции, необходимые для генерации первым узлом совместно используемого ключа для связи со вторым узлом. Аналогичные операции выполняются вторым узлом для генерации соответствующего совместно используемого ключа для связи с первым узлом.
Для генерации ключа в узел должен быть предоставлен совместно используемый материал создания ключа KM(ID1) и KM (ID2) соответственно для первого узла и для второго узла, то есть некоторая информация, обеспечивающая возможность установления ключа. Совместно используемый материал создания ключа обычно получают из центра управления безопасностью (TC) во время этапа конфигурирования сети. Совместно используемые материалы создания ключа, подаваемые в узлы, генерируются из материала-прародителя создания ключа (KM), представляющего собой криптографическую информацию, известную только центру управления безопасностью.
Таким образом, описанный выше способ не предназначен для применения к конкретному узлу, но он может выполняться любым узлом.
Когда необходимо установить связь между первым узлом и вторым узлом, то выполняют операцию a), при которой первый узел принимает из второго узла идентификатор ID2 второго узла.
Для обнаружения совместно используемого ключа для связи со вторым узлом первый узел должен определить, при операции b), состав совместно используемой части материала создания ключа второго узла.
Совместно используемая часть материала создания ключа содержит множество совместно используемых частей прародителя ключей, и в способе согласно настоящему изобретению эти совместно используемые части прародителя ключей сегментированы, а это означает, что они сформированы из множества сегментов. Следует отметить, что все совместно используемые части прародителя ключей обычно содержат одно и то же количество сегментов.
Соответственно, в способе согласно одному из вариантов осуществления настоящего изобретения совместно используемый ключ между первым узлом и вторым узлом составлен из нескольких сегментов ключа.
Таким образом, определение состава материала создания ключа в операции b) соответствует определению каждого сегмента совместно используемых частей прародителя ключей по отдельности.
Ниже приведено более подробное описание такого определения со ссылкой на Фиг. 3.
В одном из вариантов осуществления способа согласно настоящему изобретению совместно используемыми частями прародителя ключей являются элементы ключа, разделенные на сегменты. Соответственно, определение различных сегментов совместно используемых частей прародителя ключей соответствует определению готовых сегментов ключа, которые в дальнейшем объединяют для генерации окончательного совместно используемого ключа, предназначенного для связи между первым узлом и вторым узлом.
Однако в предпочтительном варианте осуществления изобретения способ согласно настоящему изобретению объединяется со способом, обеспечивающим -устойчивость, который основан на том, что узлы не используют совместно готовые ключи. Вместо этого в узлы предоставляют информацию, специально предназначенную для конкретного узла, которая позволяет им вычислять совместно используемый ключ, вместе с другим узлом, имея в качестве входных данных идентификатор этого узла. Эту информацию, специально предназначенную для конкретного узла, которую именуют совместно используемой частью прародителя ключей, получают из прародителя ключей. В качестве примера, совместно используемой частью прародителя ключей является полином степени , т.е., соответственно, полином, имеющий +1 коэффициентов.
После того как определен состав материала создания ключа KM(ID2) второго узла, выполняют операцию c), при которой первый узел сравнивает этот материал создания ключа KM(ID2) второго узла с его собственным материалом создания ключа KM(ID1). Это сравнение может также быть выполнено на основании идентификаторов материала создания ключа.
Как упомянуто выше, в одном из вариантов осуществления изобретения собственная совместно используемая часть материала создания ключа предоставляется в каждый узел во время этапа конфигурирования. Однако в другом варианте осуществления изобретения первый узел определяет свою собственную совместно используемую часть материала создания ключа во время этапа эксплуатации с использованием способа, аналогичного тому способу, который будет описан ниже на основании чертежа Фиг. 3. Кроме того, в одном из вариантов осуществления изобретения определение материала создания ключа узла выполняют таким образом, чтобы минимизировать корреляцию (между) различных сегментов материала создания ключа.
Сравнение материала создания ключа KM(ID1) первого узла с материалом создания ключа KM (ID2) второго узла выполняют следующим образом: для каждого сегмента первый узел выясняет, какой именно сегмент прародителя ключей является общим для них, что означает, что для каждого сегмента , содержащегося между 1 и количеством сегментов, первый узел обнаруживает общий элемент между набором, содержащим -тый сегмент каждой совместно используемой части прародителя ключей материала создания ключа первого узла, и набором, содержащим -тый сегмент каждой совместно используемой части прародителя ключей материала создания ключа второго узла.
После того как будут идентифицированы общие сегменты, первый узел вычисляет, в операции d), совместно используемый ключ , между ним и вторым узлом.
Упомянутое вычисление (составление совместно используемого ключа) может быть выполнено несколькими способами согласно нескольким вариантам осуществления настоящего изобретения.
Например, сегменты ключа могут быть просто сцеплены для получения окончательного ключа : . В этом случае, когда количество сегментов ключа, используемых для составления ключа , равно , длина сегментов ключа в битах является в раз меньшей, чем длина окончательного ключа в битах, вследствие чего отсутствуют непроизводительные издержки, связанные с сохранением информации или с объемом вычислений. Такое составление позволяет повысить вычислительную эффективность способа.
Другим возможным вариантом является составление посредством математических, арифметических или логических комбинаций различных сегментов ключа, например путем выполнения операции "исключающее ИЛИ" с различными сегментами ключа: .
Для этого составления длина сегментов ключа в битах должна быть равной требуемой длине в битах. Преимущество составления посредством операции "исключающее ИЛИ" состоит в том, что в случае атаки компрометация любого количества сегментов ключа, меньшего, чем , не уменьшает устойчивость ключа к внешним воздействиям.
Могут существовать и другие способы составления ключа, такие как, например, способы, в которых применяют хеш-функцию для получения выходных данных желательной длины в битах и для устранения возможных алгебраических связей между ключами.
В случае использования способа, обеспечивающего -устойчивость, операция вычисления содержит операцию определения общих сегментов ключа путем оценки общих сегментов совместно используемой части прародителя ключей при вводе идентификатора второго узла, которую выполняют перед операцией объединения.
Далее, со ссылкой на Фиг. 3, будет приведено описание определения конкретного сегмента совместно используемой части прародителя ключей первого узла.
Во-первых, будет приведено описание некоторых общих концепций, реализуемых при выполнении такого определения, причем эти концепции используют в некоторых, но не обязательно во всех, вариантах осуществления настоящего изобретения.
Как объяснено ранее, сегменты совместно используемой части прародителя ключей выбирают из предварительно распределенного набора материала создания ключа, зависящего, по меньшей мере, от идентификатора первого узла и от .
В описанном здесь варианте осуществления изобретения, в способе согласно настоящему изобретению реализуется комбинаторный способ предварительного распределения ключей для предварительного распределения наборов материала создания ключа.
Как правило, используемой здесь комбинаторной концепцией является конечная проективная плоскость, именуемая FPP, и, таким образом, предварительно распределенный набор материала создания ключа, используемый для определения материала создания ключа узла, соответствует набору элементов FPP.
FPP -го порядка и параметры ( , , ) определены как размещение отдельных элементов по блокам таким образом, что:
Каждый блок содержит в точности элементов.
Каждый элемент встречается в точности в блоках.
Каждая пара блоков имеет в точности 1 общий элемент.
Набор элементов обозначен как , а набор блоков обозначен как , где блок .
В качестве примера, FPP 2-го порядка, то есть где =2, определяет следующие блоки:
Как изложено выше, одним из свойств FPP является то, что каждая пара блоков имеет в точности 1 общий элемент. Соответственно, когда два узла желают осуществить связь, они могут использовать совместно используемый элемент ключа на основании общего элемента их соответствующих блоков FPP для согласования общего секрета и для обеспечения защищенной связи.
При примерном разумном распределении различные блоки FPP соответствуют различным классам узлов, . Идентификатор (ID) узла может быть поставлен в соответствие классу узла согласно следующей зависимости: .
Узлы из класса снабжены ключами, проиндексированными элементами блока . Например, узел 8 сети принадлежит к классу и, следовательно, его материал создания ключа, обозначенный как , задается набором ключей
.
Если этот узел желает осуществлять связь с узлом 14, то они используют свойства FPP для обнаружения совместно используемого ключа. Этим ключом является ключ , поскольку этот узел принадлежит к классу , и, следовательно:
.
Это распределение имеет период, равный , а это означает, что все узлы, идентификаторы которых отличаются на величину, кратную , находятся в одном и том же классе. Для увеличения этого периода и, следовательно, для увеличения устойчивости способа к внешним воздействиям в одном из вариантов осуществления изобретения используют переменное распределение для предварительного распределения материала создания ключа.
Это переменное распределение индексируется параметром , зависящим от определяемого сегмента совместно используемой части прародителя ключей, таким образом, что:
- узел принадлежит к различным классам для различных сегментов совместно используемых частей прародителя ключей, и
- два узла, принадлежащие к одному и тому же классу для одного сегмента, вероятно, принадлежат к различным классам для другого сегмента.
Предпочтительно, переменное распределение определено следующим образом: идентификатор (ID) узла присвоен классу , где:
Параметр зависит от определяемого сегмента, и оказывается, что различные значения дают различные распределения по узлам сети. Всего имеется различных распределений для . Для конкретного значения период распределения равен:
,
где - наибольший общий делитель между a и b, то есть наибольшее положительное целое число, на которое делятся оба числа без остатка.
Таким образом, период распределения является максимальным для , и в этом случае период равен . Это всегда верно для , равного простому числу, и >0.
Соответственно, размер групп узлов, которые совместно используют в точности одни и те же сегменты прародителя, уменьшен в раз. Следовательно, относительная устойчивость к внешним воздействиям для каждого класса возрастает в раз.
В приведенной ниже таблице 1 дан перечень класса для узлов с идентификаторами до идентификатора =20 в переменном распределении для =2.
Таблица 1 | ||||||||||||||||||||||
Переменное распределение для =2 | ||||||||||||||||||||||
Идентификатор ( ) узла | ||||||||||||||||||||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | ... | |
=0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | ... |
=1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 1 | 2 | 3 | 4 | 5 | 6 | 0 | 2 | 3 | 4 | 5 | 6 | 0 | 1 | ... |
=2 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 2 | 3 | 4 | 5 | 6 | 0 | 1 | 4 | 5 | 6 | 0 | 1 | 2 | 3 | ... |
=3 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 3 | 4 | 5 | 6 | 0 | 1 | 2 | 6 | 0 | 1 | 2 | 3 | 4 | 5 | ... |
=4 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 4 | 5 | 6 | 0 | 1 | 2 | 3 | 1 | 2 | 3 | 4 | 5 | 6 | 0 | ... |
=5 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 5 | 6 | 0 | 1 | 2 | 3 | 4 | 3 | 4 | 5 | 6 | 0 | 1 | 2 | ... |
=6 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 6 | 0 | 1 | 2 | 3 | 4 | 5 | 5 | 6 | 0 | 1 | 2 | 3 | 4 | ... |
Далее будет приведено подробное описание определения -тых сегментов совместно используемой части прародителя ключей, принадлежащих к материалу создания ключа узла с идентификатором . В этом примере параметр зависит от следующим образом: .
Первый узел, идентифицированный как ID1, уже снабженный его собственным материалом создания ключа KM (ID1), принимает идентификатор ID2 второго узла вследствие установления связи с этим вторым узлом.
Как упомянуто выше, в первый узел также предоставляется информация для определения и информация о порядке FPP, используемая для предварительного распределения наборов материала создания ключа. Эти элементы предоставляются в упомянутые узлы узлом центра управления безопасностью (TC) либо во время этапа предварительного развертывания, или во время этапа развертывания, или во время этапа эксплуатации.
При первой операции (ОПРЕДЕЛЕНИЕ ) первый узел определяет для -того сегмента класс, к которому принадлежит второй узел. Как изложено выше, используется переменное распределение со следующей зависимостью: , где представляет собой целую часть от .
Таким образом, с использованием системы обозначений из настоящего описания, второй узел принадлежит к классу , где .
Затем параметр используют во второй операции (ВЫБОР НАБОРА KM) для определения предварительно распределенного набора материала создания ключа, в которой выбираются сегменты совместно используемой части прародителя ключей.
Набор материала создания ключа, соответствующий классу , представляет собой блок конечной проективной плоскости -го порядка.
После этого в операции (ОПРЕДЕЛЕНИЕ S) определяют -тые сегменты совместно используемых частей прародителя ключей на основании элемента ранее определенного блока .
Количество элементов блока , равное +1, равно количеству совместно используемых частей прародителя ключей, образующих материал создания ключа узла.
Соответственно, -тый сегмент первой совместно используемой части прародителя ключей определяют на основании первого элемента блока .
Способ, описанный в соответствии с Фиг. 3, выполняют для каждого , где - целое число между 1 и количеством сегментов, образующих совместно используемую часть прародителя ключей.
Например, предположим, что ключ составлен из сегментов, где . Материал создания ключа для идентификатора ( ) узла, состоящий из +1 совместно используемых частей прародителя ключей (KR), каждая из которых имеет сегментов, строится следующим образом. Первые сегменты совместно используемых частей KR соответствуют блоку FPP для идентификатора ID согласно распределению с =0, которым является блок . Следовательно, эти первые сегменты совместно используемых частей KR получаются как , ,..., . Вторые сегменты совместно используемой части KR распределены согласно =1, поэтому они берут свой индекс из блока . Следовательно, этими совместно используемыми частями являются , ,..., . Аналогичным образом, -тые сегменты совместно используемых частей KR распределены согласно . Это приводит к следующему построению материала создания ключа для идентификатора ( ) узла:
Далее будет приведено полное описание конкретного примера определения ключа, совместно используемого двумя узлами сети, с использованием способа согласно настоящему изобретению.
В этом примере взяты следующие параметры:
- идентификаторами узлов являются: ID1=8 и ID2=14,
- порядок FPP равен 2,
- количество сегментов совместно используемых частей прародителя ключей равно 3, и
- зависимость между параметром и сегментом имеет следующий вид: .
Для узла 8 первые сегменты распределены согласно блоку с =1, как можно увидеть из строки в показанной выше Таблице 1 при =0 и ID=8. Следовательно, первые сегменты совместно используемых частей прародителя ключей имеют индексы, перечисленные посредством ={1, 3, 4}. Аналогичным образом, вторые сегменты соответствуют ={0, 3, 5} (поскольку =2 для ID=8), а третьи сегменты соответствуют ={1, 2, 5} (поскольку =3 для ID=8). Следовательно, материал создания ключа для узла 8 задается следующим выражением:
Таким же образом, сегменты для узла 14 соответствуют блокам , и соответственно. Следовательно, узел 14 снабжается следующим материалом создания ключа:
Для вычисления совместно используемого ключа, используемого с узлом 14, узел 8 выясняет для каждого сегмента, какой сегмент прародителя ключей является общим для них. Оказывается, что им является для первого сегмента и для третьего.
В данном случае, для второго сегмента все элементы являются общими между KM(8) и KM(14).
В одном из вариантов осуществления настоящего изобретения в этом случае общий сегмент выбирают согласно предварительно заданному закону, который является известным для всех узлов.
В данном примере предположим, что выбранным общим элементом, который выбран для второго сегмента, является .
Как упомянуто выше, в предпочтительном варианте осуществления изобретения способ согласно настоящему изобретению объединяется со способом, обеспечивающим -устойчивость, а это означает, что первый узел и второй узел не используют совместно непосредственно готовые ключи, а используют совместно некоторую информацию, специально предназначенную для конкретного узла. Таким образом, в этом случае общие сегменты представляют собой не непосредственно сегменты ключа, а информацию, используемую для оценки сегмента ключа.
Как правило, сегменты совместно используемой части прародителя ключей представляют собой лямбда-защищенные функции, такие как, например, полиномы степени от нескольких переменных. В данном случае используют полиномы с двумя переменными, то есть для любых и .
В этом конкретном примере узел 8 производит оценку каждой из совместно используемых частей KR , и при =14 и составляет из результирующих сегментов ключа окончательный совместно используемый ключ, используемый между узлами 8 и 14 сети.
Далее, со ссылкой на Фиг. 4 будет приведено описание применения способа согласно настоящему изобретению с переменным распределением и разделением ключей на сегменты для системы с иерархическим распределением ключей.
Применение переменного распределения по узлам к иерархическому распределению ключей позволяет уменьшить объем компрометируемого материала создания ключа между разными уровнями.
Предположим, что используют простой способ иерархического распределения ключей с 2 уровнями. На первом уровне имеется один домен безопасности, а на втором уровне имеется всего различных доменов безопасности. В тривиальном подходе два узла, принадлежащие к различным доменам безопасности на втором уровне, могут получить материал создания ключа из произвольных классов на уровне 1. Это означает, что злоумышленник-взломщик, целью которого является взлом конкретного домена безопасности на уровне 2, может получить материал создания ключа на уровне 1 из любого класса. Следовательно, злоумышленник-взломщик может взломать весь домен безопасности на уровне 1 целиком просто путем захвата узлов из конкретного домена безопасности на уровне 2.
Концепция переменного распределения по узлам сети позволяет минимизировать эту проблему за счет предоставления материала создания ключа узлам сети с помощью переменного распределения. На Фиг. 4 это проиллюстрировано для одного сегмента или для иерархического распределения ключей без многообразия сегментов. На этом чертеже показано иерархическое распределение с 3 уровнями, при котором узлы, принадлежащие к домену безопасности ( ) с индексом на уровне , являются носителями материала создания ключа, сгенерированного из -того блока FPP домена безопасности с этим индексом на уровне . Например, узел, принадлежащий к , является носителем следующего материала создания ключа:
На уровне 1 из 3-го блока FPP .
На уровне 2 из 4-го блока FPP .
На уровне 3 из любого блока FPP .
Эта система предоставляет несколько преимуществ. С одной стороны, это позволяет выполнять кодирование доменов безопасности ( ), а именно доменов безопасности ( ), к которым принадлежит узел, с помощью идентификаторов блоков FPP, уменьшая, таким образом, непроизводительные издержки при передаче. С другой стороны, этот подход уменьшает объем компрометируемого материала создания ключа на общем уровне , когда злоумышленник атакует на уровне , до небольшой части материала создания ключа, а именно / , где - порядок FPP SD, связанного с индексом на уровне . Основным недостатком этого технического решения является то, что количество SD с индексом на уровне , размещение которых может обеспечивать индекс SD на уровне , ограничено величиной .
Такой подход также может быть объединен с сегментированием ключей и с многообразием сегментов следующим образом: узел, принадлежащий к SD с индексом на уровне , получает материал создания ключа из SD с индексом на уровне из класса . Это увеличивает количество субдоменов безопасности (sub-SDs) на уровне , которые может вмещать SD на уровне в раз. Кроме того, если SD на уровне скомпрометирован, то объем материала создания ключа, скомпрометированного на более высоком уровне, вновь является меньшим, вследствие вышеописанной концепции многообразия сегментов.
Возможный алгоритм межуровневого распределения, в котором используют концепцию многообразия сегментов, может быть создан следующим образом. Узлы на произвольном уровне получают материал создания ключа из различных доменов безопасности SD согласно различному переменному распределению , назначенного домену безопасности. Все эти узлы получают материал создания ключа на уровне из нескольких классов в одном и том же домене безопасности. Классы в домене безопасности на уровне распределяются между доменами безопасности на уровне таким образом, что материалы создания ключа между уровнями рандомизированы так, что захват нескольких узлов в любом SD на уровне минимизирует воздействие на скомпрометированный материал создания ключа на уровне . Для этого могут использоваться разные подходы, например классов (например, классов) на уровне из возможных классов на этом уровне могут быть назначены узлам сети, принадлежащим к домену безопасности (SD) на уровне . классов (например, классов) на уровне могут быть выбраны в последовательном порядке, то есть , так что к ним может быть применено разумное распределение.
Для того чтобы показать рабочие характеристики системы, выполняющей способ согласно настоящему изобретению, далее будет произведен анализ и сравнение устойчивости к внешним воздействиям для схем с многообразием сегментов ключа и без него. При этом анализе составление ключей задается в виде конкатенации сегментов ключа, и для правильного сравнения введено пороговое значение для величины энтропии, необходимой для того, чтобы ключ был достаточно устойчивым к внешним воздействиям.
Анализ выполнен для того случая, когда способ, обеспечивающий -устойчивость, используют совместно с комбинаторной концепцией предварительного распределения. Анализ будет выполнен для той ситуации, когда система подвергается атаке умелого злоумышленника-взломщика, то есть злоумышленника-взломщика, который не взламывает узлы случайным образом, а выбирает узлы избирательно с целью взлома всего материала создания ключа с меньшим количеством захваченных узлов.
Сначала рассмотрим систему без многообразия. Умелый злоумышленник-взломщик сначала выбирает +1 узел из одного и того же класса, посредством чего взламывает +1 ключей. Затем он повторно выбирает +1 узел из других классов, каждый раз взламывая еще ключей, поскольку классы были выбраны разумно. После +1 классов, то есть после ( +1)( +1) взломанных узлов, злоумышленник-взломщик знает все ключи в системе. Следовательно, доля взломанных ключей в зависимости от количества взломанных узлов описывается следующим выражением:
Далее, в случае с многообразием сегментов ключа, когда ключ составлен из сегментов, ключ все же является достаточно стойким после компрометации сегментов ключа. Таким образом, злоумышленнику необходимо собрать, по меньшей мере, сегментов, чтобы взломать ключ. Если общее количество узлов равно , то умелый злоумышленник-взломщик может повторно взломать +1 узлов, идентификаторы которых эквивалентны . Следовательно, при взломе каждых +1 узлов для каждого сегмента будет скомпрометирован весь блок FPP целиком. Следовательно, это может рассматриваться как умелая атака на каждый сегмент по отдельности. Доля скомпрометированных ключей определяется той долей ключей, которые берут, по меньшей мере, сегментов из этих скомпрометированных блоков:
На Фиг. 5 изображен график устойчивости к атакам умелого злоумышленника-взломщика для системы без многообразия для параметров =6 и =23 (R1), и тот же график для системы с многообразием для параметров =3 и =31 (R2). На этом чертеже на оси абсцисс отображено количество захваченных узлов или случаев их захвата, а на оси ординат отображена доля взломанных узлов. Здесь предполагают, что общее количество узлов является меньшим, чем 986049. До захвата 74 узлов система с многообразием сегментов ключа работает лучше, чем система без многообразия.
Следовательно, оказывается, что способ согласно изобретению позволяет за счет использования многообразия сегментов ключа увеличить устойчивость к внешним воздействиям систем защиты, реализованных в сетях WSN.
Такой способ находит конкретное применение в сетях стандарта Zigbee в качестве главного элемента, который улучшает защиту схем распределения ключей с -защитой. В более общем изложении, способ согласно настоящему изобретению также может быть применен для самостоятельного обеспечения защиты в узлах беспроводной сети с ограниченными ресурсами, используемых в сетях контроля за пациентами, и в распределенных беспроводных управляющих сетях.
В настоящем описании и в формуле изобретения единственное число для элемента не исключает наличия множества таких элементов. Кроме того, слово "содержащий" не исключает наличия иных элементов или операций, кроме перечисленных явным образом. Подразумевают, что включение обозначений ссылок, заключенных в круглые скобки, в состав формулы изобретения помогает пониманию и не является ограничивающим признаком.
По прочтении описания настоящего изобретения, в котором раскрыта сущность изобретения, для специалистов в данной области техники будет очевидным, что возможны различные видоизменения. Такие видоизменения могут включать в себя другие признаки, уже известные в области техники радиосвязи и в области техники управления мощностью передатчика, которые могут использоваться вместо описанных здесь признаков или в дополнение к ним.
Класс H04L9/08 с ключевым распределением