How it works, at a high level:
- The sender adds coins to a zkSend link, then shares the link with the recipient via email / DM / etc.
- The recipient visits the link and clicks a button to claim the assets, without signing a transaction, or even connecting their wallet, in a non-custodial manner.
How it works, under the hood:
The sender:
- Creates a one-off Sui keypair for the zkSend link.
- Sends the assets to the keypair's address, plus a bit of SUI to pay for the claim txn fees.
- Generates a link back to the webapp such that the URL includes the keypair's private key.
The recipient:
- Reconstructs the one-off keypair from the private key found in the URL.
- Looks for assets under that address, and shows them to the user.
- Sends the assets to an address provided by the user by executing a txn from the keypair.