"Bài toán về các vị tướng Byzantine" là một bài toán được sử dụng để mô tả sự cố xảy ra khi một hoặc nhiều thành phần của một hệ thống máy tính bị lỗi. Thuật ngữ về những thách thức phải đối mặt. Những lỗi này có thể khiến thông tin không chính xác được truyền trong hệ thống, ảnh hưởng đến hiệu suất của nó. Cái tên này xuất phát từ một bài nghiên cứu năm 1982 so sánh vấn đề này với các kịch bản quân sự lịch sử.
Hãy tưởng tượng kịch bản này: Một số sư đoàn của quân đội Byzantine lên kế hoạch bao vây một thành phố của kẻ thù, mỗi sư đoàn có một vị tướng và họ chỉ có thể liên lạc với nhau thông qua sứ giả. Các tướng phải thống nhất một kế hoạch đáp ứng được hai yêu cầu: 1) tất cả các tướng đáng tin cậy đều theo cùng một kế hoạch; 2) một số ít kẻ xấu không thể khiến người tốt đi theo kế hoạch có hại.
Thách thức chính là làm thế nào các tướng có thể chia sẻ thông tin một cách an toàn và đạt được sự đồng thuận. Nếu họ không thể đồng ý, hành vi phạm tội của họ có thể thất bại. Sẽ là một vấn đề nếu một vị tướng xảo quyệt cố tình khiến người khác gặp nguy hiểm bằng cách cung cấp thông tin sai lệch.
Trong mạng máy tính phân tán giống như blockchain, mỗi người tham gia Người chơi (nút) giống như một vị tướng. Để hệ thống hoạt động bình thường, phần lớn các nút phải đồng ý với cùng một hướng dẫn và tuân theo chúng. Lỗi Byzantine có thể xảy ra nếu một số nút nhất định gặp trục trặc hoặc trở nên độc hại. Các hệ thống hoạt động bình thường bất chấp những lỗi này được cho là có khả năng chịu lỗi Byzantine (BFT).
Bitcoin sử dụng một phương pháp gọi là bằng chứng công việc để giải quyết vấn đề này. Khi mỗi "chung" (nút) xác định một kế hoạch, chúng sẽ yêu cầu máy tính giải quyết một vấn đề đầy thách thức. Một trong số họ dự kiến sẽ tìm ra giải pháp trong vòng 10 phút. Khi tìm thấy giải pháp, nút này sẽ chia sẻ giải pháp đó với những nút khác cùng với kế hoạch của họ. Sau đó những người khác làm theo kế hoạch mới này.
Bằng cách kiểm tra chuỗi bằng chứng công việc, mỗi nút có thể biết mức độ sử dụng sức mạnh tính toán và phần lớn máy tính đều đồng ý với kế hoạch. Do đó, họ có thể tin tưởng và thực hiện theo kế hoạch có chuỗi proof-of-work dài nhất vì đa số ủng hộ nó.