‹ CHƯƠNG 16, TẤT CẢ CÁC BÀI HỌC

BẬC THẦY · CHƯƠNG 16 · BÀI HỌC 1 TRONG SỐ 5

Script và nâng cấp

Bitcoin Script

Điều gì thực sự được ghi trong một đầu ra để khóa nó? 6 phút

Mỗi đầu ra mang một chương trình nhỏ, kịch bản khóa của nó. Để chi tiêu nó, một đầu vào cung cấp một phần mở khóa. Các nút chạy cả hai cùng nhau: nếu chương trình kết thúc bằng true, việc chi tiêu là hợp lệ.

Một máy xếp chồng

Script hoạt động trên một ngăn xếp: các mục được đẩy vào, và các thao tác lấy các mục ra khỏi đỉnh và đẩy kết quả. Thanh toán cũ cổ điển đọc: OP_DUP OP_HASH160 <public key hash> OP_EQUALVERIFY OP_CHECKSIG. Nói cách khác: sao chép khóa công khai được cung cấp, băm nó, kiểm tra xem nó có khớp với khóa trong đầu ra không, sau đó kiểm tra chữ ký tương ứng.

Có giới hạn có chủ đích

Script không có vòng lặp và không có bộ nhớ mục đích chung. Mỗi chương trình kết thúc nhanh chóng, và mọi nút có thể dự đoán chi phí để kiểm tra nó. Điều đó làm cho nó kém biểu cảm hơn nhiều so với ngôn ngữ của một số blockchain khác, và dễ suy luận hơn nhiều.

  • Multisig: yêu cầu nhiều chữ ký từ một tập hợp các khóa.
  • Khóa băm: yêu cầu tiết lộ một bí mật có băm đã biết, như Lightning thực hiện.
  • Khóa thời gian: cấm chi tiêu trước một ngày hoặc một độ cao khối.

Những điều cần ghi nhớ

  • Các đầu ra bị khóa bởi các chương trình nhỏ dựa trên ngăn xếp.
  • Script không có vòng lặp: mỗi lần kiểm tra kết thúc một cách có thể dự đoán.
  • Chữ ký, băm và thời gian là các khối xây dựng của nó.

Kiểm tra nhanh

Khi nào một khoản chi tiêu là hợp lệ ở cấp độ Script?

Tại sao Script không có vòng lặp?

Bitcoin Script · Trường Đại học Bitcoin