UTXO là gì?
UTXO là viết tắt của đầu ra giao dịch chưa chi tiêu (UTXO). Về cơ bản, đó là số lượng tiền điện tử còn lại mà bạn nhận được từ mỗi giao dịch. Tuy nhiên, để giải thích thêm, trước tiên chúng ta nên tìm hiểu cách thức giao dịch điển hình hoạt động. Lấy Bitcoin làm ví dụ vì nó là loại tiền điện tử nổi tiếng nhất sử dụng UTXOs.
Ví dụ về giao dịch UTXO
Giả trong ví có số dư 100 Bitcoin. Mặc dù bạn chỉ thấy một số dư duy nhất nhưng số tiền này thực sự bao gồm vài số UTXO. Bạn có thể có 4 UTXO, mỗi UTXO trị giá 25 Bitcoin, 2 UTXO trị giá 50 hoặc một bộ UTXO có giá trị 37, 18, 40 và 5 Bitcoin. Số tiền cụ thể không phải là vấn đề, nhưng chúng phải cộng vào tổng số dư của bạn, trong trường hợp này là 100.
Giả sử bạn mua một chiếc xe mới và Porche có giá 35 Bitcoin là lựa chọn của bạn. Ví của bạn chỉ chứa UTXO tương đương 15, 17, 28 và 40 Bitcoin mỗi loại. Bạn không thể có giá trị chính xác 35 Bitcoin.
Không thể phân chia UTXO, vì vậy, không có cách nào để trả chính xác 35 Bitcoin để mua xe.
Thay vào đó, bạn phải chi tiêu 40 Bitcoin UTXO. Với vấn đề như vậy, mạng gợi ý 2 UTXO mới: 35 Bitcoin và 5 Bitcoin. Đại lý xe hơi nhận được UTXO 35 Bitcoin trong khi bạn nhận được 5 Bitcoin UTXO dưới dạng chuyển đổi.
Bạn cũng có thể chi tiêu các UTXO 17, 28 Bitcoin và nhận 10 Bitcoin khi bạn chuyển đổi. Một giao dịch có thể sử dụng bất kỳ sự kết hợp UTXO nào; tuy nhiên, không có quyền kiểm soát loại nào.
Giống như bạn có thể chia UTXO thành các trường hợp riêng biệt, bạn cũng có thể kết hợp chúng trong các giao dịch lớn hơn, tạo ra ít hơn trên mạng.
Phí giao dịch UTXO
Phí giao dịch cũng được bao gồm trong các giao dịch và trừ khỏi UTXO mà bạn nhận được dưới dạng thay đổi. Phương trình trông giống như thế này:
UTXO mới = (Tổng số UTXO trong giao dịch) – (Số giao dịch) – (Phí giao dịch)
Tiếp tục ví dụ với tính phí giao dịch 1 Bitcoin:
UTXO mới = (17 + 18) – (35) – (1) = 9 Bitcoin
Tầm quan trọng của UTXO và các vấn đề tiềm năng
Việc triển khai UTXO giúp đơn giản hóa rất nhiều phương pháp kế toán của blockchain. Thay vì phải theo dõi và lưu trữ mọi giao dịch đơn lẻ, chúng ta chỉ cần theo dõi các đồng coin chưa được chi tiêu, còn được gọi là UTXO.
Như đã biết, mỗi coin trong hệ sinh thái Bitcoin chỉ có thể được chi tiêu một lần. Vì vậy, mọi Bitcoin trong ví ngay bây giờ đều chưa được chi tiêu bởi vì:
- Miner đã nhận được nó như một phần thưởng khai thác, hoặc
- Đã được đúc trong một giao dịch. (như ví dụ nêu trên)
Các UTXO rất quan trọng trong việc ngăn chặn tấn công chi tiêu gấp đôi và ngăn bạn tiêu coin không tồn tại. Các node mạng ghi lại và duy trì cơ sở dữ liệu chứa mọi UTXO (tức là coin chưa được sử dụng) có sẵn để chi tiêu. Nếu bạn cố gắng gửi giao dịch bằng coin không có trong cơ sở dữ liệu đó, các node sẽ từ chối nó.
Vấn đề lưu trữ
Các node lưu trữ cơ sở dữ liệu UTXO trong RAM, do đó, điều quan trọng là dữ liệu được đặt ở kích thước có thể quản lý được. Khi nó phát triển, chi phí để chạy một node đầy đủ sẽ tăng lên cùng với nó. Nếu việc chạy một node đầy đủ trở nên quá đắt, mạng Bitcoin sẽ tập trung nhiều hơn vào tay số ít người giàu đủ khả năng để chạy chúng.
Kích thước cơ sở dữ liệu Bitcoin UTXO theo thời gian | Nguồn: Blockchain
Nguy cơ tập trung hóa này là một trong những lý lẽ chính làm tăng kích thước khối Bitcoin. Nhà phát triển Bitcoin Gavin Andresen đã đề cập đến vấn đề này trong bài viết UTXO của mình:
“Một khối 1 megabyte chứa khoảng 100 triệu giao dịch 500 byte mỗi năm. Nếu mỗi một trong số chúng tăng UTXO được đặt thêm 500 byte thì UTXO sẽ tăng 50 gigabyte mỗi năm”.
Kích thước khối 1 megabyte đặt giới hạn trên để cơ sở dữ liệu UTXO có thể phát triển mỗi năm. Anh tiếp tục:
“Cho phép nhiều giao dịch hơn mà không có thay đổi nào khác rất có thể sẽ thúc đẩy tăng trưởng thiết lập UTXO, làm cho nó trở nên đắt hơn, nhanh hơn, để chạy một node xác thực đầy đủ”.
Bài viết của anh thực sự ủng hộ việc tăng kích thước khối. Anh lập luận rằng tác động lên kích thước bộ UTXO không mang lại ảnh hưởng quyết định như những người khác nghĩ. Và xem xét sự phức tạp của các giải pháp mở rộng lớp thứ hai, chúng ta cần triển khai các khối lớn hơn trong thời gian ngắn trước khi các giải pháp đó được đưa ra trong dài hạn.
Các giải pháp
Rất may, có một vài giải pháp cho các vấn đề lưu trữ tiềm năng. Đầu tiên, các node không phải lưu trữ toàn bộ cơ sở dữ liệu UTXO trong RAM. Họ có thể chọn lưu trữ một phần trong ổ đĩa SSD ít tốn kém hơn hoặc đĩa cứng. Mặc dù các loại lưu trữ này dẫn đến thời gian xác thực chậm hơn cho mỗi node, nhưng đó không phải là vấn đề miễn là chúng vẫn thấp hơn thời gian khối trung bình 10 phút.
Ngoài ra, các nhà phát triển Bitcoin đang liên tục cải thiện các cơ chế giao dịch để tối ưu hóa cơ sở dữ liệu UTXO.
Cuối cùng, Segregated Witness (Segwit) và các giải pháp mở rộng tương tự gián tiếp làm chậm sự phát triển của cơ sở dữ liệu UTXO. Tài liệu Bitcoin Core cho biết:
“Segwit cải thiện tình hình ở đây bằng cách tạo dữ liệu chữ ký, không ảnh hưởng đến kích thước bộ UTXO, chi phí thấp hơn 75% so với dữ liệu ảnh hưởng đến kích thước bộ UTXO. Điều này được cho là sẽ khuyến khích người dùng ủng hộ việc sử dụng các giao dịch giảm thiểu tác động đến bộ UTXO để hạn chế phí và khuyến khích nhà phát triển thiết kế hợp đồng thông minh cũng như các tính năng mới theo cách giảm thiểu tác động đối với bộ UTXO”.
Kết luận: Giải pháp thay thế UTXO?
Mặc dù bài viết này sử dụng Bitcoin làm ví dụ, nhưng có rất nhiều loại tiền điện tử khác triển khai UTXO như BCH, LTC, KMD,…
Ngoài ra còn có nhiều loại crypto khác sử dụng các cơ chế kế toán khác. Ví dụ, Ethereum có mô hình giao dịch dựa trên tài khoản. Cơ chế này thường tiết kiệm không gian tốt hơn và cung cấp mã đơn giản hơn để hoạt động; tuy nhiên, bạn mất phần nào sự riêng tư trong giao dịch và gặp phải các vấn đề về khả năng mở rộng tiềm năng.
Nếu bạn hỏi 10 nhà phát triển tiền điện tử về các phương pháp tính toán tốt nhất, bạn có thể sẽ nhận được 10 câu trả lời khác nhau. Chủ đề này hiện vẫn đang được tranh luận sôi nổi trên khắp cộng đồng mà vẫn chưa có giải pháp hoàn hảo nhất. Và, do sự phức tạp, có khả năng sẽ không bao giờ có câu trả lời chính xác.
Dislaimer: Đây là thông tin cung cấp dưới dạng blog cá nhân, không phải thông tin tổng hợp hay lời khuyên đầu tư. Chúng tôi không chịu trách nhiệm về các quyết định đầu tư của bạn.