diff --git a/bitcoin/examples/bip32.rs b/bitcoin/examples/bip32.rs index 41f3791ea..d8edab2fc 100644 --- a/bitcoin/examples/bip32.rs +++ b/bitcoin/examples/bip32.rs @@ -46,7 +46,7 @@ fn main() { // generate first receiving address at m/0/0 // manually creating indexes this time 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); println!("First receiving address: {address}"); } diff --git a/bitcoin/examples/ecdsa-psbt-simple.rs b/bitcoin/examples/ecdsa-psbt-simple.rs index 73f209bb2..1798f6edf 100644 --- a/bitcoin/examples/ecdsa-psbt-simple.rs +++ b/bitcoin/examples/ecdsa-psbt-simple.rs @@ -67,7 +67,7 @@ fn get_external_address_xpriv( let external_index = ChildNumber::ZERO_NORMAL; 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. @@ -83,7 +83,7 @@ fn get_internal_address_xpriv( let internal_index = ChildNumber::ONE_NORMAL; 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. diff --git a/bitcoin/examples/ecdsa-psbt.rs b/bitcoin/examples/ecdsa-psbt.rs index 0ac297654..f16a9dc12 100644 --- a/bitcoin/examples/ecdsa-psbt.rs +++ b/bitcoin/examples/ecdsa-psbt.rs @@ -260,7 +260,7 @@ impl WatchOnly { secp: &Secp256k1, ) -> Result<(CompressedPublicKey, Address, DerivationPath)> { 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 addr = Address::p2wpkh(pk, NETWORK); diff --git a/bitcoin/examples/taproot-psbt-simple.rs b/bitcoin/examples/taproot-psbt-simple.rs index c35dbe463..426061072 100644 --- a/bitcoin/examples/taproot-psbt-simple.rs +++ b/bitcoin/examples/taproot-psbt-simple.rs @@ -65,7 +65,7 @@ fn get_external_address_xpriv( let external_index = ChildNumber::ZERO_NORMAL; 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. @@ -81,7 +81,7 @@ fn get_internal_address_xpriv( let internal_index = ChildNumber::ONE_NORMAL; 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. diff --git a/bitcoin/examples/taproot-psbt.rs b/bitcoin/examples/taproot-psbt.rs index 39b70f9f4..e850a4567 100644 --- a/bitcoin/examples/taproot-psbt.rs +++ b/bitcoin/examples/taproot-psbt.rs @@ -298,7 +298,7 @@ fn generate_bip86_key_spend_tx( .ok_or("missing Taproot key origin")?; 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( secret_key, input.tap_internal_key.unwrap(), @@ -540,7 +540,7 @@ impl BenefactorWallet { .ok_or("missing Taproot key origin")?; let secret_key = self .master_xpriv - .derive_xpriv(&self.secp, &derivation_path) + .derive_xpriv(&self.secp, derivation_path) .expect("derivation path is short") .to_private_key() .inner; @@ -664,11 +664,8 @@ impl BeneficiaryWallet { for (x_only_pubkey, (leaf_hashes, (_, derivation_path))) in &psbt.inputs[0].tap_key_origins.clone() { - let secret_key = self - .master_xpriv - .derive_xpriv(&self.secp, &derivation_path)? - .to_private_key() - .inner; + let secret_key = + self.master_xpriv.derive_xpriv(&self.secp, derivation_path)?.to_private_key().inner; for lh in leaf_hashes { let sighash_type = TapSighashType::All; let hash = SighashCache::new(&unsigned_tx).taproot_script_spend_signature_hash( diff --git a/bitcoin/src/psbt/mod.rs b/bitcoin/src/psbt/mod.rs index e78328fee..a4a0275f1 100644 --- a/bitcoin/src/psbt/mod.rs +++ b/bitcoin/src/psbt/mod.rs @@ -814,7 +814,7 @@ impl GetKey for Xpriv { KeyRequest::XOnlyPubkey(_) => Err(GetKeyError::NotSupported), KeyRequest::Bip32((fingerprint, path)) => { 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()) } else if self.parent_fingerprint == *fingerprint && !path.is_empty()