This redoes how we encode the result of encrypt_message to add sender identify and verification (entirely contained within libsession). These functions now produce/consume:
The decryption function thus now returns a pair instead of an optional value: the session id, and the original value, assuming that value was signed by the session id. Upon failure for any reason, an exception is thrown (rather than, previously, returning a nullopt without any way to get an informative reason for the failure for diagnostics).
This redoes how we encode the result of encrypt_message to add sender identify and verification (entirely contained within libsession). These functions now produce/consume:
with signature verification on decryption.
The decryption function thus now returns a pair instead of an optional value: the session id, and the original value, assuming that value was signed by the session id. Upon failure for any reason, an exception is thrown (rather than, previously, returning a nullopt without any way to get an informative reason for the failure for diagnostics).