Шералин Бартельми, руководитель отдела продуктов, маркетинга и успеха клиентов в Cox Edge, облачном стартапе компании Cox Communications, рассказывает на портале The New Stack, как периферийные вычисления, интегрированные с блокчейном, позволяют построить распределенную и безопасную edge-архитектуру, способную обеспечить безопасность и целостность данных IoT.

Экспоненциальный рост числа устройств Интернета вещей приводит к появлению новых и более сложных приложений, от которых требуется работа в режиме реального времени. Однако традиционная облачная архитектура предполагает, что устройства IoT отправляют данные иногда на весьма удаленные централизованные серверы, что приводит к задержкам и порой не отвечает требованиям качества обслуживания этих приложений. Периферийные вычисления помогают решить эту проблему, приближая вычисления, хранение и аналитику к пользователям и устройствам, генерирующим данные. В результате данные перемещаются на меньшие расстояния, что может приводить к снижению задержек и ускорению времени отклика.

Однако большая пространственная распределенность размещения периферийных серверов порождает проблемы безопасности, такие как контроль доступа, конфиденциальность, аутентификация и обнаружение вторжений. Блокчейн с его распределенным, децентрализованным, неизменяемым, общим реестром транзакций имеет потенциал для решения проблем безопасности и конфиденциальности, связанных с периферийными вычислениями.

IoT-устройства также уязвимы к кибератакам. Миллионы подключенных устройств генерируют огромное количество данных, которые затем передаются через Интернет. Алгоритмы консенсуса блокчейна подтверждают каждую транзакцию и могут гарантировать, что данные, передаваемые устройствами IoT, проверены и действительны и не были подделаны во время транспортировки.

Однако процессы майнинга и достижения консенсуса являются ресурсоемкими, а IoT-устройства, будучи ограниченными в ресурсах, плохо приспособлены к такой вычислительной нагрузке. Передача обработки в облако не является вариантом — очевидной причиной является задержка. Периферийные вычисления — это одно из решений для разгрузки узлов IoT от задач с интенсивными вычислениями.

Вместе с блокчейном периферийные вычисления выглядят частью идеальной комбинации для создания безопасной, масштабируемой и распределенной платформы для IoT. В то время как блокчейн помогает решить проблемы безопасности, присущие периферийным вычислениям и IoT, периферийные вычисления обеспечивают низкую задержку, распределенную, масштабируемую сеть, на которую полагаются приложения IoT.

Более пристальный взгляд на блокчейн

В блокчейне данные хранятся в так называемых блоками. Когда блок заполняется, он добавляется к предыдущему блоку. Блокчейн представляет собой неизменяемую базу данных и делает необратимой хронологию данных. Данные, записанные в блок, становятся частью этой временной шкалы и не могут быть изменены. Каждый узел содержит полную запись данных, хранящихся в блокчейне с момента его создания. Все блоки хранят свой собственный хеш, хеш предыдущего блока и его временную метку. Если злоумышленник каким-либо образом вмешивается в блокчейн или пытается изменить информацию в своем собственном узле, его хеш изменяется, в результате чего узел злоумышленника помечается как нелегитимный.

Для того чтобы злоумышленник добился успеха, ему необходимо изменить информацию на 51% узлов так, чтобы информация на них совпадала с его информацией. Учитывая постоянно растущий размер сетей блокчейн, это фактически невыполнимая задача.

Протоколы консенсуса, такие как доказательство выполнения работы (POW), подтверждают каждую транзакцию. В POW майнеры соревнуются в решении произвольной математической головоломки, которая включает в себя вычисление хеш-функций, и тот, кто побеждает, получает право добавить новый блок в цепь. POW требует больших вычислительных затрат и потребляет большое количество электроэнергии по мере того, как все больше майнеров присоединяются к сети.

Хеширование в сочетании с криптографией с асимметричными ключами и смарт-контрактами обеспечивает надежность и неизменность данных, хранящихся в блокчейне. Смарт-контракт — это часть кода, которая запускается на блокчейне при выполнении определенных условий. Он используется для выполнения соглашения без использования посредника или потери времени. Смарт-контракт в IoT может использоваться, например, для распространения безопасных обновлений ПО на IoT-устройствах.

Учитывая эту историю, давайте рассмотрим, как блокчейн и периферийные вычисления могут быть интегрированы в реальные приложения.

Архитектура

Архитектуру IoT можно разделить на три уровня: устройств IoT, периферийный и облачный. Блокчейн может быть интегрирован в каждый из этих уровней.

Уровень устройств IoT. Каждый периферийный сервер на этом уровне вместе с подключенными к нему устройствами образует собственную локальную сеть. Локальный периферийный сервер управляет и регистрирует IoT-устройство после того, как устройство выражает доверие представленному ему сертификату CA (центра сертификации). Коммуникации между устройствами IoT, между устройствами и периферийным сервером или между периферийными серверами записываются в виде транзакций и хранятся в блокчейне периферийного сервера. Каждый периферийный сервер является менеджером блокчейна, отвечающим за создание, проверку и хранение транзакций.

Коммуникации между устройствами на этом уровне можно разделить на две категории: связь между устройствами в одной локальной сети и связь между устройствами в разных локальных сетях. В первом случае IoT-устройства направляют исходные запросы своему менеджеру, периферийному серверу. Менеджер проверяет подлинность запроса, а затем рассылает его по всей сети. Во втором случае транзакции между IoT-устройствами аутентифицируются их соответствующими периферийными менеджерами.

Все транзакции майнятся и хранятся в блоках на периферийных серверах. Они обрабатывают запросы в режиме реального времени и хранят данные в блокчейне. Данные, которые не чувствительны ко времени и требуют дальнейшей агрегации или анализа, отправляются на облачный уровень.

Периферийный уровень. На этом уровне находятся периферийные серверы, которые поддерживают периферийный блокчейн. IoT-устройствам не хватает вычислительной мощности, памяти и хранилища, необходимых для майнинга и консенсуса. Периферийный уровень избавляет IoT-устройства от эти вычислительных нагрузок и хранит все транзакции между IoT-устройствами, а также между IoT-устройствами и пограничными серверами в блокчейне.

Криптографические службы блокчейна обеспечивают безопасность транзакций, совершаемых устройствами IoT, шифруя их и прикрепляя к каждой транзакции свои цифровые подписи. Периферийные серверы, работающие в качестве менеджеров блокчейна, используют алгоритмы консенсуса, такие как PoW или доказательство хранения, для подтверждения и записи транзакций в блок, после чего они транслируют блок другим периферийным серверам для проверки.

Облачный слой. Этот слой состоит из облачных серверов, которые имеют свой собственный децентрализованный блокчейн. Здесь хранятся данные, которые не чувствительны к задержкам и которые могут потребовать дальнейшего углубленного анализа. Например, данные датчиков могут быть объединены с данными из других источников для получения более детальной информации.

Применение блокчейна и периферийных вычислений в реальной жизни

Хотя блокчейн чаще всего ассоциируется с криптовалютами, его можно использовать и в других областях, которые выигрывают от свойств безопасности блокчейна и его децентрализованной природы, таких как здравоохранение, промышленный IoT, «умные» города и «умные» дома.

Давайте вкратце рассмотрим, как периферийные вычисления и блокчейн повышают безопасность медицинских карт пациентов в больницах. Носимые устройства получают медицинские данные от пациента и сохраняют их в электронной медицинской карте. Затем эти данные могут быть зашифрованы и отправлены на периферийные серверы. Те хранят эти данные на периферийном блокчейне для повышения безопасности и конфиденциальности данных.

Пациенты и уполномоченный персонал больницы могут получить доступ к данным на периферийных серверах гораздо быстрее, чем к данным в облаке. Периферийные серверы отправляют все данные, которые не требуются для анализа в режиме реального времени, в облако.

Периферийные вычисления, интегрированные с блокчейном, позволяют построить распределенную и безопасную edge-архитектуру, способную обеспечить безопасность и целостность данных IoT на протяжении всего срока службы. По мере роста числа приложений и их потребности в безопасном доступе к данным в режиме реального времени, будет расти и внедрение периферийных вычислений на основе блокчейна.