Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ブロックチェーン概論
Search
Sashiyama Yoshiki
March 05, 2018
Technology
250
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ブロックチェーン概論
便宜上、わかりやすくするためにロジックを改変してあるところがあります。
Sashiyama Yoshiki
March 05, 2018
Other Decks in Technology
See All in Technology
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
340
Getting Started with Google Antigravity
glaforge
0
300
コンテナ運用におけるネットワーク・コンテナコストの削減方法/How to Reduce Network and Container Costs in Container Operations
masakiokuda
1
150
パスキーの自動テストはどこまでいけるのか
teamlab
PRO
0
200
実体験から学ぶ分析エージェントの開発と運⽤
recruitengineers
PRO
8
2.4k
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
580
OptunaHub: ブラックボックス最適化のためのプラットフォーム
pfn
PRO
0
140
SAENM ~Jupyterで残すPoCの試行錯誤、未来の自分と仲間を助ける記録!~
terapyon
0
110
Rust で関数型ドメインモデリング
takonda
0
140
hackers_champloo_2026_tidb
makocchi
0
160
スキマバイトという雇用形態は存在しないので、雇用期間1日のアルバイト契約を事業者とワーカーが結ぶ手続きを支えるのがタイミーなんです
akitoshiga
0
200
「事実」を「計測」して、「解釈」する 〜AWS Lambdaのメモリ最適解の見つけ方〜
maimyyym
0
170
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
187
23k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
So, you think you're a good person
axbom
PRO
2
2.2k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
400
Building Applications with DynamoDB
mza
96
7.2k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
950
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
520
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Writing Fast Ruby
sferik
630
63k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Embracing the Ebb and Flow
colly
88
5.2k
Transcript
ϒϩοΫνΣʔϯ֓ 2018.3.2 ࢦࢁ
ࠓͷϒϩοΫνΣʔϯ • ʑԾ௨՟͕ੈͷதΛ͍͍ҙຯͰѱ͍ҙ ຯͰΘΘ͍ͤͯΔࡢࠓɺྫ͑Ϗοτί Πϯ্͕͕Γͨ͠ͱ͔Լ͕Γͨ͠ͱ͔ɺ Ծ௨՟औҾॴ͕580ԯԁͷNEMΛྲྀग़ ͤͨ͞ͱ͔ɻ • ຊͦͷΑ͏ͳԾ௨՟Λࢧ͑ΔϒϩοΫ νΣʔϯͱ͍͏ٕज़ʹ͍ͭͯ͠·͢ɻ
INDEX • ϒϩοΫνΣʔϯͱ • தԝूݖܕΞϓϦέʔγϣϯͱࢄܕ(ඇதԝूݖܕ)ΞϓϦ έʔγϣϯ • ϒϩοΫνΣʔϯͷΈ • Α͘ݴΘΕΔॾ
• ͕ࣗࢥ͏͜ͱ • ϒϩοΫνΣʔϯͷະདྷ
ϒϩοΫνΣʔϯͱ
୯ͳΔσʔλϕʔε
ਖ਼֬ʹDBMSͬΆ͍ͷ • ؆୯ʹݴ͏ͱϒϩοΫνΣʔϯσʔλϕʔε ͷҰछ • ීஈࢲୡ͕ۀͰ͍ͬͯΔMysqlʹද͞Ε ΔΑ͏ͳRDBMSͱγεςϜͷׂతʹಉ ͡ͱߟ͑ΔͱΘ͔Γ͍͢ɹɹɹɹɹɹ ʢαʔόʔαΠυΤϯδχΞతʹʣ
RDBMSͱԿ͕ҧ͏ͷ͔
• ৭ʑҧ͏ͱ͜Ζ͋Δ͚ΕͲɺࠜຊతͳҧ͍ɺཧऀ ͷҧ͍ • ࢲୡ͕ීஈ͍ͬͯΔRDBMSγεςϜཧऀɺ·ͨ αʔϏεӡ༻ऀ(୯Ұͷཧऀ)͕ཧ͢ΔΑ͏ʹ࡞ΒΕͨ DB • ϒϩοΫνΣʔϯɺ໌֬ͳཧऀ͕ଘࡏͤͣɺαʔϏε (ྫ͑ϏοτίΠϯ)Λ༻͢ΔϢʔβʔΈΜͳͰཧ͢
Δ͜ͱΛલఏʹߟ͑ΒΕͨDB
ϒϩοΫνΣʔϯͱ ैདྷͷதԝूݖܕΞϓϦέʔγϣϯ (FacebookYoutubeͱ͍ͬͨࠓ͋Δ΄ͱΜͲͷ αʔϏε) Ͱ༻͢ΔDBͱରൺ͢Δɺ ࢄܕΞϓϦέʔγϣϯ (=P2PΞϓϦέʔγϣϯɺDApps)Ͱ༻͢ΔDB
தԝूݖܕΞϓϦέʔγϣϯͱ ࢄܕ(ඇதԝूݖܕ)ΞϓϦέʔγϣϯ
தԝूݖܕΞϓϦέʔγϣϯ • Ҿ༻: Winnyͷٕज़
ΫϥΠΞϯτ/αʔόܕγεςϜ (ྫ: Facebook, Twitter, Youtube, Instagram) ୯ҰͷγεςϜ͕͋ͬͯɺཧऀ͕͍ͯɺͦ ͜ʹϢʔβʔ͕ΞΫηεͯͦ͠ͷαʔϏεΛ ར༻͢ΔΠϝʔδ
ϝϦοτ(ࢄܕͱൺֱͯ͠) • Ϧιʔεͷूதཧར༻੍ݶ͕͍͢͠ • σʔλͷଈ࣌өੑ͕ߴ͍ • σʔλͷҰ؏ੑΛอ͍ͪ͢(ACIDಛੑ) • ৗ࣌ΦϯϥΠϯͰ҆ఆͨ͠αʔόΛఏڙ͠ ͍͢
σϝϦοτ(ࢄܕͱൺֱͯ͠) • γεςϜͷ୯ҰোΛͭ͘Γ͍͢ • ߘͨ͠ͷɺαʔϏεͷར༻͕γεςϜ ཧऀʹΑΓ੍ݶ͞ΕΔՄೳੑ͕͋Δ
ࢄܕΞϓϦέʔγϣϯ • Ҿ༻: Winnyͷٕज़
P2PܕΞϓϦέʔγϣϯɺDApps (ྫ: Napster, Gnutella, Winny, BitTorrent, Bitcoin) ಛఆͷγεςϜఏڙऀ͕ଘࡏͤͣɺ֤αʔϏ εར༻ऀ(ϊʔυ)͕αʔόʔʹΫϥΠΞϯ τʹͳΔγεςϜ
ϝϦοτ • োੑ: Ұͭͷϊʔυ͕ར༻Ͱ͖ͳ͘ͳͬͨ ͱͯ͠ɺଞͷϊʔυ͕ଘࡏ͢ΕαʔϏε Λར༻Ͱ͖ΔͨΊɺ୯Ұো͕࡞ΒΕͳ͍ • ٸܹͳෛՙͷରԠ: ར༻ऀͷ΄ͱΜͲ͕αʔ ϏεఏڙऀʹͳΓಘΔͨΊར༻ऀ͕ٸܹʹ
૿Ճͯ͠ͳ͍ઃܭΛ͍͢͠
σϝϦοτ • σʔλͷҰݩཧ͕ग़དྷͳ͍ • τϥϯβΫγϣϯσʔλͷ৴༻ੑ୲อ͕ग़དྷ ͳ͍(ޙ΄Ͳৄ͘͠આ໌͠·͢) ɹ ˠ ϒϩοΫνΣʔϯͰղܾΛਤͬͨ
ϒϩοΫνΣʔϯͷΈ
ࢄܕா
ࢄܕΞϓϦέʔγϣϯ σʔλͷ৴༻͕ॏཁʹͳͬͯ ͘ΔͷΛѻ͏ͷࠔͩͬͨ
ͨͩ୯ʹલޙͷؔͳ͍σʔλ*Λ WinnyͷΑ͏ʹP2PͰΓऔΓ͢Δͱ͖ʹɺͦ ͷσʔλ͕৴༻͋Δͷ*͔σʔλΛݟΔ͜ͱͰ ໌Β͔ͳͨΊօ͕͖ʹσʔλΛΞοϓϩʔυ͠ ͯ΄ͱΜͲͳ͔ͬͨ (ྫ͑ը૾ϑΝΠϧಈըϑΝΠϧ) (͜ͷ߹ͷ৴༻Οϧε͔ਖ਼ৗͳσʔλ͔Ͳ͏͔ͱ͍͏͜ͱͰͳͦ͘ͷσʔλ͕ ຊʹଘࡏ͢Δͷ͔ͱ͍͏৴༻)
• ͔͠͠ɺ͓ۚͷΓͱΓબڍථɺԿ͔σʔλͷཤ ྺ͕ॏཁʹͳ͖ͬͯͨΓɺͦͷσʔλ͕ຊʹଘࡏ͢ Δͷ͔୭͔ʹૢ࡞͞ΕͨͷͰͳ͍ͷ͔͕ॏཁʹͳͬ ͯ͘ΔछͷσʔλΛࢄܕΞϓϦέʔγϣ্Ͱѻ͏ͨ Ίʹͦͷσʔλͷ৴༻ੑΛ୲อ͠ͳ͍ͱ͍͚ͳ͍ • ଞʹೋॏॻ͖ࠐΈ͕ͳ͍͔ͱ͔୲อ͠ͳ͍ͱ͍͚ ͳ͍ •
P2PͳͷͰҰׅʹσʔλ͕ཧ͞Εͳ͍ͨΊଟॏॻ͖ ࠐΈසൃ͢Δ
ͦΕΒΛѻ͏ͨΊͷٕज़ “ࢄܕா”
None
৴༻ͷ୲อ • Ϩίʔυ(τϥϯβΫγϣϯσʔλ)ͷॻ͖ࠐΈ࣌ʹ ΞϓϦέʔγϣϯͰܾΊΒΕͨԿΒ͔ͷ߹ҙϧʔ ϧ(=ίϯηϯαεΞϧΰϦζϜ)ʹج͍ͮͯෳͷ Ϣʔβʔ͕ॻ͖ࠐΜͰྑ͍σʔλ͔ΛಉҙΛͱΓ ͳ͕ΒܾΊΔ • ͦͯ͠ΑΓσʔλͷվ͟ΜੑΛ͘͢ΔͨΊɺॻ ͖ࠐ·Εͨσʔλ࣍ͷਤͷΑ͏ʹϒϩοΫ͕
ঢ়(νΣʔϯ)ʹ࿈ͳͬͨΑ͏ʹอଘ͢Δ
None
ίϯηϯαεΞϧΰϦζϜ
Proof of Work • ϏοτίΠϯͰ࠾༻͞Ε͍ͯΔҰ൪ϝδϟʔ ͳίϯηϯαεΞϧΰϦζϜ • ઌఔݟͤͨϒϩοΫͷੜͱੜͨ͠ϒϩο ΫΛଞͷϊʔυ(Ϛγϯ)ʹൖ͍ͤͯ͘͞ͱ͖ ʹ༗ޮͳσʔλ͔Ͳ͏͔Λ୲อ͢ΔͨΊͷΞ
ϧΰϦζϜ
None
Α͘ݴΘΕΔॾ
ଈ࣌өੑͷܽ • ϒϩοΫͷੜίϯηϯαεΛͱͬͨΓશ ମͷಉظʹ࣌ؒΛऔΒΕΔͨΊσʔλө ·Ͱεϐʔυ͕͍ • VISA2,500tpsʢ2,500औҾ/ඵʣ • BTC7tps
վળࡦ • ҰͭͷϒϩοΫʹ٧ΊΔऔҾྔΛ૿͢(ࠓ1MBఔ ) • ͔͠͠ɺϒϩοΫαΠζΛେ͖͘͢Δͱϑϧϊʔυͷ ѹഭ͕ߴ·ΓɺϚΠφʔ͕ूதԽ͢Δ • औҾྔΛ૿ͦ͏ͱ͢ΔͨͼʹϒϩοΫαΠζΛ૿ ͢ͱ͍͏ѱ॥ʹͳΔ
• ϥΠτχϯάωοτϫʔΫͳΔͷ͕ఏҊ͞Ε͍ͯΔɻ
51%߈ܸ • ίϯηϯαεΞϧΰϦζϜͬͯσʔλͷਖ਼ ੑΛ࠷ޙଟܾͰܾΊΔΜͩΑͶʁͦͨ͠ ΒɺωοτϫʔΫͷ51%औΕվ͟ΜͰ͖Δ ΑͶͬͱ͍͏߈ܸ • ϏοτίΠϯిؾͷ͍҆தࠃ͕աΛ طʹ༗͍ͯ͠ΔΒ͍͠
ϑϧϊʔυॏ͍ • ϒϩοΫνΣʔϯͰશͯͷσʔλΛશͯͷϊʔ υ͕อ͍࣋ͯ͠Δ • ͦͨ͠ΒɺऔҾྔ͕૿͑ͨϏοτίΠϯͱ͔ ͏ͨΊʹΠϯετʔϧ͢Δ͚ͩͰ૬ͳ༰ྔ͕ ඞཁͰͳ͍͔ͱ͍͏ • SPVϊʔυͱ͍͏ΈͰ1/1000ఔͷαΠζ
ͰΠϯετʔϧͰ͖Δ
ASICੑ • ASIC(Application Specific Integrated Circuit): ಛఆ ༻్͚ʹઃܭͯ͠࡞ΒΕͨΧελϜूੵճ࿏ • ϏοτίΠϯʹϒϩοΫͷੜΞυϨεੜ࣌
ͷϋογϡΞϧΰϦζϜͱͯ͠SHA-256͕༻͞Ε ͓ͯΓͦΕʹରԠͨ͠ASICͷ։ൃΜ • ͦ͏͍͏ASIC͕ྲྀ௨͢Δ͜ͱʹΑΓASICΛखʹೖ ΕΒΕΔϚΠφʔ͚ͩʹ͕ूதͯ͠͠·͏
͕ࣗࢥ͏͜ͱ
ϒϩοΫνΣʔϯͷະདྷ
τʔΫϯΤίϊϛʔ • ࠓ·ͰՁͷ͚ͭΒΕͳ͔ͬͨͷʹՁΛ Ճ͢ΔτʔΫϯ(ಠࣗԾ௨՟)Ͱܗ͞ΕΔ ܦࡁݍ • Өڹྗ৴༻ɺ࣌ؒͱ͍ͬͨ֓೦ͷՁΛՄ ࢹԽ͢Δ
ࢄԽ͢Δࣾձ • ۙࣾձɺใͷඇରশੑΛલఏʹ࡞ΒΕͯ ͍ΔͷͰɺͦΕΛੋਖ਼͢ΔͨΊʹϋϒΛ༻ҙ͢ Δ͜ͱͰޮԽ͕ਤΓͦͷ݁ՌதԝूݖԽͯ͠ ͍ͬͨ • ͔͠͠ɺݱࡏօ͕εϚϗΛॴ࣋͠ɺৗ࣌Φϯ ϥΠϯͳͨΊৗ࣌ΦϯϥΠϯΛอূ͢Δதԝαʔ ό͕ඞཁͰͳ͘ͳͬͨʁ
→ ࢄԽ͕ਐΉ
ϒϩοΫνΣʔϯ × AI • ϒϩοΫνΣʔϯʹΑΓࢄͨ͠γεςϜ͕AIʹΑΓࣗಈ ௐΛ܁Γฦ͠ɺࣗ͢ΔγεςϜ → ࣗࢄγεςϜ • ྫ:
Numerai → ແਓͷϔοδϑΝϯυɻଟͷσʔλα ΠΤϯςΟετ͕ػցֶशΛ༻͍ͯɺࢿϞσϧΛߏங͠ γεςϜʹΞοϓϩʔυΛߦ͍࣮ࡍʹϞσϧΛ༻͍ͯγε ςϜ͕ࢿ͢Δɻͦͷ݁ՌऩӹΛ্͛Δ͜ͱ͕Ͱ͖Εɺ ͦͷϞσϧͷߏஙऀʹτʔΫϯ(Ծ௨՟)͕ࢧΘΕΔ Έ