-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New Address Type: TraceableChange
#5
Comments
iiuc, this would be "traceable" by the wallet owner, but not by anyone else. correct? If that's right, then I think TraceableChange perhaps conveys the wrong idea, and bad for branding because the name immediately makes me worry that somehow NeptuneCash is compromising on privacy when it comes to receiving change. And this is not "traceable" in the sense of walking backward from one linkable (u)txo to another, but only in the sense of finding "mine" from the pool of all (unlinkable) utxo. If my above analysis is correct, perhaps SearchableChange might be a better fit? I'm also unclear what happens with regular (non-change) incoming utxo. ie, how does the wallet find those when first syncing? I suppose I need to read the white paper again. Anyway, it's unclear to me why change utxo are special in this regard. |
Absolutely correct. And I agree that Traceable is probably the wrong word, although I'm not sure Searchable is the right one. The key feature that distinguishes (what is now called) TraceableChange from alternative change UTXOs is that you can recover all transaction data from your seed phrase just by scanning the blocks and decrypting messages for you. The alternatives are a) naïve change, in which case you would need to back up data separately; b) reuse a GenerationAddress, but then you are using a public key cryptosystem to send a message to your future self when a symmetric key cryptosystem would suffice and would incur less transaction fees.
I don't think this information is present in the whitepaper, because we came up with the GenerationAddress construction after writing that. I apologize for the poor documentation and promise to resolve that situation in the not too distant future. The cheeky response is that I don't know what you mean by "regular" incoming UTXO. But in addition to cheeky, that response is false because right now there only one address type that you could be referring to: When you ask a wallet to generate a The downside of this approach is that multiple donations to the same |
I believe this can be closed now that #171 is merged. @aszepieniec do you agree? We called it |
Agreed. The honor of closing is yours ;-) |
closed by #171. |
Introduce a new address type
TraceableChange
which is the default type used for change UTXOs. The defining feature is that the pubscript input is a symmetrically-encrypted ciphertext under the user's own secret key. The data payload of this ciphertext is the UTXO data, such as amount and whatever else the user needs to be able to spend this UTXO.With this construction in place, a generation address paper wallet can recover any number of change UTXOs after being used for spending multiple times, just by scanning the history of blocks.
The text was updated successfully, but these errors were encountered: