Setiap output membawa program kecil, skrip penguncinya. Untuk membelanjakannya, sebuah input menyediakan bagian pembuka kuncinya. Node menjalankan keduanya bersamaan: jika program berakhir dengan 'true', pembelanjaan tersebut valid.
Mesin tumpukan
Skrip bekerja pada tumpukan: item didorong, dan operasi mengambil item dari atas serta mendorong hasilnya. Pembayaran warisan klasik berbunyi: OP_DUP OP_HASH160 <hash kunci publik> OP_EQUALVERIFY OP_CHECKSIG. Dengan kata lain: salin kunci publik yang disediakan, hash, periksa apakah cocok dengan yang ada di output, lalu periksa tanda tangan terhadapnya.
Terbatas dengan sengaja
Skrip tidak memiliki perulangan dan tidak ada memori tujuan umum. Setiap program berakhir, dengan cepat, dan setiap node dapat memprediksi berapa biayanya untuk diperiksa. Hal itu membuatnya jauh kurang ekspresif dibandingkan bahasa blockchain lain, dan jauh lebih mudah untuk dipahami.
- Multisig: memerlukan beberapa tanda tangan dari sekumpulan kunci.
- Kunci hash: memerlukan pengungkapan rahasia yang hash-nya diketahui, seperti yang dilakukan Lightning.
- Kunci waktu: melarang pembelanjaan sebelum tanggal atau ketinggian blok.