Проектирование архитектуры многокомпонентных вычислений

хранилище BLOB-объектов Azure
Служба Azure Kubernetes (AKS)
База данных SQL Azure

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

Многокомпонентные вычисления имеют следующие атрибуты:

  • Участвует более одной компании или организации.
  • Стороны независимы.
  • Стороны не доверяют друг другу со всеми своими данными.
  • Все стороны получают доступ к общей платформе вычислений и хранения данных.
  • Некоторые процессы должны быть закрытыми для некоторых участвующих сторон.

Цепочка поставок — это пример рабочего процесса, включающего несколько сторон. Сырье течет от точки происхождения до производства. Товары от производителя проходят через партнеров по доставке в центр распространения. Из центра товары отправляются в розничные точки.

На схеме показано развитие членов цепочки поставок в виде картинок.

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

Технологии многопартийных вычислений

Многопользовательские вычисления включают различные технологии, которые позволяют сторонам безопасно осуществлять транзакции по сети.

На схеме показано, как реестры реализуются как конфиденциальные вычисления, Служба Azure Kubernetes, виртуальные машины или предложения партнеров.

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

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

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

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

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

Модели сети блокчейна

Чтобы решить, подходит ли блокчейн для бизнес-процесса, рассмотрите следующие вопросы:

  • Пересекает ли этот бизнес-процесс границы доверия?
  • Несколько сторон совместно используют и обновляют данные?
  • Есть ли посредники, которые управляют единым источником истины?
  • Включает ли процесс малоценные действия по ручной проверке?

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

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

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

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

Многопользовательские вычисления Azure

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

Блокчейн с azure Виртуальные машины

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

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

В Azure доступны шаблоны развертывания для большинства реестров блокчейна для виртуальных машин.

Блокчейн в Kubernetes

Так как большинство реестров блокчейна поддерживают развертывание в контейнерах Docker, для управления контейнерами можно использовать Kubernetes. В Azure есть управляемое предложение Kubernetes под названием Служба Azure Kubernetes (AKS), которое можно использовать для развертывания и настройки узлов блокчейна.

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

В Azure доступны шаблоны развертывания для большинства реестров блокчейна для AKS.

Блокчейн как услуга

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

ConsenSys предлагает кворум в Azure. Кворум — это уровень протокола с открытым кодом, который поддерживает приложения на основе Ethereum.

В будущем могут появиться и другие предложения.

Конфиденциальный реестр Azure

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

  • Существующее шифрование
    • Неактивные данные. Шифруйте неактивные данные при хранении в хранилище BLOB-объектов или базе данных.
    • Передаваемые данные. Шифруйте данные, передаваемые между общедоступными или частными сетями.
  • Конфиденциальные вычисления
    • Используемые данные. Шифруйте используемые данные в памяти и во время вычислений.

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

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

Реестр Базы данных SQL Azure

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

На схеме показана архитектура реестра базы данных.

Примечание

Реестр базы данных Azure SQL в настоящее время предлагается в общедоступной предварительной версии.

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

Реестр помогает защитить данные от любого злоумышленника или пользователя с высоким уровнем привилегий, включая администраторов баз данных, систем и облака. Исторические данные сохраняются. Если строка обновляется в базе данных, ее предыдущее значение сохраняется в таблице журнала. Это обеспечивает защиту без каких-либо изменений в приложении.

Реестр — это функция базы данных Azure SQL. Его можно включить в любой существующей базе данных Azure SQL.

Сравнение параметров

Конфиденциальный реестр и реестр базы данных Azure SQL

В этой таблице сравнивается конфиденциальный реестр с реестром базы данных Azure SQL.

Реестр Базы данных SQL Конфиденциальный реестр
Централизованная система, требующая доказательств незаконного изменения Да Нет
Децентрализованная система, требующая, чтобы данные были доказательствами незаконного изменения Нет Да
Защита реляционных данных от незаконного изменения Да Нет
Защищает неструктурированные данные от незаконного изменения Нет Да
Безопасное хранение данных цепочки вне сети в блокчейне Да Нет
Защита вне цепочки хранения файлов, на которые ссылается блокчейн Нет Да
Реляционные данные можно запрашивать Да Нет
Запросы к неструктурированным хранимым данным Нет Да

Конфиденциальный реестр и Хранилище BLOB-объектов Azure

Функция неизменяемого хранилища Хранилище BLOB-объектов Azure гарантирует, что данные, записанные в него, могут быть прочитаны, но никогда не изменялись. В этой таблице сравнивается эта технология с Конфиденциальным реестром.

Конфиденциальный реестр Неизменяемое хранилище
Конфиденциальные аппаратные анклавы Да Нет
Целостность данных только для добавления Да Да, ограничено интервалами
Шифрование используемых данных Да Нет
Подтверждение реестра блокчейна Да Нет

Решение о многокомпонентных вычислениях

На этой схеме перечислены варианты для многокомпонентных вычислений со службами Azure.

На схеме представлена сводка решений по выбору варианта многокомпонентных вычислений.

Скачайте файл Visio этой архитектуры.

Дальнейшие действия