Исследовательская Лаборатория Monero (MRL)

Целью проекта Monero является не только создание взаимозаменяемой валюты, но и проведение непрерывных исследований в области финансовой анонимности в той мере, в которой она касается криптовалют. Мы предлагаем вам ознакомиться с работой Исследовательской лаборатории Monero (Monero Research Lab) и собираемся публиковать подобные статьи в дальнейшем. Чтобы связаться с Исследовательской Лабораторией Monero, пожалуйста, напишите на электронную почту [email protected].

Опубликованные статьи

ПРИМЕЧАНИЕ: этот документ был отозван, но его можно просмотреть, нажав на «Все версии этого отчета».

Аннотация: Конфиденциальные транзакции используются распределёнными цифровыми активами, чтобы продемонстрировать баланс, скрытый под обязательством, при сохранении неопределённости подписанта. В предшествующей работе было описано доказательство знания открытия обязательства по нулевой сумме с соблюдением неопределённости подписанта с одинаковым индексом для всего множества публичных обязательств, а также оценка верифицируемой случайной функции, используемой в качестве связующего тега, и как всё это используется для построения связываемой кольцевой подписи под названием Triptych, которая может служить в качестве составляющего элемента модели конфиденциальной транзакции. В этой работе мы расширяем Triptych с целью построения Triptych-2, системы доказательства знания открытий множества обязательств по нулевой сумме в пределах отдельного набора, правильности структуры верифицируемой случайной функции, которая оценивается для каждого открытия, и баланса по отдельному списку обязательств в пределах отдельного доказательства. Несмотря на то, что устойчивость решения опирается на допуск сложности решения нового двойственного дискретного логарифма, мы используем данные блокчейна Monero, чтобы продемонстрировать, что Triptych-2 может использоваться в рамках модели конфиденциальных транзакций и сократить время групповой верификации, которое будет меньшим, чем в случае с другими современными конструкциями, не требующими доверенных настроек.

Аннотация: Кольцевые подписи являются широко используемой структурой, применяемой для сокрытия действительного подписанта в неинтерактивной группе публичных ключей, определяемой в момент подписания. В отличие от предшествующих подходов, подразумевавших линейность размера подписи относительно размера анонимной группы подписантов, существующие оптимальные решения требуют либо централизованных доверенных настроек, либо создания логарифмически масштабируемых подписей. Тем не менее некоторые также обеспечивают связываемость, свойство, используемое для определения того, подписывал ли подписант какое-либо сообщение ранее, возможно, с ограничением по выбору размера анонимной группы. Нами предлагается Triptych, семейство связываемых кольцевых подписей, не требующих доверенных настроек, в основе которого лежат обобщённые доказательства знания открытий доказательств по нулевой сумме с нулевым разглашением. Нами демонстрируются варианты применения Triptych в рамках протоколов транзакций с сокрытием подписанта путём расширения конструкции открытий параллельных обязательств в рамках независимых анонимных групп. Подписи являются логарифмическими с точки зрения размера анонимной группы и, несмотря на то, что сложность верификации возрастает линейно, есть возможность групповой верификации наборов доказательств. Мы демонстрируем, что с точки зрения практичности размера анонимных групп, используемых распределёнными протоколами, Triptych обеспечивает конкурентные показатели даже при простом варианте реализации.

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

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

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

Аннотация: В данном бюллетене описана модификация схемы связываемых кольцевых подписей Monero, позволяющей включать в кольцо выходы с двойными ключами. Образы ключей привязаны к обоим одноразовым публичным ключам попарно, что не позволяет потратить оба ключа, используемые в транзакции, по отдельности. Этот метод применим к неинтерактивным транзакциям возмещения. Нами рассматривается, как использование этой схемы влияет на безопасность.

Аннотация: В данной технической записке содержится общее описание концепции потраченных выходов на основе теории базовых множеств. Определение охватывает результаты ранее проделанной работы, связанной с идентификацией таких выходов. Нами количественно определяется влияние такого анализа на блокчейн Monero и приводится краткий обзор способов избежать последствий.

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

Аннотация: В этой статье предлагается метод сокрытия сумм транзакций предельно децентрализованной анонимной криптовалюты Monero. Подобно Bitcoin, Monero является криптовалютой, распределяемой при помощи процесса «майнинга» с доказательством работы (proof of work). Оригинальный протокол Monero был основан на протоколе CryptoNote, использующем кольцевые подписи и одноразовые ключи для сокрытия адреса назначения и происхождения транзакции. Недавно технология использования схемы обязательств для сокрытия суммы транзакции была рассмотрена и реализована ведущим разработчиком Bitcoin Грегори Максвеллом (Gregory Maxwell). В этой статье описан новый тип кольцевой подписи - подпись многоуровневой, связываемой, спонтанной анонимной группы (Multi-layered Linkable Spontaneous Anonymous Group). Такая подпись позволяет скрыть сумму, исходный адрес и адрес назначения транзакций с разумной эффективностью и возможностью верификации генерации монеты, не требующей доверия. Предлагается реализация некоторых расширений протокола, например, совокупных доказательств диапазона Шнорра (Aggregate Schnorr Range Proofs) и кольцевых мультиподписей (Ring Multisignature). Автор хотел бы отметить, что ранние варианты этих решений уже публиковались на исследовательских IRC каналах Monero Community и Bitcoin. Хешированные варианты блокчейна приводятся в работе [14], и можно увидеть, что работа началась ещё летом 2015, а завершилась в начале октября 2015. Версия ePrint также доступна на сайте http://eprint.iacr.org/2015/1098.

Аннотация: Нами было выявлено несколько путей атаки, позволяющих проводить анализ блокчейна и способствующих снижению уровня неотслеживаемости протокола CryptoNote 2.0. Мы проанализировали возможные решения, обсудили соответствующие достоинства и недостатки этих решений и представляем свои рекомендации по улучшению протокола Monero, которые, как мы надеемся, обеспечат долгосрочную защиту блокчейна криптовалюты от анализа. Рекомендуемые нами улучшения предполагают применение политики минимального смешивания по всей сети на уровне протокола, то есть использование n = 2 посторонних выходов на подпись. Спустя два года на уровне протокола это значение вырастет до n = 4, а на уровне кошелька в это время значение n = 4 будет использоваться по умолчанию. Мы также рекомендуем при отправке выходов Monero использовать метод, подобный торренту. Нами также обсуждался метод выбора миксинов на основе их отличия и «возраста». Этот метод позволит избежать других форм анализа блокчейна, о которых говорится в работе. Однако по ряду причин мы не даём каких-либо формальных рекомендаций по реализации. Относительно подробно нами были рассмотрены и результаты таких улучшений. Этот исследовательский бюллетень не проходил независимой технической экспертизы и отражает исключительно результаты внутренних исследований.

Аннотация: Недавно по сети Интернет расползлись страх и сомнения в отношении исходного кода и протокола CryptoNote. Причиной послужил тот факт, что данный протокол сложнее, чем, скажем, протокол, лежащий в основе Bitcoin. Этот бюллетень должен был развеять некоторые заблуждения, а также снять некую завесу тайны, покрывающую кольцевые подписи Monero. Начну со сравнения математической основы кольцевых подписей CryptoNote (как она описана в [CN]) с математическими вычислениями, приводимыми в [FS], на которых основан сам протокол CryptoNote. После этого я сравню математическую основу кольцевой подписи с той, что фактически лежит в основе кодовой базы CryptoNote.

Аннотация: 4 сентября 2014 года против сети Monero была проведена необычная атака совершенно нового типа. В результате этой атаки сеть была разбита на две чёткие подсистемы, каждая из которых отказывалась признавать законность другой. Это повлекло за собой мириады последствий, не все из которых известны и по сей день. У злоумышленника было небольшое окно времени, которого бы хватило, например, на создание подделки. В этом исследовательском бюллетене описаны недостатки кода CryptoNote, которые делают возможным проведение такой атаки, а также решение, изначально предложенное Рафалем Фримэном (Rafal Freeman).

Аннотация: В этом исследовательском бюллетене описаны вероятные способы атаки на систему анонимности, основанную на использовании кольцевых подписей. В качестве примера нами рассматривается протокол CryptoNote 2.0, используемый криптовалютой и якобы опубликованный Николасом ван Саберхагеном (Nicolas van Saberhagen) в 2012 году. Ранее уже было продемонстрировано, что неотслеживаемость, позволяющая скрыть пару одноразовых ключей, может зависеть от неотслеживаемости всех ключей, используемых при составлении кольцевой подписи. Это может стать причиной цепной реакции, которая будет выражаться в отслеживаемости кольцевых подписей, что грозит критической утратой свойства неотслеживаемости всей сети при условии неправильно выбранных параметров, а также если злоумышленник контролирует достаточный процент сети. Тем не менее подписи так и останутся одноразовыми, поэтому совсем необязательно такая атака поставит под угрозу анонимность пользователей. Однако подобная атака, вероятно, сможет ослабить защиту блокчейна, которую обеспечивает CryptoNote, от анализа. Этот бюллетень не проходил независимой технической экспертизы и отражает исключительно результаты внутренних исследований.

Резюме: Monero использует уникальную хеш-функцию, которая преобразует скалярные величины в точки на эллиптической кривой. В частности, она используется для создания образов ключей. В этом документе, автором которого является Шен Ноезер, приводится преобразование его варианта реализации кода (функции ge_fromfe_frombytes_vartime()) в математические выражения.