pub struct JsonRpcDiemInterface { /* private fields */ }
Expand description
This implements the DiemInterface by talking directly to the JSON RPC API.
DISCLAIMER: this implementation assumes that the json rpc client explicitly trusts the json rpc server that is responding to its requests (e.g., the client assumes the server has already been authenticated, provides encrypted and freshness protected messages, etc.). As such, the security of the server will need to be verified in production before this interface should be used. Pointing the client to an untrusted (and potentially malicious) json rpc server, can result in denial-of-service attacks (e.g., against the key manager).
TODO(joshlind): add proof checks to the JsonRpcClient to verify the state returned by the json rpc server we’re talking to. Although we won’t be able to guarantee freshness, it’s better than simply trusting the response for correctness..
Implementations§
Trait Implementations§
source§impl Clone for JsonRpcDiemInterface
impl Clone for JsonRpcDiemInterface
source§fn clone(&self) -> JsonRpcDiemInterface
fn clone(&self) -> JsonRpcDiemInterface
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more