Thuật toán đồng thuận là một quy trình trong khoa học máy tính được sử dụng để đạt được thỏa thuận về một giá trị dữ liệu duy nhất giữa các quy trình hoặc hệ thống phân tán. Thuật toán đồng thuận đóng vai trò quan trọng cấu thành nên đồng tiền điện tử. Vậy thuật toán đồng thuận là gì?
Contents
Thuật toán đồng thuận là gì?
Thuật toán đồng thuận là một tập hợp các quy tắc chi phối hoạt động của một hệ thống phân tán. Các quy tắc này xác định chức năng cơ bản của các bộ phận khác nhau, cách chúng phối hợp với nhau và các điều kiện cần thiết để hoạt động bình thường.
Thuật toán đồng thuận mô tả các quy tắc cần tuân theo để đạt được sự đồng thuận và thường mô tả chi tiết điều kiện để thực hiện các hoạt động này.
Nói chung, thuật toán đồng thuận là một quá trình giải quyết việc đồng bộ hóa dữ liệu giữa các nút không tin cậy lẫn nhau trong một hệ thống phân tán.
Các loại thuật toán đồng thuận
Bằng chứng công việc (PoW)
Proof of Work (PoW) là quá trình tạo ra một hàm băm mật mã và khái niệm này được giới thiệu lần đầu tiên vào năm 1993 bởi Cynthia Dwork và Moni Naor.
Thuật toán POW đã được đề xuất trước khi tiền điện tử xuất hiện và lần đầu tiên được sử dụng trong các kịch bản chống thư rác.
Trong hệ thống POW, trình xác thực blockchain phải lấy dữ liệu từ tiêu đề khối làm đầu vào và liên tục chạy nó thông qua một hàm băm mật mã. Trình xác thực băm các biến thể nhỏ của dữ liệu đầu vào bằng cách bao gồm một số tùy ý được gọi là số không mỗi khi dữ liệu đầu vào được chạy qua hàm băm mật mã.
Vì nhiều dữ liệu thô và dữ liệu trung gian bị bỏ qua trong quá trình băm, nên hàm băm không thể thay đổi được.
Kết quả của các hàm băm rất ngẫu nhiên để đảm bảo sự cạnh tranh công bằng giữa các nút. Các hàm xác thực được sử dụng để xác định phạm vi giá trị băm tuân theo các quy tắc để đo lường khối lượng công việc.
PoW cần mức điện năng xử lý cao để quyết định dữ liệu nào được thêm vào khối tiếp theo trong chuỗi khối. Máy tính chuyên dụng được gọi là ASIC được yêu cầu để tính toán các vấn đề toán học phức tạp cần thiết cho hệ thống PoW.
Thuật toán POW là một thuật toán tính toán chuyên sâu, tiêu tốn năng lượng và tài nguyên đáng kể. Hàng năm, mạng bitcoin tiêu thụ khoảng 57,6 TWh điện, cuộc cạnh tranh khai thác bitcoin đang tiếp tục đồng nghĩa với việc sẽ tiêu thụ nhiều điện hơn.
Bằng chứng cổ phần (PoS)
Thuật toán đồng thuận PoS được tạo ra vào năm 2011 để thay thế cho PoW. Mặc dù PoS và PoW có mục tiêu tương tự nhau nhưng chúng thể hiện một số khác biệt và tính năng cơ bản, đặc biệt là trong quá trình xác nhận các khối mới trên mạng blockchain.
PoS khác với thuật toán đồng thuận PoW là nó có một cơ chế trong đó khối được xác nhận dựa trên cổ phần của những người tham gia mạng lưới. Không giống như việc chạy các hàm băm, các trình xác thực đóng góp tài nguyên dưới dạng tiền kỹ thuật số hoặc mã thông báo. Trình xác nhận của mọi khối sau đó được chọn ngẫu nhiên từ các bên liên quan dựa trên lượng sức mạnh tính toán được phân bổ.
Mỗi hệ thống PoS có thể triển khai thuật toán theo những cách khác nhau nhưng nhìn chung, blockchain được bảo đảm bằng quy trình bầu cử giả ngẫu nhiên xem xét việc phân bổ.
Ưu điểm lớn nhất của thuật toán POS là nó không cần hoạt động chuyên sâu. So với thuật toán PoW, PoS không chỉ tiêu thụ ít năng lượng hơn mà còn hoạt động hiệu quả hơn. Hơn nữa, tiêu thụ năng lượng thấp hơn làm cho việc tham gia trở ít tốn kém hơn cho phép nhiều người tham gia vào mạng lưới phi tập trung.
Bằng chứng về thời gian đã trôi qua (PoET)
Hệ thống thuật toán đồng thuận PoET được Intel phát triển để giải quyết thách thức tính toán của “cuộc bầu cử nhà lãnh đạo ngẫu nhiên”. Nó được phát hành như một phần của sổ tay tham khảo lập trình Software Guard Extensions (SGX).
PoET hiện được sử dụng bởi nhiều blockchain riêng tư vì nó dựa trên hệ thống hẹn giờ ngẫu nhiên cho những người tham gia mạng thay vì sử dụng phần cứng khai thác như trong trường hợp PoW. Mỗi nút blockchain tham gia trong mạng cần phải đợi một khoảng thời gian được chọn ngẫu nhiên và bất kỳ ai có thời gian hoàn thành sẽ thắng khối mới và xác nhận nó.
Ứng dụng của thuật toán đồng thuận
Các thuật toán đồng thuận hỗ trợ nhiều hệ thống trong thực tế như: xếp hạng trang web của Google, lưới thông minh, đồng bộ hóa đồng hồ và điều khiển drone.
Blockchain được liên kết phổ biến nhất với Bitcoin cũng dựa vào các thuật toán đồng thuận để đạt được thỏa thuận giữa các nút. Blockchain có thể được xem là một cơ sở dữ liệu phi tập trung được quản lý bởi các máy tính phân tán trên mạng ngang hàng (P2P). Mỗi công ty ngang hàng duy trì một bản sao của sổ cái để ngăn chặn điểm lỗi (SPOF).
Bitcoin sử dụng thuật toán đồng thuận PoW để đảm bảo an ninh trong một mạng không tin cậy thông qua cơ chế đảm bảo rằng nỗ lực khai thác được thể hiện trong khối do người khai thác gửi.
Phần mềm trên máy tính truy cập khả năng xử lý của họ để giải các thuật toán liên quan đến giao dịch. Khối là một bằng chứng băm được mã hóa về công việc được tạo ra trong một quy trình sử dụng máy tính chuyên sâu.