If I understand correctly the new wallet format is primarily intended to support BIP 32, but will it also support non-deterministic or even "single-key" wallets?
The reason I ask is because I have imported my blockchain.info private key into an Armory wallet so that my ability to spend those funds is not limited to blockchain.info's uptime. In order to do this I had to make a regular deterministic wallet and manually add the key (which is fine), but I never had the option to dispense with the unneeded deterministic keys. It also means that any time I use Armory to initiate a transaction instead of the web client I must be careful to manually specify the change address to avoid sending it to the deterministic addresses.
Isn't this entirely resolved by the customizable change address option "Remember for future transactions"? (in expert usermode)
Let's say I was going to have wallets without any deterministic components, and without the ability to generate new addresses. If you create such a wallet and import a key, and then you send a transaction... where is the change supposed to go? How is Armory supposed to handle this? The way I see it, there's only two real options: (1) send it back to one of the input addresses (first option), or let the user specify where to send it (second option). Both options are available, and can be remembered between loads by checking the box.
The only gap I can think of is the case that the user wants to send change back to one of the input addresses, but not the first one. Perhaps they want to see a list of input addresses used and want to pick one. I can't see that being useful enough that it would be worth the implementation time.
Since this thread is titled "New Wallet Format", I will link to my other post where I mention a bunch of features the new wallet will have:
https://bitcointalk.org/index.php?topic=56424.msg1489639#msg1489639That list may not be complete, but it should be enough to understand what I'm doing. One thing I left out, is that it will have wallet-recovery challenges: a user forgets their passphrase and wants help brute-forcing their wallet, but doesn't want to just post their entire wallet for everyone to see. Armory will produce a nice block of text that they can post/email someone, which will fully describe a way to find the passphrase, but without giving the helper access to the wallet. Furthermore, the person helping will be able to *prove* they found the passphrase, without actually giving it to the user. Thus, they will be able to negotiate the terms of exchange. I'd like to think it's not that useful, but I have had endless requests for help with this, and it's actually quite easy to implement ... so why not?