Oracles là gì?

Oracles là gì?

Oracle là một trong những nhà cung cấp lớn nhất trên thị trường công nghệ hiện nay. Cái tên Oracle chính là tên viết tắt từ sản phẩm chủ lực của hãng, hệ thống quản lý cơ sở dữ liệu quan hệ (RDBMS) có tên chính thức là Oracle Database. Phần mềm cơ sở dữ liệu thường giữ vị trí trung tâm trong mảng IT của công ty, hỗ trợ nhiều nhiệm vụ khác nhau gồm xử lý giao dịch, business intelligence (BI), và các ứng dụng phân tích.

Oracle trong Blockchain nghĩa là gì ?

Oracle là một hệ thống cung cấp dữ liệu theo thời gian thực cho các blockchain và smart contract.

Nhờ Oracle, blockchain và smart contract (on-chain) có thể tương tác với dữ liệu bên ngoài (off-chain).

Thông tin trên blockchain được chia làm 3 dạng chính:

  • Real World Data: Các thông tin trong thế giới thực.
  • Crypto Market Data: Các thông tin trên CoinMarketCap, CoinGecko như biến động giá, khối lượng giao dịch, thay đổi về Market Cap…
  • Enterprise Services: Các thông tin để phục vụ cho việc vận hành của các tổ chức, doanh nghiệp.

Các thông tin trên sẽ được các Oracle đưa vào smart-contracts và blockchain để khai thác sử dụng. Oracle với chức năng quan trọng của nó đã góp phần giúp cho blockchain và smart-contracts được tăng tính ứng dụng thực tế.

Oracle trong Defi

Là nền tảng tài chính phi tập trung, do đó sự vận hành của DeFi đòi hỏi dữ liệu kịp thời, liên tục và chính xác. Có thể nói, Oracle là nhân tố thúc đẩy sự phát triển và ổn định của DeFi. Trong DeFi, các giải pháp Oracle chủ yếu cung cấp 2 loại dữ liệu là Data Feed và Data Price.

  • Data Feed

Là ứng dụng giúp cung cấp thông tin dành cho các dịch vụ, ứng dụng bên thứ 3.

Dự án cung cấp thông tin cho các bên thứ 3. Các thông tin bao gồm:

       Thông tin về thời tiết.

       Thông tin giá cho Coingecko.

       Bitcoin Block Hash.

  • Data Price

Cung cấp về giá dành cho các dự án DeFi khác. Các dự án DeFi sử dụng giá để áp dụng vào hệ thống của mình, từ đó có thể đưa ra kết quả hay thực hiện các lệnh như lending, borrowing hoặc liquid.

Oracle được sử dụng như thế nào trong DeFi?

Trong khi công dụng chính của các oracle trong DeFi có liên quan đến các thanh lý trong giao thức cho vay, vẫn có một vài cách sử dụng khác để định giá các oracle.

  1. Thanh lý các khoản vay không thế chấp – Các giao thức cho vay (đó là Maker, Compound, Cream và Aave) dựa vào các oracle về giá để xác định khi nào nên thanh lý các khoản vay của người dùng. Nếu tài sản thế chấp của người dùng giảm xuống dưới một ngưỡng nhất định, thì tài khoản sẵn sàng để thanh lý.
  2. Định giá phái sinh – Các nền tảng phái sinh (đó là Synthetix, Perpetual, Hegic) sử dụng oracle để tính toán giá trị của tài sản tiền mã hóa – các quyền chọn, hợp đồng tương lai, tài sản tổng hợp.
  3. Định giá chỉ mục – Các nền tảng chỉ mục (ví dụ: Set) sử dụng các oracle để truy xuất giá của các thành phần chỉ mục.
  4. Các giao thức bảo hiểm – Các giao thức bảo hiểm (ví dụ: Nexus Mutual) sử dụng các oracle để xác minh các yêu cầu bồi thường trước khi chúng được báo cáo lên blockchain và yêu cầu bồi thường được xét duyệt.
  5. Các thị trường dự đoán – Thị trường dự đoán phi tập trung (tức August và Gnosis) dựa vào các oracle để giải quyết thỏa thuận sự kiện ngoài chuỗi

Phân loại Oracle

Có khá nhiều cách phân loại Oracle.

Theo nguồn cấp dữ liệu, Oracle được chia thành On-chain Oracle và Off-chain Oracle. Sự khác biệt cơ bản giữa 2 loại này là nguồn của dữ liệu. Ví dụ: giá BTC/USD từ nguồn của Uniswap thì là On-chain Oracle, giá BTC/USD từ CoinGecko là dữ Off-chain Oracle.

Theo mục đích dự án, Oracle được chia thành Oracle Service Provides (các bên cung cấp dịch vụ Oracle như Chainlink, Band…) và Internal Oracle (là các giải pháp phục vụ cho dự án của chính họ, ví dụ như UMA có oracle riêng để phục vụ cho dự án của mình).

Theo tính phi tập trung, Oracle có Centralized Oracle (ví dụ như Oracle của Compound) và Decentralized Oracle (ví dụ như của MakerDAO).

Tầm quan trọng của Oracle

Tầm quan trọng của Oracle trong blockchain

  • Oracle đưa thông tin vào blockchain, từ đó giải quyết tính khả dụng của thông tin.
  • Giải quyết vấn đề thao túng dữ liệu. Các node Oracle giúp đối chiếu, xác minh và truyền dữ liệu thị trường đã xác thực tới smart contract, từ đó đưa ra kết quả cuối cùng một cách chính xác nhất và chúng ta có thể hoàn toàn tin tưởng tưởng được.
  • Bảo vệ tính minh bạch của thông tin.

Tầm quan trọng của Oracle trong DeFi

  • Nguồn cung cấp dữ liệu cho các hợp đồng thông minh

Các sản phẩm DeFi thường sử dụng các hợp đồng thông minh. Nói cách khác, hợp đồng thông minh cho phép các giao dịch diễn ra tự chủ. Và chỉ khi các điều kiện nhất định được đáp ứng. Hợp đồng thông minh được tạo thành từ các khối mã trên Blockchain và hoạt động trong các ứng dụng phi tập trung, hoặc Dapps, để tiến hành các hoạt động tài chính, theo logic do nhà phát triển thiết lập.

Ví dụ, một nền tảng giao dịch DeFi có thể sử dụng một hợp đồng thông minh để bán cổ phiếu của Coca-Cola bất cứ khi nào giá mỗi cổ phiếu chạm mức 55 đô la và mua thêm bất cứ khi nào giá giảm xuống dưới 50 đô la.

Lưu ý rằng, chúng ta sẽ không đưa ra bất kỳ quyết định nào (dù là mua hay bán) trong quy trình này. Mọi thứ đều được tự động hóa bởi các hợp đồng thông minh. Tuy nhiên, các hợp đồng thông minh cần phải có “dữ liệu có thể xác minh” để mọi thứ hoạt động suôn sẻ. Và “Oracle” là một giao diện truyền dữ liệu từ bất kỳ nguồn nào vào các hợp đồng thông minh để chúng có thể hoạt động.

  • Nâng cao độ tin cậy và chính xác của dữ liệu

Các Oracles có một vai trò quan trọng trong việc đảm bảo độ tin cậy và độ chính xác trong hệ sinh thái DeFi. Nhiều giao thức DeFi khác nhau đã ra mắt các nguồn cung cấp dữ liệu giá cung cấp dữ liệu giá minh bạch cho người dùng. Ví dụ, giao thức thị trường tiền tệ Compound đã ra mắt Oracle giá phi tập trung, Open Price Feed (OPF).

Đây là một “nguồn cấp dữ liệu giá được nâng cấp và không cần cấp quyền cho giao thức Compound”. Cộng đồng có quyền kiểm soát đối với nguồn cấp dữ liệu giá. Ngoài ra, các Oracle giá này hoàn toàn phi tập trung. Do đó, việc gửi và truy cập vào dữ liệu giá có thể được tiến hành. Và họ không cần sử dụng cơ sở hạ tầng của giao thức Compound.

Hơn nữa, với vai trò là cầu nối giữa các giao thức DeFi và các nhà cung cấp dữ liệu đáng tin cậy bên ngoài, độ tin cậy của dữ liệu của các giao thức DeFi cũng được nâng cao.

Ví dụ như Chainlink tuyên bố các Oracle của họ đã truy xuất dữ liệu cho hơn 90% khối lượng các khoản vay phái sinh mặc định giữa các blockchain công khai. Dữ liệu này được thông qua bởi các nhà cung cấp phái sinh DeFi như Synthetix, Nexus Mutual và MCDEX.

Những rủi ro khi sử dụng Oracles trong DeFi

Vấn đề Oracle và tốc độ chậm trong việc truy xuất dữ liệu là hai rủi ro chính khi sử dụng Oracles trên Blockchain. Vấn đề Oracle phát sinh là do sự xung đột về tính tin cậy. Cụ thể là giữa các hệ thống tập trung mà bên thứ ba cung cấp cho các hợp đồng thông minh và hệ thống blockchain phi tập trung.

Thông thường, dữ liệu do Oracles cung cấp thường được đưa trực tiếp vào các hợp đồng thông minh. Và hợp đồng thông minh hoạt động chủ yếu dựa trên dữ liệu này. Vì vậy, rõ ràng là Oracles có “quyền hạn to lớn” trong quá trình hoạt động của các hợp đồng thông minh.

Nói cách khác, nếu oracle bị tấn công, thì hợp đồng thông minh dựa vào nó cũng bị tấn công. Do đó, các ứng dụng và giao thức DeFi thường yêu cầu những dữ liệu đáng tin cậy và ít hoặc thậm chí không có độ trễ. Nói chung, các giải pháp Oracle có thể được phân thành hai loại. Đó là nhanh nhưng không an toàn và an toàn nhưng chậm.

Các Oracle phi tập trung thì thuộc loại đầu tiên. Chúng có tốc độ xử lý nhanh. Và do dễ bị tấn công vật lý nên phần lớn các ứng dụng DeFi chạy bằng Oracles tập trung hoặc bán tập trung. Hầu hết các nhà khai thác phi tập trung sử dụng cơ chế Shelling Coin. Trong đó các nguồn sẽ báo cáo dữ liệu độc lập mà không cần phải phối hợp với các nguồn khác.

Do đó, các nguồn này sẽ báo cáo dữ liệu “đúng” nhất có thể . Cùng lúc đó, họ cũng mong đợi các nguồn khác cũng làm như vậy. Tuy nhiên, cơ chế này lại gặp phải những vấn đề khác. Ví dụ như các bên có thể thông đồng hoặc cho nhau “tín hiệu”, thậm chí là hối lộ.

Hay trong trường hợp tin tặc tấn công nguồn cấp dữ liệu, không có cơ chế bảo vệ nào được thực hiện. Trường hợp này còn được gọi là cuộc tấn công xen giữa (man-in-the-middle attack). Nói một cách dễ hiểu hơn, các tác nhân độc hại giành quyền truy cập vào luồng dữ liệu giữa Oracles và hợp đồng thông minh. Và rồi chúng sẽ sửa đổi hoặc làm sai lệch dữ liệu.

Ngay cả khi chỉ một giá trị không chính xác cũng có thể gây ra hậu quả đáng kể cho các ứng dụng dựa vào Oracle.

Còn Oracles tập trung thì thuộc loại “an toàn nhưng chậm”. So với các Oracle phi tập trung thì Oracles tập trung có khả năng bảo mật cao hơn. Vì chúng hoạt động dựa trên “Lý thuyết trò chơi” (game theory). Các Oracle này sẽ sử dụng phương pháp bỏ phiếu thủ công và “vòng tranh chấp” để “đối phó” với các cuộc tấn công thao túng dữ liệu.

Nhưng những phương pháp này thường tốn rất nhiều thời gian. Và đôi khi nó có thể kéo dài đến hàng tuần. Vì vậy, các ứng dụng DeFi thường không sử dụng chúng. Tuy nhiên, các Oracle tập trung vẫn có rủi ro và khả năng bị hack cao hơn. Điều này là do chúng chỉ có một điểm lỗi duy nhất. Và chính vấn đề này đã làm giảm tính bảo mật của các ứng dụng DeFi.

Những rủi ro khi sử dụng Oracles trong DeFi

Vấn đề Oracle và tốc độ chậm trong việc truy xuất dữ liệu là hai rủi ro chính khi sử dụng Oracles trên Blockchain. Vấn đề Oracle phát sinh là do sự xung đột về tính tin cậy. Cụ thể là giữa các hệ thống tập trung mà bên thứ ba cung cấp cho các hợp đồng thông minh và hệ thống blockchain phi tập trung.

Thông thường, dữ liệu do Oracles cung cấp thường được đưa trực tiếp vào các hợp đồng thông minh. Và hợp đồng thông minh hoạt động chủ yếu dựa trên dữ liệu này. Vì vậy, rõ ràng là Oracles có “quyền hạn to lớn” trong quá trình hoạt động của các hợp đồng thông minh.

Nói cách khác, nếu oracle bị tấn công, thì hợp đồng thông minh dựa vào nó cũng bị tấn công. Do đó, các ứng dụng và giao thức DeFi thường yêu cầu những dữ liệu đáng tin cậy và ít hoặc thậm chí không có độ trễ. Nói chung, các giải pháp Oracle có thể được phân thành hai loại. Đó là nhanh nhưng không an toàn và an toàn nhưng chậm.

Các Oracle phi tập trung thì thuộc loại đầu tiên. Chúng có tốc độ xử lý nhanh. Và do dễ bị tấn công vật lý nên phần lớn các ứng dụng DeFi chạy bằng Oracles tập trung hoặc bán tập trung. Hầu hết các nhà khai thác phi tập trung sử dụng cơ chế Shelling Coin. Trong đó các nguồn sẽ báo cáo dữ liệu độc lập mà không cần phải phối hợp với các nguồn khác.

Do đó, các nguồn này sẽ báo cáo dữ liệu “đúng” nhất có thể . Cùng lúc đó, họ cũng mong đợi các nguồn khác cũng làm như vậy. Tuy nhiên, cơ chế này lại gặp phải những vấn đề khác. Ví dụ như các bên có thể thông đồng hoặc cho nhau “tín hiệu”, thậm chí là hối lộ.

Hay trong trường hợp tin tặc tấn công nguồn cấp dữ liệu, không có cơ chế bảo vệ nào được thực hiện. Trường hợp này còn được gọi là cuộc tấn công xen giữa (man-in-the-middle attack). Nói một cách dễ hiểu hơn, các tác nhân độc hại giành quyền truy cập vào luồng dữ liệu giữa Oracles và hợp đồng thông minh. Và rồi chúng sẽ sửa đổi hoặc làm sai lệch dữ liệu.

Ngay cả khi chỉ một giá trị không chính xác cũng có thể gây ra hậu quả đáng kể cho các ứng dụng dựa vào Oracle.

Còn Oracles tập trung thì thuộc loại “an toàn nhưng chậm”. So với các Oracle phi tập trung thì Oracles tập trung có khả năng bảo mật cao hơn. Vì chúng hoạt động dựa trên “Lý thuyết trò chơi” (game theory). Các Oracle này sẽ sử dụng phương pháp bỏ phiếu thủ công và “vòng tranh chấp” để “đối phó” với các cuộc tấn công thao túng dữ liệu.

Nhưng những phương pháp này thường tốn rất nhiều thời gian. Và đôi khi nó có thể kéo dài đến hàng tuần. Vì vậy, các ứng dụng DeFi thường không sử dụng chúng. Tuy nhiên, các Oracle tập trung vẫn có rủi ro và khả năng bị hack cao hơn. Điều này là do chúng chỉ có một điểm lỗi duy nhất. Và chính vấn đề này đã làm giảm tính bảo mật của các ứng dụng DeFi.

Giải pháp tiềm năng trước những cuộc tấn công vào Oracles

Như đã đề cập ở trên về những lỗi bảo mật của Synthetix và bZx, các Blockchain Oracles rất dễ bị tấn công. Và thường bị các tin tặc nhắm vào sự chênh lệch về giá cả để tấn công. Về mặt lý thuyết, các Oracles có khả năng sẽ bị tấn công cao. Điều này là do chúng nằm ngoài cơ chế đồng thuận của Blockchain. Vì vậy, các cơ chế bảo mật của Blockchain sẽ không áp dụng được lên chúng .

Thế nên, có thể nói rằng, nâng cao tính bảo mật dựa trên nguyên lý “Lý thuyết trò chơi” để giải quyết sự xung đột về độ tin cậy chính là một giải pháp tiềm năng của vấn đề Oracle. Chúng ta có thể xem Bitcoin là một ví dụ để hiểu rõ hơn về giải pháp này.

Để các mạng Blockchain phi tập trung như Bitcoin được an toàn và có khả năng đạt được sự đồng thuận cần thiết, thì Blockchain đó cần duy trì tính kháng lỗi Byzantine (Byzantine Fault Tolerant). Bitcoin giải quyết vấn đề này thông qua mô hình đồng thuận Proof-of-Work. Mô hình hoạt động trong đó các thợ mỏ cần giải quyết các vấn đề toán học khó. Và họ sẽ thực hiện tính toán để giành phần thưởng cho việc khai thác khối tiếp theo.

Bitcoin khuyến khích các thành viên khai thác sử dụng sức mạnh tính toán của họ để bảo mật mạng bằng cách tưởng thưởng cho họ một động lực kinh tế bằng Bitcoin. Phần thưởng bằng Bitcoin hiện nay đang có giá trị là 12,5 BTC.

Điều này rất quan trọng vì các thành viên tham gia sẽ đạt lợi ích tốt nhất của họ khi giá trị của Bitcoin tăng lên và mạng vẫn được duy trì và hợp lệ. Các cấu trúc ưu đãi dựa trên các cơ chế lý thuyết trò chơi ra đời để khuyến khích người chơi (người dùng và người khai thác) trong hệ thống hành động trung thực.

Bitcoin cần phải đảm bảo rằng khi mọi người tham gia vào chuỗi khối của mình, thì họ phải hành xử và tuân theo các quy tắc giao thức. Điều này được thực hiện thông qua việc thiết kế các trò chơi để thưởng hoặc trừng phạt các nút tham gia tùy thuộc vào hành vi của họ.

Những giao thức DeFi phổ biến sử dụng Oracles

  1. Chainlink

Chainlink là một mạng phi tập trung (decentralized) bao gồm nhiều nút oracle khác nhau. Quả thật, Chainlink có rất nhiều mục tiêu trong tương lai liên quan đến không gian phi tập trung. Thế nhưng nó tập trung chủ yếu vào những dữ liệu chất lượng cao với quyền truy cập vào các API trả phí.

Để đảm bảo dữ liệu cung cấp từ API không bị giả mạo hay thao túng, cần có một cơ chế Oracle để chọn ra giá trị thích hợp để chuyển dữ liệu đến cho người dùng từ các oracle node khác nhau (vốn lấy dữ liệu từ nhiều nguồn khác nhau). Synthetic, Aave, bZx và Set là một số trong số ít các dự án DeFi có khối lượng giao dịch lớn và hiện đang sử dụng Chainlink.

  1. MarkerDao

MakerDAO là một trong số các giao thức DeFi cho vay mở phổ biến nhất. Mã token DAI của nó thì được “neo” với đồng đô la Mỹ. Ngoài ra, nó cũng được hỗ trợ bởi các tài sản tiền điện tử. MakerDAO sử dụng mô-đun Oracles để xác định giá tài sản theo thời gian thực.

Mô-đun này bao gồm các địa chỉ trong danh sách của Oracles và một hợp đồng tổng hợp. Các oracles gửi các bản cập nhật giá định kỳ đến một công ty tổng hợp để xác định giá trung bình. Và chúng sẽ được sử dụng làm giá tham chiếu trên nền tảng.

  1. Compound

Compound là một giao thức thị trường tiền tệ cho phép người dùng kiếm lãi và / hoặc vay tài sản dựa trên tài sản thế chấp. Tương tự như MakerDAO, Compound cũng sử dụng Oracles để thu thập thông tin giá. Và sau đó chúng sẽ được chuyển tiếp đến nguồn cấp dữ liệu giá của nó, được quản lý và kiểm soát bởi “quản trị viên”. Đây là người nắm giữ mã token gốc của Compound, COMP.

Giá của những đồng ổn định SAI, DAI, USDT và USDC được tính bằng cách sử dụng Oracle của Maker cho ETH / USD. Nguồn giá cho BAT, REP, ZRX, WBTC là từ các sàn Coinbase Pro, Bittrex, Poloniex và Binance. Giá được cập nhật cho Oracle của Compound khi có sự giao động lớn hơn hoặc bằng 1%. Để giải bài toán rủi ro khi chỉ có một nguồn cung cấp giá, Compound tự phát triển Open Oracle System.

Kết luận

Nhìn chung kể từ năm 2019, khi sự quan tâm cho DeFi ngày càng tăng lên. Điều này đã dấy lên nhu cầu lấy thông tin giá từ bên ngoài blockchain. Và với Oracle, các hợp đồng thông minh được phép “giao tiếp” với các nhà cung cấp dữ liệu bên ngoài. Điều này giúp nâng cao độ tin cậy và tính minh bạch của dữ liệu của các giao thức DeFi. Thế nên, không thể phủ nhận rằng các Oracle đóng vai trò là cầu nối giữa các giao thức DeFi và các nhà cung cấp dữ liệu đáng tin cậy bên ngoài.

icons8-exercise-96