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
LLM とプロンプトエンジニアリング/チューターをビルドする / LLM and Prompt Engineering and Building Tutors
ks91
PRO
0
220
講師自己紹介 / Lecturer's Self-Introduction
ks91
PRO
0
75
講師研究紹介 / Lecturer's Research Introduction
ks91
PRO
0
59
Discord とビルダー&チャットボットの使い方 / How to use Discord and Builder & Chatbots
ks91
PRO
0
130
研究って何だっけ / What's Research?
ks91
PRO
0
20
ブロックチェーンと分散ファイナンス概論 / Introduction to Blockchain and Decentralized Finance
ks91
PRO
0
16
招き猫コマロ— ネットワーク贈答経済のエージェント / Manekineko Komaro - Network Gift Economy Agent
ks91
PRO
0
13
Implementation of Blockchain Ecosystems
ks91
PRO
0
10
Utilization of Blockchain in the Public Sector
ks91
PRO
0
6
Other Decks in Technology
See All in Technology
Hands-on / Kaname Frusawa / Cloud Compare Users Meetup 2024 at University of Tokyo on April 17
paraworld
2
470
エンタープライズ環境下での Active Directory の運用 TIPS
tamaiyutaro
1
1.6k
AWS を使う上で知っておきたいオンプレミス知識/aws-on-premise-essentials
emiki
1
4.2k
Delivering Millions of Messages within seconds @ Duolingo
pelelgrino
0
340
ユーザーストーリーのレビューを自動化したみたの
bun913
1
330
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
2
200
コンパウンドスタートアップのためのスケーラブルでセキュアなInfrastructure as Codeパイプラインを考える / Scalable and Secure Infrastructure as Code Pipeline for a Compound Startup
yuyatakeyama
3
3.2k
「ふりかえりのふりかえり」をふりかえり、実のあるふりかえりにする
naitosatoshi
0
220
Aurora MySQL v3(MySQL8.0互換)の オンラインDDLの罠挙動を全バージョンで検証した
yutakikai
1
150
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
150
0→1開発における技術選定において一番大切なこと
bicstone
1
330
Four keys改善の取り組み事例紹介
sansantech
PRO
3
230
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
321
20k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
5
1.5k
4 Signs Your Business is Dying
shpigford
175
21k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
220
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
19
1.9k
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
Into the Great Unknown - MozCon
thekraken
10
980
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
24
2.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
15
2.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
Learning to Love Humans: Emotional Interface Design
aarron
266
39k
Designing the Hi-DPI Web
ddemaree
276
33k
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