Struct DelayedPaymentBasepoint
pub struct DelayedPaymentBasepoint(pub PublicKey);
Expand description
Base key used in conjunction with a per_commitment_point
to generate a DelayedPaymentKey
.
The delayed payment key is used to pay the commitment state broadcaster their non-HTLC-encumbered funds after a delay to give their counterparty a chance to punish if the state broadcasted was previously revoked.
Tuple Fields§
§0: PublicKey
Implementations§
§impl DelayedPaymentBasepoint
impl DelayedPaymentBasepoint
pub fn to_public_key(&self) -> PublicKey
pub fn to_public_key(&self) -> PublicKey
Get inner Public Key
pub fn derive_add_tweak(&self, per_commitment_point: &PublicKey) -> Hash
pub fn derive_add_tweak(&self, per_commitment_point: &PublicKey) -> Hash
Derives the “tweak” used in calculate DelayedPaymentKey::from_basepoint
.
DelayedPaymentKey::from_basepoint
calculates a private key as:
privkey = basepoint_secret + SHA256(per_commitment_point || basepoint)
This calculates the hash part in the tweak derivation process, which is used to ensure that each key is unique and cannot be guessed by an external party.
Trait Implementations§
§impl Clone for DelayedPaymentBasepoint
impl Clone for DelayedPaymentBasepoint
§fn clone(&self) -> DelayedPaymentBasepoint
fn clone(&self) -> DelayedPaymentBasepoint
Returns a copy 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 more§impl Debug for DelayedPaymentBasepoint
impl Debug for DelayedPaymentBasepoint
§impl From<PublicKey> for DelayedPaymentBasepoint
impl From<PublicKey> for DelayedPaymentBasepoint
§fn from(value: PublicKey) -> DelayedPaymentBasepoint
fn from(value: PublicKey) -> DelayedPaymentBasepoint
Converts to this type from the input type.
§impl Hash for DelayedPaymentBasepoint
impl Hash for DelayedPaymentBasepoint
§impl PartialEq for DelayedPaymentBasepoint
impl PartialEq for DelayedPaymentBasepoint
§impl Readable for DelayedPaymentBasepoint
impl Readable for DelayedPaymentBasepoint
§fn read<R>(r: &mut R) -> Result<DelayedPaymentBasepoint, DecodeError>where
R: Read,
fn read<R>(r: &mut R) -> Result<DelayedPaymentBasepoint, DecodeError>where
R: Read,
Reads a
Self
in from the given Read
.§impl Writeable for DelayedPaymentBasepoint
impl Writeable for DelayedPaymentBasepoint
impl Copy for DelayedPaymentBasepoint
impl Eq for DelayedPaymentBasepoint
impl StructuralPartialEq for DelayedPaymentBasepoint
Auto Trait Implementations§
impl Freeze for DelayedPaymentBasepoint
impl RefUnwindSafe for DelayedPaymentBasepoint
impl Send for DelayedPaymentBasepoint
impl Sync for DelayedPaymentBasepoint
impl Unpin for DelayedPaymentBasepoint
impl UnwindSafe for DelayedPaymentBasepoint
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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
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