Để giải quyết vấn đề lỗi điểm đơn, một dự án Máy Oracle nổi tiếng đã áp dụng thiết kế Máy Oracle giá phân tán. Lấy dịch vụ cung cấp giá BTC/USD làm ví dụ, hệ thống đã tổng hợp 31 Máy Oracle giá độc lập để cung cấp dịch vụ cho người dùng, từ đó nâng cao đáng kể độ tin cậy và độ chính xác.
Thiết kế của bộ tổng hợp này cho phép nhiều Máy Oracle ngoài chuỗi cung cấp dữ liệu giá bằng cách gọi các phương thức cụ thể, nhằm đáp ứng yêu cầu của người dùng. Những Máy Oracle ngoài chuỗi này thường là các tài khoản EOA độc lập, chúng không chỉ có thể cung cấp dữ liệu cho BTC/USD mà còn có thể cung cấp thông tin giá cho các cặp tiền tệ khác như ETH/USD.
Tại cấp độ hợp đồng trên chuỗi, hệ thống đã triển khai cơ chế xác thực nghiêm ngặt. Đầu tiên, nó sẽ đọc trạng thái hợp đồng hiện tại và thực hiện một loạt các kiểm tra, sau đó tiến hành các công việc chuẩn bị cần thiết. Tiếp theo, hệ thống sẽ kiểm tra chữ ký của từng dữ liệu chữ ký, đảm bảo tính xác thực và toàn vẹn của dữ liệu. Cuối cùng, nó cũng sẽ kiểm tra thứ tự của các giá trị quan sát và chọn giá trị trung bình làm giá cuối cùng, đồng thời đảm bảo rằng giá này không vượt quá ngưỡng đã được thiết lập.
Để nâng cao độ tin cậy của dữ liệu, một số ứng dụng còn kết hợp hệ thống Máy Oracle này với các nguồn giá khác để xác minh chéo. Ví dụ, bằng cách so sánh giá mà các Máy Oracle khác nhau đưa ra, đảm bảo rằng sự chênh lệch nằm trong phạm vi chấp nhận được.
Sự tiện lợi của Trung tâm đăng ký Máy Oracle
Để đơn giản hóa quá trình tra cứu giá của nhiều loại token, Trung tâm đăng ký Máy Oracle đã ra đời. Cơ chế này có thể hiểu là một bộ tổng hợp của nhiều nguồn cung cấp giá, giảm đáng kể độ phức tạp thao tác của người dùng. Thông qua Trung tâm đăng ký Máy Oracle, người dùng có thể trực tiếp đọc dữ liệu giá của các loại token khác nhau mà không cần phải thiết lập nguồn cung cấp giá riêng cho từng loại token.
Cơ chế tổng hợp giá nhiều cấp
Giá dữ liệu của hệ thống Máy Oracle thường trải qua nhiều cấp độ xử lý tổng hợp, chủ yếu bao gồm tổng hợp nguồn dữ liệu, tổng hợp nhà điều hành nút và tổng hợp mạng Máy Oracle.
Dữ liệu giá cơ bản nhất đến từ các sàn giao dịch tập trung và phi tập trung lớn. Một số nhà cung cấp dữ liệu chuyên nghiệp sẽ thu thập và tích hợp những dữ liệu gốc này, cân nhắc các yếu tố như khối lượng giao dịch, tính thanh khoản, v.v. để thực hiện tính toán trọng số, hình thành một lớp tổng hợp nguồn dữ liệu đầu tiên.
Lớp thứ hai được hoàn thành bởi các nhà điều hành nút Máy Oracle. Họ nhận thông tin giá từ nhiều nhà cung cấp dịch vụ tổng hợp dữ liệu độc lập, thông qua việc loại bỏ các giá trị bất thường bằng cách lấy trị trung bình, nâng cao độ tin cậy của dữ liệu.
Lớp cuối cùng là sự tổng hợp của toàn bộ mạng Máy Oracle. Cách phổ biến là sau khi nhận được một số lượng phản hồi từ các nút đã được thiết lập trước, sẽ lấy giá trị trung vị của dữ liệu giá mà các nút này cung cấp làm giá cuối cùng. Cần lưu ý rằng không phải mọi kết quả tổng hợp đều được cập nhật ngay lập tức lên chuỗi, mà cần phải đáp ứng các điều kiện kích hoạt cụ thể, chẳng hạn như ngưỡng sai lệch hoặc ngưỡng nhịp tim.
Ứng dụng và giới hạn
Hệ thống Máy Oracle này dễ dàng kết nối và có độ an toàn cao, nhưng do cơ chế cập nhật giá của nó có một độ trễ nhất định, tần suất cập nhật có thể từ vài phút đến 24 giờ. Do đó, nó phù hợp hơn với các trường hợp ứng dụng không yêu cầu tính thời gian thực về giá. Điều này cũng phản ánh những hạn chế của hệ thống, có thể không đáp ứng được nhu cầu của tất cả các loại ứng dụng.
Khi lựa chọn giải pháp Máy Oracle, các nhà phát triển cần cân nhắc những lợi ích và hạn chế của nó, dựa trên nhu cầu cụ thể của ứng dụng để đưa ra lựa chọn phù hợp.
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.
Máy Oracle phân tán làm thế nào để nâng cao độ tin cậy của dữ liệu giá
Lợi ích và thực hiện của Máy Oracle giá phân tán
Để giải quyết vấn đề lỗi điểm đơn, một dự án Máy Oracle nổi tiếng đã áp dụng thiết kế Máy Oracle giá phân tán. Lấy dịch vụ cung cấp giá BTC/USD làm ví dụ, hệ thống đã tổng hợp 31 Máy Oracle giá độc lập để cung cấp dịch vụ cho người dùng, từ đó nâng cao đáng kể độ tin cậy và độ chính xác.
Thiết kế của bộ tổng hợp này cho phép nhiều Máy Oracle ngoài chuỗi cung cấp dữ liệu giá bằng cách gọi các phương thức cụ thể, nhằm đáp ứng yêu cầu của người dùng. Những Máy Oracle ngoài chuỗi này thường là các tài khoản EOA độc lập, chúng không chỉ có thể cung cấp dữ liệu cho BTC/USD mà còn có thể cung cấp thông tin giá cho các cặp tiền tệ khác như ETH/USD.
Tại cấp độ hợp đồng trên chuỗi, hệ thống đã triển khai cơ chế xác thực nghiêm ngặt. Đầu tiên, nó sẽ đọc trạng thái hợp đồng hiện tại và thực hiện một loạt các kiểm tra, sau đó tiến hành các công việc chuẩn bị cần thiết. Tiếp theo, hệ thống sẽ kiểm tra chữ ký của từng dữ liệu chữ ký, đảm bảo tính xác thực và toàn vẹn của dữ liệu. Cuối cùng, nó cũng sẽ kiểm tra thứ tự của các giá trị quan sát và chọn giá trị trung bình làm giá cuối cùng, đồng thời đảm bảo rằng giá này không vượt quá ngưỡng đã được thiết lập.
Để nâng cao độ tin cậy của dữ liệu, một số ứng dụng còn kết hợp hệ thống Máy Oracle này với các nguồn giá khác để xác minh chéo. Ví dụ, bằng cách so sánh giá mà các Máy Oracle khác nhau đưa ra, đảm bảo rằng sự chênh lệch nằm trong phạm vi chấp nhận được.
Sự tiện lợi của Trung tâm đăng ký Máy Oracle
Để đơn giản hóa quá trình tra cứu giá của nhiều loại token, Trung tâm đăng ký Máy Oracle đã ra đời. Cơ chế này có thể hiểu là một bộ tổng hợp của nhiều nguồn cung cấp giá, giảm đáng kể độ phức tạp thao tác của người dùng. Thông qua Trung tâm đăng ký Máy Oracle, người dùng có thể trực tiếp đọc dữ liệu giá của các loại token khác nhau mà không cần phải thiết lập nguồn cung cấp giá riêng cho từng loại token.
Cơ chế tổng hợp giá nhiều cấp
Giá dữ liệu của hệ thống Máy Oracle thường trải qua nhiều cấp độ xử lý tổng hợp, chủ yếu bao gồm tổng hợp nguồn dữ liệu, tổng hợp nhà điều hành nút và tổng hợp mạng Máy Oracle.
Dữ liệu giá cơ bản nhất đến từ các sàn giao dịch tập trung và phi tập trung lớn. Một số nhà cung cấp dữ liệu chuyên nghiệp sẽ thu thập và tích hợp những dữ liệu gốc này, cân nhắc các yếu tố như khối lượng giao dịch, tính thanh khoản, v.v. để thực hiện tính toán trọng số, hình thành một lớp tổng hợp nguồn dữ liệu đầu tiên.
Lớp thứ hai được hoàn thành bởi các nhà điều hành nút Máy Oracle. Họ nhận thông tin giá từ nhiều nhà cung cấp dịch vụ tổng hợp dữ liệu độc lập, thông qua việc loại bỏ các giá trị bất thường bằng cách lấy trị trung bình, nâng cao độ tin cậy của dữ liệu.
Lớp cuối cùng là sự tổng hợp của toàn bộ mạng Máy Oracle. Cách phổ biến là sau khi nhận được một số lượng phản hồi từ các nút đã được thiết lập trước, sẽ lấy giá trị trung vị của dữ liệu giá mà các nút này cung cấp làm giá cuối cùng. Cần lưu ý rằng không phải mọi kết quả tổng hợp đều được cập nhật ngay lập tức lên chuỗi, mà cần phải đáp ứng các điều kiện kích hoạt cụ thể, chẳng hạn như ngưỡng sai lệch hoặc ngưỡng nhịp tim.
Ứng dụng và giới hạn
Hệ thống Máy Oracle này dễ dàng kết nối và có độ an toàn cao, nhưng do cơ chế cập nhật giá của nó có một độ trễ nhất định, tần suất cập nhật có thể từ vài phút đến 24 giờ. Do đó, nó phù hợp hơn với các trường hợp ứng dụng không yêu cầu tính thời gian thực về giá. Điều này cũng phản ánh những hạn chế của hệ thống, có thể không đáp ứng được nhu cầu của tất cả các loại ứng dụng.
Khi lựa chọn giải pháp Máy Oracle, các nhà phát triển cần cân nhắc những lợi ích và hạn chế của nó, dựa trên nhu cầu cụ thể của ứng dụng để đưa ra lựa chọn phù hợp.