Представьте, что Банк A хочет перевести Банку B 100 токенов

Сеть должна проверить, что на счету Банка A достаточно средств, перевод соответствует установленным правилам, а изменения баланса рассчитаны правильно. Но другим банкам не нужно знать фактический баланс Банка A или сумму перевода.

Если все транзакции полностью видны, учреждения могут раскрыть другим участникам конфиденциальную финансовую информацию. Если же всё скрыто и при этом ничем не подтверждено, сети придётся полагаться только на доверие.

Итак, как банк может доказать, что его транзакция корректна, не раскрывая всю информацию о ней?

Здесь и применяются доказательства с нулевым разглашением.

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

Давайте разберёмся, как это работает.


Почему конфиденциальность транзакций важна?

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

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

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

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

Частная финансовая сеть должна обеспечивать баланс между двумя требованиями:

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

• Сеть всё равно должна проверять, соответствуют ли транзакции установленным правилам.

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

Цель не в том, чтобы отказаться от проверки. Нужно сделать проверку возможной, не раскрывая без необходимости исходные данные.


Что такое доказательство с нулевым разглашением?

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

Рассмотрим для примера перевод из банка A.

Банк A хочет отправить банку B 100 токенов. Системе необходимо проверить, достаточно ли средств на балансе банка A и соответствует ли перевод правилам протокола.

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

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

Для этой цели Rayls Enygma использует доказательства с нулевым разглашением Groth16.

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

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

Как работает Rayls Enygma?

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

Вот как выглядит базовый процесс.

Шаг 1: Отправитель инициирует перевод.

Учреждение начинает перевод через свою инфраструктуру Rayls. Система подготавливает информацию, необходимую для обработки транзакции.

Шаг 2: Формируется криптографическое доказательство.

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

Шаг 3: Доказательство отправляется на проверку.

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

Шаг 4: Транзакция проходит процесс расчётов.

Хаб записывает соответствующие сведения о транзакции и коммитменты. Процесс перевода включает этапы ожидания и завершения, поэтому не следует утверждать, что каждый перевод завершает расчёты сразу после проверки доказательства.

Шаг 5: Получающее учреждение обрабатывает предназначенное ему сообщение.

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

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

Так криптографическая проверка и конфиденциальность транзакций могут сочетаться.

Что такое коммитменты Педерсена и зачем они нужны?

Доказательства с нулевым разглашением — лишь одна часть системы. Rayls Enygma также использует коммитменты Педерсена, чтобы представлять значения баланса, не раскрывая сами суммы.

Коммитмент можно понимать как криптографическое представление значения. Он скрывает исходное значение, позволяя системе выполнять определённые проверки над закоммиченными данными.

Рассмотрим перевод из банка A в банк B.

Баланс банка A должен уменьшиться, а баланс банка B — увеличиться. Система должна гарантировать, что изменения балансов соответствуют установленным правилам и что в результате перевода токены не возникают из ниоткуда.

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

Эти два метода выполняют разные функции:

• Коммитменты Педерсена: помогают скрыть исходные значения.

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

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

Важно учитывать ещё одну деталь: заявления о конфиденциальности должны ограничиваться операциями, охваченными реализацией. Согласно документации Rayls, суммы выпуска и сжигания токенов могут быть видны в Хабе, поэтому было бы неверно утверждать, что суммы скрыты во всех типах операций.

Значит ли это, что никто не может видеть транзакцию?

Нет. Это один из важнейших аспектов, который нужно понимать в отношении Rayls Enygma.

Конфиденциальность не означает, что вся информация скрыта от всех. У разных участников разный уровень доступа.

Другие участники сети

Они не могут напрямую узнать скрытую сумму перевода из криптографических данных. Однако некоторые сведения о транзакции и участниках могут оставаться видимыми.

Отправитель

Отправителю известна инициированная им транзакция, включая сведения, необходимые для перевода.

Получатель

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

Оператор частной сети

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

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

Способность оператора просматривать переводы следует отличать от способности тратить средства. Один лишь доступ по ключу просмотра не даёт полномочий на расходование средств, которые предоставляют ключи расходования учреждения.

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

Какая информация скрыта? Какая остаётся видимой? И какие участники имеют право доступа к исходным данным?

Что это означает для блокчейнов институционального уровня?

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

Доказательства с нулевым разглашением и криптографические коммитменты — один из способов решить эту задачу. Rayls Enygma сочетает эти методы с зашифрованными сообщениями и инфраструктурой, управляемой учреждениями, чтобы обеспечивать конфиденциальные переводы токенов.

Однако эти инструменты не решают все проблемы безопасности и соответствия требованиям.

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

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

Поэтому конфиденциальность не следует оценивать на основании одного лишь утверждения, что блокчейн является «частным».

Полезнее задать следующие вопросы:

• Что именно может проверить сеть?

• Какие сведения о транзакции остаются конфиденциальными?

• Кто может получить доступ к исходной информации?

• Что происходит, когда системе необходимо обеспечить аудит или надзор?

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

Главный вывод: банк может доказать, что транзакция соответствует заданным правилам, не раскрывая все лежащие в её основе данные. Но не менее важно понимать, что именно скрыто, что проверяется и кто может получить доступ к информации.