Stealth Addresses for Safes

Hi everyone!

I would like to share an implementation idea for stealth Safes and hope to get some feedback & thoughts from the community. I will be participating in EthGlobal Paris next weekend and plan to work on this idea there :slightly_smiling_face:

If you want to find out more about me, I introduced myself here earlier.

If you haven’t heard of stealth addresses before, I recommend this post by Vitalik. TLDR: A stealth address is a one-time use address for a specific transaction, generated by the sender and exclusively controlled by the recipient, which allows for transactional privacy: an external observer is unable to link the recipient to the stealth address.

There is currently an EIP proposing a standardized approach to stealth addresses. In the meantime, a production-ready implementation of stealth addresses is the Umbra protocol.

Umbra currently only enables EOAs to generate stealth addresses, as stealth addresses need a private key to be generated.

I have outlined an implementation to generate stealth addresses for Safes using Umbra in this document. TLDR: A sender can deploy a stealth Safe mirroring the parameters of the parent Safe, except the owners are stealth addresses of the parent Safe owners. The Safe owners can then redeem the transfer from the stealth Safe using their personal stealth addresses and a relayer like Gelato to fund gas from the stealth Safe itself.

Here is an overview:

I’d love to get your thoughts on this! Also let me know if you have any questions or feel like something is unclear.

5 Likes

A brief update on this thread :slight_smile:

We worked on a proof-of-concept during EthGlobal Paris last weekend and were able to get a showcase ready. You can check it out here.

We also got some recognition for it, with the first place in the Safe{Core} AA category and a prize as the best Safe project on Gnosis Chain :partying_face:

We are planning to continue working on the project and hopefully get a fully production-ready version live soon. The project is open source, feel free to contribute to our Github repo with feedback, ideas and code!

3 Likes

Hi there!

We’ve been busy working on a first production-ready version of this idea over the past weeks and just submitted our Safe Grants application to build this out. Any questions or feedback on the application are appreciated!

1 Like