O documento apresenta conceitos fundamentais sobre blockchain e Bitcoin, incluindo: (1) como o Bitcoin foi inventado em 2009 como uma versão peer-to-peer de dinheiro eletrônico, (2) os principais componentes da blockchain como blocos, transações e consenso, (3) a arquitetura do Bitcoin Core e como desenvolvedores podem interagir com a rede, e (4) diferentes tipos de arquiteturas e aplicações de blockchain.
2. Globalcode – Open4education
Agenda
• Bitcoin
• Blockchain
• Bitcoin Core Architecture
• Bitcoin Wallets
• Bitcoin Wallet - BIP32 - BitcoinJ
• BitcoinJ e OP_RETURN
• Porque rodar um Node de Bitcoin / Blockchain ?
• Mapa da Rede do Bitcoin
• Arquitetura Enterprise
• The Blockchain Model
• 4 Tipo de Arquiteturas em Blockchain
• 3 Camadas para Blockchain Enterprise
• ORACLES o Blockchain e o Mundo Externo
• Blockchain 1a e 2a Geração
• O Valor do Bitcoin
• Wallet Segura Usando HSM
3. Globalcode – Open4education
Bitcoin
Inventado em 2009 por
Satoshi Nakamoto
Uma versão peer-to-peer de
dinheiro eletrônico que
permite pagamentos online
sendo enviados diretamente de
uma pessoa para a outra sem a
necessidade de uma instituição
financeira.
4. Globalcode – Open4education
Blockchain
● Timestamp Server
● Blocos e Transações são
identificados usando um hash
de seu conteúdo
● As transações são feitas usando
criptografia de assimétrica, com
chaves públicas e privadas
● Merkle Tree (Você ainda vai
precisar indexar isso de novo)
● Consenso (PoW)
5. Globalcode – Open4education
Bitcoin Core
Architecture
Bitcoin Core é um Node com
todas as funcionalidades
necessárias para você
desenvolver e participar da
rede do Bitcoin. Geralmente
nossas aplicações estão
conectadas à rede usando RPC
para notificações e
comunicação com a rede.
9. Globalcode – Open4education
Porque rodar um Node de
Bitcoin
1. Se você é um desenvolvedor de aplicações
com Bitcoin
2. Se você está construindo aplicações que
precisam validar transações de acordo com
o consenso do Bitcoin
3. Se você quer ajudar a manter a rede do
Bitcoin
4. Se você não quer depender de terceiros
para processar e validar as suas transações
7.925 Nodes
26.996 Nodes
12.435 Nodes
11. Globalcode – Open4education
Arquiteturas Enterprise
1. Gerenciamento do Estado
Global
2. Não imutável
3. Integridade de Dados super
coordenada
4. Existe sempre um SUPER
USUÁRIO
12. Globalcode – Open4education
The Blockchain Model
1. Estado único global
2. Imutável
3. Integridade de Dados
baseada em Consenso
4. NÃO EXISTE UM SUPER
USUÁRIO
5. UTXO - Transações Não
Gastas
16. Globalcode – Open4education
Blockchain 1a., 2a. Geração
1. O Bitcoin mantem um registro detalhado de todas as transações
feitas desde o bloco genesis.
2. Apesar do Bitcoin suportar Smart Contracts ele não tem uma
linguagem Turing Complete, mas sim uma semelhante a Stack
3. Ethereum além de manter um histórico do estado global, ele
disponibiliza uma linguagem e um ambiente Turing Complete que
permite realizar operações complexas