Как я могу отправить биткойны в своем веб-приложении без запуска демона на моем сервере? Есть ли способ сделать это? Разрешают ли третьи лица отправлять через них?
Да это вполне возможно. Есть службы, которые запускают полнофункциональные API, которые предоставляют почти все, что может сделать клиент.
Существуют и другие торговые процессоры, которые имеют аналогичную функциональность в зависимости от того, что вы хотите делать.
Если бы вы могли каким-то образом отслеживать выходные данные, находящиеся в вашем распоряжении (которые вы можете отправить в исходящей транзакции, вы могли бы фактически создать транзакцию, подписать ее и отправить ее демону биткойн или blockchain.info (через sendrawtransaction
вызов API), чтобы получить ее . в сеть.
Отслеживание выходных данных — единственная причина, по которой вам, вероятно, придется запускать демон. Даже если вы создаете один вывод для 100 BTC, а затем начинаете создавать транзакции из этого вывода, отделяя небольшие суммы и отправляя сдачу обратно, это делает транзакции зависимыми друг от друга. Как только одна транзакция не будет подтверждена (из-за ошибки, неполной комиссии или двойной траты), все последующие транзакции также не будут выполнены.
Тратить биткойны без подключения к сетевому оверлею можно, но в какой-то момент вам придется синхронизироваться с сетью, чтобы убедиться, что транзакции были приняты, и заполнить выходной пул для будущих расходов.
Для отправки биткойнов вам необходимо:
Клиент Bitcoin.org делает все это элегантно, и пользователю не нужно знать ничего, кроме адреса или адресов для оплаты и суммы. Создание транзакции вручную означает получение данных из блокчейна, выполнение криптографической подписи с использованием закрытого ключа и широковещательную рассылку этой транзакции одноранговым узлам.
В статье Raw Transactions API на Bitcoin.it Wiki это описано подробнее.
~~Это делается с помощью кода Javascript с Brainwallet.org~~ [Обновление: это несуществующее, ссылка удалена]:
Теперь, если вам просто нужно отправить с узла, который не находится в активном соединении (но имеет текущую цепочку блоков), вы можете сделать это с помощью клиента Armory:
Кроме того, клиент Electrum, по-видимому, может использоваться для предоставления вам необработанной транзакции, которая затем может быть передана для траты монеты. Electrum использует внутренний сервер, который выполняет всю работу, которую клиент Bitcoin.org выполнил бы при построении транзакции.
Когда у вас есть необработанная транзакция для трансляции, вы можете использовать API PushTx на blockchain.info или BrainWallet.org также позволит вам [транслировать транзакцию][3].
Эккис