Corda - oopbron blokketting vir besigheid

tou is 'n verspreide Grootboek vir die berging, bestuur en sinchronisering van finansiële verpligtinge tussen verskillende finansiële organisasies.
Corda - oopbron blokketting vir besigheid
Corda het redelik goeie dokumentasie met videolesings wat gevind kan word hier. Ek sal probeer om kortliks te beskryf hoe Corda binne werk.

Kom ons kyk na die hoofkenmerke van Corda en sy uniekheid onder ander blokkettings:

  • Corda het nie sy eie cryptocurrency nie.
  • Corda gebruik nie die konsep van mynbou en die Proof-of-Work-stelsel nie.
  • Data-oordrag vind slegs tussen partye by die transaksie/kontrak plaas. Daar is geen wêreldwye uitsaai na alle netwerknodes nie.
  • Daar is geen sentrale beheerder wat alle transaksies bestuur nie.
  • Corda ondersteun verskeie konsensusmeganismes.
  • Konsensus word tussen deelnemers bereik op die vlak van 'n individuele ooreenkoms/kontrak, en nie op die vlak van die hele stelsel nie.
  • 'n Transaksie word slegs bevestig deur die deelnemers wat daarmee verband hou.
  • Corda bied 'n direkte verband tussen formele menslike regstaal en slim kontrakkode.

Die grootboek

Die konsep van grootboek in Corda is subjektief. Daar is geen enkele sentrale databewaarplek nie. In plaas daarvan hou elke nodus 'n aparte databasis van feite wat daaraan bekend is.

Stel jou byvoorbeeld 'n netwerk van 5 nodusse voor, waar 'n sirkel 'n feit is wat aan die nodus bekend is.

Corda - oopbron blokketting vir besigheid

Soos ons kan sien, weet Ed, Carl en Demi van feit 3, maar Alice en Bob is nie eers bewus daarvan nie. Corda waarborg dat algemene feite in die databasis van elke nodus gestoor word, en die data sal identies wees.

State

Staat is onveranderlik 'n voorwerp wat 'n feit verteenwoordig wat bekend is aan een of meer netwerknodes op 'n sekere tydstip.

State kan arbitrêre data stoor, byvoorbeeld aandele, effekte, lenings, identifikasie-inligting.

Byvoorbeeld, die volgende staat verteenwoordig 'n IOU - 'n ooreenkoms dat Alice Bob 'n bedrag van X skuld:

Corda - oopbron blokketting vir besigheid
Die lewensiklus van 'n feit oor tyd word deur 'n reeks toestande voorgestel. Wanneer dit nodig is om die huidige toestand op te dateer, skep ons 'n nuwe een en merk die huidige een as histories.

Corda - oopbron blokketting vir besigheid

Transaksies

Transaksies is voorstelle om die grootboek by te werk. Hulle word nie na alle grootboekdeelnemers uitgesaai nie en is slegs beskikbaar vir daardie netwerkdeelnemers wat die wettige reg het om dit te bekyk en te bestuur.

'n Transaksie sal by die grootboek gevoeg word as dit:

  • kontraktueel geldig
  • onderteken deur alle vereiste deelnemers
  • bevat nie dubbelbesteding nie

Corda gebruik die UTXO (onbestede transaksie-uitset)-model, waarin elke grootboektoestand onveranderlik is.

Wanneer 'n transaksie geskep word, word die uitsettoestand van die vorige transaksie (deur hash en indeks) na die inset oorgedra.

Corda - oopbron blokketting vir besigheid
Transaksie lewensiklus:

  • Skepping (Op die oomblik is die transaksie net 'n voorstel om die grootboek by te werk)
  • Versamel handtekeninge (Vereiste partye by die transaksie keur die opdateringsvoorstel goed deur 'n handtekening by die transaksie te voeg)
  • Verbind transaksie aan grootboek

Sodra 'n transaksie by die grootboek gevoeg is, word die invoertoestande as histories gemerk en kan dit nie in toekomstige transaksies gebruik word nie.

Corda - oopbron blokketting vir besigheid
Benewens inset- en uitsettoestande, kan 'n transaksie die volgende bevat:

  • Opdragte (transaksieparameter wat die doel van die transaksie aandui)
  • Aanhangsels (vakansiekalender, valuta-omskakelaar)
  • Tydvensters (geldigheidsperiode)
  • Notaris (notaris, spesiale netwerkdeelnemers wat transaksies bekragtig)

Corda - oopbron blokketting vir besigheid

kontrakte

Wanneer ons oor transaksiegeldigheid praat, bedoel ons nie net die teenwoordigheid van die nodige handtekeninge nie, maar ook kontraktuele geldigheid. Elke transaksie word geassosieer met 'n kontrak wat dit aanvaar en die inset- en uitsettoestande bekragtig. 'n Transaksie word slegs as geldig beskou as al sy state geldig is.

Kontrakte in Corda word in enige JVM-taal geskryf (byvoorbeeld Java, Kotlin).

class CommercialPaper : Contract {
    override fun verify(tx: LedgerTransaction) {
        TODO()
    }
}

Dit is nodig om van 'n klas te erf Kontrak en ignoreer die metode verifieer. As die transaksie ongeldig is, sal 'n uitsondering gegooi word.

Transaksievalidering moet deterministies wees, m.a.w. die kontrak moet altyd die transaksie óf aanvaar óf verwerp. In verband hiermee kan die geldigheid van die transaksie nie afhang van tyd, ewekansige getalle, gasheerlêers, ens.

In Corda word kontrakte in 'n sogenaamde sandbox uitgevoer - 'n effens gewysigde JVM wat deterministiese uitvoering van kontrakte waarborg.

Strome

Om kommunikasie tussen netwerknodes te outomatiseer, is drade bygevoeg.

'n Vloei is 'n reeks stappe wat 'n nodus vertel hoe om 'n spesifieke grootboekopdatering uit te voer en op watter punt die transaksie onderteken en bekragtig moet word.

Corda - oopbron blokketting vir besigheid

Soms neem dit ure, dae voordat die transaksie deur alle partye onderteken is en in die grootboek kom. Wat gebeur as jy 'n nodus ontkoppel wat aan 'n transaksie deelneem? Drade het kontrolepunte, waar die toestand van die draad na die nodus se databasis geskryf word. Wanneer 'n nodus na die netwerk herstel word, sal dit voortgaan waar dit opgehou het.

Konsensus

Om in die grootboek te kom, moet 'n transaksie 2 konsensusse bereik: geldigheid en uniekheid.

Die besluit oor die geldigheid van 'n transaksie word slegs geneem deur die partye wat direk daarby betrokke is.

Notaris nodes kontroleer die transaksie vir uniekheid en voorkom dubbele besteding.

Kom ons stel ons voor dat Bob $100 het en $80 na Charlie en $70 aan Dan wil oordra met dieselfde invoertoestand.

Corda - oopbron blokketting vir besigheid

Corda sal jou nie toelaat om so 'n truuk uit te voer nie. Alhoewel die transaksie die geldigheidskontrole sal slaag, sal die uniekheidskontrole misluk.

Gevolgtrekking

Die Corda-platform, ontwikkel deur die R3 blockchain-konsortium, is nie 'n suiwer gebruiksgeval vir blokkettingtegnologie nie. Corda is 'n hoogs gespesialiseerde hulpmiddel vir finansiële instellings.

Bron: will.com

Voeg 'n opmerking