Cardano (ADA) is een van de populairste crypto projecten. Ooit begon het als een idee, maar na jaren van onderzoek begint het project steeds meer vorm te krijgen. Het is op dit moment al mogelijk om smart contracts op de blockchain van Cardano te draaien, waardoor er dus ook gecentraliseerde applicaties (dApps) gebruik kunnen maken van Cardano.
Ik zal je in dit artikel uitleggen hoe Cardano technisch gezien werkt, zodat je zelf kunt bepalen of jij het eens bent met de hype rondom Cardano.
Bekijk snel
Wat is Cardano (ADA)?
Cardano is een cryptoproject waar al lang aan gewerkt wordt. Dit komt mede door het vele onderzoek dat is gedaan voordat ze begonnen met de realisatie ervan. Daarom zegt met ook wel dat Cardano de blockchain van academici is, gezien vrijwel alles is gebaseerd op wiskundige theorieën.
Nu zul je misschien denken dat meerdere projecten op wiskundig onderzoek zijn gebaseerd. Dat klopt, dus wat maakt Cardano dan zo speciaal? Cardano is een blockchain die de strijd met blockchains als Ethereum (ETH) aangaat, waar smart contracts op geprogrammeerd kunnen worden.
Het team van Cardano wil de problemen waar blockchains als Ethereum en Bitcoin (BTC) last van hebben oplossen voordat ze deze problemen zelf ervaren. Dat is dan ook precies de reden dat ze eerst lang en diep onderzoek hebben gedaan, voordat ze begonnen aan het bouwen van de blockchain zelf.
Een van deze problemen is de schaalbaarheid, waar veel blockchains tegenaan lopen. Denk bijvoorbeeld aan Bitcoin en Ethereum. BTC kan maar 7 transacties per seconde verwerken, terwijl ETH er 14 per seconde kan verwerken. Dat is niet veel, gezien de stijgende populariteit onder deze twee blockchains.
Hoe kan het dat deze blockchains tegen dit probleem aanlopen? En waarom kunnen ze dit niet oplossen, als Cardano dat wel kan? Dit ligt voornamelijk in het feit dat een blockchain als Ethereum al volop gebruikt wordt en uit een groot netwerk bestaat. Hierdoor is het een stuk lastiger om een grote update uit te rollen. De hele gemeenschap moet het er mee eens zijn, om een splitsing van de blockchain te voorkomen.
Wil je wat meer weten over wat Cardano is? Dan raad ik je aan onderstaande video van AllesOverCrypto te kijken. Hierin leg ik je uit wat Cardano is.
Het team achter Cardano
We zullen het in dit artikel vaak hebben over het team achter Cardano. Daarom is het goed om eens te kijken naar wie er precies in het team zit. Het is namelijk niet alleen Charles Hoskinson (CEO van Cardano) die aan Cardano werkt, ook al kom je vooral zijn naam in het nieuws tegen.
In feite zit IOHK achter Cardano. Dit is een bureau dat begonnen is om blockchains te bouwen voor academische instituties, overheden, organisaties en bedrijven. Al snel werd de focus gericht op de ontwikkeling van Cardano.
Wanneer we op de website van van IOHK kijken, zien we dat het team uit meer dan 300 mensen bestaat. We kunnen natuurlijk niet alle namen noemen, dus gaan we vooral in op de belangrijkste mensen in het team.
- Charles Hoskinson - CEO en mede-oprichter van Cardano
- Jeremy Wood - Mede-oprichter van Cardano
- Romain Pellerin - Chief Technology Officer van Cardano
- Jerry Fragiskatos - Chief Commercial Officer van Cardano
- Jeff Pollack - Chief Financial Officer van Cardano
- Prof. Aggelos Kiayias - Chief scientist van Cardano
- Adam Bates - Chief Marketing Officer van Cardano
Deze mensen, maar ook de overige teamleden van Cardano, hebben allemaal veel ervaring opgedaan in de technologie- en zakenwereld. Om meer over hen te weten te komen, raad ik je aan om op het internet verder te zoeken naar deze personen.
Hoe werkt Cardano?
Op de blockchain van Cardano kunnen dus smart contracts geprogrammeerd worden. Dit stelt ontwikkelaars in staat om gedecentraliseerde applicaties (dApps) te laten draaien op de Cardano-blockchain. Laten we eens gaan kijken naar hoe Cardano dat doet, door verschillende onderdelen van de werking uit te lichten.
Programmeren in Haskell
De ontwikkelaars van Cardano gebruiken Haskell als programmeertaal van de blockchain. Dit is een van de veiligste programmeertalen die je op dit moment kunt vinden. Hierdoor kunnen we dus best zeggen dat het team achter Cardano veiligheid belangrijk vindt.
Wanneer een programmeertaal niet veilig is, kunnen hackers makkelijk exploits vinden en uitvoeren. Dit zou er natuurlijk voor kunnen zorgen dat de blockchain niet meer goed zou kunnen werken, alsook dat de waarde van de cryptocurrency snel instort.
Het is overigens niet gebruikelijk dat blockchains worden geschreven in Haskell. Meestal zien we dat ontwikkelaars voor blockchains programmeertalen als Python, Solidity, Golang, C++, C#, Vyper, Rholang en JavaScript gebruiken. Dit zijn talen waarin veel ontwikkelaars kunnen coderen, waardoor de blockchains ook erg toegankelijk zijn.
dApps ontwikkelen met Plutus
De blockchain van Cardano is geprogrammeerd met Haskell, al zijn de smart contracts dat niet. Ontwikkelaars zullen Plutus moeten gebruiken als programmeertaal voor de smart contracts op Cardano. Dit is een programmeertaal die is ontwikkeld door Cardano, en daarom zullen ontwikkelaars deze taal onder de knie moeten krijgen om smart contracts te kunnen programmeren voor Cardano.
Dit kan natuurlijk ontwikkelaars afschrikken, omdat veel ontwikkelaars al in Solidity kunnen programmeren, en niet graag een nieuwe taal leren die voor maar één ecosysteem gebruikt kan worden. Dat is vrij logisch. Toch heeft Cardano een goede reden om een eigen programmeertaal te ontwikkelen, en niet een programmeertaal als Solidity te gebruiken. Ondanks dat de blockchain dan een stuk toegankelijker zou zijn voor andere ontwikkelaars.
In het verleden is het namelijk een keer voorgekomen dat er een exploit was gevonden in Solidity, die werd gebruikt om smart contracts te hacken. Hierdoor konden deze smart contracts niet goed meer werken, waarna veel ontwikkelaars vragen hadden omtrent de veiligheid van deze programmeertaal. Voor het team van Cardano was er dus een goede reden om met een eigen programmeertaal te komen.
Plutus is een erg complexe programmeertaal waarmee complexe smart contracts gemaakt kunnen worden. Cardano wil niet alleen meer snelheid en een goedkoper alternatief voor Ethereum bieden. Ze willen ook dat er veel betere en complexere smart contracts gebouwd kunnen worden, zodat er veel meer soorten DeFi-applicaties gebouwd kunnen worden. Dat is in mijn ogen een groot voordeel, omdat dit zou betekenen dat applicaties die nu gecentraliseerd zijn, ook als dApp gebouwd kunnen worden. Dit zorgt dus voor een snellere adoptie van de blockchain.
Met Marlowe kan iedereen dApps maken
De kans is groot dat je zelf nog nooit een gedecentraliseerde applicatie hebt geprogrammeerd. Niet gek, want dat is best lastig. Je zult veel kennis in programmeren moeten hebben om zoiets succesvol te laten draaien op een blockchain. Gelukkig is het bij Cardano mogelijk om een dApp te maken, zelfs wanneer je totaal geen verstand hebt van programmeren.
Marlowe is een platform dat bovenop Plutus en Haskell is gebouwd. Binnen dit platform kun je simpelweg blokken slepen om zo een applicatie in elkaar te zetten. Het kost natuurlijk wel wat tijd om het een beetje onder de knie te krijgen, maar je hoeft er niet technisch voor aangelegd te zijn.
Door blokken te slepen, wordt jouw applicatie automatisch omgezet in een Plutus codebestand. Wanneer je klaar bent, wordt de Plutus-code gekoppeld aan de Cardano-blockchain, waarna jij en anderen mensen jouw dApp kunnen gebruiken. In onderstaande video kun je zien hoe dit in zijn werk gaat.
Ethereum-dApps naar Cardano
De meeste dApps draaien op dit moment op de blockchain van Ethereum. Dit komt doordat Ethereum eigenlijk het eerste blockchain-ecosysteem was dat ondersteuning voor smart contracts bood, waardoor ontwikkelaars dApps konden programmeren voor de blockchain van Ethereum. Deze dApps werden geprogrammeerd in Solidity, wat de programmeertaal van Ethereum is.
Wat als je een goed werkende dApp op de blockchain van Ethereum hebt draaien, en je graag wilt overstappen naar Cardano? Deze blockchain is immers sneller en de transactiekosten zijn lager. Je zou misschien denken dat je dan een nieuwe applicatie zult moeten schrijven, omdat smart contracts binnen Cardano met Plutus geprogrammeerd moeten worden.
Dit zou veel ontwikkelaars tegenhouden over te stappen naar Cardano. Plutus is namelijk een vrij ingewikkelde programmeertaal, en niet veel ontwikkelaars willen een nieuwe programmeertaal leren die voor één ecosysteem is gebouwd.
Gelukkig is het mogelijk om Ethereum-dApps te kopiëren naar Cardano zonder al te veel moeite. Zo kun je als eigenaar van een dApp makkelijk overgaan naar Cardano. Maar niet alleen eigenaren van dApps kunnen dat doen.
Zoals je weet is de (publieke) blockchain en alles wat hierop draait open-source. Dit betekent dat iedereen alles kan en mag kopiëren of dupliceren. Je kunt er dus voor kiezen om applicaties die op Ethereum draaien, zoals UniSwap (UNI), te dupliceren naar de Cardano blockchain, om er vervolgens een eigen applicatie van te maken. Het is namelijk niet moeilijk om het logo, de naam en de kleuren aan te passen.
Plutus Core
Hoe wordt ervoor gezorgd dat de blockchain zulke complexe smart contracts kan verwerken? Dat gebeurt met Plutus Core.
Plutus Core is de programmeertaal die ervoor zorgt dat smart contracts aan de Cardano-blockchain worden gekoppeld. Smart contracts die met Plutus zijn geprogrammeerd, zijn namelijk erg complex. Dit heeft natuurlijk veel voordelen, omdat ontwikkelaars hierdoor geavanceerde applicaties kunnen maken. Echter, het zorgt er ook voor dat de blockchain zwaar belast wordt.
Door middel van Plutus Core worden de smart contracts iets simpeler gemaakt, zodat het minder kracht kost om deze te laten draaien op de blockchain. Op deze manier wordt de snelheid van de blockchain gegarandeerd, en kunnen er meer transacties per seconde verwerkt worden.
Wanneer dit niet goed wordt opgezet, zou het ontzettend veel kracht en snelheid kosten. Je ziet daarom ook steeds meer projecten, zoals Avalanche (AVAX), die meerdere blockchains naast elkaar gebruiken om zo de rekenkracht te kunnen verdelen. Cardano doet dat dus door middel van Plutus Core, en het ziet er naar uit dat dit ontzettend goed werkt.
Dit is overigens niet alleen positief voor ontwikkelaars, maar natuurlijk ook voor gebruikers. Wanneer de blockchain snel is, betalen ze namelijk minder transactiekosten. Er is immers ruimte genoeg beschikbaar voor iedereen.
Het consensus algoritme Ouroboros
Naast de programmeertaal wordt de veiligheid van blockchains natuurlijk ook gegarandeerd door middel van het consensus algoritme. Daarom heeft het team van Cardano hun eigen consensus algoritme ontwikkeld, genaamd Ouroboros.
Het algoritme is gebaseerd op Proof of Stake (PoS), wat betekent dat de cryptomunten niet gemined hoeven te worden zoals bij Bitcoin wel het geval is. In plaats daarvan kunnen gebruikers het ADA-token staken. Dit betekent dat ze ADA-tokens inzetten als een soort borg. Hoe hoger de stake (borg), des te hoger de kans dat het netwerk ze uitkiest om de volgende transacties te mogen valideren en een nieuw blok te mogen toevoegen aan de blockchain.
Op het moment dat een gebruiker zijn werk niet goed doet, zal het netwerk hier vrij snel achterkomen. Als straf wordt zijn stake afgepakt, waardoor het dus een duur grapje kan worden. Voor het staken ontvangen gebruikers een beloning in de vorm van nieuwe ADA-tokens, die ze natuurlijk opnieuw zouden kunnen gaan staken.
Zoals gezegd is Ouroboros gebaseerd op Proof of Stake, wat betekent dat ze er een eigen draai aan hebben gegeven. Proof of Stake bevat namelijk uit nature een aantal veiligheidsissues, en deze problemen hebben de ontwikkelaars opgelost in Ouroboros. Je hoeft dus niet bang te zijn dat er ooit een bekende PoS-kwetsbaarheid in dit consensus algoritme gevonden zal worden.
Conclusie
Cardano is dus een alternatief voor Ethereum. Ze willen een blockchain die sneller is, transacties goedkoper kan verwerken, maar ook complexere smart contracts en dus dApps kan draaien. Daarvoor zul je wel een technisch hoogstandje moeten kunnen neerzetten, omdat het niet bepaald makkelijk is om zoiets te realiseren.
Je hebt kunnen lezen dat Cardano dit doet door hun blockchain te hebben geprogrammeerd met Haskell, waar smart contracts op kunnen draaien die zijn geprogrammeerd met Plutus. Om kracht te besparen, zorgt Plutus Core ervoor dat de smart contracts 'simpeler' worden gemaakt, zodat de blockchain transacties sneller kan blijven verwerken.
Daar blijft het niet bij: het is namelijk ook mogelijk om als beginner zelf een smart contract te bouwen met Marlowe. Of je kunt een dApp binnen enkele klikken overzetten van Ethereum naar Cardano. De techniek die dit mogelijk maakt, zorgt ervoor dat Cardano steeds vaker gebruikt zal worden voor smart contracts en dApps.
Wil je meer weten over Cardano? Stel dan je vragen in onze AllesOverCrypto Facebookgroep en dan beantwoorden onze experts al jouw vragen. Heb je andere crypto gerelateerde vragen? Het makkelijkste is om jouw vraag in onze FAQ op te zoeken. Wat je ook kan doen, is dat je jouw vraag + "AllesOverCrypto" googelt.