Show notes
Đồng thuận trong BlockchainCác công nghệ chuỗi khối đứng đầu danh sách các xu hướng nóng của năm 2017. Nhiều công ty đã quay lại sản phẩm của họ với các công nghệ blockchain. Các đối thủ cạnh tranh sử dụng các cách tiếp cận khác nhau cho các công nghệ blockchain, nhấn mạnh các khía cạnh khác nhau và quảng cáo chúng là các tính năng cho khách hàng của họ. Trong bài đăng này, tôi sẽ cung cấp một cái nhìn tổng quan về vai trò của một trong những khía cạnh cụ thể của các công nghệ blockchain - sự đồng thuận của nhóm.Blockchains rất đa dạng và có thể được tiếp cận từ nhiều khía cạnh khác nhau. Vì mục đích của bài viết này, tôi muốn định nghĩa một blockchain là một cơ sở dữ liệu công khai, phi tập trung, giữ các hồ sơ công khai theo kiểu chỉ có thêm. Hơn nữa, một khi được thêm vào cơ sở dữ liệu (blockchain), một bản ghi không thể sửa đổi và rất khó để làm sai mục. Tính năng cuối cùng này được gọi là kiên trì. Khi một mục trong cơ sở dữ liệu (blockchain) cần được cập nhật, một bản ghi mới phải được thêm vào thông tin hiện có. Cuối cùng, mỗi bản ghi có thể được xem bởi bất kỳ thành viên nào, cho phép mọi người xác minh riêng lẻ tính xác thực của từng giao dịch được ghi cho bất kỳ mục nhập nào trong cơ sở dữ liệu (blockchain). Sự minh bạch này có nghĩa là blockchains là có thể kiểm tra.Bởi vì chúng ta không thể chắc chắn về độ tin cậy của tác giả, điều quan trọng là tất cả thông tin mới phải được xem xét và xác nhận trước khi được chấp thuận. Đánh giá này dẫn đến "sự đồng thuận" chúng ta đang kiểm tra ở đây.Có bốn phương pháp chính để tìm sự đồng thuận trong công nghệ blockchain (và tất cả các hệ thống phân tán): thuật toán dung sai lỗi thực tế (PBFT), thuật toán bằng chứng công việc (PoW), thuật toán bằng chứng cổ phần (PoS) và thuật toán bằng chứng cổ phần được ủy quyền (DPoS).Các thuật toán Byzantine khả năng chịu lỗi thực tế (PBFT), được sử dụng để thiết lập sự đồng thuận trong các hệ thống blockchain, chỉ là một trong những giải pháp tiềm năng đó. Ba ví dụ về blockchains dựa vào PBFT cho các nhược điểm là Hyperledger, Stellar và Ripple. Phương pháp nổi tiếng nhất để đạt được sự đồng thuận trên blockchain là bằng chứng công việc (PoW), được sử dụng bởi Bitcoin. Trái ngược với giải pháp trong PBFT, PoW không yêu cầu tất cả các bên trên mạng (tất cả các nút) gửi kết luận cá nhân của họ để đạt được sự đồng thuận. Thay vào đó, PoW là một hệ thống sử dụng 'hàm băm' để tạo các điều kiện theo đó một người tham gia được phép công bố kết luận của họ về thông tin đã gửi và những kết luận đó có thể được xác minh độc lập bởi tất cả những người tham gia hệ thống khác. Kết luận sai được ngăn chặn bởi các tham số của hàm băm, điều này đảm bảo rằng thông tin sai sẽ không thể tính toán theo cách chấp nhận được. Trong hệ thống Bitcoin cụ thể, người tham gia đã xác minh công khai thông tin thay mặt cho mạng lần lượt được khen thưởng với Bitcoin mới được tạo ra ('khai thác'), vì sự tham gia của nó (rất tốn kém về chi phí năng lượng và tài nguyên điện toán). Do đó, quá trình tìm kiếm 'băm' hợp lệ này (giải pháp cho 'hàm băm' được tạo bởi đầu vào thông báo), được gọi là 'khai thác'. Khuyến khích tham gia vào mạng đảm bảo sự tham gia rộng rãi, từ đó đảm bảo mạng mạnh hơn và blockchain (cơ sở dữ liệu) an toàn hơn.Một biến thể thứ ba trong việc thiết lập sự đồng thuận trên các hệ thống blockchain rất giống với hệ thống PoW đã nói ở trên, tuy nhiên việc tham gia vào quá trình xây dựng sự đồng thuận bị hạn chế đối với các bên được xác định là có cổ phần hợp pháp trong blockchain (ví dụ: các cá nhân sở hữu bitcoin hoặc các thực thể hợp đồng thông minh được lưu trong cùng một cơ sở dữ liệu blockchain). Biến thể thứ ba này, được gọi là thuật toán bằng chứng cổ phần (PoS) thay thế phép tính hàm băm bằng chữ ký số đơn giản chứng minh quyền sở hữu cổ phần. Mạng chọn một cá nhân để phê duyệt tin nhắn mới dựa trên tỷ lệ cổ phần của họ trong mạng. Phương pháp cuối cùng là hệ thống bằng chứng cổ phần được ủy quyền (DPoS) .

