Corda - avoimen lähdekoodin lohkoketju yrityksille

corda on hajautettu Reskontra taloudellisten velvoitteiden tallentamiseen, hallintaan ja synkronoimiseen eri rahoitusorganisaatioiden välillä.
Corda - avoimen lähdekoodin lohkoketju yrityksille
Cordalla on melko hyvä dokumentaatio videoluennoilla, joita löytyy täällä. Yritän kuvailla lyhyesti, kuinka Corda toimii sisällä.

Katsotaanpa Cordan pääominaisuuksia ja sen ainutlaatuisuutta muiden lohkoketjujen joukossa:

  • Cordalla ei ole omaa kryptovaluuttaa.
  • Corda ei käytä kaivostoiminnan käsitettä ja Proof-of-Work -järjestelmää.
  • Tiedonsiirto tapahtuu vain kaupan/sopimuksen osapuolten välillä. Kaikille verkon solmuille ei ole maailmanlaajuista lähetystä.
  • Ei ole keskusohjainta, joka hallitsee kaikkia tapahtumia.
  • Corda tukee erilaisia ​​konsensusmekanismeja.
  • Konsensus saavutetaan osallistujien välillä yksittäisen sopimuksen/sopimuksen tasolla, ei koko järjestelmän tasolla.
  • Tapahtuman vahvistavat vain siihen liittyvät osallistujat.
  • Corda tarjoaa suoran yhteyden muodollisen ihmisoikeudellisen kielen ja älykkään sopimuskoodin välillä.

Pääkirja

Cordan pääkirjan käsite on subjektiivinen. Ei ole olemassa yhtä keskustietovarastoa. Sen sijaan jokainen solmu ylläpitää erillistä tietokantaa sen tiedossa olevista faktoista.

Kuvittele esimerkiksi 5 solmun verkko, jossa ympyrä on solmun tuntema tosiasia.

Corda - avoimen lähdekoodin lohkoketju yrityksille

Kuten näemme, Ed, Carl ja Demi tietävät tosiasiasta 3, mutta Alice ja Bob eivät ole edes tietoisia siitä. Corda takaa, että yhteiset faktat tallennetaan kunkin solmun tietokantaan ja tiedot ovat identtisiä.

Osavaltiot

valtio on muuttumaton objekti, joka edustaa tosiasiaa, jonka yksi tai useampi verkkosolmu tietää tietyllä hetkellä.

Valtiot voivat tallentaa mielivaltaisia ​​tietoja, esimerkiksi osakkeita, joukkovelkakirjoja, lainoja, tunnistetietoja.

Esimerkiksi seuraava tila edustaa IOU:ta – sopimusta, jonka mukaan Alice on velkaa Bobille X:n:

Corda - avoimen lähdekoodin lohkoketju yrityksille
Faktan elinkaari ajan mittaan esitetään tilojen sarjana. Kun nykyinen tila on tarpeen päivittää, luomme uuden ja merkitsemme nykyisen historialliseksi.

Corda - avoimen lähdekoodin lohkoketju yrityksille

Liiketoimi

Tapahtumat ovat ehdotuksia kirjanpidon päivittämiseksi. Niitä ei lähetetä kaikille pääkirjan osallistujille, ja ne ovat vain niille verkon osallistujille, joilla on laillinen oikeus tarkastella ja hallita niitä.

Tapahtuma lisätään pääkirjaan, jos se:

  • sopimuksen mukaan voimassa
  • kaikkien vaadittujen osallistujien allekirjoittama
  • ei sisällä kaksinkertaisia ​​kuluja

Corda käyttää UTXO-mallia (unspent transaktion output), jossa jokainen pääkirjan tila on muuttumaton.

Kun tapahtuma luodaan, edellisen tapahtuman lähtötila (hash- ja indeksin mukaan) siirretään syötteeseen.

Corda - avoimen lähdekoodin lohkoketju yrityksille
Tapahtuman elinkaari:

  • Luominen (Tällä hetkellä tapahtuma on vain ehdotus kirjanpidon päivittämiseksi)
  • Kerää allekirjoituksia (tapahtuman vaaditut osapuolet hyväksyvät päivitysehdotuksen lisäämällä allekirjoituksen tapahtumaan)
  • Sitouta tapahtuma kirjanpitoon

Kun tapahtuma on lisätty pääkirjaan, syöttötilat merkitään historiallisiksi, eikä niitä voi käyttää tulevissa tapahtumissa.

Corda - avoimen lähdekoodin lohkoketju yrityksille
Tulo- ja lähtötilojen lisäksi tapahtuma voi sisältää:

  • Komennot (tapahtumaparametri, joka ilmaisee tapahtuman tarkoituksen)
  • Liitteet (lomakalenteri, valuuttamuunnin)
  • Aikaikkunat (voimassaoloaika)
  • Notaari (Notari, erityiset verkoston osallistujat vahvistavat tapahtumia)

Corda - avoimen lähdekoodin lohkoketju yrityksille

sopimuksia

Kun puhumme tapahtuman pätevyydestä, emme tarkoita vain tarvittavien allekirjoitusten olemassaoloa, vaan myös sopimusten voimassaoloa. Jokainen tapahtuma liittyy sopimukseen, joka hyväksyy sen ja vahvistaa tulo- ja lähtötilat. Tapahtuma katsotaan päteväksi vain, jos kaikki sen tilat ovat voimassa.

Cordan sopimukset kirjoitetaan millä tahansa JVM-kielellä (esimerkiksi Java, Kotlin).

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

Se on välttämätöntä periä luokasta Sopimus ja ohittaa menetelmän todentaa. Jos tapahtuma on virheellinen, tehdään poikkeus.

Tapahtuman validoinnin tulee olla determinististä, ts. sopimuksen tulee aina joko hyväksyä tai hylätä kauppa. Tässä yhteydessä tapahtuman voimassaolo ei voi riippua ajasta, satunnaisluvuista, isäntätiedostoista jne.

Cordassa sopimukset toteutetaan niin sanotussa hiekkalaatikossa – hieman muokatussa JVM:ssä, joka takaa sopimusten deterministisen toteutuksen.

Streamit

Viestinnän automatisoimiseksi verkkosolmujen välillä lisättiin säikeitä.

Vuo on vaihesarja, joka kertoo solmulle, kuinka tietty pääkirjapäivitys suoritetaan ja missä vaiheessa tapahtuma on allekirjoitettava ja vahvistettava.

Corda - avoimen lähdekoodin lohkoketju yrityksille

Joskus kestää tunteja, päiviä, ennen kuin kaikki osapuolet allekirjoittavat kaupan ja päätyvät kirjanpitoon. Mitä tapahtuu, jos katkaiset tapahtumaan osallistuvan solmun yhteyden? Säikeillä on tarkistuspisteet, joissa säikeen tila kirjoitetaan solmun tietokantaan. Kun solmu palautetaan verkkoon, se jatkaa siitä, mihin se jäi.

Yhteisymmärrys

Päästäkseen pääkirjaan tapahtuman on saavutettava kaksi konsensusta: kelvollisuus ja ainutlaatuisuus.

Päätöksen liiketoimen pätevyydestä tekevät vain siihen suoraan osallistuvat osapuolet.

Notaarisolmut tarkistavat tapahtuman ainutlaatuisuuden ja estävät kaksinkertaisen kulutuksen.

Kuvitellaan, että Bobilla on 100 dollaria ja hän haluaa siirtää 80 dollaria Charlielle ja 70 dollaria Danille käyttämällä samaa syöttötilaa.

Corda - avoimen lähdekoodin lohkoketju yrityksille

Corda ei anna sinun tehdä tällaista temppua. Vaikka tapahtuma läpäisee kelvollisuustarkistuksen, yksilöllisyyden tarkistus epäonnistuu.

Johtopäätös

R3-lohkoketjukonsortion kehittämä Corda-alusta ei ole pelkkä lohkoketjuteknologian käyttötapa. Corda on pitkälle erikoistunut työkalu rahoituslaitoksille.

Lähde: will.com

Lisää kommentti