Fix clippy lint and formatting for `Xpriv::derive_xpriv` and `Xpriv::derive_xpub` calls
This commit is contained in:
parent
9d4381c8fe
commit
c7bdec14fb
|
@ -46,7 +46,7 @@ fn main() {
|
||||||
// generate first receiving address at m/0/0
|
// generate first receiving address at m/0/0
|
||||||
// manually creating indexes this time
|
// manually creating indexes this time
|
||||||
let zero = ChildNumber::ZERO_NORMAL;
|
let zero = ChildNumber::ZERO_NORMAL;
|
||||||
let public_key = xpub.derive_xpub(&secp, &[zero, zero]).unwrap().public_key;
|
let public_key = xpub.derive_xpub(&secp, [zero, zero]).unwrap().public_key;
|
||||||
let address = Address::p2wpkh(CompressedPublicKey(public_key), KnownHrp::Mainnet);
|
let address = Address::p2wpkh(CompressedPublicKey(public_key), KnownHrp::Mainnet);
|
||||||
println!("First receiving address: {address}");
|
println!("First receiving address: {address}");
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,7 +67,7 @@ fn get_external_address_xpriv<C: Signing>(
|
||||||
let external_index = ChildNumber::ZERO_NORMAL;
|
let external_index = ChildNumber::ZERO_NORMAL;
|
||||||
let idx = ChildNumber::from_normal_idx(index).expect("valid index number");
|
let idx = ChildNumber::from_normal_idx(index).expect("valid index number");
|
||||||
|
|
||||||
child_xpriv.derive_xpriv(secp, &[external_index, idx]).expect("only deriving two more steps")
|
child_xpriv.derive_xpriv(secp, [external_index, idx]).expect("only deriving two more steps")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Derive the internal address xpriv.
|
// Derive the internal address xpriv.
|
||||||
|
@ -83,7 +83,7 @@ fn get_internal_address_xpriv<C: Signing>(
|
||||||
let internal_index = ChildNumber::ONE_NORMAL;
|
let internal_index = ChildNumber::ONE_NORMAL;
|
||||||
let idx = ChildNumber::from_normal_idx(index).expect("valid index number");
|
let idx = ChildNumber::from_normal_idx(index).expect("valid index number");
|
||||||
|
|
||||||
child_xpriv.derive_xpriv(secp, &[internal_index, idx]).expect("only deriving two more steps")
|
child_xpriv.derive_xpriv(secp, [internal_index, idx]).expect("only deriving two more steps")
|
||||||
}
|
}
|
||||||
|
|
||||||
// The address to send to.
|
// The address to send to.
|
||||||
|
|
|
@ -260,7 +260,7 @@ impl WatchOnly {
|
||||||
secp: &Secp256k1<C>,
|
secp: &Secp256k1<C>,
|
||||||
) -> Result<(CompressedPublicKey, Address, DerivationPath)> {
|
) -> Result<(CompressedPublicKey, Address, DerivationPath)> {
|
||||||
let path = [ChildNumber::ONE_NORMAL, ChildNumber::ZERO_NORMAL];
|
let path = [ChildNumber::ONE_NORMAL, ChildNumber::ZERO_NORMAL];
|
||||||
let derived = self.account_0_xpub.derive_xpub(secp, &path)?;
|
let derived = self.account_0_xpub.derive_xpub(secp, path)?;
|
||||||
|
|
||||||
let pk = derived.to_public_key();
|
let pk = derived.to_public_key();
|
||||||
let addr = Address::p2wpkh(pk, NETWORK);
|
let addr = Address::p2wpkh(pk, NETWORK);
|
||||||
|
|
|
@ -65,7 +65,7 @@ fn get_external_address_xpriv<C: Signing>(
|
||||||
let external_index = ChildNumber::ZERO_NORMAL;
|
let external_index = ChildNumber::ZERO_NORMAL;
|
||||||
let idx = ChildNumber::from_normal_idx(index).expect("valid index number");
|
let idx = ChildNumber::from_normal_idx(index).expect("valid index number");
|
||||||
|
|
||||||
child_xpriv.derive_xpriv(secp, &[external_index, idx]).expect("only deriving two more steps")
|
child_xpriv.derive_xpriv(secp, [external_index, idx]).expect("only deriving two more steps")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Derive the internal address xpriv.
|
// Derive the internal address xpriv.
|
||||||
|
@ -81,7 +81,7 @@ fn get_internal_address_xpriv<C: Signing>(
|
||||||
let internal_index = ChildNumber::ONE_NORMAL;
|
let internal_index = ChildNumber::ONE_NORMAL;
|
||||||
let idx = ChildNumber::from_normal_idx(index).expect("valid index number");
|
let idx = ChildNumber::from_normal_idx(index).expect("valid index number");
|
||||||
|
|
||||||
child_xpriv.derive_xpriv(secp, &[internal_index, idx]).expect("only deriving two more steps")
|
child_xpriv.derive_xpriv(secp, [internal_index, idx]).expect("only deriving two more steps")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the Taproot Key Origin.
|
// Get the Taproot Key Origin.
|
||||||
|
|
|
@ -298,7 +298,7 @@ fn generate_bip86_key_spend_tx(
|
||||||
.ok_or("missing Taproot key origin")?;
|
.ok_or("missing Taproot key origin")?;
|
||||||
|
|
||||||
let secret_key =
|
let secret_key =
|
||||||
master_xpriv.derive_xpriv(secp, &derivation_path)?.to_private_key().inner;
|
master_xpriv.derive_xpriv(secp, derivation_path)?.to_private_key().inner;
|
||||||
sign_psbt_taproot(
|
sign_psbt_taproot(
|
||||||
secret_key,
|
secret_key,
|
||||||
input.tap_internal_key.unwrap(),
|
input.tap_internal_key.unwrap(),
|
||||||
|
@ -540,7 +540,7 @@ impl BenefactorWallet {
|
||||||
.ok_or("missing Taproot key origin")?;
|
.ok_or("missing Taproot key origin")?;
|
||||||
let secret_key = self
|
let secret_key = self
|
||||||
.master_xpriv
|
.master_xpriv
|
||||||
.derive_xpriv(&self.secp, &derivation_path)
|
.derive_xpriv(&self.secp, derivation_path)
|
||||||
.expect("derivation path is short")
|
.expect("derivation path is short")
|
||||||
.to_private_key()
|
.to_private_key()
|
||||||
.inner;
|
.inner;
|
||||||
|
@ -664,11 +664,8 @@ impl BeneficiaryWallet {
|
||||||
for (x_only_pubkey, (leaf_hashes, (_, derivation_path))) in
|
for (x_only_pubkey, (leaf_hashes, (_, derivation_path))) in
|
||||||
&psbt.inputs[0].tap_key_origins.clone()
|
&psbt.inputs[0].tap_key_origins.clone()
|
||||||
{
|
{
|
||||||
let secret_key = self
|
let secret_key =
|
||||||
.master_xpriv
|
self.master_xpriv.derive_xpriv(&self.secp, derivation_path)?.to_private_key().inner;
|
||||||
.derive_xpriv(&self.secp, &derivation_path)?
|
|
||||||
.to_private_key()
|
|
||||||
.inner;
|
|
||||||
for lh in leaf_hashes {
|
for lh in leaf_hashes {
|
||||||
let sighash_type = TapSighashType::All;
|
let sighash_type = TapSighashType::All;
|
||||||
let hash = SighashCache::new(&unsigned_tx).taproot_script_spend_signature_hash(
|
let hash = SighashCache::new(&unsigned_tx).taproot_script_spend_signature_hash(
|
||||||
|
|
|
@ -814,7 +814,7 @@ impl GetKey for Xpriv {
|
||||||
KeyRequest::XOnlyPubkey(_) => Err(GetKeyError::NotSupported),
|
KeyRequest::XOnlyPubkey(_) => Err(GetKeyError::NotSupported),
|
||||||
KeyRequest::Bip32((fingerprint, path)) => {
|
KeyRequest::Bip32((fingerprint, path)) => {
|
||||||
let key = if self.fingerprint(secp) == *fingerprint {
|
let key = if self.fingerprint(secp) == *fingerprint {
|
||||||
let k = self.derive_xpriv(secp, &path).map_err(GetKeyError::Bip32)?;
|
let k = self.derive_xpriv(secp, path).map_err(GetKeyError::Bip32)?;
|
||||||
Some(k.to_private_key())
|
Some(k.to_private_key())
|
||||||
} else if self.parent_fingerprint == *fingerprint
|
} else if self.parent_fingerprint == *fingerprint
|
||||||
&& !path.is_empty()
|
&& !path.is_empty()
|
||||||
|
|
Loading…
Reference in New Issue