Este repositório contém uma implementação básica de uma blockchain modular desenvolvida em Go (Golang), com o objetivo de aprofundar conhecimentos em Web3, blockchain e criptografia. O projeto inclui funcionalidades essenciais, como:
✅ Criação e estruturação de blocos; ✅ Validação da cadeia de blocos; ✅ Implementação de Proof of Work (PoW);
O código está repleto de comentários explicativos para ajudar iniciantes a entender os conceitos fundamentais de blockchain e como implementá-los em Go. Afinal, este é o real motivo deste projeto existir!
Antes de iniciar, certifique-se de ter o Go instalado (versão mínima 1.19.0). Você pode baixá-lo e instalá-lo através do site oficial: Go Downloads.
Para obter o código-fonte, execute o seguinte comando no seu terminal:
git clone https://github.com/seu-usuario/seu-repositorio.git
cd seu-repositorioApós clonar o repositório, navegue até a pasta do projeto e execute:
go run main.go
Isso iniciará a blockchain, e os blocos começarão a ser minerados e adicionados à cadeia.
O projeto está organizado da seguinte maneira:
📦 seu-repositorio
├── 📜 main.go # Ponto de entrada do programa
├── 📂 blockchain/ # Pacote contendo a lógica da blockchain
│ ├── 📜 block.go # Definição da estrutura e funcionalidades do bloco
│ ├── 📜 blockchain.go # Definição da estrutura da blockchain
│ └── 📜 proofofwork.go # Implementação do algoritmo Proof of Work (PoW)
├── 📜 README.md # Documentação do projeto
└── 📜 go.mod # Gerenciamento de dependências do Go
Contribuições são sempre bem-vindas! Se você deseja sugerir melhorias ou relatar problemas, sinta-se à vontade para abrir uma issue ou enviar um pull request. 💡
- Faça um fork do projeto;
- Crie um branch com sua feature ou correção (
git checkout -b minha-feature); - Faça o commit das suas alterações (
git commit -m 'Adicionando minha feature'); - Faça um push para o branch (
git push origin minha-feature); - Abra um Pull Request.
Este projeto está licenciado sob a MIT License. Consulte o arquivo LICENSE para mais informações.
Este projeto foi inspirado por diversas documentações e tutoriais sobre blockchain e Go. Um agradecimento especial à comunidade AnthonyGG por compartilhar conhecimento e materiais valiosos. 🚀