State Channelエコシステムと実用上の課題
by
Ryuya Nakamura
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
State Channelエコシステムと実用上の課題 @veryNR 2018.7
Slide 2
Slide 2 text
2 ©Gunosy Inc. 自己紹介 中村龍矢 @veryNR ■ Gunosy Inc. – データ分析部 2017年2月~ ● 動画配信ロジックの開発など ● Python, Go, SQL – 新規事業開発室 2018年6月~ ● ブロックチェーン技術の研究 ■ 経歴 – Coubic株式会社 ● 営業をやっていました – 日本ヒューマンビートボックス協会 ● お手伝い – 東京大学工学部システム創成学科 ● 休学中
Slide 3
Slide 3 text
3 ©Gunosy Inc. 目的とアジェンダ ■ State Channelとは ■ State Channelのエコシステム ■ ユースケース – 利用時の注意点 – 具体例 ■ 実用上の課題 – UX上の課題 – 開発上の課題 State Channel界隈の現状と実利用について考える
Slide 4
Slide 4 text
4 ©Gunosy Inc. State Channelとは
Slide 5
Slide 5 text
5 ©Gunosy Inc. State Channelとは ■ 基本の流れ 1. チャンネルをオープンし、ステートをマルチシグでロック(デポジット) 2. オフチェーンで状態遷移(コミットメント) 3. チャンネルのクローズ、オンチェーンでの反映 ■ Payment Channelが有名 – Lightning Network, Raiden Network ■ Ethereumの場合Payment以外のステートにも適用できる – オンラインカジノ、チェス、etc. – 汎用ステートチャネル(Generalized State Channel)もある オフチェーンで状態遷移をして最終結果だけ書き込む方法
Slide 6
Slide 6 text
6 ©Gunosy Inc. Application-specific State Channel: FunFair https://showcase.funfair.io/
Slide 7
Slide 7 text
7 ©Gunosy Inc. State Channelとは ■ マルチシグ – アセットをマルチシグでロック ■ コミットメント – オフチェーンでやり取りに関するメッセージに全員で署名 – マルチシグを介してオフチェーンの状態を「いつでもオンチェーンで反映できる」ようにす る ■ チャレンジ – 古いコミットメントの提出は防げない – 新しいコミットメントを提出することで無効化 マルチシグ・コミットメント・チャレンジが基本的な仕組み
Slide 8
Slide 8 text
8 ©Gunosy Inc. State Channelとは https://blockchain.gunosy.io/entry/state-channel https://blockchain.gunosy.io/entry/counterfactual 詳細はこちら
Slide 9
Slide 9 text
9 ©Gunosy Inc. State Channelのエコシステム
Slide 10
Slide 10 text
10 ©Gunosy Inc. State Channelのエコシステム State Channelの実用化には様々なサービスが必要 ■ ウォレット/クライアントアプリ ■ 監視サービス – 古いコミットメントの提出 – 監視とチャレンジを代行 ■ バックアップサービス – 端末故障時等に備えコミットメントを保管 – 暗号化して保管 ■ ネットワーク系サービス – ハブ – ルーティング バック アップ ハブ 監視
Slide 11
Slide 11 text
11 ©Gunosy Inc. State Channelのエコシステム ■ Lightning Networkより発展していない – 双方向ペイメントが最近やっとメインネットで動いたくらい – BOLTのような標準仕様なし ■ ICOによる(?)垂直統合の研究開発スタイル – ICOトークンのエコシステムを設計しないといけない – 結果としてプロトコルレイヤーからサービスレイヤーまで担当 Ethereumにおいてはまだまだ未成熟
Slide 12
Slide 12 text
12 ©Gunosy Inc. State Channelのユースケース
Slide 13
Slide 13 text
13 ©Gunosy Inc. State Channelのユースケース ■ Non-Fungibleなアセットは仲介できない – 多くのDappではState Channel Networkが使えない ■ 固定された参加者セットで沢山のやり取りがある場合に使う – 参加者は増減できない – チャンネル開閉の2txはどうしても必要 ■ 途中の過程は(通常)書き込まれない – 「取引の過程をオープンにして透明性を hogefuga」系のDappでは使いにくい ● 後からトラストレスに取引の過程を記録することは理論上可能 ■ サブスクリプション型サービスの支払い、賭けチェス , etc. 利用時の注意
Slide 14
Slide 14 text
14 ©Gunosy Inc. State Channelのユースケース ■ 必要なやり取りの例 – レンタル注文→承諾/拒否 – キャンセル→承諾/拒否 – レンタル延長→承諾/拒否 ■ デポジットするアセット – 借りる側: 支払い用のトークン – 貸す側 : 車のデジタル所有権 カーシェアリングのDappの例 http://news.livedoor.com/article/detail/9038214/ デジタル資産の取引はなんだかんだ沢山のやり取りが必要 → 意外と多くのケースで利用可能(かも)
Slide 15
Slide 15 text
15 ©Gunosy Inc. 実用上の課題
Slide 16
Slide 16 text
16 ©Gunosy Inc. State Channelの実用上の課題 ■ チャンネルの開閉はオンチェーン – レイテンシー・手数料 ■ 問題発生時にユーザーの手間が増える – 相手が応答しなくなったことに気づいてコミットメントの提出 – 監視・バックアップサービスとのやり取り ■ コミットメント作るために毎回署名 – チェスで一手ごとにパスワード入力 – アプリ利用ごとに一時的な鍵を作って登録するなどの提案もある ■ デポジット – 事実上の先払い – デポジット額の悩み「もしかしたら延長するから多めに入れとこう」 現状はユーザーがState Channelをかなり意識することが多い
Slide 17
Slide 17 text
17 ©Gunosy Inc. 最後に ■ ペイメント以外のState Channelの実利用はかなり先になりそう ■ とはいえ多くのDappで検討する意義はある 間違い等あれば是非@veryNRまでお知らせください