Giải thích chi tiết về mô hình đồng thuận Kaspa DAG-KNIGHT: Cách đạt tỷ lệ chịu lỗi 1/2 trong mô hình đồng bộ hóa một phần
Nguồn gốc: KasMedia
Tựa đề gốc: THE MASTER OF TIME: DAGKNIGHT GIẢI QUYẾT MỘT KẾT QUẢ KHÔNG THỂ ĐẠT ĐƯỢC BẰNG CÁC MÔ HÌNH BITCOIN, ETHEREUM VÀ BFT CỔ ĐIỂN
Tác giả gốc : Nicholas Sismil, cựu trưởng bộ phận nghiên cứu bộ phận niêm yết tiền tệ của Binance.US
Quan điểm: Có một kết luận nổi tiếng bất khả thi trong lý thuyết blockchain và hệ thống phân tán: theo mô hình truyền thông được đồng bộ hóa không đầy đủ, không có giao thức hoặc mạng nào có thể đạt được 1/2 khả năng chịu lỗi. Đây là vấn đề mà không giao thức nào khác như Bitcoin, Ethereum và mô hình BFT cổ điển có thể giải quyết, nhưng mô hình đồng thuận DAG-KNIGHT mà Kaspa sẽ triển khai thì có thể. Chìa khóa để giải quyết vấn đề này là đạt được độ chính xác mạnh mẽ của mạng trong việc mô phỏng các quy trình trong thế giới thực (ví dụ: khi đối mặt với độ trễ và các yếu tố gây nhiễu khác), từ đó trở thành người làm chủ thời gian trong mạng.
Trong bài viết này, tôi sẽ tập trung vào những câu hỏi sau:
1. Bản chất của hệ thống phân tán;
2. Làm thế nào để cân bằng giữa tính đúng đắn, kịp thời và khả năng chịu lỗi? ;
3. Tính hữu hạn và tính khả dụng động (tức là tính hữu hạn xác suất so với tính hữu hạn tuyệt đối);
4. Hiệu suất và những thiếu sót của Bitcoin, mô hình BFT cổ điển và Ethereum trên các thuộc tính này;
5. DAG-KNIGHT vượt qua kết quả bất khả thi này và giải quyết những thiếu sót của tất cả các giao thức khác như thế nào;
6. Cuối cùng tóm tắt cách DAG-KNIGHT trở thành người làm chủ thời gian và điều này có ý nghĩa gì đối với lý thuyết hệ thống phân tán.
Định nghĩa hệ thống phân tán
Có nhiều định nghĩa về hệ thống phân tán. Leslie Lamport đã mô tả nó theo cách này trong một cuộc trao đổi năm 1987: Trong một hệ thống phân tán, một lỗi trên máy tính mà bạn thậm chí không biết tồn tại trong hệ thống có thể khiến máy tính của bạn không thể sử dụng được. Trong cuốn sách "Sự đồng thuận về Blockchain", Imran Bashir định nghĩa một hệ thống phân tán là một tập hợp các máy tính ẩn danh hoạt động tự chủ và hợp tác để đạt được mục tiêu chung thông qua mạng truyền tin nhắn.
Về cơ bản, mục tiêu của hệ thống phân tán là để tất cả các thành phần của nó thống nhất về trạng thái chung của hệ thống—để đạt được sự đồng thuận. Mặc dù Facebook, Google, Twitter, Amazon, v.v. là những công ty được quản lý tập trung nhưng tất cả đều sử dụng hệ thống phân tán (cũng như World Wide Web). Trong bài viết này, tôi sẽ thảo luận về lịch sử phát triển của một hệ thống phân tán khác bao gồm blockchain, sổ cái phân tán và biểu đồ tuần hoàn theo hướng khối (blockDAG).
Đầu tiên, chúng ta cần hiểu một số đặc tính cốt lõi của hệ thống phân tán: tính chính xác, tính kịp thời và khả năng chịu lỗi bên trong hệ thống.
Tính chính xác, kịp thời và khả năng chịu lỗi trong các hệ thống phân tán
Leslie Lamport định nghĩa khái niệm về tính đúng đắn của hệ thống phân tán trong Chứng minh tính đúng đắn của bộ xử lý đa bộ xử lý. Ông tin rằng một hệ thống phân tán muốn hoạt động chính xác phải có cả tính sống động và tính bảo mật. An toàn đề cập đến việc không thể hủy bỏ một quyết định đã được đưa ra, trong khi tính sống động đề cập đến việc không thể trì hoãn một quyết định vô thời hạn. Nói cách khác, tính bảo mật đảm bảo rằng các nút trung thực khác nhau sẽ không bao giờ đưa ra các quyết định khác nhau, trong khi tính sống động đảm bảo rằng mọi nút trung thực cuối cùng sẽ đưa ra một quyết định.
Như chúng ta sẽ thấy, một số hệ thống phân tán thích sự sống động hơn, trong khi những hệ thống khác lại thích sự an toàn hơn.
Tính kịp thời và khả năng chịu lỗi
Tính kịp thời phản ánh mô hình hành vi giao tiếp trong các hệ thống phân tán. Mô hình truyền thông bao gồm các cài đặt về độ trễ mạng cũng như độ trễ và tốc độ của bộ xử lý. Về cơ bản, các cài đặt này xác định mức độ mà kẻ thù mạng có thể kiểm soát độ trễ của tin nhắn trong hệ thống. Nói cách khác, mô hình truyền thông xác định các giới hạn về khả năng can thiệp vào truyền thông của kẻ thù mạng.
Tùy thuộc vào phương pháp đồng bộ hóa, có ba mô hình truyền thông chính: đồng bộ (hoàn toàn), không đồng bộ và đồng bộ một phần. Mỗi mô hình xác định khả năng chịu lỗi của hệ thống, tức là mô hình truyền thông xác định xem giao thức có thể chịu được tỷ lệ lỗi 1/3 hay 1/2 hay không.
(Đầy đủ) Mô hình đồng bộ
Trong mô hình đồng bộ hóa, có giới hạn độ trễ tin nhắn tối đa được biết trước Δ, tất cả tin nhắn phải được gửi trong thời gian này và tất cả những người tham gia trong mạng đều biết thời gian cần thiết để gửi tin nhắn. Do đó, kẻ tấn công chỉ có thể trì hoãn thời gian gửi tin nhắn tối đa là δ. Ví dụ: nếu Bitcoin áp dụng mô hình đồng bộ, nó hoạt động theo quy tắc chuỗi dài nhất, tuân theo độ trễ tối đa L của mỗi khối sẽ được cập nhật liên tục và luôn đảm bảo thời gian đến của khối là khoảng 10 phút. độ trễ giới hạn trên Δ là 10 phút.
Hệ thống đồng bộ rất đơn giản và mang lại kết quả tích cực mạnh mẽ. Nhưng chúng quá hạn chế để mô phỏng hiệu quả thế giới thực (chẳng hạn như mất mạng và các cuộc tấn công kéo dài bất ngờ) mà không ảnh hưởng đến bảo mật. Ví dụ: đặt độ trễ dài hơn Δ có thể mang lại kết quả tích cực mạnh mẽ, đại diện cho thế giới thực, nhưng sẽ dẫn đến thời gian chờ lâu hơn và suy giảm hiệu suất. Ngược lại, đặt độ trễ ngắn hơn Δ có thể cải thiện hiệu suất nhưng có thể không mô phỏng chính xác thế giới thực, ảnh hưởng đến bảo mật. Nói cách khác, nếu những người tham gia mạng đánh giá quá cao độ trễ, hệ thống sẽ chạy chậm hơn thực tế; nếu không, hệ thống sẽ kém an toàn hơn.

Hơn nữa, cố gắng tìm ra sự cân bằng lý tưởng giữa cả hai là điều không hề dễ dàng. Ví dụ: nếu người gửi phát một tin nhắn đến hai người nhận và một tin nhắn đến sau Δ−ϵ và tin nhắn còn lại sau Δ+ϵ thì hành vi trong thế giới thực sẽ khác với những gì đặc tả mô hình mong đợi. hệ thống.
Bất chấp những vấn đề này với mô hình đồng bộ, nó vẫn đạt được giới hạn khả năng chịu lỗi tối đa là 1/2. Điều này là do chúng ta có thể giả định rằng mọi nút trong hệ thống đều nhìn thấy mọi phiếu bầu trong một khoảng thời gian cố định, dẫn đến sự đồng thuận. Cụ thể, nếu có n nút trong hệ thống, trong đó f là các nút bị lỗi, chúng ta hy vọng rằng ít nhất f + 1 thông báo từ các nút đúng sẽ nhiều hơn số lượng tin nhắn từ f nút bị lỗi. Khi tất cả các tin nhắn đã được nhận, theo mô hình đồng bộ hóa, có thể đạt được sự đồng thuận như vậy.
Đó là nếu:
n ≥ f+(f+ 1)
f ≤ (n-1)/2
f < n/2
Khi đó khả năng chịu lỗi tối đa đạt ½.
Mô hình không đồng bộ
Mô hình không đồng bộ cố gắng khắc phục các vấn đề mà mô hình đồng bộ gặp phải bằng cách không đưa ra bất kỳ giả định nào về độ trễ mạng: không có giới hạn về độ trễ mạng ngay cả giữa các nút hoạt động bình thường. Điều này có hai ưu điểm: thứ nhất, không có giới hạn thời gian liên lạc, do đó các tin nhắn không đồng bộ (trễ) không thể vô tình làm ảnh hưởng đến bảo mật; thứ hai, vì không có thời gian chờ cố định, các nút có thể thích ứng với độ trễ thực tế trong hệ thống và vẫn duy trì; tích cực. .
Tuy nhiên, điều này đi kèm với một số chi phí. Fischer, Lynch và Patterson đã đề xuất một định lý bất khả thi trong bài báo "Không thể có tính nhất quán phân tán với một quy trình bị lỗi" rằng theo mô hình không đồng bộ, tính nhất quán không thể được đảm bảo ngay cả khi chỉ có một nút bị lỗi. Nói cách khác, trong một mô hình không đồng bộ, chỉ cần một nút xấu cũng đủ khiến tính nhất quán không thể thực hiện được.
Tuy nhiên, có thể đạt được sự đồng thuận trong thời gian t giây theo thuật toán ngẫu nhiên, vì xác suất đạt được sự đồng thuận theo cấp số nhân tiến tới 1 khi t tăng lên. Do đó, các thuật toán không đồng bộ có thể nhất quán chỉ có thể đạt được khả năng chịu lỗi 1/3 chứ không phải ½.

Hơn nữa, Eric Brewer đã chứng minh rằng tính nhất quán (bảo mật), tính sống động và khả năng chịu phân vùng không thể cùng tồn tại trong một hệ thống phân tán không đồng bộ. Dung sai phân vùng đề cập đến việc đảm bảo rằng hệ thống vẫn có thể hoạt động trong khoảng thời gian mạng bị phân vùng (không thể gửi tin nhắn giữa các nút nhất định). Do đó, trong một hệ thống không đồng bộ, có một bộ ba bất khả thi - bạn phải chọn hai trong số ba khả năng bảo mật, khả năng tồn tại và dung sai phân vùng, nhưng không phải tất cả chúng.
Mặc dù định lý này áp dụng cho các hệ thống mô hình không đồng bộ nhưng việc phân vùng mạng vẫn tuân theo giả định không đồng bộ và xảy ra trong tất cả các mô hình định thời. Do đó, bất kể mô hình được sử dụng là gì, hệ thống đều phải tập trung vào tính sống động hoặc tính bảo mật trong quá trình phân vùng mạng.

mô hình đồng bộ hóa một phần
Hệ thống có hai cách để đạt được sự đồng bộ hóa một phần. Cách tiếp cận đầu tiên là áp dụng mô hình đồng bộ khi hệ thống đang chạy bình thường và chuyển sang mô hình không đồng bộ khi xảy ra lỗi (chẳng hạn như lỗi mạng hoặc bị tấn công). Cách tiếp cận này giả định rằng có một đồng hồ đang quan sát mạng toàn cầu và tham số Δ chỉ định độ trễ tối đa có thể có cho các tin nhắn trong giai đoạn đồng bộ hóa. Tuy nhiên, trong pha không đồng bộ, tham số Δ không có tác dụng và thời gian ổn định toàn cầu (GST) xác định thời điểm mô hình truyền thông chuyển từ đồng bộ sang không đồng bộ. Phiên bản này được gọi là phiên bản GST.
Cách thứ hai là giả sử rằng không có giới hạn nào được biết đến trong việc gửi tin nhắn, nhưng có một giới hạn trên hữu hạn chưa xác định δ, giới hạn này có thể được chọn bởi đối thủ mạng. Trong phiên bản này, không có GST và không có chuyển đổi giữa các pha không đồng bộ và đồng bộ. Thay vào đó, tin nhắn sẽ luôn được gửi trong vòng Δ bước thời gian, giống như trong mô hình đồng bộ.

Điều đặc biệt cần lưu ý là mô hình đồng bộ hóa một phần có khả năng chịu lỗi là 1/3. Do một kết quả không thể xảy ra được chứng minh chính thức trong công trình của Dwork, Lynch và Stock, mô hình được đồng bộ hóa một phần không thể đạt được khả năng chịu lỗi bằng 1/2.
Tính hữu hạn và tính khả dụng động
Trong lịch sử, các giao thức được chia thành hai loại: giao thức dựa trên chuỗi dài nhất và giao thức đồng thuận BFT cổ điển. Cái trước áp dụng mô hình đồng bộ hóa và tuân theo sự đồng thuận của Nakamoto, tức là quy tắc chuỗi dài nhất: khi có sự bất đồng giữa các chuỗi, chuỗi dài nhất sẽ được chọn. Cái sau áp dụng mô hình đồng bộ hóa một phần, hoạt động dựa trên sao chép máy trạng thái, chọn ngẫu nhiên các trình xác thực để đề xuất các khối và quyết định xem có đưa khối vào chuỗi hay không thông qua nhiều vòng bỏ phiếu. Trong mỗi vòng bỏ phiếu, tất cả những người xác nhận trung thực và trực tuyến đều bỏ phiếu cho một khối cụ thể.
Không giống như các giao thức dựa trên chuỗi dài nhất, việc tạo khối bằng giao thức đồng thuận BFT không phụ thuộc vào độ dài hoặc kích thước của chuỗi. Sự đồng thuận của BFT ưu tiên bảo mật hơn là tính sống động và mang lại tính hữu hạn tuyệt đối, nghĩa là các quyết định được đưa ra trong hệ thống không bao giờ có thể bị đảo ngược. Tuy nhiên, do tập trung vào bảo mật, mô hình BFT cổ điển không thể đạt được tính khả dụng linh hoạt. Các mô hình đồng thuận BFT cổ điển bao gồm các mô hình Tendermint, PBFT và HotStuff.

Mặt khác, các giao thức dựa trên chuỗi dài nhất (bao gồm Bitcoin và phiên bản tổng quát GHOST của nó) không thể đạt được tính hữu hạn tuyệt đối mà thay vào đó đạt được tính hữu hạn theo xác suất thông qua tính khả dụng linh hoạt. Tính khả dụng động cho phép các nút tham gia hoặc rời khỏi hệ thống bất cứ lúc nào mà không ảnh hưởng đến tính bảo mật của hệ thống. Do đó, tính khả dụng linh hoạt thể hiện sự không được phép thực sự—các nút không bị phạt do thời gian ngừng hoạt động hoặc lỗi kỹ thuật. Ngoài ra, trong quá trình phân vùng hoặc tấn công mạng, các giao thức khả dụng động vẫn có thể đưa ra quyết định ngay cả khi có ít người tham gia.
Nhiều người tin rằng các giao thức dựa trên chuỗi dài nhất ưu tiên tính ổn định hơn là bảo mật, nhưng điều này không hoàn toàn đúng. điểm này rất quan trọng. Trong các mô hình triển khai tính sống động theo xác suất, sự khác biệt giữa tính sống động và tính an toàn là giả tạo và gây nhầm lẫn, bởi vì trong các mô hình mà tính sống động được triển khai theo xác suất, tính bảo mật và tính sống động phụ thuộc lẫn nhau.
Người ta có thể nghĩ rằng tính hữu hạn tuyệt đối tốt hơn tính hữu hạn xác suất, nhưng thực tế không phải vậy vì mỗi mô hình xử lý các vấn đề phân vùng một cách khác nhau. Trong hệ thống đồng thuận BFT cổ điển, nếu số lượng người tham gia quá thấp trong một phân vùng thì có thể không đạt được số lượng người được yêu cầu và không thể hoàn thành việc bỏ phiếu bắt buộc, khiến blockchain bị đình trệ. Tuy nhiên, ngay cả khi số lượng người tham gia tích cực giảm xuống còn một, hệ thống dựa trên chuỗi dài nhất sẽ không ngừng hoạt động trong quá trình phân vùng miễn là luôn có đa số trung thực. Ngược lại, trong trường hợp này, sản lượng mạng của sổ cái sẽ tiếp tục tăng và có khả năng tự động sửa lỗi: ngay cả khi các nút ban đầu không đồng ý, mạng cuối cùng sẽ hội tụ và đạt được sự đồng thuận. Khả năng sửa lỗi này liên quan đến sức mạnh của an ninh mạng.

Như Neu và cộng sự đã chỉ ra, khi mô phỏng mô hình BFT cổ điển và mô hình chuỗi dài nhất trong cùng một môi trường, trong điều kiện tham gia động và phân vùng mạng, đầu ra mạng sổ cái của giao thức chuỗi dài nhất luôn tiếp tục tăng, trong khi đó của giao thức BFT cổ điển Finality bị đình trệ trong thời gian có ít người tham gia hoặc phân vùng.
Do đó, mặc dù mô hình đồng thuận BFT cổ điển cung cấp tính bảo mật và tính hữu hạn tuyệt đối nhưng nó phải trả giá bằng việc không thể tự phục hồi hoặc phục hồi trong trường hợp mất mạng. Ngoài ra, điều này cũng làm mất đi tính chất không cần cấp phép của hệ thống, dẫn đến việc tập trung hóa hệ thống. Ví dụ: một số giao thức BFT yêu cầu các nút phải duy trì trạng thái trực tuyến nếu không sẽ bị phạt. Một số lượng đáng kể các quy tắc tương tự chắc chắn không phù hợp với ý tưởng thiết kế của các mạng phi tập trung.
Ethereum: Các ứng dụng rộng rãi và cạm bẫy của PoS
Nhiều người muốn rời khỏi mạng PoW để tiết kiệm chi phí điện năng và phần cứng cũng như đạt được khả năng mở rộng tốt hơn. Mô hình PoS ban đầu được triển khai trong mô hình chuỗi khối trên chuỗi như một giải pháp thay thế cho sự đồng thuận của Satoshi. Mô hình PoS mô phỏng quy trình làm việc của PoW bằng cách chọn ngẫu nhiên những người đặt cược và trao cho họ quyền tạo một khối duy nhất tương ứng với số tiền đặt cược của họ.
Tuy nhiên, nhiều người không nhận ra rằng điều này dẫn tới hai vấn đề lớn: tấn công không quan tâm và tấn công tầm xa.
Một cuộc tấn công không quan tâm xảy ra khi hai thợ mỏ tạo các khối gần như cùng một lúc và mạng phải quyết định áp dụng chuỗi cạnh tranh nào dựa trên quy tắc chuỗi dài nhất. Trong mạng PoW, chúng tôi sẽ chọn chuỗi dài nhất với nhiều công việc nhất — nghĩa là chuỗi tiêu thụ nhiều tài nguyên bên ngoài hệ thống nhất về mặt kinh tế. Trong PoS, việc chọn chuỗi phù hợp không cần nguồn lực bên ngoài, do đó không có chi phí cơ hội tự nhiên. Không có chi phí cơ hội, người đặt cược có thể đặt cược vào từng phiên bản của chuỗi, khiến tính bảo mật của hệ thống bị sụp đổ. Những người đặt cược hợp lý sẽ mở rộng đến mọi chuỗi có thể mà họ thấy để tối đa hóa lợi nhuận.

Các cuộc tấn công tầm xa xảy ra khi kẻ thù lấy được khóa của những người xác thực trong quá khứ thông qua hối lộ và viết lại lịch sử của blockchain, tức là tạo ra một lịch sử mạng sai.
Để giải quyết các cuộc tấn công không vụ lợi, Vitalik Buterin đã đề xuất khái niệm Slasher: nếu người đặt cược ký các khối có cùng chiều cao trên hai nhánh, họ sẽ mất phần thưởng khối. Tuy nhiên, Vlad Zamfir và Ethan Buchman đã thêm một tính năng bổ sung vào Slasher - ký quỹ đặt cược. Bằng cách này, các nút vi phạm rõ ràng các quy tắc sẽ bị giảm số tiền đặt cọc thay vì chỉ từ bỏ một phần lợi nhuận, đây là một hình phạt lớn hơn. Những cải tiến này sau đó đã được tích hợp vào mô hình đồng thuận Gasper của Ethereum và chứng minh rằng giá trị của ETH với tư cách là tài sản PoS chỉ được đảm bảo bằng tiền gửi đặt cọc bắt buộc và các hình phạt cắt giảm - nếu không khóa ETH thì không có giá trị kinh tế nào để hỗ trợ Ethereum.
Nói cách khác, giá trị của ETH không được tạo ra thông qua chi phí không thể chấp nhận được của bằng chứng công việc, mà được thực thi để duy trì, giống như hệ thống tiền tệ fiat của chúng ta ngày nay và do đó không thể hoạt động như một loại tiền tệ cứng. Bitcoin có một chi phí không thể làm giả được, vì để sản xuất Bitcoin mới tốn rất nhiều chi phí vốn (chẳng hạn như máy khai thác phần cứng) và chi phí vận hành (chẳng hạn như điện). Việc làm giả Bitcoin là cực kỳ khó khăn vì kẻ làm giả sẽ cần phải làm lại tất cả các bằng chứng công việc đắt tiền trước đó và thực hiện nhanh hơn tất cả các bằng chứng công việc đang diễn ra trong mạng.
Frankenstein: Gasper cho Ethereum
Gasper đặt mục tiêu dựa vào thiết kế mạng PoS kết hợp mô hình truyền thông đồng bộ dựa trên mô hình quy tắc chuỗi dài nhất và mô hình truyền thông đồng bộ một phần dựa trên mô hình BFT cổ điển. Cái trước được triển khai thông qua LMD GHOST (Cây con quan sát nặng nhất và tham lam nhất theo hướng tin tức mới nhất), đây là sự khái quát hóa của quy tắc chuỗi dài nhất; cái sau được triển khai thông qua Casper FFG (Tiện ích cuối cùng thân thiện). LMD GHOST là một biến thể của GHOST và là một phần của giao thức toàn diện được đề xuất bởi Sompolinsky và Zohar, những người tạo ra mạng Kaspa, trong "Bảo mật xử lý giao dịch tốc độ cao trong Bitcoin". Trong Ethereum, LMD GHOST hoạt động như một quy tắc lựa chọn phân nhánh, trong đó tại mỗi phân nhánh, người xác thực chọn chuỗi có nhiều hỗ trợ nhất (tức là các tin nhắn gần đây nhất nhận được) từ tất cả các trình xác thực, thay vì chuỗi dài nhất. Trong mô hình GHOST của mạng PoW, hỗ trợ đề cập đến chuỗi có nhiều công việc nhất. Trong LMD GHOST, hỗ trợ đề cập đến chuỗi nhận được nhiều phiếu bầu nhất (những người tham gia nhận được phiếu bầu có trọng số theo số dư ETH đã đặt cọc của họ).
Ethereum cũng đã thiết lập các nút khối kiểm tra để đưa ra cơ chế giải trình. Nếu người xác thực vi phạm các quy tắc hệ thống, mức phạt sẽ tùy thuộc vào hành vi vi phạm cụ thể. Casper FFG là một dẫn xuất từ bài viết của Vlad Zamfir "Những bóng ma nhỏ thân thiện: Giao thức đồng thuận Blockchain được xây dựng chính xác". Tuy nhiên, Ethereum đã quyết định triển khai Casper như một tiện ích cuối cùng, như một lớp bảo mật bổ sung bên trên chuỗi hoạt động xác suất, được gọi là LMD GHOST. Do đó, Casper FFG đảm bảo tính bảo mật của các khối được đề xuất ngay cả khi phân vùng mạng. Tuy nhiên, do Casper FFG hoạt động theo mô hình đồng bộ hóa một phần nên chỉ có thể đạt được tính hữu hạn khi ít hơn 1/3 tổng số bộ trình xác nhận bị lỗi/đối nghịch, tức là khả năng chịu lỗi của nó là 1/3. Bởi vì Casper FFG cung cấp bảo mật có trách nhiệm, bản thân nó không có tính chất sống động chung, mang tính xác định mà cung cấp một dạng tính chất xác suất mới, yếu hơn.
Như Vitalik đã nói, “Tính sống động đáng tin cậy có nghĩa là thuật toán sẽ không bị mắc kẹt trong tình trạng tắc nghẽn mà nó không thể xác định một cách thuyết phục trạng thái của bất kỳ thứ gì”.
Gasper cũng thực hiện điểm kiểm tra chủ quan yếu như một biện pháp bảo vệ chống lại các cuộc tấn công tầm xa. Lịch sử chuỗi khối Gasper trước điểm kiểm tra chủ quan yếu không thể được hoàn tác, tức là nếu một nút nhận được một khối xung đột với điểm kiểm tra, nó sẽ từ chối khối đó, ngăn chặn các cuộc tấn công tầm xa. Một vấn đề có tính chủ quan yếu là các nút mạng mới hoặc tham gia lại phải tin tưởng và dựa vào các nút khác để có được trạng thái cập nhật chính xác của hệ thống, điều này mâu thuẫn với mục tiêu phân quyền là xây dựng một hệ thống không cần sự tin cậy. Bằng chứng công việc hoạt động dựa trên tính khách quan và các nút mới có thể độc lập đưa ra kết luận giống như phần còn lại của mạng, dẫn đến một hệ thống không đáng tin cậy.
Do đó, mặc dù Gasper của Ethereum kết hợp tính đồng bộ và đồng bộ một phần với tính sống động và bảo mật, nhưng nó làm như vậy phải trả giá bằng nhiều tính năng khác, chủ yếu là do theo đuổi bằng chứng cổ phần bắt buộc.
Các vấn đề chính do PoS gây ra
Đầu tiên, bằng cách từ bỏ việc thực hiện sự đồng thuận của Satoshi, nó thay thế chi phí không thể giả mạo bằng một khoản tiền gửi bắt buộc, tạo ra một dạng giá trị kinh tế yếu. Thứ hai, nó áp đặt các hình phạt cắt giảm, bao gồm cả các hình phạt ngoại tuyến. Mặc dù hình phạt ngoại tuyến là nhỏ và có thể chỉ tương đương với chi phí cơ hội khi thiếu phần thưởng nhưng tính khả dụng linh hoạt vẫn còn hạn chế. Thứ ba, các nút xác minh chủ quan yếu mặc định có sự tin cậy trong hệ thống. =Điều này đánh bại mục đích ban đầu của công nghệ blockchain.
Những vấn đề chính gây ra bởi sự khác biệt giả tạo giữa an toàn và hoạt động
Thứ tư, thay vì cải thiện các quy tắc lựa chọn nhánh của nó (ví dụ: LMD GHOST), Ethereum đã không chịu nổi sự tồn tại giả tạo sai lầm so với sự khác biệt về bảo mật trong giao thức. Nói cách khác, Ethereum không tăng cường khả năng tự phục hồi của mạng mà sử dụng công cụ đồng thuận BFT cổ điển Casper FFG.
Điều này dẫn đến vấn đề thứ năm, Casper FFG chỉ có thể đạt được 1/3 khả năng chịu lỗi. Mặc dù đây là khả năng chịu lỗi cao nhất trong mô hình được đồng bộ hóa một phần nhưng nó lại thể hiện một hạn chế. Như chúng ta sẽ thấy, DAG-KNIGHT có thể làm tốt hơn.
Cuối cùng, Gasper giới thiệu độ phức tạp cao, làm ảnh hưởng đến tính bảo mật, tính bất biến và khả năng của ETH như một loại tiền tệ của lớp cơ sở. Việc theo đuổi sự phức tạp không ngừng này tạo ra một hệ thống giống Frankenstein.

Tóm tắt: Bitcoin, BFT cổ điển và Ethereum
Bitcoin có thể đạt được 1/2 khả năng chịu lỗi cao, nhưng điều này phải trả giá bằng việc lập mô hình và khả năng mở rộng theo các điều kiện trong thế giới thực như độ trễ internet, mất mạng và các cuộc tấn công kéo dài bất ngờ. Do đó, Bitcoin không thể là một phương tiện trao đổi hiệu quả vì việc giảm độ trễ giới hạn để cho phép tốc độ giao dịch nhanh hơn sẽ ảnh hưởng đến tính an toàn và bảo mật của nó.
Mặt khác, mô hình BFT cổ điển ưu tiên bảo mật nhưng phải đánh đổi bằng tính khả dụng linh hoạt và khả năng tự phục hồi trong các cuộc tấn công hoặc phân vùng mạng. Hơn nữa, do các mô hình BFT cổ điển dựa trên mô hình truyền thông đồng bộ một phần nên chúng chỉ có thể đạt được 1/3 khả năng chịu lỗi.
Ethereum cố gắng kết hợp những gì tốt nhất của mô hình dựa trên chuỗi dài nhất và mô hình BFT cổ điển, nhưng kết quả là tạo ra một hệ thống tự hủy diệt quái vật không cần thiết.
DAG-KNIGHT: Chúa tể thời gian
DAG-KNIGHT đạt được khả năng chịu lỗi 1/2 trong mô hình được đồng bộ hóa một phần. Bạn biết đấy, Cynthia Dwork, Dwork, Lynch và Stock đã chính thức chứng minh rằng trong mô hình đồng bộ hóa một phần, không thể đạt được tỷ lệ chịu lỗi lớn hơn 1/3. Shi và Pass đã chính thức hóa thêm điều này trong bài báo "Sự đồng thuận lai" của họ. một chút. Bây giờ, hãy để chúng tôi giải thích cách DAG-KNIGHT thực hiện điều này.
Trước tiên, bạn cần hiểu cách GHOST-DAG hoạt động và cách DAG-KNIGHT xây dựng trên đó. Thông tin liên quan có thể được tìm thấy trong các phần phụ dành cho Spectre, Phantom và GHOST-DAG. Tôi mô tả chi tiết cách GHOST-DAG giải quyết vấn đề này trong bài viết "Cách giải quyết bộ ba bất khả thi của Blockchain: Tình bạn giữa sự đồng thuận của BlockDAG và Satoshi Nakamoto".
Đạt được điều không thể: DAG-KNIGHT và tính đồng bộ một phần
DAG-KNIGHT giải quyết kết quả bất khả thi do Dwork et al đề xuất bằng cách tối đa hóa việc sử dụng PoW. Bằng chứng công việc tách giao thức đặt hàng giao dịch khỏi giao thức cuối cùng. Các mô hình đồng thuận xác định cách sắp xếp các giao dịch, chẳng hạn như quy tắc chuỗi dài nhất của Bitcoin và quy tắc đặt hàng của DAG-KNIGHT và các quy tắc này là các thuật toán chuẩn mà tất cả những người tham gia (bao gồm cả các nút đối nghịch) hoạt động theo cùng một cách. Mặt khác, tính hữu hạn của giao dịch là một chương trình không ràng buộc mà mỗi người dùng định cấu hình hoặc tính toán dựa trên niềm tin cục bộ của họ về hệ thống.
Trong Bitcoin, thời gian mặc định này dựa trên giả định α rằng kẻ tấn công sở hữu 10% tổng tốc độ băm của mạng và các nút sẵn sàng chấp nhận rủi ro ε <0,1. Tuy nhiên, các nút cũng sẽ phản ứng tương ứng dựa trên niềm tin hệ thống cục bộ của chúng. Ví dụ: nếu một nút Bitcoin tin rằng một công cụ khai thác độc hại sở hữu ít hơn 1/3 tốc độ băm thì nút đó sẽ xác nhận các giao dịch nhanh hơn một nút tin rằng giới hạn là 49%, cho phép kẻ tấn công 34% xâm phạm cái trước, nhưng không thể gây tổn hại cho cái sau.
Một ví dụ khác về bằng chứng công việc tách thứ tự khỏi tính hữu hạn là Spectre, một thuật toán sắp xếp DAG đồng bộ hóa một phần các khối PoW. Trong Spectre, các nút phải được định cấu hình với một tham số riêng chỉ định giới hạn độ trễ trên d của chúng, phần còn lại của hệ thống không xác định được thông số này. Hơn nữa, mỗi nút chịu trách nhiệm về việc lựa chọn d của mình và việc lựa chọn quá không chính xác có thể gây hại cho chúng. Ví dụ: nếu một nút đánh giá quá cao d, nó không thể nhận ra một giao dịch không thể đảo ngược; nếu một nút đánh giá thấp d, nó sẽ chấp nhận giao dịch sớm. Tuy nhiên, Spectre không thể đạt được mức độ hoạt động cao.
DAG-KNIGHT tận dụng tính năng bằng chứng công việc này để làm cho các quy tắc đặt hàng giao dịch của nó có độ trễ không đáng kể, trong khi tính chất cuối cùng của giao dịch phụ thuộc vào giới hạn độ trễ được định cấu hình cục bộ của người dùng. Vì vậy, nó được đồng bộ một phần theo nghĩa đó. Khả năng phản hồi là một tính năng chính trong mô hình truyền thông đồng bộ một phần cổ điển và có hai hình thức phản hồi tùy thuộc vào cách mô hình đồng thuận giao thức phản ứng với sự chậm trễ. Cảm giác phản hồi mạnh mẽ đến từ các giao thức có thể xác nhận giao dịch dựa trên độ trễ có thể quan sát được trong mạng. Một loại phản hồi yếu khác là khi giao thức chạy chặt chẽ với độ trễ tối đa hiện tại do đối thủ mạng gây ra. DAG-KNIGHT hoạt động theo cách thứ hai và do đó có thể vượt qua những kết quả bất khả thi của Dwork.
Như bài báo DAG-KNIGHT nêu rõ: "Trong KNIGHT, việc chỉ đặt giới hạn trên cho độ trễ được quan sát cục bộ là chưa đủ, thay vào đó, giới hạn trên phải phản ánh độ trễ tối đa mà kẻ tấn công có thể gây ra. Ngay cả khi thông báo hiện được truyền chính xác bên trong 1 hoặc 2 giây, nhưng nếu kẻ tấn công có thể xâm phạm mạng để tin nhắn mất tối đa 30 giây để truyền đi thì khách hàng nên đặt D thành 30 giây."
Mặc dù điều này có vẻ giống như một hạn chế, nhưng khả năng thực thi khả năng phản hồi yếu sẽ tạo ra mô hình đồng thuận đầu tiên đạt được khả năng chịu lỗi 1/2 với tính đồng bộ một phần, phá vỡ điều không thể.
Phá vỡ những điều không thể: Nó có nghĩa là gì?
Là sự tổng quát hóa quy tắc chuỗi dài nhất của sự đồng thuận Satoshi, DAG-KNIGHT đạt được tính khả dụng linh hoạt, tính xác suất cuối cùng và khả năng tự phục hồi. Tuy nhiên, DAG-KNIGHT đạt được tính hữu hạn và do đó bảo mật nhanh hơn Bitcoin. Nghĩa là, xác suất tái hợp tiến tới 0 nhanh hơn, do đó đạt đến kết quả cuối cùng nhanh hơn. Điều này có nghĩa là 100 khối mỗi giây có thể được tạo ra và người khai thác nhận được phần thưởng khối được trợ cấp và không tính phí chuyển đổi nhanh hơn, dẫn đến một hệ thống phi tập trung triệt để giúp việc khai thác một mình hiệu quả hơn.
Không giống như mô hình BFT cổ điển, DAG-KNIGHT không ngừng chạy trong khi phân vùng mạng đồng thời đạt được khả năng chịu lỗi cao nhất có thể là 1/2, trong khi mô hình BFT chỉ có thể đạt được 1/3. Ngoài ra, không giống như Bitcoin, DAG-KNIGHT có thể mô phỏng tính không đồng bộ trong thế giới thực, tránh thời gian chờ lâu và suy giảm hiệu suất trong khi vẫn đảm bảo tính bảo mật trong giới hạn độ trễ thấp. Do đó, Bitcoin không thể là phương tiện trao đổi lý tưởng vì việc giảm độ trễ giới hạn để tăng tốc độ giao dịch sẽ ảnh hưởng đến an toàn và bảo mật. DAG-KNIGHT có thể tạo ra loại tiền dự trữ đầu tiên trong một thế giới tương lai không quốc tịch.
Ngoài ra, DAG-KNIGHT triển khai khuôn khổ này như một mô hình đồng thuận không kép thay vì liên tục bổ sung thêm nhiều lớp như Casper FFG của Ethereum. DAG-KNIGHT đạt được sự đơn giản hóa bằng cách đơn giản cải thiện các quy tắc lựa chọn phân nhánh của lớp cơ sở, đây là một bước tiến lớn so với con quái vật "Frankenstein" phức tạp theo phong cách Ethereum. Đơn giản hóa cho phép phát triển nhanh hơn và an toàn hơn và DAG-KNIGHT đạt được sự đơn giản hóa thông qua giá trị kinh tế mạnh mẽ: a. Tài sản dựa trên bằng chứng công việc không thể bị giả mạo b. .
Cuối cùng, DAG-KNIGHT phân quyền hơn nữa cho PoW vì α, ε và δ được xác định và xác định cục bộ bởi các nút thay vì các quy tắc trung tâm như độ trễ giới hạn của Bitcoin, gián tiếp giải quyết vấn đề mà Friedrich Hayek gọi là vấn đề kiến thức cục bộ. Mọi người đều có một số lợi thế thông tin riêng biệt có thể được khai thác hiệu quả nhất khi các quyết định phụ thuộc vào thông tin này. Do đó, các cá nhân (hoặc trong trường hợp của chúng tôi là các nút) có thông tin duy nhất dựa trên hoàn cảnh của họ tại một thời điểm và địa điểm cụ thể cũng như các kế hoạch (đặc biệt là các kế hoạch kinh tế, đối với Hayek, nhưng điều này cũng có thể liên quan đến hầu hết các α, ε và δ). tốt nhất nên được thực hiện bởi từng người tham gia theo cách phân tán, vì các kế hoạch tập trung thiếu thông tin này và không thể tính đến kiến thức của từng cá nhân một cách chính xác.
Kết luận: Mô hình đồng thuận trong tương lai DAG-KNIGHT của Kaspa giải quyết các kết quả không thể đạt được mà Bitcoin, Ethereum và mô hình BFT cổ điển không thể đạt được. Là một mô hình được đồng bộ hóa một phần, nó có giới hạn khả năng chịu lỗi cao nhất có thể. DAGKNIGHT cung cấp tính bảo mật, khả năng mở rộng và phân cấp cao hơn bất kỳ giao thức nào khác. Chưa có giao thức nào khác chính thức đạt được thành tích như vậy và có lẽ không có giao thức nào khác có thể làm được điều đó một lần nữa. Vì vậy, Kaspa thực sự là Chúa tể Thời gian.


