Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ブロックチェーンと金融システム / Blockchain and Financial Systems
Search
Kenji Saito
PRO
December 09, 2021
Technology
0
200
ブロックチェーンと金融システム / Blockchain and Financial Systems
2021年12月14日(火)、東京大学およびオンラインにて開催された 近未来金融システム創造プログラム – 第13回 金融と技術 (各論IV) にて使用したスライドです。
Kenji Saito
PRO
December 09, 2021
Tweet
Share
More Decks by Kenji Saito
See All by Kenji Saito
サイバーフィジカル社会、金融の未来とアイデアソン / Cyber Physical Society, Future of Finance, and Ideathon
ks91
PRO
0
47
マニフェスト: 人類の知のフロンティアに向けた拡張的足場へ / Manifesto: Toward Expansive Scaffolding for Humanity's Knowledge Frontier
ks91
PRO
0
9
続・スマートコントラクトと分散ファイナンス / Smart Contracts and Decentralized Finance, Continued
ks91
PRO
0
48
スマートコントラクトと分散ファイナンス / Smart Contracts and Decentralized Finance
ks91
PRO
0
64
シン・ブロックチェーン / Truth of Blockchain
ks91
PRO
0
97
パスワード/パスフレーズと認証 / Password, Passphrase and Authentication
ks91
PRO
0
37
git と GitHub / git and GitHub
ks91
PRO
0
36
ソフトウェアの開発と保守 / Software Development and Maintenance
ks91
PRO
0
50
インターネットの特徴 / Features of the Internet
ks91
PRO
0
34
Other Decks in Technology
See All in Technology
いつの間にか入れ替わってる!?新しいAWS Security Hubとは?
cmusudakeisuke
0
160
大量配信システムにおけるSLOの実践:「見えない」信頼性をSLOで可視化
plaidtech
PRO
0
290
Sansanのデータプロダクトマネジメントのアプローチ
sansantech
PRO
0
230
TableauLangchainとは何か?
cielo1985
1
150
サイバーエージェントグループのSRE10年の歩みとAI時代の生存戦略
shotatsuge
4
830
Rethinking Incident Response: Context-Aware AI in Practice
rrreeeyyy
1
390
American airlines ®️ USA Contact Numbers: Complete 2025 Support Guide
airhelpsupport
0
390
TLSから見るSREの未来
atpons
2
240
CDKコード品質UP!ナイスな自作コンストラクタを作るための便利インターフェース
harukasakihara
2
200
american airlines®️ USA Contact Numbers: Complete 2025 Support Guide
supportflight
1
120
CDK Toolkit Libraryにおけるテストの考え方
smt7174
1
450
ポストコロナ時代の SaaS におけるコスト削減の意義
izzii
1
260
Featured
See All Featured
BBQ
matthewcrist
89
9.7k
Agile that works and the tools we love
rasmusluckow
329
21k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
740
A designer walks into a library…
pauljervisheath
207
24k
Unsuck your backbone
ammeep
671
58k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
It's Worth the Effort
3n
185
28k
Automating Front-end Workflow
addyosmani
1370
200k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
How STYLIGHT went responsive
nonsquared
100
5.6k
Transcript
Replicate the logs. – 13 ( IV)
[email protected]
/
[email protected]
— 2020-12-14 – p.1/40
https://speakerdeck.com/ks91 — 2020-12-14 – p.2/40
( ) SFC ( ) CSO (Chief Science Officer) 1993
( ) 2006 ( ) SFC 21 P2P (Peer-to-Peer) 2011 2018 2019 VR 2021.7 VR 2021.8 “ALL THESE WORLDS ARE YOURS” VR 2021.9 & VR 2021.12 ( (VR) ) → ( ) — 2020-12-14 – p.3/40
(1) 2020 9 60 (2020) : ( ) . .
. = ( ) GitHub Copilot (AI ) — 2020-12-14 – p.4/40
(2) (2020) : ( ) ( = + ) —
2020-12-14 – p.5/40
— 2020-12-14 – p.6/40
SAY NO TO BULLSHIT JOBS David Graeber, “Bullshit Jobs: A
Theory” (2018) ← (4 ) ( ) ( ) — 2020-12-14 – p.7/40
Alexa, ত࣌ ੈلޙ ࣾձγεςϜ ࣾձڥ ػց ٕज़ ਓؒ ࣗಈγεςϜ ྩ࣌
ੈلલ ిؾ͚ͭͯ ͍ ͍ ిؾ͚ͭͯ ͜ͷ݅ͷͱ͖ ٕज़Ͱ͋Γࣾձڥˠࣗવڥ ਓ ⇒ ( ) — 2020-12-14 – p.8/40
(4 ) (DX ) ( ) — 2020-12-14 – p.9/40
SF SF → VR 2021.7 — 2020-12-14 – p.10/40
VR (1) 50m — 2020-12-14 – p.11/40
VR (2) . . . — 2020-12-14 – p.12/40
VR (3) . . . 2030 — 2020-12-14 – p.13/40
( ) ⇒ ( ) — 2020-12-14 – p.14/40
— 2020-12-14 – p.15/40
( ) ( ) (BP : Blockchain Property ) BP-1
: ( ) BP-2 : ( , ) BP-3 : ( ) ( ) ( ) — 2020-12-14 – p.16/40
( ) ( ) ( ) ( ) ( 16
) SHA (Secure Hash Algorithm) ( ) 1bit — 2020-12-14 – p.17/40
( ) ( ) < , > ( ) :
< , > : : < , , > : OK NG — 2020-12-14 – p.18/40
BP-1 ( ), BP-2 ( ) BBc-1 f : →
BP-3 ( ) ( ) ( ) ← BP-2 ← BP-3 ( ) ( ) ← BP-3 + ← BP-{1,2} — 2020-12-14 – p.19/40
[Lamport 1984][Schneider 1990] (1) (2) (3) (4) ( ) ←
↑ — 2020-12-14 – p.20/40
( 4 TX ) SMRP (State Machine Replication Problem) SMRP-1
( ) SMRP-2 : ← — 2020-12-14 – p.21/40
( ) ( ) ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O
ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ϒϩοΫ൪߸O ͍ͪΜهɾॻ͖͑ͷίετ͕ߴ͍ྺ࢙ ࠷վ͟Μ͠ʹ͍͘ྺ࢙ ͕༗ޮ ͻͱͭखલͷϒϩοΫͷ ʮμΠδΣετʯ σδλϧॺ໊͞Εͨ ʮτϥϯβΫγϣϯ औҾ ʯ ϒϩοΫΛ࡞ΔͨΊʹɺͦͷʮμΠδΣετʯ͕͋ΔҎԼͱ͍͏݅Λຬͨͨ͠Γ 1SPPGPG8PSL Ծ௨՟ͷ࣋ͪʹԠͨ͡ݖརΛͬͨථͰউͬͨΓ 1SPPGPG4UBLF ͢Δඞཁ͕͋Δ ίετ͕͔͔Δ ϒϩοΫΛ࡞ΔਓͦͷதʹࣗʹѼͯͨ Ծ௨՟ͰͷใुΛॻ͖ࠐΉ͜ͱ͕Ͱ͖ɺ ͦͷϒϩοΫ͕༗ޮͳྺ࢙ͷதʹ͋Δ߹ʹ ݶΓใु༗ޮͱͳΔ τϥϯβΫγϣϯͷଘࡏΛ֬ೝ͢Δ ͨΊͷޮతͳํ๏͕ఏڙ͞ΕΔ ਖ਼ੑ ଘࡏੑ །Ұੑ Proof of Work ( ) . . . → — 2020-12-14 – p.22/40
(BP-3 ) ( : ) (BP-3 ) ( : )
(← NFT ) BP-{1,2,3} BP-{1, 2} ⇒ (← ) — 2020-12-14 – p.23/40
(DeFi) (DeFi : Decentralized Finance) ⇒ ( ) ⇒ (
) ⇒ ( ) ( ) NFT (Non-Fungible Token) NFT ( NFT ) — 2020-12-14 – p.24/40
. . . 2009 ↑ 11 . . . —
2020-12-14 – p.25/40
BBc-1/Ethereum API/ https://github.com/beyond-blockchain/examples/tree/master/certify-web 1. ID ( ) 2. ID ID
. . . ID ( ) — 2020-12-14 – p.26/40
ID { "id": "4445 4558 1689", "name": "Wednesday Addams", "born":
"1980-02-12", "address": "0001 Cemetery Lane", "public-key": "04d49e0786a37efce8552d6fd1566d7cfd86f110d4d95f1...4edb", "algo": "ecdsa-p256v1", "sig": "609b390f9486110d1ba39fc59cc46f1c2aa31ae8e40d3454c05a42...48e2", "pubkey": "0479c6676de61b41b7d0291b338f3279671d649f0a71bbb495...4bd1", } (Merkle) Ethereum — 2020-12-14 – p.27/40
*%Χʔυจॻ JEJE OBNF8FEOFTEBZ"EEBNTOBNF 8FEOFTEBZ"EEBNT ͷͷ ࣏ࣗମͷͷ CPSOCPSO BEESFTT$FNFUFSZ-BOFBEESFTT QVCMJDLFZEFDFECQVCMJDLFZ *%
Χʔυจॻ ͷμΠδΣετ ॺ໊͖ *% Χʔυจॻ ͷμΠδΣετ ࿈͔݁ͯ͠Β ܭࢉ͢Δ ॺ໊Λݕূ͠ɺ ޭͨ͠Β ࿈͔݁ͯ͠Β ܭࢉ͢Δ EJHFTU EJHFTU EJHFTU BMHPSJUIN TJHOBUVSF QVCMJDLFZ EJHFTU EJHFTU EJHFTU EJHFTU +40/ σʔλߏɺ෦ॲཧͰ 9.- ʹม͞Ε·͢ ͱͱ 9.- ༻ʹ࡞ͬͯ͋ΔϥΠϒϥϦΛ༻͍ͯ͠·͢ ɻ ෦తʹӅ͞Ε͍ͯͯূ໌Ͱ͖ΔΑ͏ʹɺηΫγϣϯ͝ͱʹμΠδΣετΛܭࢉ͍ͯ͠·͢ɻ ྫ͑ɺ*% ΧʔυͰྸॅॴɺ͋Δ͍ެ։伴Λ֬ೝ͢Δ͚ͩͰ͋Εɺ*% ൪߸ΛݟΔ͜ͱ͕๏Ͱېࢭ͞Ε͍ͯΔͷ߹ɺ *% ൪߸ΛӅͯ͠ ͦͷ෦ΛରԠ͢ΔμΠδΣετͰஔ͖͑ͯ ఏࣔͯ͠࠷ऴతʹॺ໊͖ *% Χʔυจॻͷಉ͡μΠδΣετΛܭࢉͰ͖ΔͷͰɺଘࡏূ໌͕Ͱ͖·͢ɻ ʮμΠδΣετʯͱɺ҉߸ֶతϋογϡؔʢࠓճ 4)"ʣʹΑͬͯܭࢉ͞Εͨͷ͜ͱͰ͢ɻ Θ͔ͣ ϏοτͰݩͷσʔλ͕ҟͳΔͱɺฦͬͯ͘Δ͕શ͘ҟͳΓɺμΠδΣετ͔ΒݩͷσʔλΛ ਪଌ͢Δ͜ͱͰ͖·ͤΜɻ — 2020-12-14 – p.28/40
API/ Merkle Proof จ ॻ จ ॻ จ
ॻ จ ॻ จ ॻ O μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ حͷ߹ ෳ͢Δ ɾจॻ Λಘͨ" ࢯɺಉ࣌ʹূ໌ཁૉͱͯ͠ɺϒϧʔͰࣔ͞ΕΔμΠδΣετͱ֤ʑ͕ࠨӈͷͲͪΒʹҐஔ͢Δ͔Λड͚औΔɻ ɾ" ࢯจॻ ͷμΠδΣετ͔Β࢝Ίͯɺ࿈͖݁͢Ұ࿈ͷμΠδΣετΛΔ͜ͱʹͳΔͷͰɺϚʔΫϧϧʔτʹࢸΔ·Ͱͷ ɹܭࢉΛ࠶ݱͰ͖ɺಘΒΕͨϚʔΫϧϧʔτ͕ &UIFSFVN εϚʔτίϯτϥΫτʹه͞Ε͍ͯΔͱҰக͢Δ͜ͱΛ֬ೝͰ͖Δɻ ɾͦͷܭࢉΛߦ͢Δͷ͕DFSUJGZXFCͷαʔϏε ݪཧͷཧղͱඞཁͳใ͕͋Ε୭Ͱ࠶ݱͰ͖Δ ূ໌͞ΕΔ ɻ ه͢Δ ಡΈग़ͤΔ ূ໌Λ ඞཁͱ͢Δऀʹ ։ࣔ͞ΕΔใ ˞##Dɺ͜ͷߏΛอଘ ɹ͍ͯ͠Δ͕ɺαϒπϦʔΛ ɹূ໌ཁૉԽͯͨ͠͠ޙɺ ɹূ໌͢Δ্Ͱ##D ෆཁ ެ։͞ΕΔใ ϚʔΫϧϧʔτ Ϛ ồ Ϋ ϧ γ ε ς Ϝ ͕ อ ͠ ֤ Ϣ ồ β ʹ ෦ త ʹ ͑ Δ ʜʜ ʜʜ ʜʜ ʜʜ ʜʜ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ &UIFSFVNϒϩοΫνΣʔϯ ʜ ʜ ##DϥΠϒϥϦ ূ໌ॻΞϓϦͰ࣮ݱ — 2020-12-14 – p.29/40
Merkle Proof ( ) { "proof": { "spec": { "subsystem":
"ethereum", "network": "ropsten", "contract": "BBcAnchor", "contract_address": "0x609CD0aF4663bbA6c7105fd34BbCBCDd5e75067C", "block": 9186681 }, "subtree": [ { "position": "right", "digest": "bd7d8c62a483e23b8e4713699bec9ff036ead7f3a72a8ff70684cdec1e8b6aeb" }, : # ] } } — 2020-12-14 – p.30/40
BBcAnchor.sol ( ) contract BBcAnchor { mapping (uint256 => uint)
public _digests; constructor () public { } function getStored(uint256 digest) public view returns (uint block_no) { return (_digests[digest]); } function isStored(uint256 digest) public view returns (bool isStored) { return (_digests[digest] > 0); } function store(uint256 digest) public returns (bool isAlreadyStored) { bool isRes = _digests[digest] > 0; if (!isRes) { _digests[digest] = block.number; } return (isRes); } } / — 2020-12-14 – p.31/40
τʔΫϯ ସ՟ฎ εϚʔτίϯτϥΫτ ݕূՄೳͳঢ়ଶϚγϯ ϓϩϏφϯε དྷྺূ໌ ସՄೳ ঈؐෆೳ ସՄೳ
ঈؐՄೳ ସෆೳ ঈؐՄೳ ସෆೳ ঈؐෆೳ ূ໌͢Δ ಉఆ͢Δ ࢧ͍ ࠷ॳͷԠ༻ *%Χʔυ ηΩϡϦςΟ τʔΫϯ ূ݊ ηϯαʔ ྲྀɾ Ҩݴॻ อݥਃ ͢Δ ײ͢Δ தԝۜߦ σδλϧ௨՟ ҭήʔϜ ൿີ伴Λ͑Δ͔Βຊਓʁ ෛ࠴ Ξηοτͷ දݱΛҠసͰ͖Δʁ ొ͞Εͨίʔυͱ ͦͷ࣮ߦϩάͱ݁Ռͷ ਅਖ਼ੑΛ୲อͰ͖Δʁ ݖҖ͕ Կ͔ͷ༰Λূ໌͢Δʁ ࣋ଓ͢Δଘࡏʹ͍ͭͯ هΛΞοϓσʔτՄʁ ओମ͕͍ͳ͘ͳͬͯ աڈͷσʔλ༗ޮʁ Ұൠతͳ ೝࣝ ػೳͷ ੳ݁Ռ — 2020-12-14 – p.32/40
( ) — 2020-12-14 – p.33/40
IP (Internet Protocol) ( ) : IP : / (IP
) : : — 2020-12-14 – p.34/40
: ⇒ LINE → → ( ) ( ) ⇒
→ → → — 2020-12-14 – p.35/40
( ) . . . ( : ) (GitHub ←
D.C. ) ( : ) ↑ P2P ( : Ethereum) ( ) — 2020-12-14 – p.36/40
( ) ( ) . . . ← ( )
. . . — 2020-12-14 – p.37/40
( ) (cyborg) = (cybernetic) (organism) 1 : ← 2
: ⇒ (1) (2) ⇒ ← — 2020-12-14 – p.38/40
ࠃʹΑΔ ҆શอো ՟ฎ ࢢ ۀࣾձ ઐੑͷ Խ ࢧ ࣋ ࢧ
࣋ ࢧ࣋ %9 ۚ༥ ൃߦ ೲ੫ ࣗಈԽɾޮԽɾຽओԽ ࣗಈԽɾ ޮԽɾ ຽओԽ ࣗಈԽɾ ޮԽɾ ຽओԽ ઐະԽʂ — 2020-12-14 – p.39/40
100 50 ( 50 ) ( ) . . .
— 2020-12-14 – p.40/40