Máy Oracle如何成为Blockchain与现实世界的数据桥梁

robot
Đang tạo bản tóm tắt

Máy Oracle: Cầu nối giữa Blockchain và thế giới thực

Trong công nghệ Blockchain, Máy Oracle đóng vai trò cơ sở hạ tầng quan trọng. Nó là một hệ thống có khả năng cung cấp thông tin bên ngoài cho các hợp đồng thông minh trên chuỗi, đóng vai trò là phần mềm trung gian giữa Blockchain và thế giới bên ngoài. Chức năng chính của Máy Oracle là cung cấp dữ liệu bên ngoài cần thiết cho các hợp đồng thông minh trên Blockchain.

Lấy một ví dụ, giả sử chúng ta tạo một hợp đồng thông minh trên mạng Ethereum cần lấy dữ liệu khối lượng giao dịch dầu thô trong một ngày nhất định. Do hợp đồng thông minh không thể trực tiếp lấy dữ liệu thực tế ngoài chuỗi này, vì vậy cần thông qua Máy Oracle để thực hiện. Trong trường hợp này, hợp đồng thông minh sẽ ghi dữ liệu khối lượng giao dịch dầu thô cần thiết vào nhật ký sự kiện. Sau đó, ngoài chuỗi sẽ khởi động một quy trình để giám sát và theo dõi nhật ký sự kiện này. Khi phát hiện yêu cầu trong giao dịch, quy trình đó sẽ thông qua việc gửi giao dịch trên chuỗi, gọi các phương thức liên quan của hợp đồng, để tải thông tin khối lượng giao dịch dầu thô của ngày chỉ định lên hợp đồng thông minh.

Máy Oracle详解系列之 Chainlink(上)

Chainlink: Lãnh đạo Máy Oracle Blockchain

Trong lĩnh vực Máy Oracle, Chainlink chắc chắn là dự án có thị phần lớn nhất. Là một giải pháp Máy Oracle phi tập trung, mục tiêu của Chainlink là cung cấp dữ liệu phát sinh từ thế giới thực cho Blockchain một cách an toàn nhất. Trên cơ sở nguyên lý Máy Oracle cơ bản, Chainlink đã xây dựng một hệ sinh thái xung quanh token LINK, tạo thành một vòng lặp tích cực thông qua các động lực kinh tế.

Máy Oracle详解系列之 Chainlink(上)

Việc kích hoạt Máy Oracle Chainlink cần thông qua việc chuyển nhượng token LINK. LINK là token hợp đồng ERC677 dựa trên mạng Ethereum. Chức năng Máy Oracle hoàn thành dựa trên token LINK ERC677 thuộc mô hình yêu cầu/phản hồi.

transferAndCall trong token ERC677

Chuẩn ERC677 là tiêu chuẩn được Chainlink đề xuất để thích ứng với các tình huống dịch vụ Máy Oracle. Nó bổ sung phương thức transferAndCall trên nền tảng ERC20 tiêu chuẩn, kết hợp thanh toán và yêu cầu dịch vụ thành một, đáp ứng nhu cầu trong các tình huống kinh doanh của Máy Oracle.

Khi người dùng sử dụng transferAndCall để chuyển tiền, ngoài việc chuyển tiền ERC20 thông thường, còn sẽ kiểm tra xem địa chỉ nhận có phải là địa chỉ hợp đồng hay không. Nếu có, thì sẽ gọi phương thức onTokenTransfer của địa chỉ đó. Cần lưu ý rằng, trước khi yêu cầu dịch vụ máy Oracle, người dùng nên xác nhận độ tin cậy của máy Oracle đó, vì dịch vụ máy Oracle cần phải thanh toán trước.

Máy Oracle详解系列之 Chainlink(上)

Quy trình yêu cầu oracle trên blockchain

Khi người tiêu dùng Máy Oracle sử dụng phương pháp transferAndCall để thanh toán phí và yêu cầu dịch vụ, phương pháp onTokenTransfer trong hợp đồng Máy Oracle sẽ thực hiện một loạt kiểm tra an toàn trước tiên. Điều này bao gồm việc xác minh việc chuyển tiền có phải là mã thông báo LINK hay không, kiểm tra xem độ dài dữ liệu có vượt quá giới hạn hay không, xác minh xem dữ liệu có chứa bộ chọn chức năng đúng hay không, v.v.

Sau khi kiểm tra an ninh, hợp đồng sẽ tạo ra một requestId duy nhất và đặt thời gian hết hạn cho yêu cầu. Cuối cùng, hợp đồng sẽ phát ra một sự kiện OracleRequest, sự kiện này chứa dữ liệu chi tiết của yêu cầu.

Máy Oracle详解系列之 Chainlink(上)

Cơ chế phản hồi nút ngoài chuỗi

Các nút ngoài chuỗi sau khi nhận được sự kiện OracleRequest, sẽ phân tích thông tin cụ thể của yêu cầu, thông qua API mạng để gọi và lấy dữ liệu cần thiết. Sau đó, nút sẽ gọi phương thức fulfillOracleRequest để gửi dữ liệu lên chuỗi.

Phương pháp này sẽ thực hiện một loạt các xác minh, bao gồm kiểm tra xem người gọi có được ủy quyền hay không, xác minh tính hợp lệ của yêu cầu, v.v. Sau khi xác minh thành công, hợp đồng sẽ ghi lại số lượng token có thể rút và xóa requestId khỏi bản đồ commitments. Cuối cùng, hợp đồng sẽ gọi hàm callback của hợp đồng của người yêu cầu, trả dữ liệu về cho người tiêu dùng.

Máy Oracle详解系列之 Chainlink(上)

Ứng dụng thực tế của Máy Oracle giá

Đối với các nhà phát triển, nếu chỉ cần sử dụng dữ liệu giá của các cặp tiền đã có, có thể trực tiếp sử dụng giao diện Price Feed do Chainlink cung cấp. Mỗi cặp giao dịch đều có một Price Feed riêng ( còn được gọi là Aggregator ), thực chất là một hợp đồng AggregatorProxy.

Các giao diện này thường cung cấp một số phương thức truy vấn sau:

  • decimals(): Trả về số chữ số chính xác của dữ liệu giá
  • description(): Trả về tên cặp giao dịch
  • version():Đánh dấu loại Aggregator mà Proxy trỏ tới
  • getRoundData(_roundId): Lấy dữ liệu giá của vòng cụ thể
  • latestRoundData(): Lấy dữ liệu giá mới nhất

Trong hầu hết các tình huống ứng dụng, hợp đồng có thể chỉ cần đọc giá mới nhất, tức là gọi phương thức latestRoundData(). Tham số answer trả về chính là giá mới nhất.

Cần lưu ý rằng, hầu hết các ứng dụng đọc giá token đều được tính bằng USD. Trong trường hợp này, độ chính xác thường được thống nhất là 8 chữ số, điều này đơn giản hóa vấn đề xử lý độ chính xác giữa các token khác nhau.

Máy Oracle详解系列之 Chainlink(上)

LINK-1.83%
Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • 7
  • Chia sẻ
Bình luận
0/400
nft_widowvip
· 2giờ trước
Máy Oracle tuyệt vời Đây không phải là có thể đi ngang rồi sao!
Xem bản gốcTrả lời0
CountdownToBrokevip
· 2giờ trước
chỉ là người qua đường trên chuỗi mà thôi
Xem bản gốcTrả lời0
BlockchainBouncervip
· 2giờ trước
Gà gà lại đến giải thích cơ chế Máy Oracle rồi!
Xem bản gốcTrả lời0
StakeTillRetirevip
· 2giờ trước
Máy Oracle này thật sự tuyệt vời, hợp đồng thông minh của tôi không thể thiếu nó.
Xem bản gốcTrả lời0
FUD_Whisperervip
· 2giờ trước
Hợp đồng không đủ tiền ăn cơm rồi.
Xem bản gốcTrả lời0
HalfPositionRunnervip
· 2giờ trước
Dữ liệu về việc chiên dầu này dựa vào Máy Oracle để cứu.
Xem bản gốcTrả lời0
ImpermanentPhilosophervip
· 2giờ trước
啧 又 là Máy Oracle老生常谈
Xem bản gốcTrả lời0
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)