Установка и использование платформы
Обмен конфиденциальными данными¶
Блокчейн-платформа Waves Enterprise позволяет ограничить доступ к определенным данным, размещаемым в блокчейне. Для этого пользователи объединяются в группы, получающие доступ к конфиденциальным данным.
Создание группы доступа¶
Создать группу доступа к конфиденциальным данным может любой участник сети. Прежде, чем создавать группу доступа, определитесь со списком участников, которые будут в нее входить. Затем подпишите и отправьте транзакцию 112 CreatePolicy:
В поле
recipientsвпишите через запятую адреса участников, которые получат доступ к конфиденциальным данным.В поле
ownersдобавьте через запятую адреса участников группы, которым будут предоставлены права администраторов. Администраторы группы доступа, помимо доступа к конфиденциальным данным, смогут изменять состав группы доступа.
При отправке транзакции вы получите идентификатор созданной группы доступа (policyId). Он потребуется при изменении состава ее участников.
После отправки транзакции в блокчейн доступ к отправляемым в сеть конфиденциальным данным получат все участники, зарегистрированные в созданной группе доступа.
Как создатель транзакции, вы сможете изменять ее состав, как и участники, добавленные в поле owners.
Изменение группы доступа¶
Изменять состав группы доступа могут только ее участники, добавленные в поле owners при создании группы, а также сам ее создатель – владельцы группы.
Для этого подпишите и отправьте транзакцию 113 UpdatePolicy:
В поле
policyIdвведите идентификатор изменяемой группы доступа.В поле
opTypeвведите действие, которое необходимо произвести с группой:add– добавить участников;remove– удалить участников.Если вы хотите добавить или удалить участников группы доступа, впишите их публичные ключи в поле
recipients.Для добавления или удаления владельцев группы доступа впишите их публичные ключи в поле
owners.
Информация о группе доступа обновляется после отправки транзакции в блокчейн.
Отправка конфиденциальных данных в сеть¶
Для отправки конфиденциальных данных в сеть предусмотрены методы REST API POST /privacy/sendData и POST /privacy/sendDataV2. Эти методы требует авторизации.
С помощью методов POST /privacy/sendData и POST /privacy/sendDataV2 вы можете отправить данные размером до 20 мегабайт.
При отправке данных, укажите в запросе следующую информацию:
sender– блокчейн-адрес, от которого должны рассылаться данные (соответствуют значению параметра «privacy.owner-address» в конфигурационном файле ноды);password– пароль для доступа к закрытому ключу keystore ноды;policyId– идентификатор группы, которая будет иметь доступ к отправляемым данным;info– информация об отправляемых данных;data– строка, содержащая данные в формате base64;hash– sha256-хэш данных в формате base58.
Примеры запроса и ответа метода POST /privacy/sendData:
Метод POST /privacy/sendDataV2 позволяет приложить файл в окне Swagger, не прибегая к его конверсии в формат base64.
Поле Data в этой версии метода отсутствует.
Примеры запроса и ответа метода POST /privacy/sendDataV2:
В результате отправки того или иного запроса будет сформирована транзакция 114 PolicyDataHash, которая отправит хэш конфиденциальных данных в блокчейн.