Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
rashagetto
7 лет назад

Как работает Segwit2x Replay Protection

Джефф Гарзик объединился в режиме защиты от повторного воспроизведения для Segwit2x. В этом посте я расскажу, как это работает, что вам нужно делать и почему они это сделали.

Что такое Replay Protection, так или иначе?
Прежде чем объяснять точную схему Replay Protection, важно понять, какие первыми повторения являются первыми. В случае жесткой вилки без защиты воспроизведения, транзакции, которые проводят монеты предварительного форка, действительны для обеих цепей. То есть, если Алиса отправит монумент Боба 1 на цепочку X, то та же транзакция будет действительна на цепочке Y.
Алиса может намереваться отправить Боба 1 XCoin и 1 YCoin, и в этом случае она будет транслировать транзакцию по обеим цепям и не будет иметь уязвимости. Однако, если она хочет отправить Бобу только 1 XCoin, а не 1 YCoin, у нас есть проблема. Конечно, Алиса будет транслировать транзакцию по цепочке X, но транзакция теперь открыта и открывает уязвимость безопасности.
Злоумышленник может принять публичную транзакцию, отправив 1Xcoin от Алисы к Бобу из цепочки X и воспроизвести ее по цепочке Y. Это заставило бы Боба получить 1 YCoin. Это называется повторной атакой и вызывает множество непредвиденных транзакций.
Replay Protection - это обобщенный термин о том, как вы можете предотвратить атакующую атаку злоумышленника. Другими словами, сделать транзакции из цепочки X недействительными по цепочке Y и наоборот.
Сильная двухсторонняя защита от повторного воспроизведения и защита от повторного воспроизведения
Сильная двухсторонняя защита воспроизведения означает, что транзакции из цепочки X никогда не действуют на цепочку Y после жесткой вилки и наоборот. То есть, все транзакции имеют некоторый маркер, который дает понять, для какой цепочки они предназначены.
Bitcoin Cash достиг этого путем маркировки подписей, которые требуется каждой транзакции. Это сделало транзакции на своей цепочке недействительными на Биткойне и наоборот. Это называется «сильной» защитой воспроизведения, потому что никто не может случайно подвергнуться атакам повторного воспроизведения. Сильная защита от повторного воспроизведения очень похожа на автоматическую блокировку двери, которая предотвращает переход транзакции из цепи X.
Защита от повторного воспроизведения означает, что транзакции из цепочки X должны делать что-то особенное, чтобы быть недействительным в цепочке Y. То есть по умолчанию транзакции подвергаются атакам повторного воспроизведения, но если вы управляете своей транзакцией определенным образом, транзакция выиграла «Действуйте на цепочке Y. Защита от повторного воспроизведения больше похожа на дверь, которую вы должны помнить, чтобы блокировать, потому что в противном случае транзакция может ускорить цепочку X и попасть в цепочку Y.
Что сделали разработчики Segwit2x?
Разработчики Segwit2x приняли решение об особой схеме защиты от повторного воспроизведения, как в приведенном выше запросе на извлечение. Алиса, отправляя монеты в цепочку Legacy к Бобу, должна будет отправить небольшую сумму в 3Bit1xA4apyzgmFNT2k8Pvnd6zb6TnwcTi, чтобы транзакция была недействительной в цепочке 2x. Этот адрес был выбран потому, что его можно легко увидеть визуально (начинается 3Bit) и достаточно легко провести, поскольку закрытый ключ хорошо известен.
Рассматриваются другие схемы защиты от повторного использования, такие как установка специальной строки в OP_RETURN, создание магического значения nSequence или игнорирование транзакций с определенными битами версии (это может все еще произойти ), но эта схема была выбрана, скорее всего, потому, что это относительно легко сделать, даже с кошельками, которые не знают о твердой вилке.
Теперь, прежде чем вы начнете пытаться отправить монеты по указанному выше адресу, у меня есть одно предостережение. Эта схема защиты повтора активируется только после разрыва цепи. То есть, бесполезно посылать небольшую сумму по указанному выше адресу до 18 ноября или около того, когда блок 494784 будет заминирован. В этот момент отправка транзакции, которая включает небольшую сумму в адрес, указанный выше в цепочке Legacy, не будет воспроизводиться в цепочке 2x.
Почему Segwit2x не добавил Strong Replay Protection, как BCH?
Разработчики Segwit2x считают, что они будут основной цепочкой после жесткой вилки. Таким образом, они хотят, чтобы все существующие кошельки, существующие в экосистеме биткойнов, были совместимы с 2x и не требовали обновлений. То есть кошельки и услуги не нуждаются в обновлении своего программного обеспечения с помощью защиты от повторного воспроизведения. Их мнение состоит в том, что сильная защита от повторного воспроизведения приведет к большему расколу в экосистеме, чем должно быть.
Когда BCH раздвоен 1 августа, кошельков, которые поддерживали BCH, почти не было, потому что их схема защиты от повторного использования была сильной и потому, что разработчики кошельков не имели возможности кодировать корректировки, необходимые для совершения транзакций, действующих на BCH. Похоже, Segwit2x пытается избежать этого, заставляя транзакции работать с существующими кошельками, купцами и сервисами Bitcoin.
Что потребовалось бы для Core для реализации Strong Replay Protection?
К сожалению, для любой сильной схемы защиты воспроизведения требуется жесткая вилка. Многие разработчики Core рассматривают жесткие вилки как требующие большого времени для руководства и общего согласия сообщества, что является большой причиной для текущих дебатов с 2x людьми. Таким образом, сильная схема защиты воспроизведения выглядит маловероятной.
Что мне нужно сделать, чтобы разделить мои монеты после жесткой вилки?
Сначала вы захотите перенести свои монеты Legacy на новые адреса (ваш Legacy wallet), но каждая из этих транзакций должна будет отправить небольшую сумму в 3Bit1xA4apyzgmFNT2k8Pvnd6zb6TnwcTi. Если вас не волнует конфиденциальность, вы можете сделать одну гигантскую транзакцию, которая отправит все ваши текущие биткойны на другой адрес или набор адресов. Просто убедитесь, что небольшая сумма также отправляется в 3Bit1xA4apyzgmFNT2k8Pvnd6zb6TnwcTi в той же транзакции.
После этого вы можете отправить свои 2x монеты по разным адресам, и это будет ваш 2x кошелек.
Вывод
Жесткие вилки поднимают множество проблем, с которыми сообществу биткойнов не приходилось сталкиваться раньше. Одной из них является атака повтора. Как всегда, будьте очень осторожны при совершении транзакций в биткойне и сообщайте о жестких вилках, как это, прежде чем отправлять какие-либо биткойны в любом месте.
1-0WJZ-Xg0N9HHLLMG-sWZUQ.jpeg

0
0.009 GOLOS
На Golos с August 2017
Комментарии (0)
Сортировать по:
Сначала старые