Что такое идентификатор криптовалютной транзакции

2023-06-17

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

Идентификатор транзакции: что это такое

Идентификатор транзакции (Transaction ID, TxID) — это уникальный код, состоящий из определенной последовательности букв и цифр. Он присваивается каждой транзакции в блокчейне и является ее хешем – уникальным значением, которое генерируется при помощи криптографического алгоритма на основе информации, содержащейся в транзакции. Полученный хеш используется для идентификации и обеспечения безопасности платежей в блокчейне. 

Зачем нужен TxID

С помощью TxID каждая новая транзакция связывается с предыдущей. Это позволяет убедиться, что транзакции выстраиваются в правильном порядке и что они не были изменены или подделаны. 

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

Условия для создания TxID

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

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

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

Иногда сетевые узлы могут отклонять переводы по разным причинам — из-за низкой комиссии, недостаточного баланса у отправителя, перегрузки сети и т. д. В этих случаях TxID, созданный в кошельке, не будет использован и не будет связан с какой-либо транзакцией в блокчейне. Тогда он станет недействительным и исчезнет из публичного реестра. 

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

Процесс создания TxID 

Хеш-значение (или хеш) вычисляется с помощью хеш-функции. Это математический алгоритм, который преобразует произвольный входной текст (например, транзакционные данные) в уникальный выходной хеш-код фиксированной длины. Хеш-функция обычно является односторонней, то есть использовать хеш-код для восстановления исходных данных нельзя. 

У каждой криптовалютной сети свой метод хеширования. Например, в биткоине используется алгоритм SHA-256 (Secure Hash Algorithm 256-bit). Он принимает на вход данные, которые нужно захешировать, и возвращает 256-битное хеш-значение из 64 символов примерно такого формата:

0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098

Этот процесс можно представить в виде следующих шагов:

  1. Хеш-функция получает входные данные — транзакционную информацию.

  2. Из этих данных хеш-функция генерирует уникальный хеш-код — набор символов фиксированной длины (в биткоине 256 бит).

  3. Полученный хеш-код сохраняется в блокчейне, где он становится частью уникальной цепочки блоков.

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

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

Как создается транзакция

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

Например, в сети Биткоин для создания хеш-значения используется три типа данных: 

  • входы транзакции;

  • выходы транзакции;

  • подпись. 

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

Входы транзакции

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

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

Эта ссылка содержит следующую информацию:

  • идентификатор выхода, который теперь используется в качестве входа;

  • адрес отправителя;

  • адрес получателя;

  • сумма. 

При создании нового платежа отправитель может указать один или несколько входов. Например, если в кошельке два входа — на 3 и на 4 BTC, можно использовать оба, чтобы перевести 7 BTC на новый адрес.  

Выходы транзакций

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

  • ссылку на вход, из которого он был создан;

  • о том, на какие адреса будет отправлена криптовалюта;

  • о сумме перевода.

При этом отправитель может разделять входы на части. Например, из входа на 10 BTC можно создать выход на 3 BTC. Оставшаяся сумма в размере 7 BTC — это неизрасходованный выход, unspent transaction outputs (UTXO). Отправитель также может переводить криптовалюту на несколько адресов одновременно.

Подпись

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

Таким образом, транзакционная информация лежит в основе безопасности блокчейна. 

Принцип построения цепочки входов и выходов

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

Если владелец счета А хочет создать транзакцию (T1), он должен указать: 

  • получателя (например, счет В);

  • количество монет (например, 1Х).

Эта информация шифруется и сохраняется в идентификаторе транзакции Т1. 

В момент отправки такой перевод получает следующие свойства:

  • становится выходом из счета А — продолжением предыдущих поступлений;

  • становится входом в счет В. 

До тех пор пока монета 1Х остается на счету В, транзакция Т1 считается входом. 

Аналогично, если владелец счета B хочет перевести 1Х на счет С, он должен указать (T2):

  • получателя — счет С;

  • количество монет — 1Х.

В момент отправки перевод Т2 получает следующие свойства:

  • становится выходом из счета В — продолжением транзакции Т1; 

  • становится входом в счет С. 

До тех пор пока монета 1Х остается на счету С, транзакция Т2 считается входом. 

Как можно использовать идентификатор транзакций

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

  • отправитель может проверить, что его платеж успешно попал в блокчейн;

  • получатель может убедиться, что перевод был отправлен на его счет.

Помимо этого, TxID позволяет просмотреть дополнительную информацию:

  • сумму;

  • валюту (монета или токен);

  • статус: завершено, не завершено, ожидается, в процессе и т. д;

  • номер блока, в котором сохранена транзакция; 

  • время совершения перевода; 

  • комиссию и т. д.

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

Для разных блокчейнов существуют разные обозреватели: 

  • Bitcoin — blockchain.info;

  • Ethereum — etherscan.io;

  • BNB — bscscan.com;

  • TRON — tronscan.org;

  • Polkadot — explorer.polkascan.io. 

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

Просмотреть можно только криптографические сведения. Никто не знает, кто, кому и зачем отправил платеж — так одновременно обеспечивается публичность сети и анонимность пользователей. 

Нас выбирают более 246,250,408 пользователей. Узнайте почему.
Зарегистрироваться