Что такое сдача в биткоин транзакциях
Перейти к содержимому

Что такое сдача в биткоин транзакциях

  • автор:

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

Биткоин-транзакции не работают так же, как у PayPal или по кредитным картам. Децентрализованные и одноранговые транзакции биткоина это немного более сложный процесс.

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

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

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

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

— Сатоши Накамото, WhitePaper Биткоина

Как отправлять и получать биткоины

• Чтобы отправить биткоин, вам необходимо знать адрес биткоин-кошелька получателя.

• Чтобы получить биткоин, вам нужно иметь адрес своего биткоин-кошелька и сообщить его отправителю.

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

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

Составляющие биткоин-транзакции

Биткоин-транзакция состоит из трех частей:

  • Ввод: запись исходного биткоина, отправленного на адрес кошелька нового отправителя.
  • Сумма: количество отправляемых BTC.
  • Выход: адрес кошелька получателя, также известный как биткойн-адрес или открытый ключ.

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

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

Одно предостережение

Поскольку биткойны существуют только в виде записей о транзакциях, вы можете отправить только ту сумму, которую получили ранее. Если Женя отправил вам 0,25 BTC, но вы хотите купить что-то за 0,1 BTC, ваш кошелек должен отправить все 0,25 BTC, а затем вы получите обратно оставшиеся 0,15 BTC, записанные как отдельная транзакция кошелька (ваша «сдача »).

Звучит сложно, но на самом деле это просто говорит о том, что биткойн не существует в пуле «денег», подобно копилке. Вы можете увидеть 0,75 BTC в своем биткойн-кошельке, но если они поступят тремя отдельными транзакциями по 0,25 BTC, они останутся такими, пока вы не отправите их куда-нибудь еще. Затем каждая предыдущая транзакция обрабатывается отдельно, чтобы сохранить цепочку транзакций в виде нерушимой и отслеживаемой исторической записи. Вы будете платить майнеру комиссию за обе части транзакции: часть, которая идет к получателю, и часть, возвращаемая вам в качестве сдачи.

Если вы хотите инвестировать в криптовалюту, но боитесь начать, советуем вам начать с облачного майнинга. Хотите попробовать бесплатно? Регистрируйтесь и получите в подарок контракт на облачный майнинг на месяц!

Подписывайтесь на нас в социальных сетях:

Как работает «сдача» при совершении Bitcoin транзакции?

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

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

Один из этих адресов действительно тот, который был указан мной как «получатель» в биткоин-клиенте, при отправке денег.

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

Наверно я ничего не понимаю из-за того, что не знаю что-такое Инпуты и Оутпуты и, вообще, как хранятся данные в Blockchain.

Задал вопрос на Reddit/r/Bitcoin, там мне посоветовали эту ссылку
bitcoin.stackexchange.com/questions/736/how-does-c.

Читаю, перевожу, даже распечатал. Ничего не понимаю.

По поводу разницы между аккаунтом и адресом, это понятно. Аккаунт один, адресов в нем много. К каждому адресу приватный ключ. Но кто такие «Инпуты» и «Оутпуты» и почему они существуют?

Буду крайне признателен за помощь.

UPDATE: Забыл указать, что для просмотра транзакций я использовал адрес https://blockchain.info/ru/address/, а в качестве биткоин клиента оригинальный bitcoin-qt

  • Вопрос задан более трёх лет назад
  • 11957 просмотров

Комментировать
Решения вопроса 0
Ответы на вопрос 3

Нет такого понятия как «деньги на кошельке Y». Есть понятие «перевели сумму X на кошелек Y». Из этих переводов и складывается сумма на кошельке. И потратить вы(если ничего не путаю)можете только такими же кусками, как вам перечисляли. То есть, например, у вас 2 биткоина, которые попали к вам 4мя переводами по 0.5. Если вы хотите перевести кому-то 1.8, то говорите, что «я беру эти 4 транзакции и из них 1.8 отдаю такому то чуваку, а 0.2 оставляю себе» либо на один из существующих кошельков, либо на заново сгенеренный.

Ответ написан более трёх лет назад
Комментировать
Нравится 2 Комментировать

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

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

Вобщем, это нужно немного осмыслить 🙂

Ответ написан более трёх лет назад
Yordi @Oleg_Yozhik Автор вопроса

Ага, кажется начинаю понимать. Т.е. Вход — это приход денег. Например мне кто-то оправил 5 БТЦ на мой адрес, значит появился Вход на 5 биткоинов. Теперь если мне нужно будет потратить 1 битикоин, то транзакция будет состоять из перевода в 5 БТЦ и сдача в 4 БТЦ, верно?

Мне только непонятно почему делить «купюру» перед отправкой нельзя, а вот при возврате сдачи проблем с разделением не возникает? Наверняка в этом есть определенный смысл.

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

Фигуративно также существует TransactionChain — это уже другая цепочка в этой цепочке транзакции идут друг за другом, ссылаясь друг на друга с момента когда произошла эмиссия (например цепочка из 500 транзакций и так пока фрактальный резерв не закончится).

Меня интересует больше другой вопрос: насколько я понял проверкой TransactionChain занимается комп.пользователя биткоин клиента на основании данных полученных из папки блокчейн и пр. информации — также мне неизвестна иерархия хранения — подскажите — блокчейн хранится отдельно от транзакшнчейна или транзакшнчейн прямо в одном файле находится вместе с блокчейном?

Но самый основной вопрос который прямо не даёт мне спать: насколько длинной должна стать цепочка этих аутпутов / инпутов отсчитывая от genesis block чтобы засорить процессор чрезмерно сложными вычислениями? Да я понимаю что биткоин-клиент в первом запуске может несколько часов только лишь проверять цепочки TransactionChain’a на валидность (если я правильно понял по таймингу, если неправильно то поправьте — и скажите сколько реально на что в основном уходит время).

Меня интересует насколько должна быть большая цепочка TransactionChain’a для того чтобы компьютеру ушло более 1 дня на анализ происходящего (В том плане если в будущем не обрезать блокчейн ведь так и так будут копиться астрономические суммы).

Скорость проведения Bitcoin-транзакций

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

Размер комиссии за транзакцию определяет сам пользователь, и он может указать любую сумму. Однако нулевая или слишком маленькая комиссия может привести к бесконечной задержке, т.е. транзакция не будет принята и средства возвратятся только через несколько недель.

После отправки в сеть перевод попадает в очередь (Мempool) транзакций, которые ожидают включения в новый блок. Так как размер блока имеет фиксированную величину (примерно 1Мб), а размер транзакции в байтах может быть различным, то в блок отбираются в первую очередь те транзакции, у которых удельная комиссия (“размер комиссии в сатоши/размер транзакции в байтах”) максимальна.

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

Как добиться быстрой обработки транзакций¶

Популярные биткойн-кошельки как правило рекомендуют вполне приемлемый размер комиссии. Однако из-за колебаний загрузки сети (т.е. объема всех неподтвержденных в данных момент транзакций) скорость обработки переводов с предлагаемыми комиссиями может быть неудовлетворительной.

Для ускорения обработки транзакции оптимальную комиссию можно определить самостоятельно. Для этого нужно:

  • определить размер своей транзакции в байтах (показывается в параметрах транзакции в биткойн-кошельке);
  • из текущей статистики сети (см. например, https://bitcoinfees.earn.com) выбрать значение удельной комиссии, при которой достигается необходимая скорость обработки транзакции;
  • рассчитать размер комиссии.

Например, для транзакции объемом 350Б в 0 часов 25 января комиссия составляет:

  • для принятия в ближайший новый блок (до 25 минут) не менее 0,81 mBTC (231с/Б * 350Б);
  • для принятия в 1-9 блок (до 2 часов) не менее 0,28 mBTC (81с/Б * 350Б).

При переводе средств на биткойн-кошелек сервисы WebMoney (Сервис пополнения и вывода WMX, Интернет-биржа INDX, секция Crypto обменника Exchanger) предлагают устанавливать оптимальный размер комиссии. Для расчета этой величины берется усредненное за несколько дней значение объема транзакции и удельная комиссия, обеспечивающая попадание транзакции в один из ближайших 3-5 новых блоков.

Биткоин-кошелёк и сдача на нём. Как не потерять деньги

Расскажем простым языком о сдаче в кошельках Биткоина и других криптовалют. Поскольку большинство криптовалютных кошельков — это форки (клоны) кошелька Bitcoin Core, они работают одинаково.

Биткоин-кошелёк и сдача на нём. Как не потерять деньги. Фото.

Если хотите разобраться в принципах работы кошельков, обязательно прочтите статьи из нашей Криптовалютной Библии:

Устанавливаем кошелек Bitcoin Core.

Важное уточнение: описанный ниже принцип работы актуален для Litecoin, Doge, DASH, Ravencoin, Firo и других форков Биткоина. Их кошельки работают точно так же.

Рассмотрим вопрос сразу на практике. Как и почему так происходит — вопрос к Сатоши Накамото. В интернете этот процесс объясняют заботой о вашей безопасности и приватности. Мы будем обсуждать именно Bitcoin, хотя, повторимся, процесс работы кошелька аналогичен для многих других криптовалют. Кстати, в сети Ethereum все происходит намного проще и кошельков для сдачи и проблем с ними не существует.

Первым делом мы скачиваем программу Bitcoin Core с официального сайта и ждем пока ваша Bitcoin-нода синхронизируется с остальным миром. Bitcoin Core — самая надежная программа кошелька для хранения BTC с полной копией блокчейна на вашем компьютере. Обратите внимание, что на это может уйти много времени (вплоть до нескольких дней) и много свободного места на жестком диске (около 400 GB). Ваш кошелек для хранения криптовалюты создается автоматически при первом запуске программы.

Сдача в Bitcoin кошельке. Откуда она берётся и куда идёт?

Биткоин-кошелёк и сдача на нём. Как не потерять деньги. Сдача в Bitcoin кошельке. Откуда она берётся и куда идёт? Фото.

Заходим в меню программы-кошелька Bitcoin, смотрим адрес получения средств (File -> Receiving address). Допустим, у вас есть 2 пиццы, а ваш друг хочет обменять их на свой Bitcoin. Даем другу первый адрес из Receiving Address, назовем его Адрес А. Он отправляем вам 2BTC, а вы даете ему 2 пиццы. Монеты приходят. Теперь на вашем кошельке есть 2 BTC. Затем отправляем Маше 1 BTC за услуги — на кошельке остаётся 1 BTC. Но не всё так просто. Оставшийся 1 BTC лежит не на Адресе А, а на новом Адресе Б. Почему так произошло?

Полученные 2 BTC стоит рассматривать как банкноту в 2000 рублей. Когда мы платим 1000 рублей Маше, мы не можем взять и разрезать банкноту пополам. Мы даём банкноту в 2000 рублей, а затем получаете бумажку в 1000 рублей в виде сдачи. Чаще всего криптовалютный кошелек работает так, что сдача идёт на новый адрес.

Биткоин-кошелёк и сдача на нём. Как не потерять деньги. Сдача в Bitcoin кошельке. Откуда она берётся и куда идёт? Фото.

Визуально в кошельке заметить это будет невозможно, поскольку кошелёк просто показывает баланс в 1 BTC. Баланс кошелька — это сумма балансов всех ваших адресов. Кстати, с точки зрения блокчейна ваши адреса не связаны никаким образом. Просто кошелёк объединяет их под одной крышей.

Почему мой Биткоин-адрес меняется?

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

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

Где мои деньги? Как посмотреть адреса для сдачи?

Есть стандартная команда getaccountaddress «» которая показывает адрес для получения средств. Она в данном случае не подойдет, потому что покажет только 1 текущий адрес.

В консоли кошелька нужно ввести команду listaddressgroupings
Эта команда покажет все адреса в вашем кошельке и их балансы соответственно.

Биткоин-кошелёк и сдача на нём. Как не потерять деньги. Где мои деньги? Как посмотреть адреса для сдачи? Фото.

Можно ли настроить пути отправки сдачи?

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

Можно ли выбрать адрес, с которого отправлять транзакцию?

Нет. Но как же тогда быть? Как пользоваться анонимными сервисами?

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

Как можно потерять деньги на сдаче?

Без дополнительных настроек кошелек Bitcoin хранит только 100 адресов по умолчанию. Предположим, мы заводим кошелек и делаем его резервную копию. Дальше отправляем тонны монеты своим друзьям, причём на 101-й транзакции ваш бэкап уже не будет хранить все ваши адреса. Если на первом адресе остались монеты — нам крышка.

Как избежать?

  • Постоянно делаем резервные копии;
  • Увеличиваем количество хранимых адресов. Для этого в файл bitcoin.conf вносим параметр keypool=10000;
  • Указываем в настройках, чтобы сдача приходила каждый раз на один и тот же кошелёк.

Биткоин-кошелёк и сдача на нём. Как не потерять деньги. Как можно потерять деньги на сдаче? Фото.

Кстати, в последних версиях кошелька Bitcoin Core количество хранимых адресов было увеличено со 100 до 1000. Приятно.

И ещё раз для закрепления: описанный ниже принцип работы актуален для Litecoin, Ravencoin, Dash, Firo, Doge и других форков Биткоина. Их кошельки работают точно так же.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *