Link Search Menu Expand Document

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 })

Contas do Ganache no Console

4- Compilando contratos

 migrate

Migrate 1 Migrate 2

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)})

Console - Contas

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)})

Transações de LdnaToken

# 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

index.html

Requisição para o MetaMask

metamask

Transação no Ganache

ganache

# Atividade 2b - Retornar endereço do criador do contrato

Teste realizado na plataforma remix.ethereum.org/

1- Retornando contract owner

owner address

Atividade 2c - PayTheOwner 1 wei

Executado no remix

paytheowner

Atividade 2d - Calculadora 1wei

Executado no remix

deploy

Resultado da conta e envio de wei

resultado

Atividade 2e - Texto para hash

Executado no remix

texto teste e resultado