Эллиптическая криптография интернета вещей () — криптографический протокол, основанный на эллиптической криптографии, целью которого является защита связи между устройствами, работающими в соответствии с технологией «интернета вещей», то есть защита связи между устройствами «интернета вещей» и сервером.
«Интернет вещей» () представляет собой сеть, где устройства, подключённые к интернету, взаимодействуют с облаком для того, чтобы обмениваться информацией через интернет. С помощью этой технологии существует возможность управлять несколькими устройствами удалённо. Поскольку устройства подключены к сети интернет, возникает проблема безопасности «интернета вещей» при использовании этой технологии. Устройства «интернета вещей» могут подвергаться различным видам атак. Для того чтобы устранить уязвимость устройств, существует защищенный протокол ECIOT. В соответствии с данным протоколом устройство устанавливает секретный ключ сеанса с сервером используя протокол Диффи-Хеллмана на основе кривой NIST p-192. Последующая связь выполняется с помощью симметричного шифра ключа Ex-OR, что подразумевает под собой шифр с использованием проективной системы координат с методом вычитания сложения с использованием ключа ECIOT.
Введение Выбор основных составляющих криптографического протокола ECIOT напрямую зависит от архитектуры сети, использующей технологию «Интернет вещей». Специфика устройств «интернета вещей» накладывает ограничения на использование криптографических примитивов с точки зрения памяти и вычислительной мощности. Архитектура «интернета вещей» позволяет проследить как и где проявляются уязвимости.
Архитектура «Интернета вещей» В общем случае «Интернет вещей» состоит из беспроводных сенсорных узлов, которые собирают информацию и отправляют её на ближайшую базовую станцию, называемую «шлюзом», которая, в свою очередь, связывается с общим или частным облаком. Особенности топологии могут варьироваться, например, в некоторых случаях шлюз может находиться на устройстве. Устройства, используемые в таких топологиях, могут быть построены специально для «Интернета вещей» (greenfield) или могут быть устаревшими устройствами, которые имеют возможности поддержки технологии, добавленные после их установки (brownfield).
Задачи безопасности Цели безопасности для «Интернета вещей» остаются такими же как и в других компьютерных сетях, однако появляются и некоторые уникальные проблемы, связанные с использованием криптографии с открытым ключом, которая необходима для защиты связи между узлами датчиков. Криптографические алгоритмы с открытым ключом обычно реализуются сложным образом, что приводит к значительным накладным расходам по отношению к времени выполнения и энергопотреблению. Основными проблемами в топологии «Интернета вещей» являются датчики. Эти миниатюрные устройства предназначены для малого потребления энергии, они имеют небольшой кремниевый форм-фактор, имеют ограниченную пропускную способность и вычислительную мощность из-за 8/16 битного микропроцессора с очень низкой тактовой частотой (≤10 МГц). Хранение информации на этих устройствах также ограничено, так как большая часть хранилища занята прикладным программным обеспечением, оставляя очень ограниченное пространство для протоколов безопасности: ОЗУ занимает всего несколько килобайт, а флэш-память имеет до 256 КБ для хранения программного кода.
Защита и проверка безопасности «Интернета вещей» должна осуществляться на протяжении всего жизненного цикла устройства, начиная от первоначальной конфигурации и заканчивая оперативной средой, которая включает в себя безопасную загрузку путем проверки цифровых подписей, контроля доступа, аутентификации устройства, межсетевых экранов и IPS и т. д.
Схема ECIOT Протокол ECIOT используется для шифрования и дешифрования сообщений на основе эллиптической кривой для связи между шлюзом и устройством «интернета вещей». Устройства IoT будут использовать симметричные ключи протокола Ex-OR для шифрования и дешифрования сообщения. В протоколе Ex-OR ключ отправителя и получателя должны быть одинаковыми, так как это протокол симметричного ключа. Но обмен этим ключом по небезопасному каналу является рискованным из-за возможности их перехвата хакером. Поэтому, устройство, использующее технологию «Интернет вещей», в схеме ECIOT должно использовать Протокол Диффи — Хеллмана на эллиптических кривых для установления пары ключей с сервером. Использование этого протокола на беспроводных сенсорных узлах наиболее выгодно, так как из-за меньшего размера ключевых устройств пропускная способность и требования к хранению значительно сократятся по сравнению с протоколом RSA. Также реализация протокола ECIOT в криптографической библиотеке MIRACL показывает, что протокол Диффи Хеллмана на эллиптической кривой потребляет меньше ресурсов по сравнению с протоколом Диффи Хеллмана по факториальной проблеме.
Описание алгоритма ECIOT Протокол Диффи — Хеллмана на эллиптических кривых позволяет двум сторонам, имеющим пары открытый/закрытый ключ на эллиптических кривых, получить общий секретный ключ, используя незащищённый от прослушивания канал связи. Этот общий секретный ключ используется устройствами IoT для шифрования и расшифровки последующих сообщений с использованием шифра Ex-OR. Рассмотрим Протокол Диффи — Хеллмана на эллиптических кривых подробнее.
В этом протоколе и являются открытыми ключами устройства «интернета вещей» и сервера соответственно, тогда и являются закрытыми ключами. Базовая точка G является точкой на эллиптической кривой. Устройство «интернета вещей» и сервер умножают базовую точку G на свои закрытые ключи, чтобы получить ещё одну точку на эллиптической кривой, которую называют открытым ключом и пересылают друг с другу. Общий секретный ключ — это координата X результирующей точки, которую они получают после умножения их соответствующих секретных ключей на открытый ключ друг друга.
Алгоритм
Базовая точка на кривой G
Пара открытый/закрытый ключ на устройстве , где
Пара открытый/закрытый ключ на сервере , где
IoT-устройство вычисляет
Сервер вычисляет
Общий секретный ключ
Реализация
В протоколе используется эллиптическая кривая NIST p-192, уравнение кривой , где A, B и p предопределены в форме Вейерштрасса над конечным полем , где и является простым, A и B ∈ . Для ускорения вычислений на IoT в протоколе ECIOT использовались такие значения A, B и p эллиптической кривой:
p ="FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFFFFFFFFFF"
A ="-3"
B ="64210519E59C80E70FA7E9AB72243049FEB8DEECC146B9B1"
Координаты G(X, Y):
X =“188DA80EB03090F67CBF20EB43A18800F4FFOAFD82FF1012”
Y =“07192B95FFC8DA78631011ED6B24CDD573F977A11E794811”
Устройство IoT и сервер выбирают любое положительное целое число случайным образом в качестве своего закрытого ключа и умножают базовую точку G (X, Y) на эллиптическую кривую для генерации своего открытого ключа.
Закрытый ключ устройства IoT = 2455155546008943817740293915197451784769108058161191238065
Закрытый ключ сервера = 156204924171171345230889264615265264018234269657
Устройство и сервер вычисляют ключ сеанса путем умножения открытых ключей друг друга на их закрытые ключи.
Устройство IoT вычисляет ключ сеанса = 2013290534764576415020157484388000712366938431147014905701
Сервер вычисляет ключ сеанса = 2013290534764576415020157484388000712366938431147014905701
Ключи сеанса совпадают, они находится в сжатом формате. Использование метода сжатия позволяет экономить пропускную способность, поскольку для того, чтобы воссоздать точку необходимо передавать только одну координату ключа эллиптической кривой вместе с младшим значащим битом Y-координаты. Для оптимизации протокола ECIOT была использована проективная система координат с методом вычитания сложения для целочисленной перекодировки. Использование проективных координат помогает протоколу избежать модульной операции инверсии, которая является энергозатратной с вычислительной точки зрения для 8/16-битных устройств «интернета вещей», что позволяет продлить ему срок службы.
Примечания
Категория:Криптографические протоколы Категория:Интернет вещей