Что такое подтверждения биткоина и сколько их ждать?
При попытке отправить или получить средства пользователи сталкиваются с таким понятием, как подтверждение сети. В этой статье мы подробно разберем, что это такое, и почему в некоторых случаях подтверждения могут занимать достаточно длительное время.
Поговорим о технических особенностях криптовалюты
Любая операция с криптовалютой биткоин осуществляется в блокчейне. Блокчейн (или цепочка блоков) представляет собой публичную базу, содержащую данные обо всех когда-либо проведенных транзакциях в сети.
Принципы работы блокчейна
Блокчейн — специальная система, лежащая в основе многих криптовалют и в других разработках
Как это выглядит на практике?
Допустим, вы отправляете необходимое количество монет другому пользователю. Что происходит дальше?
Для успешного проведения транзакции биткоина, информация о ней должна быть включена в блок. Это и есть первое подтверждение. При этом, транзакция уже ушла из мемпула и записана в блокчейне биткоина, а пользователь может распоряжаться монетами. Второе и последующие подтверждения подтверждают уже не саму транзакцию, а блок, в который она включена, защищая от попыток двойного расходования средств.
Почему подтверждений именно 6?
Подобную схему работы изначально заложили разработчики классического биткоин-клиента. Ее цель – предотвращение «Атаки 51%» или «атаки двойной траты», когда злоумышленники могут отменить уже проведенную транзакцию. Если какая-либо организация или группа хакеров будет обладать более 50% хешрейта, они смогут изменить порядок транзакций, а это приведет к сбоям в работе и к проблеме двойного расходования средств. Отметим, что в случае с биткоином проведение такой атаки практически невозможно и экономически нерентабельно, поскольку потребует больших затрат.
Почему транзакция не проходит мгновенно?
В обычных условиях генерация блока занимает около 10 минут. Именно столько времени требуется для получения первого подтверждения сети. Но в период высокой загрузки это время может значительно растягиваться. Происходит это из-за очереди в мемпуле.
Мемпул биткоина – это набор всех транзакций, которые ожидают своего подтверждения. Вы хотите отправить монеты, ваша транзакция попадает в мемпул и ждет добавления в новый блок майнерами. Майнеры собирают отдельные транзакции в блок, чтобы записать в блокчейн. При этом, размер блока в биткоине ограничен 1 мегабайтом. И, если транзакций в мемпуле слишком много, ваша операция может не попасть в ближайший блок и встает в очередь.
Как это выглядит на примере, и что происходит, когда в мемпуле накапливается слишком много транзакций?
В этом случае у майнеров появляется возможность выбирать для подтверждения те транзакции, в которых установлен максимальный размер комиссии. И, в первую очередь, майнеры отберут транзакции, в которых пользователи заплатят более крупный сбор. А всем остальным придется ждать один или несколько блоков.
В этой ситуации неопытные пользователи начинают волноваться. Ведь прошло уже более 30 минут, а их транзакция так и не подтвердилась. А причина очень простая – в мемпуле биткоина слишком много транзакций с высокой комиссией.
Неподтвержденные биткоины могут оставаться в мемпуле по несколько суток. Срок относительно большой, но он вполне сравним с банковскими переводами, которые также занимают несколько рабочих дней.
В истории биткоина были моменты, когда нагрузка на сеть зашкаливала, а количество транзакций в мемпуле превышало 100 000 в сутки. Как же проверить, насколько загружена сеть на текущий момент? Для этого достаточно перейти на страницу нашего биткоин эксплорера и в блоке «Статистика мемпула» посмотреть текущее количество транзакций в мемпуле.
Это все транзакции, которые ожидают подтверждения, а майнеры будут выбирать для включения в блок те из них, в которых установлена наибольшая комиссия. Наглядно это показано на диаграмме:
Если вся диаграмма зеленая — это значит, что все текущие транзакции в мемпуле могут войти в ближайший блок, и достаточно минимального уровня комиссии. Если же на диаграмме присутствуют желтые или красные столбики — это означает что совокупный объем мемпула превышает допустимый размер блока, все текущие транзакции просто физически не смогут войти в следующий блок. Часть транзакций подтвердится в течение 3 — 6 блоков (желтые столбики), а оставшиеся могут зависнуть на неопределенное время (красные столбики)
Почему не все платформы требуют 6 подтверждений транзакции?
Каждый сервис может устанавливать собственное количество подтверждений, необходимых для совершения платежа. Например, одна из крупнейших бирж Binance сократила необходимое количество проверки подтверждения биткоин-транзакций до 1 при вводе средств и 2 при выводе. Криптобиржа Bybit также зачисляет депозиты после получения 1 подтверждения. А у Bitfinex действует прогрессивная шкала в соответствии со статусом пользователя: 3 подтверждения транзакций биткоина для стандартной учетной записи, 2 – для верифицированных пользователей и 1 – для учетной записи типа “Инвестор”.
Как управлять скоростью проведения транзакций?
Для того, чтобы управлять своими транзакциями максимально эффективно, рекомендуем подробнее разобраться в работе блокчейна биткоина. Несмотря на кажущуюся сложность процесса, вы действительно можете управлять скоростью проведения транзакции.
Отдельное внимание рекомендуем уделить подбору размера комиссий. В моменты высокой нагрузки (например в декабре 2017 года) средняя стоимость одной транзакции достигала $58. И, если для перевода $1 млн такая комиссия вполне приемлема, то при отправке $100 на счет, вы бы получили только $42.
Создание альтернативных криптовалют для решения проблемы
Проблемы со скоростью проведения транзакций делают крайне неудобным использование биткоина в качестве повседневного платежного средства. Представьте, вы захотели выпить чашечку кофе, отправили за нее деньги, а транзакция прошла только спустя несколько часов (при этом, курс биткоина мог значительно измениться). Для решения этой серьезной проблемы ряд разработчиков создали альтернативные криптовалюты, основанные на программном коде биткоина.
Одна из таких криптовалют, под названием Litecoin (LTC), представляет собой форк биткоина. Главное отличие LTC от первой криптовалюты заключается в высокой скорости обработки блоков (в 4 раза быстрее, чем у BTC). Это делает Litecoin более удобным средством для повседневных оплат. Кроме того, комиссии в сети значительно ниже.
Еще одна криптовалюта, основанная на исходном коде биткоина, называется DASH. Основная идея создателей заключалась в улучшении алгоритма биткоина, особенно в части анонимности и скорости проведения транзакций. Операции в сети DASH осуществляются практически мгновенно при помощи мастерноды, в отличие от BTC, где на подтверждение транзакции майнерами уходит определенное время.
Dash (digital and cash) — это платежная система на основе блокчейна, включающая в себя децентрализованную автономную организацию (DAO).
Подведем итоги?
Первая криптовалюта продолжает доминировать на рынке, занимая 60% в общей капитализации всех криптовалют. В этом материале мы подробно рассмотрели важную тему о подтверждениях в сети биткоина, зачем они нужны, и почему их иногда приходится долго ждать. Итоги таковы: если вам нужно, чтобы транзакция прошла как можно быстрее, установите высокую комиссию. Если сроки позволяют — можно немного подождать и сэкономить, снизив комиссию.
Михаил Голиков
Что такое подтверждение транзакции в сети и сколько их нужно?
Примерно каждые десять минут создается новый блок и добавляется в блокчейн через процесс майнинга. Этот блок проверяет и записывает все новые транзакции. Это значит, что они подтверждаются сетью Bitcoin.
Например, если вы отправляете кому-то один биткоин, эта транзакция останется «неподтвержденной», пока не будет создан следующий блок. После создания, проверки и включения новой операции в этот блок, она будет иметь одно подтверждение. Примерно каждые десять минут после этого создается новый блок, и операция подтверждается сетью Bitcoin. Хотя некоторые услуги мгновенные или требуют только одного подтверждения, многие транзакции потребуют больше, поскольку каждая верификация значительно снижает вероятность отмены платежа.
Сколько подтверждений достаточно?
Трейдеры и биржи, которые принимают биткоины в качестве оплаты, могут устанавливать свой собственный порог относительно того, сколько блоков потребуется, чтобы средства считались подтвержденными.
Рекомендуется подождать, по крайней мере, 6 подтверждений, чтобы быть уверенным на 99,9%, что ваша транзакция не будет отменена — для этого требуется примерно 1 час. Цифра 6 взята произвольно и считается, что данное количество блоков является достаточным для того, чтобы обезопасить систему от случайных злоумышленников.
0 — Платежи с нулевым количеством подтверждений могут быть отменены.
1 — Одной верификации достаточно для небольших платежей менее 1,000 долларов США.
3 — Достаточно для выплат в размере $1,000 – $10,000. Большинство обменов требуют 3 подтверждения.
6 — Достаточно для больших выплат между $10,000 – $1,000,000. Шесть является стандартным количеством для большинства транзакций, которые считаются безопасными.
60 — Предлагается для крупных платежей более 1,000,000 долларов США.
Как проверить подтверждения?
После совершения перевода кошелек предоставляет вам возможность просмотреть транзакцию в проводнике или дать вам идентификатор (ID). Он выглядит следующим образом:
7a43510802e113b7059851ef0a8a5c3625db37541861dd982f56253b2d5c4ff9
Чтобы проверить количество подтверждений для, необходимо вставить ID-номер в проводник, например, blockchain.info:
Далее нажмите «Ввод» и вы увидите более подробную информацию о транзакции:
Какое среднее время подтверждения?
Есть вероятность более чем 60%, ваша транзакция будет подтверждена в течение 10 минут, если вы заплатите достаточно высокую комиссию:
Что, если ваша транзакция не подтверждается длительное время?
Если ваша транзакция не подтверждена в течение нескольких часов, необходимо просто подождать. По истечении 72 часов вы можете повторно отправить транзакцию.
Підписуйтесь на наші сторінки у соцмережах та читайте актуальні новини з сайту «MyCrypter»
Головна Довідник Что такое подтверждение транзакции в сети и сколько их нужно?
Bitcoin Transactions
In this post we will explore what is a bitcoin transaction and how it works.
What is a Transaction
A transaction is the fundamental building block of the bitcoin blockchain. It’s the operation in which we transfer value from one party to another in a secure way. Here you can see a random transaction with one confirmation in the blockchain:
This chart shows some of the information that a transaction has, but it doesn’t reflect how it really works. It’s just a way to put the information together in a readable user friendly way.
We will go over some concepts from this chart, and we’ll look at the fact that bitcoins, at a protocol level, aren’t “coins” at all. Nor is there any bitcoin balance or storage, the definition of bitcoin as “a distributed ledger” is very important, because it’s exactly that, a ledger that records transactions with inputs and outputs!
A note about bitcoin: One bitcoin can be divided down to eight decimal places, and each of the individual decimals are called “satoshis”. So in a transaction where I send 0.00000045 bitcoin I can say that I spent 45 statoshis.
A transaction is composed by inputs and outputs. These aren’t just addresses as the chart shows. From now on, we’re going to call the outputs the proper way: Unspent Transactions Outputs or UTXO’s. In the Bitcoin protocol, the transaction inputs are also UTXO’s from a previous transaction, therefore the UTXO is the fundamental building block of a bitcoin transaction.
A side note, for the sake of clarity, we say that inputs are UTXO’s from previously transactions, which is true, but later on this article, we’ll see that there’s also the unlocking script that lives in the UTXO acting as input.
Are you getting a basic idea on how the bitcoin blockchain works yet? Remember, it’s a distributed ledger that has a record of every UTXO made. Now it’s clearer why there aren’t any bitcoins or storage, it’s all in the transaction history!
For example, for a crypto wallet to show your “balance”, it has to look in the blockchain for the UTXO’s which your private key controls. Then, it adds up the values of the UTXO’s and shows you the final balance. Similarly when you want to spend one bitcoin, your wallet will check if you have enough UTXOs that adds up to one Bitcoin. If you have enough, the wallet will create another transaction with these UTXO’s as inputs.
Crypto wallets and light clients usually tracks the UTXO’s of the private keys they own. Full node clients track all UTXO’s of the network in their UTXO set.
The UTXO is a discrete and indivisible unit of value denominated in satoshis. The first question that comes to mind when we say that UTXO’s are indivisible: what happens when we try to spend less than the UTXO’s that we own? Let’s see an example:
I want to send Sarah, 0.5 Bitcoins, and in my Balance I have 1 bitcoin that came from only one UTXO, so I can’t divide the UTXO of one bitcoin, I must send the entire bitcoin in the transaction, and create another output as my change. Similar as when we pay with a five dollar bill something that is only two dollars, we can’t divide the five dollar bill, so we pay with the entire five dollar bill and receive three dollars as change. This is an important aspect about bitcoin transactions.
If we watch again the bitcoin transaction chart, we’ll see that there’s a total input of 4.32123876 BTC from a previously UTXO, in the estimated bitcoin transacted we see 0.1 BTC, and in the outputs we can see 4 different addresses, probably the one with 0.1BTC is the receiver of the transaction, and the other three are random generated address to give back the change. For security and anonymity reasons some wallets will generate random bitcoin addresses and divide the change payments in order to make it more difficult to track the spent funds, that’s also why we see an “estimated” bitcoin transacted.
There’s one exception for transactions that don’t consume a previously generated UTXO, and these are called “coinbase” transactions. This is the first transaction in a block and are generated from the fees of the transactions in that block to be paid to the miner.
Transaction Fees
Did you notice the difference between the total input and the total output? If you look at the Fee value of the transaction, you will see that the fee is the difference between the total input and total output. So the formula for calculating fees is:
Total Input — Total Output = Fee
And this is important, because it is something that must be calculated “on the fly”, there isn’t any space in the transaction structure where the fees are saved. When the transaction is being constructed, we must create an output that is a bit less than the input in order to let the miners know the fees that the transaction carries.
Most of the transactions include a fee that is meant to compensate the miners for securing the network. It’s also beneficial to stop spammers for sending constant transactions. The fees are collected by the miner who includes the transactions on the next block of the blockchain. Another important aspect is that fees aren’t mandatory, however transactions with zero fees rarely get mined and sometimes will not even be propagated across the network.
How the size of the fee is calculated?
In order to choose the difference between total input and total output, we have to see how complex the transaction is. The size of the fee is calculated from the size of the transaction in kilobytes, not by the amount of bitcoin being transacted. A transaction of 10 BTC could have less fees that one with 2 BTC.
Nowadays, there are certain services that calculate the size of the fee dynamically, based on user input. The user can choose between high, medium and low fees. The size of the fee affects the processing priority of the transaction, this means that miners will look for transactions that have higher fees to be mined first because they will collect more money, therefore lower fees will result in more time processing.
How UTXOs can be spent or how transaction inputs are created?
In this section, we explore the mechanism that Bitcoin has in order to validate that an UTXO is spent by the it’s owner, and after being spent, the receiver has ownership of the UTXO created as output. For this, every transaction, has on a very basic level a cryptographic puzzle or locking script that serves as a validator of the transaction. For the locking script to be solved, there’s an unlocking script also. Let’s see them with more detail:
The Locking and Unlocking Scripts
The locking script specifies a condition placed on an UTXO. This condition is the one to be met in order to spend this output in the future. The unlocking script on the other hand, satisfies the conditions placed on an output by a locking script and allows the output to be spend. The unlocking script exist in the transaction input.
Как проверить статус Bitcoin транзакции?
Примерно каждые десять минут в блокчейн добавляется новый блок, который состоит из множества транзакций. Однако, бывают случаи когда происходят задержки, в результате которых время подтверждения может вырастать до нескольких часов. Например, 20 апреля 2021 года время подтверждения одного из блоков составило более 2-х часов. В такие моменты владельцы BTC, незнакомые с процессом проведения транзакций в сети bitcoin могут поддаться панике раньше времени.
Отметим, что майнеры самостоятельно выбирают какая транзакция будет включена в ближайший блок, а какая нет. В основном их выбор основывается на финансовых стимулах. Так, чем выше оплаченная за транзакцию комиссия — тем выше шансы добавления транзакции в блок. После того, как этот блок будет создан и новая транзакция будет проверена, она получит подтверждение со стороны сети.
Встает вопрос: как увеличить комиссию за транзакцию? Здесь все зависит от используемого кошелька и его интерфейса. Например, в Matbea все сделано максимально привычно даже для пользователя, который никогда ранее не пользовался программным обеспечением для криптовалют.
Нужно выбрать приоритет транзакции: низкий, средний или высокий. Чем выше приоритет, тем меньше времени уйдет на обработку транзакции и тем быстрее монеты придут на кошелек получателя. Но тем и выше будет стоимость такой транзакции. Однако, если через Matbea отправлять средства другому пользователю данной площадки, то такой перевод может быть выполнен по номеру телефона или email, а сами цифровые активы поступят мгновенно и без комиссии. Соответственно, чтобы получить такой кошелек в свое пользование, нужно пройти регистрацию по номеру телефона или электронной почте.
Аналогично все выглядит при создании транзакций и в мобильном приложении Matbea. Скачать его можно в Play Market и apple Store совершенно бесплатно.
В случае, если у пользователя возникнут вопросы, то команда подготовила подробную видеоинструкцию .
Все транзакции и соответствующие адреса кошельков записываются в публичный блокчейн, в данном случае Bitcoin. Они открыты и доступны для всеобщего обозрения. Чтобы убедиться в том, что средства действительно были отправлены, получатель перевода может запросить у отправителя идентификатор (ID) транзакции.
Хотя некоторые услуги предоставляются мгновенно или требуют только одного подтверждения, многим компаниям потребуется больше, поскольку каждое последующее подтверждение значительно снижает вероятность отмены платежа. Самое оптимальное количество подтверждений равняется шести, что занимает около часа.
Что такое подтверждение транзакции?
Подтверждения транзакции Bitcoin — это количество блоков, добавленных в блокчейн, которые сеть Bitcoin приняла после выполнения определенной транзакции. Чем больше блоков добавлено — тем больше подтверждений, а значит тем более безопасна транзакция.
Как работают подтверждения в сети?
При отправке монет другому пользователю, отправитель предоставляет в сеть адрес (открытый ключ), с которого произошла отправка BTC, и подписывает его своим закрытым ключом, формируя так называемую асимметричную пару ключей.
Затем майнеры проверяют открытый ключ, чтобы убедиться в подлинности подписи. Если все верно, они добавят его в добываемый блок, тем самым «подтверждая» транзакцию. В случае, если будет выявлено мошенничество, майнеры признают этот факт и полностью проигнорируют этот блокчейн. Дальнейшие блоки добавляться не будут.
Если эти «другие» майнеры считают предыдущий блок действительным, они впоследствии добавят свои блоки в цепочку, тем самым дополнительно подтвердив исходную транзакцию. В некотором смысле, придавая ей больший авторитет.
Сколько Bitcoin нужно подтверждений?
Шесть подтверждений считаются достаточно безопасными и надежными, чтобы считать транзакцию действительной и постоянной. Первоначальный блок транзакции определяется как первое подтверждение, поэтому рекомендуется подождать, пока не будут добавлены пять дополнительных блоков, в результате чего получится блокчейн из шести блоков. На этом этапе вероятность того, что ваша транзакция будет признана недействительной, составляет менее 0,1%.
Новые блоки добавляются в блокчейн в результате майнинга, который необходим для защиты сети и обработки транзакции BTC. Чем больше сумма транзакции — тем больше подтверждений вам следует дождаться. Например, при отправке сумм свыше $1 миллиона рекомендуется дождаться 60 подтверждений, в то время как всего трех подтверждений может быть достаточно для транзакции на сумму менее $1 тысячи (на том основании, что это просто не оправдает ни по времени ни с финансовой стороны действия злоумышленника для такой небольшой суммы).
Как проверить подтверждения?
После успешного выполнения транзакции по-прежнему можно просматривать детали транзакции путем проверки ID транзакции. Чтобы узнать ID транзакции достаточно посетить сайт https://blockchain.com или https://blockchair.com/ru , чтобы выполнить поиск всех предыдущих платежей, произведенных в блокчейне.
В области «Поиск» вам необходимо ввести информацию, относящуюся к вашей BTC-транзакции, обычно это адрес, на который был произведен платеж.
Далее в окне отобразится список всех Bitcoin-транзакций, связанных с этим адресом, от самых новых до самых старых. Определить необходимую можно по сумме перевода.
Если транзакция не найдена, значит, средства не были отправлены, в таком случае необходимо связаться с провайдером кошелька отправителя.
Количество неподтвержденных Bitcoin-транзакций можно посмотреть здесь: unconfirmed-transactions.
Как ускорить транзакцию биткоина?
Воспользуйтесь нашим ускорителем Bitcoin Транзакций. Это сервис для ускорения подтверждений в сети Bitсoin. Он «проталкивает» ваши неподтверждённые транзакции. Просто введите ID транзакции и ваш перевод добавится в следующий блок, добываемый разными крупными пулами. Даже если комиссия Вашей транзакции очень мала, у вас есть шанс быстрее получить подтверждение. Бесплатно!