pub enum TapretFirst {}
Expand description
Marker non-instantiable enum defining LNPBP-12 taproot OP_RETURN (tapret
) protocol.
Trait Implementations§
Source§impl CommitVerify<TapretCommitment, TapretFirst> for TapScript
impl CommitVerify<TapretCommitment, TapretFirst> for TapScript
Source§fn commit(commitment: &TapretCommitment) -> Self
fn commit(commitment: &TapretCommitment) -> Self
Tapret script consists of 29 OP_NOP
pushes, followed by
OP_RETURN
, OP_PUSHBYTES_33
and serialized commitment data (MPC
commitment + nonce as a single slice).
Source§impl ConvolveCommit<Commitment, TapretProof, TapretFirst> for InternalPk
impl ConvolveCommit<Commitment, TapretProof, TapretFirst> for InternalPk
Source§type Commitment = OutputPk
type Commitment = OutputPk
Commitment type produced as a result of
Self::convolve_commit
procedure.Source§type CommitError = TapretKeyError
type CommitError = TapretKeyError
Error type that may be reported during
Self::convolve_commit
procedure. It may also be returned from ConvolveCommitProof::verify
in case the proof data are invalid and the commitment can’t be
re-created.Source§fn convolve_commit(
&self,
supplement: &TapretPathProof,
msg: &Commitment,
) -> Result<(OutputPk, TapretProof), Self::CommitError>
fn convolve_commit( &self, supplement: &TapretPathProof, msg: &Commitment, ) -> Result<(OutputPk, TapretProof), Self::CommitError>
Takes the
supplement
to unparse the content of this container (self
)
(“convolves” these two data together) and uses them to produce a final
Self::Commitment
to the message msg
. Read moreSource§impl ConvolveCommit<Commitment, TapretProof, TapretFirst> for ScriptPubkey
impl ConvolveCommit<Commitment, TapretProof, TapretFirst> for ScriptPubkey
Source§type Commitment = ScriptPubkey
type Commitment = ScriptPubkey
Commitment type produced as a result of
Self::convolve_commit
procedure.Source§type CommitError = TapretKeyError
type CommitError = TapretKeyError
Error type that may be reported during
Self::convolve_commit
procedure. It may also be returned from ConvolveCommitProof::verify
in case the proof data are invalid and the commitment can’t be
re-created.Source§fn convolve_commit(
&self,
supplement: &TapretProof,
msg: &Commitment,
) -> Result<(ScriptPubkey, TapretProof), Self::CommitError>
fn convolve_commit( &self, supplement: &TapretProof, msg: &Commitment, ) -> Result<(ScriptPubkey, TapretProof), Self::CommitError>
Takes the
supplement
to unparse the content of this container (self
)
(“convolves” these two data together) and uses them to produce a final
Self::Commitment
to the message msg
. Read moreSource§impl ConvolveCommit<Commitment, TapretProof, TapretFirst> for Tx
impl ConvolveCommit<Commitment, TapretProof, TapretFirst> for Tx
Source§type Commitment = Tx
type Commitment = Tx
Commitment type produced as a result of
Self::convolve_commit
procedure.Source§type CommitError = TapretError
type CommitError = TapretError
Error type that may be reported during
Self::convolve_commit
procedure. It may also be returned from ConvolveCommitProof::verify
in case the proof data are invalid and the commitment can’t be
re-created.Source§fn convolve_commit(
&self,
supplement: &TapretProof,
msg: &Commitment,
) -> Result<(Tx, TapretProof), Self::CommitError>
fn convolve_commit( &self, supplement: &TapretProof, msg: &Commitment, ) -> Result<(Tx, TapretProof), Self::CommitError>
Takes the
supplement
to unparse the content of this container (self
)
(“convolves” these two data together) and uses them to produce a final
Self::Commitment
to the message msg
. Read moreSource§impl ConvolveCommit<Commitment, TapretProof, TapretFirst> for TxOut
impl ConvolveCommit<Commitment, TapretProof, TapretFirst> for TxOut
Source§type Commitment = TxOut
type Commitment = TxOut
Commitment type produced as a result of
Self::convolve_commit
procedure.Source§type CommitError = TapretKeyError
type CommitError = TapretKeyError
Error type that may be reported during
Self::convolve_commit
procedure. It may also be returned from ConvolveCommitProof::verify
in case the proof data are invalid and the commitment can’t be
re-created.Source§fn convolve_commit(
&self,
supplement: &TapretProof,
msg: &Commitment,
) -> Result<(TxOut, TapretProof), Self::CommitError>
fn convolve_commit( &self, supplement: &TapretProof, msg: &Commitment, ) -> Result<(TxOut, TapretProof), Self::CommitError>
Takes the
supplement
to unparse the content of this container (self
)
(“convolves” these two data together) and uses them to produce a final
Self::Commitment
to the message msg
. Read moreSource§impl ConvolveCommitProof<Commitment, InternalPk, TapretFirst> for TapretProof
impl ConvolveCommitProof<Commitment, InternalPk, TapretFirst> for TapretProof
Source§type Suppl = TapretPathProof
type Suppl = TapretPathProof
Supplement is a part of the proof data provided during commitment
procedure.
Source§fn restore_original(&self, _: &OutputPk) -> InternalPk
fn restore_original(&self, _: &OutputPk) -> InternalPk
Restores the original source before the commitment from the supplement
(the
self
) and commitment.Source§fn extract_supplement(&self) -> &Self::Suppl
fn extract_supplement(&self) -> &Self::Suppl
Extract supplement from the proof.
Source§fn verify(
&self,
msg: &Msg,
commitment: &<Source as ConvolveCommit<Msg, Self, Protocol>>::Commitment,
) -> Result<(), ConvolveVerifyError>where
Self: VerifyEq,
fn verify(
&self,
msg: &Msg,
commitment: &<Source as ConvolveCommit<Msg, Self, Protocol>>::Commitment,
) -> Result<(), ConvolveVerifyError>where
Self: VerifyEq,
Verifies commitment using proof (the
self
) against the message. Read moreSource§impl ConvolveCommitProof<Commitment, ScriptPubkey, TapretFirst> for TapretProof
impl ConvolveCommitProof<Commitment, ScriptPubkey, TapretFirst> for TapretProof
Source§type Suppl = TapretProof
type Suppl = TapretProof
Supplement is a part of the proof data provided during commitment
procedure.
Source§fn restore_original(&self, _: &ScriptPubkey) -> ScriptPubkey
fn restore_original(&self, _: &ScriptPubkey) -> ScriptPubkey
Restores the original source before the commitment from the supplement
(the
self
) and commitment.Source§fn extract_supplement(&self) -> &Self::Suppl
fn extract_supplement(&self) -> &Self::Suppl
Extract supplement from the proof.
Source§fn verify(
&self,
msg: &Msg,
commitment: &<Source as ConvolveCommit<Msg, Self, Protocol>>::Commitment,
) -> Result<(), ConvolveVerifyError>where
Self: VerifyEq,
fn verify(
&self,
msg: &Msg,
commitment: &<Source as ConvolveCommit<Msg, Self, Protocol>>::Commitment,
) -> Result<(), ConvolveVerifyError>where
Self: VerifyEq,
Verifies commitment using proof (the
self
) against the message. Read moreSource§impl ConvolveCommitProof<Commitment, Tx, TapretFirst> for TapretProof
impl ConvolveCommitProof<Commitment, Tx, TapretFirst> for TapretProof
Source§type Suppl = TapretProof
type Suppl = TapretProof
Supplement is a part of the proof data provided during commitment
procedure.
Source§fn restore_original(&self, commitment: &Tx) -> Tx
fn restore_original(&self, commitment: &Tx) -> Tx
Restores the original source before the commitment from the supplement
(the
self
) and commitment.Source§fn extract_supplement(&self) -> &Self::Suppl
fn extract_supplement(&self) -> &Self::Suppl
Extract supplement from the proof.
Source§fn verify(
&self,
msg: &Msg,
commitment: &<Source as ConvolveCommit<Msg, Self, Protocol>>::Commitment,
) -> Result<(), ConvolveVerifyError>where
Self: VerifyEq,
fn verify(
&self,
msg: &Msg,
commitment: &<Source as ConvolveCommit<Msg, Self, Protocol>>::Commitment,
) -> Result<(), ConvolveVerifyError>where
Self: VerifyEq,
Verifies commitment using proof (the
self
) against the message. Read moreSource§impl ConvolveCommitProof<Commitment, TxOut, TapretFirst> for TapretProof
impl ConvolveCommitProof<Commitment, TxOut, TapretFirst> for TapretProof
Source§type Suppl = TapretProof
type Suppl = TapretProof
Supplement is a part of the proof data provided during commitment
procedure.
Source§fn restore_original(&self, commitment: &TxOut) -> TxOut
fn restore_original(&self, commitment: &TxOut) -> TxOut
Restores the original source before the commitment from the supplement
(the
self
) and commitment.Source§fn extract_supplement(&self) -> &Self::Suppl
fn extract_supplement(&self) -> &Self::Suppl
Extract supplement from the proof.
Source§fn verify(
&self,
msg: &Msg,
commitment: &<Source as ConvolveCommit<Msg, Self, Protocol>>::Commitment,
) -> Result<(), ConvolveVerifyError>where
Self: VerifyEq,
fn verify(
&self,
msg: &Msg,
commitment: &<Source as ConvolveCommit<Msg, Self, Protocol>>::Commitment,
) -> Result<(), ConvolveVerifyError>where
Self: VerifyEq,
Verifies commitment using proof (the
self
) against the message. Read moreimpl CommitmentProtocol for TapretFirst
Auto Trait Implementations§
impl Freeze for TapretFirst
impl RefUnwindSafe for TapretFirst
impl Send for TapretFirst
impl Sync for TapretFirst
impl Unpin for TapretFirst
impl UnwindSafe for TapretFirst
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