Bitcoin Forum
September 18, 2021, 10:22:39 PM *
News: Latest Bitcoin Core release: 22.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Inputs  (Read 136 times)
sabotag3x
Legendary
*
Offline Offline

Activity: 1820
Merit: 1472



View Profile
July 22, 2020, 08:41:37 PM
Merited by bitmover (1)
 #1

Já que vocês gostam desses assuntos técnicos e estão lendo o Mastering Bitcoin.. Roll Eyes

Sei que dá para selecionar de qual endereço será feita a transação em uma carteira com vários endereços.. porém as vezes a transação gera mais de um input de um mesmo endereço, mesmo tendo saldo..

A pergunta é: tem como selecionar quais inputs de um mesmo endereço serão usados na transação?



Acho que é a primeira vez que posto nessa aba


 
 
1632003760
Hero Member
*
Offline Offline

Posts: 1632003760

View Profile Personal Message (Offline)

Ignore
1632003760
Reply with quote  #2

1632003760
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1632003760
Hero Member
*
Offline Offline

Posts: 1632003760

View Profile Personal Message (Offline)

Ignore
1632003760
Reply with quote  #2

1632003760
Report to moderator
1632003760
Hero Member
*
Offline Offline

Posts: 1632003760

View Profile Personal Message (Offline)

Ignore
1632003760
Reply with quote  #2

1632003760
Report to moderator
1632003760
Hero Member
*
Offline Offline

Posts: 1632003760

View Profile Personal Message (Offline)

Ignore
1632003760
Reply with quote  #2

1632003760
Report to moderator
bitmover
Legendary
*
Offline Offline

Activity: 1330
Merit: 2734



View Profile WWW
July 23, 2020, 02:48:34 AM
Merited by sabotag3x (1)
 #2

Já que vocês gostam desses assuntos técnicos e estão lendo o Mastering Bitcoin.. Roll Eyes

Sei que dá para selecionar de qual endereço será feita a transação em uma carteira com vários endereços.. porém as vezes a transação gera mais de um input de um mesmo endereço, mesmo tendo saldo..

A pergunta é: tem como selecionar quais inputs de um mesmo endereço serão usados na transação?



Acho que é a primeira vez que posto nessa aba

A quantidade de inputs não tem relação com a quantidade de endereços.
Cada vez que voce recebe uma transação é gerado um input, independente de qual endereço foi usado.

Na electrum (e na coinomi mobile) é possível selecionar quais os inputs que voce deseja gastar. Essa função se chama COIN CONTROL. Vou botar o passo a passo da electrum:



Pronto. Va em view, show Coins e seleciona as coins (inputs) que voce deseja gastar.

sabotag3x
Legendary
*
Offline Offline

Activity: 1820
Merit: 1472



View Profile
July 23, 2020, 03:40:23 AM
 #3

-snip-

Show! Pensava que só dava para fazer com endereços diferentes..

Não tem algum BIP que vise resolver esse "problema"?


 
 
bitmover
Legendary
*
Offline Offline

Activity: 1330
Merit: 2734



View Profile WWW
July 23, 2020, 03:46:53 AM
Merited by sabotag3x (1)
 #4

Show! Pensava que só dava para fazer com endereços diferentes..

Não tem algum BIP que vise resolver esse "problema"?

Mas não é um problema, nem atrapalha a funcionalidade. É importante que você possa controlar seus inputs individualmente, é uma função.

Se sempre que você recebesse uma transação os inputs fossem automaticamente consolidados as taxas seriam ainda mais caras.

Voce pode consolidar eles sempre que as taxas estiverem baixas. Por exemplo, meu endereço de campanha de assinaturas tem uns 80 inputs. De tempos em tempos eu faço uma transação dos 80 inputs para exatamente o mesmo endereço. É possivel fazer isso. Coloco 1 sat/byte e pronto, feito.

Daí quando as taxas estiverem altas e eu quiser mandar pra exchange, posso colocar uma taxa maior se eu estiver com pressa (uns 20 sat/byte) mas irei pagar apenas 1 inputs (pq eu consolidei eles antes)

Por exemplo, olhe esse endereço aleatorio:

https://blockchair.com/bitcoin/address/1EsbjqNqCWLckzFBNHkDMFhR3SwG6YsKKV

no proprio block explorer podemos ver a quantidade de inputs:
3 outputs não gastos



Edit e curiosidade: Ethereum nao funciona dessa forma (inputs e outputs, ou seja, UTXO unspent transaction outputs). Ethereum usa outro modelo. Mais detalhes aqui:
https://blockonomi.com/utxo-vs-account-based-transaction-models/
Curiosamente, o modelo utilizado pelo ethereum é menos transparente, não tem completa fungibilidade e tb não é escalável. Mas é mais simples para rodar smartcontracts.
Bom trade-off?

sabotag3x
Legendary
*
Offline Offline

Activity: 1820
Merit: 1472



View Profile
July 23, 2020, 03:55:36 AM
 #5

Mas não é um problema, nem atrapalha a funcionalidade. É importante que você possa controlar seus inputs individualmente, é uma função.

Se sempre que você recebesse uma transação os inputs fossem automaticamente consolidados as taxas seriam ainda mais caras.

Para uma blockchain que não vai escalonar por si só (ex: tamanho do bloco), eu vejo como um problema sim.. Não é todo mundo que tem paciência para consolidar saldos quando a rede não está congestionada..

Então, minha duvida é essa.. Será que ninguém pensou numa forma de consolidar o saldo sem precisar realizar uma tx?


Edit e curiosidade: Ethereum nao funciona dessa forma (inputs e outputs, ou seja, UTXO unspent transaction outputs). Ethereum usa outro modelo. Mais detalhes aqui:
https://blockonomi.com/utxo-vs-account-based-transaction-models/
Curiosamente, o modelo utilizado pelo ethereum é menos transparente, não tem completa fungibilidade e tb não é escalável. Mas é mais simples para rodar smartcontracts.
Bom trade-off?

Vou ler com calma depois.. nunca tinha parado para pensar que o ETH não trabalha da mesma maneira em relação a inputs/outputs..


 
 
bitmover
Legendary
*
Offline Offline

Activity: 1330
Merit: 2734



View Profile WWW
July 23, 2020, 10:47:40 AM
 #6

Então, minha duvida é essa.. Será que ninguém pensou numa forma de consolidar o saldo sem precisar realizar uma tx?

Essa é a forma como o blockchain foi desenhado. Em um nível mais básico não existem endereços. Existem somente UTXO, que são, a grosso modo, esses inputs e outputs.

Um "BIP" sobre isso seria outro blockchain, não seria nem um fork.

Ethereum trabalha de outra forma, mas existiram ganhos e perdas.

Para uma blockchain que não vai escalonar por si só (ex: tamanho do bloco), eu vejo como um problema sim.. Não é todo mundo que tem paciência para consolidar saldos quando a rede não está congestionada..

Mas ai os assuntos começam a se misturar... O Bitcoin oferece uma forma de fazer transações baratas, mas aí o usuário não tem paciência pra pagar menos e reclama que paga caro. rsrs

Acho que uma solução simples para isso seria fazer uma wallet que consolidasse automaticamente os inputs de preguicosos. QUando voce criasse a wallet o app perguntava "Voce deseja pagar menos em transacoes? Voce autoriza a wallet a fazer uma transacao agora de consolidacao que pode demorar até 3 dias a 1 sat/byte? Depois desse processo, voce irá permanentemente pagar menos em fees"

TryNinja
Legendary
*
Offline Offline

Activity: 1862
Merit: 3581


Merit & Notifications bot: @BTTSuperNotifier_bot


View Profile WWW
July 23, 2020, 06:50:37 PM
 #7

O UTXO é como uma nota física de Real. Você recebe um pagamento de R$ 10,00 e fica com uma nota de R$ 10,00. Depois recebe outro de R$ 50,00 e agora você tem uma nota de R$ 10,00 e uma de R$ 50,00. Mas você fala "tenho R$ 60,00 na carteira". É a mesma coisa com o Bitcoin.

O usuário que recebe 0.7 BTC e 0.3 BTC vê 1 BTC em seu endereço, como um número inteiro absoluto, porém, no nível do protocolo, o saldo é a junção de todos os outputs (que servem como inputs nas suas transações). É uma prova assinada pelo antigo dono (que lhe enviou) que diz que tal moeda agora pode ser gasta pelo seu endereço.

alexrossi
Legendary
*
Offline Offline

Activity: 2842
Merit: 1403


Join the world-leading crypto sportsbook NOW!


View Profile WWW
September 12, 2020, 05:58:20 PM
 #8


Acho que uma solução simples para isso seria fazer uma wallet que consolidasse automaticamente os inputs de preguicosos. QUando voce criasse a wallet o app perguntava "Voce deseja pagar menos em transacoes? Voce autoriza a wallet a fazer uma transacao agora de consolidacao que pode demorar até 3 dias a 1 sat/byte? Depois desse processo, voce irá permanentemente pagar menos em fees"

So vi agora esse post, queria adicionar que um wallet com essa funcionalidade seria bastante inseguro, sendo que ele teria o controle total de assinar transaçoes, e um update errado poderia introduzir com muita facilidade uma funçao pra roubar BTC de todo mundo.

  ▄▄█████▄▄███████▄▄
 ███████████
     ▀▀███▄
█████████████        ▀██▄
█████████████          ██▄
███████████            ██▄
██▀▀█████▀▀              ██
██                       ██
██                       ██
▀██                     ██▀
 ▀██                   ██▀
  ▀██▄               ▄██▀
    ▀███▄▄       ▄▄███▀
       ▀▀█████████▀▀
███████████    LEADING CRYPTO SPORTSBOOK & CASINO    ███████████
MULTI
CURRENCY
1500+
CASINO GAMES
CRYPTO EXCLUSIVE
CLUBHOUSE
FAST & SECURE
PAYMENTS
..PLAY NOW!..
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!