Tất tần tật về các thuật toán đồng thuận “hot” nhất hiện nay

Đằng sau mỗi loại tiền mã hóa vĩ đại là một thuật toán đồng thuận bất bại. Không có thuật toán đồng thuận nào hoàn hảo cả, nhưng chúng đều có thể phát huy được hết khả năng của mình. Trong thế giới crypto, các thuật toán đồng thuận tồn tại để ngăn ngừa double spending (chi tiêu 2 lần với cùng 1 số tiền). Dưới đây là một số thuật toán đồng thuận phổ biến nhất thời điểm hiện tại, từ Blockchain cho đến DAGs và nhiều hơn nữa.

Proof-of-Work (Bằng chứng xử lý) – Sự đồng thuận hàng đầu

Các ứng dụng phổ biến: Bitcoin, Ethereum, Litecoin, Dogecoin, (Phần lớn)
Ưu điểm: Chúng ta biết được nó có hoạt động
Nhược điểm: Năng suất chậm, là mối nguy hại cho hành tinh

Proof-of-Work (PoW) là thuật toán đồng thuận đầu tiên của công nghệ Blockchain. Được thiết lập bởi Satoshi Nakamoto để áp dụng trong công nghệ Blockchain của Bitcoin, chúng ta phải cảm ơn thuật toán PoW này vì nó đã đem lại các bộ máy đào to lớn và sự tiệu thụ năng lượng trên khắp thế giới. Chúng ta biết là nó có hoạt động (như vậy là hơn nhiều thuật toán đồng thuận khác rồi), nhưng trong giai đoạn này của cuộc chơi nó bắt đầu được cân nhắc là một di sản công nghệ. Kể cả Ethereum cũng đang di dời ra khỏi PoW để chuyển sang PoS (Bằng chứng cổ phần) – thứ có nhiều năng lượng và hiệu quả kinh tế hơn. Giữa vô vàn sự lựa chọn mới mẻ, chúng ta khó mà thấy được tại sao một công nghệ Blockchain mới lại sử dụng thuật toán PoW này.

Với PoW, các thợ đào sẽ phải giải quyết những bài toán khó và vô nghĩa để tạo ra các block. PoW vận hành trên một cơ chế “chuỗi dài nhất sẽ thắng”. Vậy giả sử hầu hết các thợ đào làm việc trên một chuỗi, chuỗi đó sẽ trở nên dài nhất và đáng tin cậy nhất. Do vậy bitcoin sẽ được đảm bảo với điều kiện trên 50% kết quả của các thợ đào đều mang tính trung thực.

Proof-of-Stake (Bằng chứng Cổ phần) – “Lính mới”

Các ứng dụng phổ biến: Decred, Ethereum (sắp tới), Peercoin
Ưu điểm: Có tính phân quyền hơn; hiệu suất năng lượng
Nhược điểm: Không có gì bị đe dọa
Với Bằng chứng Cổ phần (PoS), các block không được tạo ra bởi các thợ đào làm việc, mà bởi các “minter” đầu tư (staking) token của họ để “cá cược” vào những block có giá trị. Trong trường hợp có một đợt fork, các minter sẽ dành thời gian lựa chọn đợt fork để hỗ trợ. Giả sử phần lớn mọi người lựa chọn fork chính xác, những người phê duyệt mà lựa chọn fork sai lệch có thể sẽ “đánh mất cổ phần của họ” trong đợt fork chính xác.

Vấn đề lớn nhất của PoS đó là không có gì bị đe dọa cả. Mối bận tâm này bắt nguồn từ việc những người phê duyệt (validators) không phải bỏ ra khả năng tính toán để hỗ trợ một đợt fork, khác với PoW, các validator có thể chọn cả hai phía cho mỗi đợt fork diễn ra. Các đợt fork trong PoS lúc đó có thể trở nên phổ biến hơn là trong PoW, điều này khiến cho mọi người lo lắng nó có thể gây hại đến uy tín của loại tiền tệ này.

Delegated Proof-of-Stake (Bằng chứng ủy quyền cổ phần) – Lựa chọn các Validator của bạn

Các ứng dụng phổ biến: Steemit, EOS, BitShares
Ưu điểm: Các giao dịch giá rẻ; có khả năng mở rộng; hiệu suất năng lượng
Nhược điểm: Một phần mang tính tập trung

Bằng chứng ủy quyền cổ phần (DPoS) là ý tưởng của Daniel Larimer, thực tế nó khác với PoS. Với DPoS, những người nắm giữ token không lựa chọn dựa trên giá trị của các block, mà lựa chọn ra các đại diện để thực hiện việc xác nhận thay cho họ. Nhìn chung có khoảng từ 21 đến 100 đại diện được tuyển chọn trong một hệ thống DPoS. Các đại diện được sắp xếp theo định kỳ và nhận được lệnh để di chuyển các blcock.

Việc có ít đại diện giúp họ sắp xếp được hiệu quả và thiết lập các slot thời gian được chỉ định cho mỗi đại diện để phát hành các block của họ. Nếu các đại diện liên tục bỏ lỡ các block của họ hoặc đưa ra các giao dịch không có hiệu lực, các staker sẽ bầu để loại họ ra ngoài và thay thế bằng một đại diện tốt hơn.

Với DPoS, các thợ đào có thể cùng hợp tác để tạo ra block thay vì cạnh tranh nhau như trong PoW và PoS. Bằng cách tập trung hóa một phần quá trình thiết lập của các block, DPoS có khả năng thực hiện các lệnh quan trọng nhanh hơn đa số các thuật toán đồng thuận khác. EOS được ấn định là blockchain đầu tiên với thời gian block < 1 giây! Nhanh hơn thời gian block 10 phút của Bitcoin.

Proof-of-Authority (Thuật toán ủy quyền) – Tin vào “quý ngài biết tuốt”

Các ứng dụng phổ biến: POA.Network, Ethereum Kovan testnet
Ưu điểm: Năng suất cao; có khả năng mở rộng
Nhược điểm: Hệ thống theo mô hình tập trung
Thuật toán ủy quyền (PoA) là một thuật toán đồng thuận nơi các giao dịch được xác nhận bằng các tài khoản được phê chuẩn, kiểu như là “các admin” của hệ thống. Các tài khoản này chính là căn cứ mà các node khác nhận được giá trị của chúng. PoA có năng suất cao, và được tối ưu hóa cho các mạng lưới riêng tư. Bạn khó có thể thấy PoA vận hành trên một chuỗi công khai vì bản chất tập trung của nó.

Proof-of-Weight (PoWeight) — Càng lớn càng tốt

Các ứng dụng phổ biến: Algorand, Filecoin, Chia
Ưu điểm: Có thể tùy chỉnh, có khả năng mở rộng

Nhược điểm: Quá trình thúc đẩy có thể là một sự thử thách PoWeight là một phạm vi rộng lớn của các thuật toán đồng thuận dựa trên mô hình đồng thuận Algorand. Ý tưởng cơ bản ở đây đó là với PoS, phần trăm token bạn sở hữu trong mạng lưới đại diện cho tính khả thi về việc “khám phá” block tiếp theo của bạn, còn trong một hệ thống PoWeight, các giá trị tương đối to lớn khác được sử dụng.

Ví dụ như: Thuật toán Proof-of-Spacetime của Filecoin được đánh giá dựa trên số lượng dữ liệu IPFS bạn đang lưu giữ. Các hệ thống khác bao gồm cả sức chứa cho những thứ như là Thuật toán Proof-of-Reputation.

Byzantine Fault Tolerance (BFT) Cơ chế đồng thuận chống gian lận – Bao vây Blockchain!

Các ứng dụng phổ biến: Hyperledger, Stellar, Dispatch, và Ripple
Ưu điểm: Năng suất cao; chi phí thấp; có khả năng mở rộng
Nhược điểm: không được tin tưởng hoàn toàn

Một vấn đề kinh điển đó là điện toán phân tán mà thường được giải thích bằng bài toán các vị tướng Byzantine (Byzantine generals). Bài toán ở đây là một vài vị tướng Byzantine và các đội quân tương ứng của quân đoàn Byzantine đã bao vây cả một thành phố. Họ phải cùng nhau quyết định có nên tấn công hay không. Nếu có một vài vị tướng tấn công mà không có những người còn lại, thì cuộc bao vây của họ sẽ kết thúc trong một thảm kịch. Các vị tướng thường được phân chia ra các phía cách xa nhau và phải truyền thông điệp để giao tiếp. Một vài giao thức cryptocurrency áp dụng một số phiên bản của BFT để đạt đến sự đồng thuận, mỗi loại có những ưu, nhược điểm riêng:

Practical Byzantine Fault Tolerance (PBFT) (Cơ chế BFT thực tế): Đây là một trong những giải pháp đầu tiên cho vấn đề này. Hiện đang được sử dụng bởi Hyperledger Fabric, với (<20, sau đó mọi thứ trở nên hơi) một ít các vị tướng được bầu chọn trước của PBTF điều hành hiệu quả một cách đáng kinh ngạc. Ưu điểm: Năng suất giao dịch cao. Nhược điểm: Mô hình tập trung/ cần được cho phép.

Federated Byzantine Agreement (Liên minh đồng thuận): FBA là một loại giải pháp khác cho bài toán các vị tướng Byzantine, được sử dụng bởi các cryptocurrency như Stellar và Ripple. Ý tưởng chung ở đây đó là mỗi vị tướng Byzantine, chịu trách nhiệm cho chuỗi của mình, phải phân loại các thông điệp khi họ tạo ra các giá trị. Trong Ripple, các vị tướng (validators) được bầu chọn trước bởi nền tảng Ripple. Trong Stellar, mọi người có thể trở thành một validator nên bạn được chọn bất kỳ validator nào để tin tưởng.

Với năng suất đáng kinh ngạc, chi phí giao dịch thấp và khả năng mở rộng mạng lưới của nó, tôi tin rằng FBA sẽ dẫn đầu các thuật toán đồng thuận mà chúng ta đã khám phá ra được cho sự đồng thuận phân tán.

Directed Acyclic Graphs (Thuật toán sắp xếp tô pô) – Sát thủ Blockchain!

Các ứng dụng phổ biến: Iota, Hashgraph, Raiblocks/Nano
Ưu điểm: Khả năng mở rộng mạng lưới, chi phí thấp
Nhược điểm: Phụ thuộc vào sự thi hành
DAGs hiện đang “hot” hơn cả trang cá nhân của Vitalik trên Tinder. DAGs là một dạng thuật toán đồng thuận không sử dụng đến kết cấu dữ liệu Blockchain và giải quyết các giao dịch phần lớn là không đồng bộ. Ưu điểm lớn nhất của DAGs là có vô số các giao dịch mỗi giây về mặt lý thuyết, nhưng DAGs cũng có điểm mạnh và điểm yếu như những thuật toán khác.

Tangle: Tangle là thuật toán đồng thuận DAGs được sử dụng bởi IOTA. Để gửi đi một giao dịch IOTA, bạn cần phải xác nhận hai giao dịch trước đó mà bạn đã nhận được. Tính đồng thuận 2-đổi-1 và trả trước này đã gia tăng hiệu quả của các giao dịch và sẽ ngày càng nhiều giao dịch hơn nữa sẽ được thêm vào Tangle. Bởi vì tính đồng thuận được tạo ra bởi các giao dịch, trên lý thuyết, nếu ai đó có thể tạo ra 1/3 số giao dịch, họ có thể thuyết phục phần còn lại của mạng lưới rằng giao dịch không hợp lệ của họ là hợp lệ. Cho tới khi có đủ giao dịch tạo ra 1/3 số lượng giao dịch sẽ trở nên không thể thực hiện được, IOTA kiểu như “kiểm tra hai lần” toàn bộ các giao dịch của mạng lưới trên một node tập trung có tên “The Coordinator”. IOTA cho rằng The Coordinator hoạt động như bánh xe tàu hỏa cho hệ thống, và sẽ được thay thế một khi Tangle đủ lớn.

Hashgraph: Hashgraph là một sự đồng thuận theo giao thức Gossip (tán gẫu) được phát triển bởi Leemon Baird. Các node chia sẻ các giao dịch của chúng với các node ngẫu nhiên khác để rồi cuối cùng tất cả các giao dịch được “tán gẫu” xung quanh tất cả các node. Hashgraph tất nhanh (hơn 250,000 giao dịch mỗi giây) nhưng không thể kháng cự khỏi những cuộc tấn công Sybil. Vậy nên Hashgraph là một sự lựa chọn tuyệt vời cho mạng lưới riêng tư, nhưng bạn sẽ không thấy nó hoạt động trên một mạng lưới công khai như Ethereum hay Dispatch trong thời gian tới đâu.

Block-lattice: Nano (trước đó được gọi là Raiblocks) vận hành với một vòng xoắn trên một Blockchain có tên là Block-lattice. Block-lattice là một kết cấu nơi những người dùng (address) có được chuỗi riêng của họ mà chỉ họ mới có thể viết được trên đó, và mọi người đều nắm giữ bản sao của tất cả các chuỗi. Mỗi giao dịch được chia ra thành hai block trên chuỗi của người gửi và nhận được một block trên mỗi chuỗi của người nhận. Block-lattice dường như quá đơn giản để hoạt động, những nó đã “tự do bay nhảy” ngoài chốn hoang dã. Kết cấu độc đáo của Block-lattice đã khiến nó bị phơi bày trước các hướng tấn công đặc biệt như sự tấn công Penny-spend (tấn công vào việc chi tiêu tài sản), nơi mà những kẻ tấn công “thổi phồng” số lượng các chuỗi node phải theo dõi bằng cách gửi một lượng không đáng kể đến một hàng dài các ví trống.

SPECTRE: Sự nối tiếp của các sự kiện Bằng chứng Xử lý (PoW): Quá trình xác nhận các giao dịch thông qua Recursive Elections (Các bầu chọn đệ quy), được gọi là SPECTRE, là một giải pháp đo lường Bitcoin được đưa ra, tận dụng sự kết hợp giữa PoW và DAGs để đạt được tính đồng thuận mở rộng. Với SPECTRE, các block được đào nhắm đến không chỉ một mà nhiều block “mẹ”, vậy nên mạng lưới có thể giải quyết nhiều block trong một giây. Việc đào một block nhắm đến các block “mẹ” hỗ trợ tính hiệu quả của các block đó. So với “chuỗi dài nhất sẽ thắng” của PoW, SPECTRE dùng sử dụng thứ khác kiểu như là “các block với nhiều block con nhất sẽ thắng”. SPECTRE vẫn chưa được thử nghiệm kĩ năng “sinh tồn” ở ngoài chốn “hoang dã”, và các hướng tấn công mới rất dễ phát sinh, nhưng nó được coi như một giải pháp tiềm năng để sửa đổi Bitcoin.

Nguồn: Sưu Tầm

Leave a Reply

error: Bài viết được bảo vệ!