Bitcoin.com

Как работают транзакции Bitcoin?

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

Последнее обновление
Опубликовано
Время чтения8 min read
Автор
Neil Author
Neill Velardo
Проверил
Graham Stone Author Image
Graham Stone
How do Bitcoin transactions work?

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

Используйте мультичейн приложение Bitcoin.com Wallet, которому доверяют миллионы, чтобы безопасно и легко отправлять, получать, покупать, продавать, обменивать и управлять самыми популярными криптовалютами. Вы также можете подключаться к тысячам децентрализованных приложений (DApps), от игр до финансовых деривативов.

Обзор

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

  1. Создание транзакции: Когда вы отправляете биткойн, вы создаете транзакцию из своего цифрового кошелька. Эта транзакция включает адрес отправителя (публичный ключ), адрес получателя (публичный ключ), количество биткойнов для отправки и комиссию за транзакцию, которую вы готовы заплатить майнерам.
  2. Цифровые подписи: Чтобы доказать, что вы владелец биткойнов, которые хотите отправить, транзакция должна быть подписана с использованием вашего закрытого ключа через криптографический процесс. Это называется цифровой подписью. Очень важно держать ваш закрытый ключ в секрете, потому что он подобен вашему цифровому паролю.
  3. Распространение и подтверждения: После подписания транзакция транслируется в сеть Биткойн и попадает в мемпул, который похож на зал ожидания для транзакций, ожидающих подтверждения. Майнеры могут выбирать транзакции из мемпула для формирования новых блоков. Первый майнер, решивший сложную математическую задачу, получает право создать следующий блок. Победивший майнер транслирует свой новый блок, который подтверждается остальной сетью.
  4. Завершение транзакции: После подтверждения новый блок добавляется в копию блокчейна каждого участника сети. Транзакции в новом блоке считаются подтвержденными. Однако распространенная практика — ждать как минимум шесть подтверждений (добавление шести блоков после блока, содержащего вашу транзакцию), чтобы считать транзакцию окончательной. Это делается для того, чтобы убедиться, что транзакция не будет отменена или потрачена дважды в случае временной развилки в блокчейне.

Биткойны существуют как записи транзакций с биткойнами

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

Биткойны не "существуют" как таковые. Нет физических биткойнов, и у владельцев биткойнов нет "счета". Вместо этого существует "блокчейн", который можно рассматривать как реестр или запись всех транзакций, когда-либо произошедших между биткойн-адресами. Эти записи транзакций обновляются участниками сети Биткойн (узлами) и распространяются по каждому из узлов по мере увеличения и уменьшения балансов. Вы можете использовать 'block explorer', если хотите увидеть историю и текущий баланс любого данного биткойн-адреса.

Публичные и приватные ключи

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

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

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

Читать далее: Убедитесь, что ваши цифровые активы в безопасности с помощью этих простых советов.

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

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

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

-Сатоши Накамото, Bitcoin white paper

Давайте разберем этот раздел белой книги Биткойна, рассмотрев пример транзакции на практике:

Марк хочет отправить 1 BTC Джессике. Для этого он использует свой приватный ключ, чтобы "подписать" сообщение с данными, относящимися к транзакции. Это сообщение, которое должно быть передано сети, будет содержать следующее:

  • Входы. Это содержит информацию о биткойнах, ранее отправленных на адрес Марка. Например, представьте, что Марк ранее получил 0.6 BTC от Алисы и 0.6 BTC от Боба. Теперь, чтобы отправить 1 BTC Джессике, может быть два входа: один вход на 0.6 BTC ранее от Алисы и один вход на 0.6 BTC ранее от Боба.
  • Сумма. В этом случае сумма, которую Марк хочет отправить, составляет 1 BTC.
  • Выходы. Существует два выхода. Первый — это 1 BTC на адрес Джессики. Второй — 0.2 BTC, возвращенные как "сдача" Марку. Этот второй выход рассчитывается как сумма входов [0.6 + 0.6 = 1.2], минус сумма, которую Марк хочет отправить [1 BTC].

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

Распространение и подтверждения

В приведенном выше примере Марк (через программное обеспечение своего кошелька) будет транслировать свою предложенную транзакцию в сеть Биткойн. Специальная группа участников сети, известных как "майнеры", проверяет, что ключи Марка могут получить доступ к входам (т.е. адресам), с которых он ранее получил биткойны, которыми утверждает, что владеет. Майнеры также собирают список других транзакций, которые были переданы в сеть в то же время, что и транзакция Марка, и формируют их в блок. Любой майнер, который завершил "Proof of Work", может предложить новый блок, который будет добавлен или "прикреплен" к цепочке, ссылаясь на последний блок. Этот новый блок затем транслируется в сеть. Если другие участники сети (узлы) соглашаются, что это действительный блок (т.е. содержащиеся в нем транзакции соответствуют всем правилам протокола и должным образом ссылаются на предыдущий блок), они передают его дальше. В конечном итоге другой майнер будет строить на его основе, ссылаясь на него как на предыдущий блок при предложении следующего блока. Любые транзакции, которые были в предыдущем блоке, теперь будут "подтверждены" следующим майнером. По мере добавления блоков в цепочку количество подтверждений транзакции Марка увеличивается.

Почему подтверждения некоторых транзакций с биткойнами занимают так много времени?

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

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

Читать далее: Поймите, как сеть Биткойн принимает критические решения, такие как размер блока.

Сколько стоят комиссии за транзакции с биткойнами?

Комиссии за отправку биткойнов могут варьироваться от нескольких центов до 100 долларов. Причина большого варьирования заключается в том, что комиссии за биткойны зависят как от предложения и спроса (т.е. насколько загружена сеть в данный момент), так и от "размера" вашей транзакции. Размер в первую очередь зависит от входов, поэтому, если ваша транзакция имеет много входов, она займет больше места в блоке и потребует более высокой комиссии. Например, если вы хотите отправить 10 BTC, есть большая вероятность, что ваша транзакция потребует больше входов, чем если бы вы хотели отправить 1 BTC. Транзакция на 10 BTC может состоять из 5+2+1+1+1 (всего 5 входов), в то время как транзакция на 1 BTC может иметь всего два входа, как в нашем примере с Марком и Джессикой.

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

Читать далее: Поймите все нюансы отправки биткойнов.

Будьте в курсе последних событий в мире криптовалют

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

Еженедельные новости о криптовалютах, отобранные специально для вас

Практические выводы и полезные советы

Новости о продуктах, способствующих укреплению экономической свободы

Начните безопасно инвестировать с помощью кошелька Bitcoin.com

На сегодняшний день создано более 85 млн кошельков. Здесь есть всё необходимое для безопасной покупки, продажи, обмена и инвестирования ваших биткойнов и криптовалют.

A screenshot of the Bitcoin.com Wallet app

Отсканируйте код, чтобы загрузить кошелек Bitcoin.com

Отсканируйте этот QR-код с помощью мобильного устройства — вы будете автоматически перенаправлены на страницу нужного магазина.