What is Double Spending & How Does Bitcoin Handle It?

Биткойн стремительно набирает популярность и распространение по всему миру. Он пересматривает представление о том, как мы используем деньги, став первой в мире полностью функциональной цифровой валютой.

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

Позвольте мне упростить концепцию...

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

Что означает двойная трата?

Что означает двойная трата биткоинов

Двойные расходы - это трата одних и тех же денег дважды.

Давайте рассмотрим этот пример:

Вы идете в Starbucks и заказываете капучино стоимостью 10 долларов. Вы платите наличными. Теперь эти 10 долларов наличными находятся в хранилище Starbucks. Вы просто не можете потратить те же 10 долларов в другом месте на другую покупку.

Если только вы не украдете его...!!!

Когда вы расплатились купюрой в 10 долларов, поставщик услуг в Starbucks мгновенно подтвердил, что вы заплатили, и вы получили кофе в обмен на деньги.

Но биткойн - это цифровые деньги, а не физические наличные. Следовательно, транзакции биткоина могут быть скопированы и ретранслированы. Это открывает возможность того, что один и тот же BTC может быть потрачен его владельцем дважды.

Как?

В нашем примере со Starbucks вы платили наличными, поэтому платеж был подтвержден и проверен мгновенно другим человеком. Но в случае с цифровой валютой, такой как BTC, если этот механизм проверки отсутствует, это может привести к двойным тратам.

Любой может просто скопировать эти цифровые деньги и заплатить в другом месте.

И вот здесь-то и кроется уникальное изобретение...

Биткойн, хотя и является цифровой валютой, решает проблему копирования и траты дважды.

Как биткойн справляется с проблемой двойных трат

Как биткойн справляется с проблемой двойных трат

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

В блокчейне биткойна хранится хронологически упорядоченная, отмеченная временем книга транзакций с самого начала его работы в 2009 году.

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

Давайте посмотрим, как сеть Bitcoin предотвращает двойные траты:

Предположим, у вас есть 1 BTC, который вы пытаетесь потратить дважды.

Вы совершили транзакцию в 1 BTC для продавца. Теперь вы снова подписываете и отправляете тот же 1 BTC на другой Bitcoin-адрес, чтобы попытаться обмануть продавца.

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

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

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

Вы можете сказать, что это несправедливо для продавца, так как транзакция может не получить подтверждения. Да, такое может случиться!!!

Поэтому продавцам рекомендуется ждать не менее 6 подтверждений.

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

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

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

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

Почему торговец может быть уверен?

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

Как происходят атаки с двойными расходами

  • Атака 51%

Если злоумышленник каким-то образом завладеет 51 % хэш-мощности сети, может произойти двойное расходование средств.

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

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

  • Гонка Атака

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

Если вы, как торговец, не ждете подтверждения платежа, то в таком случае вероятность того, что вы получили двойную потраченную монету (и не получите эти деньги), составляет 50 %.

Давайте посмотрим, как...

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

Когда клиент совершает обе транзакции, обе они попадают в пул неподтвержденных транзакций. Та транзакция, которая будет проверена первой и получит 6 подтверждений, будет принята, а другая будет отброшена.

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

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

Надеюсь, эти знания о биткойне помогут вам использовать его безопасно.

Сообщите мне о своих мыслях и отзывах в разделе комментариев ниже.

И не забудьте поделиться этим постом со своими друзьями на Facebook и Twitter!

Also, read:

Помогите нам улучшить. Было ли это полезно

Спасибо за ваш отзыв!

20 мыслей о "Что такое двойная трата и как с ней справляется биткойн?"

    1. DJ AFINO

      вот почему Bitcoin Cash НЕ правдоподобен! Атаки 51% гораздо более возможны, если BCASH имеет гораздо меньшее количество узлов, а хэш-мощность распределяется равномерно между 4 или 5 крупными майнинговыми пулами... только 4 или 5 из них должны сговориться друг с другом, чтобы совершить 51% атак на сеть - BCASH не является истинным представителем децентрализации - поддержите Bitcoin Core - запустите полный узел, и hodl Litecoin, пока вы в этом разбираетесь тоже

  1. Иони Аппельберг

    Спасибо за статью! Я не могу понять, как можно удвоить расходы даже без блокчейна. Почему ваши средства просто не вычитаются из кошелька, когда вы совершаете платеж? Вы же не можете совершить двойную трату через кошелек Jaxx, Copay или mycelium, так как же вы собираетесь скопировать свою транзакцию и снова отправить тот же биткоин куда-то еще? Почему проблема двойной траты вообще является проблемой?

    1. Луки

      В ноябре 2013 года было обнаружено, что майнинг-пул GHash.io, по-видимому, неоднократно занимался мошенничеством с платежами против BetCoin Dice, сайта азартных игр [https://bitcointalk.org/index.php?topic=327767.0] . Сайты Dice используют одну транзакцию для каждой ставки и не ждут подтверждений. GHash.io заявила, что провела расследование и нашла недобросовестного сотрудника, который занимался двойными тратами, и была уволена. Однако никаких доказательств этому предоставлено не было, и инцидент навсегда повис над пулом. Тем не менее, похоже, что это не сильно повлияло на их долю рынка: большинство майнеров, вероятно, вообще не слышали об этом инциденте.

    2. Палаш

      Тогда зачем вообще использовать биткойн? Банки делают то же самое. Вы доверяете третьей стороне, и теперь от jaxx и copay полностью зависит, как распорядиться вашими средствами. Нет никакой децентрализации

  2. Хуан

    Я считаю, что меня обманул аттакер, как вы говорите. Я попробовал на сайте doubler.block-chains.me удвоить свои инвестиции в размере 0,01 биткойна, которые якобы получу через 24 часа. Но этого так и не произошло. Кто-нибудь еще был оторван этим методом в блокчейне тоже. Пожалуйста, помогите мне понять, я в бешенстве.

    1. Лукас

      Нет, это не атака на 51%. Вы просто отправили свой биткоин мошеннику, и он, очевидно, забрал его.

  3. M3kw

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

    1. Судхир Кхатвани

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

  4. Marquimarc

    Здравствуйте. 6 декабря я купил биткоины в компании Bit2me.com. Я уже покупал ранее и у меня не было проблем. Но дело в том, что 6 числа я отправил им две банковские транзакции с одинаковой стоимостью 10.000 евро каждая. Я купил их с разницей в 4 минуты. Но они отправили ту же сумму биткоинов в то же время на мой кошелек. Теперь я ничего не могу сделать, потому что они говорят, что отправили биткоины на мой кошелек, но были задержаны как дважды потраченные. Они сказали мне подождать, но я очень волнуюсь, потому что это большие деньги 🙁 Я не знаю, что делать. Как вы думаете, я потеряю все свои деньги или нужно просто подождать, и я получу все?
    Любая помощь будет оценена по достоинству.

    1. Судхир Кхатвани

      если оба адреса принадлежат вам, не стоит беспокоиться.

      1. Кэрол Си

        Спасибо за информацию!!! Я в глубокой беде и замешательстве и нуждаюсь в вашем совете срочно пожалуйста! Кто-то дал мне адрес кошелька/баркоды, чтобы отправить 10 Btc. Он сказал мне отправить сначала 0.01 Btc, и он получил его, а через минуту после этого я понял, что оставшиеся Btc были переведены на "неизвестный адрес кошелька" одновременно?! Как такое могло произойти??? Мне нужен ваш профессиональный совет, пожалуйста, спасибо!!!

        1. Судхир Кхатвани

          Это невозможно, если только вы не показали этому человеку свои семена или закрытые ключи!!!

    2. бурак

      Здравствуйте, я только что нашел это:

      существует способ спасти сломанную передачу. Перезапуск кошелька и немного терпения обычно решают проблему.

      Как остановить/отменить транзакцию Bitcoin без подтверждений:

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

      Надеюсь, вы сможете вернуть свои монеты.

  5. Джим С.

    В этой статье предполагается, что любая попытка двойного расходования средств связана с попыткой отправить один и тот же биткойн на ДВА (2) разных адреса. Но что вы знаете о предполагаемых попытках двойного расходования средств, которые были отправлены на один и тот же адрес более одного раза?

    Совсем недавно я попытался "зачистить" бумажный кошелек с 0,5 BTC на нем и отправить всю сумму на свой счет в Coinbase. Для этой попытки я использовал кошелек Mycelium для Android, и в прошлом я уже десятки раз использовал кошелек Mycelium для этой цели без каких-либо проблем. Однако в этот раз все было иначе; когда я повторно и в третий раз отсканировал приватный ключ бумажного кошелька в утилите для зачистки Mycelium, он не был зарегистрирован как зачищенный, хотя первоначально в обеих попытках появилось сообщение, что транзакция была успешно отправлена.

    На самом деле, однако, он не мог быть успешно отправлен по трем (3) очень веским причинам:

    1) Blockchain.INFO по-прежнему показывал, что средства полностью доступны на бумажном кошельке.
    2) Ни одна из двух попыток первоначальной отправки не была зарегистрирована через мой счет Coinbase.
    3) И, как отмечалось выше, приложение кошелька Mycelium все еще показывало оставшиеся средства.

    Поэтому, имея все основания полагать, что средства так и не были успешно выведены из бумажного кошелька, я предпринял ТРЕТЬЮ попытку вывести средства из кошелька - и на третьей попытке все получилось. Blockchain.INFO показывал, что средства были отправлены и в настоящее время регистрируются как "UNCONFIRMED" транзакция, причем неподтвержденная часть меня не удивила.

    И вот примерно через час я снова захожу в свой аккаунт Coinbase, чтобы посмотреть статус транзакции. В данном случае компания Coinbase использует сайт LIVE.BLOCKCYPHER.COM в качестве проводника блокчейна, в отличие от Blockchain.INFO или некоторых других сайтов-проводников. Когда я перешел по ссылке на веб-страницу проводника, он выдал следующее зловещее сообщение:

    "ВНИМАНИЕ: Эта транзакция была дважды проведена d46fe0c4cb4bb0c2691d44628064..., будьте крайне осторожны при принятии этой транзакции!".

    Следует уточнить, что в трех попытках перевода средств с бумажного кошелька на счет Coinbase я использовал ТОЛЬКО ОДИН адрес получения биткоинов с моего счета Coinbase. Я не пытался отправить биткойн более чем на один адрес ни в одной из трех попыток.

    Так СЕЙЧАС, где же здесь логика двойной траты, по крайней мере, в отношении этой статьи? Хотя я могу ошибаться, но мне кажется, что автор статьи не особо разбирается в технологии блокчейн, и поэтому, возможно, на этом форуме не будет компетентного ответа на этот вопрос.

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

    Есть ли у меня веские основания полагать, что эта очевидная техническая проблема, созданная самим кошельком Mycelium Android, будет когда-нибудь исправлена в течение определенного периода времени? Или эти виды предполагаемых транзакций с двойной тратой в конечном итоге навсегда застрянут и потеряются в "лимбе блокчейна" и никогда не будут исправлены?

    Во-первых, мой счет Coinbase продолжает показывать транзакцию в статусе "PENDING". Я предполагаю, что по истечении определенного периода времени, будь то день, неделя, месяц или что-то еще, мой счет Coinbase в конечном итоге будет фактически "отключен" от транзакции. Если это произойдет, то единственное, что я знаю, - это то, что единственный способ исправить ситуацию - вернуть 0,5 BTC на первоначальный адрес бумажного кошелька, где я, предположительно, смогу предпринять еще одну попытку провести транзакцию.

    В данном случае речь идет о 0,5 биткойна - целая ПОЛОВИНА биткойна! Если потребуется неделя, месяц или даже год, чтобы все исправилось, я думаю, что, честно говоря, у меня есть время подождать, и я не особенно тороплюсь. Очевидно, что это будет большой кусок денег, если я узнаю, что в итоге потерял их из-за какой-то невероятно РЕТАРДНОЙ схемы, встроенной в эту так называемую "технологию блокчейн", которая не может определить "постфактум" законность того, действительно ли данная сумма биткойнов была успешно потрачена с любого данного адреса биткойна.

    Будет интересно посмотреть, получу ли я когда-нибудь доступ к своим полу-биткоинам. Если пройдет месяц или два или что-то в этом роде, а средства все еще будут заперты в "блокчейн-лимбе", то я начну считать, что деньги фактически безвозвратно и безвозвратно потеряны из-за того, что, безусловно, является ОЧЕНЬ СЕРЬЕЗНЫМ СБОЕМ во всей этой истории с биткойнами.

    Так что, если говорить в целом об основе вашей статьи, которая заключается в предположении, что биткойн является первой в истории успешной цифровой валютой ТОЛЬКО потому, что ему удалось решить проблему "двойной траты", то это вполне может быть правдой... КАК бы то ни было, решение проблемы двойных трат - это одно; но тогда обнаружение того, что в результате решения одной проблемы она в конечном итоге приводит к не менее серьезной проблеме эффективного постоянного "замораживания активов" людей, все равно покажет, что весь протокол Биткойна является массово несовершенным с технологической точки зрения.

  6. Кристоф

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

  7. Надя Хан

    Привет, Судхир,

    Я прочитал "Освоение биткоина", но все еще сомневался по поводу Double Spending, после прочтения вашей статьи все стало понятно. Будьте здоровы

  8. Антика Эшья Аланлар

    Что препятствует этому или что должно произойти, чтобы предотвратить двойные расходы?

    1. Харш Агравал

      Дождитесь 6 или более подтверждений, тогда вы не столкнетесь с этим.

Оставить комментарий

Ваш адрес электронной почты не будет опубликован. Обязательные поля отмечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши комментарии.

Подпишитесь, чтобы оставаться в курсе событий

Изучайте прибыльную торговлю криптовалютами и получайте наши бесплатные ресурсы, чтобы освоить автоматические боты 🤖 торговые стратегии.

(Мы уважаем вашу конфиденциальность).

Ресурсы

Логотип Coinsutra

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

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

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



Прокрутить к верху
76 Shares