Author

Topic: Criando uma transação com nLocktime usando a Electrum (Read 309 times)

legendary
Activity: 3766
Merit: 1742
Join the world-leading crypto sportsbook NOW!
é que eu usei 30 sat/B na fee por precaução Grin

Mesmo desativando o RFB, tem como refazer a transação para outro endereço? Não é só com essa opção ativada que rola isso?

Acho que você gastou um dinheiro que não precisava Cheesy

Depois que a transação foi confirmada no endereço que eu deixei a private key acima, poderia haver um gasto duplo e provavelmente quem pagou mais fee seria o privilegiado ao enviar o saldo pro seu próprio endereço. Ele preveniu  Grin

Sendo que o valor è 0.001 BTC, utilizar uma fee alta poderia pegar o 50-60% do valor do input, entao quem queria ser mais rapido tambem  ganhou menos (bem menos se a mempool tava cheia).
hero member
Activity: 1778
Merit: 882
é que eu usei 30 sat/B na fee por precaução Grin

Mesmo desativando o RFB, tem como refazer a transação para outro endereço? Não é só com essa opção ativada que rola isso?

Acho que você gastou um dinheiro que não precisava Cheesy

Depois que a transação foi confirmada no endereço que eu deixei a private key acima, poderia haver um gasto duplo e provavelmente quem pagou mais fee seria o privilegiado ao enviar o saldo pro seu próprio endereço. Ele preveniu  Grin
legendary
Activity: 2688
Merit: 2297
é que eu usei 30 sat/B na fee por precaução Grin

Mesmo desativando o RFB, tem como refazer a transação para outro endereço? Não é só com essa opção ativada que rola isso?

Acho que você gastou um dinheiro que não precisava Cheesy
legendary
Activity: 2352
Merit: 1121
☢️ alegotardo™️
Não dá pra fazer tutorial com bounty nesse fórum não.

Por acaso estava conversando com um amigo meu sobre esse assunto e vi que hoje faz 1 ano que o @alegotardo conseguiu pegar os 0.001 BTC. Na época era cerca de 30 reais. No dia de hoje são 200. Por esse motivo o alegotardo vai patrocinar a pizza da rapazeada do fórum.  Cool

Perdão por ter desenterrado o tópico mas curiosamente a data bateu e o assunto é interessante  Smiley


Pôxa @Loganota, porque tu não estendeu o nLocktime para 1 ano? Já torrei tudo, infelizmente não vai ter pizza para ninguém Tongue

Esse é um recurso muito legal pra quem precisa fazer um "hodl" forçado de bitcoin mas é mãe de alface. Desde, é claro, que o BTC ali guardado não seja o dindin do leite e sim da pinga do qual você vá precisar urgentemente antes do prazo.

Obrigado por reviver esse tópico, boas lembranças de quando a gente ganha alguma coisa.

hero member
Activity: 1778
Merit: 882
Não dá pra fazer tutorial com bounty nesse fórum não.

Por acaso estava conversando com um amigo meu sobre esse assunto e vi que hoje faz 1 ano que o @alegotardo conseguiu pegar os 0.001 BTC. Na época era cerca de 30 reais. No dia de hoje são 200. Por esse motivo o alegotardo vai patrocinar a pizza da rapazeada do fórum.  Cool

Perdão por ter desenterrado o tópico mas curiosamente a data bateu e o assunto é interessante  Smiley
hero member
Activity: 1778
Merit: 882
Para quem leu até o final, se você entendeu todo o processo, deve ter percebido que qualquer um que estiver lendo esse tutorial estará apto a conseguir 0.001 BTC. Boa sorte  Wink

Oh bloco demorado pra sair, levou 23 minutos em relação ao anterior, quase me deu LER no dedo de tanto apertar o F5 no BlockExplorer.
@Loganota, me perdoe também ter torrado mais de 0.00005 BTC, é que eu usei 30 sat/B na fee por precaução Grin

Obrigado!

Até esqueci que o bloco sairia hoje. Que bom, senão iria ficar monitorando a mineração dele igual a você  Cheesy

Quanto a fee, como você tinha as chaves privadas, o BTC era seu (e de todo mundo que viu o tópico Tongue), se quisesse enviar tudo de fee não tinha problema.

Agora com o seu procedimento de resgatar o "prêmio" o tutorial foi finalizado mostrando que ele serviu totalmente ao propósito, travou a transação até o bloco certo, erro que dava quando o @tg88 tentou resgatar e depois liberou pra ser transmitida e já foi pelo @alegotardo. Vou fazer um edit no post.
legendary
Activity: 2352
Merit: 1121
☢️ alegotardo™️
Para quem leu até o final, se você entendeu todo o processo, deve ter percebido que qualquer um que estiver lendo esse tutorial estará apto a conseguir 0.001 BTC. Boa sorte  Wink

Oh bloco demorado pra sair, levou 23 minutos em relação ao anterior, quase me deu LER no dedo de tanto apertar o F5 no BlockExplorer.
@Loganota, me perdoe também ter torrado mais de 0.00005 BTC, é que eu usei 30 sat/B na fee por precaução Grin

Obrigado!
hero member
Activity: 1778
Merit: 882
O Bitcoin tem tantas possibilidades de recursos avançados que a electrum ainda tem bastante espaço para crescer e esse é um recurso fácil de ser implementado. Mas com esse seu tutorial qualquer um consegue fazer, Parabéns!

Já tínhamos comentado sobre esse nLocktime em algum lugar por aqui (procurei mas não achei mais o tópico) mas de fato ninguém havia se dado ao mérito de ensinar como por isso em prática.
Essa também é uma excelente forma de se fazer um HODL forçado para quem é mão de alface Grin


Acho que a parte do HODL forçado não daria muito certo porque é apenas uma transação que só pode ser ativada depois de um tempo, então você poderia gastar os fundos antes dessa transação ser válida. Pra essa opção tem outra possibilidade que estou estudando ainda e devo fazer um tutorial.

Boa, Loga! Bem detalhadinho e com screens pro povo! Smiley O que me faz lembrar que já passou da hora de ter uma interface para esta operação na Electrum  Undecided

Em falar no assunto e na "lembrancinha" me lembrei de um tópico que tinha visto há um bom tempo - foi até difícil de encontrar na verdade hehe - o teste foi feito na época com 0.1 BTC e ficou um cara sem ninguém pegar... bom, como ganhador oficial de concursos eu acho que vocês deveriam deixar os 0.001 para moi  Grin

Passei nesse tópico durante as minhas pesquisas e não reparei esse bounty. Muito interessante. E bem, você já ganhou demais, deixa um pouquinho pros outros  Tongue
legendary
Activity: 2352
Merit: 1121
☢️ alegotardo™️
O Bitcoin tem tantas possibilidades de recursos avançados que a electrum ainda tem bastante espaço para crescer e esse é um recurso fácil de ser implementado. Mas com esse seu tutorial qualquer um consegue fazer, Parabéns!

Já tínhamos comentado sobre esse nLocktime em algum lugar por aqui (procurei mas não achei mais o tópico) mas de fato ninguém havia se dado ao mérito de ensinar como por isso em prática.
Essa também é uma excelente forma de se fazer um HODL forçado para quem é mão de alface Grin

Só uma duvida...
Aqueles 12 dígitos iniciais que você "cortou" pra poder jogar o RAW no freedomnode.com não precisam voltar pro hash antes de importar de volta na Electrum com a modificação do bloco?


[EDIT]
Já estou até vendo a galera se matar daqui alguns dias por 0.001 BTC.
Vai chover "double spend" dessa wallet.
hero member
Activity: 1498
Merit: 557
Boa, Loga! Bem detalhadinho e com screens pro povo! Smiley O que me faz lembrar que já passou da hora de ter uma interface para esta operação na Electrum  Undecided

Em falar no assunto e na "lembrancinha" me lembrei de um tópico que tinha visto há um bom tempo - foi até difícil de encontrar na verdade hehe - o teste foi feito na época com 0.1 BTC e ficou um cara sem ninguém pegar... bom, como ganhador oficial de concursos eu acho que vocês deveriam deixar os 0.001 para moi  Grin
hero member
Activity: 1778
Merit: 882
Ótimo tutorial, me tira uma dúvida.  Grin

Para que eu consiga importar a transação com sucesso, não basta eu copiar
Code:
0200000002af306a60f051058bf0345ebcccc2c0c4909472a5b5500c3af63cc9e321129c82020000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffffb741a298b5759a03bc80f2aac994fb4591c5f5193d2730024e9be0ddc8465adf000000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffff02a0860100000000001976a914a6cdacbede3ea7b0112d3c326e261f5362c3e7a188ac09531200000000001976a914bfb4a1c24e764627a45156b5c96d1fe9634b974188acd3620900

jogar lá no site https://freedomnode.com e informar um bloco já minerado?

Calcular novamente salvar em um arquivo de texto e importar na electrum?

Esta ocorrendo esse erro quando eu tento transmitir:
Print

Talvez é porque o bloco que eu configurei ainda não chegou Grin

A transação só poderá ser gasta quando o bloco 616127 chegar. Mas que bom que entendeu como funciona para recuperar.
legendary
Activity: 2492
Merit: 1429
Top-tier crypto casino and sportsbook
Ótimo tutorial, me tira uma dúvida.  Grin

Para que eu consiga importar a transação com sucesso, não basta eu copiar
Code:
0200000002af306a60f051058bf0345ebcccc2c0c4909472a5b5500c3af63cc9e321129c82020000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffffb741a298b5759a03bc80f2aac994fb4591c5f5193d2730024e9be0ddc8465adf000000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffff02a0860100000000001976a914a6cdacbede3ea7b0112d3c326e261f5362c3e7a188ac09531200000000001976a914bfb4a1c24e764627a45156b5c96d1fe9634b974188acd3620900

jogar lá no site https://freedomnode.com e informar um bloco já minerado?

Calcular novamente salvar em um arquivo de texto e importar na electrum?

Esta ocorrendo esse erro quando eu tento transmitir:
hero member
Activity: 1778
Merit: 882
Pessoal, estava dando uma olhada pela aba gringa e vi esse post do @LoyceV que achei interessante. Pesquisei sobre como fazer o procedimento na Electrum e não encontrei nada que me ajudasse, aliás, a Electrum só atrapalha porque a forma como ela informa o raw nenhum decodificador de raw entende, então tive que criar uma forma de driblar  Grin

Bem. Para que serve o nLocktime? Basicamente você cria uma transação que só pode ser minerada após um bloco determinado por você. No caso do post original, o LoyceV dá uma exemplo para utilizá-lo como herança. Ou seja, seria uma forma se você deixar uma transação programada para ser efetuada somente após sua morte em um bloco pré-determinado.

Outro caso de utilização seria você fazer uma espécie de poupança para os seus filhos, onde você deixaria programada uma transação para que daqui a 10 ou 15 anos eles pudessem gastar os valores pré-determinados por você.

Vamos começar.

Primeiramente eu gerei um endereço aleatório no bitadress.org, o resultado foi o seguinte:


No próximo passo, vamos para a Electrum e preenchemos os campos de recebedor, quantia a ser enviada e a taxa da transação. Ao invés de enviarmos, clicamos em Visualização:





Nessa tela, clicamos no botão Copiar para copiar o Raw da nossa transação, que no caso é o seguinte:

Code:
45505446ff000200000002af306a60f051058bf0345ebcccc2c0c4909472a5b5500c3af63cc9e321129c82020000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffffb741a298b5759a03bc80f2aac994fb4591c5f5193d2730024e9be0ddc8465adf000000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffff02a0860100000000001976a914a6cdacbede3ea7b0112d3c326e261f5362c3e7a188ac09531200000000001976a914bfb4a1c24e764627a45156b5c96d1fe9634b974188acd3620900

Os últimos 4 bytes (8 digitos) ou seja "d3620900" representam o nLocktime da transação ou seja o bloco onde ela poderá ser gasta. Uma maneira fácil de modificá-lo é através desse site aqui:

https://freedomnode.com/btc/nlocktime



Como disse acima, o padrão raw informado pela Electrum possuem seus primeiros bytes de forma que esse site e outros decodificadores de raw não entendem. Para utilizá-lo precisamos retirar esses primeiros bytes "45505446ff00". O que colaremos no primeiro campo "Raw Transaction" é então o resto do texto:

Code:
0200000002af306a60f051058bf0345ebcccc2c0c4909472a5b5500c3af63cc9e321129c82020000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffffb741a298b5759a03bc80f2aac994fb4591c5f5193d2730024e9be0ddc8465adf000000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffff02a0860100000000001976a914a6cdacbede3ea7b0112d3c326e261f5362c3e7a188ac09531200000000001976a914bfb4a1c24e764627a45156b5c96d1fe9634b974188acd3620900

No segundo campo, escolheremos o bloco em que queremos que a transação possa ser gasta. Eu calculei o bloco 616127 que é vai ser minerado a mais ou menos daqui 1 semana a partir de hoje.



Clicamos em Calculate. O resultado é dado pelo site:

Code:
0200000002af306a60f051058bf0345ebcccc2c0c4909472a5b5500c3af63cc9e321129c82020000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffffb741a298b5759a03bc80f2aac994fb4591c5f5193d2730024e9be0ddc8465adf000000004401ff4104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffff02a0860100000000001976a914a6cdacbede3ea7b0112d3c326e261f5362c3e7a188ac09531200000000001976a914bfb4a1c24e764627a45156b5c96d1fe9634b974188acbf660900

Verifiquem que apenas os últimos 4 bytes foram modificados.

Agora vamos importar a transação para a Electrum novamente. Para isso vá no campo Ferramentas > Carregar transação > De texto



Você deverá ver a transação exatamente como via antes apenas com o Locktime modificado.


Se tudo estiver correto, assine a transação e copie novamente o Raw ou faça a exportação para um arquivo. De posse da transação assinada, o destinatário estará apto a gastar os fundos quando o bloco definido por você for minerado.

O raw da transação assinada neste tutorial é o seguinte:

Code:
0200000002af306a60f051058bf0345ebcccc2c0c4909472a5b5500c3af63cc9e321129c82020000008b48304502210093f43d2af5755eb832123fdc791d203beb3c42ca85ecad92d7cc834ba8080f2e0220387018a8493a21d9c4c3a21a2d7910bba1bb7a2da04f3900e5e85c6a07ef959f014104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffffb741a298b5759a03bc80f2aac994fb4591c5f5193d2730024e9be0ddc8465adf000000008a473044022009c8e0e3e7caf067e4c0c073009e97b214f4a9f22ce3e0d80b21640d1a53393902206198e1f7208425a0f50ce53614e4fd232cfc3d3cffcd14693684494dcfdba23f014104b335e40e60df76503bce9c883b4dee96274bf4e7df381e9d0b8a4ff2c750c0229c134a690968c1ad702ba9f09b6abc9ddc5d513c097f35c0b3c87bb6e863bf8afdffffff02a0860100000000001976a914a6cdacbede3ea7b0112d3c326e261f5362c3e7a188ac153b1200000000001976a914bfb4a1c24e764627a45156b5c96d1fe9634b974188acbf660900

É necessário somente carregar novamente a partir de um texto a transação para a Electrum e então a transação pode ser transmitida e minerada se o a altura do bloco já foi alcançada.

Para quem leu até o final, se você entendeu todo o processo, deve ter percebido que qualquer um que estiver lendo esse tutorial estará apto a conseguir 0.001 BTC. Boa sorte  Wink

Edit: O bloco 616127 foi minerado hoje, dia 05/02/2020, como podem ver abaixo o @alegotardo estava monitorando e assim que o bloco foi minerado a transação que eu criei pôde ser transmitida e minerada. O endereço que eu criei recebeu os 0.001 BTC e como o @alegotardo tinha a chave privada que eu deixei no tópico, ele resgatou os satoshis para um endereço de sua posse. Com isso, o intuito do tutorial foi concluído com sucesso. Obrigado também ao tg88 que demonstrou que não foi possível gastar antes do prazo que eu determinei.  Cool

Fico grato se apontarem algum erro ou correção  Grin


Jump to: