Что из себя представляет CryptoNote?Технология CryptoNote позволяет создавать равноправные криптовалюты, сохраняющие тайну частных сделок и переводов. Вы можете посетить соответствующий вебсайт, посвященный
Cryptonote. Уровень анонимности, предоставляемый CryptoNote, недостижим с помощью кодовой базы Bitcoin-а. Bytecoin (BCN) был первой криптовалютой, использующей технологию CryptoNote и MRO также основана на исходном коде BCN.
Две самые важные особенности CryptoNote это
объединенные подписи, которые маскируют идентичность отправителя смешением и
несвязываемые транзакции, сопровождаемые созданием одноразовых ключей для частных переводов. Их комбинированный эффект обеспечивает высокий уровень анонимности без каких-либо дополнительных усилий со стороны пользователя.
В отличие от Биткойн, ваши средства находятся не на том адресе, который вы знаете и можете сообщить другим. Вместо этого, каждый раз когда вы получаете платежи, они приходят на несвязываемый адрес, сгенерированный случайным образом. Когда вы решите потратить средства с этого одноразового адреса, одна сумма будет разбита на несколько мелких, которые будут совпадать с идентичными выходами в цепочке блоков.
Например, если отправить 2556 MRO, протокол может разбить его на куски 2000 + 500 + 50 + 6 и объединенное подписание будет выполнено с другими 2000, 500, 50, 6 монетными выходами в цепочке блоков. В отличие от метода смешения CoinJoin, CryptoNote смешивает выходы, а не транзакции. Это означает, что для проведения платежа не нужны другие отправители, посылающие переводы в это же время или с точно такими же суммами. Любая произвольная сумма, отправленная в любое время, всегда может быть представлена фундаментально неразличимой (математическое доказательство приведено в
документации).
Ниже дано объяснение объединенным подписям. Картинки взяты с сайта CryptoNote.
Нормальная подпись выглядит примерно так. Здесь только один участник.
Объединенная подпись скрывает идентичность подписавшего, поскольку она указывает только на то, что владелец подписи
находится внутри группы.
Это позволяет достичь высокого уровня анонимности транзакций. Вы можете представить это как
децентрализованное и бездоверительное смешение.
Если сравнить с другими анонимными решениями?Идея объединенных подписей исходит с трудов Rivest et al в 2001 году и частично само представление CryptoNote основывается на работах Fujisaki и Suzuki's по отслеживаемости объединенных подписей. Существуют еще два других представления по обеспечению анонимности, доступных или находящихся в разработке в настоящий момент. Одна из них технология ZeroCoin/ZeroCash, использует доказательства нулевого знания. Другие основаны на gmaxwell-овской идее
CoinJoin (подобное вы можете увидеть в смешивающих сервисах (миксерах) для Bitcoin или для DarkCoin).
1. Сравнение с ZeroCoin и решениями, основанными на ZKP:Вы можете прочитать о Zerocoin и доказательстве нулевого знания (ZKP)
здесь. Это криптография начально-исследовательского уровня и она не была апробирована годами, так что здесь может таиться опасность рисков возможных дыр безопасности. Объединенные подписи являются зрелой технологией, несмотря на то, что CryptoNote является первым ее представлением, использованным в криптовалютах.
Помимо всего существуют вопрос с приватным RSA ключом, используемым для инициации аккумулятора, который должен иметь доверие для своего уничтожения стороной, сгенерировавшей его. Подобный принцип анонимности приводит к сокрытию абсолютно всего, не только отдельно взятой идентичности получателя и отправителя средств. Действительно, если вдруг обнаружатся ошибки, ведущие к инфляции или манипуляции, то это может стать проблемой, из-за того, что ущерб будет скрыт для каждого. Это компромисс между присущими технологии ZKP рисками и полной анонимностью. CryptoNote решает задачу по другому, через двойной слой приватности, обеспечиваемыми одноразовыми ключами и объединенными подписями.
2. Сравнение с решениями, основанными на CoinJoin:MRO качественно похожа на CoinJoin по части смешения. Различия исходят из протокола Bitcoin, которые позволяют MRO ипользовать новую криптографию для обеспечения децентрализованного и бездоверительного смешения. Самая важная проблема со смешивающими сервисам заключается в том, что вы должны доверять ему. К примеру, миксер в blockchain.info дает следующее предупреждение: "Однако, если сервер был скомпрометирован или находится под давлением властей, его могут заставить сохранять лог-журналы. Если подобное случится, то ваша приватность будет раскрыта, хотя вы ничего и не потеряете."
DarkCoin, работающий по принципам CoinJoin, выполняет смешение отобранными "мастер-узлами",использующими обычные подписи, которые можно сопоставить один-к-одному. По сравнению с более централизованными сервисами смешения, такой подход является улучшением, в силу того, что случайно выбранный узел меньше подвержен риску доверия (например, ведение тех же самых логов). Однако, он все равно полагается на надежность и добросовестное поведение узла, в то время как в MRO эта уязвимость исключена в принципе.
Объединеннные подписи в MRO являются более безопасным и удобным механизмом анонимности, чем CoinJoin, потому что они смешивают выходы, а не транзакции. Это означает, что транзакция не дожидается момента, когда она будет смешена с другими транзакциями. При этом пользователь никак не ограничивается в смешивании, если другие будут тратить точно такую же сумму. Суммы можно отправлять в любое время без участия других. Такая особенность делает анализ цепочки блоков по временным меткам для выявления идентичности отправителей и получателей платежа бесполезным занятием. Степень анонимности определяется по выбору, а не протоколом и вы вольны выбирать, как вам лучше смешаться с толпой, в 5 или 50 человек.Размер подписи линейно O(n+1) зависит от качества скрытия, поэтому за большую анонимность придется заплатить большую комиссию майнерам.
Обзор механизма объединенной подписи транзакцииБоб решает потратить выход транзакции, который был подписан одноразовым публичным ключом. Ему нужно знать Extra (
1), TxOutNumber (
2), и свой приватный ключ от счета (
3), чтобы восстановить одноразовый приватный ключ (
4).
Когда он посылает транзакцию Кэрол, Боб генерирует значение Extra случайным образом (
5). Он использует Extra (
6), TxOutNumber (
7) и публичный ключ от счета Кэрол, (
8) чтобы получить публичный ключ выхода (
9).
Во входе Боб прячет ссылку на свой выход между чужими ключами (
10). Для того, чтобы предотвратить двойную трату, он также упаковывает образ ключа, выведенный из его одноразового приватного ключа (
11).
В конце, Боб подписывает транзакцию, используя свой одноразовый приватный ключ (
12), все публичные ключи (
13) и образ ключа (
14). Он добавляет результирующую объединенную подпись в конец транзакции (
15).