Corda - blockchain me burim të hapur për biznes

Corda është një Libër i shpërndarë për ruajtjen, menaxhimin dhe sinkronizimin e detyrimeve financiare ndërmjet organizatave të ndryshme financiare.
Corda - blockchain me burim të hapur për biznes
Corda ka dokumentacion mjaft të mirë me video leksione që mund të gjenden këtu. Do të përpiqem të përshkruaj shkurtimisht se si funksionon Corda brenda.

Le të shohim tiparet kryesore të Corda dhe veçantinë e tij midis blockchains të tjerë:

  • Corda nuk ka kriptomonedhën e vet.
  • Corda nuk përdor konceptin e minierave dhe sistemin e provës së punës.
  • Transferimi i të dhënave ndodh vetëm ndërmjet palëve në transaksion/kontratë. Nuk ka transmetim global në të gjitha nyjet e rrjetit.
  • Nuk ka asnjë kontrollues qendror që menaxhon të gjitha transaksionet.
  • Corda mbështet mekanizma të ndryshëm konsensusi.
  • Konsensusi arrihet ndërmjet pjesëmarrësve në nivelin e një marrëveshje/kontrate individuale, dhe jo në nivelin e të gjithë sistemit.
  • Një transaksion konfirmohet vetëm nga pjesëmarrësit e lidhur me të.
  • Corda ofron një lidhje të drejtpërdrejtë midis gjuhës zyrtare ligjore njerëzore dhe kodit të kontratës inteligjente.

Libri i librit

Koncepti i librit në Corda është subjektiv. Nuk ka asnjë depo të vetme qendrore të të dhënave. Në vend të kësaj, çdo nyje mban një bazë të dhënash të veçantë të fakteve të njohura për të.

Për shembull, imagjinoni një rrjet me 5 nyje, ku një rreth është një fakt i njohur për nyjen.

Corda - blockchain me burim të hapur për biznes

Siç mund ta shohim, Ed, Carl dhe Demi e dinë faktin 3, por Alice dhe Bob nuk janë as të vetëdijshëm për këtë. Corda garanton që faktet e zakonshme ruhen në bazën e të dhënave të çdo nyje dhe të dhënat do të jenë identike.

Shtetet

Shteti është i pandryshueshëm një objekt që përfaqëson një fakt të njohur për një ose më shumë nyje të rrjetit në një moment të caktuar kohor.

Shtetet mund të ruajnë të dhëna arbitrare, për shembull, aksione, obligacione, hua, informacione identifikimi.

Për shembull, gjendja e mëposhtme përfaqëson një IOU - një marrëveshje që Alice i detyrohet Bobit një shumë prej X:

Corda - blockchain me burim të hapur për biznes
Cikli jetësor i një fakti me kalimin e kohës përfaqësohet nga një sekuencë gjendjesh. Kur është e nevojshme të përditësohet gjendja aktuale, ne krijojmë një të re dhe e shënojmë atë aktuale si historike.

Corda - blockchain me burim të hapur për biznes

transaksionet

Transaksionet janë propozime për përditësimin e librit. Ato nuk transmetohen për të gjithë pjesëmarrësit e librit dhe janë të disponueshme vetëm për ata pjesëmarrës të rrjetit që kanë të drejtën ligjore për t'i parë dhe menaxhuar ato.

Një transaksion do të shtohet në librin kryesor nëse:

  • kontraktualisht e vlefshme
  • nënshkruar nga të gjithë pjesëmarrësit e kërkuar
  • nuk përmban shpenzime të dyfishta

Corda përdor modelin UTXO (dalje e transaksionit të pashpenzuar), në të cilin çdo gjendje e librit është e pandryshueshme.

Kur krijohet një transaksion, gjendja e daljes së transaksionit të mëparshëm (me hash dhe indeks) transferohet në hyrje.

Corda - blockchain me burim të hapur për biznes
Cikli i jetës së transaksionit:

  • Krijimi (Për momentin, transaksioni është vetëm një propozim për të përditësuar librin)
  • Mblidhni nënshkrime (Palët e kërkuara në transaksion miratojnë propozimin e përditësimit duke shtuar një nënshkrim në transaksion)
  • Kryeni transaksionin në librin kryesor

Pasi një transaksion shtohet në librin kryesor, gjendjet hyrëse shënohen si historike dhe nuk mund të përdoren në transaksionet e ardhshme.

Corda - blockchain me burim të hapur për biznes
Përveç gjendjeve hyrëse dhe dalëse, një transaksion mund të përmbajë:

  • Komandat (parametri i transaksionit që tregon qëllimin e transaksionit)
  • Shtojcat (kalendari i festave, konverteri i monedhës)
  • Dritaret kohore (periudha e vlefshmërisë)
  • Noteri (Noteri, pjesëmarrës të veçantë të rrjetit që vërtetojnë transaksionet)

Corda - blockchain me burim të hapur për biznes

kontratat

Kur flasim për vlefshmërinë e transaksionit, nënkuptojmë jo vetëm praninë e nënshkrimeve të nevojshme, por edhe vlefshmërinë kontraktuale. Çdo transaksion shoqërohet me një kontratë që e pranon atë dhe vërteton gjendjet hyrëse dhe dalëse. Një transaksion konsiderohet i vlefshëm vetëm nëse të gjitha gjendjet e tij janë të vlefshme.

Kontratat në Corda shkruhen në çdo gjuhë JVM (për shembull, Java, Kotlin).

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

Është e nevojshme të trashëgohet nga një klasë kontratë dhe anashkaloni metodën verifikoj. Nëse transaksioni është i pavlefshëm, do të bëhet një përjashtim.

Vleresimi i transaksionit duhet te jete percaktues, d.m.th. kontrata duhet gjithmonë ose ta pranojë ose ta refuzojë transaksionin. Në lidhje me këtë, vlefshmëria e transaksionit nuk mund të varet nga koha, numrat e rastësishëm, skedarët pritës, etj.

Në Corda, kontratat ekzekutohen në një të ashtuquajtur sandbox - një JVM paksa e modifikuar që garanton ekzekutimin determinist të kontratave.

Përrenj

Për të automatizuar komunikimin midis nyjeve të rrjetit, u shtuan threads.

Një rrjedhë është një sekuencë hapash që i tregon një nyje se si të kryejë një përditësim specifik të librit dhe në cilën pikë transaksioni duhet të nënshkruhet dhe vërtetohet.

Corda - blockchain me burim të hapur për biznes

Ndonjëherë duhen orë, ditë derisa transaksioni të nënshkruhet nga të gjitha palët dhe të futet në libër. Çfarë ndodh nëse shkëputni një nyje që merr pjesë në një transaksion? Thread-et kanë pika kontrolli, në të cilat gjendja e thread-it shkruhet në bazën e të dhënave të nyjës. Kur një nyje rikthehet në rrjet, ajo do të vazhdojë aty ku e la.

Konsensusi

Për të hyrë në librin kryesor, një transaksion duhet të arrijë 2 konsensuse: vlefshmërinë dhe unike.

Vendimi për vlefshmërinë e një transaksioni merret vetëm nga palët e përfshira drejtpërdrejt në të.

Nyjet noteriale kontrollojnë transaksionin për unike dhe parandalojnë shpenzimet e dyfishta.

Le të imagjinojmë që Bob ka 100 dollarë dhe dëshiron të transferojë 80 dollarë te Charlie dhe 70 dollarë te Dani duke përdorur të njëjtën gjendje hyrëse.

Corda - blockchain me burim të hapur për biznes

Corda nuk do t'ju lejojë të bëni një mashtrim të tillë. Edhe pse transaksioni do të kalojë kontrollin e vlefshmërisë, kontrolli i unike do të dështojë.

Përfundim

Platforma Corda, e zhvilluar nga konsorciumi R3 blockchain, nuk është një rast i pastër përdorimi për teknologjinë blockchain. Corda është një mjet shumë i specializuar për institucionet financiare.

Burimi: www.habr.com

Shto një koment