Kể từ khi Bitcoin ra đời như một hệ thống tiền điện tử ngang hàng vào năm 2008, nhiều loại tiền kỹ thuật số khác dần xuất hiện và mỗi loại tiền kỹ thuật số đều có cơ chế riêng. Nhưng hầu như tất cả các loại tiền kỹ thuật số đều có một điểm chung, đó là kiến trúc cốt lõi của blockchain.
Trong hầu hết các trường hợp, chuỗi khối được thiết kế để phân cấp, sổ cái điện tử được duy trì bởi một mạng lưới các nút phân tán. Do đó, hệ thống chuỗi khối cho phép các giao dịch tài chính được thực hiện hoàn toàn minh bạch và đáng tin cậy mà không cần qua trung gian. Tiền kỹ thuật số đang dần thay thế các hệ thống thanh toán ngân hàng truyền thống đòi hỏi độ tin cậy cao.
Giống như hầu hết các hệ thống điện toán phân tán, những người tham gia mạng tiền kỹ thuật số cần thường xuyên thảo luận và thống nhất về trạng thái hiện tại của blockchain. Đây là những gì chúng tôi gọi là sự đồng thuận. Tuy nhiên, đạt được sự đồng thuận một cách an toàn và hiệu quả trong mạng phân tán không phải là nhiệm vụ dễ dàng.
Vì vậy, làm thế nào một mạng phân tán gồm các nút máy tính có thể thống nhất các quyết định trong trường hợp một số nút có thể gặp trục trặc hoặc hoạt động không trung thực? Đây là gốc rễ của cái gọi là Vấn đề về các vị tướng Byzantine, đã đưa đến khái niệm về Dung sai lỗi của Byzantine.
Nói một cách đơn giản, vào năm 1982, Bài toán các tướng lĩnh Byzantine được coi là một vấn đề nan giải về mặt logic minh họa các vấn đề liên lạc mà một nhóm tướng lĩnh Byzantine có thể gặp phải khi cố gắng thống nhất một quan điểm thống nhất về bước đi tiếp theo của họ.
Tình huống khó xử này giả định rằng mỗi vị tướng đều có quân đội riêng, mỗi vị trí ở một địa điểm khác nhau xung quanh thành phố mà họ định tấn công. Những vị tướng này cần phải thống nhất về việc nên tấn công hay rút lui. Tấn công hay rút lui không quan trọng, chỉ cần tất cả tướng lĩnh đạt được sự đồng thuận, tức là phối hợp và quyết định cùng nhau thực hiện.
Do đó, chúng ta có thể xem xét các điều kiện sau:
Vấn đề giao tiếp trên liên quan đến việc một vị tướng chỉ có thể liên lạc với một vị tướng khác thông qua tin nhắn do các nhân viên tình báo gửi đến. Do đó, thách thức cốt lõi của Bài toán các vị tướng Byzantine là thông tin có thể bị trì hoãn, bị hỏng hoặc bị mất bằng cách nào đó.
Hơn nữa, ngay cả khi tin nhắn được gửi thành công, một hoặc nhiều tướng có thể lựa chọn hành động ác ý (vì bất kỳ lý do gì) và gửi tin nhắn lừa đảo nhằm gây nhầm lẫn cho các tướng khác, khiến chiến dịch thất bại.
Nếu chúng ta ánh xạ vấn đề nan giải này vào chuỗi khối, thì mỗi vị trí chung đại diện cho một nút mạng và các nút cần đạt được sự đồng thuận về trạng thái hiện tại của hệ thống. Nói cách khác, đa số người tham gia mạng phân tán phải đồng ý và thực hiện các hành động giống nhau để tránh thất bại.
Do đó, cách duy nhất để đạt được sự đồng thuận trong các loại hệ thống phân tán này là phải có ít nhất 2/3 số nút mạng đáng tin cậy và trung thực. Điều này có nghĩa là hệ thống dễ bị lỗi và bị tấn công (chẳng hạn như tấn công 51%) nếu phần lớn các nút trong mạng quyết định hành động độc hại.
Nói một cách đơn giản, Dung sai lỗi Byzantine (BFT) có thể chống lại Bài toán chung của Byzantine ... Hàng loạt thuộc tính hệ thống bị lỗi. Điều này có nghĩa là hệ thống có khả năng chịu lỗi Byzantine có thể tiếp tục hoạt động ngay cả khi một số nút bị lỗi hoặc có hành vi nguy hiểm.
Có rất nhiều giải pháp khả thi cho Bài toán Tướng quân Byzantine, và do đó, có nhiều cách để xây dựng hệ thống Dung sai lỗi Byzantine. Tương tự như vậy, các chuỗi khối có nhiều cách khác nhau để đạt được khả năng chịu lỗi Byzantine, đó là cái mà chúng tôi gọi là thuật toán đồng thuận.
Chúng ta có thể định nghĩa thuật toán đồng thuận là sự đồng thuận mà mạng blockchain đạt được. . Các ví dụ phổ biến nhất là Bằng chứng công việc (PoW) và Bằng chứng cổ phần (PoS). Ở đây chúng tôi lấy Bitcoin làm ví dụ.
Giao thức Bitcoin đặt ra các quy tắc chính của hệ thống và thuật toán đồng thuận bằng chứng công việc giải thích cách tuân thủ các quy tắc này để đạt được sự đồng thuận (ví dụ: trong quá trình xác minh và xác thực giao dịch).
Mặc dù khái niệm về bằng chứng công việc có trước tiền kỹ thuật số nhưng Satoshi Nakamoto đã sửa đổi phiên bản gốc và phát triển một thuật toán bằng chứng công việc cải tiến có thể tạo ra Bitcoin dưới dạng Hệ thống dung sai lỗi Byzantine.
Xin lưu ý rằng thuật toán bằng chứng công việc này không hoàn toàn chống lại các lỗi của Byzantine, nhưng do quy trình khai thác chi phí cao và công nghệ mã hóa cơ bản, bằng chứng công việc đã được chứng minh là một trong những đáng tin cậy nhất trong các mạng blockchain.Phương pháp an toàn và đáng tin cậy. Theo nghĩa này, thuật toán đồng thuận bằng chứng công việc do Satoshi Nakamoto thiết kế được nhiều người coi là một trong những giải pháp tinh vi nhất đối với Dung sai lỗi Byzantine.
Bài toán Tướng quân Byzantine là một vấn đề nan giải thú vị mà cuối cùng đã tạo ra các hệ thống chịu lỗi Byzantine đang được sử dụng rộng rãi trong nhiều lĩnh vực khác nhau. kịch bản . Ngoài ngành công nghiệp blockchain, một số trường hợp sử dụng cho hệ thống Dung sai lỗi Byzantine cũng bao gồm các ngành hàng không, hàng không vũ trụ và năng lượng hạt nhân.
Trong lĩnh vực tiền kỹ thuật số, việc có mạng lưới giao tiếp hiệu quả và cơ chế đồng thuận tốt là rất quan trọng đối với bất kỳ hệ sinh thái blockchain nào. Việc bảo mật các hệ thống này đòi hỏi những nỗ lực không ngừng và có những hạn chế (chẳng hạn như khả năng mở rộng) mà các thuật toán đồng thuận hiện tại chưa thể khắc phục được. Tuy nhiên, bằng chứng công việc và bằng chứng cổ phần là những phương pháp hiệu quả cho các hệ thống có khả năng chịu lỗi Byzantine và các ứng dụng tiềm năng của chúng sẽ truyền cảm hứng cho nhiều đổi mới hơn.