Giới thiệu về Phát Triển Token, NFT và DeFi trên Bitcoin
Quá trình phát triển token, NFT và DeFi trên Bitcoin thực sự phức tạp hơn nhiều so với những gì bề mặt cho thấy. Trái ngược với Ethereum Virtual Machine (EVM) và các nền tảng hợp đồng thông minh khác, nơi các hợp đồng thông minh có tính Turing hoàn thiện, cho phép các tính năng hoặc tùy chọn mới được thêm vào dễ dàng thông qua việc triển khai hợp đồng tùy chỉnh, các nhà phát triển trên Bitcoin phải cẩn thận trong việc đổi mới mà không gây ra hard fork. Họ chỉ có thể hoạt động trong các giới hạn của những chức năng giao thức hiện có.
Bitcoin, với giá trị độc đáo của nó, nhờ vào việc tuân thủ “tính nguyên bản”, đã trải qua rất ít thay đổi theo thời gian. Mặc dù vậy, Bitcoin chính là blockchain đầu tiên đạt được sự chấp nhận rộng rãi, rất nhiều công nghệ phát triển sau này trên các blockchain linh hoạt hơn đều đã có những hạt giống đầu tiên từ Bitcoin. Thực tế, NFT lần đầu tiên xuất hiện trên Bitcoin dưới dạng Colored Coins; khái niệm State Channels có thiết kế khá tương đồng với kiến trúc L1-L2 hiện nay; và Atomic Swaps đã tạo tiền đề cho các cầu nối chuỗi chéo hiện đại. Một số phát triển này đã được đề cập trong bài viết trước đó của chúng tôi: “Bắt Đầu Từ Bitcoin: Nguồn Gốc Thực Sự của DeFi”.
Khám Phá Lý Thuyết Chức Năng Bitcoin
Khám Phá Lý Thuyết Chức Năng Bitcoin: Liệu khả năng của Bitcoin có đủ để hỗ trợ một hệ sinh thái phức tạp? Khi Bitcoin ra đời vào năm 2009, nó đã có một ngôn ngữ lập trình tích hợp cho phép không chỉ thực hiện các giao dịch đơn giản mà còn hỗ trợ các hoạt động phức tạp hơn như multi-sig và time-lock ngay từ đầu. Satoshi Nakamoto thậm chí đã mô tả rằng các giao dịch chưa được xác nhận sử dụng nLockTime, với số thứ tự có thể cập nhật nhiều lần giữa hai bên cho các giao dịch có tần suất cao, và chỉ trạng thái cuối cùng sẽ được ghi vào chuỗi.
Bitcoin Script là một cơ chế rất thú vị: mặt khác, nó không hoàn thiện Turing, điều này có thể hạn chế tính năng của nó; nhưng mặt khác, nó vẫn rất đơn giản và an toàn. Khi xây dựng bất kỳ chức năng phức tạp nào trên Bitcoin, các nhà phát triển buộc phải thiết kế chúng trong khuôn khổ mà Script cung cấp. Script chứa một số lượng lớn các lệnh (Opcode) để lập trình các hành động khác nhau, cuối cùng sẽ được ghi vào dữ liệu giao dịch. Bitcoin Script là ngôn ngữ kịch bản mà Bitcoin sử dụng để xác định các điều kiện chi tiêu coin. Bạn có thể suy nghĩ về Script như một công thức – một bộ bước để nướng một chiếc bánh. Opcode là những mảnh ghép cơ bản của ngôn ngữ này – chúng là hướng dẫn mà các lập trình viên sử dụng khi viết kịch bản, chẳng hạn như “khuấy” và “nấu nóng”.
Để hiểu rõ hơn về chức năng của Script, hãy cùng điểm qua những loại script phổ biến nhất: một nghiên cứu của NCC Group đã tổng hợp 156 mẫu script khác nhau và thực hiện phân tích chi tiết các cấu trúc script này. Vậy liệu chúng ta có thể thử sử dụng Script để tổ chức một cơ chế giống như DeFi trên Bitcoin không? Hãy tiếp tục khám phá bước tiếp theo.
Cơ chế cho vay
Cơ chế cho vay: Như đã đề cập trước đó, opcodes có thể được kết hợp để xây dựng một chuỗi nhỏ các hướng dẫn, từ đó đạt được các hành vi phức tạp hơn. Ví dụ, các nhà phát triển có thể xây dựng các scripts phức tạp với chức năng hợp đồng cho vay bằng cách kết hợp các opcode. Điều này có thể thực hiện thông qua việc kết hợp các khóa thời gian và chữ ký đa: các công cụ này có thể tạo ra một “hợp đồng ký quỹ song phương có thời hạn.” Ví dụ: giả sử Alice cung cấp BTC làm tài sản thế chấp, và Bob cho cô ấy vay stablecoins. Họ hy vọng thiết lập các quy tắc qua hợp đồng: nếu Alice không trả nợ đúng hạn, Bob sẽ nhận BTC; nếu cô ấy trả nợ đúng hạn, BTC sẽ được mở khóa và trả lại cho Alice. Để thực hiện điều này, họ có thể sử dụng một đầu ra chữ ký 2 trong 2 (cả Alice và Bob cần ký để sử dụng quỹ). Họ có thể thiết lập logic của script: nếu khoản vay chưa được trả sau khi đạt đến một chiều cao khối nhất định, chỉ Bob mới có thể sử dụng quỹ một mình.
Tuy nhiên, vẫn có một khó khăn lớn: Bitcoin tự bản thân không thể tự động tính toán lãi suất, theo dõi tỷ lệ thế chấp, hoặc thực thi thanh lý. Mọi khoản thanh toán lãi phải được thực hiện ngoài chuỗi hoặc với sự giúp đỡ của các giao dịch đã ký trước, điều này khá phức tạp về mặt thực tiễn. Nếu giá BTC giảm trong thời gian cho vay, kịch bản Bitcoin tự bản thân không thể nhận biết được và không thể tự động kích hoạt thanh lý. Để đạt được chức năng này, một oracle hoặc giao thức ngoài chuỗi phải được sử dụng. Nếu không có oracle, hợp đồng chỉ có thể đưa ra phán đoán dựa vào thời gian hết hạn cuối cùng.
Tính năng AMM
Tính năng AMM: Như đã đề cập, cơ chế cho vay và staking có thể lý thuyết được thực hiện qua Bitcoin Script, nhưng thực tế lại kém hiệu quả hơn. Tuy nhiên, chúng ta vẫn có thể khám phá xem có thể xây dựng các cơ chế phức tạp giống như các nhà tạo lập thị trường tự động (AMM) trên Bitcoin hay không. Bitcoin Script chứa các opcode toán học như OP_ADD, OP_SUB và OP_MUL (mặc dù một số đã bị vô hiệu hóa), cũng như các opcode so sánh như OP_LESSTHAN. Về lý thuyết, những chức năng này có thể được sử dụng để triển khai logic định giá. Tuy nhiên, không thể điều chỉnh giá một cách động sau mỗi giao dịch là một điều hạn chế lớn. Nguyên nhân là việc Bitcoin sử dụng mô hình UTXO, và mỗi giao dịch tạo ra một UTXO và script mới, do đó mỗi trạng thái có thể phải được tính toán trước, hoặc một hợp đồng phải được triển khai…