Ich arbeite mit https://github.com/ethereum/wiki/wiki/JSON-RPC
api + curl .
Und die Implementierung einer benutzerdefinierten API mit dieser PHP-Bibliothek: https://github.com/Achse/geth-jsonrpc-php-client
Die folgende Methode funktioniert gut für mich zum Entsperren vor der Transaktion:
$ curl -X POST --data '{"jsonrpc":"2.0","method":"personal_unlockAccount","params":["0x7642b...", "password", 3600],"id":67}' http://localhost:8545
Aber ich möchte das Konto mit private key
nicht durch entsperren password
. Gibt es also eine Möglichkeit, unlock account
Transaktionen mit private key
.
Sie können eine Rohtransaktion wie hier beschrieben generieren oder myetherwallet verwenden, um die signierte Rohtransaktion zu erhalten, und dann anrufen
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params":[{raw_transaction}],"id":1}'
// Result
{
"id":1,
"jsonrpc": "2.0",
"result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331"
}
wie hier erklärt
Außerdem kann, wie @yogesh in seinem Kommentar unten erwähnt hat, Ethereumjs-Build für den Browser verwendet werden, um die Rohtransaktion (auf Client-Seite) zu erstellen.
Sie müssen Ihr Konto nicht entsperren, wenn Sie Ihren privaten Schlüssel kennen. Der Grund dafür ist, dass Transaktionen mit Ihrem privaten Schlüssel signiert werden und das Entsperren Ihres Kontos erforderlich ist, um Ihren privaten Schlüssel aus Ihrer Schlüsseldatei zu erhalten. Wenn Sie also Ihren privaten Schlüssel bereits kennen, müssen Sie Ihr Konto nicht entsperren.
Sie können myetherwallet.com oder ethychat.io verwenden, um Transaktionen mit Ihrem privaten Schlüssel durchzuführen.
Wenn Sie Transaktionen mit JSON-RPC und Ihrem privaten Schlüssel durchführen möchten, müssen Sie wahrscheinlich eine signierte Transaktion erstellen und diese mit eth_sendRawTransaction senden.
Badr Bellaj
Yogesh Karodiya