Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ハイパーレッジャーとその他の分散台帳技術 / Hyperledger and Other Di...

ハイパーレッジャーとその他の分散台帳技術 / Hyperledger and Other Distributed Ledger Technology

2019年10月2日(水)、ブロックチェーンハブ主催のブロックチェーンアカデミー「ハイパーレッジャーとその他の分散台帳技術」にて使用したスライドです。

Kenji Saito

October 02, 2019
Tweet

More Decks by Kenji Saito

Other Decks in Technology

Transcript

  1. ؆୯ͳࣗݾ঺հ ੪౻ ݡ࣐ (͍͞ͱ͏ ͚Μ͡) ૣҴాେֶ େֶӃܦӦ؅ཧݚڀՊ ڭत ܚጯٛक़େֶ SFC

    ݚڀॴ ্੮ॴһɾ؀ڥ৘ใֶ෦ ߨࢣ (ඇৗۈ) גࣜձࣾϒϩοΫνΣʔϯϋϒ CSO (Chief Science Officer) Ұൠࣾஂ๏ਓϏϤϯυϒϩοΫνΣʔϯ ୅දཧࣄ Ұൠࣾஂ๏ਓΞΧσϛʔΩϟϯϓ ୅දཧࣄ ܦྺ 1993 ೥ɺίʔωϧେֶΑΓ޻ֶम࢜߸औಘ (ίϯϐϡʔλαΠΤϯε) 2006 ೥ɺܚጯٛक़େֶΑΓσδλϧ௨՟ͷݚڀͰത࢜߸औಘ (੓ࡦɾϝσΟΞ) ܚጯٛक़େֶ େֶӃ ੓ࡦɾϝσΟΞݚڀՊ΍ SFC ݚڀॴʹͯ 19 ೥ؒʹΘͨΓ P2P (Peer-to-Peer) ͓Αͼσδλϧ௨՟౳ͷݚڀʹैࣄ 2011 ೥ՆΑΓ෱ౡͷ͜Ͳ΋ͨͪͷͨΊͷʮΞΧσϛʔΩϟϯϓʯΛ஥ؒΒͱ։࠵ ࡢ೥͸ SFC ʹͯ ΞΧσϛʔΩϟϯϓ 2018 ՆʮΦοέʔάʔάϧɺ॓୊΍ͬͱ͍ͯʂʯΛ࣮ࢪ ࠓ೥΋ SFC ౳Ͱ ΞΧσϛʔΩϟϯϓ 2019 ՆʮੈքΛ࠶ൃ໌ͤΑ ∼ REINVENT THE WORLDʯΛ࣮ࢪ → ࢲͷ಄ͷதͰ͸ͭͳ͕͍ͬͯ·͢ (͜Ε͔ΒͷࣾձͷσβΠϯ͸͜Ͳ΋ͨͪͱҰॹʹ) ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.3/39
  2. ࠓճͷςʔϚ Linux Foundation ʹͯෳ਺ͷΦʔϓϯιʔε։ൃ͕ਐߦதͷ Hyperledger ϓϩδΣΫτΛ͸͡Ίɺ R3CEV ʹΑΔ Cordaɺ Facebook/Calibra

    ʹΑΔ The Libra Blockchain ౳ɺ ۀ຿༻෼ࢄϨοδϟʔ (෼ࢄ୆ா) ͷ։ൃಈ޲ʹ͍ͭͯɺެ։͞Ε͍ͯΔ৘ใͷ ൣғ͔ΒಡΈղ͍͍͖ͯ·͢ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.4/39
  3. ࠓ೔ͷτϐοΫ ϋΠύʔϨοδϟʔ (Linux Foundation) ϋΠύʔϨοδϟʔ ϓϩδΣΫτ Fabric (IBM), Sawtooth (Intel),

    Iroha (ιϥϛπ), Indy (Sovrin) Corda (R3), The Libra Blockchain (Facebook/Calibra), BBc-1 (զʑ) DLT ͕ਅՁΛൃش͢ΔͨΊʹ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.5/39
  4. ϒϩοΫνΣʔϯ/DLT Λཧղ͢Δ ਖ਼౰ੑͷอূ ྫ6590ߏ଄ͱσδλϧॺ໊ ଘࡏੑͷূ໌ ྫ࡞ۀূ໌෇͖ϋογϡνΣʔϯ །Ұੑͷ߹ҙ ྫφΧϞτɾίϯηϯαε ϧʔϧͷهड़ ྫ#5$ͷҠస

    ɾ τϥϯβΫγϣϯͷ಺༰͕վ͟ΜͰ͖ͣɺ ɾ ͦͷΞηοτʹؔ͢ΔաڈͷτϥϯβΫγϣϯྻʹরΒͯ͠ໃ६͕ͳ͘ɺ ɾ ͔ͭɺਖ਼౰ͳϢʔβʹΑΓ౤ೖ͞Ε͍ͯΔ͜ͱΛอূ͢Δ ɾաڈʹ͋ͬͨτϥϯβΫγϣϯͷূڌΛຣফͰ͖ͣɺ ɾ ͔ͭɺաڈʹͳ͔ͬͨτϥϯβΫγϣϯͷূڌΛ፻଄Ͱ͖ͳ͍ ɾໃ६͢Δ;ͨͭͷτϥϯβΫγϣϯ͕౤ೖ͞Εͨ৔߹ɺ ɹ ͍ͣΕ ؔ༩͢Δશһ͕ಉ͡ยํΛબΜͰྺ࢙ͷதʹҐஔ͚ͮΔ ɾΞϓϦέʔγϣϯϩδοΫ Կ͕ਖ਼͍͠τϥϯβΫγϣϯ͔ΛܾΊΔ ϒϩοΫνΣʔϯ͸ɺΠϯλʔωοτͷ End-to-End ͷ఩ֶΛɺΞηοτ (ࢿ࢈) ͷ੍ޚʹ͓͍ͯ ݱ࣮Խ͢Δ (͜ͱΛࢼΈΔ)ʮۭத໿ଋݻఆ૷ஔʯ ྨ͢Δٕज़΋ಉ͡جຊߏ଄ͱ໨తΛ΋ͭ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.6/39
  5. ϋΠύʔϨοδϟʔ (Linux Foundation) ϓϩδΣΫτͷΨόφϯεػߏ https://www.hyperledger.org ιϑτ΢ΣΞ͸ Apache License, Version 2.0

    Ͱެ։ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.7/39
  6. ԿΛ͢Δͷ͔ ϛογϣϯ ϏδωεରԠͷΦʔϓϯιʔεͷ෼ࢄϨοδϟʔͷϑϨʔϜϫʔΫͱ ίʔυϕʔεΛ༻ҙ͢Δ Φʔϓϯιʔε։ൃͷٕज़ίϛϡχςΟΛͭ͘Δ ΤίγεςϜͷઌಋऀͨͪʹࢀՃͯ͠΋Β͏ ։ൃऀ αʔϏε/ιϦϡʔγϣϯఏڙऀ ސ٬ ΨόφϯεͷϓϥοτϑΥʔϜΛఏڙ͢Δ

    ϓϩδΣΫτͷϥΠϑαΠΫϧ : Proposal → Incubation → Active → Deprecated → End of Life ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.8/39
  7. Fabric (IBM) IBM ͱ Digital Asset Holdings ͷίʔυΛϚʔδ http://hyperledger-fabric.readthedocs.io/en/latest/ State

    : Active ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.10/39
  8. Fabric – ઃܭ্ͷબ୒ ϧʔϧ υοΧʔ (Docker) ίϯςφͰ࣮ߦ͢Δ ʮνΣʔϯίʔυ (chaincode)ʯ །Ұੑ

    BFT νΣʔϯίʔυͷ݁Ռʹର͢Δίϯηϯαε͕ඞཁ ΦʔμϦϯάαʔϏε ଘࡏੑ ϋογϡνΣʔϯ, ΦʔμϦϯάαʔϏε ਖ਼౰ੑ RocksDB ্ͷߏ଄ͱܰྔ CA ʹΑΔ PKI v1.0 (ݱࡏ v2.0 Alpha) Ͱ͸ෳ਺ DB αϙʔτ͓Αͼ CA ΛଟॏԽ ʮۭதʯ͸ϓϥΠϕʔτͳۭؒ BFT : Byzantine Fault Tolerance (଱Ϗβϯνϯো֐ੑ) CA : Certificate Authority (ೝূہ) PKI : Public Key Infrastructure (ެ։ݤΠϯϑϥ) ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.12/39
  9. ֓ཁ (υΩϡϝϯτ͔Β) ڐՄ੍ (permissioned) ·ͨ͸ඇڐՄ੍ (permissionless) ͷͲͪΒ΋αϙʔτ Proof of Elapsed

    Time (PoET) Proof of Work ͷ࡞ۀίετΛ࣮ࡍʹ͸౤ೖͤͣ (ిྗΛ࿘අͤͣ)ɺ ࢦఆ͞Εͨ೉қ౓ʹجͮ࣌ؒ͘Λ୯ʹ֬཰తʹܦաͤ͞Δ (Intel ͷ) ϋʔυ΢ΣΞαϙʔτ͕ඞཁ ϏδωεϩδοΫ͸ଘࡏূ໌/ίϯηϯαεػߏ͔Β෼཭ Transaction Families ͱݺ͹ΕΔ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.14/39
  10. Sawtooth – ઃܭ্ͷબ୒ ϧʔϧ ʮτϥϯβΫγϣϯɾϑΝϛϦʔ (transaction families)ʯ །Ұੑ φΧϞτ ɾίϯηϯαε

    (PoET ϕʔε) ·ͨ͸ PBFT (Practical BFT) ଘࡏੑ ϋογϡνΣʔϯͱ PoET (ϋʔυ΢ΣΞαϙʔτ͕ඞཁ) ਖ਼౰ੑ ʮτϥϯβΫγϣϯɾϑΝϛϦʔ (transaction families)ʯ ʮۭதʯ͸ϓϥΠϕʔτͳۭؒ·ͨ͸ ύϒϦοΫͳۭؒ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.15/39
  11. ֓ཁ (υΩϡϝϯτ͔Β) DLT Λඞཁͱ͢ΔΠϯϑϥϓϩδΣΫτ΁؆୯ʹద༻ ಛ௃ : γϯϓϧͳߏ଄ Ϟμϯͳ C++ ʹΑΔઃܭ

    ϞόΠϧΞϓϦέʔγϣϯͷ։ൃΛڧྗʹαϙʔτ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.17/39
  12. Iroha – ઃܭ্ͷબ୒ ϧʔϧ αϯυϘοΫε JVM ্ͰͷʮνΣʔϯίʔυ (chaincode)ʯ ʁ །Ұੑ

    Sumeragi (BFT) → YAC (BFT) ଘࡏੑ ϚʔΫϧ໦ → (ϒϩοΫ͸͋ΔΒ͍͕͠ . . . )ʁ ਖ਼౰ੑ ެ։ݤΛຒΊࠐΉߏ଄ →ʁ ʮۭதʯ͸ϓϥΠϕʔτͳۭؒ JVM : Java Virtual Machine (Java Ծ૝Ϛγϯ) ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.18/39
  13. ֓ཁ (υΩϡϝϯτ͔Β) ෼ࢄ ID ͷͨΊͷϨοδϟʔ Hyperledger ͷϓϩδΣΫτ΍ͦͷଞͷ෼ࢄ୆ாγεςϜʹ σδλϧ ID γεςϜΛఏڙ

    ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.20/39
  14. Indy – ઃܭ্ͷબ୒ ϧʔϧ ෼ࢄ ID །Ұੑ RBFT (Redundant BFT)

    ଘࡏੑ ෆ໌ ਖ਼౰ੑ ϚʔΫϧύτϦγΞ໦ʹΑΔεςʔτ؅ཧ ʮۭதʯ͸ϓϥΠϕʔτͳۭؒ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.21/39
  15. R3 ίϯιʔγΞϜ R3CEV ʹΑΔۚ༥ػؔίϯιʔγΞϜ 77 ࣾ (2017 ೥ 2 ݄຤ݱࡏ)

    ೔ຊ͔Β͸ 3 ϝΨόϯΫɺ໺ଜϗʔϧσΟϯάεɺSBI ϗʔϧσΟϯάε౳ ࣍ੈ୅ۚ༥औҾωοτϫʔΫͷ։ൃʹϑΥʔΧε͢Δ R3Net(Ծ) Corda ʹΑΔϓϥοτϑΥʔϜͱαʔϏε ύʔτφʔͱڠಇͰΞϓϦέʔγϣϯΛఏڙ༧ఆ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.23/39
  16. Corda ͷ໨త ۚ༥ػؔؒͷۚ༥ڠఆΛ؅ཧ͢Δ ۀքඪ४ͷπʔϧͰ࡞ΒΕͨڞ௨ͷ࢓૊ΈͰͦΕΛߦ͏ ૬ޓӡ༻ੑɺΠϯΫϦϝϯλϧͳల։ɺൿಗੑ Corda ͷ໰୊ : ʮࢲ͕ݟ͍ͯΔ΋ͷ͸͋ͳ͕ͨݟ͍ͯΔ΋ͷͱҰக͓ͯ͠Γɺզʑ͸ͲͪΒ΋ ͦͷ͜ͱΛ஌͍ͬͯͯɺ͔ͭ؂ࠪʹ΋ಉ͡΋ͷ͕ݟ͍͑ͯΔͱ஌͍ͬͯΔʯ

    ϏοτίΠϯͷ໰୊ͱ͸ҟͳΔ໰୊Λղ͍͍ͯΔɺͱ͍͏ೝ͔ࣝΒͷൃ૝ ϏοτίΠϯͷ໰୊ : ࣗ෼ͷ͓ۚΛࣗ෼͕࢖͏͜ͱΛ୭ʹ΋ࢭΊΒΕͳ͍Α͏ʹ͍ͨ͠ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.24/39
  17. ಛ௃ γεςϜϨϕϧͰ͸ͳ͘ɺ঎औҾϨϕϧͰͷίϯηϯαε ଟ༷ͳίϯηϯαεػߏΛαϙʔτ (ʁ) ౰ࣄऀ+؂ࠪͷ׬શ߹ҙ͕ඞཁͳͷͰ͋ͬͯɺίϯηϯαεػߏ͸།ҰͰ͸ʁ ౰ࣄऀϊʔυΛ෼ࢄԽͨ͠ࡍʹ֤ʑͷύʔςΟͰ͸ඞཁ σʔλ͸γεςϜϫΠυʹίϐʔ͞Εͳ͍ ୈࡾऀͰ͸ͳ͘౰ࣄऀʹΑΔτϥϯβΫγϣϯͷݕূ CAP ఆཧͷτϨʔυΦϑʹ΋ͱͮ͘ઃܭ্ͷબ୒ࢶ

    ैདྷͷϒϩοΫνΣʔϯͰ͸Մ༻ੑͷͨΊʹҰ؏ੑ͕٘ਜ਼ʹͳ͍ͬͯΔ ٯʹҰ؏ੑͷͨΊʹՄ༻ੑΛ٘ਜ਼ʹ͢Δ౳ ໌ࣔతͳ؂ࠪ༻ϊʔυ ʮࣗવݴޠͰॻ͔Εͨ๏཯ؔ܎ॻྨʯͱʮεϚʔτίϯτϥΫτͷίʔυʯͷ ඥ͚ͮ ωΠςΟϒ௨՟͸࣋ͨͳ͍ (ࠓճ঺հ͍ͯ͠Δ୆ாٕज़͸ͲΕ΋ (?) ͍࣋ͬͯͳ͍) ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.25/39
  18. Corda – ઃܭ্ͷબ୒ ϧʔϧ αϯυϘοΫε JVM ্Ͱͷ࣮ߦ ๏తจॻ (ܖ໿ॻ) ͱͷόΠϯσΟϯά

    །Ұੑ ϓϥΨϒϧ (Uniqueness Services) ଘࡏੑ ܖ໿ͷ૬ख͓Αͼ؂ࠪͱڞ༗͞ΕΔ͜ͱʹΑΔ࣮ݱ͔ ਖ਼౰ੑ UTXO ߏ଄͓Αͼ X.509 PKI ʮۭதʯ͸୯ҰͷάϩʔόϧͳۭؒͷதͷϓϥΠϕʔτͳ۠ը ·ͨ͸ (ΤϯλʔϓϥΠζ༻ʹ) ಠࣗͷϓϥΠϕʔτͳۭؒ X.509 : ΢ΣϒͰ޿͘࢖ΘΕ͍ͯΔ PKI ن֨ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.26/39
  19. ಛ௃ Libra ϗϫΠτϖʔύʔ͕ଧͪग़͍ͯ͠Δಛ௃ ϓϩάϥϛϯάݴޠʮMoveʯΛσβΠϯ͠ɺ࢖༻͢Δɹ (← ಛ௃͸͋Δ) Ϗβϯνϯো֐଱ੑ (BFT) ߹ҙΞϓϩʔνΛ࢖༻͢Δ ޿͘࠾༻͞Ε͍ͯΔϒϩοΫνΣʔϯσʔλߏ଄Λ࠾༻͢Δ

    ɹ (← ͜Ε͸ಛ௃ͱͯ͠ଥ౰) ࣮ࡍͷٕज़తͳಛ௃ طଘͷ༷ʑͳٕज़ͷཁૉ΍ΞΠσΞΛྗٕͰ૊Έ߹Θͤͯઃܭ͍ͯ͠Δ ઃܭऀͨͪʹྗ͸͋Δ طଘͷٕज़ͷʮ͍͍ͱ͜औΓʯͱ͍͏ධՁ΋Ұ෦Ͱ͋Δ͕ɺ ʮ͍͍ͱ͜ʯͳͷ͔͸ٞ࿦Λཁ͢Δ ϚΠϧετʔϯ ݕূऀͷϝϯόγοϓ͕؅ཧ͞ΕΔ (ڐՄ੍) ϓϥΠϕʔτϨοδϟʔͱͯ࢝͠·Γɺ 5 ೥Ҏ಺ʹϝϯόγοϓ͕؅ཧ͞Εͳ͍ (ඇڐՄ੍) ύϒϦοΫϨοδϟʔ΁ͷҠߦΛ։࢝ ಉٕ͡ज़ͰԆ௕Ͱ͖Δͱߟ͍͑ͯΔͱͨ͠ΒඇৗʹνϟϨϯδϯά ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.28/39
  20. ઃܭʹؔ͢Δٞ࿦ The Libra Blockchain ͷجຊతͳߟ͑ํ τϥϯβΫγϣϯ΍εςʔτ (ঢ়ଶ) ΛϚʔΫϧ໦ͷߏ଄Ͱอଘ͢Δ ϒϩοΫΛ࣋ͨͣɺϚʔΫϧ໦͕੒௕͍ͯ͘͠ →

    Merkle accumulator ঢ়ଶϚγϯΛෳ੡͢Δͱ͖͚ͩτϥϯβΫγϣϯΛϒϩοΫʹ·ͱΊΔ ໰୊఺ (1) ϚʔΫϧϧʔτΛ publish ͠ͳ͍ͷͩͱͨ͠Βଘࡏূ໌͕Ͱ͖ͳ͍ ެ։͞Ε͍ͯΔϧʔτ஋ͱಥ߹Ͱ͖ͳ͍ͳΒԿͰ΋ΞϦͰ͸ʁ (2) ϨϓϦΧ͕ূ໌͢Δͱ͍͏ߟ͑ํͩͱͯ͠΋ೋॏா฽Λ๷͛ͳ͍ ಉ্ (ϨϓϦΧʹຊ෺ͷه࿥͕౉͞Ε͍ͯΔͱ͍͏ূ໌͕Ͱ͖ͳ͍) (3) ڐՄ੍ɾϒϩοΫ୯ҐͰෳ੡ͳΒ BFT ϓϩτίϧ͸؆ུԽͰ͖ΔͷͰ͸ʁ ࣄ্ِ࣮଄Ͱ͖ͳ͍σδλϧॺ໊ΛϒϩοΫʹ෇͚ΒΕΔ͔Β (4) Ethereum ͷεϚʔτίϯτϥΫτ࣮ߦϞσϧΛ࠾༻͢Δཧ༝͸ʁ ڐՄ੍ͳΒ Gas ʹΑΔίετෛ୲Ϟσϧ͸੒Γཱͨͳ͍ͷͰ͸ʁɹ (ͳͥΘ͟Θ͟ैྔ੍ʁDoS ରࡦͱͷઆ໌͕ͩ) (5) ৽͘͠ݴޠ/VM Λ࡞ֶͬͯशͷϋʔυϧΛΘ͟Θ্͛͟Δཧ༝͸ʁ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.29/39
  21. The Libra Blockchain – ઃܭ্ͷબ୒ ϧʔϧ Move ݴޠ (VM Ϛγϯޠ)

    Ͱهड़͞ΕΔεϚʔτίϯτϥΫτ །Ұੑ BFT (= ଱ো֐ੑ) (ͳͷʹ 1,000 ୆ن໛Ͱ΍Δͭ΋ΓΒ͍͠) ଘࡏੑ ϚʔΫϧ໦ (ϧʔτΛ publish ͍ͯ͠ΔΑ͏ʹݟ͑ͳ͍) ਖ਼౰ੑ εςʔτ؅ཧ + σδλϧॺ໊ 5 ೥Ҏ಺ʹඇڐՄ੍΁ͷҠߦΛ։࢝͢Δͱ͍͏͕ . . . BFT ͸ಉ࣌ʹߴʑ f ୆͕೚ҙͷյΕํΛ͢Δͱ͍͏લఏͰಈ࡞͢Δ (֬཰࿦) ඇڐՄ੍Ͱ࣮ࡍʹ໰୊ʹͳΔͷ͸ҙਤతͳ߈ܸͰ͋Γɺҙਤ͢ΔݶΓ֬཰͸ 1 (f Λݟੵ΋Εͳ͍) αΠΤϯεʹଇ͍ͬͯΔΑ͏Ͱ͍ͯɺͲ͔͜Ͱઌਓͨͪͷ஌ݟΛແࢹ͍ͯ͠Δ ઃܭ͕͙ͪ͸͙ͱݴ͏ॴҎ Move ݴޠͷಛ௃ ۚમతՁ஋ΛϦιʔεͱͯ͠දݱ͢Δɺͱ͍͏ྖҬಛఆ (domain-specific) ݴޠͬΆ͍ ೋॏফඅΛආ͚Δػߏ౳ΛݴޠϨϕϧͰಋೖ͍ͯ͠Δ (ॻ͖ͮΒ͍ͱ͍͏ධ൑) ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.30/39
  22. ֓ཁ طଘͷϒϩοΫνΣʔϯΑΓ΋ڧݻͳվ͟Μݕग़ɾରԠੑ ϒϩοΫ΍ Proof of Work ͱ͍ͬͨɺޮ཰Λଛͳ͏ཁҼΛऔΓ෷͍ɺଈ࣌ੑɺলࢿݯ ͓ΑͼεέʔϥϏϦςΟΛୡ੒Ͱ͖Δઃܭ σʔλͷڞ༗ൣғΛઃఆ͠ൿಗੑΛୡ੒Ͱ͖Δɺ ʮυϝΠϯʯͱݺ͹ΕΔαϒωοτϫʔΫ

    Bitcoin ͷߟ͑ํΛ౿ऻͨ͠ɺ(ಉҰυϝΠϯ಺ͷ) ୈࡾऀʹΑΔݕূՄೳੑΛ୲อͨ͠σʔλߏ଄ ϓϥΠϕʔτͳԠ༻Ͱ΋τϥϯβΫγϣϯͷূ໌ػೳΛఏڙ Ϣʔβࣝผࢠͱެ։ݤΛ෼཭͢Δ͜ͱʹΑΓɺൿີݤ͕ࣦΘΕͨ৔߹ͷճ෮खஈΛఏڙ ίΞ෦Ͱ͸ϕʔγοΫͳػೳ͚ͩΛఏڙ͢Δ͜ͱʹΑΔߴ౓ͳ֦ுੑ BBc Trust (ϏϤϯυϒϩοΫνΣʔϯݑষ) Λ࣮૷ https://github.com/beyond-blockchain/bbc1/blob/develop/docs/BBc-trust.pdf (ݪจ) https://github.com/beyond-blockchain/bbc1/blob/develop/docs/BBc-trust_ja.pdf (೔ຊޠεϥΠυ) Design Paper (white paper) https://github.com/beyond-blockchain/bbc1/blob/develop/docs/BBc-1_design_paper.pdf ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.32/39
  23. BBc-1 – ઃܭ্ͷબ୒ ϧʔϧ ΞϓϦέʔγϣϯʹͯ೚ҙʹهड़ (Python → bbc1-lib-contracts?) །Ұੑ σδλϧΞηοτ͸ෛ࠴Ͱ͋Γɺ࠴຿ऀ͕อূ͢Δ

    ଘࡏੑ PoCX (υϝΠϯؒཤྺަࠩ) (τϥϯβΫγϣϯؒͷࢀরؔ܎ͷ DAG) (ॳظ͸ύϒϦοΫͳϒϩοΫνΣʔϯʹΞϯΧϦϯά) ਖ਼౰ੑ UTXO/εςʔτ ͔ͭࣝผࢠͱެ։ݤΛ෼཭ɺυϝΠϯ֎ʹൿಗ ʮۭதʯ͸୯ҰͷۭؒͰ͸ͳ͘ɺυϝΠϯͰ෼ׂ͞Ε͍ͯΔ ෼ݖͰ͖Δ ʮཤྺަࠩʯͷ໊শΛʮίϯςΩετূ໌ (Proof of Context)ʯ΁ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.34/39
  24. ϒϩοΫνΣʔϯ(ڱٛ)ͷಈ࡞తಛ௃ ࢀՃϊʔυʹঢ়ଶ͕ෳ੡͞ΕΔ (1) ౳͍͠ॳظঢ়ଶ͔Β͸͡·Δ (2) ͢΂ͯͷࢀՃϊʔυʹΠϕϯτ͕ίϐʔ͞ΕΔ (3) ͔ͭಉ͡ॱংͰίϐʔ͞ΕΔ (4) શΠϕϯτ͸ঢ়ଶʹରܾͯ͠ఆతʹ

    (ͲͷϊʔυͰ΋౳͘͠) ࡞༻͢Δ ͳͷͰ଱ো֐ੑΛҡ࣋Ͱ͖Δ ⇒ ͜ͷ͜ͱ͸ॏཁͰ͸ͳ͍͕ɺڱٛͷϒϩοΫνΣʔϯͷಈ࡞Λಛ௃͚ͮΔ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.36/39
  25. ͋Γ͕ͪͳύλʔϯ (ෆ޾) ଱ো֐ੑ (by ৑௕Խ) ͷͨΊͷٕज़ (since 1984) (ݖݶͷ෼ࢄ͸ؔ܎ͳ͍) (εέʔϧ͠ͳ͍)

    ಉ͡ΠϕϯτྻΛड͚औΔঢ়ଶϚγϯ͸ಉ͡ঢ়ଶʹͳΔͱ͍͏લఏ (ܾఆత) Πϕϯτͷॱংʹ߹ҙ͢Δඞཁ͕͋Δ . . . σδϟϰʁɹ (͍ΘΏΔʮ঎༻ϒϩοΫνΣʔϯʯͷߏ੒ʹࠅࣅ) ⇒ ͜Ε state machine replication Ͱ͢ΑͶʁ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.37/39
  26. ຊདྷɺૂ͏΂͖ύλʔϯ (ഁյ) Τϯυ (୺ͬ͜) ੍͕ޚ (ίϯτϩʔϧ) Λ΋ͭͨΊͷٕज़ (ݖݶͷ෼ࢄ) (εέʔϧ͠͏Δ) ੍ޚ͞ΕΔ΋ͷ͕Ұ؏ੑΛ΋ͬͯଘࡏ͢Δͱ͍͏ΠϦϡʔδϣϯΛҡ࣋

    (อଘͷਖ਼͠͞ΛࢀՃऀ͕ݕূՄೳ) ͦͷͨΊʹ଱ো֐ੑ (by ৑௕Խ) ͕ඞཁʹͳΔ ϋΠύʔϨοδϟʔͱͦͷଞͷ෼ࢄ୆ாٕज़ — ϒϩοΫνΣʔϯج൫ٕज़ — 2019-10-02 – p.38/39