РЕГУЛИРОВАНИЕ КОНФИДЕНЦИАЛЬНЫХ БЛОКЧЕЙН-ТРАНЗАКЦИЙ Российский патент 2020 года по МПК G06F21/60 H04L9/32 G06Q20/08 

Описание патента на изобретение RU2720354C1

Уровень техники

[0001] Системы распределенных реестров (DLS), которые также могут упоминаться как консенсусные сети и/или сети блокчейн, позволяют участвующим объектам защищенно и неизменно сохранять данные. DLS обычно упоминаются как сети блокчейн независимо от конкретных пользовательских вариантов использования (например, криптовалют). Примерные типы сетей блокчейн могут включать в себя открытые сети блокчейн, закрытые сети блокчейн и консорциальные сети блокчейн. Открытая сеть блокчейн является открытой для всех объектов в том, чтобы использовать DLS и участвовать в консенсусном процессе. Закрытая сеть блокчейн предоставляется для конкретного объекта, который централизованно управляет разрешениями на считывание и запись. Консорциальная сеть блокчейн предоставляется для выбранной группы объектов, которые управляют консенсусным процессом, и включает в себя уровень управления доступом.

[0002] Цепочки блоков используются в криптовалютных сетях, которые позволяют участникам проводить транзакции, чтобы покупать/продавать товары и/или услуги с использованием криптовалюты. Общая криптовалюта включает в себя биткоин. В криптовалютных сетях, модели ведения записей используются для того, чтобы записывать транзакции между пользователями. Модели ведения записей примера включают в себя модель на основе непотраченного вывода по транзакциям (UTXO) и модель на основе счетов (также называемую "моделью на основе счетов" или "моделью на основе счетов/балансов").

[0003] В UTXO-модели, активы в цепочке имеют форму транзакций. Каждая транзакция тратит вывод из предшествующих транзакций и формирует новые выводы, которые могут тратиться в последующих транзакциях. Непотраченные транзакции пользователя отслеживаются, и баланс, который должен тратить пользователь, вычисляется как сумма непотраченных транзакций. Каждая транзакция принимает один или более непотраченных выводов (и только непотраченных выводов) в качестве ввода и может иметь один или более выводов. Такое требование, что только непотраченные выводы могут использоваться в дополнительных транзакциях, является обязательным для того, чтобы предотвращать двойную трату и мошенничество. UTXO-модель поддерживает функцию проверки достоверности и доказательства транзакций, но такая поддержка для смарт-контрактов является слабой.

[0004] Модель на основе счетов приспосабливается посредством эфириума. Модель на основе счетов выполняет ведение записей и управляет балансом счетов аналогично традиционному банку. Согласно этой модели, счет может иметь адрес и соответствующий баланс счета. Активы в цепочке представляются как баланс счета. Каждая транзакция перевода может иметь адрес счета переведенного актива и адрес счета принимаемого актива. Сумма транзакции непосредственно обновляется на балансе счета. Модель на основе счетов является эффективной, поскольку каждая транзакция, возможно, должна только проверять достоверность того, что отправляющий счет имеет достаточный баланс для того, чтобы оплачивать транзакцию. В дополнение к поддержке функции проверки достоверности и доказательства транзакций, модель на основе счетов может полностью поддерживать смарт-контракты, в частности, смарт-контракты, которые требуют информации состояния или заключают в себе несколько сторон.

Сущность изобретения

[0005] Реализации настоящего раскрытия сущности включают в себя компьютерно-реализуемые способы для конфиденциальных транзакций на основе технологий блокчейн (цепочки блоков) (называемых "конфиденциальными блокчейн-транзакциями" либо просто "конфиденциальными транзакциями"). Более конкретно, реализации настоящего раскрытия сущности направлены на регулирование конфиденциальных блокчейн-транзакций.

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

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

[0008] Эти и другие реализации необязательно могут включать в себя один или более следующих признаков.

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

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

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

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

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

[0014] Шестой признак, комбинируемый с любым из предыдущих или последующих признаков, в котором верификация того, что конфиденциальная транзакция является достоверной, на основе контента конфиденциальной транзакции и дешифрованных данных транзакции включает в себя одно или более из следующего: определение того, что одно или более значений фиксации являются корректными, на основе схемы обязательств; верификацию одного или более доказательств с нулевой передачей знаний данных транзакции; или определение того, что значения данных транзакции соблюдают нормы регулирования.

[0015] Седьмой признак, комбинируемый с любым из предыдущих или последующих признаков, в котором верификация одного или более доказательств с нулевой передачей знаний данных транзакции включает в себя одно или более из следующего: определение того, что баланс счета клиентского узла перед конфиденциальной транзакцией превышает нуль; определение того, что сумма транзакции для конфиденциальной транзакции превышает нуль; и определение того, что сумма транзакции для конфиденциальной транзакции меньше или равна балансу счета клиентского узла перед конфиденциальной транзакцией.

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

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

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

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

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

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

[0021] Фиг. 2 иллюстрирует примерную концептуальную архитектуру в соответствии с реализациями настоящего раскрытия сущности.

[0022] Фиг. 3 иллюстрирует примерный процесс регулирования конфиденциальной блокчейн-транзакции в соответствии с реализациями настоящего раскрытия сущности.

[0023] Фиг. 4 иллюстрирует примерный контент конфиденциальной блокчейн-транзакции в соответствии с реализациями настоящего раскрытия сущности.

[0024] Фиг. 5 иллюстрирует примерный процесс, который может выполняться в соответствии с реализациями настоящего раскрытия сущности.

[0025] Аналогичные ссылки с номерами на различных чертежах указывают аналогичные элементы.

Подробное описание изобретения

[0026] Реализации настоящего раскрытия сущности включают в себя компьютерно-реализуемые способы для конфиденциальных транзакций на основе технологий блокчейн (называемых "конфиденциальными блокчейн-транзакциями" либо просто "конфиденциальными транзакциями"). Более конкретно, реализации настоящего раскрытия сущности направлены на регулирование конфиденциальных блокчейн-транзакций.

[0027] В некоторых реализациях, действия включают в себя получение, посредством клиентского узла сети блокчейн, открытого ключа регуляторного узла; формирование, посредством клиентского узла, одного или более значений фиксации конфиденциальной транзакции клиентского узла посредством применения криптографической схемы обязательств к данным транзакции для конфиденциальной транзакции; формирование, посредством клиентского узла, зашифрованной регулирующей информации конфиденциальной транзакции посредством шифрования данных транзакции с использованием открытого ключа регуляторного узла; и передачу, посредством клиентского узла в консенсусный узел сети блокчейн, контента конфиденциальной транзакции для выполнения, при этом контент конфиденциальной транзакции включает в себя: одно или более значений фиксации; зашифрованную регулирующую информацию; и одно или более доказательств с нулевой передачей знаний данных транзакции.

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

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

[0030] Чтобы предоставлять дополнительный контекст для реализаций настоящего раскрытия сущности, и как представлено выше, системы распределенных реестров (DLS), которые также могут упоминаться как консенсусные сети (например, состоящие из узлов между равноправными узлами) и сети блокчейн, позволяют участвующим объектам защищенно и неизменно проводить транзакции и сохранять данные. Хотя термин "блокчейн", в общем, ассоциируется с криптовалютной сетью биткоин, слово «блокчейн», используемое в данном документе, в общем, означает DLS независимо от конкретных вариантов использования. Как представлено выше, сеть блокчейн может предоставляться в качестве открытой сети блокчейн, закрытой сети блокчейн или консорциальной сети блокчейн.

[0031] В открытой сети блокчейн, консенсусный процесс управляется посредством узлов консенсусной сети. Например, сотни, тысячи, даже миллионы объектов могут взаимодействовать в открытой сети блокчейн, каждый из которых управляет, по меньшей мере, одним узлом в открытой сети блокчейн. Соответственно, открытая сеть блокчейн может считаться открытой сетью относительно участвующих объектов. В некоторых примерах, большинство объектов (узлов) должны подписывать каждый блок для того, чтобы блок был достоверным и добавлялся в цепочку блоков (распределенный реестр) сети блокчейн. Примерная открытая сеть блокчейн включает в себя сеть биткоин, которая представляет собой платежную сеть между равноправными узлами. Сеть биткоин использует распределенный реестр, называемый "цепочкой блоков" (блокчейном). Тем не менее, как отмечено выше, термин "блокчейн" используется для того, чтобы, в общем, означать распределенные реестры без конкретной ссылки на сеть биткоин.

[0032] В общем, открытая сеть блокчейн поддерживает открытые транзакции. Открытая транзакция совместно используется со всеми узлами в открытой сети блокчейн и сохраняется в глобальной цепочке блоков. Глобальная цепочка блоков представляет собой цепочку блоков, которая реплицируется по всем узлам. Таким образом, все узлы находятся в идеальном консенсусе состояния относительно глобальной цепочки блоков. Чтобы достигать консенсуса (например, соглашения с добавлением блока в цепочку блоков), консенсусный протокол реализуется в открытой сети блокчейн. Примерный консенсусный протокол включает в себя, без ограничения, доказательство работы (POW), реализованное в сети биткоин.

[0033] В общем, закрытая сеть блокчейн предоставляется для конкретного объекта, который централизованно управляет разрешениями на считывание и запись. Объект управляет тем, какие узлы имеют возможность участвовать в сети блокчейн. Следовательно, закрытые сети блокчейн, в общем, упоминаются в качестве сетей с контролируемым доступом, которые устанавливают ограничения касательно того, кому разрешается участвовать в сети, и касательно их уровня участия (например, только в определенных транзакциях). Различные типы механизмов управления доступом могут использоваться (например, существующие участники голосуют по добавлению новых объектов, контролирующий орган может управлять допуском).

[0034] В общем, консорциальная сеть блокчейн является закрытой между участвующими объектами. В консорциальной сети блокчейн, консенсусный процесс управляется посредством авторизованного набора узлов, причем один или более узлов управляются посредством соответствующего объекта (например, финансового учреждения, страховой компании). Например, консорциум из десяти (10) объектов (например, финансовых учреждений, страховых компаний) может управлять консорциальной сетью блокчейн, каждый из которых управляет, по меньшей мере, одним узлом в консорциальной сети блокчейн. Соответственно, консорциальная сеть блокчейн может считаться закрытой сетью относительно участвующих объектов. В некоторых примерах, каждый объект (узел) должен подписывать каждый блок для того, чтобы блок был достоверным и добавлялся в цепочку блоков. В некоторых примерах, по меньшей мере, поднабор объектов (узлов) (например, по меньшей мере, 7 объектов) должен подписывать каждый блок для того, чтобы блок был достоверным и добавлялся в цепочку блоков.

[0035] Реализации настоящего раскрытия сущности подробнее описываются в данном документе со ссылкой на консорциальную сеть блокчейн. Тем не менее, предполагается, что реализации настоящего раскрытия сущности могут быть реализованы в любом соответствующем типе сети блокчейн.

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

[0037] Цепочка блоков представляет собой защищенный от несанкционированного использования совместно используемый цифровой реестр, который записывает транзакции в открытую или закрытую сеть с равноправными узлами. Реестр распределяется во все узлы-члены в сети, и предыстория транзакций актива, возникающих в сети, постоянно записывается в блоке. Поскольку реестр является совершенно открытым для участвующих объектов, непосредственно реестр блокчейна не имеет функции защиты конфиденциальности и требует дополнительной технологии для того, чтобы защищать конфиденциальность контента транзакции актива.

[0038] Технологии для защиты конфиденциальности для цепочки блоков могут включать в себя технологии для реализации конфиденциальной транзакции, чтобы защищать конфиденциальность контента транзакции. В конфиденциальной транзакции, контент транзакции является доступным или известным только для участников транзакции, но не для всех остальных посторонних объектов. Например, конфиденциальная транзакция обеспечивает возможность только двум сторонам, принимающим участие в транзакции, иметь сведения по сумме транзакции, и внешним наблюдателям не позволяется знать эту информацию. Такие технологии для реализации конфиденциальных транзакций использованы, например, в MONERO и ZCASH.

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

[0040] При добавлении защиты конфиденциальности в цепочку блоков (например, в контексте конфиденциальных транзакций), для одного или более регуляторов (таких как правительство, отраслевые ассоциации и т.д.) затруднительно проводить аудит, исследовать, проверять, контролировать или иным образом регулировать транзакции. Например, для регулятора (или контролера) в консорциальной сети блокчейн затруднительно проверять формальность и достоверность контента конфиденциальной транзакции, поскольку информация транзакции, сохраненная в цепочке блоков, шифруется, что ограничивает варианты применения блокчейна.

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

[0042] Например, при отправке конфиденциальной транзакции, пользователь может шифровать как случайное число, так и значение простого текста (например, баланс счета перед конфиденциальной транзакцией либо сумму перевода конфиденциальной транзакции), соответствующее обязательству Педерсена в транзакции (подробнее описывается ниже), и может использовать открытый ключ регулятора для того, чтобы шифровать и отправлять его в качестве части данных транзакции. Регулятор может использовать свой закрытый ключ для того, чтобы дешифровать обязательство Педерсена для каждой транзакции в любое время, за счет этого определяя то, удовлетворяет или нет каждая транзакция регулирующим требованиям, без дополнительных взаимодействий в цепочке, таким как отправка запроса каждому участнику цепочки во время аудита, прием возвращаемых результатов от каждого участника, чтобы анализировать возвращаемый результат, чтобы верифицировать каждую транзакцию.

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

[0044] Фиг. 1 иллюстрирует примерное окружение 100, которое может использоваться для того, чтобы выполнять реализации настоящего раскрытия сущности. В некоторых примерах, примерное окружение 100 обеспечивает возможность объектам участвовать в консорциальной сети 102 блокчейн. Примерное окружение 100 включает в себя вычислительные устройства или системы 106, 108 и сеть 110. В некоторых примерах, сеть 110 включает в себя локальную вычислительную сеть (LAN), глобальную вычислительную сеть (WAN), Интернет либо комбинацию вышеозначенного и соединяет веб-узлы, пользовательские устройства (например, вычислительные устройства) и внутренние интерфейсные системы. В некоторых примерах, к сети 110 может осуществляться доступ по линии проводной и/или беспроводной связи.

[0045] В проиллюстрированном примере, вычислительные системы 106, 108 могут включать в себя любую соответствующую вычислительную систему, которая обеспечивает участие в качестве узла в консорциальной сети 102 блокчейн. Примерные вычислительные устройства включают в себя, без ограничения, сервер, настольный компьютер, переносной компьютер, планшетное вычислительное устройство и смартфон. В некоторых примерах, вычислительные системы 106, 108 хостят одну или более компьютерно-реализуемых услуг для взаимодействия с консорциальной сетью 102 блокчейн. Например, вычислительная система 106 может хостить компьютерно-реализуемые услуги первого объекта (например, пользователя A), к примеру, система управления транзакциями, которую использует первый объект для того, чтобы управлять своими транзакциями с одним или более других объектов (например, других пользователей). Вычислительная система 108 может хостить компьютерно-реализуемые услуги второго объекта (например, пользователя B), к примеру, система управления транзакциями, которую использует второй объект для того, чтобы управлять своими транзакциями с одним или более других объектов (например, других пользователей). В примере по фиг. 1, консорциальная сеть 102 блокчейн представляется как сеть с равноправными узлами для узлов, и вычислительные системы 106, 108 предоставляют узлы первого объекта и второго объекта, соответственно, которые участвуют в консорциальной сети 102 блокчейн.

[0046] Фиг. 2 иллюстрирует примерную концептуальную архитектуру 200 в соответствии с реализациями настоящего раскрытия сущности. Примерная концептуальная архитектура 200 включает в себя уровень 202 объектов, уровень 204 предоставления хостящихся услуг и уровень 206 сети блокчейн. В проиллюстрированном примере, уровень 202 объектов включает в себя три объекта, объект_1 (E1), объект_2 (E2) и объект_3 (E3), причем каждый объект имеет соответствующую систему 208 управления транзакциями.

[0047] В проиллюстрированном примере, уровень 204 предоставления хостящихся услуг включает в себя интерфейсы 210 для каждой системы 208 управления транзакциями. В некоторых примерах, соответствующая система 208 управления транзакциями обменивается данными с соответствующим интерфейсом 210 по сети (например, по сети 110 по фиг. 1) с использованием протокола (например, протокола защищенной передачи гипертекста (HTTPS)). В некоторых примерах, каждый интерфейс 210 предоставляет соединение связи между соответствующей системой 208 управления транзакциями и уровнем 206 сети блокчейн. Более конкретно, интерфейс 210 обменивается данными с сетью 212 блокчейн уровня 206 сети блокчейн. В некоторых примерах, связь между интерфейсом 210 и уровнем 206 сети блокчейн проводится с использованием удаленных вызовов процедур (RPC). В некоторых примерах, интерфейсы 210 "хостят" узлы сети блокчейн для соответствующих систем 208 управления транзакциями. Например, интерфейсы 210 предоставляют интерфейс прикладного программирования (API) для доступа к сети 212 блокчейн.

[0048] Как описано в данном документе, сеть 212 блокчейн предоставляется в качестве сети с равноправными узлами, включающей в себя множество узлов 214, которые неизменно записывают информацию в цепочку 216 блоков. Хотя одна цепочка 216 блоков схематично проиллюстрирована, несколько копий цепочки 216 блоков предоставляются и поддерживаются в сети 212 блокчейн. Например, каждый узел 214 сохраняет копию цепочки блоков. В некоторых реализациях, цепочка 216 блоков сохраняет информацию, ассоциированную с транзакциями, которые выполняются между двумя или более объектов, участвующих в консорциальной сети блокчейн.

[0049] Фиг. 3 иллюстрирует примерный процесс 300 регулирования конфиденциальной блокчейн-транзакции (транзакции) в соответствии с реализациями настоящего раскрытия сущности. A 302 и B 304 представляют два клиентских узла двух пользователей (также называемых "клиентами", "объектами", "участниками" или "сторонами") транзакции, и S 306 представляет собой регуляторный (или контролирующий) узел в сети 350 блокчейн. Сеть 350 блокчейн может включать в себя несколько консенсусных узлов (обозначаемых в качестве блокчейн-узлов 308 на фиг. 3).

[0050] В некоторых реализациях, A 302 и B 304 представляют собой примеры вычислительных систем 106, 108, соответствующих первому и второму пользователю или объекту, как описано на фиг. 1 и 2. Каждый клиентский узел A 302 или B 304 имеет соответствующий счет (например, открытый счет или закрытый счет) для транзакций по сети 350 блокчейн.

[0051] В некоторых реализациях, клиентский узел A 302 может выполнять конфиденциальную транзакцию с клиентским узлом B 304 таким образом, что информация транзакций является просматриваемой или иначе известной только для клиентского узла A 302 и клиентского узла B 304, но не для других сторон (например, блокчейн-узлов 308) в сети 350 блокчейн.

[0052] В некоторых реализациях, некоторые или все транзакции, выполняемые в сети 350 блокчейн, могут подвергаться регулированию посредством регуляторного узла S 306. Например, регуляторный узел S 306 может определять то, соответствует или нет конкретная транзакция определенным правилам или инструкциям, посредством, например, мониторинга, проверки, аудита, контроля либо иного регулирования транзакции. В некоторых реализациях, информация транзакций конфиденциальной транзакции может задаваться доступной и просматриваемой посредством регуляторного узла S 306.

[0053] В некоторых реализациях, чтобы иметь доступ к информации транзакций конфиденциальной транзакции при поддержании конфиденциальности конфиденциальной транзакции, регуляторный узел S 306 может формировать пару ключей, из открытого ключа Spub 316 и закрытого ключа Spriv 326. Регуляторный узел S 306 может публиковать или выдавать открытый ключ Spub 316 в клиентские узлы (например, A 302 и B 304) в сети 350 блокчейн таким образом, что клиентский узел может использовать открытый ключ Spub 316 для того, чтобы шифровать информацию транзакций. Поскольку она шифруется, информация транзакций не является просматриваемой посредством других третьих сторон, но является доступной для регуляторного узла S 306, поскольку регуляторный узел S 306 может дешифровать зашифрованную информацию транзакции с использованием своего закрытого ключа Spriv 326.

[0054] Например, как показано на фиг. 3, перед транзакцией, клиентский узел A 302 имеет баланс a счета, и клиентский узел B 304 имеет баланс b счета. На 310, клиентский узел A 302 создает конфиденциальную транзакцию, чтобы переводить сумму t в клиентский узел B 304. В некоторых реализациях, клиентский узел A 302 может конструировать контент конфиденциальной транзакции локально и отправлять контент конфиденциальной транзакции в сеть 350 блокчейн (например, в один или более блокчейн-узлов 308 в сети 350 блокчейн).

[0055] Фиг. 4 иллюстрирует примерный контент 400 примерной конфиденциальной транзакции 450 в соответствии с реализациями настоящего раскрытия сущности. Как проиллюстрировано, примерная конфиденциальная транзакция 450 представляет собой перевод суммы t транзакции из клиентского узла A 302 в клиентский узел B 304, как описано относительно фиг. 3.

[0056] В некоторых реализациях, конфиденциальная транзакция 450 может конструироваться на основе схемы обязательств, чтобы скрывать данные транзакции (например, баланс счета перед транзакцией и сумму транзакции). Примерная схема обязательств включает в себя, без ограничения, обязательство Педерсена (PC). Например, клиентский узел A 302 формирует значение фиксации на основе суммы t транзакции и случайного числа r с использованием PC. Например, значение фиксации включает в себя зашифрованный текст, который может получаться согласно PC(t)=rG+tH, где G и H могут быть генераторами эллиптической кривой, PC(t) является скалярным умножением точек кривой, t является значением, которое фиксируется. Схема PC-фиксации имеет гомоморфизм, т.е. PC(t1)+PC(t2)=PC(t1+t2). Держатели зашифрованного текста PC(t) могут верифицировать сумму t транзакции посредством использования случайного числа r. Хотя реализации настоящего раскрытия сущности подробнее описываются в данном документе со ссылкой на PC, предполагается, что реализации настоящего раскрытия сущности могут быть реализованы с использованием любой соответствующей схемы обязательств.

[0057] В примерной конфиденциальной транзакции 450, клиентский узел A 302 может фиксировать баланс a счета перед транзакцией и сумму t перевода. В некоторых реализациях, клиентский узел A 302 может формировать значение PC(a) фиксации с использованием PC на основе баланса a счета перед транзакцией и соответствующего случайного числа ra. Аналогично, клиентский узел A 302 может формировать значение PC(t) фиксации с использованием PC на основе баланса a счета перед транзакцией и соответствующего случайного числа rt. В некоторых реализациях, клиентский узел A 302 также может фиксировать то, он имеет достаточно денежных средств таким образом, что баланс a-t после транзакции больше или равен 0. Например, клиентский узел A 302 может формировать значение PC(a-t) фиксации, например, на основе значений PC(a) и PC(t) фиксации с учетом гомоморфного свойства PC. Значения фиксации могут быть включены в контент 400 примерной конфиденциальной транзакции 450.

[0058] В некоторых реализациях, дополнительные или другие значения фиксации могут быть включены. Например, клиентский узел A 302 может фиксировать то, что он использует открытый ключ регулятора (например, открытый ключ Spub 316) для того, чтобы шифровать информацию транзакций. Например, клиентский узел A 302 может формировать значение PC(Spub) фиксации на основе Spub и информации транзакций.

[0059] Чтобы упрощать регулирование регулятора, клиентский узел A 302 также может шифровать информацию транзакций, такую как сумма a, t и соответствующее случайное число ra, rt каждого обязательства Педерсена, предусмотренного в транзакции, с использованием открытого ключа Spub регулятора. Например, клиентский узел A 302 также может шифровать информацию транзакций (например, ra, a, rt, t) с использованием Spub и получать зашифрованную регулирующую информацию, например, зашифрованный текст M, обозначаемый как encrypt (Spub, (ra|a|rt|t)). В качестве примера, зашифрованный текст M может представлять собой конкатенацию зашифрованного текста четырех элементов ra, a, rt, t или в другом формате. В некоторых реализациях, зашифрованная регулирующая информация может включать в себя дополнительную или другую информацию транзакций и может формироваться другим способом.

[0060] В некоторых реализациях, контент 400 примерной конфиденциальной транзакции 450 может включать в себя одно или более доказательств с нулевой передачей знаний, чтобы обеспечивать возможность приемной стороне подтверждать то, что информация, которую отправляет отправляющая сторона, является достоверной. Доказательства с нулевой передачей знаний позволяют приемной стороне осуществлять означенное без фактического знания подтверждаемой информации. Доказательства с нулевой передачей знаний могут включать в себя доказательство по диапазону, к примеру, доказательство (a-t>0), доказательство (t>0) и доказательство (a>0) или другие типы доказательств. Доказательства с нулевой передачей знаний обеспечивают возможность приемной стороне (например, клиентскому узлу B) подтверждать то, что отправляющая сторона (например, клиентский узел A) имеет достаточно денежных средств для перевода (т.е. a-t>0), и то, что сумма перевода больше нуля, без знания либо баланса a, с которого переводится сумма, либо даже суммы t перевода.

[0061] В некоторых реализациях, контент 400 примерной конфиденциальной транзакции 450 может включать в себя другую связанную с транзакцией информацию, такую как цифровая подпись A по транзакции.

[0062] Снова ссылаясь на фиг. 3, после формирования контента транзакции (например, контента 400 примерной конфиденциальной транзакции), клиентский узел A 302 может отправлять контент конфиденциальной транзакции в сеть 350 блокчейн (например, в один или более блокчейн-узлов 308 в сети 350 блокчейн). На 320, сеть 350 блокчейн может выполнять конфиденциальную транзакцию. В некоторых реализациях, конфиденциальная транзакция может выполняться посредством каждого блокчейн-узла 308 в сети 350 блокчейн. Например, каждый блокчейн-узел 308 может определять то, является или нет контент конфиденциальной транзакции легитимным, например, посредством верификации одного или более значений фиксации и доказательств с нулевой передачей знаний, включенных в контент конфиденциальной транзакции. Например, каждый блокчейн-узел 308 может верифицировать значения фиксации посредством верификации PC(a)=PC(t)+PC(a-t), т.е. входные стоимости транзакции равны выходным стоимостям транзакции. Каждый блокчейн-узел 308 может верифицировать доказательства с нулевой передачей знаний, например, на основе пуленепробиваемых доказательств, алгоритмов Monero RingCT или любых других подходящих алгоритмов.

[0063] После того, как значения фиксации и доказательства с нулевой передачей знаний верифицированы, каждый из блокчейн-узлов 308 может записывать транзакцию и обновлять счета клиентского узла A 302 и клиентского узла B 304. Например, после транзакции, клиентский узел A 302 имеет баланс a-t счета, и клиентский узел B 304 имеет баланс b+t счета. В некоторых реализациях, баланс после транзакции клиентского узла A 302 и клиентского узла B 304 может отражаться посредством прямых операций значения фиксации вследствие гомоморфизма схемы обязательств. Например, клиентский узел A 302 теперь может иметь значение фиксации баланса счета после транзакции PC(a-t)=PC(a)-PC(t). Клиентский узел B 304 теперь может иметь значение фиксации баланса счета после транзакции PC(b+t)=PC(b)+PC(t).

[0064] На 330, чтобы регулировать конфиденциальную транзакцию, регуляторный узел S 306 получает контент конфиденциальной транзакции из сети 350 блокчейн и определяет то, удовлетворяет либо нет информация транзакций регулирующим критериям или требованиям. Например, регуляторный узел 306 может получать контент конфиденциальной транзакции, который содержит зашифрованную регулирующую информацию (например, зашифрованный текст M=encrypt (Spub, (ra|a|rt|t)), как показано на фиг. 4). Регуляторный узел S 306 использует свой закрытый ключ Spriv 326 для того, чтобы дешифровать зашифрованную регулирующую информацию, и получает информацию транзакций в виде простого текста (например, ra, a, rt, t), соответствующую PC в транзакции. Регуляторный узел S 306 может определять то, удовлетворяет либо нет информация транзакций регулирующим критериям или требованиям, верифицировать достоверность значений фиксации на основе информации транзакций в виде простого текста. Например, регуляторный узел S 306 может выполнять традиционное регулирование, такое как определение того, ниже или нет сумма транзакции максимальной разрешенной суммы транзакции.

[0065] В некоторых реализациях, регуляторный узел S 306 может подписываться на часть или все транзакции, выполняемые в сети 350 блокчейн таким образом, что данные транзакции транзакций могут проталкиваться в регуляторный узел S 306 автоматически. В некоторых реализациях, регуляторный узел S 306 может осуществлять выборку, извлекать или получать данные транзакции для части или всей транзакции из сети 350 блокчейн (например, из одного или более блокчейн-узлов 308 в сети 350 блокчейн).

[0066] Фиг. 5 иллюстрирует примерный процесс 500, который может выполняться в соответствии с реализациями настоящего раскрытия сущности. В некоторых реализациях, примерный процесс 500 может выполняться с использованием одной или более машиноисполняемых программ, выполняемых с использованием одного или более вычислительных устройств. Для ясности представления, нижеприведенное описание, в общем, описывает способ 500 в контексте других чертежей в этом описании. Например, регуляторный узел 510 может представлять собой регуляторный узел S 306, блокчейн-узел 520 может представлять собой блокчейн-узел 308, клиентский узел A 530 может представлять собой клиентский узел A 302, и клиентский узел B 540 может представлять собой клиентский узел B 304, как описано относительно фиг. 3. Тем не менее, следует понимать, что способ 500 может осуществляться, например, посредством любой подходящей системы, окружения, программного обеспечения и аппаратных средств либо комбинации систем, окружений, программного обеспечения и аппаратных средств, надлежащим образом. В некоторых реализациях, различные этапы способа 500 могут выполняться параллельно, в комбинации, циклически или в любом порядке.

[0067] На 512, регуляторный узел 510 сети блокчейн формирует пару открытого ключа и закрытого ключа. Пара открытого ключа и закрытого ключа может использоваться для шифрования и дешифрования информации транзакций для регулирования.

[0068] На 514, регуляторный узел 510 публикует открытый ключ во множестве клиентских узлов (например, в клиентском узле A 530 и клиентском узле B 540) сети блокчейн. Например, регуляторный узел 510 может выдавать открытый ключ во все клиентские узлы в сети блокчейн (например, в консорциальной сети блокчейн), которые подвергаются регулированию регуляторного узла.

[0069] На 532, клиентский узел A 530, клиентский узел сети блокчейн, получает открытый ключ регуляторного узла 510. Клиентский узел A 530 может использовать открытый ключ регуляторного узла 510 для того, чтобы шифровать данные транзакции, подвергающиеся регулированию, за счет этого обеспечивая возможность регуляторному узлу 510 дешифровать данные транзакции с использованием закрытого ключа, соответствующего открытому ключу.

[0070] Клиентский узел A 530 может подготавливаться к конфиденциальной транзакции 535, такой как перевод суммы денежных средств со счета клиентского узла A 530 на счет клиентского узла B 540, другого клиентского узла сети блокчейн. Клиентский узел A 530 может конструировать контент конфиденциальной транзакции, чтобы защищать конфиденциальность данных транзакции и скрывать данные транзакции от проверки посредством других объектов, отличных от участников транзакции (т.е. клиентского узла A 530 и клиентского узла B 540 в этом примере) и регуляторного узла 510. В некоторых реализациях, клиентский узел A 530 может скрывать данные транзакции для конфиденциальной транзакции на основе схемы обязательств.

[0071] В некоторых реализациях, данные транзакции для конфиденциальной транзакции включают в себя одно или оба из баланса счета клиентского узла A 530 перед конфиденциальной транзакцией либо суммы транзакции для конфиденциальной транзакции. В некоторых реализациях, данные транзакции для конфиденциальной транзакции могут включать в себя дополнительную информацию транзакций (например, время транзакции, стороны транзакции, тип активов (например, фондовая ценная бумага или другой тип)).

[0072] На 534, клиентский узел A 530 формирует одно или более значений фиксации конфиденциальной транзакции клиентского узла A 530 посредством применения криптографической схемы обязательств к данным транзакции для конфиденциальной транзакции. В некоторых реализациях, криптографическая схема обязательств включает в себя гомоморфную криптографическую схему обязательств, к примеру, схему обязательств Педерсена или другой тип схемы обязательств.

[0073] На 536, клиентский узел A 530 формирует зашифрованную регулирующую информацию конфиденциальной транзакции посредством шифрования данных транзакции с использованием открытого ключа регуляторного узла 510, при этом зашифрованная регулирующая информация выполнена с возможностью обеспечивать возможность дешифрования посредством регуляторного узла 510 с использованием закрытого ключа, соответствующего открытому ключу.

[0074] В некоторых реализациях, криптографическая схема обязательств включает в себя схему обязательств Педерсена. В этом случае, формирование одного или более значений фиксации конфиденциальной транзакции клиентского узла A 530 посредством применения криптографической схемы обязательств к данным транзакции включает в себя формирование одного или более значений фиксации конфиденциальной транзакции клиентского узла A 530 на основе данных транзакции и случайных чисел, соответствующих данным транзакции; и формирование зашифрованной регулирующей информации конфиденциальной транзакции включает в себя формирование зашифрованной регулирующей информации конфиденциальной транзакции посредством шифрования данных транзакции и случайных чисел, соответствующих данным транзакции, с использованием открытого ключа регуляторного узла.

[0075] На 538, клиентский узел A 530 отправляет контент конфиденциальной транзакции в сеть блокчейн для выполнения, например, посредством передачи контента конфиденциальной транзакции в блокчейн-узел 520 (например, консенсусный узел сети блокчейн). В некоторых реализациях, контент конфиденциальной транзакции может включать в себя: одно или более значений фиксации конфиденциальной транзакции, сформированной посредством клиентского узла A 530 посредством применения криптографической схемы обязательств к данным транзакции для конфиденциальной транзакции; зашифрованную регулирующую информацию, сформированную посредством клиентского узла A 530 посредством шифрования данных транзакции с использованием открытого ключа регуляторного узла S 510; и одно или более доказательств с нулевой передачей знаний данных транзакции.

[0076] В некоторых реализациях, одно или более доказательств с нулевой передачей знаний данных транзакции включают в себя одно или более доказательств по диапазону с нулевой передачей знаний касательно того, что значения данных транзакции находятся в пределах соответствующих диапазонов. Например, одно или более доказательств по диапазону с нулевой передачей знаний могут включать в себя доказательство по диапазону с нулевой передачей знаний касательно того, что баланс счета клиентского узла A 530 перед конфиденциальной транзакцией превышает нуль, доказательство по диапазону с нулевой передачей знаний касательно того, что сумма транзакции для конфиденциальной транзакции превышает нуль, и доказательство по диапазону с нулевой передачей знаний касательно того, что сумма транзакции меньше или равна балансу счета клиентского узла A 530 перед конфиденциальной транзакцией.

[0077] В некоторых реализациях, одно или более доказательств с нулевой передачей знаний данных транзакции включают в себя доказательство с нулевой передачей знаний касательно того, что клиентский узел A 530 использует открытый ключ регуляторного узла 510 при формировании зашифрованной регулирующей информации конфиденциальной транзакции.

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

[0079] На 522, после приема контента конфиденциальной транзакции, блокчейн-узел 520 может выполнять конфиденциальную транзакцию, например, посредством верификации того, что конфиденциальная транзакция является достоверной, на основе контента конфиденциальной транзакции. В некоторых реализациях, верификация того, что конфиденциальная транзакция является достоверной, на основе контента конфиденциальной транзакции может включать в себя одно или более из следующего: определение того, что одно или более значений фиксации являются корректными, на основе схемы обязательств и/или одного или более доказательств с нулевой передачей знаний; или верификацию одного или более доказательств с нулевой передачей знаний данных транзакции, например, согласно алгоритмам, как описано относительно фиг. 3.

[0080] На 524, после верификации конфиденциальной транзакции является достоверным, блокчейн-узел 520, например, может записывать транзакцию (например, посредством сохранения контента конфиденциальной блокчейн-транзакции в сети блокчейн) и обновлять информацию счета, осуществляемую посредством конфиденциальной транзакции (например, баланс счета клиентского узла A 530 и клиентского узла B 540), например, согласно технологиям, описанным относительно фиг. 3, или другим технологиям.

[0081] На 516, регуляторный узел 510 получает из блокчейн-узла 520 (например, консенсусного узла сети блокчейн) контент конфиденциальной транзакции клиентского узла A 530. Контент конфиденциальной транзакции может включать в себя примерный контент 400 примерной конфиденциальной транзакции 450, как описано относительно фиг. 4.

[0082] На 518, регуляторный узел 510 получает данные транзакции посредством дешифрования зашифрованной регулирующей информации с использованием закрытого ключа регуляторного узла.

[0083] На 519, регуляторный узел 510 верифицирует то, что конфиденциальная транзакция является легитимной, на основе контента конфиденциальной транзакции и данных транзакции. В некоторых реализациях, верификация того, что конфиденциальная транзакция является достоверной, на основе контента конфиденциальной транзакции и дешифрованных данных транзакции включает в себя одно или более из следующего: определение того, что одно или более значений фиксации являются корректными, на основе схемы обязательств и/или одного или более доказательств с нулевой передачей знаний; верификацию одного или более доказательств с нулевой передачей знаний данных транзакции; или определение того, что значения данных транзакции соблюдают нормы регулирования.

[0084] В некоторых реализациях, верификация того, что одно или более доказательств с нулевой передачей знаний данных транзакции включают в себя одно или более из следующего: определение того, что баланс счета клиентского узла A 530 перед конфиденциальной транзакцией превышает нуль; определение того, что сумма транзакции для конфиденциальной транзакции превышает нуль; или определение того, что сумма транзакции для конфиденциальной транзакции меньше или равна балансу счета клиентского узла A 530 перед конфиденциальной транзакцией.

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

[0086] Подходящие процессоры для выполнения программы инструкций включают в себя, в качестве примера, микропроцессоры общего и специального назначения и единственный процессор либо один из нескольких процессоров любого вида компьютера. В общем, процессор принимает инструкции и данные из постоянного запоминающего устройства или оперативного запоминающего устройства, или из того и из другого. Элементы компьютера могут включать в себя процессор для выполнения инструкций и одно или более запоминающих устройств для сохранения инструкций и данных. Обычно, компьютер также может включать в себя или функционально соединяться с возможностью обмениваться данными с одним или более запоминающих устройств большой емкости для сохранения файлов данных; такие устройства включают в себя магнитные диски, такие как внутренние жесткие диски и съемные диски; магнитооптические диски; и оптические диски. Запоминающие устройства, подходящие для материального осуществления компьютерных программных инструкций и данных, включают в себя все формы некратковременного запоминающего устройства, включающие в себя в качестве примера полупроводниковые запоминающие устройства, таки как EPROM, EEPROM и устройства флэш-памяти; магнитные диски, такие как внутренние жесткие диски и съемные диски; магнитооптические диски; и CD-ROM- и DVD-ROM-диски. Процессор и запоминающее устройство могут дополняться посредством или включаться в специализированные интегральные схемы (ASIC).

[0087] Чтобы предоставлять взаимодействие с пользователем, признаки могут реализовываться на компьютере, имеющем устройство отображения, такое как монитор на электронно-лучевой трубке (CRT) или жидкокристаллический дисплей (ЖК-дисплей) для отображения информации пользователю, и клавиатуру и указательное устройство, такое как мышь или шаровой манипулятор, посредством которого пользователь может предоставлять ввод в компьютер.

[0088] Признаки могут реализовываться в компьютерной системе, которая включает в себя внутренний интерфейсный компонент, такой как сервер данных, либо которая включает в себя промежуточный программный компонент, такой как сервер приложений или Интернет-сервер, либо которая включает в себя внешний интерфейсный компонент, такой как клиентский компьютер, имеющий графический пользовательский интерфейс или Интернет-браузер, либо любую их комбинацию. Компоненты системы могут соединяться посредством любой формы или среды цифровой передачи данных, такой как сеть связи. Примеры сетей связи включают в себя, например, локальную вычислительную сеть (LAN), глобальную вычислительную сеть (WAN) и компьютеры и сети, формирующие Интернет.

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

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

[0091] Выше описывается определенное число реализаций настоящего раскрытия сущности. Тем не менее, следует понимать, что различные модификации могут вноситься без отступления от сущности и объема настоящего раскрытия сущности. Соответственно, эти и другие реализации находятся в пределах объема прилагаемой формулы изобретения.

Похожие патенты RU2720354C1

название год авторы номер документа
ВОССТАНОВЛЕНИЕ ЗАШИФРОВАННОЙ ИНФОРМАЦИИ ТРАНЗАКЦИЙ В КОНФИДЕНЦИАЛЬНЫХ ТРАНЗАКЦИЯХ С ЦЕПОЧКАМИ БЛОКОВ 2018
  • Лю, Чжэн
  • Ли, Личунь
  • Инь, Шань
RU2726157C1
ПЕРЕКРЕСТНАЯ ТОРГОВЛЯ АКТИВАМИ В СЕТЯХ БЛОКЧЕЙНОВ 2019
  • Чжан, Вэньбинь
  • Лэй, Хао
  • Ли, Личунь
  • Хуан, Чжанцзе
RU2736447C1
ЗАЩИТА ДАННЫХ ЦЕПОЧЕК БЛОКОВ С ИСПОЛЬЗОВАНИЕМ ГОМОМОРФНОГО ШИФРОВАНИЯ 2018
  • Ма, Баоли
  • Чжан, Вэньбинь
RU2727161C1
ЗАЩИТА ДАННЫХ ЦЕПОЧЕК БЛОКОВ НА ОСНОВЕ МОДЕЛИ БАНКНОТ НА СЧЕТАХ С ДОКАЗАТЕЛЬСТВОМ С НУЛЕВЫМ РАЗГЛАШЕНИЕМ 2018
  • Ма, Баоли
  • Чжан, Вэньбинь
  • Ма, Хуаньюй
  • Лю, Чжэн
  • Ли, Личунь
RU2729595C1
ЗАЩИТА ДАННЫХ ЦЕПОЧЕК БЛОКОВ НА ОСНОВЕ ОБЩЕЙ МОДЕЛИ НА ОСНОВЕ СЧЕТОВ И ГОМОМОРФНОГО ШИФРОВАНИЯ 2018
  • Чжан, Вэньбинь
  • Ма, Баоли
  • Ма, Хуаньюй
RU2719451C1
ЗАЩИТА ДАННЫХ ЦЕПОЧЕК БЛОКОВ С ИСПОЛЬЗОВАНИЕМ ГОМОМОРФНОГО ШИФРОВАНИЯ 2018
  • Чжан, Вэньбинь
  • Ма, Баоли
RU2708344C1
СИСТЕМА И СПОСОБ ДЛЯ ЗАЩИТЫ ИНФОРМАЦИИ 2018
  • Ма, Хуаньюй
  • Чжан, Вэньбинь
  • Ма, Баоли
  • Лю, Чжэн
  • Цуй, Цзяхой
RU2735439C2
СИСТЕМА И СПОСОБ ЗАЩИТЫ ИНФОРМАЦИИ 2018
  • Ма, Баоли
  • Чжан, Вэньбинь
  • Ма, Хуаньюй
  • Лю, Чжэн
  • Цуй, Цзяхой
RU2719423C1
ЗАЩИТА ДАННЫХ ЦЕПОЧЕК БЛОКОВ НА ОСНОВЕ ОБЩЕЙ МОДЕЛИ НА ОСНОВЕ СЧЕТОВ И ГОМОМОРФНОГО ШИФРОВАНИЯ 2018
  • Чжан, Вэньбинь
  • Ма, Баоли
  • Ма, Хуаньюй
RU2733223C1
СИСТЕМА И СПОСОБ ДЛЯ ЗАЩИТЫ ИНФОРМАЦИИ 2018
  • Ма, Баоли
  • Чжан, Вэньбинь
RU2721959C1

Иллюстрации к изобретению RU 2 720 354 C1

Реферат патента 2020 года РЕГУЛИРОВАНИЕ КОНФИДЕНЦИАЛЬНЫХ БЛОКЧЕЙН-ТРАНЗАКЦИЙ

Изобретение относится к области распределенных реестров. Техническим результатом является обеспечение регулирования конфиденциальных блокчейн-транзакций. Способ включает в себя получение, посредством клиентского узла сети блокчейн, открытого ключа регуляторного узла; формирование, посредством клиентского узла, одного или более значений фиксации конфиденциальной транзакции клиентского узла посредством применения криптографической схемы обязательств к данным транзакции для конфиденциальной транзакции; формирование, посредством клиентского узла, зашифрованной регулирующей информации конфиденциальной транзакции посредством шифрования данных транзакции с использованием открытого ключа регуляторного узла; и передачу, посредством клиентского узла в консенсусный узел сети блокчейн, контента конфиденциальной транзакции для выполнения, при этом контент конфиденциальной транзакции включает в себя: одно или более значений фиксации; зашифрованную регулирующую информацию; и одно или более доказательств с нулевой передачей знаний данных транзакции. 4 н. и 16 з.п. ф-лы, 5 ил.

Формула изобретения RU 2 720 354 C1

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

- получают, посредством клиентского узла сети блокчейн, открытый ключ регуляторного узла;

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

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

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

- одно или более значений фиксации;

- зашифрованную регулирующую информацию; и

- одно или более доказательств с нулевой передачей знаний данных транзакции.

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

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

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

5. Способ по п. 1, в котором криптографическая схема обязательств содержит схему обязательств Педерсена;

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

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

6. Способ по п. 1, в котором контент конфиденциальной транзакции дополнительно содержит цифровую подпись клиентского узла.

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

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

- публикуют, посредством регуляторного узла, открытый ключ во множестве клиентских узлов сети блокчейн;

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

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

- одно или более доказательств с нулевой передачей знаний данных транзакции; и

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

- получают данные транзакции посредством дешифрования зашифрованной регулирующей информации с использованием закрытого ключа регуляторного узла; и

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

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

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

10. Способ по п. 7, в котором верификация того, что конфиденциальная транзакция является достоверной, на основе контента конфиденциальной транзакции и дешифрованных данных транзакции содержит один или более из этапов, на которых:

- определяют то, что одно или более значений фиксации являются корректными, на основе схемы обязательств;

- верифицируют одно или более доказательств с нулевой передачей знаний данных транзакции; или

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

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

- определяют, что баланс счета клиентского узла перед конфиденциальной транзакцией превышает нуль;

- определяют, что сумма транзакции для конфиденциальной транзакции превышает нуль; и

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

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

- получение, посредством клиентского узла сети блокчейн, открытого ключа регуляторного узла;

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

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

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

- одно или более значений фиксации;

- зашифрованную регулирующую информацию; и

- одно или более доказательств с нулевой передачей знаний данных транзакции.

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

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

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

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

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

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

17. Некратковременный компьютерно-считываемый запоминающий носитель по п. 12, в котором контент конфиденциальной транзакции дополнительно содержит цифровую подпись клиентского узла.

18. Система регулирования конфиденциальных блокчейн-транзакций, содержащая:

- одно или более вычислительных устройств; и

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

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

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

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

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

- одно или более значений фиксации;

- зашифрованную регулирующую информацию; и

- одно или более доказательств с нулевой передачей знаний данных транзакции.

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

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

Документы, цитированные в отчете о поиске Патент 2020 года RU2720354C1

CN 108764874 A, 06.11.2018
CN 107566337 A, 09.01.2018
CN 107833135 A, 23.03.2018
CN 106982205 A, 25.07.2017
CN 108418783 A, 17.08.2018
US 20180121909 A1, 03.05.2018
ЗАЩИЩЕННАЯ ОБРАБОТКА УДАЛЕННЫХ ПЛАТЕЖНЫХ ТРАНЗАКЦИЙ, ВКЛЮЧАЮЩАЯ В СЕБЯ АУТЕНТИФИКАЦИЮ ПОТРЕБИТЕЛЕЙ 2014
  • Махотин Олег
  • Пирзадех Киушан
RU2663476C2

RU 2 720 354 C1

Авторы

Лю, Чжэн

Ли, Личунь

Ван, Хуачжун

Даты

2020-04-29Публикация

2018-11-07Подача