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
State Channelエコシステムと実用上の課題
Search
Ryuya Nakamura
July 24, 2018
Technology
3
4.4k
State Channelエコシステムと実用上の課題
Ryuya Nakamura
July 24, 2018
Tweet
Share
More Decks by Ryuya Nakamura
See All by Ryuya Nakamura
AIオンボーディングとAIプロセスマイニング
nrryuya
5
2.2k
アルファを作る人になる
nrryuya
0
340
学生時代のキャリア探索の心がけ
nrryuya
0
240
フィードバックされやすい人になろう
nrryuya
32
23k
間違いが許されなくてもLLMが使えるユースケースとは @GenAI Playground Meetup #01
nrryuya
13
6.2k
20240725 LLMによるDXのビジョンと、今何からやるべきか @Azure OpenAI Service Dev Day
nrryuya
4
2.6k
「知的単純作業」を自動化する、地に足の着いた大規模言語モデル (LLM) の活用
nrryuya
9
13k
20240130 エンプラDXにおける2024年の生成AIトレンド予測 @生成AI新年会2024
nrryuya
2
2.4k
20240125 開発側・ビジネス側という壁を作らない LLMアプリ開発 @生成AI Conf
nrryuya
8
4k
Other Decks in Technology
See All in Technology
クラウドセキュリティを支える技術と運用の最前線 / Cutting-edge Technologies and Operations Supporting Cloud Security
yuj1osm
2
300
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
2
280
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.3k
人工衛星のファームウェアをRustで書く理由
koba789
7
3.6k
AI開発ツールCreateがAnythingになったよ
tendasato
0
110
AI駆動開発に向けた新しいエンジニアマインドセット
kazue
0
300
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
400
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
210
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
2
170
dbt開発 with Claude Codeのためのガードレール設計
10xinc
1
850
なぜテストマネージャの視点が 必要なのか? 〜 一歩先へ進むために 〜
moritamasami
0
200
エラーとアクセシビリティ
schktjm
1
1.1k
Featured
See All Featured
Gamification - CAS2011
davidbonilla
81
5.4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Making Projects Easy
brettharned
117
6.4k
GraphQLとの向き合い方2022年版
quramy
49
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
800
The Pragmatic Product Professional
lauravandoore
36
6.9k
Navigating Team Friction
lara
189
15k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Transcript
State Channelエコシステムと実用上の課題 @veryNR 2018.7
2 ©Gunosy Inc. 自己紹介 中村龍矢 @veryNR ▪ Gunosy Inc. –
データ分析部 2017年2月~ • 動画配信ロジックの開発など • Python, Go, SQL – 新規事業開発室 2018年6月~ • ブロックチェーン技術の研究 ▪ 経歴 – Coubic株式会社 • 営業をやっていました – 日本ヒューマンビートボックス協会 • お手伝い – 東京大学工学部システム創成学科 • 休学中
3 ©Gunosy Inc. 目的とアジェンダ ▪ State Channelとは ▪ State Channelのエコシステム
▪ ユースケース – 利用時の注意点 – 具体例 ▪ 実用上の課題 – UX上の課題 – 開発上の課題 State Channel界隈の現状と実利用について考える
4 ©Gunosy Inc. State Channelとは
5 ©Gunosy Inc. State Channelとは ▪ 基本の流れ 1. チャンネルをオープンし、ステートをマルチシグでロック(デポジット) 2.
オフチェーンで状態遷移(コミットメント) 3. チャンネルのクローズ、オンチェーンでの反映 ▪ Payment Channelが有名 – Lightning Network, Raiden Network ▪ Ethereumの場合Payment以外のステートにも適用できる – オンラインカジノ、チェス、etc. – 汎用ステートチャネル(Generalized State Channel)もある オフチェーンで状態遷移をして最終結果だけ書き込む方法
6 ©Gunosy Inc. Application-specific State Channel: FunFair https://showcase.funfair.io/
7 ©Gunosy Inc. State Channelとは ▪ マルチシグ – アセットをマルチシグでロック ▪
コミットメント – オフチェーンでやり取りに関するメッセージに全員で署名 – マルチシグを介してオフチェーンの状態を「いつでもオンチェーンで反映できる」ようにす る ▪ チャレンジ – 古いコミットメントの提出は防げない – 新しいコミットメントを提出することで無効化 マルチシグ・コミットメント・チャレンジが基本的な仕組み
8 ©Gunosy Inc. State Channelとは https://blockchain.gunosy.io/entry/state-channel https://blockchain.gunosy.io/entry/counterfactual 詳細はこちら
9 ©Gunosy Inc. State Channelのエコシステム
10 ©Gunosy Inc. State Channelのエコシステム State Channelの実用化には様々なサービスが必要 ▪ ウォレット/クライアントアプリ ▪
監視サービス – 古いコミットメントの提出 – 監視とチャレンジを代行 ▪ バックアップサービス – 端末故障時等に備えコミットメントを保管 – 暗号化して保管 ▪ ネットワーク系サービス – ハブ – ルーティング バック アップ ハブ 監視
11 ©Gunosy Inc. State Channelのエコシステム ▪ Lightning Networkより発展していない – 双方向ペイメントが最近やっとメインネットで動いたくらい
– BOLTのような標準仕様なし ▪ ICOによる(?)垂直統合の研究開発スタイル – ICOトークンのエコシステムを設計しないといけない – 結果としてプロトコルレイヤーからサービスレイヤーまで担当 Ethereumにおいてはまだまだ未成熟
12 ©Gunosy Inc. State Channelのユースケース
13 ©Gunosy Inc. State Channelのユースケース ▪ Non-Fungibleなアセットは仲介できない – 多くのDappではState Channel
Networkが使えない ▪ 固定された参加者セットで沢山のやり取りがある場合に使う – 参加者は増減できない – チャンネル開閉の2txはどうしても必要 ▪ 途中の過程は(通常)書き込まれない – 「取引の過程をオープンにして透明性を hogefuga」系のDappでは使いにくい • 後からトラストレスに取引の過程を記録することは理論上可能 ▪ サブスクリプション型サービスの支払い、賭けチェス , etc. 利用時の注意
14 ©Gunosy Inc. State Channelのユースケース ▪ 必要なやり取りの例 – レンタル注文→承諾/拒否 –
キャンセル→承諾/拒否 – レンタル延長→承諾/拒否 ▪ デポジットするアセット – 借りる側: 支払い用のトークン – 貸す側 : 車のデジタル所有権 カーシェアリングのDappの例 http://news.livedoor.com/article/detail/9038214/ デジタル資産の取引はなんだかんだ沢山のやり取りが必要 → 意外と多くのケースで利用可能(かも)
15 ©Gunosy Inc. 実用上の課題
16 ©Gunosy Inc. State Channelの実用上の課題 ▪ チャンネルの開閉はオンチェーン – レイテンシー・手数料 ▪
問題発生時にユーザーの手間が増える – 相手が応答しなくなったことに気づいてコミットメントの提出 – 監視・バックアップサービスとのやり取り ▪ コミットメント作るために毎回署名 – チェスで一手ごとにパスワード入力 – アプリ利用ごとに一時的な鍵を作って登録するなどの提案もある ▪ デポジット – 事実上の先払い – デポジット額の悩み「もしかしたら延長するから多めに入れとこう」 現状はユーザーがState Channelをかなり意識することが多い
17 ©Gunosy Inc. 最後に ▪ ペイメント以外のState Channelの実利用はかなり先になりそう ▪ とはいえ多くのDappで検討する意義はある 間違い等あれば是非@veryNRまでお知らせください