State Channelエコシステムと実用上の課題
by
Ryuya Nakamura
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
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までお知らせください