Bitcoin Forum
May 05, 2024, 06:56:37 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3]  All
  Print  
Author Topic: Por que 21 milhões?  (Read 489 times)
darkv0rt3x
Hero Member
*****
Offline Offline

Activity: 1204
Merit: 658


I rather die on my feet than to live on my knees


View Profile
December 13, 2023, 09:35:12 PM
Last edit: December 13, 2023, 09:46:29 PM by darkv0rt3x
 #41

Eu andei pesquisando  e não achei uma resposta a essa questão.

Existem muitas especulações nesse tópico, o melhor q eu achei  :
https://bitcoin.stackexchange.com/questions/8439/why-was-21-million-picked-as-the-number-of-bitcoins-to-be-created

Essa explica da onde vem o número
Quote
72

Here's a mathematical explanation:

Calculate the number of blocks per 4 year cycle:
Code:
6 blocks per hour
* 24 hours per day
* 365 days per year
* 4 years per cycle
= 210,240
~= 210,000

Sum all the block reward sizes:

50 + 25 + 12.5 + 6.25 + 3.125 + ... = 100

Multiply the two:

210,000 * 100 = 21 million.

Por conta de um erro de arredondamento, a resposta correta seria a do Drawesome
20,999,999.9769 realmente

Mas nada disso responde, por que.?

Achei essa especulação aqui:
Quote
Wikipedia (Gold):

    A total of 174,100 tonnes of gold have been mined in human history, according to GFMS as of 2012. This is roughly equivalent to 5.6 billion troy ounces or, in terms of volume, about 9261 m3, or a cube 21.0 m on a side.
http://en.wikipedia.org/wiki/Gold

O total de ouro já minerado pela humanidade seria um cubo 21m de altura.

Eu andei pesquisando  e não achei uma resposta a essa questão.

Existem muitas especulações nesse tópico, o melhor q eu achei  :
https://bitcoin.stackexchange.com/questions/8439/why-was-21-million-picked-as-the-number-of-bitcoins-to-be-created

Essa explica da onde vem o número
Quote
72

Here's a mathematical explanation:

Calculate the number of blocks per 4 year cycle:
Code:
6 blocks per hour
* 24 hours per day
* 365 days per year
* 4 years per cycle
= 210,240
~= 210,000

Sum all the block reward sizes:

50 + 25 + 12.5 + 6.25 + 3.125 + ... = 100

Multiply the two:

210,000 * 100 = 21 million.

Por conta de um erro de arredondamento, a resposta correta seria a do Drawesome
20,999,999.9769 realmente

Mas nada disso responde, por que.?

Achei essa especulação aqui:
Quote
Wikipedia (Gold):

    A total of 174,100 tonnes of gold have been mined in human history, according to GFMS as of 2012. This is roughly equivalent to 5.6 billion troy ounces or, in terms of volume, about 9261 m3, or a cube 21.0 m on a side.
http://en.wikipedia.org/wiki/Gold

O total de ouro já minerado pela humanidade seria um cubo 21m de altura.

Sim, esta explicação é das que reune mais consenso, no entanto, esta explicação deixa uma série de outras questões, na minha opinião.

1 - Porquê o primeiro block subsidy ser 50 Bitcoins?
2 - Porquê uma média de 10 mins por cada bloco? (sim, o parâmetro do ajuste de dificuldade assim o estipula, mas porquê este valor médio de 10 mins? Porque não 20 mins ou 3h)Huh
3 - Porquê ser um "halving" e não um "thirding" (termo inventado agora)Huh
4 - Porquê 210000 blocos?

Circula também pela net uma fórmula que traduz o valor total de Bitcoins a serem minerados.


No fundo, esta fórmula foi deduzida através do percurso dos blocos mineradoes e dos outros valores hard-coded no código do protocolo!


Também há este post:
https://medium.com/@k_schellinger/understanding-bitcoins-21-million-limit-310297a7d962

Bitcoin is energy. Bitcoin is freedom
I rather die on my feet than living on my knees!
1714892197
Hero Member
*
Offline Offline

Posts: 1714892197

View Profile Personal Message (Offline)

Ignore
1714892197
Reply with quote  #2

1714892197
Report to moderator
Unlike traditional banking where clients have only a few account numbers, with Bitcoin people can create an unlimited number of accounts (addresses). This can be used to easily track payments, and it improves anonymity.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714892197
Hero Member
*
Offline Offline

Posts: 1714892197

View Profile Personal Message (Offline)

Ignore
1714892197
Reply with quote  #2

1714892197
Report to moderator
Fazu
Member
**
Offline Offline

Activity: 81
Merit: 16


View Profile
December 13, 2023, 11:21:09 PM
 #42

Século 21
bitmover
Legendary
*
Offline Offline

Activity: 2296
Merit: 5919


bitcoindata.science


View Profile WWW
December 14, 2023, 01:20:27 PM
 #43

2 - Porquê uma média de 10 mins por cada bloco? (sim, o parâmetro do ajuste de dificuldade assim o estipula, mas porquê este valor médio de 10 mins? Porque não 20 mins ou 3h)Huh

Porque quando o tempo é muito alto, as transações demoram para ocorrer. Imagine esperar 3 horas numa transação.

QUando o tempo é muito curto, tipo 10 segundos, a quantidade de blocos órfãos é muito grande.

Blocos orfãos são um desperdício de energia. Eles ocorrem quando dois blocos são minerados ao mesmo tempo, e os nodes por algum motivo seguem um deles e não o outro. Como vale a chain maior, o outro vira orfão e aquele miner fica no prejuízo.



As demais perguntas são todas relativas ao mesma coisa. Ele provavelmente escolheu os 21milhões e depois precisou determinar o Halving, o subsídio por bloco, etc  para chegar lá

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
Prancheiro
Member
**
Offline Offline

Activity: 129
Merit: 88


View Profile
December 14, 2023, 02:10:27 PM
 #44


Essa dos 4 anos é uma boa pergunta.. será que tem algo relacionado a diversas eleições que ocorrem a cada 4 anos? afinal mudam os políticos, mas a política monetária é sempre a mesma.. pode ter sido uma crítica oculta.

Ou será que Satoshi se inspirou em grandes eventos esportivos como a Copa do Mundo e as Olimpíadas? Roll Eyes


Quanto as outras perguntas, acredito que 1) porque 50 é metade de 100 (50+25+12,5+6,25+[...]=100) e 3) o valor foi arredondado na base do foda-se, respeitando a internet lenta da época.. podia ser 6, 7, 8, 9, 11, 12, 13 minutos..


Haha Excelentes respostas!
Sempre pensei muito na questão de mandatos eleitorais. Mas dos eventos esportivos nunca tinha pensado!


Porque quando o tempo é muito alto, as transações demoram para ocorrer. Imagine esperar 3 horas numa transação.

QUando o tempo é muito curto, tipo 10 segundos, a quantidade de blocos órfãos é muito grande.

Blocos orfãos são um desperdício de energia. Eles ocorrem quando dois blocos são minerados ao mesmo tempo, e os nodes por algum motivo seguem um deles e não o outro. Como vale a chain maior, o outro vira orfão e aquele miner fica no prejuízo.


Esses 10min é um equilibrio entre tempo aguardando pra confirmar transação e frenquencia com que forks (blocos órfãos) seriam gerados na rede como o bitmover comentou. Mas os 10min especificamente e não 9 ou 11? Talvez por arredondamento e pra ficar mais fácil fazer conta mesmo!
darkv0rt3x
Hero Member
*****
Offline Offline

Activity: 1204
Merit: 658


I rather die on my feet than to live on my knees


View Profile
December 15, 2023, 04:08:53 PM
Last edit: December 18, 2023, 10:44:24 AM by darkv0rt3x
 #45

2 - Porquê uma média de 10 mins por cada bloco? (sim, o parâmetro do ajuste de dificuldade assim o estipula, mas porquê este valor médio de 10 mins? Porque não 20 mins ou 3h)Huh

Porque quando o tempo é muito alto, as transações demoram para ocorrer. Imagine esperar 3 horas numa transação.

QUando o tempo é muito curto, tipo 10 segundos, a quantidade de blocos órfãos é muito grande.

Blocos orfãos são um desperdício de energia. Eles ocorrem quando dois blocos são minerados ao mesmo tempo, e os nodes por algum motivo seguem um deles e não o outro. Como vale a chain maior, o outro vira orfão e aquele miner fica no prejuízo.

Mas isso é o ajuste de dificuldade que tenta sempre apontar para esse valor médio de 10 mins. As acções que a rede toma são com o intuito de respeitar esses 10 mins. Ou seja este valor de 10 mins é um valor que faz com que a rede se auto-ajuste! Não sei como explicar o que me vai na cabeça!

Quando a rede "vê" que estão a sair blocos muito depressa (<< 10 mins), a rede ajusta a dificuldade para um valor maior (que na verdade é um target menor). Quando os blocos estão a "sair" muito lentos (>> 10 mins), a rede ajusta o valor da dificuldade para um valor mais pequeno (um target maior).

Mas se essa é realmente a razão, então a pergunta tem que tomar uma forma ligeiramente diferente que é:
Como é que Satoshi chegou à conclusão que o valor para esse tal equilíbrio era de 10 minutos? Até porque se colocarmos causas financeiras em jogo, ainda menos certo é chegar a um valor!

E o artigo da infopedia não me parece muito correcto. Por exemplo eles dizem:
Quote
During the standard mining process, miners attempt to generate new blocks by solving the hash—the hexadecimal number that stores the block's information.

A hash do bloco não é um "número hexadecimal que guarda a informação do bloco". É um número hexadecimal que representa a informação do header do bloco. E esse header contém a seguinte informação:
Quote
The block header is a 256-bit piece of data that contains the following information:

    Version: The current version of the Bitcoin protocol.
    PrevBlockHash: The hash of the previous block in the blockchain.
    MerkleRoot: The root hash of the Merkle tree of all transactions in the block.
    Time: The timestamp of the block.
    Bits: A 32-bit number that represents the difficulty of mining the block.
    Nonce: A 32-bit number that is used to adjust the hash of the block until it meets the difficulty requirement.


Ainda sobre o target difficulty, há um detalhe que é contra-intuitivo. O target difficulty é apenas um número e os miners quando calculam a hash do header do bloco e ajustam essa hash com o nonce, até obterem um valor menor que este target difficulty. E este target difficulty é um número com uma determinada quantidade de zeros no início do número. E quanto mais zeros tiver este número, menor é este número e mais difícil é aos miners encontrarem uma hash + nonce a baixo deste número.

Suponhamos que o target difficulty é 000009999900000.
Se um miner calcular uma hash + nonce e obtiver um valor de 00001000000000, então este bloco não é válido porque o valor encontrado pelo miner é superior ao target difficulty.

Quando o target difficulty é aumentado, significa baixar aquele número de 000009999900000 para por exemplo 000000999900000. Este número tem mais um zero no início, logo é mais pequeno que o outro que tem mais um zero no início.

Isto só para dizer que aumentar a dificuldade significa diminuir o target difficulty! xD

Bitcoin is energy. Bitcoin is freedom
I rather die on my feet than living on my knees!
bitmover
Legendary
*
Offline Offline

Activity: 2296
Merit: 5919


bitcoindata.science


View Profile WWW
December 15, 2023, 05:52:15 PM
Merited by rdluffy (1)
 #46

2 - Porquê uma média de 10 mins por cada bloco? (sim, o parâmetro do ajuste de dificuldade assim o estipula, mas porquê este valor médio de 10 mins? Porque não 20 mins ou 3h)Huh

Porque quando o tempo é muito alto, as transações demoram para ocorrer. Imagine esperar 3 horas numa transação.

QUando o tempo é muito curto, tipo 10 segundos, a quantidade de blocos órfãos é muito grande.

Blocos orfãos são um desperdício de energia. Eles ocorrem quando dois blocos são minerados ao mesmo tempo, e os nodes por algum motivo seguem um deles e não o outro. Como vale a chain maior, o outro vira orfão e aquele miner fica no prejuízo.

Mas isso é o ajuste de dificuldade que tenta sempre apontar para esse valor médio de 10 mins. As acções que a rede toma são com o intuito de respeitar esses 10 mins. Ou seja este valor de 10 mins é um valor que faz com que a rede se auto-ajuste! Não sei como explicar o que me vai na cabeça!


Isso é outro assunto.

Os demoram 10 minutos por conta do equilíbrio entre blocos órfãos e conveniência nas transações.

O ajuste de dificuldade ocorre para manter esses 10 minutos médios entre blocos, não deixando esse tempo mudar de acordo com I hash rate da rede ...

Isto só para dizer que aumentar a dificuldade significa diminuir o target difficulty! xD

Isso ocorre pq os  mineradores precisam  gerar um hash com os dados do bloco + nonce (variavel) que seja muito pequeno.

Quanto menor  mais difícil. Eles computam milhares de hash por segundo, grandes  até acharem um pequeno o suficiente.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
darkv0rt3x
Hero Member
*****
Offline Offline

Activity: 1204
Merit: 658


I rather die on my feet than to live on my knees


View Profile
December 18, 2023, 10:32:00 AM
 #47

Isso é outro assunto.

Os demoram 10 minutos por conta do equilíbrio entre blocos órfãos e conveniência nas transações.


Mas esse equilíbrio tem que vir matematicamente de algum lado. O que estás a dizer é um sentimento. E sentimentos não podem ser programados como tal no protocolo.

O ajuste de dificuldade ocorre para manter esses 10 minutos médios entre blocos, não deixando esse tempo mudar de acordo com I hash rate da rede ...

Estás a repetir o que eu disse.

Isto só para dizer que aumentar a dificuldade significa diminuir o target difficulty! xD


Isso ocorre pq os  mineradores precisam  gerar um hash com os dados do bloco + nonce (variavel) que seja muito pequeno.

Também disse precisamente o mesmo que estás a dizer!


Quanto menor  mais difícil. Eles computam milhares de hash por segundo, grandes  até acharem um pequeno o suficiente.

Novamente a repetir o que eu disse no meu post! lol

Mas nada disto explica a origem dos 10 minutos. Nem o que tu falas da conveniência das transacções e dos blocos orfãos!

Bitcoin is energy. Bitcoin is freedom
I rather die on my feet than living on my knees!
bitmover
Legendary
*
Offline Offline

Activity: 2296
Merit: 5919


bitcoindata.science


View Profile WWW
December 18, 2023, 02:02:54 PM
 #48

Mas nada disto explica a origem dos 10 minutos. Nem o que tu falas da conveniência das transacções e dos blocos orfãos!

Bem, o que define é exatamente isso. Talvez você não tenha entendido a questão dos blocos orfãos.

Se voce pesquisar, vai encontrar sempre essa resposta.


Quote
This is the reason Bitcoin block intervals are set to 10 minutes. Satoshi Nakamoto determined it to be the sweet spot between fast (enough) confirmation times and low probability of forks and therefore less orphans in the world, which is always a good thing.
https://medium.com/coinmonks/an-in-depth-look-at-orphan-blocks-45baeaca9d28

Quote
https://bitcoin.stackexchange.com/questions/1863/why-was-the-target-block-time-chosen-to-be-10-minutes
10 minute blocks is simply a compromise.

Shorter block time:

PRO - Faster 1 confirmation time (to protect from 0-confirm double spend)
PRO - Less payout variance for miners (less reliance on large pools)
CON - Requires increased bandwidth (inter node communication)
CON - More forks, longer forks, and longer re-org time
CON - A greater portion of the raw hashpower is wasted, resulting in lower effective security.
With a longer block interval target of longer than 10 minutes, the pros and cons would be reversed.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
joker_josue
Legendary
*
Offline Offline

Activity: 1652
Merit: 4560


**In BTC since 2013**


View Profile WWW
December 18, 2023, 02:07:20 PM
 #49

Isso é outro assunto.

Os demoram 10 minutos por conta do equilíbrio entre blocos órfãos e conveniência nas transações.

Mas esse equilíbrio tem que vir matematicamente de algum lado. O que estás a dizer é um sentimento. E sentimentos não podem ser programados como tal no protocolo.

Bem, eu diria que isso é um calculo fácil de fazer, com base na velocidade da ligação a internet.

A maioria dos blocos tem o tamanho 1.6~1.8MB. Se calcularmos a velocidade de ligação internet viável mais baixa, que é de 28,8 kbit/s (sim eu ainda usei a net nesta velocidade  Roll Eyes e ainda hoje é existe), vamos ver que demora +/- 7/8 minutos para fazer o download. Como a velocidade não é constante, uma margem de 2 minutos deve ser suficiente, para tudo se manter ao mesmo ritmo, sem afetar o registo do blockchain em todos os nodes.

Além de que era mais fácil fazer contas com 10 minutos, do que com 8 minutos.

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
darkv0rt3x
Hero Member
*****
Offline Offline

Activity: 1204
Merit: 658


I rather die on my feet than to live on my knees


View Profile
December 18, 2023, 02:07:57 PM
 #50

Mas nada disto explica a origem dos 10 minutos. Nem o que tu falas da conveniência das transacções e dos blocos orfãos!

Bem, o que define é exatamente isso. Talvez você não tenha entendido a questão dos blocos orfãos.

Se voce pesquisar, vai encontrar sempre essa resposta.


Quote
This is the reason Bitcoin block intervals are set to 10 minutes. Satoshi Nakamoto determined it to be the sweet spot between fast (enough) confirmation times and low probability of forks and therefore less orphans in the world, which is always a good thing.
https://medium.com/coinmonks/an-in-depth-look-at-orphan-blocks-45baeaca9d28

Quote
https://bitcoin.stackexchange.com/questions/1863/why-was-the-target-block-time-chosen-to-be-10-minutes
10 minute blocks is simply a compromise.

Shorter block time:

PRO - Faster 1 confirmation time (to protect from 0-confirm double spend)
PRO - Less payout variance for miners (less reliance on large pools)
CON - Requires increased bandwidth (inter node communication)
CON - More forks, longer forks, and longer re-org time
CON - A greater portion of the raw hashpower is wasted, resulting in lower effective security.
With a longer block interval target of longer than 10 minutes, the pros and cons would be reversed.

Eu já percebi. Mas isso é uma explicação teórica e superficial... Se há um valor médio de 10 minutos, tem que haver linhas de código que executem acções que levem a rede a tentar cumprir com esses 10 minutos. E não são certamente essas explicações teóricas que estão programadas em linhas de código que definem esses 10 mins.

O que eu gostava de ver / saber, são essas linhas de código que obrigam a rede a convergir para esses 10 mins. Essa era a explicação absoluta que podiam dar!


Isso é outro assunto.

Os demoram 10 minutos por conta do equilíbrio entre blocos órfãos e conveniência nas transações.

Mas esse equilíbrio tem que vir matematicamente de algum lado. O que estás a dizer é um sentimento. E sentimentos não podem ser programados como tal no protocolo.

Bem, eu diria que isso é um calculo fácil de fazer, com base na velocidade da ligação a internet.

A maioria dos blocos tem o tamanho 1.6~1.8MB. Se calcularmos a velocidade de ligação internet viável mais baixa, que é de 28,8 kbit/s (sim eu ainda usei a net nesta velocidade  Roll Eyes e ainda hoje é existe), vamos ver que demora +/- 7/8 minutos para fazer o download. Como a velocidade não é constante, uma margem de 2 minutos deve ser suficiente, para tudo se manter ao mesmo ritmo, sem afetar o registo do blockchain em todos os nodes.

Além de que era mais fácil fazer contas com 10 minutos, do que com 8 minutos.

Daria mais crédito a uma explicação destas. Faz muito mais sentido ainda que já em 2009 essa ligação fosse obsoleta.
E relativamente a contas, aí discordo. Porque as contas são feitas por um computador. E para ele, é igual fazer contas com 10 ou com 8 (tecnicamente pode ser mais complicado, sim, mas nem vou por aí).

Bitcoin is energy. Bitcoin is freedom
I rather die on my feet than living on my knees!
bitmover
Legendary
*
Offline Offline

Activity: 2296
Merit: 5919


bitcoindata.science


View Profile WWW
December 18, 2023, 02:33:13 PM
 #51

Eu já percebi. Mas isso é uma explicação teórica e superficial... Se há um valor médio de 10 minutos, tem que haver linhas de código que executem acções que levem a rede a tentar cumprir com esses 10 minutos. E não são certamente essas explicações teóricas que estão programadas em linhas de código que definem esses 10 mins.

O que eu gostava de ver / saber, são essas linhas de código que obrigam a rede a convergir para esses 10 mins. Essa era a explicação absoluta que podiam dar!

Achei que voce queria saber o por que do motivo de escreverem essas linhas de codigo.

O motivo de ser 10 minutos é pelo equilibrio entre blocos orfãos e velocidade de transação. Uma vez que isso foi definido, a pessoa vai lá e escreve o código (a parte mais simples do processo).

As linhas de código são a parte mais simples, a implementação da ideia...

O que obriga a rede a convergir para os 10min sao justamente os ajustes de dificuldade.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
darkv0rt3x
Hero Member
*****
Offline Offline

Activity: 1204
Merit: 658


I rather die on my feet than to live on my knees


View Profile
December 18, 2023, 02:47:49 PM
 #52


O que obriga a rede a convergir para os 10min sao justamente os ajustes de dificuldade.

E não foi precisamente isto que eu disse desde início? Acho que estamos a andar em círculos entre explicações teóricas e superficiais e explicações mais ou menos técnicas... Agora, a "ultimate explanation", a meu ver, teria que ser mais técnica ao ponto de se dizer algo deste génro:
"As linhas de código de X a Y definem o valor A, que depois em conjunto com os valores B e C nas linhas de código de W a Z definem os tão falados 10 mins!"...

Bitcoin is energy. Bitcoin is freedom
I rather die on my feet than living on my knees!
bitmover
Legendary
*
Offline Offline

Activity: 2296
Merit: 5919


bitcoindata.science


View Profile WWW
December 18, 2023, 07:08:07 PM
Merited by darkv0rt3x (2)
 #53


O que obriga a rede a convergir para os 10min sao justamente os ajustes de dificuldade.

E não foi precisamente isto que eu disse desde início? Acho que estamos a andar em círculos entre explicações teóricas e superficiais e explicações mais ou menos técnicas... Agora, a "ultimate explanation", a meu ver, teria que ser mais técnica ao ponto de se dizer algo deste génro:
"As linhas de código de X a Y definem o valor A, que depois em conjunto com os valores B e C nas linhas de código de W a Z definem os tão falados 10 mins!"...

Olhei no mastering bitcoin e achei o código que define isso.

Isso é definido no arquivo pow.cpp

https://github.com/bitcoin/bitcoin/blob/master/src/pow.cpp


Quote
The equation can be summarized as:

Code:
New Target = Old Target * (Actual Time of Last 2016 Blocks / 20160 minutes)
Retargeting the Proof-of-Work—CalculateNextWorkRequired() in pow.cpp shows the code used in the Bitcoin Core client.

Example 13. Retargeting the Proof-of-Work—CalculateNextWorkRequired() in pow.cpp
Code:
   // Limit adjustment step
    int64_t nActualTimespan = pindexLast->GetBlockTime() - nFirstBlockTime;
    LogPrintf("  nActualTimespan = %d  before bounds\n", nActualTimespan);
    if (nActualTimespan < params.nPowTargetTimespan/4)
        nActualTimespan = params.nPowTargetTimespan/4;
    if (nActualTimespan > params.nPowTargetTimespan*4)
        nActualTimespan = params.nPowTargetTimespan*4;

    // Retarget
    const arith_uint256 bnPowLimit = UintToArith256(params.powLimit);
    arith_uint256 bnNew;
    arith_uint256 bnOld;
    bnNew.SetCompact(pindexLast->nBits);
    bnOld = bnNew;
    bnNew *= nActualTimespan;
    bnNew /= params.nPowTargetTimespan;

    if (bnNew > bnPowLimit)
        bnNew = bnPowLimit;
https://github.com/bitcoinbook/bitcoinbook/blob/develop/ch10.asciidoc#retarget_code

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
joker_josue
Legendary
*
Offline Offline

Activity: 1652
Merit: 4560


**In BTC since 2013**


View Profile WWW
December 18, 2023, 08:31:26 PM
 #54

Daria mais crédito a uma explicação destas. Faz muito mais sentido ainda que já em 2009 essa ligação fosse obsoleta.
E relativamente a contas, aí discordo. Porque as contas são feitas por um computador. E para ele, é igual fazer contas com 10 ou com 8 (tecnicamente pode ser mais complicado, sim, mas nem vou por aí).

Quando falei em contas, não foi o ato em si de somar/multiplicar/subtrair/dividir. Claro que para um computador isso é indiferente. Mas, no sentido global, valor total, ciclos de halving e coisas do gênero.

No caso de em 2009 essa ligação ser obsoleta é muito subjetiva.
Se a ideia é o Bitcoin ser o mais independente possível, então nada melhor de desenvolver algo que pode ser usado por qualquer pessoa no mundo, não importa o tipo de ligação a internet que tenha.

Essa forma de ligação a internet existe até hoje, e pode ser utilizada. Só precisas de um PC com modem e uma linha telefônica convencional.
Acredita, é mais fácil perderes a tua ligação fibra, do que perderes a comunicação via linha telefônica convencional. Por exemplo, se ocorrer um apagão no teu bairro, ficas sem comunicações fibra, mas se tiveres uma linha telefônica convencional, muito provavelmente ela continua a funcionar. Então, basta ligares o PC e usar o bitcoin.  Cool

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
darkv0rt3x
Hero Member
*****
Offline Offline

Activity: 1204
Merit: 658


I rather die on my feet than to live on my knees


View Profile
December 19, 2023, 10:23:26 AM
 #55

Daria mais crédito a uma explicação destas. Faz muito mais sentido ainda que já em 2009 essa ligação fosse obsoleta.
E relativamente a contas, aí discordo. Porque as contas são feitas por um computador. E para ele, é igual fazer contas com 10 ou com 8 (tecnicamente pode ser mais complicado, sim, mas nem vou por aí).

Quando falei em contas, não foi o ato em si de somar/multiplicar/subtrair/dividir. Claro que para um computador isso é indiferente. Mas, no sentido global, valor total, ciclos de halving e coisas do gênero.

No caso de em 2009 essa ligação ser obsoleta é muito subjetiva.
Se a ideia é o Bitcoin ser o mais independente possível, então nada melhor de desenvolver algo que pode ser usado por qualquer pessoa no mundo, não importa o tipo de ligação a internet que tenha.

Essa forma de ligação a internet existe até hoje, e pode ser utilizada. Só precisas de um PC com modem e uma linha telefônica convencional.
Acredita, é mais fácil perderes a tua ligação fibra, do que perderes a comunicação via linha telefônica convencional. Por exemplo, se ocorrer um apagão no teu bairro, ficas sem comunicações fibra, mas se tiveres uma linha telefônica convencional, muito provavelmente ela continua a funcionar. Então, basta ligares o PC e usar o bitcoin.  Cool

Eu sie, eu percebi. O que quis dizer é que o motivo que deste, faria até mais sentido para mim como razão para os 10 mins em 2009. O facto de a internet ser muito mais lenta que hoje, obrigava a pensar nesse aspecto do download de dados. Eu recordo-me de quando comecei a fazer download de ficheiros MP3, que eram ficheiros com pouco mais de 3MB, e eu demorava seguramente 20 a 35 minutos a fazer o download e ainda por cima com limite de download por mês!

Bitcoin is energy. Bitcoin is freedom
I rather die on my feet than living on my knees!
Pages: « 1 2 [3]  All
  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!