Bitcoin Forum

Local => Português (Portuguese) => Topic started by: alegotardo on December 05, 2020, 02:11:02 PM



Title: Encontrar privkey - bitcoin wallet android
Post by: alegotardo on December 05, 2020, 02:11:02 PM
Olá!

Venho aqui pedir ajuda para um problema que tem tirado o meu sono já faz algumas semanas....

Há alguns meses eu gerei um endereço bech32 no android usando a Bitcoin Wallet (https://play.google.com/store/apps/details?id=de.schildbach.wallet).
Ela tem funcionado perfeitamente, porém a simplicidade e falta de recursos dela me incomoda, por isso quer portá-la para outro programa e aí que entra o problema.... não estou conseguindo acesso à chave privada do endereço que estou usando.

Através das dicas desse video (https://www.youtube.com/watch?v=upw_NRfbTFI) eu consegui fazer um backup da wallet, decriptar ela no computador e ter acesso à seed.

Ocorre que eu não encontro o meu endereço.. já tentei várias variações do derivation path e nada :-[

Eu também tenho a extended public key aqui comigo (zpub) e atravéz dela consegui acesso aos meus endereços e transações já relizadas ao importá-la na na electrum, porém é apenas "watch-only".

Creio que com essa chave púlbica e a seed em mãos, eu tenha informações suficientes para conseguir a private key do endereço que preciso, mas não sei como chegar nisso.
Espero que alguém tenha entendido o meu problema e consiga me dar uma luz.


Ah sim.... eu posso simplesmente transferir todo o saldo para outra carteira. mas eu sou muito teimoso pra largar esse osso.


Title: Re: Encontrar privkey - bitcoin wallet android
Post by: Adriano on December 05, 2020, 10:15:52 PM
qual é o tipo de codificação de endereço que ela gera? Se for P2WPKH tenta m/84'/0'


Title: Re: Encontrar privkey - bitcoin wallet android
Post by: alegotardo on December 06, 2020, 01:28:27 AM
qual é o tipo de codificação de endereço que ela gera? Se for P2WPKH tenta m/84'/0'

É esse mesmo, porém meu endereço não está aí no 84'/0' nem /1, ou outros (fui até o 10)


Title: Re: Encontrar privkey - bitcoin wallet android
Post by: sabotag3x on December 06, 2020, 01:48:46 AM
É esse mesmo, porém meu endereço não está aí no 84'/0' nem /1, ou outros (fui até o 10)

Já tentou usar um serviço como esse? https://iancoleman.io/bip39/

Se tiver dinheiro na carteira, recomendo utilizar de forma offline, ali pro final da página tem um link de onde baixar..


Title: Re: Encontrar privkey - bitcoin wallet android
Post by: TryNinja on December 06, 2020, 05:21:49 AM
Eu gastei um bom tempo procurando nas profundezas do repo do bitcoinj (lib utilizada pela carteira do schildbach para gerar os endereços, assinar as tx, etc...), mas eu finalmente encontrei uma solução para você.

Caso esteja importando a carteira na Electrum, selecione "BIP39 seed", deixe marcado "native segwit (p2wpkh)" e use a derivation path m/1'

De nada. 8)


Title: Re: Encontrar privkey - bitcoin wallet android
Post by: alegotardo on December 06, 2020, 12:19:33 PM

Já tentou usar um serviço como esse? https://iancoleman.io/bip39/

Sim, perdi várias horas nele mexendo com o derivation path tentando encontrar meu endereço e nada.

Creio que a única forma seria conseguir encontrar o derivation path a partir da public key, mas não encontrei nada parecido que fizesse isso, além do problema de eu não poder ir colocando essas informações em qualquer código/programa, por mais que seja apenas read-only

Eu gastei um bom tempo procurando nas profundezas do repo do bitcoinj (lib utilizada pela carteira do schildbach para gerar os endereços, assinar as tx, etc...), mas eu finalmente encontrei uma solução para você.

Caso esteja importando a carteira na Electrum, selecione "BIP39 seed", deixe marcado "native segwit (p2wpkh)" e use a derivation path m/1'

De nada. 8)

 :o :D ;D  8)

Tu é O CARA mesmo, Funcionou!!!!
Mas de onde que tiraram esse derivation path? Eu nunca iria tentar isso, que loucura gente.

Depois me explica melhor como chegou nessa solução porque eu procurei muito e não achei isso... bem que poderia ter essa opção na interface do iancoleman que o @sabotag3x comentou, acho ele nem ele sabe disso.

Sou muito, muito grato pela ajuda @TryNinja. Valeu mesmo!


Title: Re: Encontrar privkey - bitcoin wallet android
Post by: TryNinja on December 06, 2020, 03:25:09 PM
Mas de onde que tiraram esse derivation path? Eu nunca iria tentar isso, que loucura gente.
Eu acabei encontrando um teste que garante o funcionamento da função deriveChildKey() do bitcoinj, que deriva a carteira da public key.

https://github.com/bitcoinj/bitcoinj/blob/f76e13c495f6d38f3d03aac55d37cb6b8f633f86/core/src/test/java/org/bitcoinj/crypto/ChildKeyDerivationTest.java#L112