Taproot adalah cara menetapkan dan membuktikan hak membelanjakan bitcoin. Ia mendukung pembelanjaan biasa dengan satu tanda tangan serta syarat alternatif opsional yang disiapkan sebelumnya. Jika jalur tanda tangan dipakai, jaringan tidak perlu mengetahui apakah pembayaran disetujui satu orang atau beberapa orang yang bekerja sama, maupun apakah ada aturan lain yang tidak digunakan.
Bayangkan Alice dan Bob mengelola dana bersama. Selama sepakat, mereka ingin menyetujui pembayaran bersama. Mereka juga bisa menyiapkan alternatif: setelah ketinggian blok tertentu tercapai, Alice boleh membelanjakan sendiri. Taproot dapat memuat kesepakatan itu tanpa memublikasikan seluruh rencana cadangan pada pembayaran bersama yang biasa. Ini bukan fitur otomatis setiap dompet. Perangkat lunak harus mendukung syarat yang dipilih, dan peserta harus menyiapkannya dengan benar sebelum menerima dana. Alice benar-benar memperoleh hak membelanjakan sendiri sesuai kesepakatan. [1] [3]
Pilihan lebih sederhana disebut key path: jaringan memeriksa satu tanda tangan Schnorr yang sah untuk kunci dalam syarat keluaran. Keluaran adalah jumlah tertentu yang dibuat transaksi sebelumnya dan kini dibelanjakan. Tanda tangan itu saja tidak mengungkap jumlah peserta atau adanya skrip cadangan. Pilihan lain, script path, menyajikan skrip yang digunakan—aturan konkretnya—serta data yang memenuhinya. Ada pula bukti bernama control block bahwa aturan itu termasuk dalam kesepakatan awal. Skrip lain bisa tetap tersembunyi, tetapi skrip yang dipakai beserta buktinya masih mengungkap informasi. [1]
Schnorr Signature adalah jenis tanda tangan digital: bukti matematis bahwa kunci terkait menyetujui pembayaran. Protokol yang sesuai, seperti MuSig2, memungkinkan beberapa pemegang kunci membuat kunci gabungan, lalu tanda tangan bersama. Alice dan Bob tidak perlu saling menyerahkan kunci privat. Namun dompet mereka harus mendukung protokol tersebut dan bekerja sama saat menandatangani. Taproot sendiri tidak menggabungkan tanda tangan semua masukan transaksi atau mengubah sembarang dompet Multisig menjadi satu tanda tangan. Implementasi penting: penggunaan ulang nilai rahasia bernama nonce secara keliru dalam protokol penandatanganan dapat membocorkan kunci privat. [2] [5]
Di jaringan utama Bitcoin, alamat Taproot biasanya berawalan bc1p dan memakai Bech32m. Sebelum mengirim, periksa dukungan format di layanan atau dompet serta alamat lengkapnya. Taproot dapat mengurangi aturan yang diungkap dan data yang dibutuhkan untuk membelanjakan. Namun jumlah uang dan hubungan publik antara keluaran yang dibelanjakan tidak disembunyikan. Jalur pilihan dan ukuran buktinya juga memengaruhi biaya; format lebih baru tidak otomatis berarti pembayaran termurah. Bila dompet menggunakan Taproot untuk pembayaran biasa dengan satu kunci, Anda tidak harus merancang skrip cadangan. [1] [4]
P2TR berarti Pay to Taproot. Dalam aturan, ini adalah SegWit asli versi 1 dengan program witness 32 byte yang mewakili kunci publik keluaran. Skrip opsional disusun sebagai pohon, dengan sidik jari kriptografis yang dimasukkan ke dalam kunci itu. Saat satu cabang digunakan, keanggotaannya dapat dibuktikan tanpa membuka seluruh pohon. BIP 340 menjelaskan tanda tangan Schnorr, BIP 341 aturan Taproot, dan BIP 342 bahasa Tapscript untuk jalur skrip. Tanda tangan Schnorr biasa berukuran 64 byte; memilih secara eksplisit mode lain yang menentukan bagian transaksi yang ditandatangani menambah satu byte. Dompet menangani rincian ini, bukan pengubahan alamat secara manual. [1] [2] [3]
Untuk gambaran yang lebih utuh, baca entri ini bersama SegWit, Private Key, Transaksi, Lightning Network. Entri ini juga dirujuk dari SegWit, Lightning Network, Hash, SHA-256.