Repositório GitHub para IMD0913 Prof. Danilo Curvelo
Repositório com o conteúdo acadêmico para a disciplina IMD0913. Neste repositório você irá encontrar os slides das aulas e os códigos-fonte para realização das atividades práticas.
Esse repositório é um work-in-progress, isso quer dizer que algus bugs podem ser encontrados mudanças serão realizadas com recorrência. Antes de realizar uma atividade, confirme que você tem a última versão dos códigos.
O repositório está dividido conforme a execução das aulas de 2022.2.
Apresentação do curso (22/08) | |
Slides | |
Bibliografia | Mastering Bitcoin por A. Antonopoulos Mastering Ethereum por A. Antonopoulos |
O protocolo Bitcoin: visão geral (24/08) | |
Slides | |
Leitura complementar | MB Capítulos 1 e 2 |
Material complementar | White paper por Satoshi Nakamoto How does Bitcoin work? por Greg W |
Do Bitcoin ao Blockchain (29/08) | |
Slides | |
Leitura complementar | MB Capítulo 1 |
Material complementar | White paper por Satoshi Nakamoto Cypherpunk Manifesto por E. Hughes Blockchain Explorer |
Arquitetura de um Blockchain: Hashing (31/08 - 05/09) | |
Slides | |
Atividade avaliativa #01 | |
Leitura complementar | MB Capítulo 4 |
Material complementar | SHA256 Online Documentação hashlib |
Arquitetura de um Blockchain: Bloco (14/09 - 19/09) | |
Slides | |
Atividade avaliativa #02 | |
Leitura complementar | MB Capítulo 9 |
Material complementar | Blocos: Demo Blockchain: Demo |
Arquitetura de um Blockchain: Rede e Mempool (21/09) | |
Slides | |
Leitura complementar | MB Capítulo 8 |
Material complementar | Bitcoin Mempool Space |
Arquitetura de um Blockchain: Consenso - Proof-of-Work (26/09 - 28/09) | |
Slides | |
Atividade avaliativa #03 | |
Leitura complementar | MB Capítulo 10 |
Material complementar | E-Mail Satoshi Nakamoto: PoW |
Arquitetura de um Blockchain: Consenso - Proof-of-Stake (05/10) | |
Slides | |
Arquitetura de um Blockchain: Assinaturas digitais (05/10) | |
Slides | |
Blockchain em Python | |
Leitura complementar | MB Capítulo 4 |
Material complementar | Validação de assinaturas Bitcoin |
Arquitetura de um Blockchain: Wallets (17/10) | |
Slides | |
Leitura complementar | MB Capítulo 5 |
Material complementar | Paper wallet Bitcoin Exchanges Escolha sua carteira (wallet) |
Arquitetura de um Blockchain: Transações (19/10) | |
Slides | |
Atividade avaliativa #05 | |
Arquitetura de um Blockchain: Script Bitcoin (19/10) | |
Slides | |
Leitura complementar | MB Capítulo 6 e 7 |
Material complementar | Referência da linguagem Script |
Arquitetura de um Blockchain: Nós e Forks (26/10) | |
Slides | |
Atividade avaliativa #06 | apresentação 14/11 |
Leitura complementar | MB Capítulo 8 e 10 |
Material complementar | Cliente Bitcoin Core |
Ethereum e Smart Contracts (07/11) | |
Slides | |
Leitura complementar | MB Capítulo 7 |
Material complementar | Mastering Ethereum por A. Antonopoulos |
Solidity (09/11) | |
Slides | |
Exemplos Smart Contracts |
|
Atividade: Smart Contracts | até 23/11 |
Leitura complementar | MB Capítulo 7 |
Material complementar | Documentação Solidity Curso CryptoZombies Remix IDE Ether Sepolia Faucet |
Tokens e NFTs (23/11) | |
Slides | |
Dapps (23/11) | |
Slides | |
Exemplo DApp: Rifa | |
Projeto Final: DApp | |
Leitura complementar | MB Capítulo 10 e 12 |
Material complementar | Documentação Solidity Remix IDE |
Bibliografia | Mastering Ethereum por A. Antonopoulos |
.
├── blockchain-python
│ ├── 01-hashing
│ │ └── blockchain.py
| ├── 02-blocks
| │ └── blockchain.py
| ├── 03-pow
| │ └── blockchain.py
| ├── 04-sign-and-verify
| │ └── blockchain.py
| ├── 05-transactions
| │ └── blockchain.py
| ├── 06-consensus
| │ └── blockchain.py
├── smart-contracts
│ ├── 07-smart-contracts-01
│ │ └── contract.sol
│ ├── 08-smart-contracts-02
│ │ └── contract.sol
└── final-project
└── [...]