Closed dcousens closed 8 years ago
@kristovatlas is there a possibility that we could [together?] write up a BIP for documenting best practice in regards to [at least] the following aspects of transaction creation:
And various other aspects which currently, are just slightly different enough for each implementation that they leak vital bits of privacy such that transactions can easily be linked with a high probability between matching software.
CoinJoin does help some aspects of this, but in the end, even CoinJoin could benefit from a communally set BIP that addresses some of these concerns.
Related discussion to one aspect of this:
Input/Output ordering is covered by BIP 69: https://github.com/bitcoin/bips/pull/157
I agree that standards for fee calculations and nLockTime would also be useful. Send me an email? kristov [at] openbitcoinprivacyproject.org
Thanks for the link @kristovatlas, I'll reference an implementation here.
Currently a WIP, but I'm implementing it here for now: https://github.com/bitcoinjs/bip69
Transactions generated by this software are still identifiable to this software.
The order by address change prevented the users change address being easily identified (it was always originally always the last output, sorting by address changed that).
However, what it did not prevent is the transaction being recognizable as being produced by this software.
To change this, we need to sort the inputs/outputs by some non-deterministic entropy or user secret.