pub struct PayerProof { /* private fields */ }Expand description
A cryptographic proof that a BOLT 12 invoice was paid.
Contains the payment preimage, selective disclosure of invoice fields, the invoice signature, and a payer signature proving who paid.
Implementations§
Source§impl PayerProof
impl PayerProof
Sourcepub fn payment_preimage(&self) -> PaymentPreimage
pub fn payment_preimage(&self) -> PaymentPreimage
The payment preimage proving the invoice was paid.
Sourcepub fn payer_signing_pubkey(&self) -> PublicKey
pub fn payer_signing_pubkey(&self) -> PublicKey
The payer’s public key (who paid).
Sourcepub fn issuer_signing_pubkey(&self) -> PublicKey
pub fn issuer_signing_pubkey(&self) -> PublicKey
The issuer’s signing public key (the key that signed the invoice).
Sourcepub fn payment_hash(&self) -> PaymentHash
pub fn payment_hash(&self) -> PaymentHash
The payment hash.
Sourcepub fn invoice_signature(&self) -> Signature
pub fn invoice_signature(&self) -> Signature
The invoice signature over the merkle root.
Sourcepub fn proof_signature(&self) -> Signature
pub fn proof_signature(&self) -> Signature
The payer’s schnorr signature proving who authorized the payment.
Sourcepub fn offer_description(&self) -> Option<PrintableString<'_>>
pub fn offer_description(&self) -> Option<PrintableString<'_>>
The disclosed offer description, if included in the proof.
Sourcepub fn offer_issuer(&self) -> Option<PrintableString<'_>>
pub fn offer_issuer(&self) -> Option<PrintableString<'_>>
The disclosed offer issuer, if included in the proof.
Sourcepub fn invoice_amount_msats(&self) -> Option<u64>
pub fn invoice_amount_msats(&self) -> Option<u64>
The disclosed invoice amount, if included in the proof.
Sourcepub fn invoice_created_at(&self) -> Option<Duration>
pub fn invoice_created_at(&self) -> Option<Duration>
The disclosed invoice creation time, if included in the proof.
Sourcepub fn proof_note(&self) -> Option<PrintableString<'_>>
pub fn proof_note(&self) -> Option<PrintableString<'_>>
A note the payer attached to this proof, if any.
This is distinct from InvoiceRequest::payer_note: the invoice-request note is
sent to the payee at payment time, while this note is scoped to the proof and is
committed to by the proof_signature alongside the invoice’s merkle root.
Sourcepub fn merkle_root(&self) -> Hash
pub fn merkle_root(&self) -> Hash
The merkle root of the original invoice.
Trait Implementations§
Source§impl AsRef<[u8]> for PayerProof
impl AsRef<[u8]> for PayerProof
Source§impl Clone for PayerProof
impl Clone for PayerProof
Source§fn clone(&self) -> PayerProof
fn clone(&self) -> PayerProof
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more