Bài viết này đề xuất ý tưởng về một lớp bảo mật bổ sung có thể được tích hợp vào các oracle như Chainlink để sử dụng cho các hợp đồng thông minh: chọn ngẫu nhiên các nhà khai thác nút.
Thiết kế bảo mật Chainlink hiện tại
Chainlink đang cố gắng giải quyết một vấn đề lớn trong tiền điện tử: vấn đề tiên tri. Một trong những mô tả yêu thích của tôi trong sách trắng Chainlink là bản chất phòng thủ chuyên sâu của giao thức được phát triển theo phương pháp nhóm của mình. Kế hoạch này cho phép các nhà phát triển hợp đồng thông minh điều chỉnh các biến bảo mật sau, còn được gọi là "Thỏa thuận cấp độ dịch vụ (SLA)", để thích ứng với các tình huống hợp đồng khác nhau của họ:
Tự do lựa chọn số lượng nhà khai thác nút mà bạn muốn
Sử dụng hợp đồng xác minh trên chuỗi để xác định các nút chất lượng cao
Sử dụng trên Các chỉ số danh tiếng của chuỗi và ngoài chuỗi để xác định các nút chất lượng cao
Yêu cầu sử dụng Môi trường thực thi đáng tin cậy (TEE)
Yêu cầu các nhà khai thác nút nắm giữ một lượng tài sản thế chấp nhất định
Tiến hành kiểm tra bảo mật đối với tài sản thế chấp của các nút độc hại Mức độ nghiêm trọng của hình phạt
Số tiền thưởng cho các nút có hành vi tốt
Cách tổng hợp các phản hồi của nút (điều này cũng kiểm soát các điều kiện chính xác của các nút được khen thưởng hay bị trừng phạt như thế nào)
Tự mình sử dụng Chainlink Các nhà khai thác nút đáng tin cậy và đã được kiểm duyệt để chống lại các cuộc tấn công của Sybil
Lựa chọn chuỗi khối cơ bản. Chainlink là một giao thức được chuyển sang các chuỗi khối hợp đồng thông minh an toàn nhất.
Hãy lấy một ví dụ. Giả sử tôi là thành viên của nhóm phát triển sở hữu một hợp đồng thông minh với hàng nghìn tỷ đô la đang chảy. Tôi có thể yêu cầu 300 nhà khai thác nút được chứng nhận có điểm cao nhất về xác thực và hợp đồng/dịch vụ danh tiếng, chỉ chọn những nhà khai thác chạy nút trong Môi trường thực thi đáng tin cậy (TEE), yêu cầu mỗi nút phải có ít nhất 1 triệu đô la mã thông báo liên kết được đặt cược, bị phạt tất cả các nhà khai thác nút sai lệch so với phản hồi trung bình hai độ lệch chuẩn và thưởng hào phóng cho tất cả các nhà khai thác nút nằm trong hai độ lệch chuẩn.
Hành vi như vậy có tính bảo mật cao. Nó có thể là quá nhiều và những giả định tôi đề cập ở trên có thể không thành hiện thực. Nhưng đây chính là sự tinh tế của giao thức Chainlink. Nó cho phép các nhà phát triển hợp đồng thông minh và cộng đồng quyết định mức độ bảo mật cần cung cấp trong oracle cho một hợp đồng thông minh cụ thể. Hợp đồng thông minh chỉ an toàn như liên kết yếu nhất của nó và Giám đốc điều hành Chainlink, Sergey đã tuyên bố rằng mục tiêu của ông là làm cho các oracle trở nên an toàn và phi tập trung như blockchain chạy các hợp đồng thông minh. Tuy nhiên, điều còn thiếu trong tất cả các lớp bảo vệ này là một tính năng bảo mật quan trọng cho phép thực hiện điều này: việc lựa chọn các nhà khai thác nút ngẫu nhiên.
Toán tử nút ngẫu nhiên và chống thông đồng
Chúng ta hãy xem qua thuật toán đồng thuận của Ethereum, chuỗi khối hiện đang chạy Chainlink. Ethereum hiện đang chạy trên thuật toán đồng thuận PoW và có kế hoạch chuyển sang PoS. Trong PoW, bất kỳ ai cũng có thể trở thành thợ mỏ để tạo và xác minh các khối bằng cách thiết lập nút khai thác, tham gia mạng và tìm nonce chính xác để khai thác khối.
Mặc dù điều này tạo ra một mạng không cần cấp phép mà bất kỳ ai cũng có thể tham gia nhưng nó cũng tạo ra một mạng có khả năng chống thông đồng tốt hơn. (Lưu ý của Blue Fox: Chống thông đồng có nghĩa là không dễ thông đồng)
Đặc tính chống thông đồng này xuất phát từ thực tế là nhà sản xuất khối Họ không được lựa chọn bởi một tổ chức hoặc cá nhân trung tâm mà được chọn ngẫu nhiên dựa trên tỷ lệ sức mạnh băm mà họ đóng góp. Không có thực thể nào biết chắc chắn nút nào sẽ đề xuất khối tiếp theo.
Khối được đề xuất sau đó được kiểm tra bởi toàn bộ mạng chạy các nút đầy đủ, cách duy nhất mà kẻ tấn công có thể bắt đầu giả mạo blockchain bằng cách thông đồng. là liệu nhóm thông đồng có sở hữu hơn 23% tỷ lệ băm hay không. Nhìn chung, việc kiểm soát hơn 50% tỷ lệ băm được coi là cần thiết nếu có bất kỳ thiệt hại đáng kể nào xảy ra. So sánh điều này với thuật toán đồng thuận DPoS của EOS, thuật toán sử dụng bỏ phiếu của cộng đồng để chọn một số lượng người xác thực hạn chế, cụ thể là 21 nút đại diện và do đó có thể bị cáo buộc về khả năng tham nhũng và thông đồng.
Suy nghĩ của tôi? Miễn là các nhà phát triển hợp đồng thông minh chọn các nhà khai thác nút cụ thể, họ không thể đạt được mức độ chống thông đồng như các chuỗi công khai hàng đầu. Việc thông đồng đạt được dễ dàng hơn nhiều với một nhóm các nhà khai thác nút đã biết so với các nhà khai thác nút được chọn ngẫu nhiên từ một nhóm. Ngay cả với Môi trường thực thi đáng tin cậy (TEE) như SGX, bạn thực sự phải thêm một toán tử đáng tin cậy vào hỗn hợp, chẳng hạn như Intel (Lưu ý của Blue Fox: Điều này ngoài việc tin cậy vào toán tử nút đã biết). Ngoài ra, bạn cũng phải tin tưởng các nhà sản xuất phần cứng).
Ở đây, tôi không có ý rằng Intel sẽ cố tình thiết kế SGX với một cửa sau, cũng không có nghĩa là tất cả các hợp đồng đều phải đáp ứng yêu cầu của Ethereum bảo mật cấp chuỗi cơ bản, nhưng một số hợp đồng yêu cầu mức độ bảo mật này. Nếu chúng tôi muốn đạt được mục tiêu này, Chainlink cần bổ sung thêm biện pháp bảo mật dựa trên các cảnh báo ngẫu nhiên an toàn khi đặt cược.
Giải pháp: Chuỗi Beacon Ethereum 2.0 + Đặt cược
Đề xuất của tôi nhằm giảm thiểu các vấn đề thông đồng có thể xảy ra giữa các nhà khai thác nút trong Chainlink là cho phép các nhà phát triển hợp đồng thông minh sử dụng các đèn hiệu ngẫu nhiên an toàn để chọn ngẫu nhiên từ một nhóm các nhà khai thác nút không được phép. Chọn nút. Rất khó đạt được một đèn hiệu ngẫu nhiên thực sự an toàn trong một blockchain, nhưng may mắn thay, Ethereum đã có đề xuất triển khai một đèn hiệu ngẫu nhiên phổ quát an toàn, chuỗi đèn hiệu Ethereum 2.0.
Việc nói rằng chuỗi beacon trong Ethereum sẽ tạo ra tính ngẫu nhiên không thể đoán trước và không thiên vị là dựa trên giả định rằng ít nhất Một người xác thực là trung thực và không có trường hợp nào phần cứng VDF ASIC nhanh hơn nhiều lần so với phần cứng VDF ASIC thông thường. Trên thực tế, bạn sẽ thấy rằng đề xuất của tôi về cơ bản là sử dụng một hệ thống rất giống với cách hoạt động của bằng chứng cổ phần trong Ethereum 2.0.
Hãy giả sử rằng có một luồng dữ liệu cụ thể có nhu cầu rất cao trong nhiều hợp đồng thông minh khác nhau, ví dụ: giả sử Một trong những luồng dữ liệu là luồng giá ETH/USD. Bất kỳ ai cũng có thể bắt đầu nút cho luồng dữ liệu này và tham gia mạng. Nhưng thay vì tham gia và chờ nhà phát triển hợp đồng thông minh chọn bạn, bạn tham gia vào nhóm các nhà khai thác nút nơi tất cả các nút cung cấp cùng một luồng dữ liệu cho hợp đồng thông minh.
Đèn hiệu ngẫu nhiên Ethereum được kích hoạt và khi nó kích hoạt, một ủy ban mới gồm những người vận hành nút sẽ được chọn, quy mô ủy ban được xác định bởi SLA của hợp đồng thông minh yêu cầu dịch vụ oracle. (Ghi chú của Blue Fox: SLA đề cập đến Thỏa thuận cấp độ dịch vụ) Trong số đó, xác suất một nút cụ thể được chọn vào ủy ban sẽ tỷ lệ thuận với số lượng mã thông báo Liên kết được cam kết trong nhóm. Các nút này sẽ cung cấp một luồng dữ liệu sẽ được tổng hợp và khen thưởng hoặc trừng phạt theo quy định của hợp đồng thông minh sử dụng dịch vụ.
Tính năng này có thể được bổ sung lên trên tất cả các tính năng bảo mật hiện đang được lên kế hoạch.
Có lẽ các nhà phát triển hợp đồng thông minh có thể tác động một phần đến xác suất nút được chọn dựa trên các chỉ số danh tiếng trên chuỗi; danh tiếng chất lượng càng cao , càng tốt Khả năng càng lớn. Hợp đồng thông minh có thể thưởng cho các nút sử dụng SGX hoặc nó có thể được sử dụng với dịch vụ chứng thực tập trung hiện tại nơi bạn ít nhất biết ai là một số nút lớn hơn trong nhóm.
Tất nhiên, điều này đòi hỏi nhóm nhà điều hành nút đủ lớn để loại bỏ cơ bản các cuộc tấn công Sybil bên ngoài các nút được xác thực trong nhóm đe dọa. Trong Ethereum, ước tính có hàng chục nghìn nút và có thể dễ dàng cho rằng phần lớn các nút này không được kiểm soát bởi một vài nhà khai thác giả vờ là nhiều.
Kết luận
Tôi không phải là người đầu tiên nghĩ ra ý tưởng này, có một số mạng tiên tri sắp ra mắt cũng nhận thấy sự thiếu ngẫu nhiên trong việc lựa chọn nút và đưa ra giải pháp của riêng họ (thường họ có chuỗi PoW riêng, mà tôi cũng đã đặt trước). Ví dụ bao gồm Witnet và Tellor. Có các giải pháp khác, chẳng hạn như các giao thức nhận dạng phi tập trung có thể. Đây là một gợi ý rất cơ bản và khác xa với đặc điểm kỹ thuật và thiết kế chi tiết.
Bạn cũng có thể học hỏi từ thiết kế PoS của Ethereum, chẳng hạn như thời gian khóa hoặc hình phạt nặng hơn đối với các nút ngoại tuyến cùng lúc. Mục đích của bài viết này nhiều hơn là khơi dậy các ý tưởng và hy vọng rằng Chainlink và cộng đồng sẽ hành động. Về lâu dài, chúng ta phải giảm thiểu sự tin tưởng vào các bên thứ ba và giảm thiểu mối đe dọa thông đồng với các nhà tiên tri.
Nhìn chung, tôi nghĩ các kế hoạch và sự phát triển hiện tại của Chainlink là tuyệt vời. Việc sử dụng dịch vụ được xác thực để chống lại các cuộc tấn công của Sybil, kết hợp với tất cả các phương pháp bảo mật được đề cập ở trên, mang lại cho dịch vụ này đặc tính phòng thủ mạnh nhất so với hầu hết các giải pháp oracle cạnh tranh khác. Các phương pháp này còn có thêm lợi ích là khởi động mạng nhanh chóng và nếu chưa có đủ người vận hành nút thì có khả năng bảo mật tốt hơn trong ngắn hạn và trung hạn.
Tuy nhiên, về lâu dài, nếu chúng ta thực sự muốn phát triển giải pháp oracle phi tập trung nhất, nếu chúng ta muốn đạt được mức độ tương tự về tính bảo mật và không đáng tin cậy nhất có thể với các chuỗi công khai hàng đầu như Ethereum, thì chúng ta không thể đơn giản tin tưởng một nhóm các nhà khai thác nút được chọn sẽ không thông đồng với nhau. Đạt được tính ngẫu nhiên có thể là tính năng cuối cùng mà Chainlink cần để đảm bảo an toàn trong tương lai.
Liên kết nguồn: mp.weixin.qq.com a>
BlockBeats nhắc nhở rằng theo "Giới thiệu về việc ngăn chặn việc sử dụng "Tiền ảo"" do năm bộ ban hành bao gồm cả Ủy ban Điều tiết Ngân hàng và Bảo hiểm Trung Quốc vào tháng 8 năm 2018 "Cảnh báo rủi ro về việc gây quỹ bất hợp pháp dưới danh nghĩa" Blockchain "", công chúng được yêu cầu xem blockchain một cách hợp lý, không tin tưởng mù quáng vào những lời hứa trên trời, thiết lập chính xác khái niệm tiền tệ và khái niệm đầu tư, đồng thời nâng cao nhận thức về rủi ro một cách hiệu quả; Manh mối về tội phạm bất hợp pháp có thể được chủ động báo cáo cho các bộ phận liên quan.
Chào mừng bạn tham gia cộng đồng chính thức của BlockBeats:
Nhóm Telegram đăng ký: https://t.me/theblockbeats
Nhóm Telegram thảo luận: https://t.me/BlockBeats_App
Tài khoản Twitter chính thức: https://twitter.com/BlockBeatsAsia
