Skrip Bitcoin & Verifikasi Tanda Tangan UTXO
Telusuri skrip pay-to-public-key-hash (P2PKH) dan penandatanganan ECDSA.
Skrip Bitcoin & Verifikasi Tanda Tangan UTXO adalah pelajaran Cryptology Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Cryptology Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Cryptology Academy mencakup 4 pelajaran total.
Model UTXO
Bitcoin menggunakan Unspent Transaction Outputs (UTXOs). Setiap UTXO adalah koin dengan skrip pengunci (scriptPubKey). Untuk membelanjakannya, pihak yang membelanjakan menyediakan skrip pembuka (scriptSig) yang memenuhi skrip pengunci. UTXO bersifat atomik — sudah dibelanjakan atau belum dibelanjakan, tidak pernah sebagian.
Skrip Bitcoin
Bitcoin Script adalah bahasa berbasis tumpukan yang tidak lengkap-Turing. Skrip dijalankan dengan memasukkan data ke tumpukan dan menjalankan opkode. Tidak ada perulangan atau rekursi — skrip selalu berhenti. Keterbatasan yang disengaja ini mencegah penolakan layanan dan membuat verifikasi skrip berjalan dalam O(n) terhadap panjang skrip.
P2PKH: Membayar ke Hash Kunci Publik
Jenis output yang paling umum. scriptPubKey: OP_DUP OP_HASH160
Jejak Eksekusi P2PKH
Jejak tumpukan untuk P2PKH: masukkan
ECDSA dalam Bitcoin
Bitcoin menggunakan ECDSA pada secp256k1 (kurva Koblitz, y^2 = x^3 + 7 mod p). Kunci privat d ∈ [1, n-1]. Kunci publik Q = d*G. Sign(m): k acak; r = (k*G).x mod n; s = k^{-1}(H(m)+r*d) mod n. Tanda tangan = (r, s). Dikodekan dalam DER di scriptSig.
Jenis SIGHASH
Tanda tangan Bitcoin mengikat bagian transaksi tertentu: SIGHASH_ALL (bawaan): tanda tangani semua masukan+keluaran. SIGHASH_SINGLE: tanda tangani hanya keluaran yang bersesuaian. SIGHASH_NONE: tidak menandatangani keluaran apa pun (berbahaya). SIGHASH_ANYONECANPAY: tanda tangani hanya masukan sendiri — memungkinkan transaksi kolaboratif.
P2SH: Membayar ke Hash Skrip
P2SH memungkinkan kondisi pembelanjaan yang kompleks disembunyikan di balik hash. scriptPubKey: OP_HASH160
Multisig (2-dari-3)
redeemScript: OP_2
SegWit dan P2WPKH
Saksi Terpisah (SegWit, BIP-141) memindahkan tanda tangan dari scriptSig ke bidang saksi terpisah. Ini memperbaiki kelenturan transaksi (ID berubah jika scriptSig berubah). scriptPubKey P2WPKH: OP_0 <20-byte pubKeyHash>. Saksi: [
Taproot (P2TR)
Taproot (BIP-340/341/342) menggunakan tanda tangan Schnorr dan Pohon Sintaksis Abstrak yang di-Merkle-kan (MAST). Pembelanjaan bawaan: satu tanda tangan Schnorr (tidak dapat dibedakan dari pembelanjaan melalui jalur kunci). Kondisi kompleks disembunyikan dalam pohon Merkle dan hanya diungkapkan jika digunakan. Privasi + efisiensi.
Verifikasi Skrip dalam Kode
Bitcoin Core memvalidasi skrip dalam penerjemah tumpukan. CheckSig memanggil VerifyScript, yang menjalankan gabungan scriptSig+scriptPubKey. Untuk setiap opkode CHECKSIG, opkode tersebut memanggil CheckECDSASignature, yang memverifikasi (r,s) yang dikodekan dalam DER terhadap hash transaksi menggunakan secp256k1.
Pemeriksaan Singkat
Apa yang diverifikasi OP_CHECKSIG dalam skrip P2PKH?
Ringkasan
UTXO menggunakan Bitcoin Script berbasis tumpukan. P2PKH: pola pembelanjaan yang paling umum — memverifikasi hash kunci publik, lalu memeriksa tanda tangan ECDSA. SegWit memperbaiki kelenturan; Taproot menambahkan Schnorr dan MAST. Berikutnya: kriptanalisis diferensial.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Skrip Bitcoin & Verifikasi Tanda Tangan UTXO” gratis?
Ya — teks lengkap “Skrip Bitcoin & Verifikasi Tanda Tangan UTXO” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Cryptology Academy, upgrade ke CoddyKit PRO. Kursus Cryptology Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Skrip Bitcoin & Verifikasi Tanda Tangan UTXO”?
Telusuri skrip pay-to-public-key-hash (P2PKH) dan penandatanganan ECDSA. Kamu berlatih Cryptology Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Cryptology Academy?
Tidak diperlukan pengalaman sebelumnya. Cryptology Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Skrip Bitcoin & Verifikasi Tanda Tangan UTXO” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Cryptology Academy ini?
Ya. Setiap pelajaran Cryptology Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Rantai Hash & Penautan Blok
- Pohon Merkle: Integritas Transaksi dalam Skala Besar
- Bukti Kerja: Penambangan & Penyesuaian Kesulitan
- Skrip Bitcoin & Verifikasi Tanda Tangan UTXO