![#](/default/img-place-holder.webp)
ĐỊNH NGHĨA
Vấn đề oracle của blockchain đề cập đến việc các blockchain không có khả năng truy cập dữ liệu bên ngoài.
Vấn đề blockchain oracle là một trong những rào cản quan trọng nhất cần vượt qua nếu các hợp đồng thông minh trên các mạng như Ethereum muốn đạt được sự chấp nhận hàng loạt trên nhiều thị trường và trường hợp sử dụng.
Smart contracts (Hợp đồng thông minh) hoạt động trên blockchain mang lại tiềm năng to lớn để xác định lại cách thức các thực thể độc lập tham gia vào các thỏa thuận hợp đồng và trao đổi giá trị. Hoạt động tách biệt với nền kinh tế hợp đồng thông minh là nền kinh tế kỹ thuật số phi blockchain lớn hơn nhiều, được tạo thành từ tất cả các thiết bị được kết nối Internet tính toán trực tuyến. Một sản phẩm phụ của cơ sở hạ tầng kỹ thuật số là một hồ chứa ngày càng mở rộng của dữ liệu và API, cung cấp thông tin chuyên sâu về cách thế giới vận hành; ví dụ: kết quả tìm kiếm trên Internet trình bày các chủ đề thảo luận phổ biến trong xã hội hoặc các cảm biến IoT thể hiện các mẫu lưu lượng truy cập phổ biến.
Hợp đồng thông minh dựa trên blockchain và nền kinh tế API và dữ liệu truyền thống có tiềm năng to lớn để kết hợp thành hợp đồng thông minh hybrid và hình thành kiến trúc tương lai của tự động hóa dựa trên dữ liệu, nhưng câu hỏi đặt ra là làm thế nào để hai thế giới này kết nối với nhau? Điều này bao hàm mấu chốt của “vấn đề oracle” và sẽ là trọng tâm của bài viết này.
Bài viết được chia thành năm phần chính:
-
Oracle problem
-
Công việc của oracle
-
Tại sao các blockchain như Ethereum không cung cấp các giải pháp native oracle
-
Rủi ro bảo mật của các nhà oracle tập trung
-
Chainlink, tiêu chuẩn cho các mạng oracle phi tập trung an toàn và đáng tin cậy
Oracle Problem
Oracle Problem (Vấn đề oracle) xoay quanh một giới hạn rất đơn giản - các blockchain không thể lấy dữ liệu từ hoặc đẩy dữ liệu ra bất kỳ hệ thống bên ngoài nào dưới dạng chức năng tích hợp sẵn. Như vậy, các blockchain là các mạng bị cô lập, giống như một máy tính không có kết nối Internet. Sự cô lập của một blockchain là thuộc tính chính xác làm cho nó cực kỳ an toàn và đáng tin cậy, vì mạng chỉ cần hình thành sự đồng thuận về một bộ câu hỏi nhị phân (true/false) rất cơ bản bằng cách sử dụng dữ liệu đã được lưu trữ bên trong sổ cái. Những câu hỏi này bao gồm: người giữ public key có ký giao dịch bằng private key tương ứng của họ không, địa chỉ công khai có đủ tiền để chi trả cho giao dịch của mình không và loại giao dịch có hợp lệ trong hợp đồng thông minh cụ thể không? Trọng tâm rất hẹp của sự đồng thuận blockchain là lý do tại sao các hợp đồng thông minh được gọi là có tính xác định — chúng thực thi chính xác như được viết với mức độ chắc chắn cao hơn nhiều so với các hệ thống truyền thống.
Tuy nhiên, đối với các hợp đồng thông minh để thực hiện trên 90% các trường hợp sử dụng tiềm năng, họ phải kết nối với thế giới bên ngoài. Ví dụ: hợp đồng thông minh tài chính cần thông tin thị trường để xác định các khoản thanh toán, hợp đồng thông minh bảo hiểm cần IoT và dữ liệu web để đưa ra quyết định về các khoản thanh toán chính sách, hợp đồng tài chính thương mại cần tài liệu thương mại và chữ ký số để biết khi nào phát hành thanh toán và nhiều hợp đồng thông minh muốn thanh toán bằng tiền pháp định trên mạng thanh toán truyền thống. Không có thông tin nào trong số này vốn được tạo ra trong blockchain, cũng như các dịch vụ truyền thống này không thể truy cập trực tiếp.
Cầu nối giữa blockchain (on-chain) và thế giới bên ngoài (off-chain) yêu cầu một phần cơ sở hạ tầng bổ sung và riêng biệt được gọi là oracle.
Blockchain Oracle là gì?
Một blockchain oracle là phần mềm trung gian an toàn hỗ trợ giao tiếp giữa các blockchain và bất kỳ hệ thống off-chain nào, bao gồm nhà cung cấp dữ liệu, API web, chương trình phụ trợ doanh nghiệp, nhà cung cấp đám mây, thiết bị IoT, chữ ký điện tử, hệ thống thanh toán, các blockchain khác, v.v. Oracles đảm nhận một số chức năng chính:
-
Listen – giám sát mạng blockchain để kiểm tra mọi yêu cầu hợp đồng thông minh hoặc người dùng đến đối với dữ liệu off-chain.
-
Extract – tìm nạp dữ liệu từ một hoặc nhiều hệ thống bên ngoài, chẳng hạn như off-chain API được lưu trữ trên máy chủ web của bên thứ ba.
-
Format – định dạng dữ liệu được truy xuất từ các API bên ngoài thành định dạng blockchain có thể đọc được (đầu vào) và/hoặc làm cho dữ liệu blockchain tương thích với API bên ngoài (đầu ra).
-
Validate – tạo bằng chứng mã hóa chứng thực hiệu suất của dịch vụ oracle bằng cách sử dụng bất kỳ sự kết hợp nào giữa ký dữ liệu, ký giao dịch blockchain, chữ ký TLS, chứng thực Trusted Execution Environment (TEE) hoặc zero-knowledge proof.
-
Compute – thực hiện một số loại tính toán off-chain an toàn cho hợp đồng thông minh, chẳng hạn như tính toán giá trị trung bình từ nhiều lần gửi oracle hoặc tạo số ngẫu nhiên có thể kiểm chứng cho một ứng dụng gaming.
-
Broadcast – ký và phát một giao dịch trên blockchain để gửi dữ liệu và bất kỳ bằng chứng tương ứng nào on-chain để hợp đồng thông minh tiêu thụ.
-
Output (quyền chọn - optional) – gửi dữ liệu đến hệ thống bên ngoài khi thực hiện hợp đồng thông minh, chẳng hạn như chuyển tiếp hướng dẫn thanh toán đến mạng thanh toán truyền thống hoặc kích hoạt hành động từ hệ thống cyber-physical.
Việc thực hiện các chức năng trên yêu cầu hệ thống oracle phải hoạt động đồng thời cả trong và ngoài blockchain. Thành phần on-chain là để thiết lập kết nối blockchain (để lắng nghe yêu cầu), phát dữ liệu, gửi proof, trích xuất dữ liệu blockchain và có khả năng thực hiện tính toán trên blockchain. Thành phần off-chain dùng để xử lý các yêu cầu, truy xuất và định dạng dữ liệu bên ngoài, gửi dữ liệu blockchain đến các hệ thống bên ngoài và thực hiện tính toán off-chain để có khả năng mở rộng, quyền riêng tư, bảo mật cao hơn và nhiều cải tiến hợp đồng thông minh khác.
Tại sao blockchain không thể giải quyết Oracle Problem
Blockchain rất an toàn và đáng tin cậy vì một vài nguyên tắc thiết kế cụ thể. Như đã mô tả ở trên, một blockchain chỉ cần hình thành sự đồng thuận đối với các câu hỏi nhị phân rất cơ bản bằng cách sử dụng dữ liệu đã được lưu trữ trên sổ cái của nó. Sổ cái blockchain được coi là đúng vì nó tận dụng tính phi tập trung để xác thực dự phòng mọi phần dữ liệu bằng cách sử dụng tất cả các node trong mạng. Nó cũng sử dụng tính năng phân quyền để duy trì tính toàn vẹn của thuật toán đồng thuận (PoW, PoS, v.v.), đảm bảo các quy tắc giao thức chỉ thay đổi khi một phần đáng kể của mạng đồng ý (ví dụ: 51%). Các thuộc tính này cung cấp sự đảm bảo chắc chắn về tính quyết định trong tính toán và lưu trữ dữ liệu, đặc biệt là trong các mạng chống lại Sybil và phi tập trung cao.
Tuy nhiên, các blockchain không phù hợp để trả lời các câu hỏi đi sâu vào lĩnh vực chủ quan hoặc yêu cầu dữ liệu bên ngoài không dễ dàng truy cập đối với mọi node trong mạng. Ví dụ: một câu hỏi đơn giản như 'Giá thị trường của Bitcoin là bao nhiêu?' hoặc 'Thời tiết ở New York như thế nào?' có thể gợi ra nhiều câu trả lời khác nhau có thể khác nhau tùy thuộc vào nguồn dữ liệu họ sử dụng và thời điểm họ yêu cầu dữ liệu từ nguồn. Sau đó, câu hỏi trở thành, đâu là câu trả lời đúng và làm thế nào để xác minh nó là đúng?
Việc giới thiệu tính chủ quan ở layer cơ sở của blockchain sẽ mở ra chiếc box Pandora cho toàn bộ các mối quan tâm về bảo mật, độ tin cậy và quản trị, gây rủi ro cho những đề xuất rất có giá trị mà các blockchain nhằm mục đích cung cấp.
Một mối quan tâm lớn là làm thế nào để đảm bảo dữ liệu bên ngoài được nhập vào blockchain có chất lượng cao hay không? Ngay cả một yêu cầu dữ liệu cơ bản về giá của Bitcoin cũng khá khó khăn vì chỉ cần nhìn vào một trang web hoặc một sàn giao dịch đơn lẻ có thể không chính xác hoặc đáng tin cậy bằng đăng ký API trả phí cho một công cụ tổng hợp dữ liệu chuyên nghiệp có nhiều thập kỷ kinh nghiệm lọc dữ liệu và tạo thị trường. Bảo hiểm và được khuyến khích tài chính để duy trì các dịch vụ chất lượng cao. Khó quản lý và thực thi chất lượng đối với dữ liệu off-chain được gửi bởi các node blockchain vì bất kỳ ai cũng có thể chạy một node giả ẩn danh và gửi câu trả lời, ngay cả khi họ không sẵn sàng mua đăng ký API off-chain chất lượng cao. Nếu chất lượng dữ liệu được thực thi, blockchain sau đó sẽ có giới hạn trên thấp hơn đối với phân cấp do chi phí chạy các node sẽ tăng lên đối với mọi công việc oracle mới trên mạng, ảnh hưởng đến tính bảo mật của tất cả các ứng dụng khác chạy trên blockchain cụ thể.
Một mối quan tâm lớn khác là khả năng mở rộng. Mỗi khi một nguồn dữ liệu mới cần được thêm vào mạng hoặc phải điều chỉnh phương pháp tổng hợp dữ liệu hiện có, nó đòi hỏi sự phối hợp quản trị xã hội lớn để khiến mọi node trong mạng đồng ý và nâng cấp phần mềm của họ. Việc bổ sung chi phí quản trị dẫn đến ma sát gia tăng, sự phát triển chậm hơn của các tính năng blockchain cốt lõi (chẳng hạn như PoS và sharding) và các hạn chế lớn đối với sự đổi mới của oracle. Cuối cùng, layer cơ sở của blockchain càng phức tạp thì càng có nhiều bề mặt tấn công và rủi ro đối với tất cả các ứng dụng chạy trên nó. Ngay cả các ứng dụng không sử dụng oracle hoặc không liên quan đến các yêu cầu dữ liệu đối đầu cũng sẽ bị vướng vào cuộc chiến chéo và có khả năng bị gián đoạn nếu toàn bộ chuỗi ngừng hoạt động do sự cố oracle.
Vì những lý do này và nhiều lý do khác mà oracle không được tích hợp vào layer cơ sở của bất kỳ blockchain chính nào, mà thay vào đó hoạt động như các mạng riêng biệt. Điều này đảm bảo rằng các blockchain có bề mặt tấn công thấp hơn và duy trì tính tất định của chúng bằng cách duy trì sự tập trung duy nhất vào sự đồng thuận, trong khi các oracle có tính linh hoạt cần thiết để tạo ra tính tất định từ một thế giới off-chain phức tạp và chủ quan mà không tạo ra các phụ thuộc và hạn chế gây rủi ro cho tất cả các ứng dụng khác.
Blockchain Oracles tập trung mang đến những rủi ro lớn
Toàn bộ quan điểm của hợp đồng thông minh là đạt được tính quyết định thông qua việc thực thi công nghệ đối với các điều khoản của hợp đồng, trái ngược với việc thực thi xác suất do thực thi được thực hiện. Để đạt được mục đích này, blockchain không thể có bất kỳ điểm lỗi nào - một tính năng phải mở rộng đến oracle nếu tính xác định của các hợp đồng thông minh được duy trì từ đầu đến cuối. Tại sao một hợp đồng trị giá hàng triệu đô la lại có chức năng như một hợp đồng thông minh trên một blockchain phi tập trung hoàn toàn nếu một nhà oracle tập trung duy nhất có thể kiểm soát các yếu tố đầu vào xác định kết quả của hợp đồng?
Một oracle tập trung là một điểm thất bại trung tâm trong hợp đồng thông minh
Cho dù đó là nhóm phát triển tự điều hành oracle hay dịch vụ tập trung của third-party (bên thứ ba), cả hai kịch bản đều trao quyền lực quá mức cho một thực thể duy nhất để tác động đến hợp đồng thông qua sự kiểm soát của oracle. Mặc dù nhà điều hành oracle tập trung có thể hoạt động với mục đích tốt nhất, nhưng họ vẫn phải chịu tất cả các vấn đề tập trung phổ biến hiện nay như thời gian ngừng hoạt động, tấn công DDOS, hack và tình cờ không đủ năng lực, tất cả đều khiến tiền của người dùng gặp rủi ro.
Ngay cả những thực thể tập trung cao quý nhất cũng có thể chịu áp lực một khi giá trị của hợp đồng tăng lên, khiến họ dễ bị hối lộ, đe dọa và áp lực pháp lý, vốn chỉ yêu cầu một người tham gia vào hoạt động lừa đảo. Mô hình này không thể mở rộng và không phù hợp với ý tưởng cơ sở hạ tầng phi tập trung là động lực chính của tự động hóa an toàn và đáng tin cậy.
Để khắc phục những thiếu sót này, các nhà oracle cần tạo ra sự đảm bảo về độ tin cậy và bảo mật giống như một blockchain, mặc dù theo một cách khác do có nhiều điểm khác biệt.
Chainlink giải quyết Oracle Problem như thế nào?
Để mang lại tính quyết định oracle layer, Chainlink đã phát triển một mạng gồm các mạng oracle phi tập trung (decentralized oracle network - DON), với mỗi DON liên quan đến sự kết hợp của nhiều kỹ thuật bảo mật cần thiết để phục vụ một trường hợp sử dụng cụ thể.
-
Open-source (Mã nguồn mở) – là một công nghệ nguồn mở cho phép cộng đồng blockchain rộng lớn hơn xác minh độc lập tính bảo mật và độ tin cậy của mã nguồn và các chức năng của Chainlink, cũng như đóng góp vào sự cải tiến của nó.
-
External Adapters (Bộ điều hợp ngoài) – cho phép các node lưu trữ khóa API một cách an toàn và quản lý thông tin đăng nhập tài khoản cho phép các hợp đồng thông minh truy xuất dữ liệu từ bất kỳ hệ thống và API bên ngoài nào, bao gồm cả những hệ thống được bảo vệ bằng mật khẩu/thông tin xác thực.
-
Decentralization (Việc phân quyền) – sử dụng phân cấp ở cấp node và nguồn dữ liệu đảm bảo không có một node hoặc nguồn dữ liệu nào là một điểm lỗi duy nhất, cung cấp cho người dùng sự đảm bảo chắc chắn rằng dữ liệu sẽ có sẵn, được phân phối đúng hạn và chống thao túng.
-
Data Signing (Ký dữ liệu) – việc các node ký mã hóa dữ liệu mà chúng cung cấp cho các hợp đồng thông minh cho phép người dùng xác định các node nào đã gửi dữ liệu và xem xét lịch sử trước đây của chúng để xác định chất lượng hiệu suất của chúng.
-
Service Agreements (Hợp đồng dịch vụ) – sử dụng các thỏa thuận ràng buộc on-chain giữa hợp đồng thông minh yêu cầu và nhà cung cấp oracle phác thảo các điều khoản của dịch vụ oracle và các hình phạt/phần thưởng cho hiệu suất cung cấp cho người dùng sự đảm bảo có thể thực thi về chất lượng của các yêu cầu dữ liệu off-chain.
-
Reputation Systems (Hệ thống danh tiếng) – cung cấp dữ liệu on-chain đã ký vào các hệ thống danh tiếng cho phép người dùng đưa ra quyết định sáng suốt về node nào tốt và node nào không dựa trên nhiều số liệu như công việc thành công được thực hiện, danh sách khách hàng được phục vụ, thời gian phản hồi trung bình, v.v.
-
Certification Services (Dịch vụ chứng nhận) – cho phép các node tăng cường bảo mật và độ tin cậy bằng cách đạt được bất kỳ số lượng chứng chỉ nào có thể cung cấp cho người dùng các đảm bảo bổ sung như KYC, vị trí địa lý của node, đánh giá bảo mật cơ sở hạ tầng của họ, v.v.
-
Advanced Cryptography and Hardware (Mật mã và phần cứng nâng cao) – cung cấp tính linh hoạt cho mật mã tiên tiến hơn (zero-knowledge proofs) và hardware (chẳng hạn như môi trường thực thi đáng tin cậy) cho phép các nhà oracle thực hiện các chức năng bổ sung như chứng minh nguồn gốc của dữ liệu (ví dụ: dữ liệu cụ thể đến từ một máy chủ cụ thể), giữ bí mật dữ liệu, thực hiện tính toán off-chain, v.v.
DON cho phép các hợp đồng thông minh kết nối an toàn với dữ liệu và hệ thống bên ngoài.
Đây chỉ là một số trong số rất nhiều tính năng do Chainlink cung cấp nhằm cung cấp cho người dùng toàn bộ các cơ chế oracle có độ an toàn cao và đáng tin cậy. Bằng cách xây dựng các tính năng chính này trên Chainlink, các hợp đồng thông minh trên bất kỳ blockchain nào giờ đây có thể truy cập dữ liệu off-chain mà không phải hy sinh giá trị cốt lõi của chủ nghĩa quyết định, cung cấp nền tảng vững chắc để từ đó xây dựng tương lai của tự động hóa dựa trên dữ liệu.
Bài viết được FXCE Crypto biên tập từ "What Is the Blockchain Oracle Problem?" của Chainlink với mục đích cung cấp thông tin và phi lợi nhuận. Chúng tôi không khuyến nghị đầu tư và không chịu trách nhiệm cho các quyết định đầu tư liên quan đến nội dung bài dịch.
![#](/images/common/user-default.webp)