From 3ee5a32f8e55f2f320754a5232127a00ecf338e7 Mon Sep 17 00:00:00 2001 From: Thomas Kerin Date: Mon, 28 Oct 2019 20:56:08 +0000 Subject: [PATCH] OutputScriptFactory: add method for taproot output scripts --- src/Script/Factory/OutputScriptFactory.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/Script/Factory/OutputScriptFactory.php b/src/Script/Factory/OutputScriptFactory.php index 94d8958e4..ecc2d0055 100644 --- a/src/Script/Factory/OutputScriptFactory.php +++ b/src/Script/Factory/OutputScriptFactory.php @@ -193,4 +193,12 @@ public function witnessCoinbaseCommitment(BufferInterface $commitment): ScriptIn new Buffer("\xaa\x21\xa9\xed" . $commitment->getBinary()) ]); } + + public function taproot(BufferInterface $key32): ScriptInterface + { + if ($key32->getSize() !== 32) { + throw new \RuntimeException('Taproot key should be 32 bytes'); + } + return ScriptFactory::sequence([Opcodes::OP_1, $key32]); + } }