O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

IoTとFintechを繋ぐLightning Networkの実践

825 visualizações

Publicada em

IoTとFintechを繋ぐLightning Networkの実践

Publicada em: Tecnologia
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

IoTとFintechを繋ぐLightning Networkの実践

  1. 1. IOTとFintechを繋ぐ Lightning Network の実践 ビットバンクCBO ジョナサン・アンダーウッド
  2. 2. 自社+自己紹介 ・2012年からビットコインと出逢う (ジョナサン) ・2014年5月 ビットバンク設立! (ビットバンク) ・2014年〜ビットバンク技術顧問 (ジョナサン) ・2017年3月〜ビットバンクCBO (ジョナサン) ・2012年〜2016年ビットコインのウォレットアプリ開発に参加 (ジョナサン) ・2017年〜 BitcoinJS-Libのコミッターに (ジョナサン) ・2017年〜 ブロックチェーン大学校株式会社設立 (ジョナサン+ビットバンク) ・2018年〜 セカンドレイヤーペイメントチャンネルネットワークの開発に参加 (ジョナサン)
  3. 3. IOT (モノのインターネット) ● 様々な「モノ(物)」がインターネットに接続され(単に繋がるだけでは なく、モノがインターネットのように繋がる)、情報交換することにより 相互に制御する仕組みである。 ○ 自動車、冷蔵庫、テレビ、ドローン、ガソリンスタンド、低空飛行 Wi-Fi発信機など ● 大きな課題の一つがレイテンシー ○ 無線通信の規格として 5G が現在開発中で躍進するはず ● ブロックチェーンも多大な影響与えると賞賛 ○ 客観的に所有権や身分を検証できたりするし ○ もちろんお金の支払いもできる
  4. 4. ブロックチェーンのおさらい ● 分散型合意形成アルゴリズムで 記録を束ねた「ブロック」 ● 「ブロック」に記録が掲載されるまでは 二重支払いあり ● ブロックが見つかる時間はばらつきがある ○ BTC = 600秒 ○ ETH = 15秒 ○ MONA = 90秒 ○ ただし、ランダム性があるので、あくまでの目標である ● ブロックタイムが仮に1秒で固定でも、世界中に伝搬が必要 ● レイテンシーがががああああ
  5. 5. ペイメントチャンネル現る A B 0.01 BTC 0.03 BTC 0.009 BTC - 0.031 BTC + 0.00999 BTC + 0.03001 BTC - 0.00949 BTC - 0.03051 BTC + 送金し合う相手との間に決済トークンの取引データ を協力して更新することでブロックチェーンに配信し ないで取引が行える状態のこと
  6. 6. ちょっと待て…データを…更新?…なにそれ? ● ペイメントチャンネルの構成は三部作 ○ オープン!ブロックチェーンに 1個取引配信し、チャンネルをオープン。 ○ クローズ!調整中の取引を相手の協力無しにいつでも閉じられる。 ○ パーニッシュ!(罰)古い状態のクローズ (自分が好都合になるようバックレる )は相手に全額没収! ● 調整する対象はクローズの取引の状態 A B 入力 A 0.01 BTC B 0.03 BTC 出力 A + 1 day or P 0.008 BTC B 0.032 BTC B 入力 A 0.01 BTC B 0.03 BTC 出力 A 0.008 BTC B + 1 day or P 0.032 BTC A 電子署名
  7. 7. 取引の更新と罰の条件 A B 入力 A 0.01 BTC B 0.03 BTC 出力 (A + 1 day) or P 0.008 BTC B 0.032 BTC B 入力 A 0.01 BTC B 0.03 BTC 出力 A 0.008 BTC (B + 1 day) or Q 0.032 BTC A 取引#1 罰対象へ変換済み Aが持つ取引 Bが持つ取引 入力 A 0.01 BTC B 0.03 BTC 出力 (A + 1 day) or R 0.005 BTC B 0.035 BTC B 入力 A 0.01 BTC B 0.03 BTC 出力 A 0.005 BTC (B + 1 day) or S 0.035 BTC A 取引#2 Aが持つ取引 Bが持つ取引 P (の鍵になる秘密データ) Q (の鍵になる秘密データ) これを配信してしまえば、相手に没収される! 残高の調整を行った後に、前の取引は罰の対象となるようになり、配信した方が相手にチャンネル全額を没収される。 * P, Q, R, S == 秘密データのハッシュ値
  8. 8. これでレイテンシーがどうなる? ● 直接相手との通信のやり取りに加えて署名などの交渉の時間 ○ 実証実験で0.5秒程度を計測 ○ 効率化されたものでさらに速くなるかと ● ただし、結局チャンネルと開閉時にブロックチェーンの高い手数料かかる!!! ○ チャンネルの開閉を減らす術が必要
  9. 9. HTLC (Hash Time Locked Contract) A 入力 A 0.01 BTC B 0.03 BTC 出力 (A + 1 day) or T 0.004 BTC B 0.035 BTC B + H val 0.001 BTC B 入力 A 0.01 BTC B 0.03 BTC 出力 A 0.004 BTC (B + 1 day) or U 0.035 BTC B + H val 0.001 BTC A 取引#3 Aが持つ取引 Bが持つ取引 C Z = 秘密 H = Hash(Z) B A B BがちゃんとCに渡すように、 Cにしか分からない秘密が無いと回収 できない額を当てる。 H ① H をもらう ② ②条件付でBへ送金 ④ Z 開示 ③条件付でCへ送金 ⑤ Z 開示 ⑥領収証保管
  10. 10. チャンネルで繋いだネットワーク ● 各ペイメントのルートはたくさんある ● 頻繁にやり取りする人がチャンネル繋ぐ ● ランダムに他人と繋ぐ(autopilot) ● 分散したネットワークの実現が可能
  11. 11. 実践してみます! ● Docker使います。 ● ついてきてくれる人はどうぞ ● https://github.com/lightningnetwork/lnd/tree/master/docker ● https://gist.github.com/junderw/c4662efd1c3aa63ee891db53a2a0ad7c Alice (lnd) Bob (lnd) Carl (lnd) Bitcoin Simnet (btcd) チャンネル チャンネル ブロックチェーン 確 認 ブロックチェーン 確認 ブロックチェーン 確認 591312 400000 591312 400000

×