<div dir="ltr"><div><div>Maybe the solution is to have a defined way to import an unknown wallet?<br><br>This means that the gap space and a search ordering needs to be defined.<br><br></div>Given a blockchain and a root seed, it should be possible to find all the addresses for that root seed.<br>
<br></div>The hierarchy that the wallet actually uses could be anything.<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sat, Apr 26, 2014 at 11:36 AM, Thomas Voegtlin <span dir="ltr">&lt;<a href="mailto:thomasv1@gmx.de" target="_blank">thomasv1@gmx.de</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I totally agree with gmaxwell here. The cost of interoperability is too<br>
high. It would force us to freeze all features, and to require a broad<br>
consensus everytime we want to add something new.<br>
<br>
In addition, some partial level of compatibility would probably lead to<br>
users not able to recover all their funds when they enter their seed in<br>
another wallet. That is not acceptable, and should be avoided.<br>
<br>
<br>
<br>
<br>
Le 25/04/2014 17:46, Gregory Maxwell a écrit :<br>
<div class="HOEnZb"><div class="h5">&gt;<br>
&gt; I don&#39;t believe that wallet interoperability at this level is possible<br>
&gt; in general except as an explicit compatibility feature. I also don&#39;t<br>
&gt; believe that it is a huge loss that it is so.<br>
&gt;<br>
&gt; The structure of the derivation defines and constrains functionality.<br>
&gt; You cannot be structure compatible unless you have the same features<br>
&gt; and behavior with respect to key management.  To that extent that<br>
&gt; wallets have the same features, I agree its better if they are<br>
&gt; compatible— but unless they are dead software they likely won&#39;t keep<br>
&gt; the same features for long.<br>
&gt;<br>
&gt; Even if their key management were compatible there are many other<br>
&gt; things that go into making a wallet portable between systems; the<br>
&gt; handling of private keys is just one part:  a complete wallet will<br>
&gt; have other (again, functionality specific) metadata.<br>
&gt;<br>
&gt; I agree that it would be it would be possible to support a<br>
&gt; compatibility mode where a wallet has just a subset of features which<br>
&gt; works when loaded into different systems, but I&#39;m somewhat doubtful<br>
&gt; that it would be widely used. The decision to use that mode comes at<br>
&gt; the wrong time— when you start, not when you need the features you<br>
&gt; chose to disable or when you want to switch programs. But the obvious<br>
&gt; thing to do there is to just specify that a linear chain with no<br>
&gt; further branching is that mode: then that will be the same mode you<br>
&gt; use when someone gives you a master public key and asks you to use it<br>
&gt; for reoccurring changes— so at least the software will get used.<br>
&gt;<br>
&gt; Compatibility for something like a recovery tool is another matter,<br>
&gt; and BIP32 probably defines enough there that with a bit of extra data<br>
&gt; about how the real wallet worked that recovery can be successful.<br>
&gt;<br>
&gt; Calling it &quot;vendor lock in&quot; sounds overblown to me.  If someone wants<br>
&gt; to change wallets they can transfer the funds— manual handling of<br>
&gt; private keys is seldom advisable, and as is they&#39;re going to lose<br>
&gt; their metadata in any case.  No one expects to switch banks and to<br>
&gt; keep their account records at the new bank. And while less than<br>
&gt; perfect, the price of heavily constraining functionality in order to<br>
&gt; get another result is just too high.<br>
&gt;<br>
&gt; ------------------------------------------------------------------------------<br>
&gt; Start Your Social Network Today - Download eXo Platform<br>
&gt; Build your Enterprise Intranet with eXo Platform Software<br>
&gt; Java Based Open Source Intranet - Social, Extensible, Cloud Ready<br>
&gt; Get Started Now And Turn Your Intranet Into A Collaboration Platform<br>
&gt; <a href="http://p.sf.net/sfu/ExoPlatform" target="_blank">http://p.sf.net/sfu/ExoPlatform</a><br>
&gt; _______________________________________________<br>
&gt; Bitcoin-development mailing list<br>
&gt; <a href="mailto:Bitcoin-development@lists.sourceforge.net">Bitcoin-development@lists.sourceforge.net</a><br>
&gt; <a href="https://lists.sourceforge.net/lists/listinfo/bitcoin-development" target="_blank">https://lists.sourceforge.net/lists/listinfo/bitcoin-development</a><br>
&gt;<br>
<br>
------------------------------------------------------------------------------<br>
Start Your Social Network Today - Download eXo Platform<br>
Build your Enterprise Intranet with eXo Platform Software<br>
Java Based Open Source Intranet - Social, Extensible, Cloud Ready<br>
Get Started Now And Turn Your Intranet Into A Collaboration Platform<br>
<a href="http://p.sf.net/sfu/ExoPlatform" target="_blank">http://p.sf.net/sfu/ExoPlatform</a><br>
_______________________________________________<br>
Bitcoin-development mailing list<br>
<a href="mailto:Bitcoin-development@lists.sourceforge.net">Bitcoin-development@lists.sourceforge.net</a><br>
<a href="https://lists.sourceforge.net/lists/listinfo/bitcoin-development" target="_blank">https://lists.sourceforge.net/lists/listinfo/bitcoin-development</a><br>
</div></div></blockquote></div><br></div>