From 5f93096c5acea3f9d64e97258889328493850e66 Mon Sep 17 00:00:00 2001 From: benthecarman Date: Sat, 2 Jul 2022 05:05:36 -0500 Subject: [PATCH] Fix Taproot keyspend serialization (#4443) --- .../org/bitcoins/core/protocol/script/ScriptWitness.scala | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/src/main/scala/org/bitcoins/core/protocol/script/ScriptWitness.scala b/core/src/main/scala/org/bitcoins/core/protocol/script/ScriptWitness.scala index bc8ba34139..6efa4d5a7f 100644 --- a/core/src/main/scala/org/bitcoins/core/protocol/script/ScriptWitness.scala +++ b/core/src/main/scala/org/bitcoins/core/protocol/script/ScriptWitness.scala @@ -237,7 +237,12 @@ case class TaprootKeyPath( hashType: HashType, annexOpt: Option[ByteVector]) extends TaprootWitness { - override val stack: Vector[ByteVector] = Vector(signature.bytes) + + override val stack: Vector[ByteVector] = { + if (hashType == HashType.sigHashDefault) { + Vector(signature.bytes) + } else Vector(signature.bytes :+ hashType.byte) + } } object TaprootKeyPath {