Bitcoin Forum
April 23, 2024, 09:30:08 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Como o Bitcoin funciona? [texto explicativo]  (Read 13293 times)
DanielBTC (OP)
Hero Member
*****
Offline Offline

Activity: 788
Merit: 1001



View Profile WWW
April 13, 2013, 05:41:57 PM
Last edit: October 09, 2013, 05:26:09 PM by DanielBTC
 #1

Pessoal, eu DanielBTC o alex2501 e o DarkHyudrA traduzimos um texto bem simples para iniciantes e fizemos algumas adaptações e facilitamos mais ainda algumas coisas também, esperamos que seja proveitoso para todos:

Como o Bitcoin Funciona

Esse texto foi escrito pois eu acredito que uma base de usuários bem informados é a chave do sucesso para o Bitcoin.

Um resumo da estória:
  • O usuário João cria uma transação declarando: "Eu dou a Maria 10 BTC". (mas em protocolo Bitcoin).
  • Essa transação é assinada digitalmente com a chave privada que cada endereço possui e não pode ser forjado
  • Os mineradores garantem que a transação é válida, gravam isso e distribuem por toda a rede.
  • Maria verifica o seu saldo.
  • João não pode enganar o sistema por que todo mundo na rede pode checar sua autenticidade e imediatamente recusar a transação falsa com gastos duplicados(double spending) ou fundos que não existiam antes.

Você pode começar a usar o Bitcoin em questão de segundos, embora esse seja um processo simples, é extremamente recomendado que você aprenda sobre como ele funciona e o que acontece com suas moedas quando você inicia uma transação qualquer.
Com o Bitcoin é você que controla o seu dinheiro, e você precisa tomar conta dele responsavelmente.

O texto a seguir é um simples guia que introduzirá você à natureza da rede Bitcoin e explicará de forma clara o que acontece durante uma simples transação


A estória de João e Maria

Era uma vez um usuário chamado João que gostaria de enviar à sua amiga Maria alguns Bitcoins. Ele sabia que Maria precisava de 10BTC e então decidiu enviá-los para ela.
João conseguiu uma carteira Bitcoin com alguns bitcoins de saldo e antes de clicar em Enviar se perguntou, onde os seus bitcoin estão armazenados.  "O bitcoin é um arquivo no meu computador? Ou um número de serial talvez?"
João rapidamente notou que isso poderia ser muito ineficiente. O que aconteceria se alguem estivesse espiando sua conexão e interceptasse esses arquivos? E o que aconteceria se a conexão caísse?

O jeito que o Bitcoin Funciona é Simples e elegante

Quando João envia para Maria 10 Bitcoins, o que realmente está acontecendo é uma assinatura digital de um declaração de pagamento. Na linguagem humana isso se parece com isso:
“Eu, João, envio a quantia de 10BTC para Maria”
Com certeza, João está também, preocupado que alguem pode forjar essa declaração em seu nome. Ele também sabe que Bitcoins são impossíveis de forjar. Então, como  exatamente eles são protegidos?
Essas declarações são protegidas por um mecanismo chamado “Assinatura Digital”. É uma implementação de cálculos matemáticos e criptografia fortissima, que garante que somente o dono pode produzir uma assinatura válida. Senão, a assinatura poderia ser invalidada e a transação rejeitada por qualquer um.

Assinaturas digitais

Você provavelmente já sabe que para receber e enviar bitcoin você precisa de um endereço Bitcoin. Da mesma forma que o e-mail. E como em um e-mail, você precisa de uma senha para conseguir enviar e receber bitcoins.
Endereços Bitcoin são gerados usando matemática e eles podem ser gerados de uma forma decentralizada. Você não precisa de logar-se em lugar algum serviço nem precisa ficar online. Você simplesmente precisa de um programa para gerar esses endereços.
Um endereço bitcoin, como uma conta de e-mail, é feita de duas coisas diferentes:

  • A parte publica - Permite a qualquer um te enviar bitcoins.
  • A chave privada - Isso é o que a maioria dos usuarios não sabe, cada endereço tem sua única Chave Privada (private key). A maioria dos programas de Bitcoin não lhe dizem sobre isso e eles mantém escondido do usuário, basicamente porque é muito importante que APENAS você tenha acesso a esta chave e mostrar por aí não é uma boa ideia.

Essa chave é usada para assinar digitalmente e garantir que apenas o dono da chave pode emitir uma transação válida e assim gastar os bitcoins.

De volta a Maria e João

Assim que a carteira bitcoin do João assinou essa transação, ele envia através da rede P2P(ponto a ponto) do Bitcoin. Todas as pessoas que usam o Bitcoin e estão rodando um cliente do Bitcoin, estão conectados uns aos outros para receber estas “declarações”.
A transação de João é transmitida de nó a nó. Esses nós verificam que a assinatura é válida e passam até que, numa fração de segundo, maria recebe a notificação pelo seu programa Bitcoin que ela recebeu os bitcoins vindos de João!
“Legal!” a Maria pensa. Mas ao mesmo tempo ela está preocupada com outra coisa. A Maria sabe como a rede do Bitcoin funciona e mede se é possível o João suprir esta quantia.
Ela sabe que João que lhe enviou o dinheiro por que a sua assinatura bate. Mas o que impediria João de escrever qualquer valor que ele quisesse? E se João dissesse, “Eu tenho um cazilhão de Bitcoins e estou enviando para Maria?”. Enquanto Maria continuava pensando sobre isso ela não sabia que a transação que lhe fora enviada ainda estava perambulando pela rede e tinha um desafio muito grande para enfrentar...

Conhecendo o minerador Thiago

Enquanto a transação continua indo de conexão (nodes) em conexão (nodes) na rede do Bitcoin, ela também irá chegar a essa pessoa que está em um jogo único: um estilo de jogo de corrida contra o tempo. Thiago e muitos outros que participam deste mesmo “jogo” são chamados de mineradores. O objetivo de Thiago é reunir todas as transações e publicar elas em um tipo de livro de registros. No fim de garantir a natureza aberta e descentralizada do Bitcoin, isso deve ser feito de uma forma bem específica.

O minerador Thiago e outros mineradores estão rodando um programa no seus computadores que ajudam a resolver problemas matemáticos. Imagine um grande e complexo cubo mágico que demoraria muito tempo para ser resolvido. Thiago sabe que apenas o minerador que encontrar a solução para o cubo mágico é autorizado a publicar o próximo bloco deste livro de registros que contém todas as transações reunidas.

Todos os mineradores estão competindo entre si porque eles querem ser o primeiro a resolver o problema, publicar as transações e receber Bitcoins como recompensa. (Mais do que um jogo, isso é um trabalho).

Para que João possa ter 10 BTC em primeiro lugar, ele precisa ter obtido previamente de alguém. Thiago verifica a parte do livro de registros que já foi publicada previamente por outros mineradores e certifica de que a transação está ali, registrada em algum lugar. Isso diz que João tinha 10 BTC em primeiro lugar e então foi autorizado a gastar. Então ele apenas espera que, com um pouco de sorte, o seu programa seja o primeiro a achar a solução.
Adivinhe só? Hoje é o dia de sorte de Thiago! Ele acha a solução e imediatamente publica todas as transações que ele coletou. O resto da rede verifica que a solução é correta e assistem perplexos enquanto Thiago recebe a recompensa. Mas não há tempo a perder porque novas transações nunca param de chegar e novos blocos deste livro de registros (blockchain) sempre estão a espera de serem publicados.

O BlockChain

O famoso blockchain, ou, cadeia de blocos. É chamado de cadeia, por que todos os blocos dependem do anterior. Eles são protegidos por uma função criptográfica chamada de hash.
E se alguem decidir alterar maliciosamente um bloco anterior e adicionar ele mesmo dezenas de bitcoins? Felizmente isso é impossível.
Se alguem alterar um único digito, caracter ou bit de uma cadeia de blocos, todos os blocos seguintes serão eliminados e invalidados.

Note também que nem mesmo o minerador Thiago pode alterar maliciosamente a transação de João por que a assinatura digital não vai bater se for adulterada.
A abertura, transparência e natureza decentralizada do Bitcoin, juntas com o uso mecanismos de proteção, criam uma sólida, forte e confiável rede Bitcoin que ninguém pode enganar;


De volta para Maria

Assim que o minerador Thiago publicar o próximo bloco na blockchain, esse será redistribuído em toda a rede até chegar à Maria.  Uma vez que Maria pegou essa transação, sua carteira bitcoin verificará se ela contém alguma transação em que Maria está envolvida, e como esse é o caso, informará Maria que sua transação foi confirmada e agora é uma parte permanente da rede Bitcoin (para todo o sempre). As transações que são incluídas na blockchain
recebem uma confirmação.
Note que Maria não precisa estar online para receber seus Bitcoins. Ela pode estar offline por horas, dias, anos e ainda sim, receber bitcoin sem problemas. Assim que ela ficar online, seu programa vai baixar os últimos blocos na blockchain e informá-la que recebeu transações de entrada.
Atualmente, a única coisa que Maria não precisa saber é sua chave privada. Ela pode ainda manter essa chave privada impressa em um pedaço de papel (paper wallet) e receber bitcoin ao mesmo tempo.

Uma vez que ela queira vendê-las ela vai importar essas chaves privadas para o programa de carteira Bitcoin e o programa lerá o blockchain para informá-la sobre o seu balanço. Com essa chave privada ela poderá assinar digitalmente uma transação onde ela queira gastar seus bitcoins.

Dê uma olhada em  http://www.bitaddress.org . Esse é um gerador de endereços bitcoin que permite você criar e ver sua chave privada.

Sobre a segurança do Bitcoin

Como vocês podem ver, Bitcoin é extremamente seguro e absolutamente ninguém que não saiba sua chave privada para o endereço bitcoin (chave publica) vai conseguir gastar seus bitcoins sem autorização.

Você é o dono dos seus bitcoin, é de sua inteira responsabilidade manter suas chaves privadas para suas moedas a salvo. Muitos software de carteira bitcoin como o bitcoin-qt, vão criptografar suas chaves usando uma senha que você definir. (não esqueça essa senha!). Isto é extremamente recomendado.
Também esteja certo que seu computador esta livre de keyloggers, trojas e qualquer tipo de vírus ou malware.
Se você guarda grandes quantidade de moedas, você pode considerar usar uma carteira em papel (paper wallet), e nenhum vírus no mundo vai conseguir
atacar essa sua carteira.

De onde vem a recompensa de Minerador Thiago?

Ele consegue taxas que as pessoas pagam voluntariamente incluídas em cada transação bitcoin. Por isso ele quer coletar e publicar o máximo de transações possíveis e ganhar e ganhar essas taxas incluídas nelas.
Também por que cada vez que ele publica um bloco ele vai conseguir assinar o seu nome nesse novo bloco e ganhar 25 bitcoins novinhos em folha. Isso é como novos bitcoins entram em circulação e são injetados na economia de forma descentralizada. Essa recompensa diminui gradativamente até que os 21 milhões de bitcoins sejam colocados em circulação, que é o máximo de bitcoins que serão disponibilizados.

21 milhões de bitcoins são o bastante? Sim! Por que eles são divisíveis por oito casas decimais. Esse montante de divisibilidade garante que nunca faltarão bitcoins na economia.

Por que demora tanto para sincronizar minha carteira Bitcoin?

A primeira vez que voce roda a carteira bitcoin, ela ira necessariamente efetuar o download de toda a BlockChain afim de mantê-lo atualizado de todos os balanços de seus endereços.
Se você não gostou disso, tudo bem, você pode optar por um cliente mais light. Existem várias carteiras Bitcoin que se conectar ao servidor para ler a blockchain e não precisa de baixar nada.


Traduzido por:
alex2501 xxxxxxxxxxxxxxxxx
DanielBTC 1Mr8J4ASQteSC1Bc7sMQg3eqmqhYE1HM38
DarkHyudrA 1y2S53dEhwwfrSk6FjyorNbghhuSwiyxq

Se você gostou, mande uma doaçãozinha pra gente. ;-)

Qualquer dúvida, correção ou sugestão será muito bem vinda!

Original:
http://www.reddit.com/r/Bitcoin/comments/18kt6y/psa_to_new_users_due_to_reddit_gold_announcement/


Favor não dar 'quote' o texto é muito grande e ainda precisa de algumas correções  Wink

[Daniel BTC] - 9 AB (after bitcoin)
http://www.usandobitcoin.com.br - Bitcoin para Iniciantes
OTC: DanielBTC Bitrated user: DanielBTC.
1713907808
Hero Member
*
Offline Offline

Posts: 1713907808

View Profile Personal Message (Offline)

Ignore
1713907808
Reply with quote  #2

1713907808
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
vitorgatti
Newbie
*
Offline Offline

Activity: 31
Merit: 0



View Profile
April 14, 2013, 05:13:07 AM
 #2

Boa tradução! Smiley

Aí eu tenho uma dúvida... poder ser que demore muito, mas e quando todas as 21 milhões de BTC forem geradas? Qual será o incentivo para continuar minerando, ou melhor, validando as transações?
DarkHyudrA
Legendary
*
Offline Offline

Activity: 1386
Merit: 1000


English <-> Portuguese translations


View Profile
April 14, 2013, 05:31:51 AM
 #3

Boa tradução! Smiley

Aí eu tenho uma dúvida... poder ser que demore muito, mas e quando todas as 21 milhões de BTC forem geradas? Qual será o incentivo para continuar minerando, ou melhor, validando as transações?

Boa pergunta Smiley

O que vai manter ativo a atuação dos mineradores são as fees das transações, a esse ponto os poucos BTC que são enviados como fees serão bem valiosos para os mineradores, fora que até lá ou o Bitcoin morreu por ter algo melhor, ou o Bitcoin estará a todo vapor, gerando várias transações fazendo com que várias fees entrem em cada bloco.

English <-> Brazilian Portuguese translations
2501
Hero Member
*****
Offline Offline

Activity: 868
Merit: 1000


Impossible is Nothing


View Profile WWW
April 14, 2013, 07:55:04 AM
 #4

Ótimo

Bitrated user: Allex.
MetaleirO
Newbie
*
Offline Offline

Activity: 1
Merit: 0



View Profile
April 26, 2013, 08:03:01 PM
 #5

Muito bom cara, me tirou muitas duvidas que tinha mesmo =]
Jackes
Newbie
*
Offline Offline

Activity: 22
Merit: 0


View Profile
April 26, 2013, 09:28:11 PM
 #6

Me ajudou bastante, obrigado.
Peao
Legendary
*
Offline Offline

Activity: 1320
Merit: 1001


View Profile
April 26, 2013, 09:33:44 PM
 #7

Este tópico poderia ficar fixo.
midasolimpo
Newbie
*
Offline Offline

Activity: 35
Merit: 0


View Profile
April 28, 2013, 06:27:55 AM
 #8

Este tópico poderia ficar fixo.


Concordo.
andredcavalcante
Newbie
*
Offline Offline

Activity: 52
Merit: 0



View Profile
April 28, 2013, 07:50:24 PM
 #9

+1
NereuFajardo
Member
**
Offline Offline

Activity: 152
Merit: 12



View Profile
April 29, 2013, 02:26:14 AM
 #10

[FIXO]

Agora tenho uma maneira mais simples e clara de explicar o que é o Bitcoin, obrigado!
2501
Hero Member
*****
Offline Offline

Activity: 868
Merit: 1000


Impossible is Nothing


View Profile WWW
April 29, 2013, 02:38:47 AM
 #11

[FIXO]

Agora tenho uma maneira mais simples e clara de explicar o que é o Bitcoin, obrigado!

Escreve o texto, coloca aqui

E gente faz a critica

Bitrated user: Allex.
NereuFajardo
Member
**
Offline Offline

Activity: 152
Merit: 12



View Profile
April 29, 2013, 02:45:56 AM
 #12

[FIXO]

Agora tenho uma maneira mais simples e clara de explicar o que é o Bitcoin, obrigado!

Escreve o texto, coloca aqui

E gente faz a critica

Desculpe, não entendi....
2501
Hero Member
*****
Offline Offline

Activity: 868
Merit: 1000


Impossible is Nothing


View Profile WWW
April 29, 2013, 04:25:12 AM
 #13

[FIXO]

Agora tenho uma maneira mais simples e clara de explicar o que é o Bitcoin, obrigado!

Escreve o texto, coloca aqui

E gente faz a critica

Desculpe, não entendi....

Ignora, viajei na frase

Bitrated user: Allex.
lcharles123
Legendary
*
Offline Offline

Activity: 1697
Merit: 1074


View Profile
December 05, 2013, 02:25:17 AM
 #14

Bem esclarecedor!
E se me permitir acrescentar: para quem for usar o Cliente Bitcoin-qt há um arquivo que você pode baixar chamado bootstrap.dat onde basta copiar para a pasta do wallet.dat.
Windows + R e seguir o código:
Code:
explorer %APPDATA%\bitcoin

Após a importação do Blockchain que está no arquivo, ele será renomeado com a extensão .old daí basta exclui-lo ou fazer o que quiser.

Procure-o aqui no fórum, pois sempre há uma nova versão.

You have limited power here. -"Bitcoin on Governments"
iamtheearlybird
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
July 04, 2014, 09:58:40 PM
 #15

Muito bom o texto, já tenho experiência com Bitcoins e mesmo assim aprendi algumas coisas novas com ele!
Excelente iniciativa.  Wink
emoreth
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
July 31, 2014, 07:02:15 AM
 #16

Muito bom o texto....

Eu entendo bem como funciona essa coisa de criptografia a assinatura.

Só tem uma dúvida que sempre me perseguiu, talvez vocês saibam...


Eventualmente, alguém perde uma carteira! Não ela não foi roubada, ela mandou o PC pro conserto e ele foi formatado... Ou o HD queimou... Ou o cachorro comeu o paper wallet... Enfim, alguma coisa aconteceu, que os bitcoins não foram passados para ninguém.

Se fosse dinheiro de verdade, e eu hoje queimasse 1 bilhão de reais, provavelmente o banco central ia notar e ia mandar imprimir mais 1 bilhao em cedulas, sem afetar a economia...

O número de bitcoins é fixo, e ninguém regula... Então, pela lógica, nunca chegaremos aos 21 milhões de bitcoins, porque não da pra saber se eles foram perdidos ou estão com alguem. No longo prazo, se isso continuar acontecendo, uma hora os bitcoins acabam! Todos se perdem....


E agora ?? ComoFaz??
algorista
Hero Member
*****
Offline Offline

Activity: 882
Merit: 1000


It's got electrolytes


View Profile
July 31, 2014, 07:22:20 AM
 #17

[...]
No longo prazo, se isso continuar acontecendo, uma hora os bitcoins acabam! Todos se perdem....
[...]

Cada BTC tem mais 8 casas decimais, e poderá no futuro ter mais quantas casas forem necessárias, com isso bastaria existir um único 0.00000001 e ainda assim nunca faltaria BTC, pois esse satoshi poderia ser dividido em mais 10, 20, 30 casas decimais, é só mudar o código fonte.

+---------=====[ Rm 12:21 ]=====---------+
emoreth
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
July 31, 2014, 08:04:43 AM
 #18

Isso até poderia funcionar... Mas não é simples assim.

Para começar que adicionar casas decimais ao BTC nao deve ser tão fácil assim, principalmente porque computacionalmente fica mais dificil fazer as contas.

Em segundo lugar, como faremos com as taxas fixas de mineração ?

E por ultimo, e mais crítico: como descobrir se esses bitcoins foram perdidos, ou se foram estocados em algumas wallets milionárias?
DarkHyudrA
Legendary
*
Offline Offline

Activity: 1386
Merit: 1000


English <-> Portuguese translations


View Profile
July 31, 2014, 11:15:36 AM
 #19

Isso até poderia funcionar... Mas não é simples assim.

Para começar que adicionar casas decimais ao BTC nao deve ser tão fácil assim, principalmente porque computacionalmente fica mais dificil fazer as contas.

Em segundo lugar, como faremos com as taxas fixas de mineração ?

E por ultimo, e mais crítico: como descobrir se esses bitcoins foram perdidos, ou se foram estocados em algumas wallets milionárias?

Na verdade, é simples sim.
Seria mudado só o tipo de dados utilizado, seria feito um "checkpoint" do último bloco com o limite antigo, e todos os miners, clients e nodes começariam a usar o novo.
Entenda que, por mais que nós interpretamos como 8 casas decimais, na verdade no código fonte é um número natural.
Digo, lá no código fonte não é 21.000.000,00000000; e sim 2.100.000.000.000.000.
Se tu entende de criptografia, também deve saber o porquê que se faz isso.
Satoshi em pessoa já falou neste fórum que isso não é difícil, só claro, envolve um tempo dos atuais responsáveis por manter o Bitcoin e o Bitcoin-QT: "Gavin e seus amigos".
Então, realmente só temos 21 milhões de BTC, mas entenda que eles são "infinitamente divisíveis", pense como se tu pudesse negociar menos de 1gr de ouro.

Não existe taxas fixas de mineração, no Bitcoin-QT é que temos que o programa já tem uma miner fee fixo mesmo. Em outros clients Bitcoins, como Electrum e senão me engano o MultiBit, todos eles permitem você escolher o quanto quer pagar. (o tempo que vá levar para efetivar a transação aí é por sua conta e risco, claro)

English <-> Brazilian Portuguese translations
emoreth
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
July 31, 2014, 04:19:34 PM
 #20

Mas mesmo assim não resolve o problema de não sabermos quais bitcoins foram perdidos e quais estão estocados.

Uma operação dessas, na prática colocaria 10x mais dinheiro na carteira de quem nao comprar nem vender nada. Já que essa mudança seria para controlar o cambio, quem deixar a carteira parada vai valorizar muito.

Essa coisa de infinitamente divisível é legal, mas computacionalmente nao é simples assim. Entendo que alterar o algoritmo do bitcoin e o codigo fonte para se adequar a isso pode ser muito fácil, mas processar o codigo novo fica cada vez mais difícil, o consumo de memoria fica cada vez mais alto, o entendimento fica cada vez mais complicado, e o uso também.

Imagina se você daqui a 10 anos estiver dando uma mesada de 0.000000000000000000000001 BTC pro seu filho por mes.


O fato de essas conversoes serem feitas de 2.100.000.000.000.000 para 21.000.000,00000000 não é computacional, é meramente humano. Eu nem sei, com certeza, pronunciar 2.100.000.000.000.000. E levaria 2 minutos falando 1.825.735.194.823.825 BTC, se eu soubesse.

Não se faz conta com pnto flutuante porque em computacão isso nao existe, tudo é aproximação, e com isso rolam arredondamentos e coisas do genero. Como isso não pode acontecer com dinheiro, temos que converter tudo pra inteiro.

Ta certo que até estourarmos um UNSIGNED BIGINT, anda leva muito tempo (teriamos que chegar a 2 x1064 BTC [desconsiderando casas decimais]), mas acho que humanamente vamos nos perder nas contas muito antes disso.
Pages: [1] 2 »  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!