LocalMonero will be winding down

The winding down process begins May 7th, 2024, and finishes after November 7th, 2024. Our support staff will be available for help throughout this period.
  1. Effective immediately, all new signups and ad postings are disabled;
  2. On May 14th, 2024, new trades will be disabled as well;
  3. After November 7th, 2024, the website will be taken down. Please reclaim any funds from your arbitration bond wallet prior to that date, otherwise the funds may be considered abandoned/forfeited.

Серафис: Как это повлияет на Monero

Опубликовано:
By CypherStack

Seraphis: обновление модульной конструкции для транзакций Monero

В этой статье описывается Seraphis, набор структур и абстракций протоколов транзакций, разработанных псевдонимным участником исследований koe для экосистемы Monero, и с постоянным анализом безопасности, проводимым псевдонимным контрибьютором coinstudent2048.
Мы делаем некоторые упрощения и опускаем некоторые технические детали для ясности; по этой причине, а также потому, что разработка Seraphis все еще продолжается, заинтересованным читателям следует обратиться к документации Seraphis для получения самой свежей информации.


Транзакции в Monero

Протоколы как Bitcoin, Monero и другие, основаны на так называемой "модели вывода" где вывод - это представление стоимости, которая может быть передана.
Транзакции потребляют один или несколько выходов, контролируемых отправителем, и генерируют новые выходы, направленные к получателям (или обратно к отправителю в качестве сдачи); транзакция должна быть сбалансирована в том смысле, что потребленные выходы должны содержать общую стоимость, точно равную стоимости новых выходов (плюс налагаемая сетью комиссия).
Во многих протоколах, таких как Bitcoin, стоимость, содержащаяся в выводе, записывается в открытом виде, как и получатель.
Более того, посмотрев на блокчейн, можно легко определить, был ли выход потрачен и когда (то есть, был ли он потреблен в последующей транзакции, и какая транзакция его потратила).

В отличие, протоколы, подобные Monero, имеют другую конструкцию:

  • Значения выводов скрыты и не видны на блокчейне
  • Адреса получателей скрыты благодаря использованию протокола одноразовой адресации
  • Использование неоднозначных подписей не позволяет понять, были ли потрачены средства или нет

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

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

  • Обязательства скрывают суммы математически полезным способом
  • Доказательства диапазонов предотвращают переполнение, которое может привести к раздуванию предложения
  • Связные кольцевые подписи обеспечивают неоднозначность подписывающего лица и предотвращают попытки двойной траты
  • Зачет обязательств утверждает, что операции сбалансированы

Эти строительные блоки тщательно переплетаются между собой для построения протокола RingCT.

Полезным свойством протокола RingCT является то, что некоторые строительные блоки могут быть изменены или модернизированы таким образом, что общая конструкция и свойства остаются неизменными, но могут обеспечить повышение эффективности или безопасности. На самом деле, подобные обновления происходили (или планировались произойти) несколько раз в истории Monero. Доказательства диапазона в оригинальном протоколе RingCT были громоздкими и медленными; позже они были обновлены до конструкции под названием Bulletproofs которая сделала транзакции меньше и быстрее с лучшим анализом безопасности, и планируется обновление до более новой конструкции под названием Bulletproofs+ для еще большего повышения эффективности.

Аналогичный процесс был проделан со строительным блоком связного сигнатурного кольца. В оригинальном протоколе была использована конструкция под названием MLSAG. Позже эта конструкция была обновлена до более новой под названием CLSAG которая быстрее, приводит к меньшим транзакциям и имеет лучший анализ безопасности. Была предложена еще более новая конструкция связной кольцевой подписи, основанная на Triptych , но она не была выбрана для применения из-за ее влияния на операции с множественными подписями.


Seraphis

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


Строительные блоки

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

  • Обязательства по-прежнему скрывают суммы
  • Доказательства диапазона по-прежнему предотвращают переполнение и инфляцию предложения
  • Доказательства принадлежности обеспечивают неоднозначность подписывающего лица
  • Зачет обязательств все еще утверждает баланс
  • Авторизующие доказательства предотвращают попытки двойного расходования

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

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

К счастью, некоторые строительные блоки, необходимые для Seraphis, уже существуют в других местах, и их не нужно разрабатывать с нуля. Как конструкции Bulletproofs, так и Bulletproofs+ могут быть использованы в качестве доказательств диапазона. Модификации систем доказательства типа Schnorr могут быть использованы для авторизации доказательств. И эффективная система доказательств уже использованная в качестве основы для Triptych, Lelantus, и Spark* может быть модифицирована для доказательств принадлежности.

* Cypher Stack получает финансирование на разработку Spark.


Адресация

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

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

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

Недостатком view key Monero является то, что они не обеспечивают полный или тонкий доступ к представлению. Невозможно надежно определить, когда кошелек тратит средства, что затрудняет правильный расчет баланса кошелька, когда spend key недоступен. Также в настоящее время невозможно обнаружить входящие выводы, не узнав при этом стоимость, содержащуюся в этих выводах (это означает, что любые третьи стороны, ответственные за обнаружение входящих выводов, узнают, сколько именно Monero вы приобретаете).

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

  • Следить за входящими выводами, но скрывать их значения
  • Следить за входящими выходами, но показывать их значения
  • Следить за исходящими выводами
  • Помочь вам генерировать транзакции, но не подписывать их
  • Генерировать новые адреса (полезно для розничных торговцев или бирж с большим количеством клиентов))

Как владелец адреса, вы можете решать, какой объем полномочий вы делегируете другим устройствам или третьим лицам.


Общая картина

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


Читайте также