Hướng dẫn dành cho người chơi Bitcoin về thông tin dữ liệu PlatoBlockchain bằng chứng cổ phần. Tìm kiếm dọc. Ái.

Hướng dẫn của Bitcoiner về Proof-Of-Stake

Đây là một bài xã luận quan điểm của Scott Sullivan.

Thông thường những người chơi Bitcoin không quan tâm quá nhiều đến những gì diễn ra ở vùng đất Shitcoin, nhưng giờ đây Ethereum đã sáp nhập vào bằng chứng cổ phần (PoS), đã có khá nhiều tiếng vang trên Twitter Bitcoin. Tất nhiên, bản thân mạng Bitcoin sẽ không bị ảnh hưởng, nhưng tôi nghĩ “nâng cấp” này vẫn đáng được chú ý. Giờ đây, Ethereum đã tự làm sạch các tác động bên ngoài “bẩn” và “lãng phí” liên quan đến bằng chứng công việc (PoW), chúng ta có thể mong đợi những chiếc găng tay sẽ xuất hiện trong cuộc chiến kể chuyện và tôi nghĩ những người chơi Bitcoin nên sẵn sàng đáp trả .

Tìm hiểu cách hoạt động của PoS là một cách thực sự tốt để hiểu rõ sự khác biệt và sự đánh đổi giữa PoW và PoS. Mặc dù trước đây tôi đã thấy tất cả các lập luận cấp cao chống lại PoS - rằng PoS được cấp phép nhiều hơn, tập trung hơn và mang tính đầu sỏ hơn - tôi sẽ thừa nhận rằng nếu không xem xét chi tiết, tất cả đều có cảm giác như bị điều khiển bằng tay. Bằng cách thực sự đi sâu vào thuật toán PoS, chúng ta có thể bắt đầu thấy tất cả các thuộc tính này xuất hiện một cách tự nhiên như thế nào từ các nguyên tắc đầu tiên. Vì vậy, nếu bạn tò mò về cách hoạt động của thuật toán PoS và lý do nó dẫn đến các loại thuộc tính này, hãy đọc tiếp!

Giải quyết vấn đề chi tiêu gấp đôi

Hãy bắt đầu bằng việc tóm tắt nhanh vấn đề mà chúng ta đang cố gắng giải quyết. Giả sử chúng ta có một nhóm lớn người tham gia vào mạng lưới tiền điện tử đang cố gắng duy trì một sổ cái phi tập trung. Đây là vấn đề: Làm thế nào các giao dịch mới có thể được thêm vào sổ cái của mọi người, sao cho mọi người đều đồng ý về những giao dịch mới nào là “chính xác”? PoW giải quyết vấn đề này khá dễ dàng: Các giao dịch được nhóm lại với nhau thành các khối, theo đó mỗi khối cần một lượng lớn công việc tính toán để tạo ra. Khối lượng công việc cần thiết có thể tăng hoặc giảm để đảm bảo các khối được tạo ra trung bình cứ sau 51 phút, giúp mỗi khối mới có nhiều thời gian để lan truyền khắp mạng trước khi khối tiếp theo được tạo. Mọi sự mơ hồ đều được giải quyết bằng cách chọn chuỗi có nhiều công việc nhất và ngăn chặn chi tiêu gấp đôi do yêu cầu ít nhất XNUMX% công suất băm toàn cầu để khối chi tiêu kép bắt kịp.

Nhưng giả sử bây giờ chúng ta muốn vứt bỏ hiểu biết quan trọng của Satoshi Nakamoto đã giúp tất cả những điều này trở nên khả thi ngay từ đầu. Xét cho cùng, những ASIC phiền phức đó rất ồn ào và khó chịu, đồng thời chúng tiêu thụ nhiều năng lượng hơn tất cả các máy bay riêng của George Soros, Bill Gates và Hillary Clinton cộng lại. Có cách nào để chúng ta có thể đồng ý một cách rõ ràng về những giao dịch nào là đúng chỉ bằng cách nói ra không?

Bằng chứng cổ phần của Ethereum đề xuất giải quyết vấn đề này bằng cách sử dụng hai thành phần chính. Đầu tiên là thỉnh thoảng tạo ra các “khối điểm kiểm tra” đặc biệt, mục đích là đảm bảo cho mọi người trong mạng về “sự thật” của hệ thống tại nhiều thời điểm khác nhau. Việc tạo một trạm kiểm soát cần có 51/XNUMX số phiếu bầu theo cổ phần, vì vậy có một số đảm bảo rằng phần lớn những người xác nhận đã đồng ý về sự thật thực sự là gì vào thời điểm đó. Thành phần thứ hai là trừng phạt người dùng vì đã thêm sự mơ hồ vào mạng, một quá trình được gọi là “chém”. Ví dụ: nếu người xác thực tạo một fork hoặc bỏ phiếu cho một sidechain cũ hơn (tương tự như cuộc tấn công XNUMX%), thì cổ phần của họ sẽ bị cắt giảm. Trình xác thực cũng có thể bị cắt giảm do không hoạt động, nhưng không nhiều.

Điều này dẫn chúng ta đến nguyên tắc đầu tiên đằng sau PoS, đó là PoS dựa trên hệ thống khuyến khích tiêu cực (dựa trên hình phạt).

Điều này trái ngược hoàn toàn với Bitcoin và bằng chứng công việc, một hệ thống khuyến khích tích cực (dựa trên phần thưởng). Trong Bitcoin, người khai thác có thể cố gắng phá vỡ các quy tắc – các khối được định dạng sai, giao dịch không hợp lệ, v.v. – nhưng các khối này sẽ bị các nút đầy đủ bỏ qua. Trường hợp xấu nhất là lãng phí một chút năng lượng. Những người khai thác cũng có thể tự do xây dựng trên các khối cũ hơn, nhưng nếu không có 51% công suất băm, các chuỗi này sẽ không bao giờ bắt kịp, lại còn gây lãng phí năng lượng. Bất kỳ người khai thác nào tham gia vào các hành động này, dù cố ý hay không, đều không cần lo lắng về việc mất bitcoin hoặc máy khai thác tích lũy của họ, nhưng họ sẽ không nhận được phần thưởng mới. Thay vì sống trong sợ hãi, những người khai thác bitcoin có thể mắc sai lầm khi hành động và gặp rủi ro.

Thế giới là một nơi rất khác dành cho những người xác nhận sống ở vùng đất Ethereum. Thay vì làm việc chăm chỉ và được khen thưởng vì đã tăng cường bảo mật cho mạng, người xác thực không thực hiện công việc thực tế nào nhưng phải cẩn thận để nút của họ không bao giờ hoạt động sai, kẻo số tiền tiết kiệm của họ sẽ bốc cháy. Nếu bất kỳ thay đổi được đề xuất nào được thực hiện đối với mạng, bản năng đầu tiên của người xác thực sẽ là tuân thủ bất kỳ điều gì mà mọi người khác đang làm, nếu không sẽ có nguy cơ bị cắt giảm. Trở thành người xác nhận cũng giống như đi trên vỏ trứng hàng ngày.

Nhân tiện, sống trong một hệ thống khuyến khích tiêu cực là một trong những “lợi ích” của bằng chứng cổ phần, theo người đồng sáng lập mạng Ethereum Vitalik Buterin. Câu Hỏi Thường Gặp:

Vậy việc chém thực sự có tác dụng như thế nào ở cấp độ kỹ thuật? Chẳng phải trước tiên chúng ta cần phải tạo một danh sách tất cả các trình xác thực để có thứ gì đó để cắt giảm ngay từ đầu phải không? Câu trả lời là có. Để trở thành người xác thực Ethereum, trước tiên người ta phải chuyển ETH sang một địa chỉ “đặt cược” đặc biệt. Danh sách này không chỉ cần thiết để chém mà còn cần thiết cho việc bỏ phiếu vì cần có đa số 2/3 phiếu bầu cho các khối điểm kiểm tra.

Có một số ý nghĩa thú vị trong việc duy trì danh sách tất cả các trình xác thực mọi lúc. Tham gia có khó không? Việc rời đi khó đến mức nào? Người xác nhận có được bỏ phiếu về trạng thái của những người xác nhận khác không?

Điều này đưa chúng ta đến nguyên tắc thứ hai đằng sau PoS, đó là PoS là một hệ thống được cấp phép.

Bước đầu tiên để trở thành người xác nhận là gửi một số ETH vào một địa chỉ đặt cược đặc biệt. ETH là bao nhiêu? Yêu cầu tối thiểu là 32 ETH, tương đương khoảng 50,000 USD tại thời điểm viết bài này. Trong bối cảnh này, một giàn khai thác bitcoin tốt thường có giá trị hàng nghìn đô la một chữ số và một công cụ khai thác tại nhà có thể bắt đầu với một chiếc S9 duy nhất với giá vài trăm đô la. Công bằng mà nói, phí gia nhập cao của ETH có biện minh kỹ thuật, vì số tiền đặt cược cao hơn có nghĩa là có ít người xác thực hơn, điều này làm giảm băng thông.

Như vậy phí nạp cao nhưng ít nhất ai sở hữu 32 ETH đều được tự do tham gia hoặc rời đi bất cứ lúc nào phải không? Không hẳn. Có Rủi ro bảo mật nếu liên minh lớn của những người xác nhận đều tham gia hoặc thoát khỏi cùng một lúc. Ví dụ: nếu phần lớn mạng rời đi cùng một lúc, thì họ có thể chi tiêu gấp đôi một khối cuối cùng bằng cách phát lại một nhánh mà họ chưa bao giờ rời đi mà không bị cắt trên một trong hai chuỗi. Để giảm thiểu rủi ro này, các đoạn đường vào và ra đều có giới hạn thông lượng tích hợp. Hiện nay điều này hạn chế được đặt thành trình xác nhận tối đa (4,|V|/65536) mỗi kỷ nguyên (cứ sau 6.4 phút) và giống nhau cho cả việc vào và ra. Điều này có nghĩa là khoảng một bộ trình xác thực đầy đủ cứ sau mười tháng.

Nhân tiện, mặc dù hiện tại người xác thực có thể xuất bản giao dịch “thoát” và ngừng xác thực, nhưng mã để rút tiền thực sự vẫn chưa được viết. Nghe hơi giống “Khách sạn California”…

Có một điểm cuối cùng về các ưu đãi đằng sau việc phê duyệt người xác thực mới. Giả sử bạn là cổ đông của một công ty lớn và ổn định trả cổ tức đều đặn hàng quý. Việc tặng miễn phí cổ phiếu mới có hợp lý không? Tất nhiên là không, vì làm như vậy sẽ làm giảm cổ tức của tất cả các cổ đông hiện hữu. Cấu trúc khuyến khích tương tự tồn tại trong PoS, vì mỗi trình xác thực mới sẽ làm giảm doanh thu của tất cả các trình xác thực hiện có.

Về lý thuyết, người xác nhận có thể chỉ cần kiểm duyệt mọi giao dịch có thêm người xác nhận mới; tuy nhiên, trên thực tế, tôi nghĩ cách tiếp cận thẳng thắn như vậy khó có thể xảy ra. Điều này sẽ rất đáng chú ý và sẽ phá hủy hình ảnh “phân quyền” của Ethereum chỉ sau một đêm, có khả năng làm giảm giá. Tôi nghĩ rằng một cách tiếp cận tinh tế hơn sẽ được sử dụng thay thế. Ví dụ: các quy tắc có thể thay đổi dần dần theo thời gian khiến việc trở thành người xác nhận trở nên khó khăn hơn, với những lý do được đưa ra như “bảo mật” hoặc “hiệu quả”. Bất kỳ chính sách nào làm phong phú thêm các trình xác thực hiện có với chi phí của các trình xác thực mới sẽ có những tác động tích cực về mặt tài chính, cho dù có được nói ra hay không. Chúng ta có thể bắt đầu hiểu tại sao PoS lại có xu hướng đầu sỏ.

Tổng quan về thuật toán Casper

Bây giờ chúng ta đã biết chiến lược cấp cao đằng sau PoS, thuật toán thực sự hoạt động như thế nào? Ý tưởng chính đằng sau các trạm kiểm soát và việc chém đã được đưa ra trong một thuật toán có tên là Casper, vì vậy chúng ta sẽ bắt đầu ở đó. Bản thân Casper không thực sự chỉ định bất cứ điều gì về cách tạo khối, mà chỉ cung cấp một khuôn khổ về cách áp dụng chiến lược điểm kiểm tra/chém lên trên một số cây blockchain đã tồn tại.

Đầu tiên, một số hằng số tùy ý (C) được chọn làm số “khoảng cách điểm kiểm tra”, xác định có bao nhiêu khối xuất hiện giữa các điểm kiểm tra; ví dụ: nếu C=100 thì điểm kiểm tra sẽ xuất hiện ở các khối 0, 100, 200, v.v. Sau đó, tất cả các nút đều bỏ phiếu xem khối điểm kiểm tra nào sẽ là điểm kiểm tra “hợp lý” tiếp theo. Thay vì bỏ phiếu riêng lẻ cho các khối đơn lẻ, người xác nhận thực sự bỏ phiếu trên các cặp điểm kiểm tra (s,t), liên kết một số nguồn điểm kiểm tra hợp lý trước đó “s” với một số điểm kiểm tra mục tiêu mới “t”. Khi một liên kết điểm kiểm tra (s,t) nhận được đa số XNUMX/XNUMX số phiếu bầu bằng cổ phần, thì “t” sẽ trở thành một điểm kiểm tra hợp lý mới. Sơ đồ bên dưới hiển thị một cây ví dụ về các điểm kiểm tra:

Trong sơ đồ này, hàm h(b) đề cập đến “chiều cao điểm kiểm tra”, ví dụ: bội số của khối là 100. Bạn có thể nhận thấy rằng không phải khối thứ một trăm nhất thiết phải hợp lý, điều này có thể xảy ra nếu cuộc bỏ phiếu thất bại tại một thời điểm nhất định. chiều cao. Ví dụ: giả sử ở độ cao 200 có hai điểm kiểm tra riêng biệt, mỗi điểm nhận được 50% phiếu bầu. Vì bỏ phiếu hai lần là một hành vi phạm tội có thể bị cắt giảm, hệ thống sẽ bị “kẹt” trừ khi một số người xác nhận sẵn sàng cắt giảm cổ phần của chính họ để đạt được 200/300 số phiếu bầu. Giải pháp là mọi người “bỏ qua” điểm kiểm tra XNUMX và “thử lại” ở khối XNUMX.

Chỉ vì một điểm kiểm tra là hợp lý, không có nghĩa là nó đã được hoàn thành. Để một điểm kiểm tra được tính là đã hoàn tất, ngay sau điểm kiểm tra đó phải có một điểm kiểm tra hợp lý khác ở độ cao tiếp theo có thể. Ví dụ: nếu các điểm kiểm tra 0, 200, 400, 500 và 700 đều được căn đều và liên kết với nhau thì chỉ điểm kiểm tra 400 mới được tính là "đã hoàn tất" vì đây là điểm duy nhất ngay sau đó là một điểm kiểm tra hợp lý khác.

Bởi vì thuật ngữ này rất chính xác nên hãy tóm tắt lại ba loại của chúng tôi. “Điểm kiểm tra” là bất kỳ khối nào xuất hiện ở độ cao C*n, vì vậy nếu C=100, mọi khối có chiều cao 0, 100, 200, 300, v.v. đều sẽ là điểm kiểm tra. Ngay cả khi nhiều khối được tạo ở độ cao 200, cả hai khối đó đều sẽ là “điểm kiểm tra”. Sau đó, một điểm kiểm tra được "hợp lý" nếu đó là khối gốc ở độ cao 0 hoặc nếu hai phần ba số người xác nhận đã bỏ phiếu để tạo liên kết giữa một số điểm kiểm tra hợp lý trước đó và điểm kiểm tra hiện tại. Một điểm kiểm tra hợp lý sau đó sẽ được "hoàn thiện" nếu sau đó nó liên kết với một điểm kiểm tra hợp lý khác ở độ cao tiếp theo có thể. Không phải mọi điểm kiểm tra đều nhất thiết phải trở nên hợp lý và không phải mọi điểm kiểm tra hợp lý đều nhất thiết phải được hoàn thiện, ngay cả trong chuỗi cuối cùng.

Quy tắc chém Casper

Các quy tắc cắt giảm trong Casper được thiết kế sao cho không thể tồn tại hai điểm kiểm tra cuối cùng trong hai nhánh riêng biệt, trừ khi ít nhất một phần ba số người xác thực đã phá vỡ các quy tắc cắt giảm.

Nói cách khác, chỉ các điểm kiểm tra cuối cùng mới được tính là các khối “sự thật” rõ ràng. Thậm chí có thể xảy ra hai điểm kiểm tra hợp lý ở cả hai phía của một ngã ba, chứ không phải hai điểm kiểm tra cuối cùng. Cũng không có gì đảm bảo về thời gian hoặc địa điểm điểm kiểm tra cuối cùng tiếp theo sẽ xảy ra, chỉ là nếu xảy ra sự phân chia chuỗi thì bạn nên ngồi lại và đợi cho đến khi khối cuối cùng xuất hiện ở đâu đó và khi điều đó xảy ra thì bạn biết đó là “ chuỗi đúng”.

Có hai quy tắc gạch chéo trong Casper thực thi thuộc tính này:

Quy tắc đầu tiên cấm bất kỳ ai bỏ phiếu kép cho các điểm kiểm tra có cùng chiều cao mục tiêu, vì vậy nếu người xác thực bỏ phiếu cho hai khối điểm kiểm tra khác nhau có chiều cao mục tiêu 200, đó sẽ là một hành vi phạm tội có thể bị chém. Mục đích của quy tắc này là để ngăn chuỗi chia thành hai điểm kiểm tra hợp lý khác nhau có cùng độ cao, vì điều này sẽ yêu cầu 2/3 + 2/3 = 4/3 tổng số phiếu bầu của người xác nhận, ngụ ý rằng ít nhất một phần ba của các trình xác nhận đã phá vỡ các quy tắc cắt giảm. Tuy nhiên, như chúng ta đã thấy trước đây, các điểm kiểm tra hợp lý có thể “bỏ qua” các độ cao khối nhất định. Điều gì ngăn cản chuỗi chia thành các độ cao mục tiêu khác nhau? Ví dụ: không thể điểm kiểm tra 200 rẽ vào điểm kiểm tra hợp lý ở mức 300 và 400 mà không có ai bị chém?

Đó là nơi áp dụng quy tắc thứ hai, về cơ bản ngăn cản người xác thực "kẹp" các phiếu bầu vào bên trong các phiếu bầu khác. Ví dụ: nếu người xác thực bỏ phiếu cho cả 300→500 và 200→700, đó sẽ là một hành vi phạm tội có thể chém được. Trong trường hợp phân tách chuỗi, khi một nhánh nhìn thấy điểm kiểm tra cuối cùng, nhánh kia sẽ không thể nhìn thấy điểm kiểm tra hợp lý sau đó trừ khi ít nhất một phần ba số người xác thực vi phạm quy tắc số 2.

Để hiểu lý do tại sao, giả sử chuỗi khối được chia thành các điểm kiểm tra hợp lý 500→800 và 500→900, sau đó tại một thời điểm nào đó, chuỗi đầu tiên đã thấy điểm kiểm tra cuối cùng có liên kết 1700→1800. Vì cả 1700 và 1800 chỉ có thể hợp lý ở ngã ba số 1 (giả sử không ai vi phạm quy tắc gạch chéo đầu tiên), cách duy nhất ngã ba số 2 có thể nhìn thấy điểm kiểm tra hợp lý sau năm 1800 là nếu có một số liên kết bỏ phiếu giữa các độ cao H1800. Nhưng vì cuộc bỏ phiếu này sẽ "kẹp" liên kết 1700→1800 và yêu cầu hai phần ba phiếu bầu, và 1700→1800 đã được thông qua với hai phần ba phiếu bầu, nên ít nhất một phần ba số người xác nhận sẽ cần phải vi phạm quy tắc # 2. Bài báo Casper có một sơ đồ đẹp thể hiện tính chất này:

Và thế là xong, chỉ cần tuân theo các quy tắc của Casper và bạn sẽ ổn!

Có vẻ khá đơn giản phải không? Tôi chắc chắn rằng PoS sẽ chỉ sử dụng tính năng cắt giảm như một biện pháp cuối cùng để duy trì sự đồng thuận chứ không phải như một cơ chế tống tiền để gây áp lực cho người xác nhận hành xử theo một cách nhất định… phải không?

Điều này đưa chúng ta đến nguyên tắc thứ ba đằng sau PoS: Không có quy tắc nào cả. “Quy tắc” là bất cứ điều gì người khác nói.

Một ngày nào đó, nút của bạn có thể tuân theo mọi điều răn của Casper đến từng chữ về mặt kỹ thuật và ngày hôm sau, số tiền tiết kiệm của bạn có thể bị cắt giảm vì bạn đang làm điều gì đó mà mọi người khác không thích. Đã phê duyệt giao dịch “đội đỏ” một lần? Ngày mai đa số “đội xanh” có thể chém bạn. Hoặc có thể bạn đã làm ngược lại và bỏ qua quá nhiều giao dịch “đội đỏ”? Ngày mai đa số “đội đỏ” có thể sẽ chém bạn để kiểm duyệt. Khả năng cắt giảm vượt xa phạm vi kiểm duyệt hạn chế của OFAC (Văn phòng kiểm soát tài sản nước ngoài). PoS giống như một cuộc đối đầu không ngừng nghỉ của Mexico, nơi mà mối đe dọa chém giết ngầm luôn hiện hữu.

Tôi sẽ không ngạc nhiên nếu trong một đợt hard fork gây tranh cãi, cả hai bên đều mã hóa cứng các quy tắc xác thực của đợt fork kia, đề phòng trường hợp họ muốn trừng phạt bất kỳ ai tham gia vào phe “sai”. Tất nhiên, đây sẽ là một lựa chọn hạt nhân, và giống như vũ khí hạt nhân, mỗi bên chỉ có thể chọn tấn công để trả đũa. Tôi đoán rằng hầu hết những người xác nhận cá nhân đều trung lập ở chỗ họ sẽ ưu tiên việc tự bảo toàn tài chính hơn là hy sinh chính trị, nhưng bề ngoài có thể đứng về một phía nếu họ cảm thấy đó là động thái đúng đắn để tránh bị chém.

Mấy giờ rồi?

Bây giờ chúng ta đã biết những điều cơ bản về điểm kiểm tra và tính năng cắt giảm, chúng ta có thể chuyển sang thuật toán thực tế được sử dụng trong Ethereum, được gọi là Gasper. Đây là sự kết hợp giữa Casper mà chúng tôi đã đề cập và GHOST, một chiến lược để chọn chuỗi khối “tốt nhất” ở giữa các điểm kiểm tra.

Điều đầu tiên cần hiểu về Gasper là bản thân thời gian là biến số độc lập chính. Thời gian trong thế giới thực được chia thành các đơn vị 32 giây được gọi là “khe”, trong đó mỗi khe chứa tối đa một khối. Sau đó, các vị trí này tạo thành các nhóm lớn hơn gọi là “kỷ nguyên”, trong đó mỗi kỷ nguyên đề cập đến một điểm kiểm tra. Mỗi kỷ nguyên có 6.4 vị trí, khiến chúng dài XNUMX phút.

Điều đáng chú ý là mô hình này đảo ngược mối quan hệ nhân quả giữa thời gian và sản xuất khối khi so sánh với PoW. Trong PoW, các khối được tạo ra vì đã tìm thấy hàm băm hợp lệ chứ không phải vì đã trôi qua đủ thời gian. Nhưng trong Gasper, các khối được tạo ra vì đã có đủ thời gian thực tế trôi qua để đến ô tiếp theo. Tôi chỉ có thể tưởng tượng những lỗi phức tạp về thời gian mà một hệ thống như vậy có thể gặp phải, đặc biệt khi đó không chỉ là một chương trình chạy trên một máy tính mà là hàng chục nghìn máy tính đang cố gắng chạy đồng bộ trên toàn thế giới. Hy vọng rằng các nhà phát triển Ethereum đã quen thuộc với sự giả dối mà các lập trình viên tin vào thời gian.

Bây giờ, giả sử bạn đang khởi động một nút xác thực và đang đồng bộ hóa chuỗi khối lần đầu tiên. Chỉ vì bạn quan sát thấy các khối nhất định tham chiếu các dấu thời gian nhất định, làm sao bạn có thể chắc chắn rằng các khối đó thực sự được tạo ra vào thời điểm đó? Vì việc sản xuất khối không yêu cầu bất kỳ công việc nào, nên một nhóm trình xác thực độc hại có thể mô phỏng một chuỗi khối hoàn toàn giả mạo ngay từ ngày đầu không? Và nếu bạn thấy hai blockchain cạnh tranh nhau, làm sao bạn biết cái nào là đúng?

Điều này đưa chúng ta đến nguyên tắc thứ tư đằng sau PoS, đó là PoS dựa vào sự thật chủ quan.

Đơn giản là không có cách khách quan nào để chọn giữa hai chuỗi khối cạnh tranh và bất kỳ nút mới nào trong mạng cuối cùng phải tin tưởng vào một số nguồn sự thật hiện có để giải quyết mọi sự mơ hồ. Điều này trái ngược đáng kể với Bitcoin, nơi chuỗi “thực sự” luôn là chuỗi có nhiều công việc nhất. Sẽ không có vấn đề gì nếu một nghìn nút đang cho bạn biết chuỗi X, nếu một nút duy nhất phát sóng chuỗi Y và nó chứa nhiều công việc hơn thì Y chính là chuỗi khối chính xác. Tiêu đề của khối có thể chứng minh giá trị của chính nó, loại bỏ hoàn toàn nhu cầu tin cậy.

Bằng cách dựa vào sự thật chủ quan, PoS gợi lại nhu cầu về niềm tin. Bây giờ tôi phải thừa nhận, có lẽ tôi hơi thiên vị, vì vậy nếu bạn muốn đọc mặt khác, Buterin đã viết một bài luận thể hiện quan điểm của mình tại đây. Tôi sẽ thừa nhận rằng trên thực tế, việc phân chia chuỗi dường như không có khả năng xảy ra theo các quy tắc Casper, nhưng dù sao đi nữa, tôi vẫn yên tâm khi biết rằng điều này thậm chí không có khả năng xảy ra với Bitcoin.

Sản xuất khối và bỏ phiếu

Bây giờ chúng ta đã quen thuộc với các vị trí và kỷ nguyên, các khối riêng lẻ được tạo ra và bình chọn như thế nào? Vào đầu mỗi kỷ nguyên, bộ trình xác nhận đầy đủ được phân chia “ngẫu nhiên” thành 32 nhóm, mỗi nhóm cho mỗi vị trí. Trong mỗi vị trí, một người xác thực được chọn “ngẫu nhiên” làm nhà sản xuất khối, trong khi những người khác được chọn làm người bỏ phiếu (hoặc “người chứng thực”). Tôi đặt từ “ngẫu nhiên” trong dấu ngoặc kép vì quy trình này phải mang tính quyết định, vì mọi người phải đồng ý rõ ràng về cùng một bộ trình xác thực. Tuy nhiên, quy trình này cũng phải không thể khai thác được, vì vai trò nhà sản xuất khối là một vị trí đặc quyền cao do phần thưởng bổ sung có sẵn từ giá trị có thể trích xuất của thợ mỏ (MEV) hoặc vì nó được đổi tên thành “giá trị có thể trích xuất tối đa”. “Ethereum là một khu rừng tối” là một bài đọc tuyệt vời về điều này.

Sau khi một khối được tạo ra, những người xác nhận khác sẽ bỏ phiếu hoặc “chứng thực” nó như thế nào? Đề xuất khối được cho là diễn ra trong nửa đầu (sáu giây) của một vị trí và chứng thực trong nửa sau, vì vậy về mặt lý thuyết phải có đủ thời gian để những người chứng thực bỏ phiếu cho khối vị trí của họ. Nhưng điều gì sẽ xảy ra nếu người đề xuất khối ngoại tuyến hoặc không liên lạc được hoặc xây dựng trên một khối xấu? Công việc của người chứng thực không nhất thiết là bỏ phiếu cho khối của vị trí đó mà là bất kỳ khối nào “trông đẹp nhất” theo quan điểm của họ tại thời điểm đó. Trong điều kiện bình thường, đây thường sẽ là khối từ vị trí đó, nhưng cũng có thể là khối cũ hơn nếu có sự cố. Nhưng về mặt kỹ thuật thì “trông đẹp nhất” nghĩa là gì? Đây là lúc thuật toán GHOST xuất hiện.

GHOST là viết tắt của “Cây con được quan sát nặng nhất tham lam” và là một thuật toán đệ quy tham lam để tìm khối có “hoạt động gần đây” nhất. Về cơ bản, thuật toán này xem xét tất cả các khối gần đây dưới dạng một cây và đi xuống cây bằng cách tham lam chọn nhánh có nhiều chứng thực tích lũy nhất trên toàn bộ nhánh con đó. Chỉ có sự chứng thực gần đây nhất của mỗi trình xác thực mới được tính vào tổng này và cuối cùng quá trình này sẽ diễn ra trên một số khối lá.

Chứng thực không chỉ là phiếu bầu cho khối tốt nhất hiện tại mà còn là điểm kiểm tra gần đây nhất dẫn đến khối đó. Điều đáng chú ý là ở Gasper, các điểm kiểm tra dựa trên kỷ nguyên chứ không phải chiều cao khối. Mỗi kỷ nguyên đề cập đến chính xác một khối điểm kiểm tra, đó là khối trong vị trí đầu tiên của kỷ nguyên đó hoặc nếu vị trí đó bị bỏ qua thì khối gần đây nhất trước vị trí đó. Về mặt lý thuyết, cùng một khối có thể là một điểm kiểm tra ở hai kỷ nguyên khác nhau nếu một kỷ nguyên bằng cách nào đó bỏ qua mọi vị trí, do đó các điểm kiểm tra được biểu diễn bằng các cặp (kỷ nguyên, khối). Trong sơ đồ bên dưới, EBB là viết tắt của “khối ranh giới kỷ nguyên” và đại diện cho điểm kiểm tra cho một kỷ nguyên cụ thể, trong khi “LEBB” là viết tắt của “khối ranh giới kỷ nguyên cuối cùng” và đại diện cho tổng thể điểm kiểm tra gần đây nhất.

Tương tự như Casper, một điểm kiểm tra sẽ trở nên hợp lý khi tổng số lần chứng thực vượt qua ngưỡng 2/3 và được hoàn tất nếu ngay sau đó là một điểm kiểm tra hợp lý khác trong kỷ nguyên tiếp theo. Một ví dụ về cách hoạt động của việc bỏ phiếu này được hiển thị bên dưới:

Có hai điều kiện chém trong Gasper, tương tự như quy tắc chém trong Casper:

  1. Không được bỏ phiếu hai lần trong cùng một thời điểm.
  2. Không có phiếu bầu nào có thể chứa các điểm kiểm tra kỷ nguyên mà "kẹp" các điểm kiểm tra kỷ nguyên của phiếu bầu khác.

Mặc dù dựa trên các kỷ nguyên thay vì chiều cao khối, các quy tắc Casper vẫn đảm bảo rằng không có hai điểm kiểm tra cuối cùng nào có thể xảy ra trên các chuỗi khác nhau trừ khi một phần ba số trình xác nhận có thể bị cắt giảm.

Cũng cần lưu ý rằng các chứng thực cũng được bao gồm trong các khối. Tương tự như cách một khối trong PoW tự biện minh bằng cách sử dụng hàm băm của nó, một điểm kiểm tra cuối cùng trong PoS sẽ tự biện minh bằng cách sử dụng tất cả các chứng thực trước đây của nó. Khi ai đó vi phạm các quy tắc cắt giảm, những chứng thực xấu đó sẽ được đưa vào một khối để chứng minh hành vi vi phạm. Ngoài ra còn có một phần thưởng nhỏ dành cho nhà sản xuất khối đã đưa ra hành vi vi phạm, nhằm tạo động cơ trừng phạt những người vi phạm quy tắc.

Forks

Thật thú vị khi nghĩ về điều gì sẽ xảy ra trong trường hợp một fork. Tóm lại một cách nhanh chóng, fork đề cập đến sự thay đổi trong các quy tắc đồng thuận và chúng có hai loại: fork cứng và fork mềm. Trong một hard fork, các quy tắc mới không tương thích ngược, có khả năng dẫn đến hai chuỗi khối cạnh tranh nếu không phải tất cả mọi người đều chuyển đổi. Trong một soft fork, các quy tắc mới hạn chế hơn các quy tắc cũ, trong khi vẫn giữ cho chúng có khả năng tương thích ngược. Khi hơn 50% thợ mỏ hoặc người xác thực bắt đầu thực thi các quy tắc mới, cơ chế đồng thuận sẽ chuyển đổi mà không chia tách chuỗi. Soft fork thường liên quan đến các bản nâng cấp và loại giao dịch mới, nhưng về mặt kỹ thuật, chúng cũng bao gồm bất kỳ loại kiểm duyệt nào được thực thi bởi đa số 51%. PoS cũng có một loại “fork” thứ ba không có trong PoW: phân chia chuỗi mà không có bất kỳ thay đổi nào về quy tắc. Nhưng vì chúng ta đã đề cập đến vấn đề này nên chúng ta sẽ tập trung vào các nhánh cứng và mềm.

Hãy bắt đầu với trường hợp đơn giản nhất: một hard fork độc lập gây tranh cãi. Khi nói gây tranh cãi, ý tôi là sự thay đổi quy tắc gây chia rẽ người dùng về mặt chính trị. Việc sửa lỗi hoặc thay đổi kỹ thuật nhỏ có thể sẽ không gây tranh cãi, nhưng những việc như thay đổi phần thưởng xác thực có thể sẽ gây tranh cãi. Nếu một hard fork đủ gây tranh cãi, nó có thể dẫn đến việc chia tách chuỗi và sẽ được giải quyết một cách kinh tế bằng cách người dùng bán chuỗi này và mua chuỗi kia. Điều này sẽ tương tự như đợt chia tách Bitcoin Cash vào năm 2017, dường như đã có người chiến thắng rõ ràng:

Bây giờ, giả sử một ngày nọ, những người xác nhận đang ngồi và quyết định rằng họ không được trả đủ tiền và quyết định nên tăng phần thưởng từ 5% mỗi năm lên 10% mỗi năm. Đây sẽ là một sự đánh đổi rõ ràng có lợi cho những người xác nhận với cái giá phải trả là những người không xác nhận, những người giờ đây sẽ ngày càng bị pha loãng hơn. Trong trường hợp chia chuỗi, chuỗi nào sẽ thắng?

Điều này dẫn đến nguyên tắc thứ năm của chúng tôi về PoS, đó là tiền là sức mạnh.

Trong số 120 triệu ETH đang tồn tại, hơn 10% trong số đó hiện đang được đặt cược, như được thấy trong biểu đồ bên dưới:

Đưa ra một hard fork gây tranh cãi giữa những người xác nhận và những người không xác nhận, giả sử rằng tất cả những người không xác nhận đã bán chuỗi mới trên thị trường và tất cả những người xác nhận đã bán chuỗi cũ trên thị trường, thì về lý thuyết, chuỗi cũ sẽ thắng, vì phần lớn ETH vẫn sẽ được nắm giữ bởi những người không xác nhận (90% so với 10%). Nhưng có một vài điều nữa cần xem xét. Đầu tiên, sau bất kỳ sự phân tách chuỗi nào, người xác nhận vẫn sẽ “kiểm soát” cả hai chuỗi khối. Nếu người xác nhận có thể tác động đến chuỗi khác, họ có thể được khuyến khích làm cho chuỗi đó thất bại. Thứ hai, còn có lựa chọn hạt nhân đã được thảo luận trước đó, theo đó chuỗi mới có thể chém bất kỳ ai vẫn xác nhận chuỗi cũ để gây áp lực buộc họ phải tham gia. Cuối cùng, những người xác nhận có thể sẽ mang lại ảnh hưởng chính trị và xã hội đáng kể đối với những người khác trong mạng. Nếu Buterin, Ethereum Foundation và các sàn giao dịch đều đồng lòng quyết định sẽ tăng phần thưởng đặt cược, thì tôi thấy khó tin rằng người dùng và người xác thực Ethereum thông thường có thể duy trì fork cũ đồng thời làm cho nó có giá trị hơn thông qua áp lực mua.

Chuyển sang soft fork, điều gì sẽ xảy ra trong một soft fork gây tranh cãi, chẳng hạn như kiểm duyệt OFAC? Các trình xác thực khá tập trung, như chúng ta có thể thấy trong biểu đồ bên dưới:

Không giống như PoW nơi thợ mỏ có thể chuyển đổi hồ bơi chỉ cần nhấn nút, trình xác thực trong Ethereum sẽ bị khóa vào một địa chỉ đặt cọc cho đến khi họ xử lý giao dịch thoát. Nếu Lido và các sàn giao dịch hàng đầu được thực hiện để kiểm duyệt một số giao dịch nhất định, họ có thể dễ dàng vượt qua đa số 2/3 cần thiết để quyết định các điểm kiểm tra. Trước đó, chúng ta đã thấy cách Buterin và những người xác thực ETH khác có thể cố gắng chống lại một soft fork kiểm duyệt bằng hard fork chống kiểm duyệt của riêng họ, đồng thời loại bỏ những người kiểm duyệt trong quá trình này. Ngay cả khi họ thành công trong việc tạo ra một fork, rất nhiều giá trị sẽ bị phá hủy trong quá trình này, cả từ việc cắt giảm và mất niềm tin.

Đóng cửa suy nghĩ

Trong bài luận này, chúng ta đã xem xét cách PoS giải quyết vấn đề chi tiêu gấp đôi với Gasper, sự kết hợp giữa các quy tắc điểm kiểm tra/chém được gọi là Casper và quy tắc bỏ phiếu “khối tốt nhất” được gọi là GHOST. Tóm lại, Gasper chia thời gian thành các đơn vị gọi là vị trí, trong đó mỗi vị trí có thể có tối đa một khối và các vị trí được nhóm thành các kỷ nguyên, trong đó mỗi kỷ nguyên đề cập đến một điểm kiểm tra. Nếu đa số 2/3 bỏ phiếu cho một điểm kiểm tra, điểm kiểm tra đó sẽ trở nên hợp lý và nếu hai điểm kiểm tra hợp lý xuất hiện liên tiếp thì điểm kiểm tra đầu tiên trong số hai điểm kiểm tra đó sẽ được hoàn tất. Sau khi điểm kiểm tra được hoàn tất, chuỗi song song sẽ không thể được hoàn tất, trừ khi một phần ba số người xác nhận có thể bị cắt giảm.

Trong quá trình này, chúng tôi đã phát hiện ra năm nguyên tắc của PoS:

  1. PoS sử dụng cấu trúc khuyến khích tiêu cực (dựa trên hình phạt).
  2. PoS là một hệ thống được phép.
  3. PoS không có quy tắc.
  4. PoS dựa vào sự thật chủ quan.
  5. Trong PoS, tiền là sức mạnh.

Mỗi nguyên tắc này có hành vi trái ngược nhau trong PoW:

  1. PoW sử dụng hệ thống khuyến khích tích cực (dựa trên phần thưởng).
  2. PoW là một hệ thống không cần cấp phép (bất kỳ ai cũng có thể bắt đầu hoặc ngừng khai thác bất kỳ lúc nào).
  3. Trong PoW, các nhánh thay đổi quy tắc sẽ bị bỏ qua.
  4. PoW dựa vào sự thật khách quan.
  5. Trong PoW, thợ đào phục vụ người dùng và bản thân họ có rất ít quyền lực.

Tôi tin rằng mọi người nên cố gắng tạo ra một thế giới mà họ muốn sống. Nếu, giống như tôi, bạn muốn sống trong một thế giới không được phép, nơi bạn có thể kiểm soát tiền của mình, nơi mà làm việc chăm chỉ được khen thưởng và quyền sở hữu thụ động là một trách nhiệm pháp lý và nơi tiền của bạn sẽ lưu trữ giá trị của nó trong tương lai mà không thay đổi bất chợt, thì bạn có thể muốn suy nghĩ cẩn thận về sự đánh đổi giữa PoW và PoS, đồng thời đấu tranh ủng hộ các nguyên tắc mà bạn muốn tuân theo.

Đây là một bài viết của khách Scott Sullivan. Các ý kiến ​​được bày tỏ hoàn toàn là của riêng họ và không nhất thiết phản ánh quan điểm của BTC Inc. hoặc Bitcoin Magazine.

Dấu thời gian:

Thêm từ Tạp chí Bitcoin