Con đường đến giao dịch Ethereum hậu lượng tử được mở ra bằng Account Abstraction (AA)

Bài viết này được dịch máy
Xem bản gốc

Cảm ơn Nicolas Bacca, Vitalik Buterin, Nicolas Consigny, Renaud Dubois, Simon Masson, Dror Tirosh,Yoav Weiss và Zhenfei Zhang vì những cuộc thảo luận có ích.

Đây là Phần 3 trong loạt bài của chúng tôi khám phá khả thi của việc triển khai một lược đồ chữ ký sau khi lượng tử cho Ethereum. Trong Phần 1, chúng tôi đã thảo luận về những thách thức và yếu tố cần xem xét cơ bản trong việc chuyển Ethereum sang một tương lai kháng lượng tử. Trong Phần 2, chúng tôi đã đi sâu vào Falcon, phân tích những điểm mạnh, điểm yếu và những rào cản thực tế khi tích hợp nó vào khung giao dịch của Ethereum. Trong bài đăng này, chúng tôi sẽ xây dựng trên nền tảng đó bằng cách khám phá cách Account Abstraction (AA) có thể được khai thác để tích hợp Falcon vào Ethereum. Chúng tôi sẽ xem xét những thay đổi về kiến trúc cần thiết, những lợi ích của việc sử dụng AA cho bảo mật sau khi lượng tử và những thách thức tiềm năng trong việc làm cho phương pháp này trở nên khả thi.

Bạn có nói về ERC-4337?

Khi thảo luận về Account Abstraction (AA), kết luận tự nhiên là nghĩ về ERC-4337, vì nó hiện là phương pháp nổi bật và được áp dụng rộng rãi nhất để cho phép AA trên Ethereum. ERC-4337 cung cấp một cách để triển khai ví thông minh mà không yêu cầu thay đổi giao thức Ethereum, khiến nó trở thành ứng cử viên mạnh mẽ để tích hợp các lược đồ chữ ký sau khi lượng tử như Falcon.
Cụ thể, chúng ta có thể lấy cảm hứng từ SimpleWallet hợp đồng thông minh hoặc từ các hợp đồng thông minh sử dụng RIP-7212 để khám phá cách Falcon có thể được tích hợp hiệu quả trong khuôn khổ ERC-4337.

SimpleWallet

SimpleWallet là một ví dựa trên hợp đồng thông minh được thiết kế để thực hiện Account Abstraction trên Ethereum. Thay vì sử dụng các khóa riêng tư truyền thống cho các giao dịch, một hợp đồng thông minh SimpleWallet cho phép linh hoạt hơn bằng cách cho phép logic xác thực tùy chỉnh và có thể hỗ trợ các lược đồ chữ ký mật mã mới như Falcon. Ví dụ, trong bối cảnh Ethereum sau khi lượng tử, SimpleWallet có thể được điều chỉnh để hoạt động với chữ ký Falcon, cho phép xử lý giao dịch linh hoạt, an toàn và tương lai hơn. Cách tiếp cận hợp đồng thông minh này sẽ cho phép các tài khoản Ethereum phát triển và hỗ trợ mật mã kháng lượng tử mà không yêu cầu thay đổi giao thức Ethereum cơ bản.

FalconSimpleWallet

FalconSimpleWallet sẽ là phiên bản được sửa đổi của SimpleWallet thay thế ECDSA bằng mật mã dựa trên Falcon. Khác với ECDSA, "Falcon thuần túy" không hỗ trợ khôi phục khóa công khai từ một chữ ký - có nghĩa là ecrecover không thể được sử dụng. Thay vào đó, một ví dựa trên Falcon phải xác minh chữ ký trực tiếp với một khóa công khai được lưu trữ.
Tuy nhiên, như Renaud Dubois đã chỉ ra, Phần 3.12 của tài liệu Falcon giới thiệu một mô hình khôi phục khóa. Phương pháp này cho phép khôi phục khóa công khai, nhưng nó đi kèm với gấp đôi kích thước khóa. Mặc dù điều này có thể cung cấp một giải pháp thay thế tiềm năng cho chức năng tương tự như ecrecover, nhưng kích thước khóa tăng lên đặt ra những xem xét bổ sung về hiệu quả trên chuỗi.

Sự khác biệt này có nghĩa là các ví dựa trên Falcon cần một bản đồ rõ ràng của các địa chỉ Ethereum với các khóa công khai, yêu cầu một cách tiếp cận khác về ủy quyền. Thay vì dựa vào ecrecover để suy ra danh tính của người ký, một FalconSimpleWallet sẽ lưu trữ và tham chiếu rõ ràng các khóa công khai để xác minh.

Ngoài ra, tích hợp Falcon vào Máy ảo Ethereum (EVM) yêu cầu phải lệch khỏi triển khai tiêu chuẩn NIST. Falcon dựa vào SHAKE để băm, nhưng do SHAKE không được hỗ trợ nội bộ trong EVM, chúng ta cần sử dụng một hàm băm thân thiện với EVM hơn, chẳng hạn như Keccak. Điều này đảm bảo tính tương thích và hiệu quả khi xác minh chữ ký Falcon trên chuỗi.

Chúc mừng Zhenfei Zhang, người đã đóng góp một triển khai PRNG dựa trên Keccak256 cho Falcon, tiếp tục thu hẹp khoảng cách giữa Falcon và ngăn xếp mật mã của Ethereum.

Hãy cho tôi xem bản demo!

Bạn có thể tìm thấy bản demo trong FalconSimpleWallet trên GitHub. Dự án này trình bày một ví thay thế ECDSA truyền thống bằng xác minh dựa trên Falcon, được thiết kế cho nhu cầu bảo mật đang phát triển của Ethereum.

Một lời chào đặc biệt đến ZKNox - công việc xuất sắc của họ về triển khai Falcon Solidity đã giảm chi phí xác minh từ 24M gas xuống còn 3,6M gas. Bước tiến này không chỉ tối ưu hóa việc sử dụng gas mà còn mang lại bảo mật sau khi lượng tử gần hơn với việc triển khai thực tế trên blockchain. Chúc mừng ZKNox đã mở đường với giải pháp sáng tạo này!

Con voi trong phòng

Trong khi chúng tôi đã chuyển đổi chữ ký ví thông minh thành kháng lượng tử (PQ), vẫn còn một vấn đề quan trọng: giao dịch bundler vẫn dựa vào lược đồ chữ ký ECDSA truyền thống. Điều này có nghĩa rằng ngay cả khi các hoạt động người dùng cá nhân (UserOps) trong khuôn khổ account abstraction sử dụng Falcon, giao dịch cuối cùng được gửi đến Ethereum mempool vẫn được ký bằng ECDSA bởi bundler.

Để loại bỏ hoàn toàn ECDSA khỏi đường ống giao dịch, có thể cần thay đổi ở cấp độ giao thức L1, cụ thể thông qua EIP-7701/RIP-7560.

(Phần thưởng) Batching

Như đã đề cập trong phần "Gnarly" của Phần 2, đã có nghiên cứu đang diễn ra về việc tổng hợp hiệu quả các chữ ký Falcon, bao gồm cả công việc liên quan đến Labrador. Nếu phương pháp này chứng minh là hiệu quả, chúng ta có thể khai thác EIP-7766 (Signature Aggregation for ERC-4337) để tối ưu hóa việc tổng hợp chữ ký Falcon trong khuôn khổ AA - tương tự như cách chữ ký BLS được tổng hợp trong hợp đồng VerificationGateway này.

Nguồn
Tuyên bố từ chối trách nhiệm: Nội dung trên chỉ là ý kiến của tác giả, không đại diện cho bất kỳ lập trường nào của Followin, không nhằm mục đích và sẽ không được hiểu hay hiểu là lời khuyên đầu tư từ Followin.
Thích
Thêm vào Yêu thích
Bình luận