Blockchain - Atividade Final
Atividade final do curso de Engenharia de Software da UEL - módulo Software Baseado em Blockchain
Os códigos, screenshots e detalhes podem ser vistos nos README.md de cada atividade ou abaixo.
Atividade 1
1- Configuração do Ganache
2- Conectando via truffle
truffle console --network ganache
3- Armazenando as informações de contas do ganache
web3.eth.getAccounts((err,res) => { accounts = res })
4- Compilando contratos
migrate
5- Definindo quantidade de Tokens e checando quantidade disponível
LdnaToken.deployed().then(instance => { instance.approve(LdnaFaucet.address, 100) })
// Quantidade disponível por conta
LdnaToken.deployed().then(instance => { instance.balanceOf(accounts[0]).then(console.log)})
LdnaToken.deployed().then(instance => { instance.balanceOf(accounts[1]).then(console.log)})
LdnaToken.deployed().then(instance => { instance.balanceOf(accounts[2]).then(console.log)})
6- Efetuando transações para as contas e verificando balanço
//Como foi definido o limite de 10 tokens por transação, foram realizadas 3 retiradas totalizando 25 LdnaTokens
LdnaFaucet.deployed().then(instance => {instance.withdraw(10, {from:accounts[1]})})
LdnaFaucet.deployed().then(instance => {instance.withdraw(10, {from:accounts[1]})})
LdnaFaucet.deployed().then(instance => {instance.withdraw(5, {from:accounts[1]})})
LdnaToken.deployed().then(instance => { instance.balanceOf(accounts[1]).then(console.log)})
LdnaFaucet.deployed().then(instance => {instance.withdraw(10, {from:accounts[2]})})
LdnaFaucet.deployed().then(instance => {instance.withdraw(10, {from:accounts[2]})})
LdnaFaucet.deployed().then(instance => {instance.withdraw(5, {from:accounts[2]})})
LdnaToken.deployed().then(instance => { instance.balanceOf(accounts[2]).then(console.log)})
LdnaToken.deployed().then(instance => { instance.balanceOf(accounts[0]).then(console.log)})
# Atividade 2a - Calculadora
Foi utilizado uma aplicação front-end para a realização do exercício 2.
1- Instalação do repositório do truffle pet-shop
truffle unbox pet-shop
2- Contract Calculadora
Ver o arquivo solidity aqui
3- Em uso
Abaixo o site em estado inicial
Requisição para o MetaMask
Transação no Ganache
# Atividade 2b - Retornar endereço do criador do contrato
Teste realizado na plataforma remix.ethereum.org/
1- Retornando contract owner
Atividade 2c - PayTheOwner 1 wei
Executado no remix
Atividade 2d - Calculadora 1wei
Executado no remix
Resultado da conta e envio de wei
Atividade 2e - Texto para hash
Executado no remix