Control block dokazuje členstvo listu
Tapleaf je jeden skriptový list v Taproot strome. Jeho hash zaväzuje verziu listu aj presné bajty skriptu. Control block obsahuje interný kľúč, paritný bit aj susedné hashe na ceste stromom. Paritný bit pomáha obnoviť správny výstupný bod.
Uzol postupne vypočíta TapBranch hashe. Z výsledného Merkleho koreňa a interného kľúča vytvorí tweak. Potom znovu vypočíta výstupný kľúč. Musí sa zhodovať s kľúčom v scriptPubKey. Inak je minutie neplatné. Celý strom pritom netreba odhaliť.
OP_CHECKSIGADD skladá prah podpisov
Tapscript používa Schnorrove podpisy. Pridal operáciu OP_CHECKSIGADD. Tá overí podpis a k číslu pripočíta výsledok kontroly. Skript tak môže vyjadriť napríklad dva platné podpisy z troch kľúčov. Starý OP_CHECKMULTISIG je v Tapscripte zakázaný.
Prázdny podpis pri týchto operáciách predstavuje neúspešnú kontrolu bez okamžitého pádu skriptu. Neplatný neprázdny podpis celý skript ukončí neúspechom. Tento rozdiel je súčasť konsenzu. Vlastná približná implementácia preto môže byť nebezpečná.
Priestor na budúce rozšírenia je zámerný
Každý Taproot list má verziu. Tapscript zároveň vyhradil operácie označované OP_SUCCESS. Ak ich dekóder nájde v skripte, dnešné overenie uspeje. Budúci soft fork môže ich význam sprísniť, kým staré uzly by naďalej prijímali bloky podľa starších pravidiel.
Táto možnosť nie je pozvánkou na náhodné používanie neznámych pravidiel. Dnešný výstup môže byť minutý inak, než autor očakáva, preto má peňaženka vytvárať iba verzie a skripty, ktorým rozumie. Budúce rozšírenie musí mať presne určenú aktiváciu.
Tvar stromu ovplyvňuje cenu aj obnovu
Kľúčová cesta strom vôbec neodhalí. Skriptová cesta musí pridať použitý skript a vstupné údaje. Pridáva aj každý hash v control blocku. Hlbšia vetva preto zvyčajne potrebuje viac vbytes. Vbyte je jednotka používaná pri výpočte poplatku.
Častú cestu možno umiestniť plytšie a núdzovú cestu hlbšie. Najlacnejší strom však nemusí byť najlepší. Dôležitá je čitateľnosť návrhu, audit a spoľahlivá obnova. Peňaženka preto optimalizuje celý životný cyklus, nielen poplatok.