Двойные траты могут подорвать доверие к криптовалюте, поэтому так много усилий было направлено на то, чтобы не допустить подобного мошенничества.
Операции с криптовалютой безопасны и заслуживают доверия благодаря технологии блокчейн. Однако, как и в большинстве инновационных систем, в блокчейне есть уязвимости, которые можно использовать, что может привести к двойным расходам. Но что такое двойная трата и как ее предотвратить?
Что такое двойная трата?
Двойные расходы возникают, когда один и тот же объект тратит один и тот же токен криптовалюты более одного раза. Это вызвано недостатком цифровых валют, который делает их легко воспроизводимыми.
Информация в сети блокчейн может быть изменена во время транзакций при соблюдении определенных условий. При выполнении этих условий изменяется блоки транзакций может войти в блокчейн, позволяя злоумышленнику повторно получить ранее потраченные крипто-токены.
Чтобы лучше понять, как это происходит, вот упрощенное описание процесса. Когда транзакция выполняется в сети блокчейна, скажем, Биткойн, создается блок, который содержит данные транзакции, данные из предыдущего блока и отметку времени. Блок имеет зашифрованный код, называемый хэшем.
люди, которые добывают биткойн в сети биткойн затем проверьте транзакцию с помощью алгоритма консенсуса доказательства работы, закройте блок и создайте новый блок. Новый блок содержит метку времени, хэш предыдущего блока и новые данные транзакции. После этого победивший майнер получает вознаграждение за блок (BTC) за проверку хэша.
Чтобы успешно выполнить двойную трату, преступник должен добыть секретный блок, который опережает создание фактического блока. Для этого злоумышленник должен ввести секретный блок перед новым блоком, чтобы сеть, обманутый, думая, что это последний набор растущего блока, добавляет поддельный блок к постоянно растущему цепь. Затем злоумышленник может вернуть ранее использованные крипто-токены.
Несмотря на то, что двойные траты — хорошо известное явление в криптопространстве, документально подтвержденных случаев нет. Это связано с тем, что проверка транзакций — сложный процесс, требующий огромных вычислительных мощностей. Фальсификация или дублирование блока является сложной задачей, поскольку злоумышленники должны работать на блокчейне раньше всех остальных майнеров.
Почему двойные траты являются проблемой?
Двойные траты — это оскорбление безопасности сети блокчейн. Это происходит, когда есть эксплуатируемая слабость.
Кроме того, сеть блокчейна должна быть безопасной и надежной. Если в криптовалютной сети происходят двойные расходы, это вызывает недоверие к этой криптосистеме, что снижает стимулы для инвесторов. И в конечном итоге стоимость токена упадет.
Кроме того, двойные траты — это цифровое воровство. Хакер выигрывает, а кто-то другой в сети, обычно продавец, проигрывает. Преступник сохраняет за собой право собственности на товары продавца и крипто-токен.
Примеры атак с двойной тратой
Существуют различные формы атак с двойным расходом, которые используют киберпреступники. Вот некоторые из них:
51% Атака
Атака 51% — наиболее широко обсуждаемая форма двойной траты. Это происходит, когда майнер (или группа майнеров) контролирует большую часть (более 50%) вычислительной мощности, проверяющей транзакции в сети.
Когда это происходит, они могут диктовать транзакции, создавать новые блоки, возвращать уже потраченную криптовалюту и присуждать крипто-токены. Это дает им возможность дважды тратить цифровые монеты.
Атака 51% с меньшей вероятностью произойдет в более устоявшихся криптовалютах, таких как биткойн. Это связано с огромным количеством майнеров в сети и сложность хеширования. Однако криптовалюты с меньшими сетями, такие как новые или разветвленные, могут подвергаться риску.
В 2014 году GHash.io, майнинговый пул, работавший с 2013 по 2016 год, ненадолго превзошел 51% вычислительной мощности Биткойна в биткойнах. Это событие вызвало серьезные опасения по поводу безопасности сети. Затем Gnash.io добровольно ограничил свою вычислительную мощность на уровне 39,99%, чтобы восстановить доверие к сети.
Атака Финни
Этот тип атаки с двойным расходом был популяризирован и назван в честь Хэла Финни. При атаке Финни хакеру не требуется 51% мощности хеширования. Чтобы это было успешно, продавец должен принять непроверенную транзакцию от хакера, который является майнером.
Хакер генерирует блок, в котором он зачисляет себе крипто-токены, инициируя транзакцию с адреса X на адрес Y (оба принадлежат ему), не транслируя ее в сеть. Он совершает еще один платеж теми же крипто-токенами с адреса X на адрес Z, который принадлежит продавцу.
Если продавец принимает неподтвержденные транзакции без проверки из блокчейна, хакер освобождает блок, который включает его первоначальную транзакцию. Сеть аннулирует транзакцию с продавцом после того, как продавец предоставил товары или услуги хакеру. Это позволяет хакеру тратить вдвое больше.
Гоночная атака
Эту атаку легче осуществить, чем атаки 51% и Финни. При атаке гонки существует «гонка» между двумя транзакциями.
Хакер использует разные машины для отправки одного и того же токена двум продавцам. Если продавец отправляет товары или услуги до подтверждения транзакции, он обнаружит, что транзакция не была принята в процессе майнинга.
Как блокчейн предотвращает двойные траты
Блокчейны защищают от двойных расходов через алгоритмы консенсуса, такой как:
Доказательство работы (PoW)
Доказательство работы — это высококонкурентный процесс, требующий огромного количества энергии. В этом механизме консенсуса майнеры используют сложные компьютеры для угадывания хэшей блоков транзакций.
Хэш — это зашифрованный уникальный 64-значный шестнадцатеричный код, которым обладает каждая транзакция. Этот процесс использует вычислительную мощность для подтверждения подлинности транзакции.
Как только транзакция проверена, успешный майнер добавляет транзакцию в децентрализованная цифровая книга. В конце процесса успешный майнер получает вознаграждение за блок в собственном цифровом токене.
Bitcoin, Bitcoin Cash, Litecoin, Monero и Dogecoin — популярные криптовалюты, использующие этот алгоритм консенсуса.
Доказательство доли (PoS)
В Proof-of-Stake участники криптосети аутентифицируют транзакции блоков и называются валидаторами. Валидаторы предлагают (или «делят») некоторые из своих крипто-токенов в смарт-контракте, чтобы получить право проверять транзакции, прежде чем добавлять их в растущую цепочку блоков.
Сеть выбирает честного валидатора на основе их токенов и продолжительности стейкинга. После выбора победитель проверяет транзакцию, которую подтверждают другие валидаторы.
Так же, как PoW, валидаторы также получают вознаграждение в виде дохода после аутентификации новых транзакций. Если сеть обнаружит, что какой-либо валидатор нечестный, он потеряет часть или все свои токены в качестве наказания.
Этот процесс быстрее и требует меньше вычислительной мощности и энергии, чем PoW. Таким образом, участники блокчейна могут эффективно выступать в качестве валидаторов.
Ethereum 2.0, Cardano, Tezos и Solana используют PoS.
Делегированное доказательство доли (DPoS)
Этот тип алгоритма консенсуса PoS обязывает пользователей блокчейна использовать свои цифровые токены для честного голосования. валидаторы, называемые «делегатами». Один делегат выбирается случайным образом для проверки новых транзакций и добавления их в список. блокчейн.
После оплаты делегат распределяет награды за блоки пользователям, которые за них проголосовали.
Криптовалюты, использующие алгоритм DPoS, включают EOS, Ark, Tron и Lisk.
Пока нет дела, но двойные траты возможны
Хотя подтвержденных случаев нет, появление новых и разветвленных криптовалют, а также последние технологические достижения могут преподнести сюрпризы в виде двойных расходов. Поэтому вы должны защитить себя, совершая транзакции в безопасных блокчейнах криптовалюты. И, как правило, подождите, пока майнеры подтвердят транзакции, прежде чем выпускать свои токены, товары или услуги.