Ethereum: Eine Plattform der nächsten Generation für Smart Contracts und dezentrale Anwendungen

Por Vitalik Buterin · 2013

Abstract

Ethereum e uma plataforma de criptomoedas e aplicacoes descentralizadas de nova geracao que introduz uma blockchain com uma linguagem de programacao Turing-completa incorporada. Isso permite que qualquer pessoa escreva smart contracts e aplicacoes descentralizadas onde podem criar suas proprias regras arbitrarias para propriedade, formatos de transacao e funcoes de transicao de estado.

A inovacao fundamental do Ethereum e combinar a tecnologia blockchain pioneira do Bitcoin com um ambiente de programacao de proposito geral. Enquanto o Bitcoin fornece um sistema simples de transicao de estado para mover moeda de uma conta para outra, o Ethereum fornece uma plataforma onde desenvolvedores podem construir qualquer tipo de aplicacao descentralizada que possam imaginar, desde moedas alternativas e instrumentos financeiros ate sistemas de registro de dominios e organizacoes descentralizadas.

O Ethereum alcanca isso construindo o que e essencialmente a camada fundacional abstrata definitiva: uma blockchain com uma linguagem de programacao Turing-completa incorporada, permitindo que qualquer pessoa escreva smart contracts e aplicacoes descentralizadas onde podem criar suas proprias regras arbitrarias para propriedade, formatos de transacao e funcoes de transicao de estado. Uma versao basica do Namecoin pode ser escrita em duas linhas de codigo, e outros protocolos como moedas e sistemas de reputacao podem ser construidos em menos de vinte.

Abstract

Ethereum ist eine Kryptowaehrungs- und dezentrale Anwendungsplattform der naechsten Generation, die eine Blockchain mit einer integrierten Turing-vollstaendigen Programmiersprache einfuehrt. Dies ermoeglicht es jedem, Smart Contracts und dezentrale Anwendungen zu schreiben, in denen sie ihre eigenen beliebigen Regeln fuer Eigentum, Transaktionsformate und Zustandsuebergangsfunktionen erstellen koennen.

Die grundlegende Innovation von Ethereum besteht darin, die von Bitcoin pionierhaft entwickelte Blockchain-Technologie mit einer universellen Programmierumgebung zu kombinieren. Waehrend Bitcoin ein einfaches Zustandsuebergangssystem zum Verschieben von Waehrung von einem Konto zu einem anderen bereitstellt, bietet Ethereum eine Plattform, auf der Entwickler jede Art von dezentraler Anwendung bauen koennen, die sie sich vorstellen koennen, von alternativen Waehrungen und Finanzinstrumenten bis hin zu Domain-Registrierungssystemen und dezentralen Organisationen.

Ethereum erreicht dies, indem es im Wesentlichen die ultimative abstrakte Grundschicht aufbaut: eine Blockchain mit einer integrierten Turing-vollstaendigen Programmiersprache, die es jedem ermoeglicht, Smart Contracts und dezentrale Anwendungen zu schreiben, in denen sie ihre eigenen beliebigen Regeln fuer Eigentum, Transaktionsformate und Zustandsuebergangsfunktionen erstellen koennen. Eine minimale Version von Namecoin kann in zwei Zeilen Code geschrieben werden, und andere Protokolle wie Waehrungen und Reputationssysteme koennen in weniger als zwanzig erstellt werden.

Introduction and Existing Concepts

O conceito de moeda digital descentralizada, assim como aplicacoes alternativas como registros de propriedade, existe ha decadas. Os protocolos anonimos de dinheiro eletronico das decadas de 1980 e 1990, em sua maioria dependentes de uma primitiva criptografica conhecida como cegamento de Chaum, forneciam uma moeda com alto grau de privacidade, mas os protocolos em grande parte nao conseguiram ganhar tracao devido a sua dependencia de um intermediario centralizado. Em 1998, o b-money de Wei Dai tornou-se a primeira proposta a introduzir a ideia de criar dinheiro atraves da resolucao de quebra-cabecas computacionais, bem como consenso descentralizado, mas a proposta era escassa em detalhes sobre como o consenso descentralizado poderia realmente ser implementado.

Em 2009, uma moeda descentralizada foi implementada na pratica pela primeira vez por Satoshi Nakamoto, combinando primitivas estabelecidas para gerenciar propriedade atraves de criptografia de chave publica com um algoritmo de consenso para rastrear quem possui as moedas, conhecido como "proof of work". O mecanismo por tras do proof of work foi um avanco no campo porque resolveu simultaneamente dois problemas. Primeiro, forneceu um algoritmo de consenso simples e moderadamente eficaz, permitindo que os nos da rede concordassem coletivamente em um conjunto de atualizacoes canonicas ao estado do livro-razao do Bitcoin. Segundo, forneceu um mecanismo para permitir a entrada livre no processo de consenso, resolvendo o problema politico de decidir quem pode influenciar o consenso, enquanto simultaneamente prevenia ataques sybil.

A blockchain do Bitcoin provou ser notavelmente robusta ao longo de seus anos de operacao, mas e inerentemente limitada. A linguagem de scripting do Bitcoin e intencionalmente projetada para ser restritiva e nao Turing-completa, carecendo de loops e muitas outras funcionalidades que seriam necessarias para construir aplicacoes mais complexas. Essa limitacao existe para prevenir loops infinitos e outras formas de ataques computacionais, mas restringe severamente o que pode ser construido sobre o Bitcoin.

Nos ultimos cinco anos, houve varias tentativas de estender a funcionalidade do Bitcoin. Os colored coins buscaram usar a blockchain do Bitcoin para rastrear a propriedade de ativos alternativos, o Namecoin tentou criar um banco de dados descentralizado de registro de nomes, e varios protocolos metacoin buscaram construir camadas adicionais sobre o Bitcoin. Embora essas abordagens tenham mostrado promessa, foram finalmente limitadas pelas capacidades de scripting do Bitcoin e pela incapacidade de acessar dados da blockchain de dentro dos scripts.

O que o Ethereum pretende fornecer e uma blockchain com uma linguagem de programacao Turing-completa totalmente desenvolvida que pode ser usada para criar "contratos" que podem ser usados para codificar funcoes de transicao de estado arbitrarias, permitindo aos usuarios criar qualquer um dos sistemas descritos acima, bem como muitos outros que ainda nao imaginamos, simplesmente escrevendo a logica em poucas linhas de codigo.

Introduction and Existing Concepts

Das Konzept der dezentralen digitalen Waehrung sowie alternative Anwendungen wie Eigentumsregister existieren seit Jahrzehnten. Die anonymen E-Cash-Protokolle der 1980er und 1990er Jahre, die hauptsaechlich auf einem kryptographischen Primitiv namens Chaumian Blinding beruhten, boten eine Waehrung mit einem hohen Mass an Privatsphaere, doch die Protokolle konnten sich wegen ihrer Abhaengigkeit von einem zentralisierten Vermittler weitgehend nicht durchsetzen. 1998 wurde Wei Dais b-money zum ersten Vorschlag, der die Idee einfuehrte, Geld durch das Loesen von Rechenaufgaben sowie durch dezentralen Konsens zu schaffen, aber der Vorschlag enthielt nur wenige Details darueber, wie dezentraler Konsens tatsaechlich umgesetzt werden koennte.

Im Jahr 2009 wurde eine dezentrale Waehrung erstmals in der Praxis von Satoshi Nakamoto implementiert, indem etablierte Primitive fuer die Verwaltung von Eigentum durch Public-Key-Kryptographie mit einem Konsensalgorithmus zur Verfolgung des Coin-Besitzes kombiniert wurden, bekannt als "Proof of Work". Der Mechanismus hinter Proof of Work war ein Durchbruch in diesem Bereich, da er gleichzeitig zwei Probleme loeste. Erstens bot er einen einfachen und maessig effektiven Konsensalgorithmus, der es den Knoten im Netzwerk ermoeglichte, sich kollektiv auf eine Reihe kanonischer Aktualisierungen des Zustands des Bitcoin-Hauptbuchs zu einigen. Zweitens bot er einen Mechanismus fuer den freien Eintritt in den Konsensprozess, der das politische Problem loeiste, wer den Konsens beeinflussen darf, waehrend gleichzeitig Sybil-Angriffe verhindert wurden.

Die Bitcoin-Blockchain hat sich ueber ihre Betriebsjahre hinweg als bemerkenswert robust erwiesen, ist aber inhaerent begrenzt. Bitcoins Skriptsprache ist absichtlich so konzipiert, dass sie restriktiv und nicht-Turing-vollstaendig ist, ohne Schleifen und viele andere Funktionen, die fuer den Aufbau komplexerer Anwendungen erforderlich waeren. Diese Einschraenkung existiert, um Endlosschleifen und andere Formen von Rechenangriffen zu verhindern, schraenkt aber stark ein, was auf Bitcoin aufgebaut werden kann.

In den letzten fuenf Jahren gab es eine Reihe von Versuchen, die Funktionalitaet von Bitcoin zu erweitern. Colored Coins versuchten, die Bitcoin-Blockchain zur Verfolgung des Eigentums an alternativen Vermoegenswerten zu nutzen, Namecoin versuchte, eine dezentrale Namensregistrierungsdatenbank zu schaffen, und verschiedene Metacoin-Protokolle zielten darauf ab, zusaetzliche Schichten auf Bitcoin aufzubauen. Obwohl diese Ansaetze vielversprechend waren, waren sie letztlich durch die Skriptfaehigkeiten von Bitcoin und die Unfaehigkeit, auf Blockchain-Daten aus Skripten heraus zuzugreifen, begrenzt.

Was Ethereum bereitstellen will, ist eine Blockchain mit einer integrierten vollwertigen Turing-vollstaendigen Programmiersprache, die verwendet werden kann, um "Vertraege" zu erstellen, die beliebige Zustandsuebergangsfunktionen kodieren koennen, so dass Benutzer jedes der oben beschriebenen Systeme sowie viele andere, die wir uns noch nicht vorgestellt haben, erstellen koennen, indem sie die Logik einfach in wenigen Zeilen Code schreiben.

Bitcoin As A State Transition System

Do ponto de vista tecnico, o livro-razao de uma criptomoeda como o Bitcoin pode ser pensado como um sistema de transicao de estado, onde ha um "estado" que consiste no status de propriedade de todos os bitcoins existentes e uma "funcao de transicao de estado" que recebe um estado e uma transacao e produz um novo estado que e o resultado. Em um sistema bancario padrao, por exemplo, o estado e um balanco patrimonial, uma transacao e uma solicitacao para mover \(X de A para B, e a funcao de transicao de estado reduz o valor na conta de A em \)X e aumenta o valor na conta de B em \(X. Se a conta de A tem menos de \)X inicialmente, a funcao de transicao de estado retorna um erro.

Ethereum state transition diagram showing how transactions transform blockchain state

O "estado" no Bitcoin e a colecao de todas as moedas (tecnicamente, "saidas de transacao nao gastas" ou UTXO) que foram cunhadas e ainda nao gastas, onde cada UTXO tem uma denominacao e um proprietario (definido por um endereco de 20 bytes que e essencialmente uma chave publica criptografica). Uma transacao contem uma ou mais entradas, onde cada entrada contem uma referencia a um UTXO existente e uma assinatura criptografica produzida pela chave privada associada ao endereco do proprietario, e uma ou mais saidas, onde cada saida contem um novo UTXO a ser adicionado ao estado.

A funcao de transicao de estado APPLY(S,TX) - S' pode ser definida aproximadamente da seguinte forma:

  1. Para cada entrada em TX, se o UTXO referenciado nao esta em S, retornar um erro.
  2. Se a assinatura fornecida nao corresponde ao proprietario do UTXO, retornar um erro.
  3. Se a soma das denominacoes de todos os UTXO de entrada e menor que a soma das denominacoes de todos os UTXO de saida, retornar um erro.
  4. Retornar S com todos os UTXO de entrada removidos e todos os UTXO de saida adicionados.

A primeira metade do primeiro passo impede que os remetentes de transacoes gastem moedas que nao existem, a segunda metade do primeiro passo impede que os remetentes gastem moedas de outras pessoas, e o segundo passo garante a conservacao de valor. Para usar isso para pagamentos, o protocolo e o seguinte: suponha que Alice queira enviar 11.7 BTC para Bob. Primeiro, Alice procurara um conjunto de UTXO disponiveis que ela possui e que somem pelo menos 11.7 BTC. Realisticamente, Alice nao conseguira obter exatamente 11.7 BTC; digamos que o minimo que ela pode obter e 6+4+2=12. Ela entao cria uma transacao com essas tres entradas e duas saidas. A primeira saida sera 11.7 BTC com o endereco de Bob como proprietario, e a segunda saida sera o "troco" restante de 0.3 BTC, sendo a proprietaria a propria Alice.

Bitcoin As A State Transition System

Aus technischer Sicht kann das Hauptbuch einer Kryptowaehrung wie Bitcoin als Zustandsuebergangssystem betrachtet werden, bei dem es einen "Zustand" gibt, der aus dem Eigentumsstatus aller existierenden Bitcoins besteht, und eine "Zustandsuebergangsfunktion", die einen Zustand und eine Transaktion nimmt und einen neuen Zustand als Ergebnis ausgibt. In einem Standard-Bankensystem ist beispielsweise der Zustand eine Bilanz, eine Transaktion ist eine Anforderung, \(X von A nach B zu verschieben, und die Zustandsuebergangsfunktion reduziert den Wert in As Konto um \)X und erhoeht den Wert in Bs Konto um \(X. Wenn As Konto von vornherein weniger als \)X hat, gibt die Zustandsuebergangsfunktion einen Fehler zurueck.

Ethereum state transition diagram showing how transactions transform blockchain state

Der "Zustand" in Bitcoin ist die Sammlung aller Coins (technisch "nicht ausgegebene Transaktionsausgaben" oder UTXO), die gepraegt und noch nicht ausgegeben wurden, wobei jedes UTXO eine Denomination und einen Eigentuemer hat (definiert durch eine 20-Byte-Adresse, die im Wesentlichen ein kryptographischer oeffentlicher Schluessel ist). Eine Transaktion enthaelt eine oder mehrere Eingaben, wobei jede Eingabe eine Referenz auf ein existierendes UTXO und eine kryptographische Signatur enthaelt, die durch den mit der Adresse des Eigentuemers verknuepften privaten Schluessel erzeugt wurde, und eine oder mehrere Ausgaben, wobei jede Ausgabe ein neues UTXO enthaelt, das dem Zustand hinzugefuegt werden soll.

Die Zustandsuebergangsfunktion APPLY(S,TX) - S' kann ungefaehr wie folgt definiert werden:

  1. Fuer jede Eingabe in TX: Wenn das referenzierte UTXO nicht in S enthalten ist, Fehler zurueckgeben.
  2. Wenn die bereitgestellte Signatur nicht mit dem Eigentuemer des UTXO uebereinstimmt, Fehler zurueckgeben.
  3. Wenn die Summe der Denominationen aller Eingabe-UTXO kleiner ist als die Summe der Denominationen aller Ausgabe-UTXO, Fehler zurueckgeben.
  4. S zurueckgeben, wobei alle Eingabe-UTXO entfernt und alle Ausgabe-UTXO hinzugefuegt werden.

Die erste Haelfte des ersten Schritts verhindert, dass Transaktionssender Coins ausgeben, die nicht existieren, die zweite Haelfte des ersten Schritts verhindert, dass Transaktionssender die Coins anderer Leute ausgeben, und der zweite Schritt erzwingt die Werterhaltung. Um dies fuer eine Zahlung zu verwenden, ist das Protokoll wie folgt: Angenommen, Alice moechte 11,7 BTC an Bob senden. Zunaechst sucht Alice nach einem Satz verfuegbarer UTXO, die sie besitzt und die insgesamt mindestens 11,7 BTC ergeben. Realistischerweise wird Alice nicht genau 11,7 BTC bekommen koennen; sagen wir, das Kleinste, was sie bekommen kann, ist 6+4+2=12. Sie erstellt dann eine Transaktion mit diesen drei Eingaben und zwei Ausgaben. Die erste Ausgabe wird 11,7 BTC mit Bobs Adresse als Eigentuemer sein, und die zweite Ausgabe wird das verbleibende Wechselgeld von 0,3 BTC sein, dessen Eigentuemer Alice selbst ist.

Mining

Se tivessemos acesso a um servico centralizado confiavel, este sistema seria trivial de implementar; poderia simplesmente ser codificado exatamente como descrito, usando o disco rigido de um servidor centralizado para rastrear o estado. No entanto, com o Bitcoin estamos tentando construir um sistema de moeda descentralizado, entao precisaremos combinar o sistema de transicao de estado com um sistema de consenso para garantir que todos concordem com a ordem das transacoes. O processo de consenso descentralizado do Bitcoin requer que os nos na rede tentem continuamente produzir pacotes de transacoes chamados "blocos". A rede e projetada para produzir aproximadamente um bloco a cada dez minutos, com cada bloco contendo um carimbo de tempo, um nonce, uma referencia ao (ou seja, hash do) bloco anterior e uma lista de todas as transacoes que ocorreram desde o bloco anterior.

Ethereum block structure showing linked blocks with timestamps nonces and transactions

Com o tempo, isso cria uma "blockchain" persistente e em constante crescimento que se atualiza constantemente para representar o estado mais recente do livro-razao do Bitcoin. O algoritmo para verificar se um bloco e valido, expresso neste paradigma, e o seguinte:

  1. Verificar se o bloco anterior referenciado pelo bloco existe e e valido.
  2. Verificar que o carimbo de tempo do bloco e maior que o do bloco anterior e menor que 2 horas no futuro.
  3. Verificar que o proof of work do bloco e valido.
  4. Seja S o estado no final do bloco anterior.
  5. Suponha que TX e a lista de transacoes do bloco com n transacoes. Para todo i em 0...n-1, definir S = APPLY(S,TX[i]). Se qualquer aplicacao retornar um erro, sair e retornar falso.
  6. Retornar verdadeiro e registrar S como o estado no final deste bloco.

Essencialmente, cada transacao no bloco deve fornecer uma transicao de estado valida do que era o estado canonico antes da transacao ser executada para algum novo estado. Note que o estado nao esta codificado no bloco de nenhuma forma; e puramente uma abstracao a ser lembrada pelo no validador e so pode ser calculada (de forma segura) para qualquer bloco comecando a partir do estado genesis e aplicando sequencialmente cada transacao em cada bloco.

O minerador e recompensado por seu trabalho computacional com bitcoins recem-criados mais as taxas de transacao. O processo de mineracao funciona da seguinte forma: os mineradores pegam o cabecalho do bloco e fazem hash dele repetidamente com diferentes valores de nonce ate encontrar um hash que esteja abaixo de um certo alvo de dificuldade. Quando um minerador encontra tal hash, transmite o bloco para a rede, e outros nos verificam que o hash e valido e que todas as transacoes no bloco sao validas. O alvo de dificuldade e ajustado automaticamente pelo protocolo a cada 2016 blocos (aproximadamente duas semanas) para garantir que os blocos sejam produzidos a uma taxa aproximadamente constante.

Note que a longo prazo, a seguranca da blockchain depende dos mineradores terem um incentivo financeiro para se comportar honestamente. Se um atacante controlar mais de 50% do poder de mineracao da rede, ele pode potencialmente executar um "ataque de 51%" criando uma blockchain alternativa que cresce mais rapido que a cadeia honesta. No entanto, tal ataque exigiria enormes recursos computacionais e provavelmente resultaria nas recompensas de mineracao do atacante se tornando sem valor a medida que a rede perdesse confianca na integridade da blockchain.

Mining

Haetten wir Zugang zu einem vertrauenswuerdigen zentralisierten Dienst, waere dieses System trivial zu implementieren; es koennte einfach genau wie beschrieben programmiert werden, wobei die Festplatte eines zentralen Servers verwendet wuerde, um den Zustand zu verfolgen. Mit Bitcoin versuchen wir jedoch, ein dezentrales Waehrungssystem aufzubauen, daher muessen wir das Zustandstransaktionssystem mit einem Konsenssystem kombinieren, um sicherzustellen, dass alle sich ueber die Reihenfolge der Transaktionen einig sind. Bitcoins dezentraler Konsensprozess erfordert, dass Knoten im Netzwerk kontinuierlich versuchen, Pakete von Transaktionen zu erstellen, die "Bloecke" genannt werden. Das Netzwerk soll ungefaehr alle zehn Minuten einen Block produzieren, wobei jeder Block einen Zeitstempel, einen Nonce, eine Referenz auf den (d.h. den Hash des) vorherigen Block und eine Liste aller Transaktionen enthaelt, die seit dem vorherigen Block stattgefunden haben.

Ethereum block structure showing linked blocks with timestamps nonces and transactions

Im Laufe der Zeit entsteht dadurch eine bestaendige, staendig wachsende "Blockchain", die sich kontinuierlich aktualisiert, um den neuesten Zustand des Bitcoin-Hauptbuchs darzustellen. Der Algorithmus zur Ueberpruefung, ob ein Block gueltig ist, ausdrueckt in diesem Paradigma, lautet wie folgt:

  1. Pruefen, ob der vom Block referenzierte vorherige Block existiert und gueltig ist.
  2. Pruefen, dass der Zeitstempel des Blocks groesser ist als der des vorherigen Blocks und weniger als 2 Stunden in der Zukunft liegt.
  3. Pruefen, dass der Proof of Work des Blocks gueltig ist.
  4. Sei S der Zustand am Ende des vorherigen Blocks.
  5. Angenommen, TX ist die Transaktionsliste des Blocks mit n Transaktionen. Fuer alle i in 0...n-1, setze S = APPLY(S,TX[i]). Wenn eine Anwendung einen Fehler zurueckgibt, beenden und falsch zurueckgeben.
  6. Wahr zurueckgeben und S als Zustand am Ende dieses Blocks registrieren.

Im Wesentlichen muss jede Transaktion im Block einen gueltigen Zustandsuebergang vom kanonischen Zustand vor der Ausfuehrung der Transaktion zu einem neuen Zustand liefern. Beachten Sie, dass der Zustand in keiner Weise im Block kodiert ist; er ist rein eine Abstraktion, die vom validierenden Knoten gespeichert wird und nur (sicher) fuer jeden Block berechnet werden kann, indem man vom Genesis-Zustand ausgeht und sequenziell jede Transaktion in jedem Block anwendet.

Der Miner wird fuer seine Rechenarbeit mit neu erzeugten Bitcoins plus Transaktionsgebuehren belohnt. Der Mining-Prozess funktioniert wie folgt: Miner nehmen den Block-Header und hashen ihn wiederholt mit verschiedenen Nonce-Werten, bis sie einen Hash finden, der unter einem bestimmten Schwierigkeitsziel liegt. Wenn ein Miner einen solchen Hash findet, verbreitet er den Block im Netzwerk, und andere Knoten verifizieren, dass der Hash gueltig ist und dass alle Transaktionen im Block gueltig sind. Das Schwierigkeitsziel wird automatisch vom Protokoll alle 2016 Bloecke (ungefaehr zwei Wochen) angepasst, um sicherzustellen, dass Bloecke mit einer ungefaehr konstanten Rate produziert werden.

Beachten Sie, dass langfristig die Sicherheit der Blockchain davon abhaengt, dass Miner einen finanziellen Anreiz haben, sich ehrlich zu verhalten. Wenn ein Angreifer mehr als 50% der Mining-Leistung des Netzwerks kontrolliert, kann er potenziell einen "51%-Angriff" ausfuehren, indem er eine alternative Blockchain erstellt, die schneller waechst als die ehrliche Kette. Ein solcher Angriff wuerde jedoch enorme Rechenressourcen erfordern und wuerde wahrscheinlich dazu fuehren, dass die Mining-Belohnungen des Angreifers wertlos werden, da das Netzwerk das Vertrauen in die Integritaet der Blockchain verlieren wuerde.

Merkle Trees

Merkle trees sao uma estrutura de dados fundamental utilizada nos blocos do Bitcoin para permitir a verificacao eficiente e segura da inclusao de transacoes. Um Merkle tree e uma arvore binaria de hashes onde os nos folha contem hashes de transacoes individuais, e cada no interior contem o hash de seus dois filhos, construindo-se recursivamente ate um unico hash raiz que e armazenado no cabecalho do bloco. Essa estrutura hierarquica permite que qualquer pessoa verifique que uma transacao especifica esta incluida em um bloco baixando apenas o ramo do Merkle tree — a cadeia de hashes desde a transacao ate a raiz — em vez de baixar todas as transacoes do bloco.

Simplified Payment Verification using Merkle tree branch proofs for transaction verification

Os ganhos de eficiencia sao substanciais: enquanto um no completo do Bitcoin deve armazenar toda a blockchain (aproximadamente 15GB em 2013), um no de verificacao de pagamento simplificada (SPV) so precisa baixar os cabecalhos dos blocos contendo as raizes do Merkle tree, exigindo apenas 4MB de dados. Para verificar uma transacao, um no SPV solicita o ramo do Merkle tree aos nos completos, o que requer apenas O(log n) dados onde n e o numero de transacoes em um bloco. Essa escalabilidade logaritmica torna viavel executar clientes leves em dispositivos moveis e ambientes com recursos limitados.

O uso de Merkle trees pelo Bitcoin demonstra um principio-chave: estruturas criptograficas podem reduzir drasticamente os requisitos de confianca e recursos para participar de uma rede descentralizada. Esse mesmo principio fundamenta o design do Ethereum, onde Merkle trees sao usados nao apenas para transacoes, mas tambem para armazenamento de estado e recibos, permitindo protocolos de clientes leves ainda mais sofisticados.

Merkle Trees

Merkle-Baeume sind eine fundamentale Datenstruktur, die in Bitcoin-Bloecken verwendet wird, um eine effiziente und sichere Verifizierung der Transaktionsinklusion zu ermoeglichen. Ein Merkle-Baum ist ein binaerer Baum von Hashes, bei dem die Blattknoten Hashes einzelner Transaktionen enthalten und jeder innere Knoten den Hash seiner beiden Kinder enthaelt, wobei rekursiv bis zu einem einzigen Wurzel-Hash aufgebaut wird, der im Block-Header gespeichert ist. Diese hierarchische Struktur ermoeglicht es jedem zu verifizieren, dass eine bestimmte Transaktion in einem Block enthalten ist, indem nur der Merkle-Zweig heruntergeladen wird — die Kette von Hashes von der Transaktion bis zur Wurzel — anstatt alle Transaktionen im Block herunterzuladen.

Simplified Payment Verification using Merkle tree branch proofs for transaction verification

Die Effizienzgewinne sind erheblich: Waehrend ein vollstaendiger Bitcoin-Knoten die gesamte Blockchain speichern muss (etwa 15 GB Stand 2013), muss ein Knoten fuer vereinfachte Zahlungsverifizierung (SPV) nur Block-Header mit Merkle-Wurzeln herunterladen, was lediglich 4 MB Daten erfordert. Um eine Transaktion zu verifizieren, fordert ein SPV-Knoten den Merkle-Zweig von vollstaendigen Knoten an, was nur O(log n) Daten erfordert, wobei n die Anzahl der Transaktionen in einem Block ist. Diese logarithmische Skalierung macht es moeglich, leichtgewichtige Clients auf mobilen Geraeten und in ressourcenarmen Umgebungen auszufuehren.

Bitcoins Verwendung von Merkle-Baeumen demonstriert ein Schluesselprinzip: Kryptographische Strukturen koennen die Vertrauens- und Ressourcenanforderungen fuer die Teilnahme an einem dezentralen Netzwerk drastisch reduzieren. Dasselbe Prinzip liegt dem Design von Ethereum zugrunde, wo Merkle-Baeume nicht nur fuer Transaktionen, sondern auch fuer Zustands- und Quittungsspeicherung verwendet werden, was noch ausgefeiltere Light-Client-Protokolle ermoeglicht.

Alternative Blockchain Applications

O sucesso da blockchain do Bitcoin inspirou inumeras tentativas de estender o conceito alem da simples moeda. Namecoin, lancado em 2010, foi um dos primeiros exemplos — um banco de dados descentralizado de registro de nomes construido sobre uma blockchain, permitindo que os usuarios registrassem nomes em um espaco de nomes distribuido que nenhuma autoridade central poderia censurar ou revogar. Os colored coins surgiram como uma forma de representar ativos alternativos na blockchain do Bitcoin "marcando" saidas de transacao especificas para representar a propriedade de ativos do mundo real, acoes de empresas ou outras criptomoedas. Os metacoins e metaprotocolos como Mastercoin (posteriormente Omni) adicionaram funcionalidade extra sobre o Bitcoin codificando dados adicionais nas transacoes do Bitcoin e construindo regras de protocolo separadas por cima.

No entanto, todas essas abordagens sofriam de limitacoes fundamentais impostas pela arquitetura do Bitcoin. A linguagem de scripting do Bitcoin e intencionalmente restrita — nao pode acessar o estado da blockchain, carece de loops e fluxo de controle complexo, e fornece introspecao limitada sobre os valores das transacoes. Construir aplicacoes sofisticadas exigia solucoes alternativas desajeitadas: codificar metadados em campos de transacao que nunca foram destinados para esse proposito, depender de infraestrutura fora da cadeia para logica complexa, ou aceitar limitacoes severas no que o protocolo poderia realizar.

Essas restricoes motivaram a busca por uma plataforma blockchain de proposito mais geral. Em vez de construir mais um protocolo de proposito especial sobre a base limitada do Bitcoin, o Ethereum adota uma abordagem diferente: fornecer uma blockchain com uma linguagem de programacao Turing-completa incorporada, permitindo que qualquer pessoa escreva smart contracts e aplicacoes descentralizadas com regras arbitrarias para propriedade, formatos de transacao e funcoes de transicao de estado.

Alternative Blockchain Applications

Der Erfolg von Bitcoins Blockchain inspirierte zahlreiche Versuche, das Konzept ueber einfache Waehrung hinaus zu erweitern. Namecoin, gestartet 2010, war eines der fruehesten Beispiele — eine dezentrale Namensregistrierungsdatenbank, die auf einer Blockchain aufgebaut ist und es Benutzern ermoeglicht, Namen in einem verteilten Namensraum zu registrieren, den keine zentrale Behoerde zensieren oder widerrufen konnte. Colored Coins entstanden als Moeglichkeit, alternative Vermoegenswerte auf der Bitcoin-Blockchain darzustellen, indem bestimmte Transaktionsausgaben "markiert" wurden, um Eigentum an realen Vermoegenswerten, Unternehmensanteilen oder anderen Kryptowaehrungen zu repraesentieren. Metacoins und Meta-Protokolle wie Mastercoin (spaeter Omni) fueegten zusaetzliche Funktionalitaet ueber Bitcoin hinzu, indem sie zusaetzliche Daten in Bitcoin-Transaktionen kodierten und separate Protokollregeln darauf aufbauten.

Allerdings litten all diese Ansaetze unter fundamentalen Einschraenkungen, die durch Bitcoins Architektur auferlegt wurden. Die Bitcoin-Skriptsprache ist absichtlich eingeschraenkt — sie kann nicht auf den Blockchain-Zustand zugreifen, es fehlen Schleifen und komplexe Kontrollflussstrukturen, und sie bietet begrenzte Introspektion in Transaktionswerte. Der Aufbau anspruchsvoller Anwendungen erforderte unbeholfene Umgehungsloesungen: Kodierung von Metadaten in Transaktionsfeldern, die nie dafuer vorgesehen waren, Abhaengigkeit von Off-Chain-Infrastruktur fuer komplexe Logik oder Akzeptanz schwerwiegender Einschraenkungen dessen, was das Protokoll erreichen konnte.

Diese Einschraenkungen motivierten die Suche nach einer allgemeineren Blockchain-Plattform. Anstatt ein weiteres Spezialprotokoll auf Bitcoins begrenztem Fundament aufzubauen, verfolgt Ethereum einen anderen Ansatz: die Bereitstellung einer Blockchain mit einer integrierten Turing-vollstaendigen Programmiersprache, die es jedem ermoeglicht, Smart Contracts und dezentrale Anwendungen mit beliebigen Regeln fuer Eigentum, Transaktionsformate und Zustandsuebergangsfunktionen zu schreiben.

Scripting

Bitcoin Script, a linguagem usada para definir as condicoes de gasto das transacoes do Bitcoin, e intencionalmente projetada com severas limitacoes. Nao e Turing-completa — notavelmente, carece de loops e estruturas complexas de fluxo de controle. A linguagem opera como um ambiente de execucao simples baseado em pilha onde as operacoes empurram e extraem valores, avaliam condicoes criptograficas e finalmente retornam verdadeiro ou falso para determinar se uma transacao e valida. Embora essa simplicidade forneca beneficios de seguranca e facilite a analise formal, tambem torna impossivel implementar muitos tipos de aplicacoes.

Essas limitacoes se dividem em tres categorias principais. Primeiro, a falta de completude de Turing impede a implementacao de maquinas de estado complexas, arvores de decisao ou qualquer algoritmo que requeira iteracao. Segundo, a cegueira de valor significa que os scripts nao podem especificar controle detalhado sobre as quantias de saque — um UTXO so pode ser gasto em sua totalidade, com o troco enviado para uma nova saida. Um script nao pode, por exemplo, limitar saques a um maximo de X por dia enquanto deixa o restante bloqueado. Terceiro, a falta de consciencia do estado da blockchain significa que os UTXO estao gastos ou nao gastos sem estados intermediarios, tornando impossivel implementar contratos de multiplas etapas puramente na cadeia.

Essas restricoes tornam aplicacoes sofisticadas como organizacoes autonomas descentralizadas, carteiras de poupanca com limites de saque, exchanges descentralizadas ou mercados de predicao impossiveis ou exigem mecanismos desajeitados fora da cadeia. Um contrato financeiro avancado pode exigir acesso a dados de mercado, a capacidade de manter estado interno atraves de multiplas transacoes e logica condicional complexa — nada do que o Bitcoin Script pode fornecer. O Ethereum elimina essas limitacoes fornecendo uma linguagem Turing-completa com acesso completo ao estado da blockchain.

Scripting

Bitcoin Script, die Sprache zur Definition von Ausgabebedingungen fuer Bitcoin-Transaktionen, ist absichtlich mit schwerwiegenden Einschraenkungen entworfen. Sie ist nicht Turing-vollstaendig — am auffaelligsten fehlen Schleifen und komplexe Kontrollflussstrukturen. Die Sprache funktioniert als einfache stapelbasierte Ausfuehrungsumgebung, in der Operationen Werte auf den Stapel legen und entfernen, kryptographische Bedingungen auswerten und letztendlich wahr oder falsch zurueckgeben, um zu bestimmen, ob eine Transaktion gueltig ist. Waehrend diese Einfachheit Sicherheitsvorteile bietet und formale Analyse erleichtert, macht sie auch viele Arten von Anwendungen unmoeglich zu implementieren.

Diese Einschraenkungen fallen in drei Hauptkategorien. Erstens verhindert das Fehlen von Turing-Vollstaendigkeit die Implementierung komplexer Zustandsmaschinen, Entscheidungsbaeume oder jedes Algorithmus, der Iteration erfordert. Zweitens bedeutet Wert-Blindheit, dass Skripte keine feingranulare Kontrolle ueber Abhebungsbetraege festlegen koennen — ein UTXO kann nur in seiner Gesamtheit ausgegeben werden, wobei Wechselgeld an eine neue Ausgabe gesendet wird. Ein Skript kann beispielsweise Abhebungen nicht auf maximal X pro Tag begrenzen, waehrend der Rest gesperrt bleibt. Drittens bedeutet das Fehlen von Blockchain-Zustandsbewusstsein, dass UTXO entweder ausgegeben oder nicht ausgegeben sind, ohne Zwischenzustaende, was mehrstufige Vertraege rein On-Chain unmoeglich macht.

Diese Einschraenkungen machen anspruchsvolle Anwendungen wie dezentrale autonome Organisationen, Sparwallets mit Abhebungslimits, dezentrale Boersen oder Vorhersagemaerkte entweder unmoeglich oder erfordern unbeholfene Off-Chain-Mechanismen. Ein fortgeschrittener Finanzvertrag koennte Zugang zu Marktdaten benoetigen, die Faehigkeit, einen internen Zustand ueber mehrere Transaktionen hinweg aufrechtzuerhalten, und komplexe bedingte Logik — nichts davon kann Bitcoin Script bereitstellen. Ethereum beseitigt diese Einschraenkungen, indem es eine Turing-vollstaendige Sprache mit vollem Zugriff auf den Blockchain-Zustand bereitstellt.

Ethereum

O objetivo fundamental do Ethereum e fornecer uma blockchain com uma linguagem de programacao Turing-completa incorporada que permita a qualquer pessoa escrever smart contracts e aplicacoes descentralizadas onde possam criar suas proprias regras arbitrarias para propriedade, formatos de transacao e funcoes de transicao de estado. Em vez de projetar um protocolo para aplicacoes especificas como moeda, registro de nomes ou negociacao de ativos, o Ethereum fornece uma camada fundacional — uma plataforma de computacao distribuida baseada em blockchain que os desenvolvedores podem usar para construir qualquer aplicacao que possam imaginar.

A arquitetura difere fundamentalmente do modelo UTXO do Bitcoin. O Ethereum usa um sistema baseado em contas onde o estado da blockchain consiste em um mapeamento de enderecos para objetos de conta. Cada conta tem um saldo, um contador de transacoes (nonce), e para contas de contrato, codigo associado e armazenamento. A plataforma inclui uma linguagem de programacao Turing-completa incorporada para escrever codigo de contrato que e executado na Maquina Virtual Ethereum (EVM), um ambiente de execucao baseado em pilha que processa transacoes e transicoes de estado.

Essa generalidade permite uma vasta gama de aplicacoes: criptomoedas alternativas com regras de emissao personalizadas, derivativos financeiros e stablecoins, sistemas de identidade e reputacao, armazenamento de arquivos descentralizado, organizacoes autonomas descentralizadas (DAOs), e muito mais. O whitepaper enfatiza que o Ethereum nao e otimizado para nenhum caso de uso particular, mas sim fornece os blocos de construcao fundamentais — contas, transacoes, uma linguagem Turing-completa e execucao medida por gas — que os desenvolvedores podem combinar para criar qualquer aplicacao que o ecossistema demande.

Ethereum

Das grundlegende Ziel von Ethereum ist die Bereitstellung einer Blockchain mit einer integrierten Turing-vollstaendigen Programmiersprache, die es jedem ermoeglicht, Smart Contracts und dezentrale Anwendungen zu schreiben, in denen sie ihre eigenen beliebigen Regeln fuer Eigentum, Transaktionsformate und Zustandsuebergangsfunktionen erstellen koennen. Anstatt ein Protokoll fuer spezifische Anwendungen wie Waehrung, Namensregistrierung oder Vermoegenswerthandel zu entwerfen, stellt Ethereum eine Grundschicht bereit — eine Blockchain-basierte verteilte Computerplattform, die Entwickler nutzen koennen, um jede Anwendung zu bauen, die sie sich vorstellen koennen.

Die Architektur unterscheidet sich grundlegend von Bitcoins UTXO-Modell. Ethereum verwendet ein kontobasiertes System, bei dem der Blockchain-Zustand aus einer Zuordnung von Adressen zu Kontoobjekten besteht. Jedes Konto hat ein Guthaben, einen Transaktionszaehler (Nonce) und fuer Vertragskonten zugehoerigen Code und Speicher. Die Plattform enthaelt eine integrierte Turing-vollstaendige Programmiersprache zum Schreiben von Vertragscode, der in der Ethereum Virtual Machine (EVM) ausgefuehrt wird, einer stapelbasierten Ausfuehrungsumgebung, die Transaktionen und Zustandsuebergaenge verarbeitet.

Diese Allgemeinheit ermoeglicht eine breite Palette von Anwendungen: alternative Kryptowaehrungen mit benutzerdefinierten Ausgaberegeln, Finanzderivate und Stablecoins, Identitaets- und Reputationssysteme, dezentraler Dateispeicher, dezentrale autonome Organisationen (DAOs) und vieles mehr. Das Whitepaper betont, dass Ethereum nicht fuer einen bestimmten Anwendungsfall optimiert ist, sondern die grundlegenden Bausteine bereitstellt — Konten, Transaktionen, eine Turing-vollstaendige Sprache und Gas-gemessene Ausfuehrung — die Entwickler kombinieren koennen, um die Anwendungen zu erstellen, die das Oekosystem erfordert.

Ethereum Accounts

No Ethereum, o estado e composto por contas, e ha dois tipos fundamentais. As contas de propriedade externa (EOAs) sao controladas por chaves privadas e nao possuem codigo associado — representam usuarios humanos ou entidades externas interagindo com a blockchain. As contas de contrato sao controladas pelo seu codigo de contrato e sao ativadas quando recebem uma mensagem ou transacao. Ambos os tipos compartilham uma estrutura comum: cada conta tem um nonce (um contador usado para garantir que cada transacao so possa ser processada uma vez), um saldo de ether, e para os contratos especificamente, codigo de contrato e armazenamento persistente.

Ether e a criptomoeda interna principal do Ethereum, servindo tanto como meio de transferencia de valor quanto como unidade fundamental para pagar taxas de transacao (gas). Diferentemente do modelo UTXO do Bitcoin onde o valor esta distribuido entre multiplas saidas nao gastas, as contas do Ethereum mantem um saldo simples que aumenta quando recebem ether e diminui quando o enviam. Esse modelo baseado em contas simplifica muitos tipos de aplicacoes, particularmente aquelas que requerem estado persistente ou controle de acesso complexo, embora introduza diferentes consideracoes de seguranca comparado com a abordagem do Bitcoin.

A distincao entre EOAs e contas de contrato e crucial para entender o funcionamento do Ethereum. As EOAs podem iniciar transacoes criando e assinando mensagens com suas chaves privadas, pagando taxas de gas para que suas transacoes sejam incluidas em blocos. As contas de contrato nao podem iniciar transacoes por si mesmas, mas podem enviar mensagens para outros contratos em resposta ao recebimento de uma transacao ou mensagem, permitindo cadeias complexas de execucao onde uma unica transacao externa desencadeia multiplas interacoes de contrato para contrato.

Ethereum Accounts

In Ethereum besteht der Zustand aus Konten, und es gibt zwei grundlegende Typen. Extern kontrollierte Konten (EOAs) werden durch private Schluessel kontrolliert und haben keinen zugehoerigen Code — sie repraesentieren menschliche Benutzer oder externe Entitaeten, die mit der Blockchain interagieren. Vertragskonten werden durch ihren Vertragscode kontrolliert und werden aktiviert, wenn sie eine Nachricht oder Transaktion empfangen. Beide Typen teilen eine gemeinsame Struktur: Jedes Konto hat eine Nonce (einen Zaehler, der sicherstellt, dass jede Transaktion nur einmal verarbeitet werden kann), ein Ether-Guthaben und fuer Vertraege speziell Vertragscode und persistenten Speicher.

Ether ist die primaere interne Kryptowaehrung von Ethereum und dient sowohl als Mittel zur Wertuebertragung als auch als grundlegende Einheit zur Zahlung von Transaktionsgebuehren (Gas). Im Gegensatz zu Bitcoins UTXO-Modell, bei dem der Wert ueber mehrere nicht ausgegebene Ausgaben verteilt ist, fuehren Ethereum-Konten ein einfaches Guthaben, das steigt, wenn sie Ether empfangen, und sinkt, wenn sie Ether senden. Dieses kontobasierte Modell vereinfacht viele Arten von Anwendungen, insbesondere solche, die persistenten Zustand oder komplexe Zugriffskontrolle erfordern, obwohl es im Vergleich zu Bitcoins Ansatz andere Sicherheitsueberlegungen einfuehrt.

Die Unterscheidung zwischen EOAs und Vertragskonten ist entscheidend fuer das Verstaendnis der Funktionsweise von Ethereum. EOAs koennen Transaktionen initiieren, indem sie Nachrichten mit ihren privaten Schluesseln erstellen und signieren und Gas-Gebuehren zahlen, damit ihre Transaktionen in Bloecke aufgenommen werden. Vertragskonten koennen selbst keine Transaktionen initiieren, koennen aber Nachrichten an andere Vertraege senden, wenn sie eine Transaktion oder Nachricht empfangen, was komplexe Ausfuehrungsketten ermoeglicht, bei denen eine einzelne externe Transaktion mehrere Vertrag-zu-Vertrag-Interaktionen ausloest.

Messages and Transactions

As transacoes no Ethereum sao pacotes de dados assinados criados por contas de propriedade externa e transmitidos para a rede. Uma transacao contem o endereco do destinatario, uma assinatura criptografica provando a identidade do remetente, a quantidade de ether a transferir, um campo de dados opcional (crucial para interagir com contratos), STARTGAS (o numero maximo de passos computacionais que a transacao pode realizar) e GASPRICE (a taxa por passo computacional que o remetente esta disposto a pagar). Os mineradores coletam essas transacoes, as validam, as executam e as incluem em blocos, recebendo as taxas de gas como compensacao.

As mensagens sao conceitualmente similares as transacoes, mas sao produzidas por contratos em vez de atores externos. Quando o codigo de um contrato e executado, ele pode enviar mensagens para outros contratos — essas mensagens internas contem o remetente (o endereco do contrato), o destinatario, uma quantidade de ether a transferir, uma carga de dados opcional e um limite de STARTGAS. As mensagens permitem a comunicacao de contrato para contrato, possibilitando que aplicacoes complexas sejam construidas a partir de multiplos contratos interagindo entre si em vez de programas monoliticos.

O mecanismo de gas e crucial para prevenir abusos: cada passo computacional, operacao de armazenamento e byte de dados em uma transacao consome gas. Se uma transacao ficar sem gas antes de ser concluida, todas as mudancas de estado sao revertidas (exceto o pagamento de gas ao minerador), prevenindo que loops infinitos ou computacao excessiva paralisem a rede. O remetente especifica tanto o orcamento total de gas (STARTGAS) quanto o preco que esta disposto a pagar por unidade (GASPRICE), e qualquer gas nao utilizado e reembolsado apos a execucao ser concluida.

Messages and Transactions

Transaktionen in Ethereum sind signierte Datenpakete, die von extern kontrollierten Konten erstellt und an das Netzwerk gesendet werden. Eine Transaktion enthaelt die Empfaengeradresse, eine kryptographische Signatur, die die Identitaet des Absenders beweist, die Menge an Ether zur Uebertragung, ein optionales Datenfeld (entscheidend fuer die Interaktion mit Vertraegen), STARTGAS (die maximale Anzahl von Berechnungsschritten, die die Transaktion durchfuehren darf) und GASPRICE (die Gebuehr pro Berechnungsschritt, die der Absender zu zahlen bereit ist). Miner sammeln diese Transaktionen, validieren sie, fuehren sie aus und nehmen sie in Bloecke auf, wobei sie die Gas-Gebuehren als Verguetung erhalten.

Nachrichten sind konzeptionell aehnlich wie Transaktionen, werden aber von Vertraegen statt von externen Akteuren erzeugt. Wenn der Code eines Vertrags ausgefuehrt wird, kann er Nachrichten an andere Vertraege senden — diese internen Nachrichten enthalten den Absender (die Vertragsadresse), den Empfaenger, eine Menge Ether zur Uebertragung, eine optionale Datennutzlast und ein STARTGAS-Limit. Nachrichten ermoeglichen die Vertrag-zu-Vertrag-Kommunikation und erlauben den Aufbau komplexer Anwendungen aus mehreren interagierenden Vertraegen statt aus monolithischen Programmen.

Der Gas-Mechanismus ist entscheidend zur Verhinderung von Missbrauch: Jeder Berechnungsschritt, jede Speicheroperation und jedes Datenbyte in einer Transaktion verbraucht Gas. Wenn einer Transaktion vor der Fertigstellung das Gas ausgeht, werden alle Zustandsaenderungen rueckgaengig gemacht (ausser der Gas-Zahlung an den Miner), was verhindert, dass Endlosschleifen oder uebermassige Berechnungen das Netzwerk lahmlegen. Der Absender gibt sowohl das gesamte Gas-Budget (STARTGAS) als auch den Preis an, den er pro Einheit zu zahlen bereit ist (GASPRICE), und ungenutztes Gas wird nach Abschluss der Ausfuehrung erstattet.

Ethereum State Transition Function

A funcao de transicao de estado do Ethereum APPLY(S,TX) - S' define como uma transacao transforma o estado da blockchain, e segue uma sequencia precisa de etapas. Primeiro, o sistema verifica a validade da transacao: verificando que a assinatura esta correta, confirmando que o nonce corresponde ao nonce da conta do remetente, e garantindo que o remetente tem saldo suficiente para pagar o custo inicial (STARTGAS x GASPRICE mais o valor enviado). Se qualquer verificacao falhar, a transacao e rejeitada antes que a execucao comece. Se valida, a taxa de transacao e deduzida da conta do remetente, o nonce do remetente e incrementado, e um contador de gas inicial e definido como STARTGAS menos uma taxa por byte para os dados da transacao.

Ethereum state transition function showing gas deduction value transfer and code execution

Em seguida, o sistema transfere o valor de ether especificado do remetente para o destinatario. Se o destinatario e uma conta de propriedade externa, isso completa a transacao. Se o destinatario e uma conta de contrato, o codigo do contrato e executado na Maquina Virtual Ethereum, consumindo gas para cada operacao ate que o codigo seja concluido com sucesso, o codigo pare explicitamente, ou o gas se esgote. Durante a execucao, o contrato pode ler e modificar seu armazenamento, enviar mensagens para outros contratos e criar novos contratos.

Finalmente, se a transferencia de valor falhou (saldo insuficiente) ou a execucao do codigo falhou (ficar sem gas ou encontrar um erro), todas as mudancas de estado sao revertidas — exceto que o remetente ainda paga as taxas de gas ao minerador pela computacao realizada. Se a execucao foi bem-sucedida, o gas restante e reembolsado ao remetente, e o gas consumido e enviado ao minerador como taxa. Esse mecanismo garante que os mineradores sejam compensados pela computacao enquanto previne que a execucao descontrolada consuma recursos ilimitados.

Ethereum State Transition Function

Die Ethereum-Zustandsuebergangsfunktion APPLY(S,TX) - S' definiert, wie eine Transaktion den Blockchain-Zustand transformiert, und folgt einer praezisen Abfolge von Schritten. Zuerst prueft das System die Transaktionsgueltigkeit: Es verifiziert die Korrektheit der Signatur, bestaetigt, dass die Nonce mit der Konto-Nonce des Absenders uebereinstimmt, und stellt sicher, dass der Absender ueber ausreichendes Guthaben verfuegt, um die Vorabkosten zu bezahlen (STARTGAS x GASPRICE plus den gesendeten Wert). Wenn eine Pruefung fehlschlaegt, wird die Transaktion vor Beginn der Ausfuehrung abgelehnt. Bei Gueltigkeit werden die Transaktionsgebuehren vom Konto des Absenders abgezogen, die Nonce des Absenders wird erhoeht, und ein anfaenglicher Gas-Zaehler wird auf STARTGAS minus einer Pro-Byte-Gebuehr fuer die Transaktionsdaten gesetzt.

Ethereum state transition function showing gas deduction value transfer and code execution

Als Naechstes uebertraegt das System den angegebenen Ether-Wert vom Absender an den Empfaenger. Wenn der Empfaenger ein extern kontrolliertes Konto ist, wird die Transaktion damit abgeschlossen. Wenn der Empfaenger ein Vertragskonto ist, wird der Code des Vertrags in der Ethereum Virtual Machine ausgefuehrt, wobei fuer jede Operation Gas verbraucht wird, bis entweder der Code erfolgreich abgeschlossen wird, der Code explizit anhaelt oder das Gas aufgebraucht ist. Waehrend der Ausfuehrung kann der Vertrag seinen Speicher lesen und aendern, Nachrichten an andere Vertraege senden und neue Vertraege erstellen.

Schliesslich werden, wenn die Wertuebertragung fehlgeschlagen ist (unzureichendes Guthaben) oder die Code-Ausfuehrung fehlgeschlagen ist (Gas aufgebraucht oder Fehler aufgetreten), alle Zustandsaenderungen rueckgaengig gemacht — mit der Ausnahme, dass der Absender immer noch Gas-Gebuehren an den Miner fuer die durchgefuehrte Berechnung zahlt. Bei erfolgreicher Ausfuehrung wird das verbleibende Gas an den Absender erstattet, und das verbrauchte Gas wird als Gebuehr an den Miner gesendet. Dieser Mechanismus stellt sicher, dass Miner fuer Berechnungen entschaedigt werden, waehrend unkontrollierte Ausfuehrung daran gehindert wird, unbegrenzte Ressourcen zu verbrauchen.

Code Execution

A Maquina Virtual Ethereum (EVM) e o ambiente de execucao onde o codigo dos contratos e executado — uma maquina virtual de baixo nivel baseada em pilha, similar em conceito a Maquina Virtual Java ou WebAssembly. O codigo do contrato e armazenado como uma sequencia de bytes, onde cada byte representa uma operacao (opcode) que a EVM pode executar. O modelo de execucao e deliberadamente simples e deterministico: cada no executando a EVM com o mesmo estado de entrada e transacao deve chegar ao mesmo estado de saida, garantindo o consenso atraves da rede.

A EVM fornece tres tipos distintos de armazenamento para computacao. A pilha (stack) e uma estrutura de ultimo a entrar, primeiro a sair (LIFO) limitada a 1024 elementos, usada para valores de operacao imediatos. A memoria (memory) e um array de bytes infinitamente expansivel que persiste apenas durante a duracao de uma unica chamada de mensagem e e reiniciada entre execucoes. O armazenamento (storage) e o armazem persistente de chave-valor permanentemente associado a cada conta de contrato, onde os contratos mantem seu estado de longo prazo entre transacoes. Esses tipos de armazenamento tem precos diferentes em gas — as operacoes de pilha e memoria sao baratas, enquanto as operacoes de armazenamento sao caras para prevenir o inchaamento da blockchain.

Durante a execucao, o codigo do contrato tem acesso a contexto crucial: pode ler o endereco do remetente da mensagem, a quantidade de ether enviada, a carga de dados fornecida pelo invocador, e propriedades a nivel de bloco como o numero do bloco atual, o carimbo de tempo e o endereco do minerador. O codigo pode retornar um array de bytes de saida ao invocador e pode enviar mensagens para outros contratos ou criar novos contratos. Esse modelo de execucao e Turing-completo — loops e fluxo de controle complexo sao possiveis — mas o mecanismo de gas garante que toda a computacao termine em tempo limitado, resolvendo o problema da parada de forma economica em vez de atraves de restricoes da linguagem.

Code Execution

Die Ethereum Virtual Machine (EVM) ist die Laufzeitumgebung, in der Vertragscode ausgefuehrt wird — eine niedrigstufige, stapelbasierte virtuelle Maschine, die konzeptionell der Java Virtual Machine oder WebAssembly aehnelt. Vertragscode wird als Byte-Sequenz gespeichert, wobei jedes Byte eine Operation (Opcode) darstellt, die die EVM ausfuehren kann. Das Ausfuehrungsmodell ist bewusst einfach und deterministisch: Jeder Knoten, der die EVM mit demselben Eingabezustand und derselben Transaktion ausfuehrt, muss zum selben Ausgabezustand gelangen, was Konsens im Netzwerk gewaehrleistet.

Die EVM stellt drei verschiedene Speichertypen fuer Berechnungen bereit. Der Stapel ist eine Last-In-First-Out (LIFO)-Struktur, die auf 1024 Elemente begrenzt ist und fuer unmittelbare Operationswerte verwendet wird. Der Arbeitsspeicher ist ein unendlich erweiterbares Byte-Array, das nur fuer die Dauer eines einzelnen Nachrichtenaufrufs besteht und zwischen Ausfuehrungen zurueckgesetzt wird. Der Speicher ist der persistente Schluessel-Wert-Speicher, der dauerhaft mit jedem Vertragskonto verbunden ist und in dem Vertraege ihren langfristigen Zustand ueber Transaktionen hinweg pflegen. Diese Speichertypen werden unterschiedlich in Gas bepreist — Stapel- und Arbeitsspeicheroperationen sind guenstig, waehrend Speicheroperationen teuer sind, um ein Aufblaehen der Blockchain zu verhindern.

Waehrend der Ausfuehrung hat Vertragscode Zugriff auf entscheidenden Kontext: Er kann die Adresse des Nachrichtenabsenders lesen, die Menge des gesendeten Ethers, die vom Aufrufer bereitgestellte Datennutzlast und Block-Level-Eigenschaften wie die aktuelle Blocknummer, den Zeitstempel und die Miner-Adresse. Der Code kann ein Ausgabe-Byte-Array an den Aufrufer zurueckgeben und kann Nachrichten an andere Vertraege senden oder neue Vertraege erstellen. Dieses Ausfuehrungsmodell ist Turing-vollstaendig — Schleifen und komplexer Kontrollfluss sind moeglich — aber der Gas-Mechanismus stellt sicher, dass alle Berechnungen in begrenzter Zeit terminieren und loest das Halteproblem oekonomisch statt durch Spracheinschraenkungen.

Blockchain and Mining

A blockchain do Ethereum e fundamentalmente similar a do Bitcoin, servindo como um banco de dados contendo cada transacao ja executada. No entanto, enquanto o Bitcoin armazena apenas uma lista de transacoes, o Ethereum armazena tanto a lista de transacoes quanto o estado mais recente. Cada bloco no Ethereum contem o hash do bloco anterior, uma raiz de estado (o hash raiz do Merkle Patricia trie representando o estado completo), uma raiz de transacoes, uma raiz de recibos (armazenando dados da execucao de transacoes), junto com valores de dificuldade, carimbo de tempo e nonce. O estado em si e um grande Merkle Patricia trie mapeando enderecos para objetos de conta, onde cada conta tem um saldo, nonce, codigo (se presente) e armazenamento.

Ethereum APPLY BLOCK function processing transactions and updating state

O Ethereum usa uma versao modificada do protocolo GHOST (Greedy Heaviest Observed Subtree) para abordar problemas de seguranca que surgem de tempos de bloco rapidos. Nos protocolos tradicionais de cadeia mais longa, blocos rapidos levam a altas taxas de obsolescencia, reduzindo a seguranca da rede e aumentando os riscos de centralizacao ja que grandes mineradores desperdicam menos computacao em blocos obsoletos. O GHOST inclui blocos obsoletos (chamados "tios" no Ethereum) no calculo de qual cadeia e mais longa, e fornece recompensas parciais aos blocos tio, incentivando mineradores a referencia-los. Isso permite ao Ethereum manter um tempo de bloco alvo de aproximadamente 12 segundos enquanto preserva a seguranca da rede.

O algoritmo de mineracao funciona de forma similar ao proof of work do Bitcoin, exigindo que os mineradores encontrem um nonce tal que o hash do bloco esteja abaixo de um certo alvo de dificuldade. No entanto, o algoritmo de mineracao de uso intensivo de memoria do Ethereum (Ethash) e projetado para ser resistente a ASIC, promovendo um ecossistema de mineracao mais descentralizado. A dificuldade se ajusta dinamicamente com base nos tempos de bloco para manter o alvo de ~12 segundos, garantindo uma producao de blocos consistente enquanto o protocolo GHOST fornece garantias de seguranca apesar dos tempos de bloco mais rapidos comparados com a media de 10 minutos do Bitcoin.

Blockchain and Mining

Die Ethereum-Blockchain ist grundsaetzlich aehnlich wie die von Bitcoin und dient als Datenbank, die jede jemals ausgefuehrte Transaktion enthaelt. Waehrend Bitcoin jedoch nur eine Transaktionsliste speichert, speichert Ethereum sowohl die Transaktionsliste als auch den aktuellsten Zustand. Jeder Block in Ethereum enthaelt den Hash des vorherigen Blocks, eine Zustandswurzel (den Wurzel-Hash des Merkle-Patricia-Tries, der den gesamten Zustand repraesentiert), eine Transaktionswurzel, eine Quittungswurzel (die Daten aus der Transaktionsausfuehrung speichert) sowie Schwierigkeits-, Zeitstempel- und Nonce-Werte. Der Zustand selbst ist ein grosser Merkle-Patricia-Trie, der Adressen auf Kontoobjekte abbildet, wobei jedes Konto ein Guthaben, eine Nonce, Code (falls vorhanden) und Speicher hat.

Ethereum APPLY BLOCK function processing transactions and updating state

Ethereum verwendet eine modifizierte Version des GHOST-Protokolls (Greedy Heaviest Observed Subtree), um Sicherheitsprobleme zu adressieren, die durch schnelle Blockzeiten entstehen. In traditionellen Laengste-Kette-Protokollen fuehren schnelle Bloecke zu hohen Veralterungsraten, was die Netzwerksicherheit verringert und Zentralisierungsrisiken erhoeht, da grosse Miner weniger Berechnung durch veraltete Bloecke verschwenden. GHOST bezieht veraltete Bloecke (in Ethereum "Onkel" genannt) in die Berechnung ein, welche Kette die laengste ist, und bietet teilweise Belohnungen fuer Onkel-Bloecke, was Miner ermutigt, diese zu referenzieren. Dies ermoeglicht es Ethereum, eine Ziel-Blockzeit von etwa 12 Sekunden beizubehalten und gleichzeitig die Netzwerksicherheit zu erhalten.

Der Mining-Algorithmus funktioniert aehnlich wie Bitcoins Proof-of-Work und erfordert, dass Miner eine Nonce finden, bei der der Hash des Blocks unter einem bestimmten Schwierigkeitsziel liegt. Allerdings ist Ethereums speicherintensiver Mining-Algorithmus (Ethash) darauf ausgelegt, ASIC-resistent zu sein und ein staerker dezentralisiertes Mining-Oekosystem zu foerdern. Die Schwierigkeit passt sich dynamisch basierend auf Blockzeiten an, um das Ziel von ~12 Sekunden beizubehalten, was eine konsistente Blockproduktion sicherstellt, waehrend das GHOST-Protokoll Sicherheitsgarantien trotz der schnelleren Blockzeiten im Vergleich zu Bitcoins durchschnittlichen 10 Minuten bietet.

Applications

As aplicacoes que podem ser construidas sobre o Ethereum se dividem em tres amplas categorias. A primeira categoria sao as aplicacoes financeiras, fornecendo aos usuarios formas mais poderosas de gerenciar e participar de contratos envolvendo seu dinheiro. Isso inclui sub-moedas, derivativos financeiros, contratos de hedge, carteiras de poupanca com limites de saque, testamentos que distribuem fundos automaticamente, e ate contratos de emprego que calculam pagamentos com base na verificacao de trabalho concluido. Essas aplicacoes aproveitam a programabilidade do Ethereum para criar instrumentos financeiros complexos que seriam impossiveis ou extremamente dificeis de implementar em sistemas tradicionais ou mesmo no Bitcoin.

A segunda categoria sao as aplicacoes semi-financeiras, onde o dinheiro esta envolvido, mas tambem ha um componente nao monetario substancial no que esta sendo feito. Um exemplo perfeito sao as recompensas auto-executaveis para solucoes de problemas computacionais. Alguem poderia publicar um problema computacional junto com uma recompensa, e o contrato poderia verificar automaticamente as solucoes enviadas e pagar a recompensa para a primeira resposta correta. Essa categoria faz a ponte entre financas puras e outros dominios, usando incentivos economicos para resolver problemas ou coordenar comportamento.

A terceira categoria sao as aplicacoes que nao tem nada a ver com dinheiro, como sistemas de votacao online e governanca descentralizada. Essas aplicacoes nao financeiras demonstram a flexibilidade do Ethereum como plataforma de proposito geral. Os exemplos incluem sistemas de nomes de dominio descentralizados como Namecoin, sistemas de reputacao, armazenamento de arquivos descentralizado e ferramentas de governanca organizacional. De todos esses tipos de aplicacoes, os sistemas de tokens surgiram como os mais comuns e fundamentais, servindo como blocos de construcao para muitas outras aplicacoes.

Applications

Die Anwendungen, die auf Ethereum aufgebaut werden koennen, fallen in drei breite Kategorien. Die erste Kategorie sind Finanzanwendungen, die Benutzern leistungsfaehigere Moeglichkeiten bieten, ihr Geld zu verwalten und Vertraege abzuschliessen. Dazu gehoeren Sub-Waehrungen, Finanzderivate, Absicherungsvertraege, Sparwallets mit Abhebungslimits, Testamente, die Gelder automatisch verteilen, und sogar Arbeitsvertraege, die Zahlungen basierend auf verifizierter Arbeitserfuellung berechnen. Diese Anwendungen nutzen die Programmierbarkeit von Ethereum, um komplexe Finanzinstrumente zu schaffen, die in traditionellen Systemen oder sogar auf Bitcoin unmoeglich oder extrem schwierig zu implementieren waeren.

Die zweite Kategorie sind halbfinanzielle Anwendungen, bei denen Geld involviert ist, aber auch eine wesentliche nicht-monetaere Komponente vorhanden ist. Ein perfektes Beispiel sind selbstdurchsetzende Kopfgelder fuer Loesungen von Berechnungsproblemen. Jemand koennte ein Berechnungsproblem zusammen mit einer Belohnung veroeffentlichen, und der Vertrag koennte eingereichte Loesungen automatisch verifizieren und das Kopfgeld an die erste korrekte Antwort auszahlen. Diese Kategorie verbindet reine Finanzen mit anderen Bereichen und nutzt wirtschaftliche Anreize zur Problemloesung oder Verhaltenskoordination.

Die dritte Kategorie sind Anwendungen, die ueberhaupt nichts mit Geld zu tun haben, wie Online-Abstimmungen und dezentrale Governance-Systeme. Diese nicht-finanziellen Anwendungen demonstrieren Ethereums Flexibilitaet als universelle Plattform. Beispiele umfassen dezentrale Domain-Namen-Systeme wie Namecoin, Reputationssysteme, dezentraler Dateispeicher und organisatorische Governance-Werkzeuge. Von all diesen Anwendungstypen haben sich Token-Systeme als die verbreitetsten und grundlegendsten herausgestellt und dienen als Bausteine fuer viele andere Anwendungen.

Token Systems

Os sistemas de tokens sao surpreendentemente simples de implementar no Ethereum, apesar de serem uma das aplicacoes mais poderosas e comuns. Em sua essencia, os sistemas de tokens sao simplesmente um banco de dados com uma unica operacao: subtrair X unidades da conta A e adicionar X unidades a conta B, com a condicao de que A tinha pelo menos X unidades antes da transacao e a transacao e autorizada por A. A implementacao requer manter um mapeamento de enderecos para saldos e fornecer uma funcao de transferencia que realize as verificacoes apropriadas antes de mover tokens entre contas.

O codigo do contrato para um sistema de tokens basico e notavelmente simples e pode ser escrito em apenas algumas linhas. Consiste em uma estrutura de dados mapeando enderecos para saldos, uma funcao de inicializacao que atribui o fornecimento inicial de tokens, e uma funcao de transferencia que verifica o saldo e a autorizacao do remetente antes de executar a transferencia. Essa simplicidade contrasta fortemente com a complexidade necessaria para implementar sistemas semelhantes no Bitcoin, que exigiria solucoes alternativas significativas e limitacoes devido as capacidades restritas de scripting do Bitcoin.

Os tokens no Ethereum podem representar virtualmente qualquer coisa de valor. Podem representar sub-moedas com suas proprias politicas monetarias, derivativos financeiros que rastreiam ativos externos, acoes de empresas com direitos a dividendos, pontos de fidelidade em programas de clientes, commodities como ouro ou petroleo, ou ate representacoes de propriedade fisica. A programabilidade do Ethereum permite que esses tokens tenham regras arbitrarias governando seu comportamento, como restricoes de transferencia, mecanismos de queima automatica, distribuicoes de dividendos ou direitos de governanca. Essa flexibilidade tornou os sistemas de tokens o bloco de construcao fundamental para grande parte do ecossistema Ethereum.

Token Systems

Token-Systeme sind ueberraschend einfach auf Ethereum zu implementieren, obwohl sie eine der leistungsfaehigsten und verbreitetsten Anwendungen darstellen. Im Kern sind Token-Systeme einfach eine Datenbank mit einer einzigen Operation: X Einheiten von Konto A abziehen und X Einheiten zu Konto B hinzufuegen, unter der Bedingung, dass A vor der Transaktion mindestens X Einheiten hatte und die Transaktion von A autorisiert ist. Die Implementierung erfordert die Pflege einer Zuordnung von Adressen zu Guthaben und die Bereitstellung einer Transfer-Funktion, die die entsprechenden Pruefungen durchfuehrt, bevor Token zwischen Konten verschoben werden.

Der Vertragscode fuer ein grundlegendes Token-System ist bemerkenswert einfach und kann in nur wenigen Zeilen geschrieben werden. Er besteht aus einer Datenstruktur, die Adressen auf Guthaben abbildet, einer Initialisierungsfunktion, die den anfaenglichen Token-Vorrat zuweist, und einer Transfer-Funktion, die das Guthaben und die Autorisierung des Absenders prueft, bevor der Transfer ausgefuehrt wird. Diese Einfachheit steht in starkem Kontrast zur Komplexitaet, die fuer die Implementierung aehnlicher Systeme auf Bitcoin erforderlich waere, was erhebliche Umgehungsloesungen und Einschraenkungen aufgrund der begrenzten Skriptfaehigkeiten von Bitcoin erfordern wuerde.

Token auf Ethereum koennen praktisch alles von Wert repraesentieren. Sie koennten Sub-Waehrungen mit eigener Geldpolitik repraesentieren, Finanzderivate, die externe Vermoegenswerte verfolgen, Unternehmensanteile mit Dividendenrechten, Treuepunkte in Kundenprogrammen, Rohstoffe wie Gold oder Oel, oder sogar Darstellungen von physischem Eigentum. Die Programmierbarkeit von Ethereum erlaubt es diesen Token, beliebige Regeln fuer ihr Verhalten zu haben, wie Transferbeschraenkungen, automatische Vernichtungsmechanismen, Dividendenverteilungen oder Governance-Rechte. Diese Flexibilitaet hat Token-Systeme zum grundlegenden Baustein fuer einen Grossteil des Ethereum-Oekosystems gemacht.

Financial Derivatives and Stable-Value Currencies

Os derivativos financeiros representam uma das aplicacoes mais fundamentais e importantes dos smart contracts do Ethereum. Um simples contrato de hedge demonstra o mecanismo basico: a parte A deposita uma certa quantidade de ether no valor de \(1000, a parte B deposita uma quantidade equivalente, e o contrato registra o valor em USD do ether naquele momento usando um feed de dados. Apos 30 dias, o contrato recalcula o valor e envia ether no valor de \)1000 para A e o restante para B. Se o preco do ether subiu, A recebe menos ether mas mantem o valor de $1000; se caiu, A recebe mais ether para manter esse valor. Isso permite que A se proteja contra a volatilidade enquanto B especula sobre os movimentos de preco.

A implementacao de tais contratos requer acesso a dados externos atraves de contratos oraculo ou feeds de dados. Esses oraculos fornecem informacoes de precos, dados meteorologicos ou outras informacoes do mundo real que os contratos precisam para executar corretamente. Embora os oraculos introduzam uma dependencia de confianca, podem ser projetados com redundancia e incentivos criptoeconomicos para fornecer dados confiaveis. O contrato em si simplesmente consulta o oraculo, realiza calculos com base nesses dados e distribui fundos de acordo com sua logica programada.

Stablecoins e instrumentos financeiros mais complexos podem ser construidos usando mecanismos similares. Um contrato de stablecoin poderia manter uma reserva de ether e emitir tokens atrelados a uma moeda fiduciaria, ajustando automaticamente o fornecimento ou os requisitos de colateral com base em feeds de precos. Contratos de opcoes, futuros, swaps e outros derivativos que normalmente exigiriam marcos legais complexos e intermediarios confiaveis podem ser codificados como smart contracts auto-executaveis. Essa infraestrutura de financas programaveis permite engenharia financeira sofisticada mantendo as garantias de transparencia e seguranca da tecnologia blockchain.

Financial Derivatives and Stable-Value Currencies

Finanzderivate stellen eine der grundlegendsten und wichtigsten Anwendungen von Ethereum Smart Contracts dar. Ein einfacher Absicherungsvertrag demonstriert den grundlegenden Mechanismus: Partei A hinterlegt eine bestimmte Menge Ether im Wert von 1000 \(, Partei B hinterlegt einen aequivalenten Betrag, und der Vertrag zeichnet den USD-Wert von Ether zu diesem Zeitpunkt ueber einen Datenfeed auf. Nach 30 Tagen berechnet der Vertrag den Wert neu und sendet Ether im Wert von 1000 \) an A und den Rest an B. Wenn der Preis von Ether gestiegen ist, erhaelt A weniger Ether, behaelt aber den Wert von 1000 $; wenn er gefallen ist, erhaelt A mehr Ether, um diesen Wert zu erhalten. Dies ermoeglicht es A, sich gegen Volatilitaet abzusichern, waehrend B auf Preisbewegungen spekuliert.

Die Implementierung solcher Vertraege erfordert Zugang zu externen Daten ueber Oracle-Vertraege oder Datenfeeds. Diese Orakel liefern Preisinformationen, Wetterdaten oder andere reale Informationen, die Vertraege fuer die korrekte Ausfuehrung benoetigen. Waehrend Orakel eine Vertrauensabhaengigkeit einfuehren, koennen sie mit Redundanz und kryptooekonomischen Anreizen gestaltet werden, um zuverlaessige Daten bereitzustellen. Der Vertrag selbst fragt einfach das Orakel ab, fuehrt Berechnungen basierend auf diesen Daten durch und verteilt Gelder gemaess seiner programmierten Logik.

Stablecoins und komplexere Finanzinstrumente koennen mit aehnlichen Mechanismen aufgebaut werden. Ein Stablecoin-Vertrag koennte eine Ether-Reserve halten und Token ausgeben, die an eine Fiat-Waehrung gekoppelt sind, wobei Angebot oder Sicherheitenanforderungen automatisch basierend auf Preisfeeds angepasst werden. Optionsvertraege, Futures, Swaps und andere Derivate, die normalerweise komplexe rechtliche Rahmenwerke und vertrauenswuerdige Vermittler erfordern wuerden, koennen stattdessen als selbstausfuehrende Smart Contracts kodiert werden. Diese programmierbare Finanzinfrastruktur ermoeglicht anspruchsvolles Financial Engineering bei gleichzeitiger Aufrechterhaltung der Transparenz- und Sicherheitsgarantien der Blockchain-Technologie.

Identity and Reputation Systems

Um sistema de registro de nomes similar ao Namecoin e trivialmente implementavel no Ethereum e serve como o exemplo mais simples de um sistema de identidade. O contrato mantem um banco de dados com uma tabela chave-valor mapeando nomes para dados associados (como enderecos IP, chaves publicas ou outras informacoes). Qualquer pessoa pode registrar um nome enviando uma transacao para o contrato junto com uma pequena taxa de registro, desde que esse nome ainda nao esteja em uso. O proprietario pode atualizar os dados associados a qualquer momento, e os nomes podem ser tornados transferiveis ou permanentes de acordo com as regras codificadas no contrato.

Sistemas de identidade mais avancados podem ser construidos sobre essa base para incluir pontuacoes de reputacao, relacoes de rede de confianca e verificacao de identidade descentralizada. Por exemplo, um contrato poderia manter pontuacoes de reputacao baseadas em transacoes verificadas, avaliacoes de pares ou conclusao de tarefas. Essas pontuacoes seriam publicamente visiveis e criptograficamente vinculadas a enderecos especificos, criando uma reputacao portatil que segue os usuarios atraves das aplicacoes. Os sistemas de rede de confianca poderiam permitir que os usuarios atestassem a identidade de outros, construindo grafos sociais que ajudam a distinguir usuarios legitimos de atores maliciosos.

Tais sistemas de identidade e reputacao se tornam particularmente poderosos quando integrados com outras aplicacoes. Um marketplace poderia exigir pontuacoes minimas de reputacao para vendedores, uma plataforma de emprestimos poderia ajustar as taxas de juros com base na reputacao do tomador, ou uma rede social poderia usar a rede de confianca para filtrar spam e conteudo fraudulento. Ao fornecer uma infraestrutura compartilhada de identidade que qualquer aplicacao pode consultar, o Ethereum permite uma nova classe de aplicacoes baseadas em confianca que nao dependem de provedores de identidade centralizados ou sistemas de reputacao proprietarios.

Identity and Reputation Systems

Ein Namensregistrierungssystem aehnlich wie Namecoin ist trivial auf Ethereum implementierbar und dient als einfachstes Beispiel eines Identitaetssystems. Der Vertrag pflegt eine Datenbank mit einer Schluessel-Wert-Tabelle, die Namen zugehoerigen Daten zuordnet (wie IP-Adressen, oeffentliche Schluessel oder andere Informationen). Jeder kann einen Namen registrieren, indem er eine Transaktion an den Vertrag zusammen mit einer kleinen Registrierungsgebuehr sendet, vorausgesetzt, der Name ist noch nicht vergeben. Der Eigentuemer kann die zugehoerigen Daten jederzeit aktualisieren, und Namen koennen entsprechend den im Vertrag kodierten Regeln uebertragbar oder permanent gemacht werden.

Fortgeschrittenere Identitaetssysteme koennen auf dieser Grundlage aufgebaut werden und Reputationsbewertungen, Vertrauensnetzwerk-Beziehungen und dezentrale Identitaetsverifikation umfassen. Beispielsweise koennte ein Vertrag Reputationsbewertungen basierend auf verifizierten Transaktionen, Peer-Bewertungen oder Aufgabenerfuellung pflegen. Diese Bewertungen waeren oeffentlich sichtbar und kryptographisch an bestimmte Adressen gebunden, wodurch eine portable Reputation entsteht, die Benutzer ueber Anwendungen hinweg begleitet. Vertrauensnetzwerk-Systeme koennten es Benutzern ermoeglichen, fuer die Identitaet anderer zu buergen und soziale Graphen aufzubauen, die helfen, legitime Benutzer von boesartigen Akteuren zu unterscheiden.

Solche Identitaets- und Reputationssysteme werden besonders maechtig, wenn sie mit anderen Anwendungen integriert werden. Ein Marktplatz koennte Mindest-Reputationsbewertungen fuer Verkaeufer verlangen, eine Kreditplattform koennte Zinssaetze basierend auf der Reputation des Kreditnehmers anpassen, oder ein soziales Netzwerk koennte das Vertrauensnetzwerk nutzen, um Spam und betruegerische Inhalte zu filtern. Durch die Bereitstellung einer gemeinsamen Infrastruktur fuer Identitaet, die jede Anwendung abfragen kann, ermoeglicht Ethereum eine neue Klasse vertrauensbasierter Anwendungen, die nicht auf zentralisierte Identitaetsanbieter oder proprietaere Reputationssysteme angewiesen sind.

Decentralized File Storage

O armazenamento descentralizado de arquivos pode ser implementado atraves de contratos Ethereum que coordenam entre usuarios que precisam de armazenamento e provedores que o oferecem. Em um modelo de "Dropbox descentralizado", os usuarios pagariam uma taxa mensal para enviar arquivos, com o contrato distribuindo pagamentos aos provedores de armazenamento que provem que estao realmente armazenando os dados. O mecanismo de prova funciona atraves de desafios criptograficos periodicos: o contrato seleciona aleatoriamente porcoes de arquivos e pede aos provedores que fornecam provas de Merkle tree demonstrando que possuem aqueles dados. Os provedores que falharem nos desafios ou ficarem offline perderiam seus depositos e fluxo de pagamentos futuros.

Essa abordagem oferece varias vantagens sobre o armazenamento centralizado. As provas de Merkle tree permitem verificacao eficiente — os usuarios e o contrato podem confirmar a disponibilidade de arquivos sem baixar arquivos inteiros. O sistema distribui naturalmente os arquivos entre multiplos provedores independentes, criando redundancia sem exigir protocolos de replicacao explicitos. Os incentivos economicos alinham o comportamento do provedor com as necessidades do usuario: os provedores ganham dinheiro armazenando dados de forma confiavel e perdem dinheiro se nao o fizerem. Isso elimina o requisito de confianca inerente nas solucoes de armazenamento centralizado.

Os custos de armazenamento em tal sistema podem ser potencialmente mais baixos que as alternativas centralizadas por varias razoes. A eliminacao de precos monopolistas permite que a competicao de mercado reduza os custos para perto do custo real de armazenamento. A redundancia implicita de multiplos usuarios armazenando arquivos semelhantes pode reduzir os requisitos totais de armazenamento. Nao ha necessidade de infraestrutura cara de data centers ou custos corporativos gerais. No entanto, permanecem desafios em torno dos mecanismos de pagamento, garantir participacao adequada de provedores e gerenciar o equilibrio entre redundancia e custo. Apesar desses desafios, o armazenamento descentralizado demonstra como o Ethereum pode coordenar interacoes complexas de multiplas partes apenas atraves de incentivos economicos.

Decentralized File Storage

Dezentraler Dateispeicher kann durch Ethereum-Vertraege implementiert werden, die zwischen Benutzern, die Speicher benoetigen, und Anbietern, die ihn anbieten, koordinieren. In einem Modell einer "dezentralen Dropbox" wuerden Benutzer eine monatliche Gebuehr zahlen, um Dateien hochzuladen, wobei der Vertrag Zahlungen an Speicheranbieter verteilt, die beweisen, dass sie die Daten tatsaechlich speichern. Der Beweismechanismus funktioniert ueber periodische kryptographische Herausforderungen: Der Vertrag waehlt zufaellig Teile von Dateien aus und fordert Anbieter auf, Merkle-Baum-Beweise zu liefern, die belegen, dass sie diese Daten besitzen. Anbieter, die Herausforderungen nicht bestehen oder offline gehen, wuerden ihre Einlagen und zukuenftigen Zahlungsstrom verlieren.

Dieser Ansatz bietet mehrere Vorteile gegenueber zentralisiertem Speicher. Merkle-Baum-Beweise ermoeglichen effiziente Verifizierung — Benutzer und der Vertrag koennen die Dateiverfuegbarkeit bestaetigen, ohne ganze Dateien herunterzuladen. Das System verteilt Dateien natuerlich ueber mehrere unabhaengige Anbieter und schafft Redundanz ohne explizite Replikationsprotokolle. Wirtschaftliche Anreize bringen das Verhalten der Anbieter mit den Beduerfnissen der Benutzer in Einklang: Anbieter verdienen Geld durch zuverlaessige Datenspeicherung und verlieren Geld, wenn sie dies nicht tun. Dies eliminiert die Vertrauensanforderung, die zentralisierten Speicherloesungen inhaeerent ist.

Speicherkosten in einem solchen System koennen potenziell niedriger sein als bei zentralisierten Alternativen aus mehreren Gruenden. Die Beseitigung von Monopolpreisen ermoeglicht es dem Marktwettbewerb, die Kosten nahe an die tatsaechlichen Speicherkosten zu treiben. Implizite Redundanz durch mehrere Benutzer, die aehnliche Dateien speichern, kann den Gesamtspeicherbedarf reduzieren. Es besteht kein Bedarf an teurer Rechenzentrumsinfrastruktur oder Unternehmensgemeinkosten. Allerdings bleiben Herausforderungen bei Zahlungsmechanismen, der Sicherstellung ausreichender Anbieterbeteiligung und dem Management des Kompromisses zwischen Redundanz und Kosten. Trotz dieser Herausforderungen demonstriert dezentraler Speicher, wie Ethereum komplexe Mehparteien-Interaktionen allein durch wirtschaftliche Anreize koordinieren kann.

Decentralized Autonomous Organizations

Uma Organizacao Autonoma Descentralizada (DAO) e uma entidade virtual que possui um conjunto de membros ou acionistas que coletivamente tem o direito de gastar os fundos da entidade e modificar seu codigo. Uma DAO tipica opera com uma regra simples: 67% dos membros sao necessarios para tomar decisoes de gasto ou modificar o codigo da organizacao. Os membros podem enviar propostas, votar nelas, e se uma proposta receber apoio suficiente, o contrato executa automaticamente a decisao. As participacoes de membresia podem ser transferiveis, permitindo um mercado liquido para a participacao na DAO, e diferentes classes de participacoes podem ter diferentes direitos de voto ou reivindicacoes economicas.

O design mais simples de uma DAO e um contrato auto-modificavel que mantem uma lista de membros e requer maioria de 2/3 de votos para alterar qualquer aspecto do contrato, incluindo suas proprias regras de votacao. Os membros enviariam mudancas de codigo como transacoes, outros membros votariam, e ao atingir o limiar, o contrato se atualizaria. Designs mais sofisticados poderiam incluir sistemas de votacao delegada onde os membros podem atribuir seu poder de voto a representantes, ou democracia liquida onde os votos podem ser delegados mas reivindicados a qualquer momento para decisoes importantes.

As DAOs podem servir a diversos propositos alem da simples gestao de fundos. Uma DAO poderia funcionar como uma corporacao descentralizada, contratando prestadores de servicos, comprando servicos e distribuindo lucros aos acionistas — tudo governado por codigo de smart contract em vez de estruturas legais tradicionais. Poderia operar como um fundo de investimento descentralizado, com os membros votando sobre quais projetos financiar. Poderia gerenciar um recurso comum, com as partes interessadas votando sobre as regras de alocacao. A ideia-chave e que ao codificar as regras de governanca em codigo transparente e imutavel e vincula-las a uma participacao economica, as DAOs podem coordenar decisoes de grupo sem exigir gestao hierarquica tradicional ou aplicacao legal.

Decentralized Autonomous Organizations

Eine Dezentrale Autonome Organisation (DAO) ist eine virtuelle Entitaet, die eine Gruppe von Mitgliedern oder Aktionaeren hat, die gemeinsam das Recht haben, die Mittel der Entitaet auszugeben und ihren Code zu aendern. Eine typische DAO funktioniert mit einer einfachen Regel: 67% der Mitglieder werden benoetigt, um Ausgabenentscheidungen zu treffen oder den Code der Organisation zu aendern. Mitglieder koennen Vorschlaege einreichen, darueber abstimmen, und wenn ein Vorschlag ausreichende Unterstuetzung erhaelt, fuehrt der Vertrag die Entscheidung automatisch aus. Mitgliedsanteile koennen uebertragbar sein, was einen liquiden Markt fuer DAO-Beteiligung ermoeglicht, und verschiedene Anteilsklassen koennen unterschiedliche Stimmrechte oder wirtschaftliche Ansprueche haben.

Das einfachste DAO-Design ist ein sich selbst aendernder Vertrag, der eine Mitgliederliste fuehrt und eine 2/3-Mehrheitsabstimmung erfordert, um jeden Aspekt des Vertrags zu aendern, einschliesslich seiner eigenen Abstimmungsregeln. Mitglieder wuerden Codeaenderungen als Transaktionen einreichen, andere Mitglieder wuerden abstimmen, und bei Erreichen der Schwelle wuerde sich der Vertrag selbst aktualisieren. Ausgefeiltere Designs koennten delegierte Abstimmungssysteme umfassen, bei denen Mitglieder ihre Stimmrechte an Vertreter uebertragen koennen, oder eine liquide Demokratie, bei der Stimmen delegiert, aber jederzeit fuer wichtige Entscheidungen zurueckgefordert werden koennen.

DAOs koennen verschiedenen Zwecken ueber die einfache Fondsverwaltung hinaus dienen. Eine DAO koennte als dezentrales Unternehmen fungieren, Auftragnehmer einstellen, Dienstleistungen einkaufen und Gewinne an Aktionaere verteilen — alles gesteuert durch Smart-Contract-Code statt traditionelle Rechtsstrukturen. Sie koennte als dezentraler Investmentfonds operieren, wobei Mitglieder darueber abstimmen, welche Projekte finanziert werden. Sie koennte eine gemeinsame Ressource verwalten, wobei Beteiligte ueber Zuteilungsregeln abstimmen. Die zentrale Erkenntnis ist, dass DAOs durch die Kodierung von Governance-Regeln in transparentem, unveraenderlichem Code und deren Verknuepfung mit wirtschaftlichem Einsatz Gruppenentscheidungen koordinieren koennen, ohne traditionelles hierarchisches Management oder rechtliche Durchsetzung zu benoetigen.

Further Applications

Alem das categorias principais ja discutidas, o Ethereum possibilita numerosas outras aplicacoes. Carteiras de poupanca com recursos de seguranca sofisticados podem impor limites de saque diarios enquanto fornecem chaves de emergencia para recuperacao, protegendo os usuarios contra roubo enquanto mantem o controle final. Contratos de seguro agricola podem pagar automaticamente aos agricultores com base em feeds de dados meteorologicos, eliminando o processamento de sinistros e reduzindo os custos administrativos. Aplicacoes de apostas peer-to-peer podem operar sem nenhum intermediario confiavel, com smart contracts mantendo as apostas e pagando automaticamente aos vencedores com base em numeros aleatorios verificaveis ou dados de eventos do mundo real.

Os mercados de predicao on-chain permitem que os usuarios apostem em eventos futuros, criando poderosos mecanismos de previsao atraves da sabedoria das massas. Estes podem ser aprimorados com protocolos do tipo SchellingCoin para criar oraculos descentralizados: os participantes reportam dados independentemente (como resultados eleitorais ou condicoes meteorologicas), e aqueles cujos relatorios correspondem a maioria recebem recompensas enquanto os valores discrepantes sao penalizados. Essa abordagem criptoeconomica incentiva o relato honesto e pode fornecer dados do mundo real confiaveis para outros contratos sem exigir confianca em nenhum provedor de oraculo individual.

As carteiras multisig representam outra aplicacao importante, permitindo o controle compartilhado de fundos entre multiplas partes. Uma carteira multisig 2-de-3 poderia exigir que duas de tres partes designadas aprovem uma transacao antes que os fundos possam ser gastos, util para acordos de garantia, tesourarias corporativas ou seguranca pessoal. Os marketplaces descentralizados podem combinar sistemas de identidade, pontuacoes de reputacao, contratos de garantia e mecanismos de resolucao de disputas para permitir o comercio peer-to-peer sem plataformas centralizadas. Cada uma dessas aplicacoes demonstra como a programabilidade do Ethereum permite novos modelos de confianca e estruturas organizacionais.

Further Applications

Ueber die bereits besprochenen Hauptkategorien hinaus ermoeglicht Ethereum zahlreiche weitere Anwendungen. Sparwallets mit ausgefeilten Sicherheitsfunktionen koennen taegliche Abhebungslimits auferlegen und gleichzeitig Notfallschluessel fuer die Wiederherstellung bereitstellen, um Benutzer vor Diebstahl zu schuetzen und dabei die ultimative Kontrolle zu bewahren. Ernteversicherungsvertraege koennen Landwirten automatisch basierend auf Wetterdatenfeeds auszahlen, wodurch die Schadensbearbeitung eliminiert und der Verwaltungsaufwand reduziert wird. Peer-to-Peer-Gluecksspielanwendungen koennen ohne jeden vertrauenswuerdigen Vermittler betrieben werden, wobei Smart Contracts Einsaetze halten und Gewinner automatisch basierend auf verifizierbaren Zufallszahlen oder realen Ereignisdaten auszahlen.

On-Chain-Vorhersagemaerkte ermoegllichen es Benutzern, auf zukuenftige Ereignisse zu wetten und schaffen leistungsfaehige Prognosemechanismen durch die Weisheit der Masse. Diese koennen mit SchellingCoin-artigen Protokollen erweitert werden, um dezentrale Orakel zu schaffen: Teilnehmer berichten unabhaengig Daten (wie Wahlergebnisse oder Wetterbedingungen), und diejenigen, deren Berichte mit der Mehrheit uebereinstimmen, erhalten Belohnungen, waehrend Ausreisser bestraft werden. Dieser kryptooekonomische Ansatz schafft Anreize fuer ehrliche Berichterstattung und kann anderen Vertraegen zuverlaessige reale Daten liefern, ohne Vertrauen in einen einzelnen Orakel-Anbieter zu erfordern.

Multi-Signatur-Wallets stellen eine weitere wichtige Anwendung dar und ermoeglichen die gemeinsame Kontrolle von Geldern zwischen mehreren Parteien. Ein 2-von-3 Multi-Sig-Wallet koennte erfordern, dass zwei von drei bestimmten Parteien eine Transaktion genehmigen, bevor Gelder ausgegeben werden koennen, nuetzlich fuer Treuhandvereinbarungen, Unternehmensschatzkammern oder persoenliche Sicherheit. Dezentrale Marktplaetze koennen Identitaetssysteme, Reputationsbewertungen, Treuhandvertraege und Streitbeilegungsmechanismen kombinieren, um Peer-to-Peer-Handel ohne zentralisierte Plattformen zu ermoeglichen. Jede dieser Anwendungen demonstriert, wie die Programmierbarkeit von Ethereum neue Vertrauensmodelle und Organisationsstrukturen ermoeglicht.

Miscellanea And Concerns

A implementacao do Ethereum do protocolo GHOST modificado inclui regras especificas para inclusao e recompensas de tios. Os tios devem ser filhos diretos de um ancestral do bloco atual (entre 2 e 7 geracoes atras), devem ser cabecalhos de bloco validos, devem ser distintos de tios anteriores e nao devem ser ancestrais diretos do bloco atual. Os blocos tio recebem 87.5% da recompensa padrao de bloco, enquanto o bloco que os inclui recebe um adicional de 3.125% por cada tio incluido (ate dois tios). Essa estrutura de incentivos encoraja os mineradores a referenciar blocos obsoletos que observam, fortalecendo a seguranca da rede enquanto recompensa mineradores que tiveram ma sorte temporaria com a propagacao da rede.

O sistema de taxas e baseado no conceito de "gas", onde cada operacao computacional tem um custo fixo em gas. Por exemplo, uma operacao de multiplicacao custa 5 gas, um hash SHA256 custa 20 gas, e cada transacao tem um custo base de 21.000 gas. Os usuarios especificam tanto um limite de gas (maximo de gas que estao dispostos a consumir) quanto um preco de gas (quanto ether pagarao por unidade de gas). Esse sistema serve a multiplos propositos: previne loops infinitos e ataques de negacao de servico garantindo que toda computacao seja paga, cria um mercado para espaco de bloco onde os usuarios fazem lances via precos de gas, e permite que mineradores definam um preco minimo de gas que estao dispostos a aceitar, protegendo os recursos da rede.

Ethereum supply growth rate comparing linear issuance to Bitcoin decreasing growth

A escalabilidade continua sendo uma preocupacao significativa, ja que cada no completo deve processar cada transacao para verificar o estado. As arquiteturas blockchain atuais lutam para igualar o throughput de transacoes dos sistemas centralizados. Solucoes potenciais incluem sharding de estado, onde diferentes nos processam diferentes subconjuntos de transacoes, e uma transicao de proof of work para consenso proof of stake, que poderia permitir producao de blocos mais eficiente. Clientes leves usando provas de Merkle podem verificar transacoes sem processar todos os blocos, mas alguem ainda precisa processar tudo. Esses desafios de escalabilidade representam areas ativas de pesquisa e desenvolvimento criticas para a viabilidade de longo prazo do Ethereum.

Miscellanea And Concerns

Ethereums Implementierung des modifizierten GHOST-Protokolls umfasst spezifische Regeln fuer die Einbeziehung und Belohnung von Onkeln. Onkel muessen direkte Kinder eines Vorfahren des aktuellen Blocks sein (zwischen 2 und 7 Generationen zurueck), muessen gueltige Block-Header sein, muessen sich von vorherigen Onkeln unterscheiden und duerfen keine direkten Vorfahren des aktuellen Blocks sein. Onkel-Bloecke erhalten 87,5% der Standard-Blockbelohnung, waehrend der einschliessende Block zusaetzliche 3,125% pro eingeschlossenem Onkel erhaelt (bis zu zwei Onkel). Diese Anreizstruktur ermutigt Miner, veraltete Bloecke zu referenzieren, die sie beobachten, was die Netzwerksicherheit staerkt und gleichzeitig Miner belohnt, die voruebergehend Pech mit der Netzwerkpropagation hatten.

Das Gebuehrensystem basiert auf dem Konzept von "Gas", wobei jede Berechnungsoperation einen festen Gas-Preis hat. Beispielsweise kostet eine Multiplikationsoperation 5 Gas, ein SHA256-Hash kostet 20 Gas, und jede Transaktion hat Grundkosten von 21.000 Gas. Benutzer geben sowohl ein Gas-Limit (maximales Gas, das sie zu verbrauchen bereit sind) als auch einen Gas-Preis (wie viel Ether sie pro Gas-Einheit zahlen) an. Dieses System dient mehreren Zwecken: Es verhindert Endlosschleifen und Denial-of-Service-Angriffe, indem sichergestellt wird, dass alle Berechnungen bezahlt werden, es schafft einen Markt fuer Blockraum, auf dem Benutzer ueber Gas-Preise bieten, und es ermoeglicht Minern, einen Mindest-Gas-Preis festzulegen, den sie zu akzeptieren bereit sind, um Netzwerkressourcen zu schuetzen.

Ethereum supply growth rate comparing linear issuance to Bitcoin decreasing growth

Skalierbarkeit bleibt ein bedeutendes Anliegen, da jeder vollstaendige Knoten jede Transaktion verarbeiten muss, um den Zustand zu verifizieren. Aktuelle Blockchain-Architekturen haben Schwierigkeiten, den Transaktionsdurchsatz zentralisierter Systeme zu erreichen. Moegliche Loesungen umfassen Zustandssharding, bei dem verschiedene Knoten verschiedene Teilmengen von Transaktionen verarbeiten, und einen Uebergang von Proof-of-Work zu Proof-of-Stake-Konsens, der eine effizientere Blockproduktion ermoeglichen koennte. Light Clients, die Merkle-Beweise verwenden, koennen Transaktionen verifizieren, ohne alle Bloecke zu verarbeiten, aber jemand muss trotzdem alles verarbeiten. Diese Skalierbarkeitsprobleme stellen aktive Forschungs- und Entwicklungsbereiche dar, die fuer die langfristige Lebensfaehigkeit von Ethereum entscheidend sind.

Conclusion

O protocolo Ethereum foi originalmente concebido como uma versao aprimorada de uma criptomoeda, fornecendo recursos avancados como garantias on-blockchain, limites de saque e contratos financeiros atraves de uma linguagem de programacao altamente generalizada. No entanto, o protocolo Ethereum vai muito alem de apenas moeda. Os protocolos em torno de armazenamento descentralizado de arquivos, computacao descentralizada e mercados de predicao descentralizados, entre dezenas de outros conceitos, tem o potencial de aumentar substancialmente a eficiencia da industria computacional e fornecer um impulso massivo para outros protocolos peer-to-peer ao adicionar pela primeira vez uma camada economica.

Em vez de fornecer um conjunto limitado de operacoes projetadas para casos de uso especificos, o Ethereum fornece uma linguagem de programacao Turing-completa que permite aos desenvolvedores construir qualquer aplicacao que possam projetar. Quer inventar seu proprio derivativo financeiro? Criar sua propria moeda? Estabelecer um governo na blockchain? Tudo isso e trivialmente implementavel com o sistema de scripting do Ethereum. O poder da plataforma nao reside em prever quais aplicacoes serao construidas, mas em fornecer a infraestrutura fundacional que torna facil construi-las.

O conceito de uma funcao de transicao de estado arbitraria implementada pelo protocolo Ethereum fornece uma plataforma com potencial unico. Em vez de ser um protocolo fechado, de proposito unico, destinado a aplicacoes especificas em armazenamento de dados, apostas ou financas, o Ethereum e aberto por design, e acreditamos que e extremamente adequado para servir como camada fundacional para um grande numero de protocolos tanto financeiros quanto nao financeiros nos anos vindouros. As aplicacoes que serao construidas sobre o Ethereum no futuro podem ser aquelas que nem podemos imaginar hoje, e essa possibilidade aberta representa a verdadeira promessa da plataforma.

Conclusion

Das Ethereum-Protokoll wurde urspruenglich als verbesserte Version einer Kryptowaehrung konzipiert, die fortgeschrittene Funktionen wie On-Blockchain-Treuhand, Abhebungslimits und Finanzvertraege durch eine hochgradig verallgemeinerte Programmiersprache bereitstellt. Allerdings geht das Ethereum-Protokoll weit ueber blosse Waehrung hinaus. Protokolle rund um dezentralen Dateispeicher, dezentrale Berechnung und dezentrale Vorhersagemaerkte, neben Dutzenden anderer Konzepte, haben das Potenzial, die Effizienz der Computerindustrie erheblich zu steigern und anderen Peer-to-Peer-Protokollen einen massiven Schub zu geben, indem erstmals eine wirtschaftliche Schicht hinzugefuegt wird.

Anstatt einen begrenzten Satz von Operationen bereitzustellen, die fuer bestimmte Anwendungsfaelle konzipiert sind, stellt Ethereum eine Turing-vollstaendige Programmiersprache bereit, die es Entwicklern ermoeglicht, jede Anwendung zu bauen, die sie entwerfen koennen. Moechten Sie Ihr eigenes Finanzderivat erfinden? Ihre eigene Waehrung schaffen? Eine Regierung auf der Blockchain etablieren? All dies ist trivial mit Ethereums Skripting-System implementierbar. Die Staerke der Plattform liegt nicht in der Vorhersage, welche Anwendungen gebaut werden, sondern in der Bereitstellung der fundamentalen Infrastruktur, die deren Erstellung einfach macht.

Das Konzept einer beliebigen Zustandsuebergangsfunktion, wie vom Ethereum-Protokoll implementiert, bietet eine Plattform mit einzigartigem Potenzial. Anstatt ein geschlossenes Einzelzweck-Protokoll fuer spezifische Anwendungen in Datenspeicherung, Gluecksspiel oder Finanzen zu sein, ist Ethereum von Grund auf offen gestaltet, und wir glauben, dass es ausserordentlich gut geeignet ist, in den kommenden Jahren als Grundschicht fuer eine grosse Anzahl sowohl finanzieller als auch nicht-finanzieller Protokolle zu dienen. Die Anwendungen, die in Zukunft auf Ethereum aufgebaut werden, koennten solche sein, die wir uns heute noch nicht einmal vorstellen koennen, und diese offene Moeglichkeit repraesentiert das wahre Versprechen der Plattform.

References and Further Reading

O whitepaper do Ethereum se baseia em um extenso trabalho previo em pesquisa de criptomoedas e sistemas distribuidos. O protocolo fundacional do Bitcoin e descrito no artigo original de 2008 de Satoshi Nakamoto "Bitcoin: A Peer-to-Peer Electronic Cash System", que introduziu o conceito de moeda digital baseada em blockchain. As primeiras tentativas de estender a funcionalidade do Bitcoin incluem o Namecoin, um sistema de registro de nomes descentralizado que demonstra aplicacoes de blockchain alem da moeda, embora limitado pelas capacidades restritas de scripting do Bitcoin.

O whitepaper de colored coins propos um metodo para representar ativos alternativos na blockchain do Bitcoin "colorindo" bitcoins especificos para representar outros ativos, enquanto o Mastercoin tentou criar uma camada de protocolo sobre o Bitcoin para instrumentos financeiros mais complexos. Ambos destacaram as limitacoes de construir sobre o Bitcoin e motivaram a necessidade de uma plataforma mais flexivel. O conceito de corporacoes autonomas descentralizadas, explorado na Bitcoin Magazine, forneceu fundamentos teoricos para governanca organizacional atraves de smart contracts.

Os componentes tecnicos chave incluem verificacao de pagamento simplificada (SPV) para clientes leves, Merkle trees para verificacao eficiente de dados e Patricia tries para a representacao de estado do Ethereum. O protocolo GHOST (Greedy Heaviest Observed Subtree), descrito em um artigo de criptografia de 2013, aborda problemas de seguranca que surgem de tempos de bloco rapidos e forma a base do mecanismo de consenso do Ethereum. Essas referencias representam os fundamentos intelectuais sobre os quais o Ethereum foi construido, combinando conhecimentos de criptomoedas, sistemas distribuidos, criptografia e teoria dos jogos para criar uma plataforma blockchain de proposito geral.

References and Further Reading

Das Ethereum-Whitepaper baut auf umfangreichen frueheren Arbeiten in der Kryptowaehrungs- und verteilten Systemforschung auf. Das grundlegende Bitcoin-Protokoll wird in Satoshi Nakamotos originalem Paper von 2008 "Bitcoin: A Peer-to-Peer Electronic Cash System" beschrieben, das das Konzept einer Blockchain-basierten digitalen Waehrung einfuehrte. Fruehe Versuche, die Funktionalitaet von Bitcoin zu erweitern, umfassen Namecoin, ein dezentrales Namensregistrierungssystem, das Blockchain-Anwendungen jenseits von Waehrung demonstrierte, wenn auch durch Bitcoins eingeschraenkte Skripting-Faehigkeiten begrenzt.

Das Colored-Coins-Whitepaper schlug eine Methode vor, alternative Vermoegenswerte auf der Bitcoin-Blockchain darzustellen, indem bestimmte Bitcoins "eingefaerbt" werden, um andere Vermoegenswerte zu repraesentieren, waehrend Mastercoin versuchte, eine Protokollschicht ueber Bitcoin fuer komplexere Finanzinstrumente zu schaffen. Beide hoben die Einschraenkungen des Aufbaus auf Bitcoin hervor und motivierten die Notwendigkeit einer flexibleren Plattform. Das Konzept dezentraler autonomer Unternehmen, das im Bitcoin Magazine untersucht wurde, lieferte theoretische Grundlagen fuer organisatorische Governance durch Smart Contracts.

Wichtige technische Komponenten umfassen die vereinfachte Zahlungsverifizierung (SPV) fuer Light Clients, Merkle-Baeume fuer effiziente Datenverifizierung und Patricia-Tries fuer Ethereums Zustandsdarstellung. Das GHOST-Protokoll (Greedy Heaviest Observed Subtree), beschrieben in einem Kryptographie-Paper von 2013, adressiert Sicherheitsprobleme, die durch schnelle Blockzeiten entstehen, und bildet die Grundlage fuer Ethereums Konsensmechanismus. Diese Referenzen repraesentieren die intellektuellen Grundlagen, auf denen Ethereum aufgebaut wurde, und kombinieren Erkenntnisse aus Kryptowaehrung, verteilten Systemen, Kryptographie und Spieltheorie, um eine universelle Blockchain-Plattform zu schaffen.