Struct monero::blockdata::transaction::OwnedTxOut [−][src]
pub struct OwnedTxOut<'a> { pub index: usize, pub out: &'a TxOut, pub sub_index: Index, pub tx_pubkey: PublicKey, }
Transaction ouput that can be redeemed by a private key pair at a given index and are returned
by the check_outputs
method.
use monero::blockdata::transaction::Transaction; use monero::consensus::encode::deserialize; use monero::util::key::{KeyPair, PrivateKey, PublicKey, ViewPair}; // Keypair used to recover the ephemeral spend key of an output let keypair = KeyPair { view: secret_view, spend: secret_spend, }; // Viewpair used to scan a transaction to retreive owned outputs let view_pair = ViewPair { view: secret_view, spend }; // Get all owned output for sub-addresses in range of 0-1 major index and 0-2 minor index let owned_outputs = tx.prefix.check_outputs(&view_pair, 0..2, 0..3).unwrap(); for out in owned_outputs { // Recover the ephemeral private spend key let private_key = out.recover_key(&keypair); }
Fields
index: usize
Index of the output in the transaction.
out: &'a TxOut
A reference to the actual redeemable output.
sub_index: Index
Index of the key pair to use, can be 0/0
for main address.
tx_pubkey: PublicKey
The associated transaction public key.
Implementations
impl<'a> OwnedTxOut<'a>
[src]
impl<'a> OwnedTxOut<'a>
[src]pub fn get_pubkeys(&self) -> Option<Vec<PublicKey>>
[src]
Retreive the public keys, if any.
pub fn recover_key(&self, keys: &KeyPair) -> PrivateKey
[src]
Recover the ephemeral private key for spending the output, this requires access to the private spend key.
Trait Implementations
Auto Trait Implementations
impl<'a> RefUnwindSafe for OwnedTxOut<'a>
impl<'a> RefUnwindSafe for OwnedTxOut<'a>
impl<'a> Send for OwnedTxOut<'a>
impl<'a> Send for OwnedTxOut<'a>
impl<'a> Sync for OwnedTxOut<'a>
impl<'a> Sync for OwnedTxOut<'a>
impl<'a> Unpin for OwnedTxOut<'a>
impl<'a> Unpin for OwnedTxOut<'a>
impl<'a> UnwindSafe for OwnedTxOut<'a>
impl<'a> UnwindSafe for OwnedTxOut<'a>