Bitcoin en Ethereum vergelijken: UTXO versus accountgebaseerde transactiemodellen

UTXO versus accountgebaseerde modellen

De twee meest bekende cryptocurrency-platforms, Bitcoin en Ethereum, gebruiken verschillende transactiemodellen voor hun platforms, elk met hun eigen specifieke voor- en nadelen ten opzichte van de andere. Begrijpen hoe ze werken vanuit een conceptueel perspectief is belangrijk voor een beter begrip van het algemene kader van deze platforms en andere platforms die zijn gebouwd met dezelfde of vergelijkbare modellen.

Hoewel consensus op cryptocurrency-platforms nodig is om het netwerk te beveiligen en de status van de blockchain te valideren, wordt het transactiemodel dat door een platform wordt gebruikt, gebruikt om het eigendom van tokens te bewijzen. Bitcoin gebruikt het Unspent Transaction Output (UTXO) -schema, terwijl Ethereum het Account Based-model gebruikt. Beide modellen zijn, op hun meest basale niveau, modellen voor het volgen van de databasestatus, en de implementatie van elk in hun respectievelijke platforms heeft een specifiek doel en een specifieke rol in de grotere structuur van het platform..

UTXO versus op accounts gebaseerde modellen

Bitcoin was de eerste cryptocurrency en daarmee het eerste platform dat gebruik maakte van het meer abstracte UTXO-model, terwijl het Account Based-model van Ethereum fundamenteler een model vertegenwoordigt dat lijkt op het traditionele bankrekeningmodel..

Het UTXO-schema en het gebruik ervan in Bitcoin

Het ongebruikte transactie-uitvoermodel dat in Bitcoin wordt toegepast, is een abstracter concept dan het op rekeningen gebaseerde model dat in Ethereum wordt gebruikt. Het is een essentieel onderdeel van Bitcoin waarmee de blockchain transparant kan zijn doordat alle transacties met elkaar zijn verbonden door een ketting van digitale handtekeningen.

Wat is Nakamoto Consensus

Lezen: onze gids voor Nakamoto-consensus

In het UTXO-model draagt ​​elke tokeneigenaar een munt die hij bezit over aan een andere door de hash van een eerdere transactie en de openbare sleutel (adres) van de volgende eigenaar digitaal te ondertekenen en toe te voegen aan het einde van de munt. Het mechanisme is in wezen een voortdurende overtreding van inputs en outputs waarbij de eigenaar van tokens feitelijk niet rechtstreeks eigenaar is van de tokens, maar eerder de output bezit van een specifiek aantal tokens die vervolgens kunnen worden ondertekend als input voor een nieuwe eigenaar, die dan regelt de nieuwe uitgangen. Er zijn 3 fundamentele regels in het UTXO-schema.

  • Elke transactie moet bewijzen dat de som van de inputs groter is dan de som van de outputs.
  • Elke invoer waarnaar wordt verwezen, moet geldig zijn en nog niet uitgegeven.
  • De transactie moet voor elke invoer een handtekening hebben die overeenkomt met de eigenaar van de invoer.

Dus laten we in een typische UTXO-transactie Alice en Bob als voorbeeld gebruiken. Alice bezit 10 BTC en wil er 5 naar Bob sturen. Bob heeft geen BTC. In plaats van 10 BTC te bezitten, bezit Alice 2 verschillende transactie-outputs, bestaande uit respectievelijk 6 en 4 BTC. De portemonnee van Alice zou de beste output kiezen om naar Bob te sturen. In dit geval wordt de uitvoer van 6 BTC naar Bob gestuurd en wordt Bob de eigenaar van 5 BTC door het vereiste adres, de digitale handtekening en de digitale sleutel te hebben die nodig zijn om het eigendom van de nieuwe uitvoer te bewijzen. De extra 1 BTC aan wisselgeld van de transactie wordt teruggestuurd naar Alice en staat bekend als de niet-bestede transactie-uitvoer (UTXO). Nu bezit Alice nog steeds twee uitgangen, maar ze zijn samengesteld uit respectievelijk 1 en 4 BTC. Bob bestuurt nu 1 output ter waarde van 5 BTC. Een begunstigde kan de handtekeningen verifiëren om de eigendomsketen van de tokens in het gedistribueerde grootboek te verifiëren. Merk op dat miners Bitcoin genereren via een coinbase-transactie, die geen invoer bevat.

UTXO-model

UTXO-model, afbeelding van Bitcoin.org

Logischerwijs is het UTXO-model veel eenvoudiger dan het accountmodel in termen van schaalbaarheid, en kritisch gezien zorgt het ervoor dat het consensusmodel van Bitcoin (PoW) eenvoudig blijft. Dit heeft belangrijke gevolgen voor de schaalbaarheid en beveiliging van het netwerk in het algemeen. Bitcoin ondersteunt ook meerdere soorten scripts waardoor het complexe betalingslogica kan verwerken.

Het ontwerp van het UTXO-model heeft tal van voordelen waardoor het opvalt als een elegant compatibel mechanisme binnen de Bitcoin-netwerkarchitectuur. Een van de belangrijkste voordelen van dit systeem is dat het eenvoudige betalingsverificaties (SPV) op het netwerk mogelijk maakt. Deze light wallets kunnen op een gedecentraliseerde en betrouwbare manier communiceren met de Bitcoin-blockchain zonder de hele Bitcoin-blockchain te hoeven downloaden, waardoor de opslag aanzienlijk wordt verminderd en telefoontoepassingen kunnen communiceren op het Bitcoin-netwerk..

Bovendien creëert het UTXO-model een omgeving waarin parallelle verwerkingscapaciteit over meerdere adressen mogelijk is, waardoor een veel betere infrastructuur voor schaalbaarheid mogelijk is. Transacties kunnen parallel worden verwerkt, aangezien ze allemaal verwijzen naar onafhankelijke inputs. Ten slotte, als een gebruiker voor elke transactie een nieuw adres genereert, wordt het ondanks de transparantie van de blockchain moeilijker om accounts te koppelen. Dit is de pseudo-anonieme eigenschap van Bitcoin, maar steeds vaker gebruikte technieken voor het traceren van transacties en het koppelen van accounts hebben ertoe geleid dat Bitcoin niet zo fungibel is als aanvankelijk werd aangenomen..

Ondanks enkele substantiële voordelen van het UTXO-model bij de toepassing ervan in een raamwerk zoals dat van Bitcoin, zijn er nog steeds enkele belangrijke nadelen, vooral wanneer het model wordt toegepast op een complexer, compleet Turing-platform zoals Ethereum. Het bouwen van applicaties op het UTXO-ontwerp dwingt ontwikkelaars bijvoorbeeld om de hoeveelheid status die door elke output wordt beïnvloed, te beperken. Evenzo is het UTXO-transactieschema inherent niet compatibel met het ontwikkelen van slimme contracten, omdat het concept eigenlijk alleen geschikt is voor gebruik in toepassingen waarbij elke output slechts eigendom is van één persoon en kan worden afgebroken als de output kan worden geconsumeerd door twee of meer mensen tegelijk. dezelfde tijd.

Het accountgebaseerde model en het gebruik ervan in Ethereum

Balansbeheer in het Account Based-model is het meest bekende van de twee modellen en werkt in Ethereum op dezelfde manier als in de traditionele bankwereld. In wezen ervaart elk account directe waarde en informatieoverdracht met toestandsovergangen.

Ethereum-gids

Lezen: onze complete gids voor Ethereum

Alice en Bob willen bijvoorbeeld met elkaar zaken doen. Alice wil Bob 5 tokens sturen en Alice heeft 10 tokens in haar account, terwijl Bob 0 heeft. In het accountgebaseerde model stuurt Alice 5 tokens aan Bob die van haar account worden afgetrokken en aan Bob’s account worden toegevoegd. Alice heeft nu 5 tokens en Bob heeft er 5. Dit is een eenvoudig concept en zo werkt het traditionele financieringsmodel van transacties, omdat het gemakkelijk is om dubbele uitgaven te volgen en te voorkomen, omdat er in het hele financiële systeem gecentraliseerde autoriteiten zijn die de transactiestroom bewaken.

In Ethereum zijn er twee soorten accounts: door een privésleutel gecontroleerde gebruikersaccounts en door een contractcode gecontroleerde accounts (slimme contracten). Dit is belangrijk omdat het een vitale reden is waarom Ethereum het op accounts gebaseerde model verkoos boven het UTXO-model. Omdat Ethereum een ​​volledige Turing-programmeertaal (Solidity) gebruikt en een van de belangrijkste kenmerken slimme contracten zijn, biedt het accountmodel veel meer eenvoud dan het op UTXO gebaseerde model dat door Bitcoin wordt gebruikt. Ethereum heeft een aanzienlijk aantal gedecentraliseerde applicaties die een willekeurige staat en code bevatten, het heeft geen zin om het UTXO-model te gebruiken dat in Bitcoin wordt gebruikt, omdat het inherent het vermogen van slimme contracten om uit te voeren zou beperken.

Elk account in Ethereum heeft zijn eigen saldo, opslag en coderuimte voor het bellen naar andere accounts of adressen. Een transactie is geldig als een verzendende rekening voldoende saldo heeft om ervoor te betalen. Als de ontvangende rekening code heeft, wordt de code uitgevoerd, waarbij alles verandert, van interne opslag tot het maken van extra berichten die gevolgen kunnen hebben voor debiteringen en bijschrijvingen naar andere rekeningen. Hierdoor kan elk nieuw gegenereerd blok mogelijk de status van alle andere accounts beïnvloeden.

Specifieke voordelen van het accountmodel in Ethereum zijn grotere ruimtebesparing, eenvoud, vertrouwdheid en fungibiliteit. Elke transactie in het rekeningmodel hoeft slechts één referentie en handtekening te maken die één uitvoer oplevert, in tegenstelling tot UTXO-ontwerp. Dit zorgt voor een aanzienlijke ruimtebesparing, wat essentieel is voor een platform dat zo groot en complex is als Ethereum. Bovendien is er, naast de vertrouwdheid en eenvoud die mogelijk wordt gemaakt door het accountgebaseerde model, een veel hogere mate van fungibiliteit op de Ethereum-blockchain dan in vergelijking met Bitcoin. Gebruikers van Ethereum voeren transacties uit met behulp van externe procedureaanroepen die het volgen van interne transacties in het Ethereum-grootboek veel uitdagender maken dan Bitcoin, waar alle transacties openbaar kunnen worden gelinkt via het grootboek door de digitale handtekeningen van het UTXO-schema te volgen. De fungibiliteit wordt dus vergroot, aangezien het moeilijk is om munten op de zwarte lijst van handelaars te plaatsen die voor illegale activiteiten worden gebruikt.

Aan de andere kant draaien de nadelen van het accountmodel om het beperken van de schaalbaarheid van het platform. Hoewel een noodzakelijke implementatie vanwege het ontwerp van Ethereum, zijn schaalbaarheidsproblemen rond de ontwikkeling van Ethereum goed ingeburgerd en een punt van zorg dat op de voorgrond treedt in de bredere industrie. Logica ontwerpen rond het accountmodel is niet zo triviaal als bij het UTXO-model en kan mogelijke implicaties hebben voor andere ontwerpconcepten binnen het platform naarmate het groeit.

Gevolgtrekking

Binnen cryptocurrency-platforms is er een diverse reeks ontwerpconcepten en technische mechanismen die het platform binnengaan en kunnen functioneren als een levensvatbaar, veilig en bruikbaar systeem.

De transactiemodellen die door dergelijke platforms worden gebruikt, maken gebruik van cryptografie om het eigendom van tokens over het netwerk te verifiëren. Het UTXO-schema werkt uitstekend voor Bitcoin, terwijl het Account Based-model dat in Ethereum wordt gebruikt, is gericht op het ondersteunen van de meer complexe applicatie- en contractbehoeften..

Latere iteraties van deze platforms kunnen deze mechanismen aanpassen en optimaliseren om beter te passen bij de toekomstige ontwikkeling van hun respectieve netwerken, maar als u hun huidige implementaties begrijpt, krijgt u een veel beter begrip van hoe hun netwerken werken en waarom ze werken. zijn zo nieuw.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me