Taproot là một bản nâng cấp được đề xuất cho Bitcoin sẽ mang lại một số tính năng và lợi ích mới cho người dùng Bitcoin.
Nâng cấp Taproot thực sự bao gồm ba đề xuất cải tiến Bitcoin (BIP) xác định ba nâng cấp riêng biệt cho giao thức Bitcoin bao gồm: Schnorr Signatures, Taproot và Tapscript. Tuy nhiên, ba nâng cấp này được gọi chung là nâng cấp Taproot, các BIP 340, 341 và 342 cũng được gọi chung là BIP Taproot. Ba nâng cấp này cùng nhau cải tiến mạng lưới Bitcoin giúp hoạt động hiệu quả, linh hoạt và nâng cao khả năng bảo mật.
Để hiểu rõ hơn về cấu trúc chúng ta cùng đi tìm hiểu về các đề xuất cải tiến (BIP) có trong bản cập nhật này.
BIP 340: Schnorr Signatures #
Đề xuất cải tiến BIP 340 giới thiệu tính năng Schnorr Signatures. Tính năng này sẽ mang lại một số lợi ích cho người dùng Bitcoin, bao gồm nâng cấp quyền riêng tư, phí giao dịch thấp hơn và nhiều ký tự linh hoạt hơn.
BIP 340 chỉ định cách mã hóa các public key và Schnorr Signatures để sử dụng trong mạng lưới Bitcoin. Public key được sử dụng cho Schnorr Signatures sẽ dài 32 byte so với public key của ECDSA dài 33 byte. Ngoài ra Schnorr Signatures dài 65 byte so với ECDSA Signatures có độ dài từ 71-72 byte, bao gồm cả sighash. Đề xuất này sẽ giúp tiết kiệm dung lượng hơn nữa cho các block và khiến phí giao dịch rẻ hơn sau khi cập nhật thành công.
BIP 341: Taproot #
BIP 340 xác định đặc điểm kỹ thuật để tạo và mã hóa Schnorr Signatures và Public key thì BIP 341 sẽ xác định cách mà giao thức của Bitcoin sẽ tích hợp Schnorr Signatures như thế nào. Cụ thể, Bitcoin Script phải được cập nhật để đánh giá Schnorr Signatures. Taproot cũng tích hợp Merkelized Alternative Script Trees (MAST) để cho phép người dùng khóa đầu ra cho nhiều tập lệnh.
BIP 342: Tapscript #
Tapscript cho phép các node Bitcoin tạo và xác thực đầu ra Pay-to-Taproot (P2TR) bằng cách nâng cấp mã opcodes mà Bitcoin sử dụng để đánh giá các scripts.
Tapscript sẽ thay đổi cách đánh giá Signatures để tận dụng những cải tiến hiệu quả của Schnorr Signatures. Ngoài ra, BIP 342 cũng bổ sung một số Opcode mới, được gọi là OP_SUCCESS, cho phép Tapscript được nâng cấp linh hoạt trong tương lai.
Ghi chú: Opcode là một loại hướng dẫn ngôn ngữ máy. Nó cung cấp cho máy tính các hướng dẫn cho biết phải làm gì với dữ liệu được cung cấp
Pay-to-Taproot (P2TR) #
Cập nhật Taproot cũng giới thiệu một loại tập lệnh mới mang tên Pay-to-Taproot (P2TR). Cập nhật này sẽ cho phép người dùng thanh toán cho Public key Schnorr hoặc mã Merkle Root của nhiều tập lệnh khác. Khi sử dụng loại tập lệnh mới này, người dùng có thể tạo UTXO có thể được mở khóa và sử dụng bởi chủ sở hữu private key hoặc bất kỳ ai có thể đáp ứng các yêu cầu của bất kỳ tập lệnh nào trong Merkle Root.
Key Aggregation #
Tính năng Aggregation của Schnorr sẽ cho phép thực hiện chức năng linh hoạt này. Khi bitcoin được gửi đến đầu ra P2TR, nó sẽ bị khóa vào một public key duy nhất được gọi là Q. Tuy nhiên, public key Q này thực sự là tập hợp của public key P và public key này được hình thành từ Merkle Root của nhiều loại tập lệnh khác. Bất kỳ tập lệnh thay thế nào trong Merkle Root đều có thể được sử dụng để thanh toán đầu ra.
Thiết kế này sẽ cho phép người dùng lựa chọn giữa các tập lệnh phức tạp tùy ý cũng như chức năng trả tiền cho public key đơn giản tại thời điểm gửi thay vì tại thời điểm nhận. Nó cũng làm cho tất cả các đầu ra Taproot trông giống nhau. Bởi vì đầu ra multisig, đầu ra sigle sig và các hợp đồng thông minh phức tạp khác đều trông giống nhau trên mạng lưới blockchain, nhiều phân tích chuỗi sẽ không sử dụng được do đó sẽ nâng cao khả năng bảo vệ quyền riêng tư cho tất cả người dùng Taproot.
Key Aggregation #
Bạn xem lại BIP 342 mình đã tóm lược ở phía trên.
Các lợi ích của Taproot #
Việc nâng cấp Taproot sẽ mang lại nhiều lợi ích cho người dùng Bitcoin. Việc bổ sung tính năng Schnorr Signatures mang lại những lợi ích đáng kể về quyền riêng tư và bảo mật, ngoài ra các đề xuất có trong bản cập nhật này bao gồm Taproot và Tapscript cũng mang lại những lợi ích riêng biệt cho mạng lưới bitcoin.
Tiết kiệm không gian #
Hầu hết các đầu ra Taproot (P2TR) tiêu thụ ít không gian hơn trên blockchain so với các đầu ra P2PKH thông thường nhưng sẽ lớn hơn một chút so với đầu ra P2WPKH. Nguyên nhân là do đầu ra P2TR sẽ khóa bitcoin trực tiếp vào public key thay vì các hash của public key. Điều này làm cho việc luân chuyển dữ liệu tới đầu ra sau bản cập nhật Taproot đắt hơn một chút vì public key chiếm nhiều dung lượng hơn. Tuy nhiên, phí giao dịch sau cập nhật Taproot rẻ hơn đáng kể vì public key được tích hợp bên trong scriptPubKey và không cần phải đưa vào Script Witness.
Taproot cũng xác định sơ đồ mã hóa cho các public key và Schnorr Signatures làm cho chúng ngắn hơn so với chuẩn ECDSA giúp tiết kiệm thêm chi phí.
Nâng cấp quyền riêng tư #
Quyền riêng tư là một tính năng được đánh giá cao trong bản cập nhật Taproot này. Việc giới thiệu Schnoor Signatures và Key aggregation sẽ giúp các hợp đồng nhiều chữ ký trông không còn khác với các hợp đồng có chữ ký đơn lẻ do đó cung cấp thêm quyền riêng tư cho tất cả người dùng.
Taproot cũng giới thiệu những lợi ích đáng kể về quyền riêng tư thông qua việc tích hợp MAST. Taproot cho phép khóa bitcoin với nhiều tập lệnh cùng một lúc. Tuy nhiên, khi gửi bitcoin từ sau cập nhật Taproot, người gửi sẽ không cần tiết lộ mọi tập lệnh có thể đã có mã mở khóa, thay vào đó họ chỉ cần tập lệnh thực sự đã sử dụng. Hầu như người dùng Taproot có thể sẽ dùng pay-to-public-key, cho phép họ giữ bất kỳ tùy chọn dự phòng nào mà họ có thể đã lên kế hoạch riêng tư.
Nâng cấp bảo mật #
Về mặt lý thuyết, Schnorr Signatures được coi là an toàn hơn ECDSA Signatures vì Schnorr Signatures được bảo mật bằng cách sử dụng ít giả thuyết hơn. Giống như Elliptic Curve Cryptography (ECC) (một kỹ thuật dựa trên khóa để mã hóa dữ liệu), cả ECDSA và Schnorr đều dựa vào giả thuyết rằng Bài toán Logarit rời rạc là khó. Tuy nhiên, ECDSA dựa vào các giả thuyết bổ sung để đảm bảo tính bảo mật. Tuy nhiên, không có ví dụ nào về việc ECDSA bị xâm nhập một cách có hệ thống trong quá trình tồn tại của Bitcoin.
Schnorr Signatures cũng loại bỏ bất kỳ tính linh hoạt của giao dịch có thể có trong ECDSA Signatures. Trong khi tính linh hoạt của giao dịch đã được giải quyết bằng cách tung ra cập nhật SegWit vào năm 2017, tính linh hoạt của chữ ký vẫn tồn tại như một tính năng của ECDSA.