Struct tea_sdk::vmh::message::structs_proto::p2p::ApplyToBePinnerResponse
pub struct ApplyToBePinnerResponse {
pub deployment_id: String,
pub pinner_key_encrypted: Vec<u8>,
pub key1_encrypted: Vec<u8>,
pub upstream_pinner_tea_id: Vec<u8>,
pub signature: Vec<u8>,
pub uuid: String,
}
Fields§
§deployment_id: String
this is cid of pinner_key’s pub key
pinner_key_encrypted: Vec<u8>
The full pinner key encoded by rsa_pubkey from wannabe pinner.
key1_encrypted: Vec<u8>
The key1 encoded by rsa_pubkey from upstream pinner.
upstream_pinner_tea_id: Vec<u8>
use the upstream tea_id to make a broacasting chain so that we can trace back when make payment or verify
signature: Vec<u8>
we use tea_id instead of ephemeral_id because this chain would be a long life time use. ephemeral key changes every time the tea node reboot. Base on today’s idea, the first revenue comes from hosting as pinner will 100% go to upstream pinner. after that the revenue doens’t need to share to upstream problem: what if the data is only for one time use?
The Ed25519 sig for concat bytes: pinner’s ephemeral key + pinner_key_enc
uuid: String
This uuid has no use for delegator (upstream pinner). The wannabe pinner will need this uuid to retrieve PinnerStoreItem
Trait Implementations§
§impl Clone for ApplyToBePinnerResponse
impl Clone for ApplyToBePinnerResponse
§fn clone(&self) -> ApplyToBePinnerResponse
fn clone(&self) -> ApplyToBePinnerResponse
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for ApplyToBePinnerResponse
impl Debug for ApplyToBePinnerResponse
§impl Default for ApplyToBePinnerResponse
impl Default for ApplyToBePinnerResponse
§fn default() -> ApplyToBePinnerResponse
fn default() -> ApplyToBePinnerResponse
§impl Message for ApplyToBePinnerResponse
impl Message for ApplyToBePinnerResponse
§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
Self: Sized,
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>where B: BufMut, Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere Self: Sized,
source§fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>where
B: BufMut,
Self: Sized,
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>where B: BufMut, Self: Sized,
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,
source§fn decode<B>(buf: B) -> Result<Self, DecodeError>where
B: Buf,
Self: Default,
fn decode<B>(buf: B) -> Result<Self, DecodeError>where B: Buf, Self: Default,
source§fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>where
B: Buf,
Self: Default,
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>where B: Buf, Self: Default,
source§fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
Self: Sized,
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>where B: Buf, Self: Sized,
self
. Read moresource§fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>where
B: Buf,
Self: Sized,
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>where B: Buf, Self: Sized,
self
.§impl PartialEq for ApplyToBePinnerResponse
impl PartialEq for ApplyToBePinnerResponse
§fn eq(&self, other: &ApplyToBePinnerResponse) -> bool
fn eq(&self, other: &ApplyToBePinnerResponse) -> bool
self
and other
values to be equal, and is used
by ==
.