Máy Oracle giá phân tán: Giải pháp mới nâng cao độ tin cậy dữ liệu Tài sản tiền điện tử

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

Xây dựng và vận hành hệ thống Máy Oracle giá phân tán

Trong dịch vụ Máy Oracle, lỗi điểm đơn là một vấn đề phổ biến. Để giải quyết vấn đề này, một hệ thống Máy Oracle giá phân tán đã ra đời. Lấy ví dụ về dịch vụ giá BTC USD, hệ thống này tích hợp 31 Máy Oracle giá độc lập, cùng nhau cung cấp dịch vụ dữ liệu đáng tin cậy hơn cho người dùng.

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

Thiết kế hợp đồng của hệ thống tổng hợp này khéo léo giải quyết rủi ro có thể phát sinh từ nguồn dữ liệu duy nhất. Bằng cách gọi các phương thức cụ thể trong hợp đồng, có thể xem tất cả các Máy Oracle ngoại tuyến tham gia. Mỗi Máy Oracle ngoại tuyến đều có thể cung cấp dữ liệu giá thông qua các phương thức được chỉ định, nhằm đáp ứng yêu cầu của người dùng trong bộ tổng hợp. Những Máy Oracle này thường là Tài khoản sở hữu bên ngoài (EOA), không chỉ cung cấp dữ liệu cho BTC/USD mà còn có thể phục vụ cho các cặp giá khác như ETH/USD.

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

Hợp đồng trên chuỗi tuân theo quy trình nghiêm ngặt khi xử lý dữ liệu: đầu tiên đọc trạng thái hiện tại và thực hiện một loạt các kiểm tra, sau đó thực hiện các công việc chuẩn bị cần thiết. Tiếp theo, hợp đồng sẽ xác minh từng dữ liệu chữ ký, đảm bảo rằng người ký có quyền thích hợp và ngăn chặn việc ký lặp lại. Cuối cùng, hợp đồng sẽ sắp xếp các giá trị quan sát, chọn giá trị trung vị và đảm bảo rằng giá trị đó nằm trong phạm vi ngưỡng đã thiết lập.

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

Để nâng cao độ tin cậy của dữ liệu, hệ thống còn đưa ra cơ chế xác thực bổ sung. Ví dụ, trong một số trường hợp ứng dụng, giá thu được sẽ được so sánh với dữ liệu từ các nguồn độc lập khác, đảm bảo rằng độ lệch nằm trong phạm vi chấp nhận được.

Ngoài ra, để đơn giản hóa quá trình lấy giá của các loại token khác nhau, các nhà phát triển đã thiết kế hệ thống Feed Registry. Hệ thống này có thể hiểu là một bộ tổng hợp nhiều nguồn dữ liệu giá, người dùng có thể trực tiếp sử dụng nó để đọc dữ liệu giá của các loại token khác nhau mà không cần thiết lập riêng từng nguồn dữ liệu giá.

Máy Oracle chi tiết chuỗi liên kết (phần 2)

Trong thực tế, việc tạo ra dữ liệu giá trải qua nhiều lớp tổng hợp. Đầu tiên là tổng hợp ở cấp độ nguồn dữ liệu, thu thập dữ liệu giá gốc từ các nền tảng giao dịch lớn. Sau đó là tổng hợp ở cấp độ nhà điều hành nút, mỗi nhà điều hành lấy dữ liệu từ nhiều nhà cung cấp dịch vụ tổng hợp dữ liệu độc lập và xử lý. Cuối cùng là tổng hợp ở cấp độ toàn bộ mạng Máy Oracle, thường sử dụng phương pháp trung vị, tính toán giá cuối cùng sau khi nhận đủ phản hồi từ các nút.

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

Cần lưu ý rằng không phải lúc nào kết quả tính toán cũng được cập nhật lên chuỗi. Hệ thống đã thiết lập hai tham số kích hoạt là ngưỡng sai lệch và ngưỡng nhịp tim, chỉ khi thỏa mãn một trong hai điều kiện thì mới tiến hành cập nhật. Cơ chế này mặc dù đảm bảo tính ổn định của dữ liệu, nhưng cũng dẫn đến tốc độ cập nhật giá chậm, có thể từ vài phút đến 24 giờ. Do đó, hệ thống Máy Oracle này phù hợp hơn với các trường hợp ứng dụng không yêu cầu cao về tính thời điểm của giá.

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

LINK-1.71%
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
  • 3
  • Chia sẻ
Bình luận
0/400
TokenGuruvip
· 14giờ trước
Các dự án cũ đều không hoạt động được nữa mà còn chơi bẫy này.
Xem bản gốcTrả lời0
BearMarketSurvivorvip
· 14giờ trước
Chỉ một số trung vị thì làm sao?
Xem bản gốcTrả lời0
MetaverseLandlordvip
· 14giờ trước
Độ chính xác giá cả rất quan trọng!
Xem bản gốcTrả lời0
  • Ghim
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)