Thanks to bitcoin-core developers for merging the next soft-fork! image Merkle trees can't be stopped.
Writing apps for hardware signing devices is about to get this easy ``` #![cfg_attr(target_arch = "riscv32", no_std, no_main)] extern crate alloc; use alloc::vec::Vec; sdk::bootstrap!(); fn process_message(_app: &mut sdk::App, msg: &[u8]) -> Vec<u8> { msg.to_vec() } pub fn main() { sdk::App::new(process_message).run(); } ```
Fun
Release 2.4.0 of the Ledger Bitcoin app is out. Codename: "Let the Musig play" It comes with full MuSig2 support for taproot spending policies (both in the keypath and in scripts). Note: at this time, only the python client library is updated with MuSig2 support.
Some updates on OP_CHECKCONTRACTVERIFY: - BIP draft: https://github.com/bitcoin/bips/pull/1793 - bitcoin-core concept implementation: - Delving post: In the new post on delving, I delve into the amount logic of CCV, something that has somewhat evolved since the initial posts. I argue that while scriptPubKey checks are just equality checks this transaction-wide logic is preferable, and it's difficult to replicate it otherwise. However, while the amount logic is not difficult, transaction-wide checks present some implementation challenges, because of multi-threaded Script validation in core. Solving this seems to be necessary for several possible soft forks (CCV, VAULT, TXHASH, CISA), but even just to implement batch validation for Schnorr signatures, which is an optimization available today. More details in the PR. As usual, you'll find all the links at . I look forward to your comment and ideas.