Hello! I want to be able to use the Noise Protocol 
<https://noiseprotocol.org/> to securely perform mutual authentication and 
end to end encrypt the messages exchanged. 

The naive way of doing this at the application layer would be to have all 
the methods to have the same message containing a bytes field with the 
serialized actual protobuf message, like:

```
service Trade { 
  rpc SecureMethod(SignedMessage) returns(SignedMessage)
}

message SignedMessage {
  uint32 lenght = 1;
  bytes payload = 2:
}
```

Then grpc server would decrypt the given payload and deserialize the bytes 
to a defines protobuf message. (Just not sure if this naive method could 
work with streaming replys)

But, would be way nicer if a three act ECDH key exchnage for subsequent 
symmetric encryption could be done at grpc level (maybe using Credentials 
plugin API?)
I would like to keep using existing protobuf definition and do not do any 
additional encrypting/decrypting and subsequent 
serialization/deserialization at application level.

Any help on where/what to touch would be much appreciated.


-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/c918e9b9-f6a9-4fbb-a503-d5e0c6bf8225n%40googlegroups.com.

Reply via email to