Hệ thống chịu lỗi Byzantine được cho là hệ thống có khả năng giải quyết vấn đề của bài toán các vị tướng quân Byzantine. Vậy hệ thống chịu lỗi Byzantine là gì? Hệ thống này có đặc điểm như thế nào? Hãy cùng Topsanfx theo dõi bài viết dưới đây để tìm hiểu cụ thể hơn về hệ thống chịu lỗi Byzantine nhé!
Contents
- 1 Tìm hiểu về Byzantine Fault Tolerance
- 2 Điểm đặc biệt của hệ thống chịu lỗi Byzantine
- 3 Tầm quan trọng của hệ thống chịu lỗi Byzantine
- 4 Hệ thống nào sẽ gặp vấn đề Byzantine?
- 5 Cách Bitcoin giải quyết vấn đề chung của lỗi Byzantine
- 6 Practical Byzantine Fault Tolerance (PBFT) là gì?
- 7 Ưu điểm và hạn chế của Practical Byzantine Fault Tolerance (pBFT)
- 8 Lời kết
Tìm hiểu về Byzantine Fault Tolerance
Bài toán các vị tướng Byzantine là gì?
Bài toán các vị tướng Byzantine được đưa ra vào năm 1982 bởi các nhà khoa học máy tính Leslie Lamport, Robert Shostak và Marshall Pease. Bài toán này mô tả việc một nhóm các vị tướng Byzantine gặp phải những vấn đề liên lạc khi cố gắng đạt sự đồng thuận về bước đi tiếp.
Giả sử tất cả các tướng tấn công cùng một thời điểm thì họ sẽ thắng, tuy nhiên nếu tấn công riêng lẻ vào những thời điểm khác nhau thì sẽ thua. Do việc liên lạc giữa các vị tướng được thực hiện thông qua các sứ giả và phải đi qua lãnh thổ của kẻ thù, cho nên các thông điệp đó có thể đã bị chặn và xâm phạm. Bên cạnh đó, một số tướng lĩnh có thể trở thành kẻ phản bội. Họ có thể chuyển thông điệp cho các tướng khác để đánh lạc hướng. Vậy làm thế nào để tất cả tướng có thể phối hợp tổ chức tấn công đồng loạt?
Bài toán các vị tướng Byzantine là một bài toán miêu tả khó khăn mà các bên phân quyền (Decentralized) phải đối mặt trong việc đạt được sự đồng thuận mà không cần dựa vào bên trung gian không đáng tin cậy.
Byzantine Fault Tolerance – Hệ thống chịu lỗi Byzantine là gì?
Byzantine Fault Tolerance (BFT) còn được gọi là hệ thống chịu lỗi Byzantine, là hệ thống có khả năng xử lý những vấn đề của bài toán Byzantine. Hệ thống này sẽ luôn có khả năng hoạt động ngay cả khi một số node bị lỗi, bị phá hoại hoặc tấn công. Ngoài ra, BFT còn giúp giảm tác động của các nút byzantine độc hại (hoặc chung) trên mạng.
Hệ thống chịu lỗi Byzantine sẽ xuất hiện trong những hệ thống engine của máy bay, tên lửa, nhà máy hạt nhân. Bởi lẽ những hệ thống engine này sẽ cần phải đưa ra quyết định dựa vào những thông tin nhận được từ rất nhiều các cảm biến khác nhau.
Điểm đặc biệt của hệ thống chịu lỗi Byzantine
Điểm đặc biệt của hệ thống chịu lỗi Byzantine đó là đồng thuận vẫn có thể tiếp diễn mặc dù có xuất hiện một số bất đồng giữa 2 node. Điều này rất quan trọng đối với các Blockchain phi tập trung chẳng hạn như Bitcoin hay Ethereum.
Satoshi Nakamoto người sáng tạo ra Bitcoin đã tạo ra một đổi mới rất quan trọng trong việc giải quyết vấn đề bài toán các vị tướng Byzantine. Bằng việc áp dụng các bằng chứng công việc cho mạng lưới Bitcoin, Bitcoin Network sẽ được bảo vệ khỏi các Node (nút) độc lại, tương đương với khoảng một phần ba số Node.
Tầm quan trọng của hệ thống chịu lỗi Byzantine
Xét theo góc đội điện toán thì hệ thống chịu lỗi Byzantine đóng một vai trò quan trọng. BFT sẽ giúp cho cả hệ thống có thể tiếp tục hoạt động ngay cả khi có một số thành phần không hoạt động nữa.
Máy bay, tàu thăm dò không gian hay bất kỳ thứ gì cần dùng đến hệ thống máy tính thì đều sẽ yêu cầu khả năng hoạt động khi một bộ phận nào đó bị hư hỏng hoặc không thể đạt công suất tối đa.
Đặc biệt đối với những trader đầu tư vào chứng khoán, coin hay NFT,…thì sẽ cần tìm hiểu về hệ thống này. Bởi lẽ hệ thống chịu lỗi Byzantine là yếu tối quan trọng đối với hệ thống blockchain.
Hệ thống nào sẽ gặp vấn đề Byzantine?
- Hệ thống phi tập trung hay còn gọi là Decentralized sẽ phải đối mặt với vấn đề của Byzantine. Bởi lẽ hệ thống phi tập trung không có nguồn thông tin đáng tin cậy, đồng thời cũng không có phương pháp nào để xác minh được thông tin nhận được từ các thành viên khác trong mạng.
- Còn đối với hệ thống tập trung hay còn gọi là Centralized sẽ có một cơ quan có thẩm quyền được giao cho nhiệm vụ công bố thông tin chính xác, đúng sự thật và ngăn chặn các thông tin sai lệch hoặc gian lận được lan truyền trên toàn mạng.
Cách Bitcoin giải quyết vấn đề chung của lỗi Byzantine
Bitcoin đã chọn sử dụng Proof-of-Work (PoW) để khắc phục lỗi Byzantine. Bitcoin sử dụng cơ chế đồng thuận PoW để lập ra một bộ quy tắc rõ ràng và khách quan cho blockchain.
Một thành viên của mạng sẽ phải xuất bản bằng chứng chứng minh rằng đã đầu tư công sức đáng kể vào việc tạo ra khối thì mới có thể thêm thông tin (khối – block) vào blockchain. Việc này đòi hỏi chi phí lớn cho người sáng tạo, từ đó khuyến khích họ xuất bản thông tin trung thực.
Những quy tắc đặt ra là khách quan, do đó sẽ không thể có bất đồng hay can thiệp nào vào thông tin trên mạng Bitcoin. Và khi một block đã được thêm vào blockchain thì khó để có thể loại bỏ.
Từ đó, các thành viên trong mạng Bitcoin có thể thống nhất về trạng thái của blockchain và các giao dịch tại mọi thời điểm. Mỗi nút sẽ tự xác minh xem block có hợp với yêu cầu của PoW hay không, các giao dịch có hợp lệ hay không.
Trường hợp một thành viên nào cố phát đi thông tin sai lệch thì toàn bộ node sẽ phát hiện ra ngay lập tức và bỏ qua nó.
Lưu ý: Thuật toán Proof of Work không đảm bảo 100% khả năng chịu lỗi Byzantine.
Ngoài PoW ra thì Proof of Stake (PoS) và Delegated Proof of Stake (dPoS), Proof of Authority (PoA) cũng là các thuật toán phổ biến.
Practical Byzantine Fault Tolerance (PBFT) là gì?
Trong nỗ lực khắc phục các sự cố Byzantine, Barbara Liskov và Miguel Castro đã giới thiệu thuật toán đồng thuận Khả năng chịu lỗi Byzantine thực tế (pBFT) vào năm 1999. Chúng nhằm mục đích đảm bảo sao chép máy trạng thái Byzantine thực tế để chịu đựng các nút độc hại hoặc Byzantine.
pBFT tuân theo cách tiếp cận không đồng bộ. Sau đây là các khía cạnh thiết yếu của thuật toán đồng thuận pBFT:
- Tất cả các nút được lắp ráp theo trình tự
- Một nút mạng đóng vai trò là nút dẫn đầu và các nút còn lại là nút dự phòng.
- Nút chính hoặc nút dẫn đầu phục vụ yêu cầu của khách hàng. Nó hoạt động như một người điều hành giữa các nút máy khách và sao lưu.
- Tất cả các nút đều có khả năng giao tiếp với các nút khác để kiểm tra các nút trung thực.
- Các nút trung thực sẽ có thể đạt được sự đồng thuận cho thay đổi toàn cầu tiếp theo trong mạng dựa trên quy tắc đa số.
- Nó xác định nguồn gốc của tin nhắn để đảm bảo rằng nó được gửi bởi đúng người gửi. Đảm bảo tin nhắn không bị sửa đổi hoặc bị hỏng ở giữa.
Ưu điểm và hạn chế của Practical Byzantine Fault Tolerance (pBFT)
Ưu điểm của Practical Byzantine Fault Tolerance
- Một Practical Byzantine Fault Tolerance không yêu cầu thực hiện các phép tính toán học cao như PoW.
pBFT là một mô hình đồng thuận tiết kiệm năng lượng. - Một khối giao dịch ở đây không cần phải tuân theo nhiều xác nhận của mỗi nút. Do đó, nó đòi hỏi ít thời gian hơn.
- Vì pBFT yêu cầu mọi nút tham gia và phục vụ yêu cầu của khách hàng, nên mỗi nút sẽ nhận được phần thưởng. Do đó phương sai phần thưởng thấp giữa mỗi nút.
Hạn chế của Practical Byzantine Fault Tolerance
- pBFT có chi phí truyền thông cao sẽ tăng theo số lượng nút trong mạng.
- Nó có vấn đề về khả năng mở rộng với các mạng rộng lớn hơn.
- pBFT dễ bị tấn công Sybil trong đó một nút kiểm soát hoặc hoạt động như nhiều nút mạng.
Lời kết
Bài viết trên chia sẻ về hệ thống chịu lỗi Byzantine và những thông tin liên quan. Hy vọng những thông tin này hữu ích với nhà đầu tư. Cảm ơn nhà đầu tư đã theo dõi bài viết cùng Topsanfx.
Bài viết liên quan:
Node là gì? Hướng dẫn cách chạy node cho người mới