How does the recipient find their transaction?

Hi, I was recently heard a bit about Z-Cash by watching some IPFS / Blockstack videos… I have a quick question about sending private transactions.

Apparently you encrypt your sender, receiver, and amount and include a zero-knowledge proof (proves: I have the money to spend, and this transaction is not a double spend). This makes since. Except, how does the recipient find the transaction? Does their wallet have to scan every transaction?

2 Likes

Yes, the recipient wallet scans every JoinSplit description in every transaction, and tries to decrypt it with its private decryption key. (A full wallet implementation, which we don’t have at the moment, would remember that it has already scanned all transactions above a given block height.)

1 Like