BIPs bitcoin improvement proposals

328 - Derivation Scheme for MuSig2 Aggregate Keys

BIP: 328 source Layer: Applications Title: Derivation Scheme for MuSig2 Aggregate Keys Authors: Ava Chow Status: Complete Type: Informational Assigned: 2024-06-04 License: CC0-1.0 Table of ContentsAbstractCopyrightMotivationSpecificationTest VectorsBackwards CompatibilityRationaleReference ImplementationAcknowledgements Abstract This document specifies how BIP 32 extended public keys can be constructed from a BIP 327 MuSig2 aggregate public key and how such keys should be used for key derivation. Copyright This BIP is licensed under the Creative Commons CC0 1.0 Universal license. Motivation Multiple signers can create a single aggregate public key with MuSig2 that is indistinguishable from a random public key. The cosigners need a method for generating additional aggregate pubkeys to follow the best practice of using a new address for every payment. The obvious method is for the cosigners to generate multiple public keys and produce a new aggregate pubkey every time on...

379 - Miniscript

BIP: 379 source Layer: Applications Title: Miniscript Authors: Pieter Wuille Andrew Poelstra Sanket Kanjalkar Antoine Poinsot Ava Chow Status: Draft Type: Informational Assigned: 2023-10-10 License: CC0-1.0 Requires: 380 Abstract This document specifies Miniscript, a language for writing (a subset of) Bitcoin Scripts in a structured way, enabling analysis, composition, generic signing and more. Copyright This document is licensed under the Creative Commons CC0 1.0 Universal license. Motivation Bitcoin Script is an unusual stack-based language with many edge cases, designed for implementing spending conditions consisting of various combinations of signatures, hash locks, and time locks. Yet, despite being limited in functionality, it is still highly nontrivial to: Given a combination of spending conditions, finding the most economical script to implement it. Given two scripts, construct a script that implements a composition...

93 - codex32

BIP: 93 source Layer: Applications Title: codex32: Checksummed SSSS-aware BIP32 seeds Authors: Leon Olsson Curr and Pearlwort Sneed Andrew Poelstra Status: Draft Type: Informational Assigned: 2023-02-13 License: BSD-3-Clause Discussion: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-February/021469.html Table of ContentsIntroductionAbstractCopyrightMotivationSpecificationcodex32ChecksumError CorrectionUnshared SecretMaster seed formatRecovering SecretGenerating SharesFor a fresh secretFor an existing secretLong codex32RationaleNot BIP-0039 EntropyBackwards CompatibilityReference ImplementationTest VectorsTest vector 1Test vector 2Test vector 3Test vector 4Test vector 5Invalid test vectorsAppendixMathematical Companion Introduction Abstract This document proposes a checksummed base32 format, "codex32", and a standard for backing up and restoring the master seed of a BIP-0032 hierarchical deterministic wallet using it. It includes an encoding...

372 - Pay-to-contract tweak fields for PSBT

BIP: 372 source Layer: Applications Title: Pay-to-contract tweak fields for PSBT Authors: Maxim Orlovsky Status: Draft Type: Specification Assigned: 2022-01-16 License: BSD-2-Clause Requires: BIP-174 Table of ContentsIntroductionAbstractCopyrightBackgroundMotivationDesignSpecificationSecurity considerationsRationaleCompatibilityReference implementationAcknowledgementsTest vectorsReferences Introduction Abstract This document proposes additional fields for BIP 174 PSBTv0 and BIP 370 PSBTv2 that allow for pay-to-contract (P2C) key tweaking data to be included in a PSBT of any version. These will represent extra-transaction information required for the signer to produce valid signatures spending previous outputs. Copyright This BIP is licensed under the 2-clause BSD license. Background Key tweaking is a procedure for creating a cryptographic commitment to a message using elliptic curve properties. The procedure uses the discrete log problem (DLP) to commit to an extr...

322 - Generic Signed Message Format

BIP: 322 source Layer: Applications Title: Generic Signed Message Format Authors: Karl-Johan Alm Comments-Summary: No comments yet. Comments-URI: https://github.com/bitcoin/bips/wiki/Comments:BIP-0322 Status: Draft Type: Specification Assigned: 2018-09-10 License: CC0-1.0 Table of ContentsAbstractMotivationTypes of SignaturesLegacySimpleFullFull (Proof of Funds)Detailed SpecificationVerificationVerification ProcessSigningCompatibilityReference implementationAcknowledgementsReferencesCopyrightTest vectorsMessage hashingMessage signingTransaction Hashes Abstract A standard for interoperable signed messages based on the Bitcoin Script format, either for proving fund availability, or committing to a message as the intended recipient of funds sent to the invoice address. Motivation The current message signing standard only works for P2PKH (1...) invoice addresses. We propose to extend and generalize the standard by using a Bitcoin Script based approach. This ensures tha...