Ý kiến: Lộ trình của Ethereum có nên thay đổi không?
Lưu ý của biên tập viên: Bài viết này đến từNhững người đam mê Ethereum (ID: ethfans), Tác giả: A Jian, được Odaily sao chép với sự ủy quyền.
Những người đam mê Ethereum (ID: ethfans)phiên dịch tiếng trungNhững người đam mê Ethereum (ID: ethfans)
, Tác giả: A Jian, được Odaily sao chép với sự ủy quyền.Từ "Lộ trình ethereum tập trung vào rollup" (phiên dịch tiếng trung
) kể từ khi bài báo được xuất bản, toàn bộ cộng đồng đã đặt ra câu hỏi về lộ trình của Ethereum (đặc biệt là Ethereum 2.0).
Bản dịch tiếng Trung của đoạn trích
), Vitalik đã nói rõ rằng lộ trình đã thay đổi: (1) Tầm quan trọng của Giai đoạn 2 không còn được nhấn mạnh vào thời điểm hiện tại và Giai đoạn 1 được dành riêng để triển khai phân đoạn dữ liệu (dữ liệu phân đoạn) để sử dụng cho tổng số; (2) Beacon Chuỗi sẽ có chức năng thực thi, nghĩa là sau khi hợp nhất Eth1-Eth2, khối chuỗi beacon sẽ trực tiếp chứa các giao dịch; (3) Ba nhiệm vụ chính sau khi triển khai Giai đoạn 0: hỗ trợ khách hàng nhẹ, phân mảnh dữ liệu và việc hợp nhất sẽ được xúc tiến song song. Một trong hai mô-đun sẽ được triển khai ngay khi sẵn sàng.
Lộ trình ba giai đoạn cho ETH2.0
Giai đoạn 0: Beacon chain với PoS là cơ chế đồng thuận
Giai đoạn 1: Nhiều chuỗi phân đoạn
Giai đoạn 2: Thêm chức năng thực thi cho tất cả các phân đoạn
Trong hai năm qua, lộ trình Eth2.0 được lưu hành rộng rãi đã lên kế hoạch cho ba thành phần tuần tự:
Giai đoạn 0: Beacon chain với PoS là cơ chế đồng thuận
Giai đoạn 1: Nhiều chuỗi phân đoạn
Giai đoạn 2: Thêm chức năng thực thi cho tất cả các phân đoạn
Từ lộ trình này, có thể thấy rõ mục tiêu ban đầu của Ethereum 2.0 là tạo ra một hệ thống “thực thi phân đoạn”, nghĩa là: mỗi phân đoạn có một trạng thái riêng, và các trạng thái này được chia thành các quy tắc chuyển đổi trạng thái của mỗi phân đoạn là đã thay đổi; trạng thái đã thay đổi được hoàn thiện bởi chuỗi đèn hiệu; do đó, Ethereum 2.0 trở thành một hệ thống trong đó nhiều phân đoạn có thể xử lý các giao dịch song song. Điều này cũng có nghĩa là Ethereum 2.0 là một hệ thống tách rời "đồng thuận" và "xử lý giao dịch (xác minh)". Các trình xác minh được chỉ định cho mỗi phân đoạn chịu trách nhiệm xác minh tính chính xác của các giao dịch và trạng thái; nhưng việc hoàn thiện các trạng thái này phụ thuộc vào Dựa vào cơ chế hoàn thiện kỷ nguyên của chuỗi đèn hiệu, hai quá trình không được đồng bộ hóa hoàn toàn.
Kiến trúc "PoS beacon chain + multi-shard" này dường như cũng tận dụng tốt các đặc điểm của chính thuật toán PoS: để giải quyết vấn đề No-thing-at-stake (các khối PoS không cần trả phí tính toán, vì vậy họ đủ điều kiện. Tài khoản tạo khối sẽ cố gắng tạo khối trên các nhánh khác nhau cùng một lúc, khiến hệ thống bị hỏng), thuật toán Casper được sử dụng trong Ethereum 2.0 yêu cầu người dùng gửi một phần tiền gửi trước để đủ điều kiện đối với sản xuất khối và nếu người xác minh lạm dụng tiêu chuẩn sản xuất khối (chẳng hạn như hỗ trợ hai nhánh cùng một lúc), khoản đặt cọc sẽ bị phạt; do đó, các thuật toán như Casper thực sự tạo ra hai trạng thái trên chuỗi khối có thể giao tiếp với nhau nhưng thay đổi độc lập với nhau: một là bình thường Hai là trạng thái của người dùng và một là trạng thái trọng lượng khối của người xác minh; quá trình đồng thuận dựa trên trạng thái trọng số khối và đạt được sự đồng thuận cũng sẽ thay đổi khối trạng thái trọng số; do đó, quy trình đồng thuận vốn đã độc lập với việc xác minh các giao dịch của người dùng, có thể giải quyết vấn đề khớp nối; đối với các đợt giao dịch tùy ý và trạng thái kết quả, quy trình đồng thuận có thể được trừu tượng hóa thành một "cơ chế quyết toán cuối cùng" và về mặt logic, đa thực thi song song shard trở nên khả thi.
Về khả năng mở rộng của nó, tên của công nghệ Ethereum sharding "Quadratic sharding (Quadratic sharding)" tiết lộ manh mối: giả sử rằng độ phức tạp thực thi của giao dịch trên phân đoạn có thể được giảm xuống mức độ khó giống như việc xác minh tiêu đề khối, thì kiến trúc thực thi phân mảnh có thể làm cho năng lực xử lý của toàn bộ hệ thống tăng theo phương trình bậc hai do năng lực xử lý của các nút tham gia tăng tuyến tính. Theo thuật ngữ phổ thông, nếu các nút tham gia mạng (trung bình) có thể xác minh 4 tiêu đề khối trong một khoảng thời gian, điều đó có nghĩa là khi tham gia vào một phân đoạn, các nút có thể xác minh 4 giao dịch cùng một lúc. của hệ thống là 4 phân đoạn × 4 giao dịch/phân đoạn = 16 giao dịch, nếu khả năng xử lý của nút là 8 (2 lần) thì khả năng xử lý sẽ là 64 giao dịch (4 lần).
Nghe có vẻ hay, nhưng đối số "mở rộng mức vuông" bao gồm các giả định sau:
(1) Có một công nghệ giúp đơn giản hóa việc xác minh các giao dịch phân đoạn với độ khó tương tự như xác minh các tiêu đề khối;
(2) Không có giao dịch giữa các phân đoạn, nghĩa là các giao dịch trong mỗi phân đoạn sẽ hoàn toàn không phụ thuộc vào nhau. Các giao dịch giữa các phân đoạn cần chiếm khả năng xử lý của nhiều phân đoạn và cũng chiếm khả năng xử lý của chuỗi đèn hiệu, điều này sẽ làm giảm đáng kể khả năng mở rộng.
Về (1), giả định này có khả năng được thỏa mãn. Không trạng thái là một công nghệ như vậy. Ý tưởng của nó là khi phổ biến các giao dịch (hoặc khối phổ biến), có bằng chứng về trạng thái truy cập của sàn giao dịch (nhân chứng), do đó người xác minh giao dịch có thể xác minh tính hợp lệ của giao dịch mà không cần phải giữ dữ liệu trạng thái tại thời điểm thực hiện giao dịch. Điều này cực kỳ quan trọng. Nếu không có trạng thái không trạng thái, người xác minh tham gia xác minh phân đoạn phải lưu trạng thái của phân đoạn, bởi vì người xác minh sẽ liên tục được gán cho các chuỗi phân đoạn khác nhau, điều đó có nghĩa là họ phải lưu tất cả các phân đoạn. Trên thực tế, nghĩa là họ phải liên tục tải xuống các khối của tất cả các phân đoạn và xử lý các giao dịch, để toàn bộ hệ thống sụp đổ thành một hệ thống khối lớn (ví dụ: đầu tư tài nguyên có thể xử lý 16 giao dịch, xử lý 16 giao dịch). Thật không may, cho đến nay, Ethereum 1.0 vẫn chưa phát triển một phương pháp không trạng thái đủ nhẹ.
Ngoài khả năng mở rộng đáng ngờ, việc thực thi phân mảnh đặt ra một số vấn đề thú vị về mặt kinh tế. Ví dụ: nếu thời gian xử lý của giao dịch giữa các phân đoạn vượt quá thời gian xử lý của giao dịch nội bộ (điều này là không thể tránh khỏi), điều này có nghĩa là giá trị của ETH trên các phân đoạn khác nhau sẽ không giống nhau. Như thể một đô la bên trong Hoa Kỳ không thực sự giống như một đô la bên ngoài Hoa Kỳ. Bất kể có bao nhiêu phân đoạn, sẽ có ít nhất hai mức giá ETH, một là giá ETH trên phân đoạn có ứng dụng tài chính thịnh hành nhất (tức là phân đoạn Eth1); giá còn lại là giá của ETH trên phân đoạn khác mảnh vỡ Cái sau phải trả một khoản phí xử lý nhất định và trả một khoảng thời gian nhất định trước khi có thể đổi lấy cái trước, vì vậy phải có một số chiết khấu cho cái trước. Tương tự như vậy, ngay cả khi có uniswap trên mỗi phân đoạn, độ trượt giao dịch của thị trường trên các phân đoạn khác nhau phải khác nhau, cuối cùng, mọi người sẽ hội tụ về một phân đoạn, bởi vì khi mọi người ở cùng nhau, tính thanh khoản là dồi dào nhất và hiệu quả sử dụng vốn là cao nhất. . Ở một mức độ nào đó, có thể coi rằng có rất ít nhu cầu về giao dịch giữa các phân đoạn - nhưng điều này cũng có nghĩa là khả năng xử lý giao dịch nhàn rỗi trên các phân đoạn khác là vô nghĩa.
Những khó khăn kỹ thuật của hệ thống thực thi phân mảnh sẽ không được nhắc lại ở đây, những người quan tâm có thể suy nghĩ về cách hệ thống thực thi phân mảnh trả phí xử lý. Nhưng điều tôi muốn nói ở đây là quan điểm thiết kế hệ thống thực thi phân mảnh đã đi ngược lại nhu cầu thực tế của mọi người và cũng đi ngược lại quy luật phát triển của vạn vật. Trạng thái toàn cầu (khả năng kết hợp) không phải là vấn đề, mà chính xác là thứ mọi người cần; chính xác là vì Ethereum cho phép tất cả các ứng dụng tài chính được kết hợp ngay lập tức, tạo ra một không gian nơi giá trị có thể lưu thông mà không có ma sát và Ethereum có tiềm năng thay đổi thế giới; tạo ra ma sát để lưu thông giá trị ở lớp giao thức là tự chuốc lấy thất bại. Khi bạn có lớp cơ sở tốt, bạn nên tìm cách duy trì lớp cơ sở này, để người dùng chọn phần còn lại và để hệ sinh thái tự phát triển — đừng nghĩ rằng thiết kế có thể thiết kế hệ sinh thái, thiết kế quá mức chỉ gây ra chi phí trên tất cả mọi người.
Việc gác lại việc thực thi manh mún (Giai đoạn 2) chứng tỏ sự khó khăn của nó——trong tương lai gần, con đường này sẽ không mang lại kết quả khả quan. Mặc dù vậy, tôi không nghĩ rằng các nhà nghiên cứu của Eth2.0 đã từ bỏ hoàn toàn lộ trình 3 giai đoạn, Vitalik cũng nhấn mạnh rằng lộ trình thay đổi cũng hoàn toàn tương thích với Giai đoạn 2, nhưng Giai đoạn 2 không còn được ưu tiên nữa.
Nhưng trên thực tế, từ bỏ thực thi phân mảnh mới là con đường mà Ethereum nên chọn.
tiêu đề phụ
Lộ trình chuỗi Beacon có thể thực thi
Trong lộ trình mới của Ethereum 2.0, điểm nổi bật nhất là khối chuỗi đèn hiệu sẽ chứa các giao dịch của phân đoạn Eth1 được hợp nhất, tức là chuỗi đèn hiệu có chức năng thực thi. Các shard khác chỉ có chức năng lưu dữ liệu.
Trên thực tế, vị trí của "data sharding" trong lộ trình mới là "lớp dữ liệu sẵn có (dữ liệu sẵn có) cho cuộn lên".
Nếu không có sharding có thể thực thi được, thì không thể chia tỷ lệ bậc hai. Vì vậy, khả năng mở rộng của kiến trúc "PoS Layer-1 + rollup + rollup data không chiếm không gian khối chuỗi chính" này là gì?
Để trả lời câu hỏi này, chúng ta hãy xem chế độ tương tác giữa sơ đồ tổng số và chuỗi chính.
Trước hết, bạn có thể hiểu rollup system như một hợp đồng phi trạng thái. Trạng thái bên trong của hợp đồng này (người dùng có bao nhiêu tiền) không hiển thị với thế giới bên ngoài, tuy nhiên, dữ liệu của tất cả các giao dịch diễn ra trong hợp đồng sẽ được tiết lộ thường xuyên Ra mắt và xuất bản nó trên chuỗi chính để bất kỳ bên thứ ba nào cũng có thể xây dựng lại trạng thái nội bộ của hợp đồng sau khi có được những dữ liệu này.
Các đặc điểm của rollup (chẳng hạn như zkRollup) sử dụng bằng chứng hợp lệ là: mỗi khi hợp đồng tiết lộ dữ liệu giao dịch, nó sẽ đi kèm với "bằng chứng toàn vẹn tính toán" rằng các giao dịch này đã được thực hiện chính xác, vì vậy trạng thái gốc mới phải là XXX; nếu Nếu bằng chứng có thể vượt qua xác minh của hợp đồng, hợp đồng sẽ cập nhật trạng thái gốc; nếu bằng chứng không thể vượt qua xác minh, hợp đồng sẽ từ chối cập nhật.
Sơ đồ tổng số (chẳng hạn như Tổng số lạc quan) sử dụng bằng chứng lỗi thì ngược lại: mỗi khi bất kỳ ai tiết lộ dữ liệu giao dịch cho hợp đồng, họ phải gửi một khoản tiền gửi và khẳng định rằng gốc trạng thái mới của hợp đồng là YYY; sau một khoảng thời gian , Bất kỳ ai khác cũng có thể gửi tiền ký quỹ và đưa ra bằng chứng giả để phản đối khẳng định đó; bằng chứng giả chứng minh rằng lô giao dịch bị lỗi hoặc trạng thái mới sau khi xử lý giao dịch hoàn toàn không phải là YYY; nếu thử thách thành công, người đưa ra xác nhận sai Tiền đặt cọc sẽ bị mất, nếu không có ai thách thức trong một khoảng thời gian, gốc trạng thái cập nhật hợp đồng là YYY.
Hai giải pháp này phải public dữ liệu lên chain nên sẽ chiếm dung lượng trên chain, hơn nữa độ lớn của không gian trên chain quyết định khả năng xử lý của hệ thống rollup trên một đơn vị thời gian (tức là TPS). Suy nghĩ sâu hơn một chút, nếu những dữ liệu giao dịch này có thể được phát hành ở một nơi ít ràng buộc dữ liệu hơn, hay nói cách khác, nếu chúng không chiếm không gian của các khối Lớp 1, thì khả năng xử lý có thể tăng gấp đôi. Nếu có nhiều nơi như vậy, nó cũng có thể tạo ra hiệu ứng nhân rộng.
(1) Phương pháp "tải xuống nếu bạn muốn tải xuống và không tải xuống nếu bạn không muốn tải xuống" hoàn toàn không hoạt động trên zk rollup: khi zk rollup muốn cập nhật trạng thái gốc, trình xác minh của hoạt động cập nhật hợp đồng cuộn zk (tức là Lớp 1) cũng phải lấy dữ liệu giao dịch tương ứng với bằng chứng khi chấp nhận bằng chứng, nếu không sẽ không vượt qua được quá trình xác minh. (Không cần cung cấp dữ liệu giao dịch và cũng có một giải pháp để thúc đẩy gốc của trạng thái hợp đồng bằng cách chỉ xác minh bằng chứng, được gọi là Validium, không phải là bản tổng hợp). Nói cách khác, nếu chỉ xét đến zk rollup, thì phương pháp "data sharding" không khác gì các khối lớn xét về băng thông. Bất kể dữ liệu được gửi đến ai và được lưu trữ ở đâu, tất cả các nút đều phải tải xuống dữ liệu đó.
Tóm lại là
(2) Đối với tổng số lạc quan, nếu bạn sẵn sàng chấp nhận một giả định lạc quan hơn, tất nhiên bạn có thể. Bạn hoàn toàn không thể tải xuống dữ liệu giao dịch và chỉ giữ trạng thái gốc mới nhất của trạng thái cuối cùng. Chỉ khi xảy ra tranh chấp, hãy tải xuống có liên quan Từ quan điểm của toàn bộ nút, nó không mất khả năng xác minh trạng thái của hợp đồng; nhưng từ quan điểm của người dùng, mọi thứ hoàn toàn khác: bạn không chắc liệu mình có thể xây dựng lại trạng thái của mình hay không bất cứ lúc nào , để hoàn tất việc rút tiền. Nói cách khác, người dùng sẽ không chắc chắn liệu họ đang sử dụng bản tổng hợp lạc quan hay plasma. Ban đầu, giải pháp tổng số lạc quan là đảm bảo rằng tất cả các nút đầy đủ đều có bản sao lưu các giao dịch lịch sử, vì vậy người dùng có thể dễ dàng xây dựng lại trạng thái của chính họ và gửi bằng chứng trạng thái (hoặc xác nhận) để hoàn tất việc rút tiền; nhưng nếu bảo đảm này bị mất, bạn sẽ không chắc chắn nếu tôi có thể xây dựng lại nhà nước. Tính bảo mật của bản tổng hợp lạc quan cũng sẽ bị ảnh hưởng: giả định bảo mật của nó là ít nhất một trong số những người nhận được dữ liệu giao dịch tuân theo thỏa thuận; trong chế độ phân đoạn dữ liệu, bạn không biết có bao nhiêu người sẽ truy cập Yêu cầu phần này của Dữ liệu giao dịch.
Nói chung, khi chế độ "phân mảnh dữ liệu" được kết hợp với cuộn zk, nó không thể cung cấp khả năng mở rộng lớn hơn về mặt băng thông, nhưng có tác dụng tương tự như mở rộng không gian khối; khi được kết hợp với cuộn tối ưu, so với các khối lớn, Nó lợi thế về khả năng mở rộng tỷ lệ nghịch với tần suất của các thách thức; nghiêm trọng hơn, nó có nguy cơ biến tổng số lạc quan thành plasma (theo định nghĩa, tổng số lạc quan không còn tồn tại nữa và nên được gọi bằng một cái tên khác giữa tổng số lạc quan và plasma).
tiêu đề phụ
Tóm lại là
Giải pháp Rollup thực sự là một con phượng hoàng đã bay ra sau khi học được những bài học xương máu từ quá trình phát triển Lớp 2. Tính năng lớn nhất của nó là nó cung cấp đủ sự bảo vệ để đảm bảo an toàn cho tiền của người dùng. Bởi vì bất kỳ ai có được dữ liệu giao dịch đều có thể xây dựng lại trạng thái và chuỗi khối đảm bảo tính khả dụng liên tục của dữ liệu giao dịch này, sơ đồ tổng số có thể cung cấp khả năng bảo vệ người dùng thứ hai trong số các sơ đồ lớp 2. Chỉ với một giải pháp như vậy, người dùng mới dám thực sự sử dụng nó. Từ bỏ lợi ích này và thiết kế một hệ thống dựa trên giả định lạc quan về hiệu suất tối đa chỉ có thể thiết kế những thứ mà người dùng ngại sử dụng.


