introdução ao ethereum, uma plataforma blockchain

12
Introdução ao Ethereum Renato Guimarães

Upload: renato-guimaraes

Post on 11-Apr-2017

26 views

Category:

Internet


2 download

TRANSCRIPT

Page 1: Introdução ao Ethereum, Uma Plataforma Blockchain

Introdução ao EthereumRenato Guimarães

Page 2: Introdução ao Ethereum, Uma Plataforma Blockchain

Ethereum

É uma plataforma Blockchain aberta.

Permite a qualquer pessoa construir e usar aplicativos descentralizados.

Foi projetado para ser adaptável e flexível.

Fácil de criar novas aplicações.

Page 3: Introdução ao Ethereum, Uma Plataforma Blockchain

Uma Nova Geração de Block Chain

Blockchain é uma arquitetura de computação distribuída onde cada nó na rede executa e registra as mesmas transações, que são agrupadas em blocos.

Somente um bloco pode ser adicionado por vez, e cada bloco contém uma prova matemática que verifica se o bloco segue a sequência do bloco anterior.

Desta forma, a "base de dados distribuída" do blockchain é mantida em consenso em toda a rede.

As interações individuais do usuário com o ledger (transações) são protegidas por criptografia forte.

Page 4: Introdução ao Ethereum, Uma Plataforma Blockchain

O Ethereum permite que os usuários criem suas próprias operações de qualquer complexidade que desejarem, desta forma, serve como uma plataforma para diferentes aplicações.

O EVM pode executar código de complexidade algorítmica arbitrária. Em termos de ciência da computação, Ethereum é um "Turing completo".

Os desenvolvedores podem criar aplicativos que são executados no EVM usando linguagens de programação amigáveis como JavaScript e Python.

Cada nó da rede executa o EVM e executa as mesmas instruções. Por esta razão, Ethereum às vezes é descrito como um "computador mundial".

Máquina Virtual Ethereum (EVM)

Page 5: Introdução ao Ethereum, Uma Plataforma Blockchain

Como Funciona

Assim com no Bitcoin, os usuários devem pagar pequenas taxas de transação para a rede.

Isso protege o Ethereum de tarefas computacionais mal-intencionadas, como ataques DDoS ou loops infinitos.

O remetente de uma transação deve pagar por cada etapa do "programa" que eles ativaram, incluindo computação e armazenamento de memória.

Essas taxas são pagas em quantidades de Ethereum's, éter.

Page 6: Introdução ao Ethereum, Uma Plataforma Blockchain

Como Funciona

Essas taxas de transações são coletadas pelos nós que validam a rede. Esses "mineradores" são nós na rede Ethereum que recebem, propagam, verificam e executam transações.

Os mineradores, em seguida, agrupam as transações - que incluem muitas atualizações do "estado" de contas na blockchain do Ethereum - em que são chamados de "blocos", e os mineradores então competem uns com os outros para seu bloco ser o próximo a ser adicionado à cadeia de blocos.

Os mineradores são recompensados com éter para cada bloco de sucesso que eles mineram. Isso fornece o incentivo econômico para que as pessoas dediquem hardware e eletricidade à rede Ethereum.

Page 7: Introdução ao Ethereum, Uma Plataforma Blockchain

Como Funciona

Assim como na rede Bitcoin, os mineradores são encarregados de resolver um problema matemático complexo, a fim de "minerar" com sucesso um bloco. Isso é conhecido como "Prova de Trabalho".

Qualquer problema computacional que requer ordens de magnitude mais recursos para resolver algoritmicamente do que leva para verificar a solução é um bom candidato para prova de trabalho.

Page 8: Introdução ao Ethereum, Uma Plataforma Blockchain

Como Funciona

Para desencorajar a centralização devido ao uso de hardware especializado (por exemplo ASICs*), como ocorreu na rede Bitcoin, Ethereum escolheu um problema computacional de memória difícil.

Se o problema requer memória, bem como CPU, o hardware ideal é de fato o computador em geral. Isso torna a Ethereum Proof of Work resistente a ASIC, permitindo uma distribuição de segurança mais descentralizada do que blockchains cuja mineração é dominada por hardware especializado, como o Bitcoin.

*Application-specific integrated circuit. (https://en.bitcoin.it/wiki/ASIC)

Page 9: Introdução ao Ethereum, Uma Plataforma Blockchain

Plataforma Para Aplicações Descentralizadas

Ethereum é perfeitamente adequado para servir como o "back-end" compartilhado para uma Internet segura e descentralizada - Web 3.0.

Uma Internet onde serviços centrais como DNS e identidade digital são descentralizados, e onde os indivíduos podem se envolver em interações econômicas uns com os outros.

Ethereum é uma tela em branco e você tem a liberdade de construir o que quiser com ele.

Page 10: Introdução ao Ethereum, Uma Plataforma Blockchain

Clientes Ethereum

Um cliente ethereum é a interface para executar um nó na rede ethereum.

Através de um nó é possível:

Minerar éters

Transferir fundos entre endereços

Criar contratos e enviar transações

Explorar o histórico de blocos

E muito mais…

http://www.ethdocs.org/en/latest/ethereum-clients/choosing-a-client.html

Page 11: Introdução ao Ethereum, Uma Plataforma Blockchain

Interação com Clientes Ethereum

Clientes Ethereum expõem uma série de operações sobre o protocolo JSON-RPC para interagir com eles a partir de um aplicação.

Essas bibliotecas permitem que os desenvolvedores se concentrem em suas aplicações, ao invés se preocupar com as nuances do protocolo para interagir com os clientes Ethereum.

http://www.ethdocs.org/en/latest/connecting-to-clients/index.html

Page 12: Introdução ao Ethereum, Uma Plataforma Blockchain

Referências

https://www.ethereum.org/

http://www.ethdocs.org/en/latest/index.html

https://ethereum.github.io/go-ethereum/

https://github.com/web3j/web3j

https://github.com/ethereum/go-ethereum/wiki/Installation-Instructions-for-Mac