Lưu ý để tránh nhầm lẫn, đây là ý tưởng khác với Địa chỉ ẩn Yêu cầu bình luận Ethereum (ERC)-5564 trong đó người gửi sẽ tính toán một địa chỉ ẩn cho người nhận không tương tác.
Bản tóm tắt
Trong ý tưởng này, người nhận sẽ tính toán địa chỉ và chia sẻ với người gửi (không tích hợp quyền riêng tư, sử dụng các hệ thống cũ như metamask, sàn giao dịch, ví công khai).
Đây là ứng dụng có thể được xây dựng dựa trên chương trình bảo mật hiện có.
Để đảm bảo tính riêng tư, những người bạn giao dịch không cần phải sử dụng ví điện tử riêng tư. Tuy nhiên, bạn cần một cơ chế bảo mật cơ bản để có thể ẩn danh đủ lớn.
Ứng dụng có thể tương tác với các chương trình bảo mật khác sử dụng Yêu cầu bình luận Ethereum (ERC)-6538, giúp ứng dụng hoạt động với người dùng sử dụng chương trình bảo mật riêng, không có chương trình bảo mật và có khả năng là cả các chương trình bảo mật khác.
Động lực
Hầu hết các giải pháp địa chỉ ẩn đều yêu cầu người dùng tự nguyện tham gia, nghĩa là cả hai người dùng đều phải tuân theo cùng một giao thức hoặc bộ quy tắc. Và có rất nhiều giao thức. Aztec, Yêu cầu bình luận Ethereum (ERC)-5564, Railgun, Tornado Nova, zkBoB và nhiều giao thức khác nữa.
Vậy nên, nếu người A muốn thanh toán cho người B, cả hai persona đều phải đăng ký cùng một giao thức. Nếu chúng ta giả định như vậy thì mọi chuyện sẽ rất dễ dàng, nhưng trên thực tế, hầu hết mọi người không sử dụng bất kỳ giao thức bảo mật nào, và nếu có người sử dụng thì đó có thể không phải là giao thức bạn đang dùng.
Giải pháp hiện tại:
Người dùng tham gia nhiều giao thức bảo mật phổ biến để tương thích với bất kỳ ai .
Người dùng chỉ cần ở trong Ethereum công khai trong khi tạo nhiều địa chỉ ví, nơi tất cả các giao dịch của chúng tôi đều được công khai. Mặc dù tiền được phân mảnh để tránh bị người khác phát hiện ra số dư thực sự của bạn, người dùng có thể nhận tiền từ bất kỳ ai . Tuy nhiên, cần lưu ý rằng các địa chỉ không được kết nối trực tiếp với nhau và không được sử dụng những thứ như Tornado Cash.
Chỉ cần giữ tiền trên một sàn giao dịch tập trung để nhận tiền gửi từ bất kỳ ai .
Một thách thức lớn trong việc áp dụng quyền riêng tư cho thanh toán là yêu cầu cả người gửi và người nhận phải sử dụng phần mềm hỗ trợ cùng một giao thức. Điều này dẫn đến việc đăng ký giao thức riêng tư do tính mới lạ, nhưng người dùng thường thực hiện giao dịch công khai vì những người họ tương tác không đăng ký, trừ khi họ may mắn có những người dùng khác đã đăng ký vào cùng một hệ thống.
Tóm tắt
Bài viết này đề cập đến một giải pháp tiềm năng cho phép người dùng lựa chọn giữ số dư của họ ở mức độ riêng tư hợp lý, đồng thời cho phép họ gửi hoặc nhận tiền đến và đi từ các địa chỉ Ethereum công khai. Giải pháp này là một ứng dụng có thể được xây dựng dựa trên bất kỳ chương trình bảo mật UTXO hiện có nào, tương tự như Tornado Nova. Ứng dụng thậm chí có thể được tích hợp bởi ít nhất một ví. Người dùng có thể tự tạo nhiều địa chỉ Máy ảo Ethereum (EVM) . Họ tương tác với người gửi và cung cấp cho họ một địa chỉ mới. Địa chỉ này được tính toán trước bằng CREATE2. Sau khi nhận được tiền, phần mềm ví sẽ thu thập tiền bằng cách sử dụng một bộ chuyển tiếp vào chương trình bảo mật cơ bản, tạo ra một UTXO mà người dùng có thể sử dụng trong các giao dịch trong tương lai.
Giải pháp này mang tính tương tác. Trong hầu hết các trường hợp sử dụng hàng ngày như thanh toán cho bạn bè hoặc khách hàng, tương tác luôn cần thiết vì mọi người vẫn hỏi "bạn muốn trên mainnet hay một số L2 cụ thể nào đó? ETH , Dai hay USDC?". Ở đây, người dùng sẽ tự tạo một địa chỉ mới và cung cấp cho người gửi, đó là tương tác. Địa chỉ ẩn CREATE2 không cần phải là Đề xuất cải tiến Ethereum (EIP)/ Yêu cầu bình luận Ethereum (ERC) vì nó là một ứng dụng và những người dùng khác không cần phải chọn tham gia để tuân theo một giao thức mới nào đó.
Nó hoạt động như thế nào?
Tôi có thể LINK (Chainlink) đến mã từ PoC năm ngoái để trình bày một số chi tiết.
1. Người dùng tham gia hệ thống này
Người dùng cài đặt phần mềm theo giao thức được mô tả. Phần mềm sẽ tạo ra một mã bí mật dài 32 byte và lưu trữ để sử dụng sau này.
2. Người dùng muốn nhận tiền từ khách hàng
Người dùng tạo một địa chỉ ẩn mới, được tạo như sau:
Hash của hai từ: bí mật 32 byte và Nonce 32 byte (có thể tăng dần)
Hash là muối 32 byte được sử dụng với CREATE2 để lấy địa chỉ https://github.com/ultralane/contracts/blob/b8e17ce7099ffb358488579927308d5f73716dc3/contracts/MixerPool. SOL#L162-L166
Người dùng (người nhận) tương tác với người gửi bằng cách gửi cho họ một địa chỉ Máy ảo Ethereum (EVM) .
Người gửi có thể gửi tiền đến địa chỉ này theo bất kỳ cách nào họ muốn, thông qua metamask, rút tiền từ sàn giao dịch hoặc rút tiền từ chương trình bảo mật.
3. Người dùng nhận tiền từ khách hàng
Số tiền này được gửi đến một địa chỉ được tính toán trước, đây là/sẽ là một hợp đồng. https://github.com/ultralane/contracts/blob/b8e17ce7099ffb358488579927308d5f73716dc3/contracts/StealthAddress. SOL
Phần mềm ví của người dùng khi trực tuyến và nhận thấy số dư trên địa chỉ ẩn:
Nó tạo ra một ghi chú bí mật dựa trên đặc tả của cơ chế bảo mật cơ bản. Thông thường, các ghi chú này là bí mật cùng với số lượng và ràng buộc ngẫu nhiên để tránh xung đột. https://github.com/ultralane/circuits/blob/42e39cd95345c6c47ee8b363854262ab03f29731/lib/src/note.nr#L3-L7
Nó chứng minh tại chỗ rằng người dùng biết tiền ảnh của muối.
Nó cũng thêm cam kết ghi chú vào đó để người chuyển tiếp không thể làm giả (phần này không có trong PoC).
Tải trọng này sau đó được chuyển đến một bộ chuyển tiếp gọi một hàm trên nhóm để thực hiện giao dịch công khai chuyển tiền vào nhóm riêng tư mà người dùng có thể chi tiêu. https://github.com/ultralane/contracts/blob/b8e17ce7099ffb358488579927308d5f73716dc3/contracts/MixerPool. SOL#L133-L160
Ngoài ra, địa chỉ ẩn cũng có thể tự đăng ký trên sổ đăng ký Yêu cầu bình luận Ethereum (ERC)-6538. Nhờ đó, các giao dịch chuyển tiền trong tương lai từ một số người dùng đã chọn tham gia quyền riêng tư có thể được thực hiện theo một lộ trình hiệu quả.
Người dùng muốn gửi tiền
Phần mềm ví của người dùng có thể kiểm tra bằng sổ đăng ký Yêu cầu bình luận Ethereum (ERC)-6538 xem địa chỉ đó có phải là địa chỉ ẩn danh hay không và thuộc loại nào. Nếu địa chỉ đó sử dụng giao thức bảo mật được hỗ trợ, hãy xử lý ngay.
Nếu sử dụng chương trình bảo mật cơ bản thì trực tiếp chi tiêu UTXO bằng cách tạo một UTXO mới mà người nhận có thể chi tiêu theo thông số kỹ thuật của giao thức bảo mật cơ bản.
Nếu đó là Yêu cầu bình luận Ethereum (ERC)-5564: Địa chỉ ẩn, thì hãy tính toán địa chỉ nhận theo giao thức và địa chỉ ẩn của chúng.
Nếu không, địa chỉ đó không sử dụng bất kỳ chương trình bảo mật nào nên chỉ cần rút tiền về địa chỉ đó.
Kết luận
Giải pháp này không hoạt động trực tiếp trong trường hợp nhận quyên góp từ người lạ theo cách không tương tác. Giống như việc đặt địa chỉ trên tệp readme GitHub của bạn cho bất kỳ khoản tài trợ nào. Vì tất cả các giao dịch đến cùng một địa chỉ sẽ được hiển thị. Đây chính xác là nơi Yêu cầu bình luận Ethereum (ERC)-5564 tỏa sáng khi người gửi tạo một địa chỉ mới tại đây, tuy nhiên, nó yêu cầu người gửi phải chọn tham gia. Đối với các khoản quyên góp. Trên các kho lưu trữ, mọi người thường liệt kê nhiều địa chỉ như BTC, ETH, Monero, họ có thể liệt kê một địa chỉ x khác của chương trình bảo mật Railgun hoặc nhiều hơn, thay vì một địa chỉ ETH (vì có khả năng người dùng không biết về địa chỉ ẩn hoặc đang sử dụng phần mềm ví lỗi thời).
Có thể kết hợp địa chỉ ẩn CREATE2 với Yêu cầu bình luận Ethereum (ERC)-5564 bằng cách sử dụng Yêu cầu bình luận Ethereum (ERC)-6538 và nhiều cơ chế bảo mật khác. Về cơ bản, trong quá trình thu thập tiền, địa chỉ ẩn CREATE2 có thể tự đăng ký trong sổ đăng ký với nhiều cơ chế bảo mật. Tôi nhận thấy rằng Yêu cầu bình luận Ethereum (ERC)-6538 thực sự rất mạnh mẽ và có thể giúp ví tương thích với nhiều cơ chế bảo mật.
Địa chỉ ẩn CREATE2 không thể phân biệt được với các EOA khác cho đến khi tiền trong đó được thu thập, điều này sẽ xảy ra tại một thời điểm nào đó. Vì vậy, ai đó có thể quét chuỗi để dễ dàng tìm thấy các địa chỉ ẩn đã sử dụng và theo dõi số tiền được gửi vào các nhóm riêng tư.
Vấn đề tiết lộ IP cho người chuyển tiếp chắc chắn vẫn tồn tại.




