From 8aa07ad6fb6715dae2f10e958cd040935cef73f3 Mon Sep 17 00:00:00 2001 From: "Abrahem.79" <184462822+abrahem79@users.noreply.github.com> Date: Sun, 16 Nov 2025 17:21:50 +0300 Subject: [PATCH] Created _Footer (markdown) --- _Footer.md | 129 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 _Footer.md diff --git a/_Footer.md b/_Footer.md new file mode 100644 index 0000000..db8fbb5 --- /dev/null +++ b/_Footer.md @@ -0,0 +1,129 @@ +## +**`
+ BIP: 119 + Layer: Consensus (soft fork) + Title: CHECKTEMPLATEVERIFY + Author: Jeremy Rubin+ +==Abstract== + +This BIP proposes a new opcode, OP_CHECKTEMPLATEVERIFY, to be activated +as a change to the semantics of OP_NOP4. + +==Summary== + +OP_CHECKTEMPLATEVERIFY uses opcode OP_NOP4 (0xb3) as a soft fork upgrade. + +OP_CHECKTEMPLATEVERIFY does the following: + +* There is at least one element on the stack, fail otherwise +* The element on the stack is 32 bytes long, NOP otherwise +* The DefaultCheckTemplateVerifyHash of the transaction at the current input index is equal to the element on the stack, fail otherwise + +The DefaultCheckTemplateVerifyHash commits to the serialized version, locktime, scriptSigs hash (if any +non-null scriptSigs), number of inputs, sequences hash, number of outputs, outputs hash, and +currently executing input index. + +The recommended standardness rules additionally: + +* Reject non-32 byte as SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS. + +==Motivation== + +This BIP introduces a transaction template, a simple spending restriction that +pattern matches a transaction against a hashed transaction specification. +OP_CHECKTEMPLATEVERIFY reduces many of the trust, interactivity, and storage +requirements inherent with the use of pre-signing in applications. +For more details on applications, please see the references. + + +==Detailed Specification== + +The below code is the main logic for verifying CHECKTEMPLATEVERIFY, described +in pythonic pseudocode. The canonical specification for the semantics of +OP_CHECKTEMPLATEVERIFY as implemented in C++ in the context of Bitcoin Core can +be seen in the reference implementation. + +The execution of the opcode is as follows: ++ Comments-URI: https://github.com/bitcoin/bips/wiki/Comments:BIP-0119 + Status: Draft + Type: Standards Track + Created: 2020-01-06 + License: BSD-3-Clause +