Итак, представьте, что я купил 1 BTC, поэтому у меня есть свой закрытый ключ, сгенерированный моим онлайн-кошельком, а также мой открытый ключ, который я могу передать людям/друзьям. Мой вопрос: если я потрачу 0,5 на покупку яблок на веб-сайте?
Как это работает?
1) На сайт отправляется всего 0,5 BTC, у меня еще осталось 0,5 BTC на приватном ключе А
2) Всего через протокол отправляется 1 BTC, таким образом, сдача возвращается мне. На каком ключе? Ключ A, где у меня был 1 BTC? Или новый сгенерирован? (Ключ Б)
Спасибо :)
Каждому закрытому ключу соответствует ровно один открытый ключ, и каждый открытый ключ имеет один адрес. Всякий раз, когда генерируется новый адрес, это означает, что генерируются новый закрытый ключ и открытый ключ. Обратите внимание, что с BIP32 и BIP44 закрытые ключи могут быть сгенерированы детерминировано из мастер-ключа или начального числа, и в этом случае эти новые закрытые ключи не нужно сохранять — их можно просто восстановить из начального или основного ключа, когда это необходимо.
Для каждого изменения в большинстве кошельков используется новая пара ключей, но это делается внутренне — он не покажет вам адрес для них, так как никому больше не нужно отправлять вам деньги на это.
Создание адресов очень дешево. Современный процессор может генерировать 1000 секунд в секунду. Он также не требует никакого взаимодействия с сетью. Все, что нужно, это сгенерировать 32 байта случайных данных и вычислить соответствующую точку эллиптической кривой.
Если бы весь 1 BTC находился в одном неизрасходованном выводе транзакции (UTXO), то вы действительно отправили бы весь 1 BTC в качестве ввода в транзакции и назначили бы его двум новым выходам: 0,5 BTC для оплаты и 0,5 BTC для возврата сдачи. самому себе.
Если 1 BTC был разделен на несколько неизрасходованных выходов транзакций, то у вас может быть комбинация, равная ровно 0,5 BTC, например, вы можете использовать 0,1 BTC + 0,2 BTC + 0,2 BTC. Тогда никакие изменения не будут созданы.
Отправляете ли вы сдачу на тот же адрес, что и раньше, или на новый адрес, зависит от создателя транзакции. Однако большинство кошельков по умолчанию избегают повторного использования одного и того же адреса, поэтому вывод сдачи отправляется на новый адрес.
рный
Марч
Пьеррю
Пьеррю