Чтение онлайн

на главную - закладки

Жанры

Биткойн для чайников
Шрифт:

На момент выхода книги вычислительная мощность сети биткойна делится между множеством майнинг-пулов. Самый крупный на текущий момент пул — китайский AntPool (в нем 17,8 % мощности сети); за ним следуют пул ВТС.Тор (11,7 %), Bixin (9.7 %) и BitFury (8 %). Актуальную информацию о распределении хеш-мощности можно получить на странице https://blockchain.info/pools.

Все вышеупомянутые пулы управляются китайскими операторами, что делает Китай страной, которой в настоящий

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

Двойная трата

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

Атака двойной траты

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

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

Атака в спешке

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

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

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

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

Ожидание

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

Атака Финни

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

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

Брутфорс-атака

И последние, но не менее значимые — брутфорс-атака и атака >50 %. Для проведения обеих требуется неимоверное количество вычислительной мощности сети биткойна. Вероятность проведения любой из этих атак в настоящее время крайне мала, так как атакующему понадобилось бы получить контроль над существенным количеством всей майнинговой мощности сети биткойна.

Брутфорс-атака происходит так.

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

2. После ожидания п подтверждений торговец отправляет товар.

3. Если у атакующего к этому моменту получается посчитать более п блоков, он публикует свой форк и получает монеты обратно; в противном случае он может попытаться продолжить считать свой форк в надежде когда-нибудь обогнать сеть. Если этого никогда не произойдет, то атака считается захлебнувшейся, платеж остается совершенным, а средства остаются у торговца.

Вероятность успеха атаки — функция от хешрейта атакующего (как доли общего хешрейта сети) и числа подтверждений, которые будет дожидаться торговец перед тем, как выдать товар. Например, в случае, если атакующий контролирует 10 % хешрейта сети, но торговец ждет прохождения шести подтверждений, вероятность успеха атаки будет порядка 0,1 %.

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

Поделиться:
Популярные книги

Князь Целитель 4

Ткачев Андрей Юрьевич
4. Князь Целитель
Фантастика:
боевая фантастика
городское фэнтези
аниме
фэнтези
5.00
рейтинг книги
Князь Целитель 4

Кодекс Охотника. Книга XXXVIII

Винокуров Юрий
38. Кодекс Охотника
Фантастика:
фэнтези
боевая фантастика
попаданцы
юмористическое фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XXXVIII

Печать пожирателя 2

Соломенный Илья
2. Пожиратель
Фантастика:
городское фэнтези
попаданцы
аниме
сказочная фантастика
5.00
рейтинг книги
Печать пожирателя 2

Изгой

Майерс Александр
2. Династия
Фантастика:
фэнтези
попаданцы
рпг
аниме
5.00
рейтинг книги
Изгой

Второгодка. Книга 3. Ученье свет

Ромов Дмитрий
3. Второгодка
Фантастика:
городское фэнтези
сказочная фантастика
альтернативная история
5.00
рейтинг книги
Второгодка. Книга 3. Ученье свет

Бандит 2

Щепетнов Евгений Владимирович
2. Петр Синельников
Фантастика:
боевая фантастика
5.73
рейтинг книги
Бандит 2

Матабар. II

Клеванский Кирилл Сергеевич
2. Матабар
Фантастика:
фэнтези
5.00
рейтинг книги
Матабар. II

Вампир. Английская готика. XIX век

Стивенсон Роберт Льюис
Фантастика:
ужасы и мистика
7.67
рейтинг книги
Вампир. Английская готика. XIX век

Паладин из прошлого тысячелетия

Еслер Андрей
1. Соприкосновение миров
Фантастика:
боевая фантастика
попаданцы
6.25
рейтинг книги
Паладин из прошлого тысячелетия

Принадлежать им

Зайцева Мария
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Принадлежать им

Запечатанный во тьме. Том 2

NikL
2. Хроники Арнея
Фантастика:
уся
эпическая фантастика
фэнтези
5.00
рейтинг книги
Запечатанный во тьме. Том 2

Менталист. Эмансипация

Еслер Андрей
1. Выиграть у времени
Фантастика:
альтернативная история
7.52
рейтинг книги
Менталист. Эмансипация

Государь

Кулаков Алексей Иванович
3. Рюрикова кровь
Фантастика:
мистика
альтернативная история
историческое фэнтези
6.25
рейтинг книги
Государь

Полет аистов

Гранже Жан-Кристоф
Детективы:
триллеры
8.88
рейтинг книги
Полет аистов