Corda β€” open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса

Corda β€” это распрСдСлСнный Ledger для хранСния, управлСния ΠΈ синхронизации финансовых ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π² ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ финансовыми организациями.
Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса
Π£ Corda достаточно Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ докумСнтация с Π²ΠΈΠ΄Π΅ΠΎ-лСкциями, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ здСсь. Π― ΠΏΠΎΡΡ‚Π°Ρ€Π°ΡŽΡΡŒ ΠΊΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ устроСн Corda Π²Π½ΡƒΡ‚Ρ€ΠΈ.

Рассмотрим основныС особСнности Corda ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΅Π³ΠΎ срСди Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠ²:

  • Π£ Corda Π½Π΅Ρ‚ собствСнной ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Ρ‹.
  • Corda Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ ΠΌΠ°ΠΉΠ½ΠΈΠ½Π³Π° ΠΈ систСму Proof-of-Work.
  • ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… происходит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ участниками Ρ‚Ρ€Π°Π½Π·Π°Π½ΠΊΡ†ΠΈΠΈ/ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°. Π—Π΄Π΅ΡΡŒ Π½Π΅Ρ‚ глобального броадкастинга всСм ΡƒΠ·Π»Π°ΠΌ сСти.
  • НСт Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ всСми транзакциями.
  • Corda ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ консСнсуса.
  • ΠšΠΎΠ½ΡΠ΅Π½ΡΡƒΡ достигаСтся ΠΌΠ΅ΠΆΠ΄Ρƒ участниками Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ соглашСния/ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°, Π° Π½Π΅ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ всСй систСмы.
  • Вранзакция подтвСрТдаСтся лишь участниками, относящимися ΠΊ Π½Π΅ΠΉ.
  • Corda ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΏΡ€ΡΠΌΡƒΡŽ связь ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ чСловСчСским ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠΌ языком ΠΈ ΠΊΠΎΠ΄ΠΎΠΌ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ².

The ledger

ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ ledger Π² Corda ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. НСт Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π΄Π°Π½Π½Ρ‹Ρ…. ВмСсто этого ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΠ·Π΅Π» ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… извСстных Π΅ΠΌΡƒ Ρ„Π°ΠΊΡ‚ΠΎΠ².

НапримСр, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΡΠ΅Ρ‚ΡŒ ΠΈΠ· 5 ΡƒΠ·Π»ΠΎΠ², Π³Π΄Π΅ ΠΊΡ€ΡƒΠ³ β€” это извСстный ΡƒΠ·Π»Ρƒ Ρ„Π°ΠΊΡ‚.

Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса

Как ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ed, Carl ΠΈ Demi Π·Π½Π°ΡŽΡ‚ ΠΎ Ρ„Π°ΠΊΡ‚Π΅ 3, Π° Alice ΠΈ Bob ΠΎ Π½Π΅ΠΌ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°Π΅Ρ‚. Corda Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ сохранСниС ΠΎΠ±Ρ‰ΠΈΡ… Ρ„Π°ΠΊΡ‚ΠΎΠ² Π² Π±Π°Π·Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡƒΠ·Π»Π°, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ΠΌΠΈ.

Бостояния

БостояниС β€” это нСизмСняСмый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой Ρ„Π°ΠΊΡ‚, извСстный ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ нСскольким ΡƒΠ·Π»Π°ΠΌ сСти Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Бостояния ΠΌΠΎΠ³ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°ΠΊΡ†ΠΈΠΈ, ΠΎΠ±Π»ΠΈΠ³Π°Ρ†ΠΈΠΈ, ΠΊΡ€Π΅Π΄ΠΈΡ‚Ρ‹, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

НапримСр, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ состояниС прСдставляСт собой IOU β€” соглашСниС ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Алиса Π΄ΠΎΠ»ΠΆΠ½Π° Π‘ΠΎΠ±Ρƒ сумму X:

Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса
Π–ΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Ρ„Π°ΠΊΡ‚Π° с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ прСдставлСн ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ состояний. Когда Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС, ΠΌΡ‹ создаСм Π½ΠΎΠ²ΠΎΠ΅, Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ ΠΏΠΎΠΌΠ΅Ρ‡Π°Π΅ΠΌ ΠΊΠ°ΠΊ историчСскоС (historic).

Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса

Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ

Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ β€” это прСдлоТСния ΠΏΠΎ обновлСнию ledger-a. Они Π½Π΅ Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ всСм участникам ledger-a ΠΈ доступны лишь Ρ‚Π΅ΠΌ участникам сСти, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΌ ΠΏΡ€Π°Π²ΠΎΠΌ Π½Π° ΠΈΡ… просмотр ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅.

Вранзакция Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π² ledger, Ссли ΠΎΠ½Π°:

  • ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π½ΠΎ Π²Π°Π»ΠΈΠ΄Π½Π°
  • подписана всСми Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ участниками
  • Π½Π΅ содСрТит Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… Ρ‚Ρ€Π°Ρ‚ (doble-spends)

Corda ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ модСль UTXO (unspent transaction output), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ состояниС ledger-Π° являСтся нСизмСняСмым.

ΠŸΡ€ΠΈ создании, Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π½Π° Π²Ρ…ΠΎΠ΄ пСрСдаСтся output состояниС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ (ΠΏΠΎ Ρ…ΡΡˆΡƒ ΠΈ индСксу).

Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса
Π–ΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ:

  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ (На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ транзакция всСго лишь ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ обновлСнию ledger-a)
  • Π‘Π±ΠΎΡ€ подписСй (НСобходимыС участники Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΎΠ΄ΠΎΠ±Ρ€ΡΡŽΡ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ обновлСнию ΠΏΡƒΡ‚Ρ‘ΠΌ добавлСния подписи ΠΊ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ)
  • ΠšΠΎΠΌΠΌΠΈΡ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π² ledger

ПослС добавлСния Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π² ledger Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ состояния ΠΏΠΎΠΌΠ΅Ρ‡Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ историчСскиС ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… транзакциях.

Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса
Помимо Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… состояний, транзакция ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ:

  • ΠšΠΎΠΌΠΌΠ°Π½Π΄Ρ‹ (ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π»ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ)
  • ВлоТСния (ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΡŒ ΠΏΡ€Π°Π·Π΄Π½ΠΈΠΊΠΎΠ², ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ Π²Π°Π»ΡŽΡ‚)
  • Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΎΠΊΠ½Π° (срок дСйствия)
  • Нотариус (Notary, особыС участники сСти, Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ)

Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса

ΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹

Когда ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ валидности Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅ΠΌ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… подписСй, Π½ΠΎ ΠΈ Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρƒ. КаТдая транзакция связана с ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΅Ρ‘ ΠΈ Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ состояния. Вранзакция считаСтся Π²Π°Π»ΠΈΠ΄Π½ΠΎΠΉ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли всС Π΅Ρ‘ состояния Π²Π°Π»ΠΈΠ΄Π½Ρ‹.

ΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ Π² Corda ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π½Π° любом JVM языкС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Java, Kotlin).

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

НСобходимо Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ класса Contract ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ verify. Π’ случаС нСвалидности Ρ‚Ρ€Π°Π½Π·Π°Ρ†ΠΈΠΈ Π²Ρ‹Π±Ρ€ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅.

Вадидация Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ, Ρ‚.Π΅. ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ всСгда Π΄ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ, Π»ΠΈΠ±ΠΎ ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΠΈΡ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ. Π’ сзязи с этим Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, случайных чисСл, Ρ„Π°ΠΉΠ»ΠΎΠ² ΡƒΠ·Π»Π° сСти ΠΈ Π΄Ρ€.

Π’ Corda ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ пСсочницС β€” Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ JVM, Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ².

ΠŸΠΎΡ‚ΠΎΠΊΠΈ

Π§Ρ‚ΠΎΠ±Ρ‹ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΡƒΠ·Π»ΠΎΠ² сСти, Π±Ρ‹Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΏΠΎΡ‚ΠΎΠΊΠΈ.

ΠŸΠΎΡ‚ΠΎΠΊ β€” это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ шагов, которая сообщаСт ΡƒΠ·Π»Ρƒ, ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ledger-a, Π² ΠΊΠ°ΠΊΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ²Π°Π»ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ.

Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса

Иногда Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ часы, Π΄Π½ΠΈ ΠΏΠΎΠΊΠ° транзакция ΠΏΠΎΠ΄ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ всСми сторонами ΠΈ ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚ Π² ledger. Π§Ρ‚ΠΎ ΠΆΠ΅ случится, Ссли ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΡƒΠ·Π΅Π», ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π² Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ? ΠŸΠΎΡ‚ΠΎΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ состояния ΠΏΠΎΡ‚ΠΎΠΊΠ° записываСтся Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΡƒΠ·Π»Π°. ΠŸΡ€ΠΈ востановлСнии ΡƒΠ·Π»Π° Π² сСти ΠΎΠ½ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ с Ρ‚ΠΎΠ³ΠΎ мСста, Π³Π΄Π΅ остановился.

ΠšΠΎΠ½ΡΠ΅Π½ΡΡƒΡ

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Π² ledger, транзакция Π΄ΠΎΠ»ΠΆΠ½Π° Π΄ΠΎΡΡ‚ΠΈΠ³Π½ΡƒΡ‚ΡŒ 2 консСнсуса: Π½Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π° ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

РСшСниС ΠΎ валидности Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ принимаСтся лишь сторонами, Π²ΠΎΠ²Π»Π΅Ρ‡Π΅Π½Π½Ρ‹ΠΌΠΈ Π² Π½Π΅Π΅ нСпосрСдствСнно.

ΠΠΎΡ‚Π°Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π½ΠΎΠ΄Ρ‹ проводят ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π½Π° ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΏΡ€Π΅Π΄ΠΎΡ‚Ρ€Π°Π²Ρ‰Π°ΡŽΡ‚ Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ Ρ‚Ρ€Π°Ρ‚Ρ‹.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ Bob-a Π΅ΡΡ‚ΡŒ 100$, ΠΈ ΠΎΠ½ Ρ…ΠΎΡ‡Π΅Ρ‚ пСрСвСсти 80$ Charlie ΠΈ 70$ Dan-Ρƒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ состояниС.

Corda — open source Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ для бизнСса

Π’Π°ΠΊΠΎΠΉ Ρ‚Ρ€ΡŽΠΊ Corda Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ. Π₯ΠΎΡ‚ΡŒ транзакция ΠΈ ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ провалится.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Corda, разработанная Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½-консорциумом R3, Π½Π΅ являСтся чистым ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ использования Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½. Corda β€” это достатояно узкоспСциализированноС срСдство для финансовых ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΉ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ