На заре своего развития сеть биткоина была быстрой, независимой и распределенной платежной системой. Позднее криптовалюты обрели бешеную популярность, транзакций стало много, а размер блока оставался ограниченным и не мог вместить все за один раз. Стали образовываться очереди. Пользователям приходилось ждать от нескольких часов до нескольких дней.
Процесс перевода
Перевод производится по следующему алгоритму:
- один человек направляет деньги другому человеку;
- информация о транзакции распространяется по сети и попадает в блоки, закрытый блок — гарантированно неизменный;
- если перевод корректен и не противоречит информации, содержащейся в блокчейне, то получаемые данные обновляются в общей базе данных;
- новые блоки включаются в цепь блокчейн, и получателю приходит подтверждение, что на его кошелек зачислена криптовалюта.
Необходимо дождаться хотя бы 3-х подтверждений от сети. Если этого не происходит, у принимающей стороны нет гарантии, что транзакция не будет отменена.
Не спешите платить за ускорение Вашей транзакции
Тем не менее регулярно новички и даже некоторые опытные пользователи криптовалюты сталкиваются с этой проблемой, но мы всегда отвечаем им: «Не спешите платить за ускорение Вашей транзакции». Не стоит этого делать, даже если вы столкнулись с людьми, которые предлагают гарантированный и быстрый результат всего за 100-200 долларов.
В данном случае правильнее будет попытаться воспользоваться бесплатными методами ускорения перевода. Тем более, что большинство подобных «специалистов-помощников» пользуются теми же вариантами, которые мы опишем по ходу этой статьи.
Время транзакции биткоина
Пользователи биткоина: майнеры, трейдеры и остальные, сталкиваются с двумя главными проблемами – скорость и комиссии.
В 2009 году, когда биткоин только появился, транзакции проводились за доли секунд, даже с нулевыми комиссиями. Сейчас сеть не изменилась, но нагрузка на нее возросла в миллионы раз, что привело к большим объемам неподтвержденных transactions (у них нет отрезка времени истечения, подтверждение транзакции может случиться даже через несколько лет).
Когда транзакция попадает в сеть, то сначала она должна пройти проверку и подтверждение всеми возможными биткоин-узлами. После всех проверок, btc transaction поступает в очередь в мемпул (Memory Pool — пул памяти) и находится в режиме ожидания до тех пор, пока майнер не включит ее в другой блок.
Memory Pool – это место, где сохраняются все ожидающие подтверждения транзакции.
Мемпул как раз и представляет наибольшую сложность сети bitcoin, создает проблемы скорости подтверждения. Темп майнинга очередных блоков меньше, чем транзакции, добавляемые в мемпул. Из-за этого происходит «пробка», и ожидать подтверждений можно часами, сутками и месяцами, в зависимости от размера tps и комиссий.
От чего зависит скорость транзакции в биткоине
Количество транзакций биткоин в секунду
Выше уже упоминался такой термин, как «пропускная способность». Он обозначает количество транзакций, которые система может обработать за единицу времени.
Ни для кого не секрет, что число пользователей биткоина постоянно растет. При этом пропускная способность ее остается прежней. Если обратиться к сайту blockchain.com, то мы можем увидеть статистику, которая показывает количество неподтвержденных транзакций и количество транзакций в секунду.
Количество неподтвержденных транзакций
// Источник: Blockchain.com
На момент написании статьи это значение составляет лишь около 4 транзакций в секунду. В платежной системе Visa, для сравнения, это число превышает 1700, при этом инженеры уже не первый год говорят о возможности расширить пропускную способность до 24000 в секунду. Однако не все криптовалюты настолько медленные.
Так, например, Ripple способен проводить 1500 транзакций в секунду, а NEM целых 4000.
Зачем ускоритель транзакций биткоин
Раньше время для подтверждения в мемпуле было 72 часа, но из-за растущей нагрузки этот период растянулся на 2 недели. Появился риск того, что после 14 дней транзакция удалится из mempool и будет возвращена. За показателями состояния мемпула (как и за другими характеристиками сети, например, сложностью) можно наблюдать на специальных ресурсах.
Btc ждет подтверждения слишком долго, если:
- Сеть загружена из-за сильной волатильности на рынке;
- Осуществляется регулярный перевод мелких сумм (маленький приоритет tps);
- Выбрана низкая комиссия.
Но и транзакции с большой комиссией могут долго обрабатываться во время перегруженности сети.
Даже если tps не будет включена в блок, средства никуда не пропадут — биткоины будут возвращены обратно по тайм-ауту.
Что это такое
Криптовалюта Биткоин — виртуальные деньги, существующие только в электронной форме и построенные на открытом исходном коде. Участник интернет-сети может в любой момент посмотреть информацию о любой транзакции и убедиться в ее подтверждении другими участниками.
Для лучшего понимания, что такое подтверждение, разберем особенности транзакции в сети Биткоин. Структура имеет следующий вид:
- При проведении платежа сведения о сделке фиксируются в блок, добавляемый к общей цепи blockchain. Вес одного элемента находится не превышает 1 Мб.
- В каждом блоке находятся хэш добавленной в него транзакции с размером вознаграждения, а далее идет список остальных переводов.
- Майнеры используют имеющееся оборудование (АСИКи, видеокарты, арендуемые мощности) для поиска хэша и создания новых элементов цепи. Таким способом они подтверждают валидность сделки.
- После добавления шести новых узлов проверка считается завершенной.
Схема транзакции Биткоина
Как только все этапы пройдены, криптовалюта попадает на кошелек. Иными словами, деньги списываются с бумажника отправителя и переходят в собственность получателя. При отсутствии верификации перевод может «зависнуть», а со временем вернуться отправителю.
Количество подтверждений меняется в зависимости от обстоятельств, суммы и особенностей кошелька.
Выделим основные варианты по числу подтверждений:
- 0 — транзакция отменяется;
- 1 — одного подтверждения в сети Биткоин хватает для проведения операции на сумму до 1000 USD;
- 3 — число подтверждений при переводе от 1000 до 10 000 USD;
- 6 — стандартное число блоков для стандартных Биткоин-клиентов, актуально при сделках на сумму выше 10 000 USD;
- 60 — обязательное условие при переводе свыше 1 000 000 USD;
- 100 — при выплате вознаграждения за найденный блок;
- 120 — для зачисления на баланс кошелька.
Как правило, получатель должен подождать, пока не сформируется шесть блоков. Это занимает около 60 минут. Число выбирается не просто так, ведь для взлома сети потребуется не меньше 10% от всего хэшрейта.
Таким образом, подтверждение в сети Биткоин занимает от 10 минут до нескольких часов. При выборе оптимальной комиссии операция проходит в период от 20 до 60 минут. Указать точное время проведения транзакции невозможно, ведь этот параметр зависит от многих факторов (об этом ниже).
Проблема масштабирования сети биткоин
Чтобы поднять пропускную способность сети, разработчики регулярно проводят хардфорки и софтфорки. Сначала они представили Segwit, призванный оптимизировать blockchain и проводимые транзакции. Протокол имеет такой размер блока, чтобы в него помещалось в 2 раза больше транзакций, без увеличений его объема (напомним, размер одного блока 1 Мб).
На конференции в Нью-Йорке было принято решение провести хардфорк Segwit2x. После него объем блока должен был увеличиться до 2Мб. Но в 2022 году стало известно, что последнюю стадию форка отменили, результатом стало более 135 000 сделок в криптовалюте. Причина отмены — отсутствие договоренности о хардфорке между разработчиками.
Эффективным решением проблемы стало внедрение сети двусторонних платежных каналов Lighting Network.
Алгоритм этой сети позволяет сделать прозрачным транзакционные каналы связи между раздатчиками сети, участвующими в цепочке. Все участники блокчейна получают доступ к каналу операции.
Клиенты могут параллельно проводить действия по личным веткам сети, а в общий будут записаны только итоговые результаты. Нагрузка на сеть будет ниже, что увеличит пропускную способность. Пока технология запущена в тестовом режиме.
Segregated Witness
Если все вышеописанные способы были связаны с манипуляцией над комиссиями транзакций, то Segregated Witness или SegWit работает с масштабируемостью блокчейн.
SegWit представляет собой софт форк от разработчиков кошелька Bitcoin Core, который путем оптимизации размера транзакций решает проблему переполненности блоков, а, следовательно, и скорости подтверждения транзакций.
Софт форк (Soft Fork) – то, что предполагает изменение в коде операции, не затрагивая ядро ПО. Он изменяет правила проверки подлинности блока.
Segregated Witness исключает из структуры транзакции подписи, которые занимают около 47% операции, в результате чего транзакция становится легче, а, следовательно, почти вдвое больше сделок помещается в блок, ограниченный 1 Мб. Подписи же выделяются в отдельную структуру, именуемую «отдельным свидетелем».
Решение SegWit было включено в клиент Bitcoin Core 0.13.1 2016 года. В 2022 году Segregated Witn был активирован в сети Litecoin, а также в среде менее популярных токенов: Groestlcoin, Syscoin, DigiByte, Monacoin, Vertcoin.
Как ускорить транзакцию Bitcoin на блокчейн
Antpool
Пул Antpool — дочернее предприятие компании Bitmain, занимающейся изготовлением оборудования для майнинга. В пуле можно протолкнуть транзакцию биткоин.
Алгоритм действий следующий:
- Необходимо пройти регистрацию на сайте пула.
- Войдите в аккаунт и перейдите на страницу проверки транзакции.
- Укажите ID операции.
- Пропишите номер операции в формате HEX. Найдите свой перевод через сайт blockchain.info, добавьте к полученной строке код «?format=hex», введите в браузер и нажмите «Ввод». Система выдаст необходимое число.
- Наберите капчу и подтвердите.
Подтверждение операции происходит в следующие 2–10 блоков. Время ожидания транзакции составляет до трех суток. Минус в том, что учитываются блоки, которые получены пулом Antpool, а не добыты во всей системе. Возможности методики ограничены. Чтобы посмотреть статистику добычи виртуальной монеты, перейдите в раздел сайта «Статистика».
Ускоритель транзакций Bitcoin Antpool не всегда даёт ожидаемый результат.
ViaBTC
Ещё один путь — протолкнуть неподтвержденную транзакцию bitcoin с помощью пула ViaBTC. Площадка работает с 2016 года, за небольшой период времени ей удалось обойти многих конкурентов (даже более крупных).
Схема ускорения перевода на ViaBTC:
- Зайдите на сайт pool.viabtc.com.
- Перейдите в раздел «Инструмент», а после — «Ускоритель транзакции».
- Пропишите ID перевода.
- Укажите капчу и кликните на кнопку подтверждения.
Из-за высокого спроса на инструмент оформить заявку не всегда удаётся. Если всё-таки получилось оформить «заказ», подтверждение операции длится не больше 3-х суток, но на практике перевод занимает меньше времени — до 2–3 часов.
В ViaBTC есть ограничения: не больше 100 переводов в течение 60 минут. Они введены из-за большого спроса со стороны пользователей и перегруженности. Ограничение обновляется раз в час, поэтому заявку необходимо заполнить в течение последней минуты часа, например, между 10.59 и 11.00. Так вероятность попасть в начало очереди возрастает. При покупке майнингового контакта в пуле система выдаёт 5 ускорений (можно пользоваться ими бесплатно).
CPFT
Еще один ускоритель транзакций Биткоин — метод «Ребёнок платит за родителя».
- Зайдите в секцию настроек, а дальше в параметры.
- Нажмите на «Кошелёк», активируйте опцию управления входами. Поставьте «галочку» в окне, через которое разрешается расходовать сдачу, недождавшуюся подтверждения.
- Закройте окно и перейдите в раздел отправки.
- Зайдите в секцию входов и сделайте отметку возле интересующего перевода.
- Пропишите адрес получателя и подтвердите действие.
- Укажите нужную сумму перевода и поставьте галочку возле команды вычета комиссионного платежа из суммы. Размер комиссии вычисляется для двух сделок. Первым действием размер предыдущей транзакции делится на величину нового перевода, а к полученной цифре прибавляется единица. Результат умножается на рекомендуемую комиссию за 1 Кб (этот показатель можно узнать по ссылке btc.com/stats/unconfirmed-tx).
Метод работает только при наличии доступа к приватным ключам кошелька. Человек направляет средства с повышенной комиссией, что позволяет протолкнуть транзакцию. Расчёт идёт на то, что майнеры быстрее включают в блок ту транзакцию, которая лучше оплачивается.
Двойная трата
Методика «Двойных трат» зависит от типа кошелька Bitcoin. Она сработает не на всех криптокошельках. Для проверки можно подождать 3–4 дня и убедиться, что кошелек удаляет ненужные операции. Тогда нужно будет оформить новый перевод, но уже с большей комиссией. Функция двойной траты поддерживается криптокошельком Bitcoin Core.
Алгоритм ускорения транзакции:
- Оцените оптимальный размер комиссии. Для этого используйте bitcoinfees.earn.com.
- Удалите неподтвержденную операцию из бумажника или дождитесь, пока это не произойдёт автоматически.
- Сформируйте новый перевод и увеличьте премию за транзакцию.
- Сохраните код HEX новой операции.
- Вернитесь в режим онлайн и ретранслируйте оформленную сделку через кошелёк.
Для проталкивания операции используйте код HEX на сайтах blockchain.info/pushtx, coinb.in/#broadcast или др. Для эффективности примените метод ускорения через Antpool с подтверждением пересылки новых сведений.
Если хранилище автоматически удаляет зависшие операции, при следующем переводе достаточно указать большую сумму (с учетом рекомендуемой комиссии). На подтверждение транзакции тогда уйдет меньше времени. Приведенный способ ускорения работает, но во многих кошельках такой опции нет. Разработчики криптокошельков делают всё возможное для защиты от повторных трат. Часто при попытке проведения второй сделки выскакивает ошибка, предупреждающая об активности прошлого перевода.
Если выставить более высокую комиссию, операция проходит быстрее, а второй перевод (с меньшей премией) остаётся в криптосети навсегда. Не используйте устаревшие сведения из адреса первой операции.
BTC.com
Сервис BTC.com — платный.
Алгоритм действий следующий:
- Копируете ID перевода.
- Переходите по ссылке pushtx.btc.com.
- Указываете скопированный выше параметр (ID) и нажимаете на кнопку «Расчётная цена».
- Платите заявленную сумму (если она устраивает). Деньги переводите через Вебмани или Биткоин Кэш.
Операция проходит в срок до четырех часов. Цена услуги высокая, поэтому пользоваться этим способом имеет смысл, если:
- вам нужно срочно осуществить транзакцию;
- переводите большую сумму.
Делать небольшой перевод, и платить за него внушительную комиссию, не стоит.
Миф об истечении срока транзакции
Многие люди ошибочно верят в забавный миф об истечении срока транзакции. Они почему-то уверены в том, что транзакции в Биткоине имеют определенный «срок годности» и обязательно будут отменены или удалены после достижения какого-то момента во времени.
Но это абсолютно не так. Блокчейн-сеть первой и самой дорогой криптовалюты работает иным образом. Теоретически возможна ситуация, когда транзакция будет подтверждена даже спустя годы. Вопрос заключается лишь в длительности ожидания и, конечно же, никто не готов ждать так долго.
Актуальный период ожидания внутри мемпула длится от 72 часов до 14 суток. Но если транзакция старше этого срока и до сих пор не вернулась обратно, вероятна ситуация, при которой узел ретранслировал перевод, и он будет находиться в мемпуле гораздо дольше двух недель. Это действие справедливо для работы большинства узлов.
Дополнительные методы, как ускорить транзакцию Bitcoin
Перечисленные способы протолкнуть транзакцию, пользуются наибольшим спросом и доказали эффективность. Но есть и другие варианты:
- Использование централизованных площадок, которые позволяют хранить Биткоины. Пример — сервис Coinbase.
- Оформление открытых операций. Если транзакция проводится с раскрытием личной информации о получателе и отправителе, она проходит быстрее. Но это противоречит законам децентрализации Биткоина.
- Применение мультиподписи. В этом случае гарантируется надёжность транзакции, и не нужно ждать формирования новых блоков сети. Пример — Green Address.
- Увеличение комиссии уже при первой операции. Увеличьте размер премии выше среднего (рекомендуемого) параметра. Приоритетность сделки возрастет и устранится проблема с перегрузкой сети.
- Совершение транзакций на более крупные суммы (также зависит приоритетность операции).
- Использование функции Replace by fee. Она позволяет избежать проблем с двойной тратой средств, но работает не на всех кошельках. Кошельки с Replace by fee — Электрум и ГринАдрес.
- Отмена зависшей операции и проведение новой сделки с увеличенной комиссией.
- Далее алгоритм такой (для Bitcoin Core):
- Входите в хранилище в раздел помощи.
- В секции отладки кликаете на ссылку «Консоль». Если хранилище зашифровано, применяете команду walletpassphrase < passphrase >.
- С помощью команды dumpprivkey < address > получаете персональный ключ.
- Вместо второй части (address) указываете адрес отправки. Далее система выдает ключ — копируете его.
- Закрываете криптокошелек и деинсталлируете его (более лояльные пути — переименование или перемещение).
- Запускаете хранилище и копируете сохраненные ключи. Далее переходите в панель отладки и указываете importprivkey < privkey >. Ждете, пока не перенесутся все сведения.
После перезагрузки клиента неподтвержденные операции удаляются. Теперь можно приступать к проведению перевода с уже большей комиссией.
Зная, можно ли ускорить транзакцию btc, и какие методы применяются для решения задачи, можно избежать зависания денег. Чтобы исключить проблемы в будущем, необходимо выставлять адекватную комиссию, учитывая важность перевода. Если требуется быстрое проведение транзакции, то и размер премии должен быть на 20–30 % выше рекомендуемого параметра.
Как определить сколько ждать
Вы отправили транзакцию и не можете дождаться ее подтверждения. Не стоит волноваться, если ее не включат в блок течение 72 часов, монеты вернутся обратно на ваш счет. Сеть биткоина может быть очень загружена, вы можете убедиться, зайдя на сервис blockchain.info, на одной из страниц которого можно найти количество неподтвержденных транзакций на данный момент времени.
Эта информация дает лишь общее представление. Чтобы сказать конкретно, сколько придется и ждать и стоит ли надеяться на проведение, понадобится ее хеш.
- Посетите blockchain.info, в поиск введите хеш и найдите транзакцию. Найдите в информационной таблице строку «Плата за байт». Она рассчитывается исходя из комиссии, уплаченной за сделку.
- Зайдите на специальный сайт bitcoinfees.earn.com. В динамической таблице найдите нашу цифру в левом крайнем столбце. В крайнем правом столбце будет ожидание в минутах, а в соседнем с ним — количество блоков, через которое произойдет подтверждение.
Подобные сервисы собирают и анализируют данные, на них можно найти рекомендуемые размеры комиссий для беспроблемного перевода средств.
Отмена неподтвержденной транзакции биткоина
Если сделка получила хотя бы одно подтверждение, отменить ее и вернуть монеты невозможно.
Как отменить перевод биткоинов в кошельке Bitcoin Core:
- Убедитесь, что ваша транзакция не подтверждена через специальный сервис.
- Запустите кошелек. Сделайте ряд переходов: «Помощь» — «Окно отладки» — «Консоль».
- Введите команду «walletpassphrase ПАРОЛЬ».
- Введите команду «dumpprivkey АДРЕС» (адрес, который использовался для операции). Вы получите приватный ключ. Сохраните его в отдельный файл и никому его не передавайте.
- Найдите в папке с компонентами криптокошелька файл «wallet.dat», переименуйте его и переместите в другое место.
- Выйдите из кабинета и удалите кошелек.
- Перезапустите программу, она не найдет старый кошелек и создаст новый.
- Вернитесь в меню «Консоль». Пропишите команду «importprivkey ПРИВАТНЫЙ КЛЮЧ». Начнется сканирование, которое займет около 60 минут.
- Проверьте ваш счет. Неподтвержденные сделки должны удалиться, заблокированные деньги будут снова доступны.
Метод не сработает, если пользователь применяет облачное хранилище для сохранения информации о переводах, и если майнеры успели обработать неподтвержденную операцию.
Как работают подтверждения в сети?
При отправке монет другому пользователю, отправитель предоставляет в сеть адрес (открытый ключ), с которого произошла отправка BTC, и подписывает его своим закрытым ключом, формируя так называемую асимметричную пару ключей.
Затем майнеры проверяют открытый ключ, чтобы убедиться в подлинности подписи. Если все верно, они добавят его в добываемый блок, тем самым «подтверждая» транзакцию. В случае, если будет выявлено мошенничество, майнеры признают этот факт и полностью проигнорируют этот блокчейн. Дальнейшие блоки добавляться не будут.
Если эти «другие» майнеры считают предыдущий блок действительным, они впоследствии добавят свои блоки в цепочку, тем самым дополнительно подтвердив исходную транзакцию. В некотором смысле, придавая ей больший авторитет.
Изменение комиссии
Многие кошельки отражают рекомендуемый платеж и позволяют динамически менять показатель. При проведении транзакции хранилище показывает оптимальную плату с учетом текущей загрузки сети блокчейн. От величины комиссии зависит приоритетность операции. Если установлена высокая премия, а сделка зависает, это свидетельствует о проблемах с кошельком. Рекомендуется установить новый бумажник или обновить установленное хранилище.
Ускоритель от майнинг-пулов
Некоторые майнинг-пулы дают возможность принудительно добавить в новый блок транзакцию. Количество бесплатных попыток может быть ограничено. Воспользоваться ускорителем от пула ViaBTC можно перейдя по адресу. В нужное поле ввести ID перевода и нажать кнопку «Платно» или «Бесплатно»
Зависания транзакций рекомендуется не допускать, перед отправкой средств можно узнать размер необходимой комиссии для быстрого подтверждения. Программы-кошельки предлагают автоматически выставлять актуальную комиссию.
Децентрализованная криптобиржа
Прочие методы
Для ускорения транзакции в цепи блокчейн можно использовать еще ряд путей:
- Использование специальных площадок, обеспечивающих более быстрое проведение операции. Как вариант — Coinbase: пользователи проводят переводы в сети почти без задержек по времени.
- Применение мультиподписи. При переводов часто применяется мультиподпись, обеспечивающая быстрое проведение операции. Инструмент применяется многими бумажниками, к примеру, Green Address.
- Использование сайтов, имеющих максимальный уровень доверия. Особенность площадок заключается в раскрытии сведений об участниках, поэтому подтверждение в блокчейн проходит быстрее. Недостаток — нежелание пользователей раскрывать личность.
- Увеличение размера операции. При большой загрузке сети пользователи предпочитают сделки с большим числом коинов. Повышение размера транзакции способствует ускорению перевода.
- Откат. Неподтвержденную сделку можно вернуть, к примеру, в бумажнике Bitcoin Core.
Способов ускорить транзакцию блокчейн достаточно, но из приведенных вариантов наиболее популярные пути — RBF и Double Spending.
CPFP
ChildPaysForParent — дети платят за родителей. Ускорение подтверждения транзакции происходит после создания нового перевода с высокой комиссией, связанного с неподтвержденным. Например, получатель может перевести зависшие средства на свой другой адрес. Отправитель может воспользоваться этим способом в том случае, если остались средства на адресе, с которого делался перевод. Комиссию нужно выставить двойную, за неподтвержденный перевод и за вновь созданный.
Зачем необходимо подтверждение
Новички часто спрашивают по поводу актуальности подтверждений — зачем они нужны, и какая от них польза. Вопрос логичный, ведь валидация сделок отнимает много времени. Вместо мгновенного перевода суммы участники сети вынуждены ждать проведения транзакции в течение 20 и более минут.
Необходимость подтверждения в Bitcoin-сети обусловлена решением следующих задач:
- Защита от повторного применения криптовалюты, когда собственник BTC одновременно использует монеты для отправки разным пользователям.
- Снижение риска мошенничества и взлома открытого кода Биткоин.
- Создание оптимальных условий для создания блоков и получение вознаграждения майнерами.
Стандартные кошельки Bitcoin считают сделку с криптовалютной не подтвержденной до момента создания шести новых блоков. Это означает, что до момента создания этого элемента цепи получатель не может распоряжаться монетами.