Ví dụ về quy trình lấy/gửi dữ liệu của Node trên Chainlink

    OracleStaking

Chainlinker /

-- lượt xem

Ví dụ mục tiêu: Smart Contract của một dự án DeFi cần giá hiện tại của Bitcoin (BTC) để tính toán lãi suất Lending (cho vay) và Liquidation (thanh lý) tài sản thế chấp.

1. Yêu Cầu Dữ Liệu từ Smart Contract:

  • Smart Contract: Ở đây, chúng ta có một Smart Contract được triển khai trên Ethereum, gọi là ["LoanCalculator"]. Nó cần giá BTC/USD để định giá các tài sản thế chấp.
  • Yêu Cầu Dữ Liệu: ["LoanCalculator"] gửi một yêu cầu đến mạng lưới Chainlink với các thông số sau:
    • Job ID: Một ID công việc đặc biệt để nhận diện yêu cầu.
    • Payment: Số LINK sẽ được trả cho node hoàn thành yêu cầu này, giả sử 1 LINK.
    • Oracle Address: Địa chỉ oracle mà hợp đồng kết nối để gửi yêu cầu.

2. Các Node Lấy Dữ Liệu:

  • Node A (CryptoNode):
    • Nguồn Dữ Liệu: CryptoNode sử dụng API của #Coinbase để lấy giá BTC/USD. Giá hiện tại là $40,000.
    • Quá Trình: Node A kết nối API, lấy giá hiện tại, sau đó xác minh giá này với một nguồn thứ hai như Bitfinex để đảm bảo tính chính xác.
  • Node B (PriceOracle):
    • Nguồn Dữ Liệu: PriceOracle lấy dữ liệu từ Binance. Giá BTC/USD là $40,100.
    • Quá Trình: Node này cũng sử dụng một API của một sàn giao dịch khác như Bybit, OKX để đối chiếu và xác nhận giá.
  • Node C (DataFeed):
    • Nguồn Dữ Liệu: DataFeed sử dụng dữ liệu từ CoinMarketCap, giá BTC/USD là $39,950.
    • Quá Trình: Node này lấy dữ liệu từ một trang tổng hợp giá và kiểm tra với một sàn giao dịch khác.

3. Gửi Dữ Liệu Về Smart Contract:

  • Gửi Dữ Liệu: Node A gửi 40,000,NodeBgi40,000, Node B gửi 40,100, và Node C gửi $39,950 về Smart Contract qua Chainlink.
  • Xác Thực: Smart Contract sử dụng một cơ chế đồng thuận để xác định giá trung bình hoặc trung vị của các giá trị này. Giả sử, giá trung bình được tính là $40,016.67.

4. Nhận Thưởng:

  • Phần Thưởng: Mỗi node đã gửi dữ liệu nhận được phần thưởng là 1 LINK từ hợp đồng "LoanCalculator". Tuy nhiên, trong trường hợp này, giả sử hợp đồng quyết định chia phần thưởng như sau:
    • Node A: 0.33 LINK (vì giá gần với trung bình nhất)
    • Node B: 0.33 LINK
    • Node C: 0.34 LINK (bởi vì giá của nó giúp xác định trung bình chính xác hơn)
  • Quá Trình Thanh Toán: Smart Contract tự động chuyển số LINK này đến địa chỉ ví của mỗi node operator.

Qua ví dụ này, chúng ta thấy rằng các nút trên Chainlink không chỉ lấy dữ liệu từ một nguồn duy nhất mà còn sử dụng nhiều nguồn để tăng độ chính xác. Quá trình này đảm bảo độ tin cậy và tính toàn vẹn của dữ liệu được đưa vào Smart Contract, điều này rất quan trọng đối với các ứng dụng như DeFi, nơi dữ liệu thực tế tác động trực tiếp đến kết quả tài chính.