Wie entschlüsselt man eine ECIES-verschlüsselte Nachricht mit einem Geth-Konto und dem JSON-RPC-Protokoll?

Ein Geth-Knoten verwaltet ein Ethereum-Konto und hat die Kontrolle über seinen privaten Schlüssel im Schlüsselspeicherordner. Ich denke, um es sicher zu halten, lassen die bewährten Methoden geth alle Vorgänge selbst ausführen, die Zugriff auf den privaten Schlüssel erfordern. Nun, der Fall ist, dass ich eine Nachricht entschlüsseln muss, die mit dem öffentlichen Schlüssel des Geth-Kontos verschlüsselt wurde, um nur von diesem Konto gelesen werden zu können. Gibt es also eine Geth-Funktion über JSON-RPC, die eine Nachricht mit dem privaten Schlüssel des Kontos entschlüsseln kann? Etwas wie das:

ECIES.Decrypt(account, message);

Die einzige andere Möglichkeit scheint zu sein, direkt auf den Keystore-Ordner zuzugreifen und die Nachricht dort mit dem privaten Schlüssel zu entschlüsseln, aber ich fühle mich dabei nicht wohl, es scheint ein ziemlich unsicheres Schema zu sein, oder?

Ref.:

So verschlüsseln Sie eine Nachricht mit dem öffentlichen Schlüssel einer Ethereum-Adresse

Ich konnte unter github.com/ethereum/wiki/wiki/JSON-RPC keine ECIES-Funktion finden, also denke ich, dass dies (Verschlüsselung/Entschlüsselung) mit dem JSON-RPC-Protokoll nicht möglich ist, oder?
Bei Geth nicht, bei Parity schon – siehe meine Antwort.

Antworten (1)

Das geht bei Geth nicht. Parity stellt jedoch ein Modul bereit, das genau das tut: siehe die Funktion parity_decryptMessage() .

Danke für das Kopfgeld Juan. Bitte vergessen Sie nicht, die Antwort als richtig zu markieren, wenn sie Ihren Erwartungen entspricht.