如何使用私钥和密码从地址发送以太币?
How to send Ether from Address with private key and password?
我正在尝试使用 PHP 和 Cron 从现有帐户使用 web3 或类似的东西发送 Ether,关于如何完成此操作的任何提示?
我有 JSON SQL table {"address":"0x22b853A8Df90BF9A7e21445C16FBbEaa43e0c307","password":"inu8p","privateKey":"0xb9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56"}
问题是 javascript 没有通过 CRON 执行。
Node 中是否有任何库可以让我通过 API 或其他方式发送 POST 请求?
任何帮助将不胜感激。
您可以使用 geth or other client's RPC server. You can send a request to the RPC server via web3,甚至可以使用 node 的 http 模块,但 Web3 更容易。
然后您可以使用节点 cron 模块来安排它,例如:https://www.npmjs.com/package/cron
您需要确保您使用的任何 RPC 服务器都已安全设置,因为存在针对它们的主动扫描和攻击。
部分示例:
//Send some eth every hour
new CronJob('* * * 1 0 0', () => {
//The following arguments are simplified...
web3.eth.sendTransaction({from: "0xc0ffee", to: "0xdeadbeef...", value: "1.0"}, () => {
console.log('transaction sent');
});
}, null, true, 'America/Los_Angeles');
您想在 PHP 中发送原始以太坊交易,因此在您的情况下我建议使用 php-eth-raw-tx 包。
用法很简单:
$tx = new \EthereumRawTx\Transaction(
\BitWasp\Buffertools\Buffer::hex('d44d259015b61a5fe5027221239d840d92583adb'),
\BitWasp\Buffertools\Buffer::int(1 * 10**18),
);
$raw = $tx->getRaw(\BitWasp\Buffertools\Buffer::hex('b9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56'));
在此示例中,您从地址 0x22b853A8Df90BF9A7e21445C16FBbEaa43e0c307
(由私钥 0xb9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56
识别)发送 1.0 ETH 到地址 0xd44d259015b61a5fe5027221239d840d92583adb
.
您需要做的就是创建一个 PHP 文件并将其添加到您的 crontab。
在此处查看更多示例:https://github.com/Domraider/php-eth-raw-tx/tree/master/examples
我正在尝试使用 PHP 和 Cron 从现有帐户使用 web3 或类似的东西发送 Ether,关于如何完成此操作的任何提示?
我有 JSON SQL table {"address":"0x22b853A8Df90BF9A7e21445C16FBbEaa43e0c307","password":"inu8p","privateKey":"0xb9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56"}
问题是 javascript 没有通过 CRON 执行。 Node 中是否有任何库可以让我通过 API 或其他方式发送 POST 请求?
任何帮助将不胜感激。
您可以使用 geth or other client's RPC server. You can send a request to the RPC server via web3,甚至可以使用 node 的 http 模块,但 Web3 更容易。
然后您可以使用节点 cron 模块来安排它,例如:https://www.npmjs.com/package/cron
您需要确保您使用的任何 RPC 服务器都已安全设置,因为存在针对它们的主动扫描和攻击。
部分示例:
//Send some eth every hour
new CronJob('* * * 1 0 0', () => {
//The following arguments are simplified...
web3.eth.sendTransaction({from: "0xc0ffee", to: "0xdeadbeef...", value: "1.0"}, () => {
console.log('transaction sent');
});
}, null, true, 'America/Los_Angeles');
您想在 PHP 中发送原始以太坊交易,因此在您的情况下我建议使用 php-eth-raw-tx 包。
用法很简单:
$tx = new \EthereumRawTx\Transaction(
\BitWasp\Buffertools\Buffer::hex('d44d259015b61a5fe5027221239d840d92583adb'),
\BitWasp\Buffertools\Buffer::int(1 * 10**18),
);
$raw = $tx->getRaw(\BitWasp\Buffertools\Buffer::hex('b9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56'));
在此示例中,您从地址 0x22b853A8Df90BF9A7e21445C16FBbEaa43e0c307
(由私钥 0xb9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56
识别)发送 1.0 ETH 到地址 0xd44d259015b61a5fe5027221239d840d92583adb
.
您需要做的就是创建一个 PHP 文件并将其添加到您的 crontab。
在此处查看更多示例:https://github.com/Domraider/php-eth-raw-tx/tree/master/examples