Перейти к содержанию

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


Format.C^

Рекомендуемые сообщения

Группа исследователей из Корнелльского университета, во главе с 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

_______________________________________

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

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

http://btcsec.com/double-spending

 

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

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

 

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

 

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

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

 

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

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

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

 

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

Изменено пользователем Provok
Ссылка на комментарий
Поделиться на другие сайты

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

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

 

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

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

 

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

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

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

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

Изменено пользователем XBOCT
Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

 

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

Ссылка на комментарий
Поделиться на другие сайты

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

 

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

 

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

breaking_news.jpg

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

 

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

 

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

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

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

[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

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Similar Topics

    • Питер Брандт: «Биткоин затмит государственные валюты и облигации»

      Популярный криптовалютный аналитик и трейдер назвал биткоин новым стандартом сохранения ценностей, который способен заменить бумажные валюты и государственные облигации. Питер Бранд (Peter Brandt) рассказал, что вырос в эпоху «враждебных корпоративных поглощений», которые «стали пищей» для публикаций изданий Wall Street Journal и Bloomberg. Сегодня возникает еще более серьезная проблема с поглощениями. Но биткоин, который претендует на статус нового стандарта сбережения, способен стать альт

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

    • Роберт Кийосаки: «Да, биткоин может оказаться мошенничеством»

      Автор бестселлера «Богатый папа, бедный папа» Роберт Кийосаки признал, что биткоин может оказаться мошеннической схемой, но в этом случае первая криптовалюта ничем не будет отличаться от доллара США или евро. Американский предприниматель Роберт Кийосаки Robert Kiyosaki назвал себя энтузиастом биткоина, настроенным «по-бычьи». Кийосаки уверен, что биткоин — это идеальный актив, и он жалеет, что раньше не купил еще больше монет.   «Вполне возможно, что биткоин — это мошенничество или ч

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

    • CoinMarketCap: Биткоин тестирует уровень сопротивления в $70 000

      Цифры аналитического портала CoinMarketCap говорят, что биткоин отыгрывает падение марта и стремится преодолеть уровень сопротивления в $70 000. Сегодня, 25 марта, первая по капитализации криптовалюта продемонстрировала суточный рост на 6%, достигая в моменте уровня стоимости $69 800. На недельном таймфрейме рост цены составил около 4%. Таким образом, биткоин практически отыграл падение.     На фоне роста актива капитализация рынка биткоина превысила 6% и достигла 1,37 трлн. Эт

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

    • Santiment: Биткоин нащупал новый уровень поддержки

      Аналитики Santiment заметили на криторынке необычную тенденцию, которая сигнализирует о временной стабилизации стоимости биткоина на грани крупной распродажи.  Эксперты Santiment проанализировали движение биткоинов, которые оставались в бездействии 365 дней или более. 23 марта долгосрочные инвесторы переместили со своих кошельков на биржевые счета 97 737 BTC, остававшихся без движения более года. С учетом рыночных цен, долгосрочные инвесторы ввели в обращение BTC на сумму более $6,4 млрд. 

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

    • Энтони Скарамуччи: «Притворитесь мертвым и не продавайте биткоин»

      Основатель Skybridge Capital Энтони Скарамуччи посоветовал инвесторам в биткоин не продавать криптовалюту, даже если они напуганы волатильностью рынка. Во время панельной дискуссии на конференции Bitcoin Investor Day Энтони Скарамуччи (Anthony Scaramucci) пояснил, что клиенты Skybridge ценят наличие биткоинов в своих инвестиционных портфелях. Однако значительные колебания курса BTC и нестабильность крипторынка вызывают у них беспокойство, поэтому сейчас самое сложное для них — ничего не дел

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

×
×
  • Создать...