Author

Topic: História da Carteira Electrum e da diferença do padrão BIP39 (Read 178 times)

legendary
Activity: 2352
Merit: 6089
bitcoindata.science
Você sabia ElectrumWallet foi a primeira carteira determinística de Bitcoin?

Antes disso, as pessoas faziam backup de cada chave individual e não havia função de restauração (por mnemônicos).

Além disso, a Electrum foi a primeira carteira a implementar backups “mnemônicos”, muito antes do BIP39.


Muito legal.
Eu não sabia que havia sido a primeira

Confesso q eu sempre achei ruim o fato da electrum ter a sua lista de palavras, que não são a bip39. Mas  já q ela é compatível  tudo bem.

Eles inclusive dizem que a deles é melhor q a bip39..
Aqui eles falam aqui a bip39 tem os mesmo problemas das versões iniciais da elecrrun

Quote
BIP39 was introduced two years after Electrum. BIP39 seeds include a checksum, in order to help users figure out typing errors. However, BIP39 suffers the same shortcomings as early Electrum seed phrases

https://electrum.readthedocs.io/en/latest/seedphrase.html
legendary
Activity: 1862
Merit: 5154
**In BTC since 2013**
Com a versão 0.21 (eu acho) do Bitcoin Core, o Bitcoin Core adotou, por meio do descriptors, o Bip39 e dessa forma usando o mesmo padrão de 99% das carteiras. Logo hojé é possível restaurar uma carteira do Bitcoin Core na Electrum e vice-versa.

Por acaso no outro dia acabei por abrir a minha primeira carteira no Core e não do Electrum, pensei que não dava para abrir através do ficheiro.
Ou entendi mal e através do .dat continua a não ser possível?
member
Activity: 109
Merit: 15
Com a versão 0.21 (eu acho) do Bitcoin Core, o Bitcoin Core adotou, por meio do descriptors, o Bip39 e dessa forma usando o mesmo padrão de 99% das carteiras. Logo hojé é possível restaurar uma carteira do Bitcoin Core na Electrum e vice-versa.
O que eu entendi pesquisando na hora de criar minha carteira é que era uma boa ideia criar uma carteira bip39 e usar ela na electrum pois qualquer problema daria para restaurar em outras, enquanto a da electrum poderia nao ser compativel com outras carteiras puras bip39
hero member
Activity: 1120
Merit: 540
Duelbits - Play for Free | Win for Real

Agora fiquei pensando... oque acontece se a Electrum "morrer"!?
Pela história que ela tem, é muito improvável que isso aconteça, mas em um cenário catastrófico em que a Electrum não existe mais e nenhuma outra carteira possui compatibilidade com a seed gerada por ela (e isso de fato é um problema, pelo que pesquisei), como é que faz?

Mas a Electrum suporta o BIP39, tanto que é possível importar sem problemas seeds desse protocolo nela e utilizar sem nenhum problema, certo? Sendo isso uma verdade, não seria mais "interessante" gerar as seeds fora dela com base nesse protocolo e importar na electrum?
É facil fazer isso com segurança... basta baixar o bitaddress, executar localmente, anotar as palavras em um papel que você possa facilmente destruir depois (ou já guarda como backup) e aí "importa" ela na electrum. prontinho... uma carteira 100% compatível com outros softwares sendo utilizada no seu aplicativo favorito.
Porém, muitas pessoas preferem ir pelo método mais fácil né.
Você ainda pode restaurar uma semente criada na Electrum na BlueWallet inserindo as palavras da semente ou no Bitcoin Core através da chave privada mestre montando um descriptor.

Mas de qualquer forma, caso esse cenário ocorrer, como é uma carteira muito conhecida, há muitos usuários antigos e novos que usam ela, então isso geraria um tumulto e faria com que a maioria das carteiras existentes possibilitasse restaurar uma semente criada na Electrum.

O Bitcoin Core por exemplo, que também é uma carteira deterministica, uma carteira criada no Bitcoin Core não podia ser restaurada em outra carteira, a não ser que as chaves privadas fossem exportadas e importadas para outra carteira, mas a carteira inteira em sí não podia. Além do Bitcoin Core não ter seguido o padrão BIP39, o backup dela não é por meio de mnemônicos, dentro do arquivo wallet.dat tem um xpriv, mas o Bitcoin Core adotava o formato BIP32

Uma carteira no formato BIP32, seja por meio de mnemônicos ou xpriv, restauram chaves privadas do derivation path m/0 para recebimento e m/1 para troco.

Com a versão 0.21 (eu acho) do Bitcoin Core, o Bitcoin Core adotou, por meio do descriptors, o Bip39 e dessa forma usando o mesmo padrão de 99% das carteiras. Logo hojé é possível restaurar uma carteira do Bitcoin Core na Electrum e vice-versa.
legendary
Activity: 2352
Merit: 1121
☢️ alegotardo™️
E carteiras geradas na Electrum podem ser importadas normalmente em todas outras carteiras que usam o BIP39?
Que eu saiba na BlueWallet você pode. Não sei de outra carteira que seja compatível com a semente gerada pela Electrum.

Agora fiquei pensando... oque acontece se a Electrum "morrer"!?
Pela história que ela tem, é muito improvável que isso aconteça, mas em um cenário catastrófico em que a Electrum não existe mais e nenhuma outra carteira possui compatibilidade com a seed gerada por ela (e isso de fato é um problema, pelo que pesquisei), como é que faz?

Mas a Electrum suporta o BIP39, tanto que é possível importar sem problemas seeds desse protocolo nela e utilizar sem nenhum problema, certo? Sendo isso uma verdade, não seria mais "interessante" gerar as seeds fora dela com base nesse protocolo e importar na electrum?
É facil fazer isso com segurança... basta baixar o bitaddress, executar localmente, anotar as palavras em um papel que você possa facilmente destruir depois (ou já guarda como backup) e aí "importa" ela na electrum. prontinho... uma carteira 100% compatível com outros softwares sendo utilizada no seu aplicativo favorito.
Porém, muitas pessoas preferem ir pelo método mais fácil né.
hero member
Activity: 1120
Merit: 540
Duelbits - Play for Free | Win for Real
E carteiras geradas na Electrum podem ser importadas normalmente em todas outras carteiras que usam o BIP39?
Que eu saiba na BlueWallet você pode. Não sei de outra carteira que seja compatível com a semente gerada pela Electrum.
legendary
Activity: 2688
Merit: 2297
Quando você cria uma carteira Electrum, vai usar as mesmas palavras que existem na BIP39 (inglês), mas ela não segue as regras da BIP39 e sim de um sistema próprio (Seed Version System). A diferença acaba sendo só a forma como a seed se transformar nas private-keys.

E carteiras geradas na Electrum podem ser importadas normalmente em todas outras carteiras que usam o BIP39?
legendary
Activity: 2758
Merit: 6830
Fique com duvida em relação a frase "Does not use BIP39 seed phrases but can import them" sobre a Electrum no último site ali..

For these reasons, Electrum does not generate BIP39 seeds. Starting with version 2.0, Electrum uses the following Seed Version System, which addresses these issues.
[...]
Electrum currently use the same wordlist as BIP39 (2048 words). A typical seed has 12 words, which results in 132 bits of entropy in the choice of the seed.

Dizem que não usam, mas que usam.. não parei para ler com calma também, mas se conseguir explicar, agradeço Tongue
Quando você cria uma carteira Electrum, vai usar as mesmas palavras que existem na BIP39 (inglês), mas ela não segue as regras da BIP39 e sim de um sistema próprio (Seed Version System). A diferença acaba sendo só a forma como a seed se transformar nas private-keys.
legendary
Activity: 2688
Merit: 2297
Fique com duvida em relação a frase "Does not use BIP39 seed phrases but can import them" sobre a Electrum no último site ali..

For these reasons, Electrum does not generate BIP39 seeds. Starting with version 2.0, Electrum uses the following Seed Version System, which addresses these issues.
[...]
Electrum currently use the same wordlist as BIP39 (2048 words). A typical seed has 12 words, which results in 132 bits of entropy in the choice of the seed.

Dizem que não usam, mas que usam.. não parei para ler com calma também, mas se conseguir explicar, agradeço Tongue
hero member
Activity: 1120
Merit: 540
Duelbits - Play for Free | Win for Real
Quem quiser ler a Thread no Twitter e traduzir: Twitter/X = https://twitter.com/i/bookmarks?post_id=1746652363669045698

Quem não tem conta no X ou não quer logar, fiz algumas adaptações de tradução:

Você sabia ElectrumWallet foi a primeira carteira determinística de Bitcoin?

Antes disso, as pessoas faziam backup de cada chave individual e não havia função de restauração (por mnemônicos).

Além disso, a Electrum foi a primeira carteira a implementar backups “mnemônicos”, muito antes do BIP39.



A carteira Electrum foi anunciada em 5 de novembro de 2011 como um cliente Bitcoin leve.

Foi a primeira carteira Bitcoin moderna e trouxe recursos que melhoraram a UX em 100x.

Você não tinha tantas opções naquela época.



Você usava Bitcoin Core (chamado de Bitcoin-Qt na época) ou alguma carteira de custódia.

A Electrum introduziu este modelo de servidor onde não há custódia, e você apenas pede ao servidor informações sobre saldos e transmissão de TXS.

(há uma troca de privacidade)

Naquela época, sua carteira Bitcoin geraria chaves individuais para cada um dos seus endereços.

Você pode pensar, ainda faz isso agora, é verdade. Mas não havia relação entre as chaves (não descententes da chave pai).

E quero dizer chaves privadas, não havia palavras em inglês associadas a elas.



Se você reiniciasse sua carteira, você receberia um novo lute de novas chaves todas as vezes! Portanto, NÃO determinístico.

Adendo: O que ele quis dizer é que quando você criava uma nova carteira no Bitcoin Core, a carteira gerava um lote de chaves (ex: 100 chaves) para o usuário ir usando, conforme ele ia usando e as chaves sendo usadas, a carteira geraria um novo lote de chaves, então o usuário precisava fazer backup de novo, pois o backup anterior estava desatualizado e não contavam com as novas chaves que foram criadas, então um backup periódico precisava ser criado para não correr o risco de perder algum saldo (muita gente perdeu bitcoin, pois não entendiam o funcionamento do backup corretamente).

A comunidade Bitcoin estava ciente desta dificuldade e as soluções estavam sendo discutidas já em junho de 2011

Isso resultou no BIP32 amplamente utilizado, criado em fevereiro de 2012.



A 1ª versão dos backups mnemônicos Electrum funcionou de forma semelhante ao BIP39.

12 palavras codificadas usando um dicionário de 1626 palavras. Palavras escolhidas na lista de poesias da Wikipedia.

A codificação é projetada para evitar conflito com uma patente.

As palavras foram escolhidas para serem mais fáceis de lembrar.



Entretanto, em 2013 o BIP39 foi criado e utilizado em conjunto com o BIP32.

BIPs separados para cada tipo de script/endereço, e a mesma semente pode ser usada com múltiplas moedas!

Mas há um problema. Existem MUITOS Derivation Paths para cada tipo e novos tipos podem ser introduzidos.

O BIP39 codifica o segredo em palavras em inglês, mas nenhuma informação sobre os Derivation Paths.



Isso é problemático, pois carteiras diferentes usam Derivation Paths diferentes; portanto, para ter 100% de certeza da recuperação em um futuro distante, você também precisa seguir um Derivation Path.

Além disso, você não pode atualizar este padrão.

Os autores fizeram essa escolha de design propositalmente. Uma falha na minha opinião.


Em 2015, com o Electrum 2.0, foi introduzido um novo e melhorado sistema de sementes (ainda usado hoje).

Resolvendo as deficiências acima:
- tinha um sistema de versionamento
- permite atualizações
- não depende de nenhum dicionário específico

No entanto, quantos de vocês estão usando sementes geradas pela Electrum?



O BIP39 tornou-se mais popular e tornou-se o padrão de fato.

Embora a maioria das pessoas pense que “apenas as palavras” são um ótimo apoio, elas não poderiam estar mais erradas.
Nem todas as carteiras usam os mesmos Derivation Path!

O fato deste site existir comprova as falhas do BIP39.



Espero ter ajudado, caso encontrem algum erro de tradução ou erros de português mesmo me avisem, mandem PM para eu editar o artigo.

Jump to: