Tìm hiểu về Blockchain Oracle
Blockchain Oracle là gì?
Oracles cung cấp một cách để hệ sinh thái Web 3.0 phi tập trung truy cập các nguồn dữ liệu hiện có, hệ thống kế thừa và các tính toán nâng cao. Mạng lưới tiên tri phi tập trung (Decentralized oracle networks – DONs) cho phép tạo ra các hợp đồng thông minh kết hợp, trong đó mã trên chuỗi và cơ sở hạ tầng ngoài chuỗi được kết hợp để hỗ trợ các ứng dụng phi tập trung nâng cao (decentralized applications – dApp) phản ứng với các sự kiện trong thế giới thực và tương tác với các hệ thống truyền thống.
Ví dụ: Quang và Tuấn muốn đặt cược vào kết quả của một trận bóng đá. Quang cược 100 đô la cho đội Real Madrid và Tuấn đặt 100 đô la cho đội Barcelona, với tổng số tiền 200 đô la được ký quỹ bằng một hợp đồng thông minh. Khi trận bóng kết thúc, làm thế nào hợp đồng thông minh biết nên giải phóng tiền cho Quang hay Tuấn? Câu trả lời là nó yêu cầu một cơ chế tiên tri để tìm nạp các kết quả khớp chính xác ngoài chuỗi và phân phối nó đến chuỗi khối một cách an toàn và đáng tin cậy.
Vấn đề oracle blockchain vạch ra một hạn chế cơ bản của các hợp đồng thông minh — vốn dĩ chúng không thể tương tác với dữ liệu và hệ thống tồn tại bên ngoài môi trường blockchain gốc của chúng. Các tài nguyên bên ngoài chuỗi khối được coi là “ngoài chuỗi (off-chain)”, trong khi dữ liệu đã được lưu trữ trên chuỗi khối được coi là trên chuỗi (on-chain). Bằng cách cố tình tách biệt khỏi các hệ thống bên ngoài, các blockchain có được các đặc tính có giá trị nhất của chúng như sự đồng thuận mạnh mẽ về tính hợp lệ của các giao dịch của người dùng, ngăn chặn các cuộc tấn công chi tiêu kép và giảm thiểu thời gian chết của mạng. Tương tác an toàn với các hệ thống ngoài chuỗi (off-chain) từ blockchain yêu cầu một phần cơ sở hạ tầng bổ sung được gọi là “tiên tri (oracle)” để kết nối hai môi trường.
Giải quyết vấn đề của Oracle là điều quan trọng hàng đầu vì phần lớn các trường hợp sử dụng hợp đồng thông minh như DeFi yêu cầu kiến thức về dữ liệu trong thế giới thực và các sự kiện xảy ra ngoài chuỗi. Do đó, oracles mở rộng các loại thỏa thuận kỹ thuật số mà blockchain có thể hỗ trợ bằng cách cung cấp một cổng chung cho các tài nguyên ngoài chuỗi trong khi vẫn duy trì các thuộc tính bảo mật có giá trị của blockchain. Các ngành công nghiệp chính được hưởng lợi từ việc kết hợp oracles và hợp đồng thông minh bao gồm giá tài sản cho tài chính, thông tin thời tiết cho bảo hiểm, tính ngẫu nhiên cho trò chơi, cảm biến IoT cho chuỗi cung ứng, xác minh ID cho chính phủ và hơn thế nữa.
Bởi vì dữ liệu do oracles cung cấp cho các blockchains trực tiếp xác định kết quả của các hợp đồng thông minh, điều tối quan trọng là cơ chế oracle phải chính xác nếu thỏa thuận được thực thi chính xác như mong đợi.
Phân loại Blockchain Oracle
Với phạm vi rộng lớn của các nguồn tài nguyên ngoài chuỗi, blockchain oracles có nhiều hình dạng và kích cỡ. Các hợp đồng thông minh kết hợp không chỉ cần nhiều loại dữ liệu bên ngoài và tính toán khác nhau, mà còn yêu cầu nhiều cơ chế phân phối và các mức độ bảo mật khác nhau.
Input Oracle:
Đay là loại Oracle được công nhận rộng rãi nhất hiện nay, loại này lấy dữ liệu từ thế giới thực (ngoài chuỗi “off-chain”) và đưa nó lên mạng blockchain để sử dụng hợp đồng thông minh. Các loại phép toán này được sử dụng để cung cấp cho Nguồn cấp dữ liệu giá của Chainlink, cung cấp cho các hợp đồng thông minh DeFi quyền truy cập trực tuyến vào dữ liệu thị trường tài chính.
Output Oracle:
Ngược lại với “Input Oracle” là “Output Oracle”, cho phép các hợp đồng thông minh gửi lệnh đến các hệ thống ngoài chuỗi (off-chain) để kích hoạt chúng thực hiện các hành động nhất định. Điều này có thể bao gồm thông báo cho mạng ngân hàng để thực hiện thanh toán, yêu cầu nhà cung cấp dịch vụ lưu trữ lưu trữ dữ liệu được cung cấp hoặc ping hệ thống IoT để mở khóa cửa xe sau khi thanh toán cho thuê theo chuỗi được thực hiện.
Cross-Chain Oracles
Một loại Oracles khác là “Cross-Chain Oracles” có thể đọc và ghi thông tin giữa các blockchains khác nhau. Các Cross-chain oracles cho phép khả năng tương tác để di chuyển cả dữ liệu và tài sản giữa các blockchain, chẳng hạn như sử dụng dữ liệu trên một chuỗi khối (blockchain) để kích hoạt một hành động trên một chuỗi khác hoặc kết nối các tài sản chéo để chúng có thể được sử dụng bên ngoài chuỗi khối gốc mà chúng đã được phát hành.
Compute-Enabled Oracles
Một loại Oracles mới đang được các ứng dụng hợp đồng thông minh sử dụng rộng rãi hơn là “Compute-Enabled Oracles”, sử dụng tính toán ngoài chuỗi an toàn để cung cấp các dịch vụ phi tập trung không thể thực hiện trên chuỗi do các hạn chế về kỹ thuật, pháp lý hoặc tài chính. Điều này có thể bao gồm việc sử dụng Keepers (Ứng dụng cho phép tự động hóa các hợp đồng thông minh của bạn) để tự động hóa việc chạy các hợp đồng thông minh khi các sự kiện được xác định trước diễn ra, tính toán các Zero-Knowledge Proof (ZKP) để tạo quyền riêng tư cho dữ liệu hoặc chạy một chức năng ngẫu nhiên có thể xác minh để cung cấp nguồn ngẫu nhiên chống giả mạo và công bằng cho hợp đồng thông minh.
Kết luận
Oracles mở rộng khả năng của mạng blockchain bằng cách cung cấp quyền truy cập vào tất cả các tài nguyên bên ngoài cần thiết để khai thác các trường hợp sử dụng hợp đồng thông minh kết hợp hữu ích và nâng cao ngoài mã hóa đơn giản. Tương tự như cách Internet mang lại sự thay đổi đáng kể trong cách trao đổi thông tin, các hợp đồng thông minh kết hợp do oracle cung cấp đang xác định lại cách xã hội trao đổi giá trị và thực thi các thỏa thuận hợp đồng.
Thách thức chính với oracles là mọi người cần phải tin tưởng vào các nguồn thông tin bên ngoài này, cho dù chúng đến từ trang web hay cảm biến. Vì oracles là các dịch vụ của bên thứ ba không phải là một phần của cơ chế đồng thuận blockchain, chúng không phải tuân theo các cơ chế bảo mật cơ bản mà cơ sở hạ tầng công cộng này cung cấp. Người ta có thể tái tạo các cuộc tấn công mạng “man-in-the-middle” giữa hợp đồng và oracles.