Кольцевые подписи в Monero — анонимность на уровне протокола

10.03.2022 |

Про кольцевые подписи в Monero

Один из основных недостатков биткоина и других подобных криптовалют — низкий уровень анонимности. Monero одним из первых решили устранить данную проблему, и сделать анонимность базовой, встроив ее в протокол. Добиться этого удалось благодаря использованию кольцевых подписей.

Что такое кольцевая подпись

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

Если говорить об общем применении кольцевых подписей, то можно привести следующий пример:

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

Реализация кольцевых подписей Monero

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

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

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