

Sau khi tham gia cuộc họp Polkadot tại Bắc Kinh vào cuối năm ngoái, tôi đã rất mong chờ kế hoạch quản trị và kinh tế chính thức cho Staking, mặc dù kế hoạch cuối cùng vẫn chưa được chốt nhưng tài liệu nghiên cứu của Web3 có vẻ khá đầy đủ . Toàn bộ thiết kế làm tôi ngạc nhiên. Tôi cảm thấy rằng sau khi đọc nhiều dự án sử dụng PoS làm sự đồng thuận, thiết kế của nền kinh tế đặt cược là khác nhau. Các dự án mới sẽ luôn học hỏi từ các dự án trước đây. NPoS do Polkadot mang đến lần này khá sáng tạo và giải quyết vấn đề PoS hiện tại ở một mức độ nhất định có vấn đề.
Có rất nhiều thứ mà Polkadot có thể viết, bài viết này sẽ chủ yếu tập trung vào phần Đặt cược và phương pháp chọn các nút xác thực theo công thức NPoS, hai khía cạnh này có liên quan rất chặt chẽ đến thu nhập của chủ sở hữu mã thông báo và lễ hội.
Nếu bạn không biết lai lịch của Polkadot, bạn có thể gặp tôi trướcbài báo trước đây, Tôi sẽ trực tiếp bắt đầu chủ đề.
Xem xét ngắn gọn quy trình sản xuất khối hoàn chỉnh của dự án đồng thuận PoS
1. Nhóm chạy nút
2. Đăng ký làm người xác thực
(đã qua ngưỡng cơ bản)
3. Quy trình đặt cược
(Người giữ mã thông báo ủy thác cho nút hoặc mã thông báo miễn phí của nhóm để ủy thác Staking)
4. Bầu chọn người xác thực
(Hệ thống chọn từng vòng nhà sản xuất khối hoặc nút xác minh thông qua một thuật toán nhất định. Bài viết này trình bày chi tiết thuật toán bầu chọn NPoS của Polkadot)
5. Giao dịch gói, giao dịch quảng bá, trình xác minh xác nhận một loạt các quy trình
6. Nhận thưởng
tiêu đề phụ
Từ góc độ của những người nắm giữ tiền tệ, sẽ dễ hiểu hơn về PoS
Chủ sở hữu mã thông báo sở hữu mã thông báo Moon với PoS là sự đồng thuận và giao Moon cho nút yêu thích để đặt cược và nút này sẽ tạo các khối thay mặt cho chủ sở hữu mã thông báo và nhận phần thưởng, đồng thời phần thưởng được phân phối theo tỷ lệ đặt cược. (Tỷ lệ đặt cược = số Mặt trăng mà chủ sở hữu tham gia đặt cược / số lượng Mặt trăng tham gia đặt cược).
Ở trên được đề cập là phương pháp tính phần thưởng cho các dự án PoS chung (số lượng phần thưởng có mối tương quan thuận với số tiền Staking của chủ sở hữu)
Polkadot đã đề xuất NPoS. Mục đích ban đầu là để giải quyết các vấn đề gặp phải sau hoạt động PoS trong quá khứ. Bởi vì mối tương quan tích cực giữa phần thưởng và số lượng Staking làm cho các nút phong phú trở nên phong phú hơn và việc phân phối mã thông báo có xu hướng tập trung.
Trong NPoS, kết quả phần thưởng cuối cùng không dựa trên số lượng đặt cược, mà được tính toán dựa trên khối lượng công việc của mỗi nút được chọn thực sự tạo ra một khối (theo tiếng địa phương, bất kể nút đó có bao nhiêu tiền đặt cược, phần thưởng cho việc tạo ra một khối khối hoặc xác minh một khối là như nhau), NPoS sẽ giải quyết vấn đề một số nút lớn nhận được nhiều phần thưởng hơn do số lượng đặt cược lớn, nhưng nó cũng làm tổn hại đến lợi ích của một số nút lớn.
tiêu đề phụ
Polkadot đã làm điều đó như thế nào?
Vì NPoS khác với các dự án PoS truyền thống, không phải trọng lượng đặt cược càng cao thì khả năng tạo khối càng cao, vì vậy chúng tôi sẽ giải thích chi tiết thuật toán của trình xác minh bầu chọn NPoS.
tiêu đề phụ
Lịch sử thuật toán đồng thuận NPoS
NPoS đề cập đến phương thức bầu cử do nhà toán học người Thụy Điển Lars Edvard Phragmén đề xuất vào cuối thế kỷ 19. Vào thời điểm đó, các ghế trong quốc hội Thụy Điển đã bị các đảng chính thống chiếm giữ. phiếu bầu có thể công bằng hơn. Các đảng nhỏ có thể có được những ghế mà họ không thể có được trong quá khứ. Nhóm Polkadot tin rằng cả hai có những điểm tương đồng trong khái niệm thiết kế và NPoS được cải thiện hiện đã được nhìn thấy.
tiêu đề phụ
Thuật toán bầu cử có ba mục tiêu khách quan
1. Số dư Số dư
Sau khi Ủy ban bầu cử được xác định, số tiền đặt cược của Người đề cử sẽ được phân phối đồng đều nhất có thể cho từng Người xác thực được chọn.
Tái bút: Chủ sở hữu mã thông báo có thể chọn nhiều đại cử tri, do đó, có chỗ cho việc phân bổ lại hệ thống
2. Hỗ trợ tối đa
Một ủy ban gồm các đại cử tri được bầu và số tiền đặt cược mà những người xác nhận trong ủy ban nhận được phải càng gần càng tốt với số tiền đặt cược của tổng số Người đề cử nắm giữ tiền tệ.
3. Đại diện Công bằng
Bầu một Hội đồng bầu cử trong đó quyền biểu quyết của Người đề cử Tokenholder không được đại diện quá mức cũng như không được đại diện dưới mức.
Tái bút: Chủ sở hữu mã thông báo có thể chọn nhiều nút, cách thể hiện công bằng đơn giản nhất là ít nhất một nút tương ứng với mỗi chủ sở hữu mã thông báo sẽ được chọn, cộng với điều kiện thực tế (trạng thái nắm giữ xu và hệ thống cần chọn bao nhiêu nút), một số nút sẽ bị loại bỏ, nhưng hãy cố gắng đảm bảo rằng những người nắm giữ có trọng số Staking nhất định có thể tương ứng với ít nhất một nút.
Có thể có nhiều nhóm xác minh (Ban bầu cử) được sàng lọc dựa trên 3 nguyên tắc này, cuối cùng hệ thống sẽ chọn ra một nhóm Ủy ban (Ban bầu cử) hợp lý nhất để tạo khối, có vẻ rất phức tạp và khó hiểu. Phải mất một thời gian dài để bắt đầu, sau đây tôi sẽ sử dụng ví dụ sau về người nắm giữ mã thông báo để bầu chọn người xác thực. Mọi người sẽ hiểu rõ hơn. Bạn nên đọc nhanh ví dụ này rồi đối chiếu mục tiêu khách quan của ba người bầu chọn trên các thuật toán trong quá trình đọc. , và cuối cùng là xem kỹ ví dụ.
Đây là một ví dụ từ một người chính thức trên Medium (Tôi sẽ giúp bạn hiểu rõ hơn)
Giả sử rằng có 5 chủ sở hữu mã thông báo (ở bên trái) và 5 nút (ở bên phải), từ đó 4 nút sẽ được chọn để tạo khối. Để đơn giản hóa mô hình, trước tiên hãy bỏ qua số tiền đặt cược của chính các nút đó
Sau đây là một ví dụ về kết quả bầu cử (tôi sẽ giải thích từng cái một)
Hình ảnh đầu tiên (ngoài cùng bên trái)
Nó không đáp ứng mục tiêu Đại diện Công bằng, bởi vì người nắm giữ đầu tiên trong hình có trọng số là 10Dot, so với người nắm giữ thứ năm chỉ có trọng số là 3Dot, nhưng cuối cùng nó không tương ứng với bất kỳ nút nào mà anh ta hỗ trợ. Chủ sở hữu mã thông báo đáp ứng mục tiêu đại diện công bằng và có trọng số đặt cược nhất định tương ứng với ít nhất một nút (trong tình huống hiện tại, chủ sở hữu mã thông báo đầu tiên sẽ không được thưởng).
bức tranh thứ hai
Để phù hợp với mục tiêu của Đại diện Công bằng, một số người có thể đặt câu hỏi tại sao nút E được chọn, nhưng nút B không được chọn. Điều này liên quan đến thuật toán phân phối lại sẽ được minh họa tiếp theo. Đây là một cách hiểu đơn giản, thứ hai trong hình Người nắm giữ hỗ trợ 3 nút cùng lúc, hệ thống chỉ cần đảm bảo rằng ít nhất một trong số các nút mà anh ta hỗ trợ được bầu chọn (ở đây hai trong số các nút mà anh ta hỗ trợ được chọn, tất cả số tiền đặt cược của người nắm giữ thứ hai sẽ được chỉ định cho hai nút này), trong khi duy trì nút E, cũng được hỗ trợ bởi chủ sở hữu mã thông báo thứ năm, là một trong những khả năng dẫn đến kết quả bầu cử như Polkadot.
bức tranh thứ ba
Để phù hợp với mục tiêu của Đại diện Công bằng, một số người có thể đặt câu hỏi rằng điều này mâu thuẫn với bức tranh thứ 2. Mục tiêu là có ít nhất một nút hỗ trợ được chọn cho mỗi chủ sở hữu mã thông báo và chủ sở hữu mã thông báo thứ năm Các nút được hỗ trợ không được chọn vì toàn bộ hệ thống chỉ cần chọn 4 nút, do đó, một trong những kết quả có thể xảy ra là nút được hỗ trợ bởi chủ sở hữu thứ năm có trọng số Staking thấp đã không được chọn.
Sau đây là kết quả có thể có của hai ủy ban bầu cử trên đáp ứng nguyên tắc công bằng. Sau khi thành lập ủy ban bầu cử, hệ thống sẽ trải qua quá trình phân bổ lại trọng số Staking
Hệ thống Polkadot sẽ chọn một kết quả công bằng hơn và an toàn hơn mỗi lần. Trong ví dụ này, bên phải được chọn vì nó có phân phối trung bình tốt hơn và trọng số đặt cược trung bình thấp nhất của các nút bên phải là 9.
Trên đây là phần giới thiệu thuật toán bầu chọn của Polkadot. Logic ở trên rất phức tạp và toán học đằng sau nó thậm chí còn phức tạp hơn. Ví dụ chính thức là trong một trường hợp đơn giản. Nếu tình hình thực tế được mở rộng thành 100 nút, mỗi chủ sở hữu mã thông báo sẽ đặt cược Trọng số là khác nhau, đồng thời ủy thác cho nhiều nút, sẽ tương đối phức tạp, bạn có thể suy nghĩ lại vài lần, theo ba mục tiêu nêu trên, mỗi mục tiêu có thể lấy làm tiêu chuẩn kiểm tra, bạn có thể hiểu nó tốt hơn.
NPoS, một thuật toán bầu cử, phân bổ động trọng số Staking của chủ sở hữu mã thông báo và chọn nút được chọn cuối cùng dựa trên một số quy tắc, điều này đã gây ra một số khác biệt trong hệ sinh thái PoS hiện có.
1. Trong điều kiện người nắm giữ tiền xu có thể chọn nhiều nút, các nút lớn không nỗ lực để giành được sự ủng hộ của cộng đồng và có cơ hội bị loại trừ theo thuật toán (Nút B ở giữa Hình 2)
2. Với mục tiêu cân bằng số tiền đặt cược, các nút nhỏ không có vốn sẽ có lợi hơn, bởi vì miễn là có nhiều người trong cộng đồng chọn nó, theo cơ chế phân bổ số tiền đặt cược của hệ thống, xác suất thưởng cho khối đã chọn cao hơn (như trong Hình 2 Nút D bên phải)
3. Với mục tiêu cân bằng khối lượng đặt cược, lợi nhuận của các nút lớn tương đối bị nén và các nút lớn cần suy nghĩ xem có nên ủy thác tiền của chính họ để nhận được nhiều lợi nhuận hơn không
tiêu đề phụ
Vấn đề gì Polkadot muốn giải quyết PoS hiện có?
1. Một phần của vấn đề tập trung không thể tránh khỏi
2. Phí xử lý thấp sẽ không thu hút staking vô thời hạn trong tương lai, vì thu nhập phụ thuộc vào khối lượng công việc của các nút
(Hiện tại, có các nút 0 phí trên Cosmos thu hút một số lượng lớn chủ sở hữu mã thông báo để ủy thác. Ở Polkadot, các nút có trọng số đặt cược cao như vậy và các nút có trọng số đặt cược bình thường đều nhận được lợi ích như nhau)
3. Chủ sở hữu mã thông báo có thể tối đa hóa lợi ích của riêng họ bằng cách chọn các nút khác nhau trong khi thúc đẩy phân cấp
(Có nhiều chiến lược ủy thác cho chủ sở hữu mã thông báo. Tôi có thể chọn các nút an toàn và đáng tin cậy, đồng thời tôi cũng có thể chọn một số nút nhỏ nhưng đáng tin cậy để thu được lợi suất cao hơn.)
Toàn bộ cơ chế của Polkadot thực sự rất phức tạp và tôi có thể đã bỏ sót điều gì đó. Làm thế nào để tấn công một cơ chế như vậy và liệu có những kẽ hở trong thuật toán bầu cử liên kết gói có thể bị khai thác hay không, tất cả đều yêu cầu các chuyên gia đầu tư rất nhiều tâm sức thuộc lĩnh vực nghiên cứu đặc biệt nên mình sẽ không bàn ở đây.
Đây là bài viết đầu tiên giải thích về cơ chế Polkadot, trong tương lai sẽ đưa ra nhiều ví dụ hơn sau khi công bố thông số và testnet chính thức.
