Как искать транзакции в блок эксплорере Bitcoin.com
Не удается найти транзакцию? Задаетесь вопросом “где мои биткойны”? Наш Block Explorer поможет их найти.
Block Explorer по сути является поисковиком и позволяет искать транзакции, блоки и адреса в блокчейнах Биткойна (Bitcoin Core — BTC) и Биткойн Кэш (Bitcoin Cash — BCH).
На этом скриншоте показан результат поиска транзакции: можно посмотреть ее сумму, адреса получателя и отправителя, плату за транзакцию, когда она была отправлена и сколько подтверждений получила.
Как искать транзакции в Block Explorer?
В своем кошельке выберите транзакцию, которую будете искать в Block Explorer. В большинстве случаев эту информацию несложно найти в вашем кошельке или в вашем личном кабинете на криптовалютной бирже.
Найдите “идентификатор транзакции” (transaction ID — TXID) — строка, содержащая в себе буквы и цифры, уникальная для каждой транзакции. Аккуратно скопируйте строку и вставьте в поиск Block Explorer.
Поиск транзакции в Block Explorer занимает секунды
Если вы используете Bitcoin.com Кошелек, то выберите интересующую вас транзакцию из списка недавних транзакций, кликните на нее и внизу экрана вы увидите кнопку “посмотреть в блокчейне”. Нажав на нее откроется окно с результатами поиска транзакции в Block Explorer.
Bitcoin.com Кошелек позволяет искать транзакции прямо из приложения — кнопка “посмотреть в блокчейне” находится внизу экрана с деталями транзакции.
Зачем нужны идентификаторы транзакций?
Идентификаторы транзакций особенно полезны в следующих случаях:
Платеж задерживается: если отправленные биткойны все еще не пришли, то всегда можно посмотреть в Block Explorer статус транзакции. Если транзакция нашлась, значит скоро ее обработка закончится, и биткойны придут на указанный адрес.
Доказательство отправки платежа: в случае, если адресат просит подтвердить отправку биткойнов, всегда можно прислать ему сам идентификатор транзакции или ссылку на нее в Block Explorer.
Где проверить транзакцию биткоина по номеру кошелька
Проведение транзакций биткоина становится обыденной практикой в современной финансовой системе. Тем не менее, у начинающих инвесторов в криптовалюту возникает масса вопросов о покупке, продаже цифровых денег, других операциях. В данной статье речь пойдет о проверке транзакции биткоина.
Содержание
Скрыть- Что такое биткоин-транзакция
- Как найти биткоин-транзакцию в блокчейне
- Как работают биткоин транзакции
- Как долго ждать транзакцию
- Как узнать, сколько подтверждений прошло?
- Как увеличить скорость транзакции?
- Почему сумма на входе и выходе может оказаться разной?
- Комиссия
- Как отменить транзакцию?
Что такое биткоин-транзакция
Транзакция Bitcoin – это подтвержденный раздел данных, который записывается в сеть без шифрования. Каждый пользователь может проследить цепочку операций, начиная с получения первых криптомонет. Транзакции проводятся между специальными кошельками. Пользователи-инвесторы покупают вкладывают средства в криптомонеты и держат их, расчитывая на рост их курса с целью выгодно продать через год или несколько лет. Но в этом случае теряется смысл цифровых денег как таковых. Необходимо пользоваться биткоинами, то есть тратить в интернет магазинах на бирже. В этом случае и возникает необходимость проведения и проверки транзакции.
Как найти биткоин-транзакцию в блокчейне
Биткоин-транзакции отличаются от операций по обычным банковским счетам. Да и самих криптомонет не существует в том виде, в каком мы привыкли видеть доллары, фунты и другие валюты на счетах. Цифровые деньги не хранятся и на биткоин адресе. В кошельке имеются лишь записи о подписанных транзакциях между кошельками или счетами. Баланс таких записей может меняться в зависимости от выполненной операции. Записи хранятся в Blockchain (цепочка блоков, которая выглядит как книга учета).
Для просмотра транзакций биткоина можно установить специальную программу, например Block Explorer. В приложении легко отслеживать каждую биткоин-транзакцию, программа самостоятельно создает таблицы и графики, которые показывают деятельность в криптокошельке.
Информация о получении криптомонет с другого кошелька включает такие типы данных:
- Input (вход), то есть информация о биткоин-адресе отправителя.
- Amount (сумма) – это то количество монет, которые поступили на счет кошелька.
- Output (выход), то есть сведения о получателе перевода.
Как работают биткоин транзакции
Проводя транзакцию биткоинов, пользователь должен осознать, что на самом деле ничего не пересылается, а просто переписывается введенное количество монет с одного кошелька на другой, причем информация доступна всем, так как записывается на незакодированный реестр. Каждая транзакция записывается как вход, то есть сумма, переписанная на счет или выход для отправленных сумм.
Выведенные суммы становятся недоступными и совершение дальнейших операций невозможно. Однако здесь можно отследить общее количество поступивших биткоинов на определенном кошельке.
При проведении операций имена обладателей кошелька не отображаются, видено лишь наименование кошелька, с включением цифрового и буквенного кода. Благодаря этому сервис можно считать анонимным. Привязка кошелька к документам реального человека невозможно.
При всей открытости информации, которая хранится на блокчейне, проведение операций, зная только комбинацию букв и цифр, невозможно. Необходимо применять еще и секретный код, также состоящий из цифр и букв.
Как долго ждать транзакцию
Бывают моменты, когда подтверждение транзакции затягивается. Так происходит потому что этим занимаются майнеры, которые также занимаются поиском и добычей криптовалют. Ждать окончания майнинга иногда приходится довольно долго от 10 минут до нескольких часов. При проведении транзакций через специализированные процессинговые компании ждать не нужно. Биткоин-адрес переписывается мгновенно.
Компании BitPay или Coinbase оснащены мгновенным подтверждением транзакций. Однако следует принять во внимание повышенную комиссию за перевод криптомонет.
В целом, время проведения зависит от нескольких пунктов:
- Количество транзакций, выполняемых в определенный момент времени. За последний год проведение операций с биткоинами выросло в 8 раз. Иногда количество транзакций вырастает до критических величин, ожидание подтверждения платежа достигает одного часа.
- Транзакции с небольшой комиссией обычно откладываются, приоритет отдается переводам с высоким сбором.
- Время верификации операции также зависит от курса криптовалюты на данный момент.
Как узнать, сколько подтверждений прошло?
Для просмотра подписанных транзакций можно также воспользоваться сайтом blockchain.info. На сервисе для быстрого поиска необходимо воспользоваться поиском, панель находится в верхней части страницы. Эта функция позволяет узнать детали об определенном биткоин-адресе, номере в цепочке блоков, хэше транзакции.
Как увеличить скорость транзакции?
Существует несколько способов снижения времени транзакции:
- Увеличение объема переводимых средств. Чем больше криптовалют переводится, тем выше статус перевода.
- Увеличение комиссии за проведение транзакций. Если пользователи отдают за осуществление операций от 0,00002 ВТС, майнеры быстрее подтверждают платежи.
- Использование специальных сервисов типа Coinbase позволяет проводить транзакции мгновенно. На площадках сохраняются ключи продавца и покупателя, подтверждение происходит непосредственно через сервис.
- Возможно также использование криптокошельков с функционалом мультиподписи. Для совершения платежей на подобных сервисах нужно ввести лишь секретный ключ. Кошелек использует собственный ключ. Экономия времени и средств на лицо.
Почему сумма на входе и выходе может оказаться разной?
Поскольку биткоины не существуют на электронных кошельках, как например другая валюта на банковских счетах. Все биткоины записаны в транзакциях, поэтому при переводе другому человеку нужно брать во внимание тот факт, что сумму из транзакции невозможно поделить. Пользователь вынужден переводить всю сумму, но указывать реальную сумму операции. На выход пойдет одна сумма, а на вход другая, разница будет переведена клиенту в качестве сдачи.
Комиссия
На данный момент большинство криптокошельков работают без вознаграждения майнеру. Однако есть и такие, где пользователь сам указывает размер вознаграждения.
Как отменить транзакцию?
Отмена подписанной транзакции невозможна, это одна из отличительных особенностей всей системы. Не так давно специалисты задумывались о разрешении на откат транзакции еще не принятой в цепочку блока, но этого так и не случилось.
Тем не менее, в случае если транзакция зависла, то отменить ее можно. Нужно следовать следующим шагам:
- Во-первых, нужно убедиться, что операция реально зависла. Для этого открываем программу Block Explorer и проверяем информацию о данной операции. Если деньги еще лежат на счету, то не все потеряно, отменить операцию вполне возможно. Это также реально, если появилось окошко «Неподтвержденная транзакция!»
- В биткоин-кошельке нажить на окошко «Помощь», затем перейти в «Меню откладки», далее «Консоль».
- Нужно получить доступ к кошельку с помощью команды passphase.
- После этого получаем секретный ключ от адреса. Для этого необходимо указать в поле адреса тот, который был применен для отправки криптомонет.
- После окончания экспорта ключей удаляем кошелек путем его перенесения в надежное место или переименования.
- Запускаем клиент заново, импортируем полученный код. Это может занять несколько минут.
- В конце отмены транзакции и запуска нового кошелька должен появиться счет с реальным положением дел. Все зависшие и неподтвержденные операции будут аннулированы.
Из статьи можно сделать вывод о том, что работать с криптовалютами не так уж сложно. Даже начинающий инвестор и просто пользователь сможет разобраться с такой системой.
Как проверить транзакцию Биткоин? Отслеживание в blockchain
Операции с цифровыми деньгами уже успели стать частью современной жизни. Криптовалютное сообщество растет с каждым днем. На первых порах новичкам бывает сложно разобраться с некоторыми особенностями использования технологии блокчейн.
Вопрос о том, как проверить транзакцию Биткоин, является актуальным для большинства новых пользователей. В этой статье мы подробно разберем его.
Bitcoin-транзакция: что это такое
Операции, связанные с перечислением цифровых денег, называют транзакциями. Данные о них заносятся в сеть без применения шифрования. Любой желающий имеет возможность увидеть всю цепочку, начиная с генерации первых токенов.
Транзакции проводятся между двумя криптовалютными адресами (кошельками). Пользователи приобретают монеты на бирже или получают их в качестве оплаты товаров или услуг. В транзакциях и заключается одно из преимуществ Bitcoin: они быстрые и анонимные. Для их осуществления не нужно привлекать третью сторону в виде традиционного банка или другого учреждения, отвечающего за перевод денежных средств.
Чтобы осуществить транзакцию в сети Bitcoin нужно знать реквизиты, на которые будут отправлены монеты. Во многих цифровых кошельках адрес пользователя формируется в виде QR-кода. Он быстро и легко считывается посредством смартфона. После этого сведения о получателе добавятся в криптокошелек пользователя.
Если отсутствует смартфон, есть возможность скопировать биткоин-адрес в формате уникального кода. После занесения этих данных можно осуществить транзакцию в пользу получателя.
С виду выполнение операций в сети Bitcoin выглядит просто, хотя за этим скрывается цепочка действий. Чтобы транзакция прошла успешно, необходимо получить подтверждение со стороны майнеров.
Добытчики монет формируют блоки данных. Их размер ограничен одним мегабайтом. После достижения лимита блок закрывается. Сведения, содержащиеся в нем, невозможно корректировать или менять.
Каждый новый блок в цепочке хранит в себе сведения о предыдущем. После того, как данные о транзакции заносятся в шесть блоков, она получает статус подтвержденной.
Объем комиссионных за перевод BTC высчитывается по следующей формуле:
in — это суммарное число кошельков отправителей, out — количество получателей. Цифра 10 в данной формуле является константой. На момент написания текста в среднем размер комиссионных составлял от 6 до 10 сатоши. Точную информацию можно узнать на сайте bitcoinfees.earn.com.
Как отследить биткоин транзакцию
Данные, размещаемые в блокчейне, сохраняются с определенной структурой. Это дает возможность быстро получить необходимую информацию о любой транзакции в сети.
Блоки цепочки содержат сведения о:
- хеш-кодах записанных транзакций;
- хеше предыдущего блока;
- хеше данного блока;
- дате его формирования;
- версии.
Также есть возможность получить данные о Bitcoin-адресах получателей и отправителей и объеме переводимых средств. По этим данным пользователь сможет быстро найти транзакцию среди десятков тысяч чужих операций. Напоминаем, что отменить перевод или изменить сведения о нем в сети блокчейн невозможно.
Где проверять операции BTC
Чтобы быстро найти операцию и проверить биткоин кошелек, нужно зайти на специальный портал — blockchain.info. В открывшемся окне обратите внимание на строку поиска в правом верхнем и нижнем углах. В них нужно ввести адрес криптокошелька, хеш-код блока или операции или же IPv4.
Система выдаст следующую информацию по заданному запросу:
- Баланс;
- Объем средств, переведенных на кошелек;
- Суммарное число операций.
Сервис также выдаст информацию об адресах, перечислявших или принимавших монеты с указанного кошелька. Сведения будут содержать объем валюты и дату транзакции. Упомянутые данные можно увидеть в читабельном виде. Для этого отфильтруйте их по статусу верификации, отправителю или получателю.
Чтобы узнать о состоянии транзакции, нужно кликнуть на пользовательский адрес. Далее сервис выдаст сведения, в которые входит размер комиссии, число имеющихся подтверждений, дату и объем средств.
Первое подтверждение не свидетельствует о получении адресатом отправленных ему средств, необходимо дождаться формирования следующих пяти блоков.
Портал blockchain.info не только поможет получить сведения о пользовательских операциях, но и ознакомиться с полезными статистическими данными. На этом сайте можно узнать число добытых монет, курс токена, количество сделок в сети, а также итоговую сумму комиссий в системе.
На сайте также присутствуют сведения относительно стоимости добычи Bitcoin и имеющейся вычислительной мощности платформы. Ресурс также выкладывает данные о наиболее популярных адресах, крупнейших денежных переводах и т. д.
Альтернативные сервисы для отслеживания Bitcoin
Узнать необходимую информацию относительно пользовательских транзакций также можно на сайте chain.so. Он работает по такому же принципу, как рассмотренный выше ресурс. Зайдите на сайт и введите в соответствующем поле хеш блока, код транзакции или уникальный адрес.
Система выдаст все доступные сведения: статус подтверждения, объем операции и уникальный номер. На сайте также можно узнать личность майнера, если она открыта.
Вы узнаете обо всех операциях, находящихся в блоке, адресах получателей и отправителей, а также объеме комиссионных, израсходованных на денежный перевод.
На сайте есть возможность увидеть наиболее успешных добытчиков монет. Здесь пользователи также имеют возможность создать собственный кошелек для Bitcoin. Рассмотренный сервис позволяет проделывать перечисленные операции и с другими цифровыми монетами. Кроме Bitcoin, здесь можно узнать полезную информацию о Dash, Dogecoin, Litecoin, Bytecoin и других токенах.
Скорость транзакций биткоина
Бывает, что сеть Bitcoin сильно перегружается. Это происходит из-за наличия большого числа операций, которые обрабатывают майнеры. В подобных случаях могут образовываться очереди (так называемый мемпул).
У пользователей остается всего два варианта: повышать размер комиссионных или ждать. Отметим, что процедура подтверждения транзакции в момент большой нагрузки может растянуться на сутки. Главное, не паниковать. Если операция не будет подтверждена, деньги никуда не пропадут.
Отличная статья 0
как проверить, отследить и узнать комиссию
В блокчейне Биткоин перечисление денег считается действительным при подтверждении транзакции, действительного намерения отправителя послать платеж получателю. Иногда это занимает длительное время, и тогда требуется ускорить транзакцию. Владельцам BTC полезно разобраться, какие конкретно операции называют транзакциями в сети Биткоин, и где можно посмотреть свои транзакции?
В чем суть транзакций в Bitcoin?
Схема работы блокчейна.В банковской системе транзакция (перевод денег) – это просто редактирование таблицы (базы данных). Упрощенно говоря, в такой таблице записаны номера счетов и их баланс (суммы денег). Соответственно, перевод заключается в уменьшение цифры напротив номера счета одного человека и увеличения напротив счета другого. При переводе между банками к процессу подключаются посредники, например, международная система Swift, но суть остается той же.
Схема обработки транзакций.В блокчейне нет такой таблицы, и нет единого центра, вносящего в эту таблицу изменения. Реестр редактируется всеми участниками одновременно и находится в открытом доступе.
В блокчейне не существует:
- Записанного где-то баланса биткоинов на кошельке. При обращении к базе данных сумма каждый раз пересчитывается заново.
- Счетов. Публичный ключ (адрес кошелька) дает право на вход в базу данных, а приватный ключ дает возможность ее редактировать, например, отправлять кому-то деньги.
- Биткоинов. Криптовалюта существует только в виде разницы полученной и отправленной с одного кошелька суммами. Все транзакции связаны между собой, поэтому система может подсчитать условный «баланс на кошельке».
Децентрализованная база данных имеет такую иерархическую структуру:
- Самая мелкая и неделимая единица – это транзакция. В ней зашифрованы данные о получателе, отправителе и сумме платежа, которые передаются только все вместе, одним пакетом.
- Транзакции объединяются в блоки. Процесс включения транзакции в блок и называется ее подтверждением (верификацией).
- Блоки образуют цепочку, ссылаются друг на друга. При хардфорке, например, эта цепь может разделяться на две уже независимые друг от друга ветки.
- Цепочка связанных между собой блоков и есть блокчейн.
Теперь нужно понять, что записывается в транзакцию, и как на самом деле происходит передача биткоинов от одного человека к другому.
Технология транзакций в блокчейне
Общий вид транзакций.Транзакция включает в себя 2 части:
- Вход, Txin (input).
- Выход, Txout (output).
Хешем называется результат вычислений хеш-функции, преобразующей любой массив данных в строку фиксированной длины.
Вход и выход транзакции.В транзакцию входят такие элементы.
Название | Упрощенное определение | Содержание |
Выход (output) | Инструкция по отправке биткоина. | Включает в себя такие значения:
|
Вход (input) | Ссылка на выход предыдущей транзакции. | Включает в себя такие значения:
|
Если существует несколько выходов, то между ними разделяется сумма, пришедшая со входа. Выход может стать основой для входа следующей транзакции только 1 раз, и так организуется цепочка.
Например, если у человека есть 100 биткоинов, и он хочет отправить 25 биткоинов своему другу, то создается 2 выхода:
- Один на 25 биткоинов (это платеж на открытый ключ получателя).
- Один на 75 биткоинов (это сдача, которая возвращается на открытый ключ отправителя).
Обработка транзакций представляет собой проверку выполнения скрипта ScryptPubKey и подписи ScriptSig, а также включение всей информации в блок.
Время и процесс подтверждения транзакции в блокчейне
Взаимосвязь блоков в блокчейне.Блок включает в себя несколько составляющих:
- Собственный хеш-заголовок.
- Хеш предыдущего блока.
- Группу транзакций. Первая – это та, в которой указана комиссия за генерацию этого блока.
Так как все блоки ссылаются друг на друга, их можно пронумеровать по порядку.
Выбор количества подтверждений.До тех пор, пока транзакция не включена в блок, она считается неподтвержденной. Для большей безопасности количество блоков, куда входит транзакция, увеличено до 6-ти, то есть, ее истинность проверяется 6 раз. Это необходимо для того, чтобы избежать повторного расходования биткоинов.
Биткоины, которые выплачиваются майнерам в качестве награды за сгенерированный блок, проходят 100 подтверждений. В большинстве Биткоин-клиетов оплата не начисляется, пока не наберется 120 подтверждений.
В среднем это занимает от 20 минут до 1 часа, но при большой нагрузке на блокчейн процесс может затянуться. Верификация транзакций занимает некоторое время, в среднем от 20 до 60 минут при условии, что отправитель назначил среднюю комиссию.
Платежи обрабатывают майнеры, которые с помощью своей вычислительной техники проверяют истинность криптографической подписи, а затем включают транзакцию в блок.
Комиссия за транзакцию
Данные bitinfocharts.com/ru/.Майнеры получают награду из собранной комиссии. Размер платы за перевод денег устанавливает отправитель, она может быть и нулевой.
Есть 3 условия, при которых будет обработан платеж с нулевой комиссией:
- Значение всех выходов не меньше 0,01 BTC.
- Совокупный размер не менее 1000 байт.
Обычно комиссии с нулевой таксой за обработку округляются до 1000 байт, и к ним добавляется комиссия 0,0001 BTC. Либо они чрезвычайно долго не покидают мем-пул.
Некоторые кошельки, например, популярный Bitcoin-Qt могут просто не отправить транзакцию без комиссии.
Чтобы подтверждение было максимально быстрым, нужно установить оплату выше средней.
Среднюю комиссию за транзакцию биткоин можно посмотреть здесь bitinfocharts.com/ru/comparison/bitcoin-transactionfees.html.
Когда весь 21 млн биткоинов будет добыт, майнеры все равно смогут зарабатывать на комиссиях за обработку транзакций.
Включение транзакций в блоки имеет такие особенности:
- Максимальный размер блока до 300 000 байт.
- Из этого 30 000 байт заполняется транзакциями с самым высоким приоритетом.
- Остальной объем распределяется между транзакциями со средним приоритетом. Обработке в первую очередь подлежат переводы с ненулевой комиссией, от 0,0001 BTC.
- На транзакции в комиссией в 0,0001 BTC отводится не более 15 000 байт в минуту.
- Все платежи, не вошедшие в блок, сохраняются в мем-пуле.
Приоритет транзакции считается по такой формуле.
Формула расчета приоритета.Расшифровывается это так:
- Priority – приоритет.
- Sum – сумма транзакции в сатоши.
- Input_value_in_base_units – количество подтверждений.
- Input_age – возраст монеты.
- Size_in_bytes – размер транзакции в байтах.
Пример расчета по этой формуле:
Человек имеет 7 биткоинов и хочет послать другу 5. Создается транзакция на два входа, один из них на 2 BTC с 2-мя подтверждениями, а другой на 5 с 10-ю. Общий размер транзакции 500 байт.
Приоритет равен (500 000 000*10+200 000 000*2)/500 = 10 800 000.
В первую очередь обрабатываются транзакции с приоритетом от 57 600 000, то есть, содержащие крупные суммы и высокие комиссии.
Данные.Вот пример распределения приоритетов для разных транзакций.
Как проверить транзакцию, когда придет платеж?
Сайт blockchain.info/ru.В реальном времени посмотреть, как происходит обработка транзакций, можно в блок экплорере blockchain.info. В столбце «Возраст» указано, как давно был сгенерирован блок, а в столбце «Транзакции» есть информация, сколько транзакций в него было включено. Кроме того, там есть вес блока и его сумма в биткоинах и пул, который его добыл.
Провести проверку своей транзакции биткоинов можно на сайте blockchain.info или на chain.so.
Чтобы посмотреть статус транзакции биткоин, нужно ввести хеш.
Ввод хеша. Пример подтвержденной транзакции. Пример неподтвержденной транзакции.Подтвержденные транзакции
Информация с blockchain.info/ru.Ниже находится счетчик транзакций, который показывает, сколько платежей было обработано за прошедшие 24 часа.
Где посмотреть неподтвержденные транзакции биткоин?
Мем-пул на blockchain.info/ru/unconfirmed-transactions.До момента верификации транзакция находится в мем-пуле, виртуальном хранилище.
Данные по мем-пулу тоже находятся в открытом доступе, можно отследить биткоин транзакцию, узнать регион, откуда она была отправлена, и какова ее сумма. Внизу страницы постоянно обновляется информация о новых транзакциях.
Blockchain.info/ru/charts/mempool-size.Можно просмотреть размер мем-пула и понять, что сейчас неподтвержденных транзакций не так много, как было полгода назад.
Если комиссия задана в пределах средних значений, то можно узнать примерное время выполнения перевода.
Ввод хеша.Для этого нужно ввести хеш в поиск на chain.so или на blockchain.info, открыть детализацию и посмотреть комиссию за байт.
Детализация.Зная комиссию, можно зайти на bitcoinfees.earn.com или на btc.com и по графику прикинуть время ожидания.
Информация bitcoinfees.earn.com. Информация btc.com.Btc.com, кроме того, дает статистику по средней комиссии, и ей тоже можно пользоваться, чтобы назначать стоимость своей транзакции биткоин выше рыночной.
Выписка.Как отменить транзакцию Биткоин?
Фото.Отправка биткоинов, также как и выпечка пирога – это необратимый процесс. Отмена транзакций технически невозможна, поэтому нужно внимательно вводить публичный ключ получателя.
Ускорение транзакций
Есть несколько способов ускорения транзакции биткоин.
Повышение комиссии
Достаточно установить комиссию для майнеров выше 0,0002 BTC, и они включат транзакцию в блок гораздо быстрее обычного. Заработок майнеров складывается из комиссией за обработку транзакций биткоин.
Replace-By-Fee
Подключение RBF в Electrum.Опцию RBF можно включить в кошельке. Она обеспечивает возможность повторной отправки того же перевода, но с более высокой комиссией. При верификации в блок будет включен второй, а не первый платеж. Если Opt-RBF не включить, то второй перевод на ту же сумму и на тот же адрес нельзя будет сделать до тех пор, пока не подтвержден первый.
Opt-RBF есть в двух кошельках:
- GreenAddress;
- Electrum;
- Armory
- Bitcoin Core.
В Bitcoin Core можно подключить ее только с помощью стороннего скрипта при отправке транзакции на верификацию, но не в момент формирования транзакции.
ChildPaysforParent
Подключение CPFP в Electrum.Опция Child pays for Parent помогает не только ускорению транзакций, но и подтверждению платежей при перегрузке сети. Ее можно подключить в Electrum или в Bitcoin Core.
В новую транзакцию включается один из выходов той, с которой возникли проблемы. Проще всего использовать «сдачу» и отправлять ее на свой же кошелек повторно. Комиссия за новый платеж должна быть больше суммарной за оба платежа.
В Bitcoin Core подключить CPFP можно по такому пути:
- Settings -> Options -> Wallet
- Поставить галочку рядом с Enable coin control features.
- Поставить галочку рядом с Spend unconfirmed change.
- Закрыть окно настроек, нажать Send.
- Выбрать Inputs и поставить галочку у суммы проблемной транзакции.
- Нажать Ok.
- Указать свой публичный ключ в адресе получателя.
- Поставить галочку рядом с Subtract fee from amount.
- Комиссию выбрать custom и per kilobyte.
При расчете комиссии можно пользоваться такой формулой:
(Размер старой транзакции/размер новой транзакции +1)*комиссию выше средней.
Coinbase
Главная страница coinbase.com.Ускоритель Сoinbase – это платформа для более быстрого проведения транзакций между кошельками, зарегистрированными на ней. Если отправитель или получатель не прошли регистрацию, то воспользоваться услугами сервиса не получится.
Мультиподписи
В кошельке GreenAdress реализована система мультиподписей. Транзакция подписывается:
- Зашифрованным приватным ключом отправителя.
- Зашифрованным ключом GreenAdress.
Вторая подпись служит дополнительной гарантией надежности, поэтому такие транзакции в сети Биткоин обрабатываются быстрее.
Деанонимизация транзакций биткоин: вычисление ip-адреса / Хабр
Российские специалисты по шифрованию, работающие в Университете Люксембурга, А. Бирюков, Д.Ховратович и И.Пустогаров (группа CryptoLux) опубликовали свою работу по исследованию работы сети биткоин и анонимности транзакций в ней. Из их работы следует, что возможно привязать биткоин-адреса к ip-адресам пользователей, даже если те находятся за NAT или firewall или пользуются сетью Tor. Для привязки понадобится всего пара обычных компьютеров и бюджет в $2000.
Эффективность деанонимизации по мнению исследователей составляет до 60%. Кроме того, этот метод позволяет «склеивать» транзакции, когда несколько операций с разными адресами, но проделанные на одном компьютере, будут связаны вместе. В работе, в частности, отмечается, что успешность атаки лежит в пределах от 11% до 60% раскрытых ip-адресов. Конечная цифра зависит только от того, насколько атакующий хочет быть скрытым.
Ранее уже проводились исследования сети с целью корреляций разных транзакций и привязывания их к одному пользователю (правда, без раскрытия ip-адреса) путём анализа цепочки блоков. Подход из данной работы основан на анализе трафика сети в реальном времени. Когда вы намереваетесь осуществить транзакцию в сети, ваш клиент подключается к набору из восьми серверов. Это входные ноды, их набор уникален для каждого пользователя. При совершении транзакции через ваш кошелёк входные ноды пересылают информацию о транзакции в сеть биткоин. Суть метода в том, чтобы идентифицировать набор входных нод, через них – кошелёк, а через него – пользователя. В этом случае ip-адрес клиента можно связать с его транзакциями. Даже если несколько пользователей находятся за NAT и одновременно работают с сетью, у каждого из них будет свой набор из восьми нод, который отличит его от остальных. Кроме того, несколько несложных технических шагов позволят запретить выходным нодам Tor проводить транзакции.
Естественно, что пользователи веб-кошельков таким образом идентифицированы не будут, все транзакции будут привязаны к адресу веб-сервера, где находится кошелёк. Но пользователи веб-кошельков уже доверили свои данные третьей стороне и, в каком-то смысле, уже раскрыты. Кроме того, атака не раскрывает ip-адрес получателей средств.
В последнее время анонимность пользователей сети всё чаще ставится под вопрос. Недавно было отмечено, что услуга SharedCoin от сервиса Blockchain не скрывает должным образом транзакции пользователей. Авторы статьи предлагают несколько мер модификации работы сети и клиентов, которые, по их мнению, поспособствуют повышению анонимности. В числе мер – введение задержек при совершении транзакций на случайные временные промежутки и уменьшение количества серверов, с которыми необходимо устанавливать соединение. Также логичным выглядит использование VPN-сервисов.
В своём посте на известном ресурсе BitcoinTalk Майк Хёрн, член основной команды разработчиков биткоин, высоко оценил работу исследователей. Однако он заметил, что команда уже знает о подобного рода атаках. К сожалению, реализовать все возможные идеи команда разработчиков биткоин не в состоянии, так как они испытывают критичную нехватку финансирования.
Как найти любую биткойн-транзакцию в блокчейне 🔍
Интересно, «Где мой биткойн?» Наш бесплатный инструмент Block Explorer может помочь вам отследить определенные транзакции.
Обозреватель блоков Bitcoin.com буквально позволяет вам исследовать как блокчейны Bitcoin Cash (BCH), так и Bitcoin Core (BTC).
Подобно поисковой системе, вы можете использовать ее для поиска определенных блоков, транзакций и даже адресов.
Обозреватель блоков Bitcoin.com суммирует подтверждения транзакций, номер блока и многое другое.
Как использовать Block Explorer для поиска деталей транзакции?
1. Выберите транзакцию в своем кошельке
Откройте свой цифровой кошелек и выберите транзакцию, о которой вы хотите узнать больше. Большинство программных кошельков и криптобирж четко перечисляют ваши недавние транзакции для вас, что упрощает их поиск.
2. Найдите уникальный идентификатор транзакции
Каждая биткойн-транзакция имеет собственный идентификатор транзакции (TXID), состоящий из букв и цифр, что делает ее уникальной.Кошелек Bitcoin.com предоставляет вам TXID, как и некоторые другие кошельки и биржи.
3. Вид на обозреватель блоков
Если вы используете кошелек Bitcoin.com, просто нажмите «просмотреть блокчейн», и вы попадете на соответствующую страницу в Block Explorer. В противном случае вырежьте и вставьте идентификатор транзакции и найдите его вручную в обозревателе блоков.
Кошелек Bitcoin.com имеет встроенную кнопку для просмотра TXID
Зачем может понадобиться идентификатор транзакции?
Вам может потребоваться отследить идентификатор транзакции по разным причинам.К двум наиболее распространенным относятся:
Отсроченные транзакции
Если вас беспокоит задержка, вы можете использовать Block Explorer, чтобы просмотреть свою транзакцию. Если он там появится, вы можете быть уверены, что ваша транзакция выполняется.
Подтверждение отправки
Иногда получатель может попросить вас отправить идентификатор транзакции, чтобы подтвердить, что вы отправили ему биткойн. Этот TXID предоставляет неопровержимое доказательство успешной передачи.
Не можете найти идентификатор транзакции?
Не все кошельки и биржи предоставляют вам TXID.Однако вы все равно можете найти его самостоятельно.
Начните с поиска адреса, на который вы отправили биткойн, и вставьте его в строку поиска Block Explorer. В результате будут показаны все входящие и исходящие транзакции, относящиеся к этому адресу.
Таким образом, часто указывается более одной транзакции. Чтобы найти TXID, который вы ищете, проверьте такие цифры, как дата, время и отправленная сумма, чтобы убедиться, что это правильная транзакция.
Поиск адресов кошельков вручную в Block Explorer — еще один способ найти TXID
Что делать, если ваша транзакция не найдена в Block Explorer?
Во-первых, не паникуйте.Это один из самых распространенных вопросов, которые нам задают, и обычно есть простое объяснение.
Возможно, вы искали не тот блокчейн. Например, если вы ищете TXID BCH, но вы выполнили поиск в разделе BTC типичного обозревателя блоков, результатов не будет.
Чтобы избежать путаницы, Bitcoin.com Block Explorer достаточно умен, чтобы перенаправить вас, когда это происходит: вы будете автоматически отправлены на нужную страницу через несколько секунд.
Биткойн.com Block Explorer охватывает как Bitcoin Cash (BCH), так и Bitcoin Core (BTC).
Если вы все еще испытываете затруднения t
Как на самом деле работают биткойн-транзакции?
Если вы заинтересованы в том, чтобы стать разработчиком приложений блокчейн, или просто хотите понять, что происходит под капотом, когда вы отправляете биткойны другу, хорошо иметь aw
Если вы заинтересованы в том, чтобы стать разработчик приложений блокчейн, или вы просто хотите понять, что происходит внутри, когда вы отправляете биткойн другу, хорошо иметь практические знания о том, что происходит, когда вы создаете и транслируете транзакции биткойнов в сеть биткойнов.Зачем?
Потому что транзакции — это базовая сущность, на которой строится цепочка блоков биткойнов. Транзакции являются результатом блестящего столкновения криптографии, структур данных и простых сценариев, не завершенных по Тьюрингу. Они достаточно просты, чтобы обычные типы транзакций не были чрезмерно сложными, но достаточно гибкими, чтобы разработчики могли также кодировать довольно индивидуальные типы транзакций. Сегодня мы познакомимся с первым.
Как разработчик, как ваш биткойн-клиент отправляет новую транзакцию в сеть (и что происходит, когда она получена)?
Что именно происходит, когда вы отправляете биткойн другу?
Этот пост предполагает, что читатель имеет базовые представления о хешировании, асимметричной криптографии и P2P-сетях.Также неплохо иметь хорошее представление о том, что такое блокчейн, даже если вы не знакомы с какой-либо конкретной механикой.
Биткойн-транзакции и их роль в общей картине
Биткойн состоит из нескольких основных частей: узлов и цепочки блоков. Роль типичного узла — поддерживать свою собственную версию блокчейна и обновлять ее, как только он узнает о «лучшей» (более длинной) версии. Проще говоря, в блокчейне есть блоки, а в блоках есть транзакции.
Имея в виду эту упрощенную, но точную картину, вы можете задаться вопросом, из чего именно состоит транзакция.
Оказывается, ответы на эти вопросы зависят от многих факторов. Даже если предположить, что мы говорим только о биткойнах, мы можем использовать транзакции множеством творческих способов для достижения различных индивидуальных целей. Давайте начнем с самого начала, то есть давайте взглянем на старый добрый тип транзакции с оплатой за PK. В конце концов, на этот тип транзакций приходится более 99% всех транзакций в цепочке блоков биткойнов.
Во-первых, давайте построим мысленную модель. Заманчиво думать о биткойнах как о системе на основе учетных записей. В конце концов, когда я отправляю кому-то биткойны, этот человек получает деньги, а у меня остается остаток на балансе. Однако в реальном мире все представлено немного иначе. Вообще говоря, когда я отправляю кому-то деньги, я трачу все эти деньги (за вычетом комиссии за транзакцию). Часть этих денег будет потрачена обратно на мой личный счет, если на нем останется остаток.Дело в том, что все деньги каждый раз перемещаются. Вы можете перейти к разделу 3.1, чтобы объяснить, почему эта модель предпочтительнее.
Имея это в виду, мы можем обобщить и сказать, что биткойн-транзакция имеет некоторые входы и выходы. Графическое представление может выглядеть примерно так:
Это немного сбило меня с толку, когда я впервые увидел это, поэтому я немного уточню. Когда я публикую транзакцию, я, по сути, «заявляю» о выходе и доказываю, что у меня есть разрешение потратить на это количество денег.Итак, если я Боб, и я хочу заплатить Алисе, эти входные данные являются моим доказательством того, что мне дали определенную сумму денег (хотя это может быть только часть моего общего баланса), а выходы будут соответствовать счету Алисы. . В этом простом случае будет только один вход и один выход.
Более подробный взгляд на транзакции биткойнов
Давайте разберемся в механизме реальной транзакции биткойнов. Мы будем использовать изображение выше для справки.
Если вы откроете типичную биткойн-транзакцию, вы получите три основных части: заголовок, вход (ы) и выход (ы).Давайте кратко рассмотрим поля, доступные нам в этих разделах, так как они будут важны для обсуждения. Обратите внимание, что это поля, которые находятся в так называемой необработанной транзакции. Необработанные транзакции транслируются между одноранговыми узлами при создании транзакции.
Заголовок
- hash : хеш для всей транзакции. Биткойн обычно использует хеш-значения как указатель, так и средство для проверки целостности части данных. Мы рассмотрим это подробнее в следующем разделе.
- ver : Номер версии, который следует использовать для проверки этого блока. Последняя версия была представлена в софт-форке, который стал активным в декабре 2015 года.
- vin_sz : количество входов в эту транзакцию. Точно так же vout_sz подсчитывает количество выходов.
- lock_time : мы рассмотрим это подробнее в следующих статьях, но в основном это описывает самое раннее время, когда блок может быть добавлен в цепочку блоков. Это либо высота блока, либо временная метка unix.
Вход
- хэш предыдущего вывода: это хеш-указатель на ранее неизрасходованный вывод транзакции (UTXO). По сути, это принадлежащие вам деньги, которые вы собираетесь потратить на эту транзакцию.
- n: индекс в списке выходов предыдущей транзакции. Это фактический результат, который вы тратите.
- scriptSig: это сценарий расходов, который доказывает, что создатель этой транзакции имеет разрешение тратить деньги, указанные в 1.и 2.
Вывод
- значение: сумма потраченных сатоши (1 BTC = 100000000 сатоши).
- scriptPubKey: второй из двух скриптов, предоставляемых в биткойн-транзакции, который указывает на хешированный открытый ключ получателя. Подробнее об этом в последнем разделе этой статьи.
Проверка транзакции
Одна из задач биткойн-узла — проверка правильности входящих транзакций (данные не были подделаны, деньги не создаются, только предполагаемые получатели тратят UTXO , и т.д).Более исчерпывающий список можно найти в Интернете, но я перечислю несколько важных из них:
- Все выходные данные, заявленные входами этой транзакции, находятся в пуле UTXO. Неизрасходованные результаты можно запросить только один раз.
- Подписи на каждом входе действительны. Точнее, мы говорим, что объединенные скрипты возвращают значение true после выполнения их одного за другим. Подробнее об этом в последнем разделе.
- Эта транзакция не использует более одного раза UTXO.Обратите внимание, чем это отличается от первого элемента.
- Все выходные значения транзакции неотрицательны.
- Сумма входных значений этой транзакции больше суммы ее выходных значений. Обратите внимание: если числа различаются, разница считается комиссией за транзакцию, которую может потребовать майнер.
Базовая хэш-транзакция pay-to-PK
Биткойн имеет собственный настраиваемый (Forth-подобный) язык сценариев, достаточно мощный, чтобы позволить разработчикам создавать сложные и настраиваемые типы транзакций.Существует пять или около того стандартных типов транзакций, которые принимаются стандартными биткойн-клиентами [5], однако существуют и другие клиенты, которые будут принимать другие типы транзакций за определенную плату. Здесь мы просто рассмотрим механизм pay-to-PK-hash.
Для того, чтобы любая транзакция была действительной, комбинированная пара scriptSig / scriptPubKey должна иметь значение true. Более конкретно, спонсор транзакции предоставляет scriptSig, который выполняется, за которым следует scriptPubKey заявленного вывода транзакции (помните, как мы говорили, что входные данные требуют предыдущих неизрасходованных выходных данных транзакции?).Оба сценария используют один и тот же стек.
В интересах эффективности, давайте будем использовать (официальную биткойн-вики) ссылку при обсуждении. Когда вы перейдете по ссылке, пройдите примерно половину вниз и найдите таблицу, содержащую 7 строк. В этой таблице показано, как комбинируются сценарии, как происходит выполнение и как выглядит стек на каждом этапе.
Следует отметить, что, поскольку адреса биткойнов на самом деле являются хешами (ну, это становится даже немного сложнее. См.), Отправитель не может узнать фактический открытый ключ, чтобы проверить его на соответствие секретному ключу. .Таким образом, Redeemer указывает как открытый, так и закрытый ключ, а scriptPubKey будет дублировать и хешировать открытый ключ, чтобы убедиться, что Redeemer действительно является предполагаемым получателем.
Во время выполнения вы можете видеть, что константы помещаются непосредственно в стек, когда они встречаются. Операции добавляют или удаляют элементы из стека по мере их оценки. Например, OP_HASh260 берет верхний элемент из стека и получает его дважды, сначала с SHA-256, а затем с RIPEMD-160.Когда все элементы в нашем скрипте были оценены, весь наш скрипт будет оценивать значение true, если true остается в стеке, и false в противном случае.
В целом, pay-to-PK-hash — довольно простой тип транзакции. Это гарантирует, что только выкупщик с соответствующей парой открытого / закрытого ключей может потребовать и впоследствии потратить биткойны. Если предположить, что все остальные критерии соблюдены (см. Предыдущий раздел), тогда транзакция является хорошей и ее можно поместить в блок.
В следующих статьях я расскажу о более сложных типах транзакций. Мы увидим, как более двух сторон могут участвовать в транзакции, и увидим, как можно реализовать более длительные типы транзакций.
Фаворит .Как найти идентификатор транзакции для переводов BTC
Как найти идентификатор транзакции с биткойнами (txID)
После того, как вы осуществили перевод биткойнов со своего кошелька BTC на некоторый внешний адрес биткойнов, вы можете найти информацию об этой транзакции (включая сумму, адреса отправителя / получателя, дату и время передачи), просматривая блокчейн. Эта передача может быть идентифицирована уникальным идентификатором транзакции или txID.
Иногда получатели ваших переводов биткойнов могут попросить вас предоставить этот идентификатор транзакции, чтобы подтвердить, что этот платеж был успешным.
Определение идентификатора транзакции
Перейдите на https://blockchain.info/ в своем интернет-браузере. Это один из многих общедоступных обозревателей блокчейнов, которые можно использовать для просмотра платежей в биткойнах и их деталей. Вам необходимо ввести в область «Поиск» некоторую информацию, относящуюся к вашей транзакции. Мы рекомендуем начинать поиск, используя биткойн-адрес получателя вашего перевода.
Введите его адрес в область поиска и нажмите «Ввод». Вы увидите все транзакции биткойнов, которые включают это
адрес, от самого нового к самому старому.
Если представлено очень много транзакций, вы можете перемещаться быстрее с помощью функции поиска в браузере. Обычно это «Правка> Найти» , или вы можете использовать сочетание клавиш Command + F (macOS) или Control + F (Windows). Попробуйте выполнить поиск по точной сумме биткойнов, которую вы отправили.
Подсказка: если вы щелкните любую сумму, представленную в этом списке, вы можете переключить режим просмотра с отображения сумм в BTC на их эквиваленты в долларах США в соответствии с уровнем обменного курса BTC на момент перевода.
Как только вы обнаружите правильную транзакцию, ее идентификатор будет виден в виде длинной строки букв и цифр на серой полосе над суммой, слева от времени транзакции.
В основном идентификатор транзакции выглядит следующим образом:
4a6581bbf6566599f1fff05261f894cc3fda5aa0ab6dd93944e5f482dcd13840 () Примеры
и имеет соответствующий адрес в сети Blockchain:
https://blockchain.info/tx/4a6581bbf6566599f1fff05261f894cc3fda5aa0ab6dd93944e5f482dcd13840
Для просмотра полной информации о платеж биткойн, вы можете щелкнуть эту ссылку идентификатора транзакции.Затем вы можете поделиться этой ссылкой или просто идентификатором транзакции с получателем.
Если у вас возникли проблемы с этими инструкциями, не стесняйтесь обращаться в службу поддержки, чтобы запросить идентификатор транзакции.
Создать транзакцию Биткойн вручную
Введение
Андреас Антонопулос однажды упомянул, что если он окажется в тюрьме, он заново изобрел бы автономную версию алгоритма консенсуса Биткойн, играя в судоку. Проведение подобной ролевой игры на биткойн-митапах имеет гораздо больший смысл, чем вы думаете, позвольте мне объяснить, почему.
В книге Энди Ханта «Прагматическое мышление и обучение» он рассказал историю о том, как он научился лазать по стенам. Сначала он заплатил много денег за урок, затем инструктор сказал группе пройтись по стене и пошел на чашку кофе.Через полчаса лазания по стене и проклятия ленивого инструктора он вернулся и начал объяснять, как лазить по стене. После некоторого опыта объяснение имело гораздо больше смысла, чем могло бы означать до этого. Причина в том, что существует двух основных способов обучения: синтез и анализ. Если вы не можете определить, кто какой был в классе скалолазания, вы не обращали внимания, мой дорогой читатель.
Ролевая игра также представляет собой аналогичный синтетический опыт обучения.Поскольку для игры в судоку нужны люди, а вы просто одиночка перед экраном, я не буду спускаться по ролевой кроличьей норе, а вместо этого вооружу вас аналогичным синтетическим опытом обучения. Мы рассмотрим, как построить биткойн-транзакцию своей рукой, не вдаваясь в подробности. Просто продолжайте, и вам станет понятно, почему программное обеспечение вашего кошелька предоставляет вам столько бесполезной информации. Это, конечно, в первую очередь важно для того, чтобы вы могли выиграть аргументы / r / Bitcoin.И, в конце концов, разве не в этом все дело? Но также это даст вам целостное понимание того, что вы будете неосознанно откапывать каждый раз, когда теряетесь во время разработки и размышлений о биткойнах.
Для прохождения этого руководства вам потребуется …
… интересоваться биткойнами. Вот и все, вам не нужно быть программистом, вам нужно лишь любопытства.
Быстрый совет
Не пугайтесь длины этой статьи, она на удивление быстро читается, так что продолжайте читать, я сделаю это весело!
Обзор
- Сначала сгенерируйте закрытый ключ Биткойн.
- Следующее финансирование.
- Создайте транзакцию.
- Наконец то выложу в сеть.
Видеоурок
Я записал свой тест, быстро выполнив необходимые шаги из этой обучающей статьи в основной сети Биткойн.
Прохождение
1. Создайте свой закрытый ключ Биткойн
Сначала вы должны решить, где вы хотите работать. В основной сети
или в тестовой сети
.Работа в основной сети
означает работу с реальными биткойнами, в отличие от тестовой сети
, где монеты бесполезны, потому что их легко и свободно приобрести.
По словам Николя Дорье, создателя библиотеки NBitcoin C # Практика программирования биткойнов на MainNet.
делает ошибки более запоминающимися. Но у этого есть и другое преимущество: это также позволит вам отправить мне биткойны, с которыми вы собираетесь работать во время этого урока, в качестве благодарности за это.
Теперь перейдите на https://www.bitaddress.org/ или https://www.bitaddress.org/?testnet=true, в зависимости от того, какую сеть вы хотите использовать, и сгенерируйте адрес
и закрытый ключ
пара для себя и отметьте это.
mainnet Bitcoin адрес выглядит следующим образом: 1JdtiE7aN6PekZHXihSJQcSDT2ZGbKNHVe
В то время как testnet один так: mzXrxNNYrVJgwNL8PGZWTJYbktrhg14kQb
Mainnet закрытый ключ: L3xU6CiTYtL8eBJBscMG8GPsZ2c7NNcX8BYrih5WGmoztLfXByL7
Testnet закрытый ключ: cTLUtfv2Sq5K1yjs5fcRmxitL51i35WmVxaCGUCbfCp722V5aMVY
2.Получите биткойны
Затем отправьте несколько биткойнов на адрес
. Если вы работаете в тестовой сети, Google «получите монеты тестовой сети биткойнов», и вы найдете множество веб-сайтов, которые готовы предоставить вам их бесплатно, например этот. Проверьте свой адрес в проводнике блоков. Вот и обозреватель блоков для тестовой сети: https://testnet.smartbit.com.au/
Взгляните на свой адрес:
Затем найдите свою транзакцию, которую вы только что отправили на свой адрес. Вот мой.
И обратите внимание на идентификатор транзакции: 22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c
Теперь, когда мы подготовили среду, мы, наконец, можем приступить к созданию нашей транзакции вручную.
3. Создайте транзакцию
На данный момент у вас есть 3 строки информации, которые, вероятно, хранятся в очень безопасном файле .txt:
Закрытый ключ: cTLUtfv2Sq5K1yjs5fcRmxitL51i35WmVxaCGUCbfCp722V5aMVY Адрес: mzXrxNNYrVJgwNL8PGZWTJYbktrhg14kQb Идентификатор транзакции: 22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c
a) Проверьте нашу транзакцию финансирования
Сначала давайте взглянем на нашу транзакцию.Мы собираемся использовать для этого QBit Ninja.
http: // tapi.qbit.ninja
/ transaction / 22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c
Если вы работаете в основной сети, вы хотите использовать api.q47i.ninja, вместо
api.q47.ninja
api.q47.ninja, вместо.
Посмотрите на вывод:
{ "Сделка": "0100000002d9dced2b6fc80c706d3564670cb6706afe7a798863a9218efcdcf415d58f0f82000000006a473044022030b8bea478444bd52f08de33b082cde1176d3137111f506eefefa91b47b1f6bf02204f12746abd1aeac5805872d163592cf145967fa0619339a9c5348d674852ef4801210224ec1e4c270ce373e6999eebfa01d0a7e7db3c537c026f265233350d5aab81fbfeffffffa0706db65c5e3594d43df5a2a8b6dfd3c9ee506b678f8c26f7820b324b26aa0f000000006a473044022061b718034f876590d6d80bac77a63248b2548d934849acd02c4f4236309e853002201aded6b24f553b6902cf571276b37b12f76b75650164d8738c74469b4edd547e012103d649294a0ca4db920a69eacd6a75cb8a38ae1b811291ce45e6ba3438a7bfeffffff0280a000000001976a914d0965947ebb329b776328624ebde8f8b32dc639788ac1cc80f00000000001976a914c2a420d34fc86cff932b8c3191549a0ddfd2b0d088acba770f00", "transactionId": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", "isCoinbase": ложь, «блок»: ноль, "потраченные монеты": [ { "transactionId": "820f8fd515f4dcfc8e21a96388797afe6a70b60c6764356d700cc86f2beddcd9", "index": 0, «значение»: 100000, "scriptPubKey": "76a914e7c1345fc8f87c68170b3aa798a956c2fe6a9eff88ac", "redeemScript": нуль }, { "transactionId": "0faa264b320b82f7268c8f676b50eec9d3dfb6a8a2f53dd494355e5cb66d70a0", "index": 0, "значение": 1180443, "scriptPubKey": "76a914f3821cff5a271d8596198f68e97fbe2ea0e88ac", "redeemScript": нуль } ], "gotCoins": [ { "transactionId": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", "index": 0, «значение»: 240000, "scriptPubKey": "76a914d0965947ebb329b776328624ebde8f8b32dc639788ac", "redeemScript": нуль }, { "transactionId": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", «индекс»: 1, "значение": 1034268, "scriptPubKey": "76a914c2a420d34fc86cff932b8c3191549a0ddfd2b0d088ac", "redeemScript": нуль } ], «firstSeen»: «2016-10-31T09: 13: 18.4420023 + 00: 00 ", «сборы»: 6175 }
Отлично, правда? Как долго вы пытались понять это, прежде чем добрались до этого предложения? Как я сказал в начале, это руководство нацелено на то, чтобы быть скорее синтетическим, чем аналитическим, так что не теряется в деталях . Если вы потратили больше нескольких минут, вы делаете это неправильно, в следующий раз сделайте это лучше.
В этом руководстве я буду отсылать вас к различным инструментам, чтобы увидеть многое. Это также согласуется с моей целью предоставить вам синтетический опыт обучения, и, надеюсь, к концу, когда вы достигнете своей цели транслировать свою транзакцию, вы почувствуете, что вы что-то узнали, даже если вы не можете выразить словами, что это такое. Это называется: опыт . Теперь, чтобы попрактиковаться в том, чтобы не теряться в деталях, взгляните на тот же запрос, который я сделал к API Smartbit:
{ "успех": правда, "сделка":{ "txid": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", "hash": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", «блок»: ноль, «подтверждения»: 0, "версия": "1", "время блокировки": 1013690, "время": ноль, "first_seen": 1477905197, "размножение": "1.0000 ", "double_spend": ложь, «размер»: 372, "vsize": 372, "input_amount": "0,01280443", "input_amount_int": 1280443, "output_amount": "0,01274268", "output_amount_int": 1274268, «комиссия»: «0,00006175», "fee_int": 6175, "fee_size": "16.59946237", "coinbase": ложь, "input_count": 2, "входы": [ { "адреса": [ "n2eMqTT929pb1RDNuqEnxdaLau1rxy3efi" ], "значение": "0,00100000", "value_int": 100000, "txid": "820f8fd515f4dcfc8e21a96388797afe6a70b60c6764356d700cc86f2beddcd9", "vout": 0, "script_sig": { "ASM": "3044022030b8bea478444bd52f08de33b082cde1176d3137111f506eefefa91b47b1f6bf02204f12746abd1aeac5805872d163592cf145967fa0619339a9c5348d674852ef4801 0224ec1e4c270ce373e6999eebfa01d0a7e7db3c537c026f265233350d5aab81fb", "Шестнадцатеричный": "473044022030b8bea478444bd52f08de33b082cde1176d3137111f506eefefa91b47b1f6bf02204f12746abd1aeac5805872d163592cf145967fa0619339a9c5348d674852ef4801210224ec1e4c270ce373e6999eebfa01d0a7e7db3c537c026f265233350d5aab81fb" }, "тип": "pubkeyhash", "свидетель": ноль, "последовательность": 4294967294 }, { "адреса": [ "n3iWN6buGo6yY3HaupTa37bkvqtqSqLfhG" ], "значение": "0.01180443 ", "value_int": 1180443, "txid": "0faa264b320b82f7268c8f676b50eec9d3dfb6a8a2f53dd494355e5cb66d70a0", "vout": 0, "script_sig": { «asm»: «3044022061b718034f876590d6d80bac77a63248b2548d934849acd02c4f4236309e853002201aded6b24f553b6902cf571276b37b12f76b75650164d8738c74469b1eb4ec8345ec8ec8ec8ec8ec8ec8ec8ec8e6ec8ec8ec8e6ec8ec8ec8ec8ec8ec8eb4e4ec / "шестнадцатеричный": "473044022061b718034f876590d6d80bac77a63248b2548d934849acd02c4f4236309e853002201aded6b24f553b6902cf571276b37b12f76b75650164d8738c74469cb12f76b75650164d8738c74469cb12da6da7387da7385e4e4e4e4e4e4e4e4e4e4e3e4e6e4e6eaaaaaaaaaaa5 }, "тип": "pubkeyhash", "свидетель": ноль, "последовательность": 4294967294 } ], "output_count": 2, "выходы": [ { "адреса": [ "mzXrxNNYrVJgwNL8PGZWTJYbktrhg14kQb" ], "значение": "0.00240000 ", "value_int": 240000, «n»: 0, "script_pub_key": { "asm": "OP_DUP OP_HASh260 d0965947ebb329b776328624ebde8f8b32dc6397 OP_EQUALVERIFY OP_CHECKSIG", "шестнадцатеричный": "76a914d0965947ebb329b776328624ebde8f8b32dc639788ac" }, "req_sigs": 1, "тип": "pubkeyhash", "потратить_txid": null }, { "адреса": [ "myG816eAyq41xY6ZTfYTBNmE8n4aN1YM7x" ], "значение": "0.01034268 ", "value_int": 1034268, «n»: 1, "script_pub_key": { "asm": "OP_DUP OP_HASh260 c2a420d34fc86cff932b8c3191549a0ddfd2b0d0 OP_EQUALVERIFY OP_CHECKSIG", "шестнадцатеричный": "76a914c2a420d34fc86cff932b8c3191549a0ddfd2b0d088ac" }, "req_sigs": 1, "тип": "pubkeyhash", "потратить_txid": null } ], "tx_index": 12079340, "block_index": ноль } }
Еще больше сбивает с толку, не правда ли? Думаю, единственное, что вы должны были заметить, это то, что он отличается от того, что мне дал Ninja.
Попробуйте сами: https://testnet-api.smartbit.com.au / v1 / blockchain / tx / 22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c
0i.s 9000i.s
Вау, это выглядит даже хуже, чем у меня, правда? Выходные данные находятся в форме json, вы можете украсить ее с помощью json beautifier, например: https://jsonformatter.curiousconcept.com/
Вы заметили, что выходы содержат идентификатор вашей транзакции? В качестве упражнения попробуйте их найти.(Можно использовать ctrl + f).
Что? У ниндзя он есть в 3 местах, а у Smartbit только в 2? В этом нет никакого смысла, правда? Или нет?
б) Создайте свою транзакцию
До сих пор я проверял свою транзакцию финансирования. Теперь посмотрим, как я могу провести эту транзакцию, но перед этим давайте разберемся, что я имею в виду, говоря о проведении транзакции? Почему я сказал транзакция, я не хочу тратить биткойны? Но где же биткойны? Теперь наша ментальная модель транзакций здесь начнет давать сбой.Но не бойтесь больше, я нанял лучшего иллюстратора в этой области, чтобы помочь нам развеять наши заблуждения:
У вас есть биткойн-адрес, по которому вы отправляете много транзакций.
Теперь представьте, что выход tx1
уже был потрачен, поэтому вы можете получить доступ к своим биткойнам только на tx2
и tx3
. Таким образом, выходы на tx2
и tx3
не израсходованы. Вы по-прежнему можете их потратить, если у вас есть соответствующий закрытый ключ для адреса.Они называются выходами неизрасходованных транзакций или UTXO s.
Хорошо, а как их тратить? Соединяя UTXO с входом другой транзакции, которую вы хотите создать, а затем транслируете это соединение. Это примерно то, что мы называем тратой биткойнов.
Давайте потратим tx2
, подключив его выход к новому tx. А затем подпишите это соединение закрытым ключом tx2.
Теперь, если вы внимательно прислушиваетесь, вы начинаете распознавать наиболее важные части транзакции:
- вход ,
- выход ,
- биткойн адрес ,
- и подпись всей транзакции с закрытым ключом, который может использовать вход.
Терминология, которую я использовал здесь, является явной ложью, и я был бы первым, кто начал бы ругать автора за это на Reddit, но, по крайней мере, вы можете это понять. Теперь позвольте мне рассказать вам, как правильно описать структуру транзакции:
Размер | Поле | Описание |
---|---|---|
4 байта | Версия | Определяет, каким правилам следует эта транзакция |
1–9 байтов (VarInt) | Входной счетчик | Сколько входов включено |
Переменная | Входы | Один или несколько входов транзакции |
1–9 байтов (VarInt) | Выходной счетчик | Сколько выходов включено |
Переменная | Выходы | Один или несколько выходов транзакции |
4 байта | Locktime | Метка времени Unix или номер блока |
Версия
и locktime для нас не важны, поэтому не будем о них говорить.Счетчики входов и выходов
- это просто два числа, показывающие, сколько у вас входов и выходов. Но этот расчет может быть легко выполнен на любой машине, поэтому для нас они тоже не важны. Подождите ... Я сказал вам, что для транзакции есть только один вход и только один выход, ну, я снова солгал. Может быть и больше , но мы в основном игнорируем его в нашем руководстве, так как в нашей транзакции будет только один вход и один выход.
Так где же биткойн адрес ? Вы указываете это в выводе.Подпись? На входе.
Позвольте мне проиллюстрировать вам:
{ "в":[ { "prev_out": { "hash": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", «n»: 0 }, "ScriptSig": "3044022020ea35009d17d25b8a926675ddf0045c397d3df55b0ae115ef80db7849529b9302201f13bd2cbd1ca0a24e2c5ab28030aa9b7b3dcacf175652dad82fe9d5973f340901 0281d32f6d35b46906eb562ff8b48f4f938c077bcb29d46b0550ff5c61883d3d2d" } ], "вне":[ { "значение": "0.00226000 ", "scriptPubKey": "OP_DUP OP_HASh260 c2a420d34fc86cff932b8c3191549a0ddfd2b0d0 OP_EQUALVERIFY OP_CHECKSIG" } ] }
Это реальный способ, которым я могу потратить свою транзакцию финансирования. Скопируйте его и измените значения с помощью вашей собственной транзакции, которую вы собираетесь создать, вот как:
в: prev_out: hash
Вы знаете, что это? Идентификатор транзакции моей транзакции финансирования. Это транзакция, которую вы отправили на свой первоначальный адрес. Идите и измените это.
в: prev_out: n
Как насчет этого? Еще раз проверьте транзакцию финансирования с помощью HTTP API Smartbit:
Mainnet: https://www.smartbit.com.au/api
Testnet: https://testnet.smartbit.com.au/api
Найдите транзакцию
и выберите вкладку Параметры
. Заполните поле Transaction ID
и нажмите GET
.
Взгляните на транзакцию : выводит
. Сколько выходов вы там видите? В своей транзакции я вижу два:
«адресов»: [«mzXrxNNYrVJgwNL8PGZWTJYbktrhg14kQb»], «значение»: «0.00240000 "," n ": 0 «адреса»: [«myG816eAyq41xY6ZTfYTBNmE8n4aN1YM7x»], «значение»: «0,01034268», «n»: 1
Вы, вероятно, тоже увидите больше одного. Я пропущу объяснение и оставлю вам задачу выяснить, какое значение in: prev_out: n
должно быть в создаваемой вами транзакции.
в: scriptSig
Это подпись. Давайте не будем торопиться с заполнением прямо сейчас. Вам нужно будет подписать транзакцию после ее создания.
из: scriptPubKey
Это биткойн-адрес, на который я хочу отправить деньги.Ну вроде как. Давайте посмотрим на отношения на более глубоком уровне:
«scriptPubKey»: «OP_DUP OP_HASh260 c2a420d34fc86cff932b8c3191549a0ddfd2b0d0 OP_EQUALVERIFY OP_CHECKSIG»
Вы видите те случайные числа, которые я выделил жирным шрифтом? На самом деле это хеш открытого ключа, что бы это ни значило. Адреса биткойнов состоят из байта версии, который определяет сеть, в которой следует использовать адрес, и хеш-код открытого ключа.
Хорошо, это может немного сбить с толку, я даже не сказал вам, что такое открытый ключ, так что не волнуйтесь, если вы этого не понимаете, для нас это не имеет значения, единственный вывод здесь - это соотношение:
адрес биткойна = scriptPubKey + сетевой идентификатор
Таким образом, не имеет значения, работаете ли вы в тестовой сети или в основной сети, scriptPubKey будет одинаковым.
Итак, как получить scriptPubKey с биткойн-адреса? Я не нашел онлайн-инструмента, который вы могли бы использовать для этого, поэтому я создал небольшое программное обеспечение, которое поможет вам в этом. Скачать здесь: https://github.com/nopara73/BitcoinGenie
После запуска сообщите программе:
Хочу узнать скрипт PubKey
И он попросит у вас биткойн-адрес. И возвращает свой scriptPubKey.
Если вы находитесь в тестовой сети, вы можете указать любой адрес (scriptPubkey), даже тот, который я использовал здесь.Неважно, монеты тестовой сети ничего не стоят. Если вы находитесь в основной сети, вы хотите отправить его себе или мне, здесь: 1LYLuYMXkCXDxSfsNoDp8FCb2mA36r29u7
out: значение
Это интереснее, чем кажется на первый взгляд.
Предположим, если у вас есть один вход, на котором находится 1 биткойн, и вы хотите отправить его на один выход, зачем вам вообще нужно указывать значение для выхода? Что, если вы хотите отправить только половину биткойна? Затем вам нужно будет указать вход и указать два выхода со значением 0.5btc на адрес, который вы хотите отправить, и со значением 0,5btc обратно на ваш адрес. Помните, что вы должны потратить весь ввод, вы не можете просто потратить половину!
Но посмотрите на мой:
Я указал "value": "0.00226000"
. Но посмотрите на мой ввод: https://testnet.smartbit.com.au/tx/22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c
На нем 0.0024btc
. Так почему я не указал это в моем выводе? Что с оставшимися (0.0024-0.00226)? Это никуда не денется. Тогда он будет уничтожен? Нет. Это идет к шахтерам. Это комиссия за транзакцию. Так как же рассчитать комиссию майнера? Чем выше комиссия, тем быстрее будет подтверждена ваша транзакция.
Так как же убедиться, что ваша комиссия достаточно высока для подтверждения в пределах 1-2 блоков?
Это довольно просто, просто перейдите сюда: https://bitcoinfees.21.co/api/v1/fees/recommended
Он покажет вам, сколько комиссий вам нужно заплатить относительно размера вашей транзакции. Вот его результат на момент написания этой статьи:
{"fastestFee": 70, "halfHourFee": 70, "hourFee": 60}
Это означает, что для получения самой быстрой комиссии мне нужно умножить размер моей транзакции на 70.Обычные транзакции с биткойнами составляют около 200 байт, поэтому моя комиссия за транзакцию должна быть 70 * 200 = 14000. Вау, это много биткойнов, не так ли? На самом деле это не сатоши. 1 сатоши = 0,00000001 биткойн. Итак, мои 14000 сатоши - это 0,00014btc. На момент написания это 0,1 доллара США. (Цена биткойнов ~ 700usd, 30.10.2016.)
Так какой должна быть комиссия за транзакцию? А что такое out: значение
вам следует указать?
c) Подпишите транзакцию
Теперь давайте построим нашу транзакцию с BitcoinGenie, чтобы мы могли отправить ее в сеть биткойнов.Я предупреждаю вас, не пытайтесь слишком много играть с ним, я не обрабатываю ошибки, и он не обрабатывает ввод, выходящий за рамки этого руководства.
Теперь снова запустите Genie и скажите ему:
Я хочу создать транзакцию
На этом этапе вы, вероятно, сможете самостоятельно ответить на все вопросы Джинна.
Прекратите читать и попробуйте самостоятельно.
Привет друг, я твой биткойн-джинн. Что ты желаешь?Я хочу создать транзакцию
Отлично, вот шаблон для вашей транзакции: { "хеш": "d21633ba23f70118185227be58a63527675641ad37967e2aa461559f577aec43", «вер»: 1, «vin_sz»: 0, "vout_sz": 0, "lock_time": 0, «размер»: 10, "в": [], "вне": [] } Укажите мне его входы и выходы Сначала входы Какой идентификатор транзакции вы хотите потратить?22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c
Какой из них вы хотите потратить? Какой у него идентификатор?0
Отлично, вот как теперь выглядит ваша транзакция: { "хеш": "c8f0ba9cc5083f26cafb5062304c183986c1f4602a27da0c83634af4afca41ec", «вер»: 1, «vin_sz»: 1, "vout_sz": 0, "lock_time": 0, «размер»: 51, "в": [ { "prev_out": { "hash": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", «n»: 0 }, "scriptSig": "" } ], "вне": [] } Теперь построим вывод На какой scriptPubKey вы хотите отправить свои биткойны?OP_DUP OP_HASh260 c2a420d34fc86cff932b8c3191549a0ddfd2b0d0 OP_EQUALVERIFY OP_CHECKSIG
Сколько биткойнов вы хотите отправить туда? <код> 0.00226 Отлично, вот как теперь выглядит ваша транзакция: { "хеш": "c76361f91fc762455a3aab1b27c58369d8973e0141a9725095d318aba99bca33", «вер»: 1, «vin_sz»: 1, "vout_sz": 1, "lock_time": 0, «размер»: 85, "в": [ { "prev_out": { "hash": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", «n»: 0 }, "scriptSig": "" } ], "вне": [ { "значение": "0,00226000", "scriptPubKey": "OP_DUP OP_HASh260 c2a420d34fc86cff932b8c3191549a0ddfd2b0d0 OP_EQUALVERIFY OP_CHECKSIG" } ] } Теперь сообщите мне свой privateKey, чтобы я мог подписать транзакцию:cTLUtfv2Sq5K1yjs5fcRmxitL51i35WmVxaCGUCbfCp722V5aMVY
Вы подписали свою транзакцию в TestNet Вот как выглядит ваша финальная транзакция: { "hash": "2a6ed4792dcefd16b7d213f2171ab75e407e53d6a4a43d1d5911b720f4a89857", «вер»: 1, «vin_sz»: 1, "vout_sz": 1, "lock_time": 0, «размер»: 191, "в": [ { "prev_out": { "hash": "22ab5e9b703c0d4cb6023e3a1622b493adc8f83a79771c83a73dfa38ef35b07c", «n»: 0 }, "ScriptSig": "3044022020ea35009d17d25b8a926675ddf0045c397d3df55b0ae115ef80db7849529b9302201f13bd2cbd1ca0a24e2c5ab28030aa9b7b3dcacf175652dad82fe9d5973f340901 0281d32f6d35b46906eb562ff8b48f4f938c077bcb29d46b0550ff5c61883d3d2d" } ], "вне": [ { "значение": "0.00226000 ", "scriptPubKey": "OP_DUP OP_HASh260 c2a420d34fc86cff932b8c3191549a0ddfd2b0d0 OP_EQUALVERIFY OP_CHECKSIG" } ] } Вот шестнадцатеричный код вашей транзакции: 01000000017cb035ef38fa3da7831c77793af8c8ad93b422163a3e02b64c0d3c709b5eab22000000006a473044022020ea35009d17d25b8a926675ddf0045c397d3df55b0ae115ef80db7849529b9302201f13bd2cbd1ca0a24e2c5ab28030aa9b7b3dcacf175652dad82fe9d5973f3400281d32f6d35b46906eb562ff8b48f4f938c077bcb29d46b0550ff5c61883d3d2dffffffff01d0720300000000001976a914c2a420d34fc86cff932b8c3191549a0ddfd2b0d088ac00000000 Для выхода нажмите Enter...
Отличная работа, наконец-то мы можем двигаться дальше и транслировать это!
4. Трансляция в сеть
Вы видите шестнадцатеричный код транзакции? Теперь обратите внимание на это. Это то, что мы предоставим сети Биткойн.
Но сначала давайте быстро проверим. Перейдите в API Smartbit и выберите ДЕКОДИРОВАТЬ ТРАНЗАКЦИЮ
:
Основная сеть: https://www.smartbit.com.au/api
Тестовая сеть: https://testnet.smartbit.com.au/api
Скопируйте свой шестигранник.Все в порядке? Отлично, теперь давайте и НАЖМИТЕ СДЕЛКУ
на той же странице.
{ "успех": правда, "txid": "2a6ed4792dcefd16b7d213f2171ab75e407e53d6a4a43d1d5911b720f4a89857" }
Если вы получили такой же результат, значит, вы все сделали хорошо.
Проверьте только что совершенную транзакцию: https://testnet.smartbit.com.au/tx/2a6ed4792dcefd16b7d213f2171ab75e407e53d6a4a43d1d5911b720f4a89857
Заключение
Поздравляю, у вас все получилось.Вы знаете о Биткойне больше, чем большинство биткойн-энтузиастов. Теперь вы официально являетесь мастером биткойнов.
.Цитата:
Один из нас ... один из нас ...