

@StopAndDecrypt:
Có bất kỳ người đam mê Bitcoin nào giải thích về zkrollup không?
Tôi không mong đợi các nhà phát triển ethereum trung thực về sự cân bằng, tôi cũng không mong đợi những người hâm mộ ethereum thực sự hiểu cách thức hoạt động của nó.
(đây là một câu hỏi nghiêm túc)
@SomsenRuben:
Theo thuật ngữ Bitcoin, đây là sơ đồ khối lớn - mọi người tải xuống dữ liệu bổ sung. Trước khi giao dịch đi vào khối, người trung gian sử dụng bằng chứng SNARK để tổng hợp/nén tất cả dữ liệu nhân chứng (nhân chứng, chẳng hạn như chữ ký) (SNARK hiện tại cần sử dụng cài đặt khởi động đáng tin cậy) và xuất bản cam kết thiết lập UTXO của giao dịch mới trạng thái ( Nó cũng được chứng minh bằng bằng chứng SNARK ở trên).
Mọi người xác minh SNARK này, chứng minh tính hợp lệ của khối và tính chính xác của cam kết đã đặt UTXO. Không ai phải tạo bộ UTXO, vì SNARK đã chứng minh rằng nếu muốn, bạn có thể tạo nó. Nếu thiếu người trung gian đó, bạn có thể chi tiêu tiền của mình chỉ bằng cách chứng minh trạng thái của mình bằng cách sử dụng cam kết đã đặt UTXO.
Nói tóm lại, lợi thế là bạn có thể lưu dữ liệu nhân chứng và tính toán (cả hai đều được thuê ngoài bằng chứng SNARK). zkrollup chỉ áp dụng những gì chúng tôi luôn biết rằng SNARK có thể làm. Sự khác biệt duy nhất có thể là nó được sử dụng trên một bộ UTXO duy nhất.
Xem thêm bài viết về SNARK của tôi: SNARK và Tương lai của chuỗi khối. (Ghi chú của người dịch: Được đính kèm bên dưới. Nó giải thích rõ ràng những gì SNARK có thể làm và tại sao zkrollup xuất bản dữ liệu giao dịch mà không có dữ liệu nhân chứng.)
quy tắc thứ hai(rất dài, xin hãy kiên nhẫn):
(Bỏ qua cuộc thảo luận của hai người về việc liệu sự gia tăng của mạng cấp hai có làm giảm nhu cầu về không gian khối cấp một hay không)
@AdrianoFeria:
Sidechains không thể cung cấp mức độ bảo mật giống như L1. Statechain không hoàn toàn đáng tin cậy. Tôi chưa nghiên cứu ngân hàng Chaumian.
@bergealex4:
(Sidechain) Tất nhiên là không, nó chưa bao giờ nói là có thể.
Bạn không thể sao chép bảo mật của L1 trên các lớp.
@AdrianoFeria:
"Bạn không thể sao chép bảo mật L1 trên các lớp."
Đây là những gì ZK-Rollup có thể làm.
@bergealex4:
Chà, ngay cả khi chúng tôi chấp nhận tiền đề này, thì điều này một mình không làm cho ETH tốt hơn BTC.
@AdrianoFeria:
Chỉ dựa vào điều này, Ethereum có một cơ chế mở rộng để duy trì tính bảo mật của L1 mà không cần mở/đóng kênh hoặc rủi ro về tính khả dụng của dữ liệu vốn có trong Lightning Network.
Chúng tôi không thể dựa vào Twitter để thảo luận về tổng thể hệ thống nào tốt hơn.
Trong mọi trường hợp, zk-rollup là một bước tiến lớn và mang lại lợi ích lớn hơn nhiều so với các kênh thanh toán.
@SomsenRuben:
ZK-rollup và các kênh thanh toán là trực giao. zk-rollups giống như các khối mở rộng - dữ liệu không phải nhân chứng được đưa vào chuỗi và được xác minh bởi mọi người (thông qua SNARK, với giá rẻ). Tôi có thể hiểu tại sao các bạn gọi nó là "L2", nhưng về mặt kỹ thuật thì không phải vậy. Nó chỉ thực hiện tổng hợp dữ liệu nhân chứng không tương tác (NIWA). Xem bài viết của tôi "SNARK và tương lai của chuỗi khối".
@AdrianoFeria:
Đó là L2 vì việc tính toán SNARK được giao cho một mạng khác. L1 chỉ được sử dụng để lưu trữ bằng chứng và hóa ra nó cải thiện thông lượng của L1 khoảng 100 lần. Theo những gì tôi hiểu, nó tương đương với nén không mất dữ liệu.
@SomsenRuben:
"L2" chỉ là một nhãn. Điều quan trọng là chúng tôi đồng ý với những gì SNARK thực hiện trong quy trình này - tổng hợp dữ liệu nhân chứng không tương tác, cũng có thể được sử dụng trên chuỗi chính (nghĩa là nó được sử dụng hoàn toàn trên L1 và các công cụ khai thác thực hiện NIWA) hoặc được sử dụng trên chuỗi trong chuỗi (Giống như zk-rollup, nhưng nó chỉ là "khối phóng to").
Trong mạng Bitcoin, dữ liệu nhân chứng chỉ chiếm 50% khối (không giống như Ethereum), vì vậy bạn chỉ có thể nhận được tối đa 2 lần cải thiện hiệu quả (từ góc độ không gian khối) và điều này giả định là công nghệ SNARK hoàn hảo ; hiệu ứng mở rộng này rất chung chung. Ngay cả với nó, các kênh thanh toán rõ ràng là có lợi.
@AdrianoFeria:
Có thể chạy kênh thanh toán trên cơ sở tổng số không?
@SomsenRuben:
Đương nhiên là có thể, cho nên tôi mới nói không cùng một không gian.
(nhẹ nhàng)
@AdrianoFeria:
Có thể khẳng định rằng nó (zk-rollup) tăng thông lượng L1 với chi phí tính toán bổ sung (trong trường hợp của Ethereum, trình xác minh không thể thực hiện điều này do yêu cầu thông số kỹ thuật hiện tại)? Và, ngay cả khi người cung cấp bằng chứng gặp sự cố, tiền vẫn có thể được lấy lại.
@SomsenRuben:
Khái niệm NIWA được trình bày trong bài viết của tôi giải thích trực giác này. Bất kỳ ai cũng có thể thu thập tất cả dữ liệu nhân chứng (bao gồm chữ ký, dữ liệu chứng minh tính hợp pháp của giao dịch) và nén/tổng hợp thành bằng chứng SNARK. Tất cả chỉ cần nhiều hơn một chút để ai đó mang lại lợi ích cho tất cả mọi người.
Tiền luôn có thể được lấy lại và người cung cấp bằng chứng luôn có thể được thay thế.
@AdrianoFeria:
Tôi hiểu điều này, nhưng lý tưởng nhất là tính toán SNARK nên được cung cấp dưới dạng dịch vụ bởi một mạng phi tập trung. Đó là những gì đang xảy ra trong hệ sinh thái Ethereum và tôi không hiểu tại sao một thứ như thế lại không được mong muốn đối với Bitcoin.
@SomsenRuben:
Nó luôn có giá trị, nhưng bạn đang đánh giá quá cao lợi ích của nó (tỷ lệ mở rộng tối đa chỉ gấp 2 lần) và đánh giá thấp chi phí của nó (toán học của nó chưa được kiểm chứng, nó không hiệu quả nếu không sử dụng cài đặt khởi động đáng tin cậy và tập trung hóa các công cụ khai thác).
Tôi tin rằng một ngày nào đó SNARK sẽ trưởng thành và có ý nghĩa, nhưng điều đó vẫn chưa xảy ra.
@AdrianoFeria:
Sự đồng thuận chung là zkrollup mở rộng quy mô tốt hơn 100 lần trên Ethereum (thông tin này nhất quán trên nhiều nguồn).
Tại sao nó không có tác dụng tương tự đối với Bitcoin?
@SomsenRuben:
Hai lý do tôi có thể nghĩ ra:
So với Bitcoin, dữ liệu nhân chứng trong Ethereum lớn hơn nhiều và tốn kém hơn để xác minh - vì vậy SNARK có thể giảm bớt sự kém hiệu quả của Ethereum tốt hơn.
Tái sử dụng địa chỉ làm giảm hơn nữa dữ liệu không phải nhân chứng—một sự hy sinh quyền riêng tư khó có thể chấp nhận được đối với Bitcoin.
Yêu cầu của tôi rất dễ lý giải về:
SNARK chỉ có thể giảm dữ liệu nhân chứng
Dữ liệu nhân chứng của bitcoin chiếm khoảng 50% khối
Chỉ cần bạn hiểu những điều này thì không cần phải "tin mình là chuyên gia", nhưng suy luận trăm lần cũng khó.
@AdrianoFeria:
Tôi không thấy ai thách thức yêu cầu gấp 100 lần này ở bất cứ đâu. Tôi giả định rằng thiết kế kỹ thuật của zkrollup có thể hơi khác so với ví dụ bitcoin của bạn và/hoặc có liên quan đến các giới hạn tập lệnh UTXO hoặc bitcoin.
@SomsenRuben:
Tôi sẽ không nhanh chóng để bắt đầu giả định. "Đừng tin, hãy tự kiểm chứng".
Nói chung, tôi cũng khuyên bạn không nên bảo vệ một yêu cầu trừ khi bạn có niềm tin rất mạnh mẽ. Hãy khiêm tốn, http://www.paulgraham.com/identity.html
@AdrianoFeria:
Vì vậy, tôi cũng hoan nghênh những thách thức kỹ thuật đối với tuyên bố này. Dựa trên thực tế là nó đã được trích dẫn bởi nhiều nhà phát triển đáng chú ý, được lưu hành rộng rãi và không bị thách thức, nên ủng hộ tuyên bố này là hợp lý. Tổng số gần như được tích hợp và bằng chứng đã có sẵn.
Bạn cần phải thực tế về câu thần chú "đừng tin tưởng, hãy tự mình kiểm chứng". Có nhiều lý do để tin vào điều gì đó hơn là tự mình kiểm chứng mọi thứ. Ví dụ:
Tin tưởng SHA-256 hoạt động tốt
Tin tưởng vào mật mã khóa công khai
Tạo nhị phân cho máy khách không nhất thiết có nghĩa là trình biên dịch hợp lệ
@SomsenRuben:
Tôi vừa đưa ra một bằng chứng rằng bạn (nên) có thể xác minh rằng Bitcoin không thể được mở rộng hơn hai lần bởi SNARK.
Theo quan điểm này, tuyên bố rằng Ethereum có thể đạt được quy mô gấp 100 lần ít nhất là đáng nghi ngờ ban đầu.
Nếu điều này không được gọi là "xác nhận" thì tôi không biết nó là gì.
@AdrianoFeria:
Tôi chưa thể hiểu hết vấn đề này, nhưng bài viết này có vẻ giống như một tình huống hoàn toàn khác so với những gì bạn mô tả với Bitcoin. Bạn có ý kiến nào hay không? https://medium.com/interdax/ethereum-l2-optimistic-and-zk-rollups-dffa58870c93
@SomsenRuben:
Có nhiều kế hoạch mở rộng được liệt kê trong bài viết, nhưng theo như tôi biết, ngoại trừ zk-rollup, các kế hoạch khác đã bị cộng đồng Ethereum từ bỏ.
Nhưng so sánh thì tôi hiểu Bitcoin hơn. Nếu bạn có bất kỳ câu hỏi nào về các bài viết của tôi, tôi rất sẵn lòng trả lời chúng. Điều này cũng sẽ gián tiếp giúp bạn hiểu về Ethereum.
@AdrianoFeria:
Vitalik vừa xuất bản bài báo này, tôi chưa có thời gian để đọc nó, nhưng có vẻ như nó giải thích rất nhiều chi tiết về thiết kế kỹ thuật và chi tiết về lượng dữ liệu có thể được nén cho các loại giao dịch khác nhau. "Hướng dẫn chưa đầy đủ về Rollup》
@SomsenRuben:
bài báo hay. Vì vậy, cả hai lý do của tôi đều đúng, nhưng bây giờ tôi hiểu rõ hơn 100 lần này đã xảy ra như thế nào. Trong Ethereum, cả không gian và tính toán đều tiêu thụ gas, nhưng chi phí gas của cái trước thấp hơn. Vì SNARK giảm lượng tính toán xuống gần bằng 0, nên tất cả gas có thể được sử dụng để xuất bản dữ liệu. Những bất lợi là gì? Khối trở nên lớn hơn.
@AdrianoFeria:
Các khối ngày càng lớn hơn, nhưng đây là cách sử dụng không gian lưu trữ hiệu quả nhất mà tôi biết.
Ngoài ra, bài viết này cũng chứng minh rằng một giao dịch thông thường có thể tiết kiệm không gian gấp 10 lần. Vì vậy, điều này cho thấy rằng tổng số có lợi thế hiệu quả gấp 5 lần so với tình huống bạn mô tả với Bitcoin. Đây không phải là nhỏ.
@SomsenRuben:
Bạn đã quên chi phí thứ hai, tái sử dụng địa chỉ, đây là một sự hạ cấp nghiêm trọng về quyền riêng tư. Bạn cũng có thể giới thiệu một bản nâng cấp ngược như vậy cho Bitcoin để tiết kiệm dung lượng khối, nó đã được đề xuất trước đây, nhưng nó đã bị từ chối vì lý do chính đáng.
@AdrianoFeria:
Tôi không thấy việc tái sử dụng địa chỉ là một vấn đề cụ thể về tổng số có thể được giảm thiểu như thế nào bằng các hợp đồng thông minh nâng cao quyền riêng tư được thiết kế đặc biệt. Hơn nữa, ví không thể sử dụng một địa chỉ mới mỗi khi nhận tiền mặt, mô phỏng quyền riêng tư của UTXO?
@SomsenRuben:
Điều quan trọng là việc sử dụng lại địa chỉ là cách của họ để giảm quy mô giao dịch. Nếu bạn sử dụng địa chỉ mới (và thay đổi địa chỉ) cho mọi giao dịch, quy mô giao dịch của zk-rollup sẽ lớn hơn nhiều.
(Có các cuộc thảo luận bên lề khác trong cuộc thảo luận này, không được đính kèm ở đây)
(Ghi chú của người dịch: Tôi không biết độc giả có còn nhớ hiệu ứng mở rộng của zk-rollup đã được thể hiện như thế nào không. Nói một cách đơn giản, nó giả định rằng một giao dịch bình thường trên chuỗi chính tiêu thụ X đơn vị gas, trong khi ở zk-rollup Rollup chỉ cần tiêu thụ Y đơn vị gas, vì vậy hiệu ứng mở rộng là X/Y. Nói cách khác, tất cả các lập luận đều dựa trên giá gas của các hoạt động khác nhau trên Ethereum, nhưng gas không phải là tài nguyên thực, nó chỉ là ảo. đơn vị giả định rằng chi phí của các tài nguyên khác nhau có thể được giảm xuống một chỉ mục. Nếu bạn tăng gấp đôi giá gas của calldata ngay bây giờ, hiệu ứng mở rộng của zk-rollup có thể tăng gấp đôi (EIP-4488 và 4490chính xác ý nghĩa của nó). Đây không phải là một trò đùa sao? Ngược lại, trình diễn của Somsen về hiệu ứng mở rộng của SNARK gần với mặt nguyên bản của công nghệ, đó là lưu dữ liệu nhân chứng (và lý tưởng nhất là lưu tính toán xác minh).
bài viết nàybài viết này). Cái gọi là phương pháp mô phỏng UTXO của Adriano và sử dụng địa chỉ mới mỗi lần không phải là không thể, nhưng nó không phải là một thông lệ tốt trong thế giới Ethereum, bởi vì tất cả các địa chỉ lịch sử sẽ vẫn ở trạng thái và trở thành gánh nặng cho nút này. là Cái gọi là vấn đề bùng nổ trạng thái.
tiêu đề cấp đầu tiên
SNARK và tương lai của chuỗi khối
Bởi Ruben Somsen
Nguồn: https://medium.com/@RubenSomsen/snarks-and-the-future-of-blockchains-55b82012452b
SNARK (súc tích phi tương tác luận của kiến thức, ngắn gọn chứng minh không tương tác của tri thức) thường được coi là liều thuốc để “giải quyết” vấn đề mở rộng. Mặc dù SNARK có thể mang lại những lợi ích ngoài sức tưởng tượng, nhưng chúng ta cũng cần biết rằng SNARK không thể giải quyết các hạn chế về băng thông mà các chuỗi khối hiện đang gặp phải.
Bài viết này hy vọng sẽ làm sáng tỏ các SNARK bằng cách cung cấp một cái nhìn tổng quan (tương đối) ngắn gọn về những gì SNRAK có thể và không thể làm đối với các chuỗi khối. Chúng ta sẽ bắt đầu bằng cách nói về lý do tại sao chức năng liên quan đến chuỗi khối của nó có thể được tóm tắt ngắn gọn là “Nén nhân chứng không tương tác (NIWA)”. Miễn là bạn biết Bitcoin hoạt động như thế nào, bạn có thể hiểu bài viết này.
tiêu đề cấp đầu tiên
SNARK là gì?
tiêu đề phụ
trường hợp cờ vua
- Luật chơi: Luật chơi cờ vua
- Trạng thái bắt đầu: vị trí bắt đầu A của bảng
- Kết quả: vị trí mới B của bảng
Cách truyền thống để chứng minh rằng một trò chơi chuyển đổi từ vị trí A sang vị trí B là hợp lệ là hiển thị từng bước và kiểm tra xem từng bước có hợp lệ không. SNARK cũng có thể được sử dụng để kiểm tra tính hợp lệ của các chuyển đổi trạng thái, nhưng tốt hơn là:
- Các bước không cần phải công khai (quyền riêng tư, tiết kiệm dữ liệu)
- Xác thực hiệu quả hơn về mặt tính toán
tiêu đề phụ
trường hợp chuỗi khối
- Quy tắc: Phần mềm nút đầy đủ
- Trạng thái bắt đầu: tiêu đề khối và UXTO đặt giá trị băm tại thời điểm A
- Kết quả: tiêu đề khối và UTXO được đặt tại thời điểm B
Tương tự như cờ vua mà chúng tôi đã đề cập ở trên, cách thông thường để xác minh tính hợp lệ của các chuyển đổi trạng thái là: bắt đầu từ bộ UTXO tại điểm A (tất cả các giao dịch chưa được sử dụng), nhận tất cả các khối cho đến điểm B và cập nhật bộ UTXO. Với SNARK, không cần dữ liệu đó để chứng minh tính hợp lệ. Trên thực tế, nếu thời điểm A được đặt thành khối gốc (bộ UTXO trống) và thời điểm B được đặt thành hiện tại, thì toàn bộ chuỗi có thể được xác minh mà không cần nhận bất kỳ dữ liệu lịch sử nào.
Điều quan trọng là bạn cần toàn bộ bộ sưu tập UTXO của điểm B và bạn chỉ cần biết giá trị băm của bộ sưu tập UTXO cho điểm A. Mặc dù dữ liệu này không thực sự cần thiết để chứng minh tính hợp lệ, nhưng chúng tôi cũng quan tâm đến tính khả dụng. Nếu bạn luôn chỉ có thể lấy giá trị băm của bộ UTXO, thì ngay cả khi bạn biết rằng trạng thái hợp lệ tồn tại, bạn cũng không thể biết trạng thái đó là gì. Điều đó có nghĩa là bạn không thể chi tiêu bất kỳ khoản tiền nào vì bạn không có dữ liệu để chứng minh rằng một UTXO thuộc về nhóm hiện tại. Nếu bạn sử dụng phép loại suy cờ vua, bạn biết giá trị băm của một tình huống mới, nhưng bạn không biết tình huống đó như thế nào, vì vậy bạn không thể tiếp tục chơi trò chơi.
tiêu đề cấp đầu tiên
chuỗi khối SNARK
Để đảm bảo rằng mọi người sẽ tiêu tiền của họ, tất cả dữ liệu cần thiết để cập nhật bộ UTXO phải được phổ biến với mỗi khối. Bạn vẫn cần biết UTXO nào đã được sử dụng (tức là đầu vào) và UTXO nào mới được tạo (đầu ra). Đây được gọi là "dữ liệu phi nhân chứng".
Tính hợp lệ của các chuyển đổi trạng thái có thể được xác minh bằng SNARK, vì vậy SNARK có thể thay thế tất cả dữ liệu nhân chứng (tập lệnh, chữ ký) và hầu như không sử dụng băng thông. Liên kết giữa đầu vào và đầu ra sẽ bị xóa - một khối sẽ trông giống như một giao dịch coinjoin lớn. Hầu hết các dữ liệu là dữ liệu phi nhân chứng.
Vì vậy, trái với tưởng tượng phổ biến, SNARK không thể giải quyết vấn đề cơ bản đằng sau các ứng dụng khách nhẹ hoặc chuỗi bên không thuộc liên minh, bởi vì bạn phải tải xuống dữ liệu không phải nhân chứng. Các nút đầy đủ có khả năng từ chối SNARK hợp lệ nếu dữ liệu không phải nhân chứng bị mất; nhưng nếu một ứng dụng khách nhẹ không tải xuống dữ liệu không phải nhân chứng, nó có thể nhầm tưởng rằng chuỗi bị mất dữ liệu là hợp lệ. Ngay cả khi một phần nhỏ dữ liệu không phải nhân chứng bị người khai thác giữ lại, thì không ai khác có thể tạo các khối mới trên SNARK hợp lệ - cuối cùng nó sẽ trở thành một hệ thống được phép.
SNARK tiêu thụ dữ liệu nhân chứng
Có lẽ bản tóm tắt tốt nhất về SNARK cho chuỗi khối là chúng kích hoạt một tính năng: tổng hợp nhân chứng không tương tác (NIWA).
Việc tôi sử dụng từ "nhân chứng" ở đây khá tự do. Trong Bitcoin, dữ liệu nhân chứng là dữ liệu được đặt trong giao dịch để chứng minh liệu một UTXO cụ thể có thể được tạo một cách hợp pháp hay không. Nhưng khi thời gian trôi qua, UTXO (dữ liệu không phải nhân chứng) này cũng sẽ trở thành dữ liệu nhân chứng của chính nó khi nó được sử dụng. Giả sử rằng 1 btc được chuyển từ Alice sang Bob rồi đến Carol, giao dịch của Bob là dữ liệu nhân chứng của việc chuyển từ Alice sang Carol. Tương tự, tất cả các giao dịch thanh toán kể từ khối genesis là dữ liệu nhân chứng của bộ UTXO hiện tại.
Cũng cần chỉ ra rằng bản thân SNARK là dữ liệu nhân chứng. Nếu mỗi giao dịch được SNARK xác minh, chúng tôi cũng có thể tổng hợp (NIWA) các SNARK này lại với nhau để tạo một SNARK duy nhất cho khối. Hơn nữa, vì các đầu ra trở thành dữ liệu chứng kiến khi được chi tiêu, chúng tôi thậm chí có thể lấy các đầu ra chưa được xác nhận nhưng đã được chi tiêu từ nhóm giao dịch và tổng hợp chúng. Alice chuyển cho Bob rồi chuyển cho Carol sẽ trở thành Alice chuyển cho Carol, thực hiện hợp nhất giao dịch không tương tác (transaction cut-through). Điều này đặc biệt hữu ích khi một UTXO duy nhất có nhiều nhánh giao dịch ngoài chuỗi buộc phải hoạt động trên chuỗi (chẳng hạn như nhà máy sản xuất kênh Lightning Network).
bản tóm tắt ngắn gọn
Chúng tôi đã tóm tắt các chức năng cốt lõi do SNARK cung cấp cho các chuỗi khối với khái niệm NIWA. Bất kỳ dữ liệu nhân chứng nào cũng có thể được SNARK tổng hợp với nhau một cách không tương tác. Dữ liệu phi nhân chứng còn lại phản ánh trực tiếp trạng thái hệ thống (bộ sưu tập UTXO). Mặc dù SNARK có thể đạt được một số chức năng kỳ diệu, chẳng hạn như tải xuống trực tiếp bộ UTXO và SNARK để chuyển từ trạng thái tạo sang trạng thái mới nhất và tổng hợp không tương tác chuỗi giao dịch không được liên kết thành một giao dịch duy nhất, chúng tôi vẫn cần cung cấp Mọi khối mới xuất bản tất cả dữ liệu không phải nhân chứng để tất cả các nút đầy đủ có thể cập nhật bộ UTXO của họ. Do đó, SNARK không thể giải quyết các hạn chế về băng thông cơ bản mà các chuỗi khối phải đối mặt.
Mô tả hình ảnh
- NIWA đang hoạt động. SNARK tiêu thụ nhân chứng, nhưng bản thân nó cũng là nhân chứng. Vì vậy, SNARK có thể nuốt SNARK -
