<div><span style="background-color:rgb(255, 255, 255)" class="highlight"><span style="" class="colour"><span style="" class="font"><span style="font-size: 14px;" class="size"><font face="sans-serif" color="#252525">Right now it's just *way* too easy to spot the boundaries between different wallets. There's a lot of things that contribute to that, but the one that concerns me the most is the way wallets sort transaction inputs and outputs.</font></span></span></span></span><br></div><div><br> Some wallets and protocols (especially HW wallets) have <span style="background-color:rgb(255, 255, 255)" class="highlight"><span style="" class="colour"><span style="" class="font"><span style="" class="size"><font style="" face="sans-serif" color="#252525"> a strong preference for deterministic&nbsp;sorting (i.e. using bip69), while other wallets have a lot of objections to this.</font></span></span></span></span></div><div><br></div><div><span style="background-color:rgb(255, 255, 255)" class="highlight"><span style="" class="colour"><span style="" class="font"><span style="" class="size"><font style="" face="sans-serif" color="#252525">I'm not sure I fully understand the objections, but I think they can be summarized&nbsp;as "during the transition period there will be a lot of privacy loss" and "if in the future someone wants to use bitcoin in a way that's not compatible with bip69 their transactions will stick out heavily".<br></font></span></span></span></span></div><div><br></div><div><span style="background-color:rgb(255, 255, 255)" class="highlight"><span style="" class="colour"><span style="" class="font"><span style="" class="size"><font style="" face="sans-serif" color="#252525">I wonder if this impasse could be solved with deterministic&nbsp;sorting, but based on a semi-secret.&nbsp; Like&nbsp; `sortingSecret = hmac(walletSeed, "sortingSecret")` and then there's a standardized sort order based on the sortingSecret. e.g. sort inputs/output by the&nbsp; `hash(data || sortingSecret)`.&nbsp; &nbsp;Wallets could come up with their own way of computing (or storing) the "sortingSecret" but from there it's standardized.<br></font></span></span></span></span></div><div><br></div><div>I has the advantages of deterministic sorting (as long as you know the sortingSecret) you can verify it's done correctly and externally looks totally randomized.<br></div><div><br></div><div>Am I missing something, or could this be the way forward?<br></div><div><br></div><div class="protonmail_signature_block"><div class="protonmail_signature_block-user"><div>-Ryan<br></div></div><div class="protonmail_signature_block-proton protonmail_signature_block-empty"><br></div></div><div><br></div>