pub struct DepositAddressProof {
pub address_signatures: HashMap<String, Vec<u8>>,
pub proof_of_possession_signature: Vec<u8>,
}
Expand description
DepositAddressProof is the proof of possession of the deposit address. When a user wants to generate a deposit address, they are sending their public key to the SE, and the SE will respond with an address of user’s public key + SE’s public key.
In the trusty deposit flow, user will need to know that this address is valid, and no single SE can generate this address.
The SE will need to sign the address with their identity keys, and have a proof of possession of the signing key piece that the SE holds.
Fields§
§address_signatures: HashMap<String, Vec<u8>>
The signatures of the address by the SE’s identity keys.
proof_of_possession_signature: Vec<u8>
The proof of possession of the signing key piece by the SE.
Trait Implementations§
Source§impl Clone for DepositAddressProof
impl Clone for DepositAddressProof
Source§fn clone(&self) -> DepositAddressProof
fn clone(&self) -> DepositAddressProof
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for DepositAddressProof
impl Debug for DepositAddressProof
Source§impl Default for DepositAddressProof
impl Default for DepositAddressProof
Source§impl<'de> Deserialize<'de> for DepositAddressProof
impl<'de> Deserialize<'de> for DepositAddressProof
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Message for DepositAddressProof
impl Message for DepositAddressProof
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self
.Source§impl MessageSerde for DepositAddressProof
impl MessageSerde for DepositAddressProof
Source§fn package_name(&self) -> &'static str
fn package_name(&self) -> &'static str
package name as in proto file
Source§fn message_name(&self) -> &'static str
fn message_name(&self) -> &'static str
message name as in proto file
Source§fn type_url(&self) -> &'static str
fn type_url(&self) -> &'static str
the message proto type url e.g. type.googleapis.com/my.package.MyMessage
Source§fn new_instance(
&self,
data: Vec<u8>,
) -> Result<Box<dyn MessageSerde>, DecodeError>
fn new_instance( &self, data: Vec<u8>, ) -> Result<Box<dyn MessageSerde>, DecodeError>
Creates a new instance of this message using the protobuf encoded data
Source§fn try_encoded(&self) -> Result<Vec<u8>, EncodeError>
fn try_encoded(&self) -> Result<Vec<u8>, EncodeError>
Returns the encoded protobuf message as bytes
Source§impl Name for DepositAddressProof
impl Name for DepositAddressProof
Source§const PACKAGE: &'static str = "spark"
const PACKAGE: &'static str = "spark"
Package name this message type is contained in. They are domain-like
and delimited by
.
, e.g. google.protobuf
.Source§const NAME: &'static str = "DepositAddressProof"
const NAME: &'static str = "DepositAddressProof"
Simple name for this
Message
.
This name is the same as it appears in the source .proto file, e.g. FooBar
.Source§fn type_url() -> String
fn type_url() -> String
Type URL for this
Message
, which by default is the full name with a
leading slash, but may also include a leading domain name, e.g.
type.googleapis.com/google.profile.Person
.
This can be used when serializing into the google.protobuf.Any
type.Source§fn full_name() -> String
fn full_name() -> String
Fully-qualified unique name for this
Message
.
It’s prefixed with the package name and names of any parent messages,
e.g. google.rpc.BadRequest.FieldViolation
.
By default, this is the package name followed by the message name.
Fully-qualified names must be unique within a domain of Type URLs.Source§impl PartialEq for DepositAddressProof
impl PartialEq for DepositAddressProof
Source§impl Serialize for DepositAddressProof
impl Serialize for DepositAddressProof
impl StructuralPartialEq for DepositAddressProof
Auto Trait Implementations§
impl Freeze for DepositAddressProof
impl RefUnwindSafe for DepositAddressProof
impl Send for DepositAddressProof
impl Sync for DepositAddressProof
impl Unpin for DepositAddressProof
impl UnwindSafe for DepositAddressProof
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request