domingo, 5 de junho de 2016

Rodando o Mycelium no PC - A solução definitiva para carteira Bitcoin

No post anterior, eu desabafei minha indignação sobre carteiras bitcoin que fossem boas, seguras e que rodassem tanto no PC como no smartphone. Já que por enquanto não achei algo que realmente funcione direito, eu resolvi apelar. O jeito é portar algum bom aplicativo do Android no PC.

Por enquanto, um aplicativo que tem nota excelente no Google APP Store, é o Mycelium, eu já cheguei a testar ele antes, e gostei muito, mas ele não tem uma versão PC Desktop. A única forma de fazer isso é rodar ele via ARC Welder, que é um runtime de aplicativos Android (apk), para o Google Chrome. Ele ainda está em faze beta, e está meio que escondido, pois aparentemente ele foi feito para rodar no Chromebook (um lixo de notebook desenvolvido pela Google). Mas em testes aqui (que inclusive é Ubuntu Linux) funcionou perfeitamente, porém seu sistema operacional tem que ser base 64 bits, senão o ARC Welder não irá instalar.

Para instalar, a maneira mais fácil (já que ele não aparece na pesquisa do webstore do google chrome), é entrar nesse link:


E mandar instalar, ele vai baixar o App Runtime do Android, que é bem grande, e depois vai instalar o ARC Welder. Depois de instalado vá em detalhes e mande criar um atalho, ou simplesmente rode-o no iniciador de aplicativos do google chrome. Da primeira vez, ele irá te dar um aviso de que você não está rodando no Chromebook, e irá pedir uma pasta de trabalho, crie uma pasta em branco e associe essa pasta no ARC Welder. Agora entre na página do Mycelium e baixe o arquivo apk. Agora é só abrir esse apk no ARC Welder e definir a orientação da tela, se vai emular um tablet ou celular e clicar em Test, o Mycelium deverá inicializar como um aplicativo normal. Agora o Mycelium irá aparecer na lista de extensões do google chrome, você poderá criar um atalho normalmente e roda-lo mesmo com o chrome fechado.

Se teve dificuldades com o ARC Welder, confira esse tutorial mais explicativo, pois assim como você, eu não gosto de reinventar a roda:

http://www.techtudo.com.br/dicas-e-tutoriais/noticia/2015/04/como-rodar-qualquer-app-android-no-pc-usando-google-chrome-e-arc-welder.html

Agora se seu sistema operacional for base x86 (32 Bits), ainda há solução, basta usar o velho e bom Electrum. Primeiro você terá que exportar sua chave privada extendida, ou xpriv do Mycelium, pois a sua frase secreta não irá funcionar diretamente no Electrum, pois o algorítimo é diferente. Então vá no Mycelium no seu celular, na aba "Contas" clique na sua conta do qual quer exportar, vá nos 3 pontinhos no canto superior direito da tela e selecione a opção "exportar". Depois de inserida a senha, ele vai te dar um aviso, aceite e continue. Agora você tem 2 opções, você pode exportar a chave pública privada (xpub), e com ela você poderá acompanhar a movimentação da conta, receber pagamentos mas não poderá gastar seus bitcoins, ou você pode exportar a chave privada estendida (xpriv), e assim como ele deixa bem avisado, qualquer um que possua essa chave poderá roubar seus bitcoins, sendo assim tome cuidado com ela. Segure por alguns segundos a tela, e ele irá mostrar a xpriv.
Abra o Electrum e escolha a opção "Restore a wallet or import keys", e em "Wallet Kind" selecione "Standard Wallet". Na caixa seguinte, insira nela sua xpub ou xpriv conforme mencionei anteriormente. A partir de agora o Electrum irá mostrar os mesmos endereços que o Mycelym.

O legal de usar o Electrum, é que mesmo que o Mycelium e / ou o Electrum fique fora do ar, ainda é possível através dele, exportar a chave privada do endereço(s) que contem seus fundos, sendo assim possível recuperá-los, assinando a transação manualmente ou importando em outro serviço.

Ou, seja, trabalhando desta forma, mantendo sua frase secreta e / ou sua xpriv guardadas (com segurança), você só perderá seus bitcoins se a internet toda ficar offline.

O interessante deste processo é que qualquer software de carteira bitcoin HD que possua a opção exportar a chave privada estendida, irá funcionar, teoricamente. Eu testei esse processo com o software Copay, e quando importava a xpriv no Electrum, ele gerava endereços totalmente diferentes do que mostrados no Copay, mas quando importava a xpub funcionava normalmente. Como o xpub não é muito útil em caso de "saída de emergência" nesse caso não achei muito útil, e nem entendi o motivo, pois a xpub é baseada na xpriv. Enfim, nunca confie 100% num software, sempre teste suas saídas de emergência antes de colocar algum dinheiro nele.

Atualização 07/06/2016

Recentemente eu descobri que a frase secreta (Frase mnemônica) do blockchain.info é compatível com o Mycelium, mas vou deixar bem claro que descobri isso por acaso, o suporte do blockchain,info nunca deixou essa informação clara nem na página nem no suporte, e nem te dá a possibilidade (não sei porquê) de exportar a xpriv. Sendo assim, você pode ter 3 serviços diferentes gerenciando a mesma conta. Você anota sua frase secreta do blockchain.info (eles até disponibilizam um pdf para você fazer isso), insere essa frase secreta no Mycelium, depois, no Mycelium, você exporta a xpriv e importa no Electrum, possibilitando assim ter 3 serviços diferentes operando os mesmos endereços.