
Cách thức hoạt động của giao dịch Bitcoin: UTXOs, chữ ký, mempool và xác nhận
Cách các giao dịch Bitcoin hoạt động đơn giản hơn so với hầu hết các giao diện ví thể hiện: bạn chi tiêu các đầu ra cũ, tạo ra các đầu ra mới, ký, phát sóng, rồi chờ các thợ mỏ xác nhận. Khi bạn có thể hình dung được quy trình đó, phí, độ trễ và những khoảnh khắc "số dư bị thiếu" không còn là điều bí ẩn.
Giao dịch Bitcoin là gì (mô hình tiếng Anh đơn giản)
Một giao dịch Bitcoin không phải là một "chuyển khoản tài khoản" mà trừ đi từ một số dư và cộng vào một số dư khác. Nó là một thông điệp dữ liệu đã ký lại chuyển giao quyền kiểm soát của các phần cụ thể của bitcoin cho các chủ sở hữu mới, được thực thi bởi các quy tắc của mạng và được xác minh bởi bất kỳ ai chạy một nút.
BTC.network mô tả nó như một thông điệp đã ký lại chuyển nhượng quyền sở hữu, và Bitcoin.com định nghĩa bitcoin như một lịch sử chuyển nhượng thay vì các đối tượng nằm trong tài khoản.
Mô hình tâm lý rõ ràng là: Bitcoin theo dõi các phần giá trị có thể chi tiêu, và một giao dịch tiêu thụ một số phần đó và tạo ra các phần mới. Đó là lý do tại sao tài liệu trắng của Bitcoin thường được tóm tắt là một chuỗi chữ ký số, và tại sao bạn có thể kiểm tra mọi giao dịch trên một sổ cái công khai với một block explorer. Không có gì "di chuyển" bên trong cơ sở dữ liệu ngân hàng.
Thay vào đó, mạng cập nhật một bản ghi chung về những đầu ra nào chưa được chi tiêu và ai có thể chi tiêu chúng tiếp theo.
Đầu vào, đầu ra và UTXO: các khối xây dựng
Mỗi giao dịch Bitcoin được xây dựng từ các đầu vào và đầu ra. Đầu vào chỉ đến các đầu ra đã được tạo ra trước đó mà vẫn có thể chi tiêu. Đầu ra định nghĩa các phần có thể chi tiêu mới và các điều kiện cần thiết để chi tiêu chúng sau này. Nhiều nguồn tài liệu hội tụ vào cấu trúc này: BTC.network, Bitcoin.com, OKX và Mt Pelerin đều mô tả các giao dịch như là đầu vào chi tiêu các đầu ra trước đó và tạo ra các đầu ra mới.
Các đầu ra có thể chi tiêu trước đó được gọi là UTXO, viết tắt của đầu ra giao dịch chưa chi tiêu. Kraken giải thích rằng mô hình UTXO là kỹ thuật mà Bitcoin sử dụng để theo dõi số dư khi chúng di chuyển giữa các ví, và cả OKX và Mt Pelerin nhấn mạnh rằng các ví quét blockchain hoặc tập hợp UTXO để tìm các đầu ra có thể chi tiêu. Thực tế, "số dư" của ví của bạn chỉ là tổng của các UTXO mà nó có thể mở khóa.
Phần mà người dùng mới gặp khó khăn là UTXO thường được chi tiêu toàn bộ. Bạn không thường chi tiêu "một nửa" của một UTXO. Nếu các đầu vào của bạn cộng lại nhiều hơn số tiền bạn muốn thanh toán, giao dịch sẽ tạo ra một đầu ra thay đổi trở lại một địa chỉ mà bạn kiểm soát. BTC.network, Kraken, OKX và Mt Pelerin đều mô tả hành vi chi tiêu toàn bộ này và đầu ra thay đổi kết quả.
Một ví dụ cụ thể khớp với những gì bạn thấy trên chuỗi. Nếu bạn kiểm soát một UTXO 0.05 BTC duy nhất và bạn muốn thanh toán 0.03 BTC, ví của bạn sẽ có khả năng sử dụng toàn bộ 0.05 BTC đó làm đầu vào, tạo ra một đầu ra 0.03 BTC cho người nhận, và tạo ra một đầu ra thứ hai trở lại cho bạn cho phần còn lại như là thay đổi, trừ đi phí.
BTC.network đi qua mẫu chính xác này, và Bitcoin.com và Mt Pelerin mô tả cùng một hành vi "tiền mặt thay đổi" với các con số khác nhau.
Một trường hợp đặc biệt quan trọng để hiểu BTC đến từ đâu. Kraken lưu ý rằng loại giao dịch duy nhất không có đầu vào là giao dịch coinbase, là giao dịch đầu tiên trong một khối và là nơi BTC mới được tạo ra như một phần của phần thưởng khai thác.
Ký: cách mà mạng biết bạn được phép chi tiêu
Các đầu vào không chỉ là các con trỏ. Chúng cũng mang dữ liệu mở khóa chứng minh bạn được ủy quyền để chi tiêu các UTXO được tham chiếu. Sự ủy quyền đó là mật mã.
Khi bạn "sở hữu" bitcoin, điều bạn thực sự kiểm soát là khóa riêng có thể tạo ra một chữ ký số hợp lệ cho các điều kiện chi tiêu trên một đầu ra. Bitcoin.com, OKX, Mt Pelerin, BTC.network và LearnMeABitcoin đều mô tả thiết lập mật mã khóa công khai này: khóa riêng được sử dụng để ký, và người khác có thể xác minh chữ ký bằng cách sử dụng thông tin khóa công khai tương ứng.
Hai hệ quả thực tiễn phát sinh từ điều này.
Đầu tiên, chữ ký là không thể làm giả mà không có khóa riêng. BTC.network và OKX đều nhấn mạnh rằng mạng có thể xác minh bạn được phép chi tiêu mà không cần bạn tiết lộ khóa riêng.
Thứ hai, chữ ký gắn liền với dữ liệu giao dịch. OKX giải thích rằng nếu chi tiết giao dịch bị thay đổi sau khi ký, chữ ký sẽ không còn hợp lệ. LearnMeABitcoin mô tả các giao dịch như dữ liệu "mở khóa và khóa" các lô bitcoin, trong đó việc mở khóa thường liên quan đến một chữ ký được tạo ra từ khóa riêng tương ứng với khóa công khai trong khóa của đầu ra.
Đây cũng là lý do tại sao Bitcoin thường được mô tả như một chuỗi chữ ký số. Bitcoin.com trích dẫn mô tả trong tài liệu trắng rằng mỗi chuyển nhượng ký vào tham chiếu giao dịch trước đó và khóa công khai của chủ sở hữu tiếp theo, tạo ra một chuỗi quyền sở hữu có thể xác minh.
Phát sóng, xác thực, mempool, khai thác, xác nhận
Khi ví của bạn xây dựng giao dịch và ký nó, nó phát sóng dữ liệu đã ký đến mạng peer-to-peer. BTC.network, Bitcoin.com, OKX và Mt Pelerin đều mô tả bước phát sóng này và những gì xảy ra tiếp theo.
Các nút không chấp nhận mù quáng những gì chúng nhận được. Chúng xác thực. Tối thiểu, chúng kiểm tra rằng các chữ ký là hợp lệ, rằng các UTXO được tham chiếu tồn tại và chưa được chi tiêu, rằng các đầu ra không vượt quá các đầu vào, và rằng giao dịch tuân theo các quy tắc giao thức. BTC.network và Mt Pelerin mô tả rõ ràng việc kiểm tra chữ ký và ngăn chặn chi tiêu kép như một phần của xác thực nút.
Các giao dịch hợp lệ, chưa xác nhận nằm trong mempool, thực chất là phòng chờ chung của mạng. Bitcoin.com, OKX, Mt Pelerin và BTC.network đều sử dụng cùng một khái niệm: các giao dịch lan truyền, sau đó chờ trong mempool cho đến khi các thợ mỏ bao gồm chúng.
Các thợ mỏ sau đó chọn các giao dịch từ mempool và bao gồm chúng trong một khối. Bitcoin.com và OKX mô tả các thợ mỏ cạnh tranh thông qua Proof of Work để tạo ra khối tiếp theo, và Mt Pelerin lưu ý rằng các khối được khai thác trung bình khoảng mỗi 10 phút. OKX cũng tuyên bố thời gian trung bình 10 phút tương tự.
Giao dịch của bạn nhận được xác nhận đầu tiên khi nó được bao gồm trong một khối đã được khai thác mà mạng chấp nhận. Mỗi khối bổ sung được xây dựng trên đó thêm một xác nhận nữa, làm cho việc đảo ngược ngày càng khó khăn hơn. BTC.network, Bitcoin.com, OKX và Mt Pelerin đều mô tả các xác nhận tích lũy với mỗi khối mới và tăng cường bảo mật.
Số lượng xác nhận được coi là "cuối cùng" là quy ước, không phải vật lý. BTC.network cho biết nhiều người nhận coi 1–3 xác nhận là đủ cho các khoản tiền vừa phải, trong khi các sàn giao dịch thường yêu cầu 3–6 cho các khoản gửi lớn hơn. Bitcoin.com và OKX đều mô tả một thực tiễn phổ biến là chờ đợi sáu xác nhận để giảm rủi ro đảo ngược trong các nhánh tạm thời.
Điểm chính cho các nhà giao dịch là "tính cuối cùng" là một ngưỡng rủi ro được chọn bởi người nhận, và nó thay đổi theo địa điểm.
Phí và kích thước giao dịch: tại sao một số giao dịch gửi chậm hoặc đắt
Phí Bitcoin không phải là một tỷ lệ phần trăm của số tiền bạn gửi. Chúng là một cuộc đấu giá cho không gian khối khan hiếm.
Phí là ngụ ý trong giao dịch: đó là sự khác biệt giữa tổng giá trị đầu vào và tổng giá trị đầu ra. BTC.network và Mt Pelerin mô tả điều này trực tiếp, và OKX giải thích phí được điều khiển bởi kích thước giao dịch chứ không phải số lượng BTC.
Các thợ mỏ ưu tiên theo tỷ lệ phí, không phải phí tuyệt đối. BTC.network rõ ràng nói rằng các thợ mỏ ưu tiên các giao dịch có tỷ lệ phí cao nhất, thường được trích dẫn bằng sat/vB (satoshi trên byte ảo). Mt Pelerin cũng sử dụng sat/vB và cho thấy toán học cơ bản: tỷ lệ phí nhân với kích thước giao dịch xác định tổng phí.
Đây là nơi quản lý UTXO trở thành một yếu tố chi phí thực tế. Nhiều đầu vào và đầu ra thường có nghĩa là nhiều byte hoặc byte ảo hơn, điều này có nghĩa là tổng phí cao hơn ở cùng một sat/vB. BTC.network, Bitcoin.com, OKX và Mt Pelerin đều liên kết chi phí phí với kích thước giao dịch, và BTC.network chỉ ra rằng việc hợp nhất các UTXO nhỏ trong các khoảng thời gian phí thấp có thể giảm kích thước giao dịch trong tương lai.
Điều này cũng giải thích tại sao hai giao dịch gửi cùng một số lượng BTC có thể có phí rất khác nhau. Một ví chi tiêu một UTXO lớn có thể tạo ra một giao dịch gọn gàng. Một ví chi tiêu nhiều UTXO nhỏ để đạt được cùng một số tiền tạo ra một giao dịch lớn hơn và trả nhiều hơn ở cùng một tỷ lệ phí.
Bitcoin.com đưa ra một phiên bản trực quan của ý tưởng này bằng cách lưu ý rằng các giao dịch có nhiều đầu vào chiếm nhiều không gian khối hơn và có thể tốn nhiều hơn, và Mt Pelerin cũng đưa ra cùng một điểm bằng cách liên kết kích thước byte với số lượng UTXO được tiêu thụ.
Khi một giao dịch bị "kẹt", thường có nghĩa là nó đang nằm trong mempool với một tỷ lệ phí không cạnh tranh cho nhu cầu hiện tại. Giao thức không đảm bảo việc bao gồm theo thời gian. Nó đảm bảo rằng các thợ mỏ có thể bao gồm các giao dịch hợp lệ, và các thợ mỏ được khuyến khích về kinh tế để chọn các tỷ lệ phí cao hơn khi không gian khối khan hiếm.
Cách kiểm tra một giao dịch (và những gì bên trong một giao dịch)
Bitcoin là minh bạch theo thiết kế. Sau khi bạn gửi, ví của bạn sẽ hiển thị một TXID, đó là định danh của giao dịch. Bạn có thể dán TXID đó vào một block explorer để xem liệu giao dịch có chưa được xác nhận hay đã được xác nhận, nó có bao nhiêu xác nhận, phí mà nó đã trả, và chính xác những đầu vào và đầu ra nào mà nó đã sử dụng. OKX và Mt Pelerin đều mô tả việc sử dụng một block explorer với TXID để theo dõi trạng thái và chi tiết.
Nếu bạn muốn đi sâu hơn một cấp độ, các giao dịch thô có một cấu trúc trường xác định. LearnMeABitcoin phân tích bố cục tiêu chuẩn và làm nổi bật các phần chính mà các nhà giao dịch thực sự gặp phải khi gỡ lỗi. Các đầu vào tham chiếu các đầu ra trước đó bằng cách sử dụng một ID giao dịch (TXID) cộng với một chỉ số đầu ra (VOUT). Các đầu ra xác định các khoản tiền và các kịch bản khóa.
Các giao dịch SegWit thêm một trường nhân chứng mang dữ liệu mở khóa cho các đầu vào, và giao dịch cũng bao gồm các trường như phiên bản và locktime. Bạn không cần phải ghi nhớ định dạng cấp byte để sử dụng Bitcoin, nhưng biết rằng giao dịch là dữ liệu có cấu trúc giúp bạn giải thích những gì mà các explorer cho bạn thấy.
Lợi ích thực tiễn rất đơn giản: khi có điều gì đó trông không ổn, bạn có thể tự xác minh. Nếu số dư ví của bạn "giảm" sau khi gửi, explorer thường sẽ hiển thị một đầu ra thay đổi trả lại giá trị cho bạn, mà chỉ trở nên có thể chi tiêu sau khi được xác nhận, như Mt Pelerin giải thích. Nếu một khoản gửi bị trì hoãn, explorer sẽ cho thấy liệu nó vẫn còn trong mempool và tỷ lệ phí mà nó đã đề xuất, điều này thường là lý do thực sự mà nó đang chờ.
Lời kết
Tôi đã thấy các nhà giao dịch lãng phí hàng giờ tranh cãi về "Bitcoin chậm" khi chuỗi đang làm chính xác những gì nó được thiết kế để làm. Cách các giao dịch Bitcoin hoạt động là một chi tiêu UTXO cộng với một chữ ký cộng với một đấu giá tỷ lệ phí cho không gian khối. Khi bạn hiểu điều đó, bạn ngừng coi các xác nhận như phép thuật và bắt đầu coi chúng như một sự thanh toán xác suất mà thắt chặt với mỗi khối.
Thói quen duy nhất mà nhất quán tiết kiệm tiền và giảm căng thẳng là suy nghĩ theo đầu vào. Nếu ví của bạn đầy các UTXO kích thước bụi, bạn đang mang theo rủi ro phí trong tương lai vì nhiều đầu vào thường có nghĩa là nhiều vbytes hơn và tổng phí cao hơn ở cùng một sat/vB. Điểm của BTC.network về việc hợp nhất trong các khoảng thời gian phí thấp không phải là lý thuyết. Đó là cơ chế giao dịch cơ bản xuất hiện trong PnL của bạn.
