Convidados desta edição Daniel Martins Narcélio Filho Mastering Bitcoin 1. Introduction 2. How Bitcoin Works 3. The Bitcoin Client 4. Keys, Addresses, Wallets 5. Transactions 6. The Bitcoin Network 7. The Blockchain 8. Mining and Consensus 9. Alternative Chains, Currencies, and Applications 10. Bitcoin Security Introduction Public key cryptography and crypto-currency Private and Public Keys (63) Artigo “Private keys, Public keys, Addresses” Elliptic Curve Cryptography (65) Generating a public key (68) Public key to Bitcoin Address (72) Key Formats (76) Compressed Public Keys (78) Wallets Contém chaves, não moedas Cada usuário tem carteiras, que contém as chaves públicas e privadas Non-Deterministic (Random) Wallets Coleção de chaves privadas geradas aleatoriamente Armazenar todas as chaves na carteira Difíceis de gerenciar, backup frequente Deterministic (Seeded) Wallets Deterministicas, ou carteiras "seeded": contém chaves privadas geradas de uma seed comum Seed: número gerado aleatoriamente Aqui a seed é suficiente para recuperar todas as chaves privadas Backup único da seed é suficiente Também util para exportação ou importação, fácil migração Mnemonic Code Words - pag 105 Sequência de palavras que representa (codifica) um numero aleatorio usado como seed para derivar uma carteira determinística Sequência de palavras é suficiente para recriar a seed 12 ou 24 palavras Definida no BIP0039 Passos: 1. sequencia aleatória de 128 ou 256 bits 2. criar um checksum disso 3. adicionar a checksum ao fim da sequencia 4. dividir a sequencia em secoes de 11 bits, usando essas para referenciar um dicionario de 2048 palavras predefinidas 5. produzir 12-24 palavras representando o mnemonic code Hierarchical Deterministic Wallets (BIP0032/BIP0044)Keys and Addresses HD wallet creation from a seed Evolução das carteiras determinísticas, chaves que podem gerar filhas Criadas de uma seed raiz de 128, 256 ou 512 bits Tudo nessa carteira pode ser recriado da seed, representada pelo codigo mnemonico Processo de criar: pagina 109 Extended key: chave raiz, que pode gerar chaves filhas Hierarchical Deterministic Wallets (BIP0032/BIP0044)Keys and Addresses Private child key derivation Processo de derivar chaves filhas de chaves pai Usam: chave privada pai, seed chamada chain code, número index Public child key derivation Pode-se também derivar as chaves publicas da arvore da carteira a partir da chave pública raiz Aplicação: - Instalar uma extended public key em um web server que serve uma aplicação de e-commerce. Usar a derivação de chaves publicas para gerar endereços bitcoin a cada nova transação (e.g. customer shopping cart). O server não tera nenhuma chave privada acessivel a atacantes Advanced Keys and Addresses Encrypted Private Keys (BIP0038) Problema: chaves privadas devem permanecer seguras BIP0038: propoe padrão comum para encriptar private keys com uma senha O resultado commeça com o prefixo 6P Testar: pag 118 bitaddress.org > Wallet details > entrar detalhes Advanced Keys and Addresses Pay To Script Hash (P2SH) and Multi-Sig Addresses BIP0016 bitcoin addresses: 1 pay-to-public-key-hash (P2PKH) requisitos: apresentar public key e assinatura 3 pay-to-script-hash (P2SH) requisitos: outros definidos na hora de criação Paper Wallets Chaves privadas imprimidas em papel Offline bitcoin storage, "cold storage" Pode ser gerada offline Segura a ataques bitaddress.org, salvar pagina html, acessar offline bitcoinpaperwallet.com Desvantagem: alguem pegar a paper wallet BIP0038: chaves encriptadas com uma senha Quando gastar, deve-se gastar tudo de uma vez
Enter the password to open this PDF file:
-
-
-
-
-
-
-
-
-
-
-
-