Vấn đề Tướng quân Byzantine là gì?

  • 2025-07-28

 

Như đã đề cập trước đây, sổ cái phân tán có thể coi là khung của blockchain, nơi mọi người đều có thể tự do tham gia và cùng xử lý dữ liệu trong blockchain. Dựa trên điều này, blockchain thực chất là một mạng máy tính phân tán quy mô lớn.

Nó không có một trung tâm chỉ huy tập trung để ra lệnh—toàn bộ mạng hoàn toàn phi tập trung. Nó phụ thuộc vào các nút khác nhau trao đổi thông tin và đạt được sự đồng thuận để hành động thống nhất. Toàn bộ quá trình giống như một cuộc thảo luận nhóm không có lãnh đạo.

Trước vấn đề này, một số người đặt câu hỏi: Nếu một nút gửi thông tin sai lệch, làm gián đoạn hoạt động bình thường của mạng, hoặc nếu xảy ra bất đồng thì sao? Do đó, các học giả đã xây dựng một mô hình, gọi chung những vấn đề mô tả tính nhất quán của hệ thống phân tán là Vấn đề Tướng quân Byzantine.

Vấn đề Tướng quân Byzantine được mô tả như sau:

Đế chế Byzantine muốn tấn công một quốc gia và cử nhiều cánh quân bao vây. Tuy nhiên, quốc gia địch cũng có tiềm lực quân sự mạnh, nên các tướng lĩnh phải tấn công đồng loạt cùng một lúc mới giành được chiến thắng.

Vấn đề nằm ở chỗ, mỗi vị tướng đều phân tán xung quanh lãnh thổ địch và chỉ có thể liên lạc thông qua các sứ giả cưỡi ngựa để thống nhất thời gian tấn công. Tuy nhiên, một mặt, sứ giả có thể bị địch giết khi đang truyền tin. Mặt khác, theo tin tức không đáng tin cậy, trong số các tướng lĩnh này có thể có kẻ phản bội. Kẻ phản bội có thể tự ý thay đổi kế hoạch tấn công hoặc thời gian, gửi mệnh lệnh giả đến các tướng khác và làm ảnh hưởng đến quyết định của họ.

Nếu toàn bộ mạng phân tán được ví như Đế chế Byzantine và mỗi nút tương ứng với một vị tướng, thì trong tình huống này, làm thế nào để đảm bảo tất cả các nút trong mạng đạt được sự đồng thuận về một quyết định? (Tức là các tướng lĩnh cùng tấn công một lúc để giành chiến thắng.) Đây chính là Vấn đề Tướng quân Byzantine.

Nói một cách đơn giản, Vấn đề Tướng quân Byzantine mô tả hai thách thức chính trong mạng phân tán:

  1. Làm thế nào để đồng bộ hóa giao tiếp giữa các nút. Ví dụ, trong trường hợp không có kẻ phản bội, Tướng A có thể đề xuất kế hoạch tấn công (ví dụ: tấn công lúc 2 giờ chiều mai), trong khi Tướng B lại đề xuất một kế hoạch khác (ví dụ: tấn công lúc 3 giờ chiều mai).

  2. Làm thế nào để ngăn chặn các nút độc hại cố tình gửi thông tin sai lệch làm gián đoạn mạng. Chẳng hạn, nếu có kẻ phản bội, chúng có thể gửi các đề xuất tấn công mâu thuẫn đến các tướng khác nhau, ngăn cản sự đồng thuận.

Sau này, người ta nhận ra rằng việc đảm bảo mọi nút trong mạng phân tán không bao giờ mắc lỗi là không thể. Do đó, khái niệm Khả năng chịu lỗi Byzantine (BFT) đã được đề xuất để giải quyết Vấn đề Tướng quân Byzantine. Ý tưởng cốt lõi là thông tin giả mạo hoặc sai lệch không quan trọng, miễn là số lượng tướng lĩnh trung thực vượt quá hai phần ba tổng số. Ngay cả khi có một số ít tướng lĩnh không trung thực, hệ thống vẫn có thể đạt được sự đồng thuận.

Dựa trên điều này, nhiều giải pháp đã được thiết kế. Trong bốn công nghệ cốt lõi của blockchain, cơ chế đồng thuận được phát triển đặc biệt để giải quyết vấn đề này.

Go Back Top