2024-05-13 17:15:41 +05:30

3.4 KiB

Relevant BIPs

Understanding the following BIPs is relevant for the project.

BIP documents

BIP Readtrough videos

Taproot

!Taproot output structure.canvas

Spending Taproot UTXOs

Videos

Descriptors/Miniscript

We can use Descriptors/Miniscript to precisely and human readable describe the Transaction outputs of the escrow transaction pipeline. This improves readability and portability of the pipeline.

Videos

Websites

Signature/Pubkey aggregation

To combine multiple parties pubkeys to a single combined Taproot pubkey and to create a aggregated signature with all participants MuSig2 is relevant.

Videos

Sighash Types

Maybe sighash flags could be a useful tool? It's possible to construct a transaction with multiple inputs/outputs from different parties using signatures committing only to specific inputs or outputs.

Canvas

!Signature and Flags.canvas

Blog articles

Blog article on Sighashes - good examples - Raghav Sood

Signature Hash Flags Medium Article - enigbe ochekliye

How to make taproot transactions? (Example transactions)

https://github.com/danielabrozzoni/multisigs_and_carrots (Best Example I could find)

https://bitcoindevkit.org/blog/2021/11/first-bdk-taproot-tx-look-at-the-code-part-1/ (Interesting read)

https://github.com/bitcoin-core/btcdeb/blob/master/doc/tapscript-example-with-tap.md (Good code for spending taproot transactions)

https://dev.to/eunovo/a-guide-to-creating-taproot-scripts-with-bitcoinjs-lib-4oph (Can look at this, this uses bitcoinjs-lib to create taproot scripts)