Open bitcoinheiro opened 2 years ago
The seed scanning tool is a clutch, its mere existence highlights the main weakness of bip39. At any time another wallet might start using a new derivation path + script type combo that the tool will not scan for; it is a never-ending game of playing catch-up.
Maybe the warning could be rephrased to say we do not plan to remove bip39 support but rather that it is simply impossible to guarantee compatibility with it.
I understand this, but BIP39 is what is being used by most wallets regardless.
@lukechilds - is there a repository where all wallet makers/users could add a line with the needed info for the scanning tool to check their paths/versioning? Maybe this could help streamline the process so no one needs to play catch-up, and everyone just adds their BIP39 specifics for interoperability.
Something like walletsrecovery https://github.com/nvk/walletsrecovery.org
@bitcoinheiro there is the file /electrum)/bip39_wallet_formats.json , the file is very simple to understand and you can do a pull request on it. (I did it for coolwallet S).
The current dialog for seed creation shows the following warning when user selects BIP39. Some users are spooked, and I believe the warning is outdated since the seed scanning tool for recovery was added.
if self.seed_type == 'bip39':
msg = ' '.join([
'<b>' + _('Warning') + ':</b> ',
_('BIP39 seeds can be imported in Electrum, so that users can access funds locked in other wallets.'),
_('However, we do not generate BIP39 seeds, because they do not meet our safety standard.'),
_('BIP39 seeds do not include a version number, which compromises compatibility with future software.'),
_('We do not guarantee that BIP39 imports will always be supported in Electrum.'),
])
Source: https://github.com/spesmilo/electrum/blob/b828627dc6ace2b77debc3bc811e3be2b928ea48/electrum/gui/qt/seed_dialog.py