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
