Struct lightning::ln::chan_utils::ChannelPublicKeys[][src]

pub struct ChannelPublicKeys {
    pub funding_pubkey: PublicKey,
    pub revocation_basepoint: PublicKey,
    pub payment_point: PublicKey,
    pub delayed_payment_basepoint: PublicKey,
    pub htlc_basepoint: PublicKey,
}

One counterparty’s public keys which do not change over the life of a channel.

Fields

funding_pubkey: PublicKey

The public key which is used to sign all commitment transactions, as it appears in the on-chain channel lock-in 2-of-2 multisig output.

revocation_basepoint: PublicKey

The base point which is used (with derive_public_revocation_key) to derive per-commitment revocation keys. This is combined with the per-commitment-secret generated by the counterparty to create a secret which the counterparty can reveal to revoke previous states.

payment_point: PublicKey

The public key on which the non-broadcaster (ie the countersignatory) receives an immediately spendable primary channel balance on the broadcaster’s commitment transaction. This key is static across every commitment transaction.

delayed_payment_basepoint: PublicKey

The base point which is used (with derive_public_key) to derive a per-commitment payment public key which receives non-HTLC-encumbered funds which are only available for spending after some delay (or can be claimed via the revocation path).

htlc_basepoint: PublicKey

The base point which is used (with derive_public_key) to derive a per-commitment public key which is used to encumber HTLC-in-flight outputs.

Trait Implementations

impl Clone for ChannelPublicKeys[src]

impl PartialEq<ChannelPublicKeys> for ChannelPublicKeys[src]

impl Readable for ChannelPublicKeys[src]

impl StructuralPartialEq for ChannelPublicKeys[src]

impl Writeable for ChannelPublicKeys[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.