SmartContract.nl

De meeste antwoorden zijn afkomstig van de website Ethereum Stack Exchange. Je vindt er op elke vraag een antwoord, maar heel overzichtelijk is het niet. Zodoende hebben wij de volgende belangrijke vragen over Ethereum voor je op een rijtje gezet:

  1. Hoe creëer je een DApp op het Ethereum netwerk?
  2. Hoe controleer ik of mijn Ethereum adres geldig is?
  3. Is het de moeite waard om Ether te verkrijgen via een centrale processor?
  4. Ik heb ETH naar een ETC adres gestuurd, kan ik de Ether nog terug krijgen?
  5. Waar gaat de gebruikte Ether/GAS naar toe?
  6. Hoe koop ik Ethereum met de Amerikaanse dollar?
  7. Wat is het verschil tussen een transactie of een ‘call’?
  8. Is het mogelijk om een smart contract te verbeteren of aan te passen?
  9. Wat is het verschil tussen Proof of Stake en Proof of Work?
  10. Waarom is Ethereum van plan om Proof of State te gaan gebruiken?
  11. Bij hoeveel bevestigingen binnen het Ethereum netwerk is een transactie ‘veilig’?

Vraag 1 – Hoe creëer je een DApp op het Ethereum netwerk?

Misschien ben je van plan om een Ethereum of smart contract ontwikkelaar te worden. Het is belangrijk om je zo goed mogelijk in te lezen. Verdiep je ten eerste in de basiskenmerken van het Ethereum netwerk en de bijbehorende termen. Het is een goed idee om te beginnen met de whitepaper van Ethereum. Lees daarna een artikel waarin het Ethereum ecosysteem op Github wordt geïntroduceerd.

Handleidingen over smart contracts
Ben je geïnteresseerd in smart contracts? Lees dan onder andere deze handleiding hoe je een volledig gedecentraliseerde dApp in Ethereum creëert en uitrolt. Nog meer interessant leesvoer is het Engelstalige artikel over hoe je jouw eerste Ethereum smart contract met Solidity bouwt. Ook de handleidingen ‘Hello World Voting Ethereum dApp Tutorial’ en ‘The Ethereum Greeter’ zijn zeker aan te raden wanneer je alles wilt weten over Ethereum en smart contracts. Wil je meer uitleg over een smart contract? Bekijk dan deze pagina.

Vraag 2 – Hoe controleer ik of mijn Ethereum adres geldig is?

Een geldig Ethereum adres bestaat uit verschillende onderdelen. Zo begint het adres altijd met ‘0x’ en heeft het in totaal 42 karakters. Ook kan het elk nummer van 0 tot en met 9 bevatten. Daarnaast moet het altijd de letters a,b,c,d,e en f bevatten. Een Ethereum adres met andere letters is dus niet geldig. Het Ethereum adres klopt wanneer al deze onderdelen in grote of kleine letters staan. Het is echter niet de bedoeling dat er een combinatie van grote letters en kleine letters heeft. In dat geval dien je het adres nogmaals te controleren door web3.js 1.0 te gebruiken, dat gecreëerd is voor de Ethereum blockchain en smart contracts. Vul web3.utils.isAddress (jouw adres) in om er achter te komen of het klopt. Misschien vind je deze methode iets te omslachtig. In dat geval kun je beter de website TokenMarket raadplegen om de controle van je Ethereum adres uit te voeren.

Vraag 3 – Is het de moeite waard om Ether te verkrijgen via een centrale processor? (CPU)

In de cryptowereld kom je af en toe de afkorting ‘CPU’ tegen. Dit staat voor ‘Central Processing Unit’ en betreft hardware in een computer die onder andere programmacodes uitvoert. CPU wordt toegepast bij het minen van Ether. Sommige mensen vragen zich af of het de moeite waard is om op die manier de cryptocurrency te verkrijgen. Wanneer je een centrale processor gebruikt om te minen ontvang je een hashrate van 0,25 MH/s. De hashrate geeft aan hoe krachtig een cryptocurrency miner is. 0/25 MH/s is ongeveer 0,0184 dollar per dag als je elektriciteit honderd procent gratis is.

CPU mining of GPU mining: wat is beter?
Laten we CPU eens vergelijken met GPU mining. Een GPU is een ander apparaat om computerprocessen mee uit te voeren, maar focust zich op weergave functies zoals video rendering. Met GPU mining krijg je 35 MH/s of 2,5 dollar per dag, dus het is een stuk gunstiger. CPU vereist veel van je computer software, maar is het niet waard. Nieuwsgierig naar de waarde van wat je hebt gemined? Bezoek dan de website Etherscan om het te controleren.

Vraag 4 – Ik heb ETH naar een ETC adres gestuurd, kan ik de Ether nog terug krijgen?

Het per ongeluk versturen van Ethereum naar een Ethereum Classic adres hoeft geen probleem te zijn. Het ligt er aan of je tijdens de verzending een smart contract hebt gebruikt. We hebben goed nieuws: privé sleutels zijn geldig op beide blockchains. Stel je voor dat je 5 ETH naar een ETC adres hebt gestuurd. Je ETC wallet zal deze coins ontvangen omdat het dezelfde waarde hebt op de Ethereum blockchain. Dus wanneer je ETH naar een ETC verstuurt verlies je geen Ether omdat het ontvangst adres op beide blockchains hetzelfde is.

ETH versturen naar een ETC smart contract
Bij het versturen van crypto’s met smart contracts is de situatie anders. Deze zijn op elke blockchain uniek omdat ze niet uit privé sleutels gemaakt worden. Dit betekent dat je de ETH verliest wanneer je het naar een ETC smart contract adres verstuurt. Probeer dit te voorkomen, want dat is uiteraard erg zonde. Je ontkomt alleen aan verlies wanneer iemand anders een smart contract met precies hetzelfde adres op de Ethereum Classic blockchain heeft gecreëerd. Dit is meestal te mooi om waar te zijn, aangezien er ontzettend veel mogelijke adressen zijn.

Versturen van ETH naar een ETC adres op een exchange
Misschien heb je kort geleden ETH naar een ETC adres verstuurd vanaf een exchange. Ook in dit geval hangt alles af van het smart contract. Je ontvangt gewoon ETH wanneer een exchange een smart contract gebruikt voor de accounts met een digitale portemonnee of privé sleutel. Een voorbeeld van zo’n exchange is Poloniex. De regels voor het versturen van ETH naar ETC verschillen per exchange. Wanneer je dit hebt gedaan en twijfelt kun je het beste contact opnemen met de helpdesk van de exchange.

Vraag 5 – Waar gaat de gebruikte Ether/GAS naar toe?

Voor het uitvoeren van transacties op het Ethereum netwerk heb je GAS nodig. Deze betaling komt uiteindelijk bij de miners terecht die hun computers hebben gebruikt om de transacties op de blockchain te controleren en wel of niet groen licht te geven. Je mag zelf bepalen hoeveel GAS je wil betalen. Onthoud wel dat een minimum aantal GAS wordt gevraagd. Het benodigde GAS is te berekenen via de optie web3.js myContract.methods.myMetho(param1, …).estimateGas(options, callback. Vervolgens bereken je de totale hoeveelheid GAS door het aantal gas dat nodig is voor de transactie te vermenigvuldigen met je eigen gekozen GAS prijs.

Vraag 6 – Hoe koop ik Ethereum met de Amerikaanse dollar?

Het kopen van Ethereum met de Amerikaanse dollar is mogelijk via diverse exchanges, waaronder Coinbase, Kraken, GDAX en Gemini. Deze plekken bieden de mogelijkheid om euro’s of dollars te gebruiken. Om dit te kunnen doen heb je een account nodig. Zorg ervoor dat je persoonlijke documenten zoals je paspoort bij de hand hebt. Al je gegevens worden namelijk geverifieerd omdat deze exchanges contact hebben met gereguleerde banken. Door precies te doen wat ze van je vragen kun je problemen voorkomen.

Geld sturen naar een exchange
Is je account geverifieerd? Stuur het geld dan naar een exchange. Overigens werkt Kraken net een beetje anders. Ga in dat geval naar ‘funding’, oftewel ‘betaalopties’. Klik op een betaalmiddel zoals de dollar of euro en maak geld over met een SEPA transactie. Wacht totdat het geld arriveert op de exchange. Soms kan dit een paar dagen duren. Een andere populaire exchange naast Kraken is Coinbase. Je kunt daar geld storten met je creditcard of een bankoverschrijving. Je ontvangt de Ether meteen op je account. Een bankoverschrijving is aan te raden als betaalmiddel omdat het minder transactiekosten met zich meebrengt.

Vraag 7 – Wat is het verschil tussen een transactie of een ‘call’?

Er is zeker een verschil tussen een transactie en een ‘call’. Tijdens een transactie voer je een betaling uit met digitaal geld. Andersom kun je het digitale geld, oftewel cryptocurrencies, ook ontvangen. Voor een transactie moet je GAS betalen.

Nieuwe informatie op de blockchain
Je coins belanden in een digitale portemonnee, ook wel de ‘wallet’ genoemd. In feite voeg je tijdens een transactie nieuwe informatie aan de blockchain toe. Daarbij verstuur je informatie naar alle Ethereum nodes. De miners ontvangen de informatie en updaten vervolgens hun eigen blockchain.

Ether versturen in de praktijk: hoe werkt het?
Misschien maakt een praktijkvoorbeeld het iets duidelijker. Stel je voor dat je Ether naar een andere gebruiker stuurt. In dat geval zet je een transactie op touw die zegt ‘verhoog de balans van gebruiker nummer 1 en verlaag de balans van gebruiker nummer 2’. Deze informatie wordt als het ware op de blockchain geschreven.

Wat is een call?
Tijdens een call is er geen sprake van minen. Deze term wordt gebruikt wanneer je informatie uit de blockchain leest. Stel je voor dat je een verbinding maakt met een Ethereum node met metamask. Je maakt in dat geval een call. Het komt er op neer dat je in de blockchain zoekt naar de data die genoemd is in de call.

Geen kosten
Een call kost geen GAS of Ether, omdat je de informatie niet toevoegt aan de blockchain. Er is niemand die de call zal gaan minen, dus van een betaling aan miners is geen sprake.

Vraag 8 – Is het mogelijk om een smart contract te verbeteren of aan te passen?

De vraag of een smart contract verbeterd of aangepast kan worden is niet met een simpel ‘ja’ of ‘nee’ te beantwoorden. Slimme contracten op een blockchain zijn niet te veranderen. Dit betekent dat het adres en de code van een smart contract permanent op de blockchain staat. Ze kunnen daarom niet worden aangepast.

Oude informatie in een nieuw contract verwerken
Desondanks zijn er een aantal manieren om een nieuw contract op te stellen in plaats van het oude. In dat geval voer je eigenlijk een ‘update’ uit. Zo zou je alle informatie van het oude contract in de nieuwe versie kunnen verwerken. Vervolgens dien je het adres te updaten. Laat je gebruikers weten dat je deze verandering doorvoert.

Tussentijds contract creëren
Een andere manier om het smart contract aan te passen is het creëren van een ‘tussentijds contract’. Deze heeft hetzelfde adres als de al actieve Smart Contract. Dit betekent dat alle transacties en calls doorgestuurd worden naar de actieve versie. Hoewel je dus hetzelfde adres gebruikt, heeft het nieuwe contract een andere code aan het einde.

Risico’s
Besef wel dat het doorsturen van calls bepaalde risico’s met zich meebrengt. Zo zul je extra voorzichtig moeten zijn bij het creëren van smart contracts die te updaten zijn.

Vraag 9 – Wat is het verschil tussen Proof of Stake en Proof of Work?

Nodes op een blockchain moeten overeenstemming met elkaar bereiken. Dit betekent dat ze akkoord gaan met alle transacties die tot op dat moment op het netwerk hebben plaatsgevonden. Omdat actief mag zijn op de blockchain is een manier waarop de betrouwbaarheid van een blok kan worden getest noodzakelijk. Er worden twee soorten algoritmes gebruikt om een overeenstemming tussen nodes te bereiken, namelijk Proof of Stake (POS) en Proof of Work (POW). Met behulp van deze algoritmes moeten verschillende gebruikers het eens worden over de huidige staat van de blockchain, zelfs als ze elkaar of een centrale autoriteit niet vertrouwen.

Wat is Proof of Stake?
Proof of Work is een proces om transacties te bevestigen met dure rekenkundige processen, terwijl de transacties van Proof of Stake bevestigd worden met stemmen op de juiste blockchain. Proof of Stake en Proof of Work hebben allebei hun eigen voordelen. Het eerstgenoemde algoritme draait om bevestiging en niet om het minen. Dit betekent dat een blok nog steeds door iemand gecreëerd moet worden. Het Proof of Stake algoritme bepaalt wie het volgende blok mag maken.

Willekeurig selectieproces bij Proof of Stake
Het selectieproces van Proof of Stake verloopt over het algemeen willekeurig. In een enkel geval wordt er over gestemd. POS staat bekend als duurzamer dan Proof of Work omdat er geen rekenkundige berekeningen voor nodig zijn. In plaats daarvan moeten de coins en tokens als het ware vergrendeld worden om het transactieproces of het minen op gang te brengen.

Wiskundige theorieën en berekeningen
Proof of Work gebruikt diverse wiskundige theorieën en berekeningen om aan te tonen dat een blok te vertrouwen is. Denk bijvoorbeeld aan de wetten van de thermodynamica en stelling van Bayes. Er kan alleen worden gemined als er een consensus is bereikt. Het voordeel van POW is dat je de blockchain keten kunt kiezen waar het meest aan is gewerkt. De lange geschiedenis is voor veel gebruikers een teken dat de keten te vertrouwen is.

POW zorgt voor hoge kosten
Het vele werk dat voorafgaat aan POW brengt echter ook nadelen met zich mee. Zo toont het aan dat deze methode zeer inefficiënt is wat betreft energiegebruik. Dit verhoogt de kosten, hetgeen gebruikers stimuleert om de hashing power te centraliseren. Dit betekent dat meerdere gebruikers samen blokken gaan genereren. Zij doen dit onder andere in de vorm van mining pools. Op die manier verdienen de miners meer inkomsten dan wanneer ze alleen werken.

Vraag 10 – Waarom is Ethereum van plan om Proof of State te gaan gebruiken?

De Ethereum blockchain gebruikt regelmatig Proof of Work om voor consensus te zorgen tussen nodes. De ontwikkelaars van het platform zijn echter van plan om over te gaan naar Proof of State. Ze werken aan een nieuwe variant van de blockchain genaamd ‘Casper’ en hebben daar verschillende redenen voor. Ten eerste willen ze de uitvoeringskosten verlagen en ten tweede moet POS de veiligheid van het Ethereum netwerk verhogen

Hoog energieverbruik
Het Ethereum netwerk heeft te maken met een aantal problemen die snel opgelost moeten worden. Ten eerste zorgt Proof of Work voor hoge uitvoeringskosten. Er zijn namelijk grote hoeveelheid elektriciteit nodig om een blockchain te beveiligen. Naar schatting verbruiken Bitcoin en Ethereum allebei meer dan een miljoen aan elektriciteits- en hardwarekosten per dag. Dit komt onder andere de technieken die gebruikt worden om overeenstemming tussen nodes te bereiken. Het energieverbruik door zogeheten hash berekeningen ligt naar schatting even hoog als dat van alle inwoners van IJsland! Door deze hoge kosten moet je als gebruiker veel GAS betalen om een transactie mogelijk te maken.

Waarom lagere kosten?
Na het invoeren van Proof of Stake zullen de kosten van GAS een stuk lager komen te liggen. Dit heeft te maken met het lagere energieverbruik, waardoor er minder miners nodig zijn. Bovendien zijn er minder coins nodig om gebruikers ervan te overtuigen deel te nemen aan het Ethereum netwerk.

Proof of Stake en de veiligheid
Het vervangen van Proof of Work door Proof of Stake verlaagt niet alleen de kosten van het uitvoeren van transacties op de Ethereum blockchain. Er is ook gekeken naar de veiligheid. Zowel Ethereum ontwikkelaars als onderzoekers geloven dat de algoritmes van Proof of State het netwerk beter zullen beschermen tegen kwade invloeden, zoals een 51 procent aanval. Proof of State is in staat om straf maatregelen te nemen wanneer er een 51 procent aanval wordt uitgevoerd. De kosten ervan liggen een stuk hoger dan bij Proof of Work.

Vraag 11 – Bij hoeveel bevestigingen binnen het Ethereum netwerk is een transactie ‘veilig’?

De oprichter van Ethereum heet Vitalik Buterin. In een blog schreef hij ooit dat er een kleine hoeveelheid extra bevestigingen, tussen de twee en vijf, nodig is om de veiligheid van een snelle blockchain te garanderen. Dit betekent dat er voor een blockchain van 17 seconden ongeveer tien bevestigingen nodig zijn. Het duurt ongeveer drie minuten om onder dit mogelijke model dezelfde beschermingsgraad te bereiken als de zes bevestigingen op de 10 minuten blockchain. Deze bevestigingen nemen ongeveer een uur in beslag.

Als crypto enthousiasteling volg ik de ontwikkelingen met betrekking tot smart contracts op de voet. Middels mijn berichten geef ik informatie over mijn ontdekkingen. Ik geef nooit financieel advies.