Конфиденциальность данных Hyperledger Fabric - PullRequest
0 голосов
/ 02 января 2019

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

Узел A в Org 1 вызывает код цепи, этот код имеет доступ к данным, доступным только в Org 2, и узел A никогда не получает доступ к полной информации.

Я знаю, что Hyperledger Fabric поддерживает частные каналы и личные данные, возможно ли выполнить это требование?Если да, можете ли вы указать мне правильное направление, чтобы сделать это?

1 Ответ

0 голосов
/ 02 января 2019

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

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

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

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

Проверьте это для одобрения: https://hyperledger -fabric.readthedocs.io / en / release-1.4 / private-data-arch.html # endorsement

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

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

Ресурсы: https://hyperledger -fabric.readthedocs.io / en / release-1.4 / private-data / private-data.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...