Определить входы/выходы транзакции перед отправкой

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

Я пытаюсь определить входы/выходы, а не формулу размера транзакции
Я действительно не понимаю вашего вопроса, но я думаю, что вы ищете термин «выбор монет» или «контроль монет». Этот вопрос может помочь объяснить возникшую проблему: каков алгоритм выбора монеты? . Вы знаете, что такое UTXO ?

Ответы (1)

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

В зависимости от ваших потребностей вы можете использовать различные алгоритмы выбора монет . Целью алгоритма выбора монет является выбор входных данных из пула UTXO , которыми вы управляете. Выбор слишком большого количества для одной транзакции приведет к более высокой комиссии. Однако отказ от использования меньших UTXO оставит весь ваш пул из мелких, что вынудит вас использовать их (и платить более высокие сборы) до тех пор, пока ваш пул не восстановится.

У разных алгоритмов есть свои плюсы и минусы, особенно когда вы беспокоитесь о комиссиях, поэтому обязательно осознайте последствия своего решения. Хорошим местом для начала может быть презентация @Murch на Scaling Bitcoin .