Jump to content

Биткоин и "эгоистичный" майнинг.


Format.C^
 Share

Recommended Posts

Группа исследователей из Корнелльского университета, во главе с Ittay Eyal и Emin Sirer утверждают, что обнаружили уязвимость в системе генерации Bitcoin. В опубликованной научной работе приводится пример атаки на цепочку блоков, в которой майнеры получают вознаграждение несоизмеримо своим усилиям по добыче монет.

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

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

Эгоистичный майнинг возможен только в составе группы достаточно большого размера. Авторы научной работы предлагают изменение протокола для защиты от подобных групп, суммарная мощность которых не превышает 25% ресурсов сети. При этом они подчеркивают, что система никогда не будет защищена от групп, которые контролируют более 33% вычислительных ресурсов сети, в то время как раньше критическим считался контроль более 50% ресурсов.

Самая большая группа майнеров на сегодня — пул BTC Guild — контролирует более 25% вычислительных ресурсов сети, и этого уже достаточно для попытки эгоистичного майнинга.

 

post-3105-0-13251900-1383636459_thumb.jpg

 

Источники: http://mashable.com/2013/11/04/bitcoin-cornell-researchers/

                  http://www.scribd.com/doc/181412760/Bitcoin-Mining-Vulnerability-Paper

_______________________________________

На самом деле мне не совсем понятен сам механизм публикации (выгрузки) группы блоков из "приватной" ветки в основную. Как это может произойти на практике, кто в курсе?

Link to comment
Share on other sites

За счет чего их ветка будет расти быстрее основной? Из-за падения сложности?

Link to comment
Share on other sites

@Provok, за счёт того, что найденный пулом блок не обнародуется для всей сети, а держится "в секрете" и продолжается поиск следующего. Майнеры, находящиеся в основной ветке сети не знают, что блок уже найден и продолжают майнить "в холостую". Этим достигается как бы "эффект форы" и количество блоков в "приватной" ветке получается по определению длиннее, чем в основной. Такой манёвр позволяет сохранять приватную ветку валидной, а в основной ветке майнеры получают орфаны.

Link to comment
Share on other sites

Группа исследователей из Корнелльского университета, во главе с Ittay Eyal и Emin Sirer ...

... наконец обнаружила существование Bitcoin Wiki или наоборот никогда ее не видела и изобрела свой велосипед? Это удивительнейшее открытие известно всем кому не лень :huh: С самого начала возникло дежавю, потом вспомнил, где я об этом читал, оказывается далеко ходить не надо ;)  

http://btcsec.com/double-spending

 

@Provok, за счёт того, что найденный пулом блок не обнародуется для всей сети, а держится "в секрете" и продолжается поиск следующего. Майнеры, находящиеся в основной ветке сети не знают, что блок уже найден и продолжают майнить "в холостую". Этим достигается как бы "эффект форы" и количество блоков в "приватной" ветке получается по определению длиннее, чем в основной. Такой манёвр позволяет сохранять приватную ветку валидной, а в основной ветке майнеры получают орфаны.

Чтобы получить большее количество блоков в приватной ветке, нужно генерировать быстрее остальной сети всю цепочку, а не отдельные блоки. А это можно только при 50%+ или затяжном периоде удачи при меньшей мощности. Так и не понял, что принципиально нового открыли эти ученые? Механизм скрытого вклеивания отдельных блоков в уже существующую цепочку задним числом? :blink: Если нет, то они сидят в касках в танке на бронепоезде...

 

P.S. btcguild уже неоднократно имела больше 50% мощности сети, но не воспользовалась, видимо ей рулят порядочные люди. Главное что такую атаку провести незаметно просто нет возможности, если кто-то будет тырить блоки систематически - допрыгается. Но самое смешное, в долгосрочной перспективе все равно больше своего законного процента не получит...

Link to comment
Share on other sites

... наконец обнаружила существование Bitcoin Wiki ... http://btcsec.com/double-spending

Ну а Вики тут причём? Если что, речь идёт не о дабл-спенде.

 

Чтобы получить большее количество блоков в приватной ветке, нужно генерировать быстрее остальной сети всю цепочку, а не отдельные блоки. А это можно только при 50%+ или затяжном периоде удачи при меньшей мощности.

Не всю цепочку, а цепочку из нескольких подряд идущих блоков. Я постом выше пояснил почему так получается  и почему нет необходимости в 50%+.

 

Так и не понял, что принципиально нового открыли эти ученые? Механизм скрытого вклеивания отдельных блоков в уже существующую цепочку задним числом?

Опять же, попробуй внимательно прочитать мой предыдущий пост.

Link to comment
Share on other sites

Все равно ЯННП.

Считаем усредненно.

Предположим, злоумышленники нашли блок и считают дальше - получили фору в 10 минут. Они найдут следующий блок за 30 минут (т.к. считает всего 33% а сложность та же). Остальные за это время найдут 2 блока и пойдут на равных. Еще 30 минут, злоумышленники нашли 1 блок, остальные - 2 блока и ушли вперед.

 

При даблспенде понятно - при неудачах злоумышленники ничего не теряют, поэтому атака теоретически может принести прибыль, а тут?

Edited by Provok
Link to comment
Share on other sites

Ну а Вики тут причём? Если что, речь идёт не о дабл-спенде.

При том, что ничего нового я не увидел, а в той статье описан практически тот же механизм.

 

Не всю цепочку, а цепочку из нескольких подряд идущих блоков. Я постом выше пояснил почему так получается  и почему нет необходимости в 50%+.

Опять же, если "очень повезет". Никакой привязки к 33% нет, вопрос только во времени.

 

Опять же, попробуй внимательно прочитать мой предыдущий пост.

Прочитал, не понял, на пальцах можно? :) Не вижу отличий от классического варианта -скрытно генерить свою цепочку, в таком случае пул "выпадает из сети", что невозможно скрыть, или как подвариант - суперпуперудачно сгенерить цепочку из нескольких блоков быстрее остальных, при этом "воруя" промежуточные блоки, сгенеренные другими, но мне не совсем понятно как в таком случае обмануть механизмы контроля, т.е. хэш предыдущего блока и банальный timestamp... править свои сгенеренные блоки "руками"? Откат блока с хотя бы одним подтверждением - это уже "криминал", в отдельно взятом случае может прокатить, но если такое будет повторяться - неизбежно заметят.
Link to comment
Share on other sites

А тут злоумышленник теряет проработавшие вхолостую мощности. Авторы исслкдования поняли что атаку 51% можно провести и с 30% сети, только шансы ниже, также наличие 51% и более не дает 100% гарантии успешной атаки.

Link to comment
Share on other sites

А тут злоумышленник теряет проработавшие вхолостую мощности. Авторы исслкдования поняли что атаку 51% можно провести и с 30% сети, только шансы ниже, также наличие 51% и более не дает 100% гарантии успешной атаки.

Ага. Так же интересна ситуация (обсуждалось на talks-ах, ссылку на сохранил), когда пул находит блок, а сеть нашла другой  чуть раньше. У пула (теоретически) два варианта: согласиться и начать дальше копать "от чужого блока" или копать от своего.

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

Edited by XBOCT
Link to comment
Share on other sites

Как раз отсутствие учёта задержки распространения блоков по сети и является основным проколом авторов статьи. Если нет превосходства в мощности, то честно или почти честно майнить выгоднее. Теория вероятностей подтверждает.

Link to comment
Share on other sites

Авторы незнакомы с матчастью. При разрешении конфликта форка цепи протокол принимает не у кого блоков больше, а чья совокупная сложность больше. То есть в "нечестную" цепь чтобы она принялась сетью, надо вбухать больше хешей чем в "честную", Получаем 51% дабл-спенд. Если злодеи продолжат упорстововать, их просто выбросит в лимб, их блоки и транзакции не будут признаны кворумом и не примутся.

Link to comment
Share on other sites

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

Link to comment
Share on other sites

Если на пальцах.

 

У меня ровно четверть сети, я поймал короткий раунд на 0 минут и сразу начал копать следующий блок поверх найденного и неопубликованного. Найду я его через 40 минут (наивероятное значение), в то время сеть сгенерирует 3 блока. В итоге у меня 2 блока, у всех остальных 3, и любой клиент мою ветку заорфанит.

Link to comment
Share on other sites

Если на пальцах.

 

У меня ровно четверть сети, я поймал короткий раунд на 0 минут и сразу начал копать следующий блок поверх найденного и неопубликованного. Найду я его через 40 минут (наивероятное значение), в то время сеть сгенерирует 3 блока. В итоге у меня 2 блока, у всех остальных 3, и любой клиент мою ветку заорфанит.

 

Это само собой разумеется, так как у открытой ветки накопленная сложность будет выше за счёт сложности +1 блока. Если в этом интервале не было пересчёта сложности, то для простоты можно считать преимущество форков в блоках, а не в накопленной сложности. Кстати, 51% ещё не означает double spend, он лишь частный случай.

Link to comment
Share on other sites

@Tomcat_MkII все правильно сказал и привел ссылку на статью про double spending

Группа исследователей из Корнелльского университета заставила меня вспомнить вот эту картинку:

breaking_news.jpg

Ребята наконец прочитали спецификации и до них дошло.

 

Тут единственное, на что стоит обратить внимание, и что несколько сумбурно преподнесли - это то, что группа майнеров, обладающая значительными вычислительными мощностями может продолжать искать блок, даже если он уже найден другими, в надежде, что удастся обогнать в дальнейшем всю сеть и сделать чужие блоки инвалидами. Что такая атака может быть успешной и при менее 50% мощностей написано и в статье про double spending, тут ничего нового нет. Только цель не дважды одни выходы потратить, а подгадить всей сети.

 

майнеры получают вознаграждение несоизмеримо своим усилиям по добыче монет.

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

Link to comment
Share on other sites

Вообще, как описано в спецификации от Сатоши, даже если у вас есть 51% всей мощности сети, вам выгоднее "играть по правилам". Транзакции, совершённые до получения этой мощности, отменить не получится - можно только отменять последующие, дискредитируя систему и "понижая курс валюты на биржах". И это гениально, imho.

Link to comment
Share on other sites

А вообще, смысл "исследования" в том, что "Надо больше негативных новостей!" Паник! Паник! Система разваливается! Биток сливаем!

Link to comment
Share on other sites

Кстати, этим "открытием" все новостные сайты завалены, пора бы курсу просесть.

А потом кто-нибудь из разработчиков выедет на белом коне с опровержением <_<

Link to comment
Share on other sites

  • 2 weeks later...

[bitcoin-development] Bitcoin Network Simulator

 

Over the last days I spent some time working on a simple Bitcoin network simulator. It is a stochastic event-based continuous-time simulation of Bitcoin miners exchanging messages and building block chains. It simulates latency, bandwidth and also verification speed but it currently does not simulate propagation/inclusion of transactions and instead uses random block sizes. The simulator includes two examples, one for a 51% attack and the other is an implementation of selfish mining (pretty much 1:1 as described in the paper). With the random parameters I picked it seems like it pays off to mine selfish with >=30% of the hashing power - but take this with a huge grain of salt as this is with a very small network and randomly chosen parameters. And of course it is not a perfect replica of the real world network. Since this is based on my understanding of the Bitcoin network and protocol it would be great if others would take a look and help improve it.

  Regards,

  Rafael Brune

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Similar Topics

    • Джим Роджерс: «Я мог бы купить биткоин за $1»

      Инвестор и сооснователь Quantum Fund Джим Роджерс выразил скептицизм в отношении цифровых валют центральных банков. Он считает, что будущее денег за криптовалютами. Еще два года назад известный американский инвестор Джим Роджерс (Jim Rogers) считался криптовалютным скептиком и называл биткоин пузырем, который рано или поздно лопнет. Однако теперь он начинает менять свое мнение о цифровых активах из-за политики Федеральной резервной системы США (ФРС).    Роджерс заявил, что он потерял

      in Новости криптовалют

    • Скотт Майнерд: «Биткоин может упасть до $8 000»

      Инвестиционный директор Guggenheim Partners Скотт Майнерд считает, что коррекция криптовалютного рынка не закончена и курс биткоина в ближайшем будущем может упасть до $8 000. Во время разговора в программе «Squawk Box» на канале CNBC Скотт Майнерд (Scott Minerd) выразил мнение, что BTC может упасть еще на 70% от текущих уровней:   «Когда вы неоднократно пробиваете уровень в $30 000, то самой нижней точкой может быть отметка в $8 000. Так что, я думаю, еще есть возможность значитель

      in Новости криптовалют

    • Block: Биткоин может улучшить мировую финансовую систему

      Руководство платежной компании Block, ранее известной как Square, сообщило, что фирма стремится использовать возможности биткоина для расширения мировой финансовой системы. Основатель Block Джек Дорси (Jack Dorsey) давно является энтузиастом биткоина, и именно на развитии экосистемы первой криптовалюты сосредоточены усилия его команды. Поэтому неудивительно, что, по мнению руководства Block, в процессе улучшения мировой финансовой системы именно биткоин сыграет ключевую роль.   «Мы

      in Новости криптовалют

    • Бывший глава ФРС США назвал биткоин вредной валютой

      Экс-председатель Федеральной резервной системы США обрушился с критикой на криптовалюты, назвав их «отличным инструментом для вымогателей». Бен Бернанке (Ben Bernanke) в интервью CNBC заявил, что цифровые валюты были задуманы как замена фиатным деньгам, однако не преуспели в этом. По мнению бывшего американского чиновника, главная привлекательность криптоактивов состоит в ее спекулятивности, и только так они могут держаться на плаву. Бернаке не преминул подчеркнуть, что последние события на

      in Новости криптовалют

    • CoinShares: Институциональные инвесторы вложили почти $300 млн в криптовалютные фонды на биткоин

      Аналитики компании по управлению активами CoinShares сообщили, что за неделю с 9 по 13 мая институциональные инвесторы вложили в криптовалютные фонды $274 млн. Это рекорд с начала года. Согласно отчету, трасты на биткоин оказались на пике популярности – инвесторы вложили в них $298.6 млн. А вот из продуктов на ETH, SOL и DOT средства выводили – отток составил $26.7 млн, $5.3 млн и $0.6 млн соответственно. Незначительные инвестиции зафиксированы в продукты на LTC, TRX, ADA и XRP. А вот мульт

      in Новости криптовалют

×
×
  • Create New...