meetup bitcoin vitoria 2 - como a blockchain funciona
Post on 24-Jul-2015
69 Views
Preview:
TRANSCRIPT
www.facebook.com/groups/BitcoinVitoria
www.meetup.com/BitcoinVitoria
fabr
icio
-var
gas-
mat
os: ~
bloc
kcha
in $
Blockchain
Tx1
Tx4
Tx2
Tx3
Tx5
Tx6
Tx7
Tx8
Tx11
Tx9
Tx10
Bloco 1 Bloco 2 Bloco 3
0.5 BTC
0.5 BTC
Fila de Trans. Pendentes: Tx12, Tx13, Tx14, Tx15...
Blockchain
Tx12
Tx15
Tx13
Tx14
Tx5
Tx6
Tx7
Tx8
Tx11
Tx9
Tx10
Bloco 4Bloco 2 Bloco 3
0.5 BTC
0.5 BTC
1 BTC
Fila de Trans. Pendentes: Tx16, Tx17
Transações
Tx14
1 BTC
• Tx14 é uma transação “não gasta”
• Só JOÃO tem o poder de movimentar esse 1 BTC.
• Saldo de JOÃO = Soma dos valores das transferências não gastas feitas pra ele (que só ele consegue “gastar”)
Transações
Tx14
1 BTC
• Tx14 é uma transação “não gasta”
• Só JOÃO tem o poder de movimentar esse 1 BTC.
• Saldo de JOÃO = Soma dos valores das transferências não gastas feitas pra ele (que só ele consegue “gastar”)
Origem1: Valor: 1.00000000Transação: Tx9
Destino1: Valor: 1.00000000Script:
SCRIPT_PUBKEY_JOÃO
Transações
Tx14
1 BTC
• Tx14 é uma transação “não gasta”
• Só JOÃO tem o poder de movimentar esse 1 BTC.
• Saldo de JOÃO = Soma dos valores das transferências não gastas feitas pra ele (que só ele consegue “gastar”)
Origem1: Valor: 1.00000000Transação: Tx9
Destino1: Valor: 1.00000000Script:
SCRIPT_PUBKEY_JOÃOSCRIPT_PUB_KEY_JOÃO:
“Se assinatura do requerente bater com a chave pública que o JOÃO forneceu, pode gastar essa transação de 1 BTC”
Transações
Tx14
1 BTC
Origem1: Valor: 1.00000000Transação: Tx9
Destino1: Valor: 1.00000000Script:
SCRIPT_PUBKEY_JOÃOSCRIPT_PUB_KEY_JOÃO:
“Se assinatura do requerente bater com a chave pública que o JOÃO forneceu, pode gastar essa transação de 1 BTC”
Tx30
Transações
Tx14
1 BTC
Origem1: Valor: 1.00000000Transação: Tx9
Destino1: Valor: 1.00000000Script:
SCRIPT_PUBKEY_JOÃOSCRIPT_PUB_KEY_JOÃO:
“Se assinatura do requerente bater com a chave pública que o JOÃO forneceu, pode gastar essa transação de 1 BTC”
Tx30Origem1:
Valor: 1.00000000Transação: Tx14 –
Destino1
Assinada com Chave Privada do João!
Transações
Tx14
1 BTC
Origem1: Valor: 1.00000000Transação: Tx9
Destino1: Valor: 1.00000000Script:
SCRIPT_PUBKEY_JOÃOSCRIPT_PUB_KEY_JOÃO:
“Se assinatura do requerente bater com a chave pública que o JOÃO forneceu, pode gastar essa transação de 1 BTC”
Tx30Origem1:
Valor: 1.00000000Transação: Tx14 –
Destino1
Destino1: Valor: 0.30000000Script:
SCRIPT_PUBKEY_ELLEN
Assinada com Chave Privada do João!
SCRIPT_PUB_KEY_ELLEN:...
Transações
Tx14
1 BTC
Origem1: Valor: 1.00000000Transação: Tx9
Destino1: Valor: 1.00000000Script:
SCRIPT_PUBKEY_JOÃOSCRIPT_PUB_KEY_JOÃO:
“Se assinatura do requerente bater com a chave pública que o JOÃO forneceu, pode gastar essa transação de 1 BTC”
Tx30Origem1:
Valor: 1.00000000Transação: Tx14 –
Destino1
Destino1: Valor: 0.30000000Script:
SCRIPT_PUBKEY_ELLEN
Destino2: Valor: 0.70000000Script:
SCRIPT_PUB_KEY_JOÃOAssinada com Chave Privada do João!
SCRIPT_PUBKEY_ELLEN:...
SCRIPT_PUB_KEY_JOÃO:...
João assina digitalmente a Tx30 e a envia para a Blockchain
Trans. Pendentes: TxA, TxB, Tx30
Bl.1 Bl.2 Bl 3 Bl 4
Tx30
BLOCKCHAIN
Pontos chaves até aqui
• Foi difícil acompanhar os detalhes?• Chaves Públicas/Privadas => Você no controle,
para o bem e para o mal.• Cada valor gastável pode ser associado a um
programa específico => construção de uma infinidade de relações mais sofisticadas
• Lembrete: Blockchain apenas hipoteticamente centralizada (por questões didáticas)
Indo além do dinheiro inteligente
• A tecnologia blockchain:– Gama enorme de aplicações.– Projetada para dinheiro digital.
• Precisamos criar camadas extendendo a capacidade.
• Como isso é possível?• Blockchain 2.0!
Tokens na Blockchain
• Baseado na posse e transferência de valores simbólicos de BTCs– Bitcoin coloridos– Sidechains
• Propriedades virtuais transferíveis (mas não duplicáveis)– Ex: Licença de software, bens virtuais em games,
etc..
Blockchain descentralizada
• Necessidade de confiança numa entidade• Introduz um ponto único de vulnerabilidade
(derrubar ou comprometer esse ponto)• Solução: Criar uma rede peer-to-peer
totalmente descentralizada.• Cada nó tem uma cópia inteira da Blockchain e
faz todo o processo de validar transações, adicioná-las na sua blockchain e notificar os outros nós ao redor.
Como impedir gasto duplo?
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 1
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 2
Tx30
1 BTC
Cenário boa fé
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 1
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 2
1 BTC
Bl 5
Cenário boa fé
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 1
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 2
Bl 5
Bl 5
Cenário má fé
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 1
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 2
Tx30
1 BTC
Cenário má fé
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 1
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 2
Tx30
1 BTC
Tx31
1 BTC
Cenário má fé
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 1
Trans. Pendentes: TxA, TxB, ...
Bl.1 Bl.2 Bl 3 Bl 4
BLOCKCHAIN DO COMPUTADOR 2
Bl 5a
Bl 5b
E agora?
Referências Técnicas
• Nakamoto, Satoshi, “Bitcoin: A Peer-to-Peer Electronic Cash System”, 2009.
• “Bitcoin: Technical Background and Data Analysis”. Federal Reserve Board, Washington, D.C., 2014.
Base para a solução: mineração
• Ecossistema baseado em mineração de bitcoins e incentivos para manter a consenso e a segurança da rede.
• Os mineradores são recompensados por fazerem um trabalho que, sem os insentivos financeiros, ninguém faria: investir poder computacional para validar transações e computar o “proof-of-work” que é a mágica que permite a rede P2P manter o consenso.
• Blockchain é uma solução tecnológica, mas dependente de um equilíbrio da economia interna da rede. E essa sacada foi genial!!!!
top related