SlideShare una empresa de Scribd logo
1 de 29
Descargar para leer sin conexión
Copyright ©2016 HAW International Inc. all rights reserved.
JAWS FESTA 東海道 2016
ブロックチェーンとは何なのか?
2016/10/22
株式会社ハウインターナショナル
安土茂亨
Copyright ©2016 HAW International Inc. all rights reserved.
自己紹介
Copyright ©2016 HAW International Inc. all rights reserved.
自己紹介
名前:安土 茂亨(あづち しげゆき)
所属:株式会社ハウインターナショナル
コミュニティ:JAWS-UG福岡
•ブロックチェーンに関する取り組み
‣カラードコインの電子投票などへの応用
‣Open Assets Protocolの実装の一つである
openassets-rubyを独自開発しGithubで公開
‣ ブロックチェーンエクスプローラの開発
Copyright ©2016 HAW International Inc. all rights reserved.
P2P型の投票システムCongrechain
CongreChainはブロックチェーン 上 で
投票権の発行とその移転を分散記録す
るシステム。
併せてOpen Assets Protocol
(Bitcoinのブロックチェーン上で独 自 資
産 を 発 行 できる 拡 張 仕 様 )の
Ruby実装であるopenassets-rubyを開
発し、オープンソースとして公開。
第8回 フクオカRuby大賞
優秀賞受賞
Copyright ©2016 HAW International Inc. all rights reserved.
•検証に適したマネージド・ブロックチェーン環境
‣ 複 数のノードで構 成されるブロックチェーンクラスタ
の作成と管理
‣ ブロックチェーンの基本操作(ブロックや簡単なトラン
ザクションの作成など)
‣ 発行したアセットの定義ファイルなどの作成・公開
‣ ブロックチェーンおよびトランザクションの可視化
‣ ブロックチェーンクラスタ全体のスナップショット取得
と復元
‣ 外部からノードの操作が可能なREST API
主な機能
Copyright ©2016 HAW International Inc. all rights reserved.
•トランザクションなどの可視化・分析ツール
グラフDB化することでブロックチェーンの柔軟な分析を可能に
Powered
by
Copyright ©2016 HAW International Inc. all rights reserved.
ブロックチェーンの仕組み
Copyright ©2016 HAW International Inc. all rights reserved.
さまざまなプロジェクト
本セッションの対象
Copyright ©2016 HAW International Inc. all rights reserved.
Bitcoinのブロックチェーンの特徴
● 取引情報を時系列的に分散管理する技術(分散型台帳とも呼ばれる)
○ AさんからBさんに○Bitcoin送ったという取引記録が台帳に記録される
○ 取引データ(トランザクション)は約10分毎にブロックに記録され、
そのブロックがチェーンのように繋がる
○ データがチェーンのようにつながっているため、過去の情報を改竄しようと
すると、それ以降の情報も全て改竄する必要があり現実的に改竄が困難
○ 不特定多数のノード間でデータが管理されるため、障害に強い
○ 特定のユーザがシステム投資することなく、システム運用が可能
○ 主体となる管理者がいない
● Bitcoin以外への応用
○ 証券や土地の登記書など資産の所有権の管理
○ タイムスタンプサービス
Copyright ©2016 HAW International Inc. all rights reserved.
ブロックチェーンのデータ構造
Block
Transaction Input
Output
Block Block Block
Transaction
Transaction
Input
Output
Output
Output
Output
約10分 約10分 約10分
発生した取引(トランザクション)を1つのブロックに取りまとめ、
そのブロックを時系列的につなげたチェーンで、非可逆的な記録台帳。
Copyright ©2016 HAW International Inc. all rights reserved.
トランザクションのデータ構造
Transaction
Input
Output
Input
Output
Output
Transaction
Input
Output
Output
Transaction
Input
Output
Input
Output
Output
Transaction
Input
Input
…
入力は既存のトランザクション
の出力と1対1になる
入力に使われていない出力(UTXO)が
使用可能なBitcoinの量
複数の入力と出力から構成される取引の連鎖
入力のBitcoinの合計=出力のBitcoin合計(+手数料)
Copyright ©2016 HAW International Inc. all rights reserved.
P2Pネットワークを利用したデータの伝搬
Transaction
broadcast
broadcast
broadcast
データを受け取る順序
やタイミングはノードに
よって異なる
Bitcoinを送るというのは、
Bitcoinの送付トランザザクションを
生成してブロードキャストすること
ブロードキャストされたトラン
ザクションはマイナーによっ
てブロックに格納される
各ノードが全取引データを保持してい
て、任意のノードがダウンしても Bitcoin
のネットワークは動作し続ける
各ノードはデータを検証し
正しいデータであれば接続中の
別のノードにデータを送る
Copyright ©2016 HAW International Inc. all rights reserved.
ブロックのマイニング(Proof of Work)
ブロック構造
ブロックサイズ
ブロックヘッダ
トランザクション数
トランザクションリスト
ブロックヘッダ
バージョン
前のブロックのハッシュ
マークルルート
ブロックの生成時刻
difficulty
Nonce
difficultyによってマイニングの
難易度を調整。
2016ブロック毎(2週間毎)に
調整される
Nonceの値を変更しながら
ブロックハッシュを計算し、
目的のブロックハッシュを得る
00000000000000………..463ad4accbe9823905
ブロックのデータからハッシュを生成
生成したハッシュの先頭が difficultyで指定されたビット数分
0が続くハッシュが生成できたらマイニング成功!
マイニングとは、ある条件を満たすハッシュを生成する競争
Copyright ©2016 HAW International Inc. all rights reserved.
マイニングの報酬
マイニングに成功したマイナー(採掘者)には以下の報酬が与えられる。
● 手数料
ブロックに含まれている各トランザクションの手数料の合計
● マイニングの報酬
現在12.5 BTCがマイニングの報酬として与えられる。
マイニングによってのみ新しいBitcoinが発行される。
この2つの報酬はブロックのトランザクションリストの先頭のコインベースと呼ばれる
特別な(入力が出力への参照を持たない) トランザクションに含まれる。
マイニングによる報酬は約4年に一度(210,000ブロック毎)半減期を迎える。
直近では2016年07月10日に25 BTCから12.5 BTCに半減。
最終的には2140年頃にマイニングの報酬は0になり、それ以降新しいBitcoinは発行さ
れない。
Copyright ©2016 HAW International Inc. all rights reserved.
ブロックチェーンの分岐
Block Block
Block Block
Block
マイナーによるハッシュの計算がほぼ同じ
タイミングで完了した場合、ブロックチェーンが
分岐する可能性がある。
分岐した場合は、分岐後のチェーンがより
長い方が正しいチェーンとして認識される
Bitcoinの二重使用や改竄は、マイニングに参加している全ノードの計算量を上回る必要があ
り、後続のブロックが続くほどその難易度も上がるため、現実的にほぼ不可能。
Copyright ©2016 HAW International Inc. all rights reserved.
Bitcoinを送る(使用する)のに必要なこと
Transaction
Input
Output
Output
Transaction
Input
Output
Output
Output
各出力はBitcoinの量と、そのBitcoinを使用するための
解除条件を記載したスクリプト(scriptPubkey)を持つ
出力のBitcoinを使うためには、出力に記載された
解除条件を満たすロック解除スクリプト(scriptSig)を持つ
scriptPubKey
scriptSig
参照する出力のscriptPubkeyと入力のscriptSigのスクリプトを
結合し実行した結果がTRUEであれば、そのBitcoinの使用条件を満たす
有効なトランザクションと判断される。
Copyright ©2016 HAW International Inc. all rights reserved.
Bitcoinのスクリプト言語
トランザクションの出力と入力には、それぞれロックスクリプト(scriptPubkey)と
アンロックスクリプ(scriptSig)を記述するが、その際に逆ポーランド記法のスタック型
のスクリプト言語を用いる。
※逆ポーランド記法:演算子を非演算子の右に置く記法
(例) 3 + 4 を逆ポーランド記法で書くと 3 4 + となる。
4 OP_ADD 7 OP_EQUAL
scriptPubKey
3
scriptSig
3 4 OP_ADD 7 OP_EQUAL
スタック
3
スタック
4
3
スタック
7
スタック
7
7
スタック
TRUE
scriptSigとscriptPubkeyを結合
結合したスクリプトを実行するとスタックは ↓のように遷移していく
3がスタックにPUSHされる
4がスタックにPUSHされる
ADDオペレータにより
スタックの上から2つのアイテムを
取り出し加算結果をPUSHする
7がスタックにPUSHされる
EQUALオペレータにより
スタックの上から2つのアイテムを
比較し等しければTRUE(1)を
スタックにPUSHする
Copyright ©2016 HAW International Inc. all rights reserved.
鍵とアドレス
Bitcoinで使われているECDSA SECP-256k1
【楕円曲線暗号】
楕円曲線上の離散対数問題の困難性を利用した暗号
RSA暗号と比較して短い鍵長で同等の安全性を確保で
き、高速な暗号演算が可能なことからRSAに変わる公開
鍵暗号として注目されている。
● 楕円曲線暗号に基づくキーペア(秘密・公開鍵)を生成
● 公開鍵のハッシュ値にprefixとチェックサムを付けたのがBitcoinアドレス
16RTr2vL8yu1r1L2QzyRUSw3ZUn6UYP4CU
● キーペア及びアドレスは何個でも自由に作成可能
● 秘密鍵を失うとBitcoinは取り出せなくなるので要注意
秘密鍵 公開鍵 アドレス
 計算で生成可
非常に困難非常に困難
 計算で生成可
Copyright ©2016 HAW International Inc. all rights reserved.
アドレスの種類
● P2PKH(Pay to PubKey Hash)
”1”から始まる一般的に利用されるアドレスで、
相手の公開鍵ハッシュへ支払う
BTCを受け取ったユーザは、公開鍵ハッシュに対応する
秘密鍵を使えばBTCを使用できる
● P2SH(Pay to Script Hash)
”3”から始まるアドレスで、公開鍵に代わって任意の
スクリプトのハッシュへ支払う
このBTCを利用するには元のScript(redeem script)を
知り、その解除条件を満たす必要がある
Copyright ©2016 HAW International Inc. all rights reserved.
一般的なP2PKHを使ったBitcoinの送付
Transaction
Output (3 BTC)Input (5 BTC)
Output (2 BTC)
【アドレス】
1Kci5….iNbt
【アドレス】
19XW….VpA
アリス
ボブ
アリスからボブに3 BTCを送付
②署名
③ブロードキャスト
①トランザクションを作成
scriptSig
Copyright ©2016 HAW International Inc. all rights reserved.
P2PKHを使った送金のスクリプト
P2PKHを使った送金のscriptPubkey
このロックを解除するscriptSig
1. 署名と公開鍵をスタックにPUSH
2. OP_DUPでスタックの一番上のアイテム(公開鍵)をコピー
3. OP_HASH160で一番上のアイテム(公開鍵)のハッシュ値を返却
4. OP_EQUALVERIFYでさっき計算したハッシュ値とトランザクションの
公開鍵のハッシュが一致するかチェック
5. OP_CHECKSIGで署名が公開鍵に対応したものかチェック
OP_DUP OP_HASH160 公開鍵ハッシュ OP_EQUALVERIFY OP_CHECKSIG
公開鍵に対応した秘密鍵による署名 公開鍵
scriptPubKey
scriptSig
Copyright ©2016 HAW International Inc. all rights reserved.
マルチシグ
Bitcoinを使用する際に複数個の署名を必要とする仕組み。
3人のうち2人の署名があればBitcoinを使用できる
アリス ボブ キャロル
2 アリスの公開鍵 ボブの公開鍵 キャロルの公開鍵 3 CHECKMULTISIG
2-of-3のマルチシグScript
scriptPubKey
Copyright ©2016 HAW International Inc. all rights reserved.
タイムロック
将来のある時点までBitcoinをロックする仕組み
● OP_CLTV(Check Locktime Verify)
絶対時刻でロックする方法
この出力を指定ブロック高 or 指定時刻までロックする
● OP_CSV(Check Sequence Verify)
相対時間でロックする方法
この出力を持つトランザクションがBlockに含まれてから
○○ブロック経過するまでロックする
Copyright ©2016 HAW International Inc. all rights reserved.
スクリプトを組み合わせて作るコントラクト
● 有効期限のあるエスクロー
●
アリスとボブとエスクローのうち2つの署名があれば、いつでもBitcoinを利用可
能だが、30日経過するとアリスの署名だけでBitcoinを利用可能になる。
● 資金の凍結
IF
2 <アリスの公開鍵> <ボブの公開鍵> <エスクローの公開鍵> 3 CHECKMULTISIGVERIFY
ELSE
"30d" CHECKSEQUENCEVERIFY DROP
<アリスの公開鍵> CHECKSIGVERIFY
ENDIF
<凍結時間> CHECKLOCKTIMEVERIFY DROP DUP HASH160 <所有者の公開
鍵> EQUALVERIFY CHECKSIG
scriptPubKey
scriptPubKey
Copyright ©2016 HAW International Inc. all rights reserved.
P2SH(Pay to Script Hash)
<凍結時間> CHECKLOCKTIMEVERIFY DROP DUP HASH160 <所有者の公開
鍵> EQUALVERIFY CHECKSIG
03883e0db1752103e39299dcced3f711fd5042bb491d6351ec38b1e05140817
9ca579f1d7b4ac80bac
c367b99a86f207d6345ff37a32b7001a64fc70f4
シリアライズ
ハッシュ生成
HASH160 c367b99a86f207d6345ff37a32b7001a64fc70f4 EQUAL
P2SHスクリプト作成
3NB4S1dZew1kYzxyikM2T6qEsF2mZ3zCzLk
P2SHアドレス
scriptPubKey
Copyright ©2016 HAW International Inc. all rights reserved.
ブロックチェーンの課題と今後
Copyright ©2016 HAW International Inc. all rights reserved.
ブロックチェーンの課題
● スケーラビリティ
ブロックに入れられるトランザクションの容量は決まっており、現在の仕様
で処理できるトランザクションは約秒間7トランザクションと他の決済システ
ムと比べて低パフォーマンス。
● プライバシーと匿名性
ブロックチェーン上に個人情報は記録されないが、どのアドレスからどのア
ドレスへいくらのBitcoinを送ったということは誰もが確認できる。
円であれば、Aさんが持つ1万円もBさんが持つ1万円も等しく交換可能だ
が、BitcoinではそのBitcoinがどういうアドレスを経由して送られてきたもの
なのか分かってしまう。
● マイニングの寡占化
マイニングプールによるマイニングの寡占化が進み、Bitcoinの機能拡張
のコンセンサスにも影響が発生する。
Copyright ©2016 HAW International Inc. all rights reserved.
スケーラビリティを解決するオフチェーン技術
マイクロペイメントチャネル(単方向)
アリス
ボブ
Opening Transaction
2-of-2 マルチシグ
アリスのBitcoinをアリスとボブのマルチ
シグアドレスにBitcoinをデポジット
払い戻し用Transaction
アリスのBTC
アリスのアドレス
デポジット 5 BTC
チャネルの有効期間を過ぎたら(タイムロッ
ク)アリスの秘密鍵を使って払い戻しが可能
off-chain Transaction
アリスのアドレス 4.95 BTC
デポジット 5 BTC
ボブのアドレス 0.05 BTC
●
●
●
アリスはボブへのBitcoinの支払いをす
るトランザクションを作成しマルチシグの
自分の署名しボブに送る。
(ブロードキャストはしない)
off-chainのトランザクションを受け取っ
たボブは、あとは自分の署名をすれば
いつでもブロードキャスト可能。
オフチェーンで行う決済はチャネルを閉
じるまで何回でも手数料無しで瞬時に決
済が可能。
署名
Closing Transaction
アリスのアドレス 3.95 BTC
デポジット 5 BTC
ボブのアドレス 1.00 BTC
ブロードキャストするとチャネルは閉じられる。
Copyright ©2016 HAW International Inc. all rights reserved.
Lightning Network
● 双方向のペイメントチャネル
タイムロックするスクリプトとシークレットの交換を組み合わせて、
双方向のオフチェーン決済を可能にするペイメントチャネル
● Hash Time-Locked Contracts(HTLCs)
自分がこれから決済をしたい相手が、既に自分がチャネルを開いている
第三者とチャネルを開いている場合に、その第三者を経由して決済を行う
仕組み
● Routing
P2PネットワークでHTLCsを利用した決済を行う際の、
ルーティングを解決する
これらの機能を実装するLightning Networkが現在開発中で、実現すれば
既存の決済プラットフォームと同等のスループットのBitcoin決済が可能に

Más contenido relacionado

La actualidad más candente

[2020.08.28 銀座Rails #24]Rails で Distributed Tracing をやる
[2020.08.28 銀座Rails #24]Rails で Distributed Tracing をやる[2020.08.28 銀座Rails #24]Rails で Distributed Tracing をやる
[2020.08.28 銀座Rails #24]Rails で Distributed Tracing をやるKaito Minatoya
 
5分でわかるブロックチェーンの基本的な仕組み
5分でわかるブロックチェーンの基本的な仕組み5分でわかるブロックチェーンの基本的な仕組み
5分でわかるブロックチェーンの基本的な仕組みRyo Shimamura
 
Deconstruction of Serverless and blockchain
Deconstruction of Serverless and blockchainDeconstruction of Serverless and blockchain
Deconstruction of Serverless and blockchainTakahiro Hayashida
 
Bitcoinを技術的に理解する
Bitcoinを技術的に理解するBitcoinを技術的に理解する
Bitcoinを技術的に理解するKenji Urushima
 
ビットコイン~原理からソースまで~
ビットコイン~原理からソースまで~ビットコイン~原理からソースまで~
ビットコイン~原理からソースまで~bitbank, Inc. Tokyo, Japan
 
Kibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKensuke Maeda
 
ブロックチェーンの技術と動向
ブロックチェーンの技術と動向ブロックチェーンの技術と動向
ブロックチェーンの技術と動向Koichi Masukura
 
ブロックチェーンの解説 In.live ppt
ブロックチェーンの解説 In.live pptブロックチェーンの解説 In.live ppt
ブロックチェーンの解説 In.live pptAsteria Corporation
 
JNSA Bitcoin 勉強会 佐藤 20140602
JNSA Bitcoin 勉強会 佐藤 20140602JNSA Bitcoin 勉強会 佐藤 20140602
JNSA Bitcoin 勉強会 佐藤 20140602Masashi Sato
 
図解 Blockchainの仕組み
図解 Blockchainの仕組み図解 Blockchainの仕組み
図解 Blockchainの仕組みNisei Kimura
 
暗号通貨輪読会 #20 bloXroute
暗号通貨輪読会 #20 bloXroute暗号通貨輪読会 #20 bloXroute
暗号通貨輪読会 #20 bloXrouteNagato Kasaki
 
電子情報通信学会グローバル社会とビットコイン(山崎)
電子情報通信学会グローバル社会とビットコイン(山崎)電子情報通信学会グローバル社会とビットコイン(山崎)
電子情報通信学会グローバル社会とビットコイン(山崎)Kindai University
 
ブロックチェインとOpen asset protocol
ブロックチェインとOpen asset protocolブロックチェインとOpen asset protocol
ブロックチェインとOpen asset protocolKindai University
 
ブロックチェーン技術の基本と応用の可能性
ブロックチェーン技術の基本と応用の可能性ブロックチェーン技術の基本と応用の可能性
ブロックチェーン技術の基本と応用の可能性Kenji Saito
 
ブロックチェーンまとめ
ブロックチェーンまとめブロックチェーンまとめ
ブロックチェーンまとめHarukiKondo
 
コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略fisuda
 
ブロックチェーンの基本構造
ブロックチェーンの基本構造ブロックチェーンの基本構造
ブロックチェーンの基本構造Soichiro Takagi
 

La actualidad más candente (20)

ブロックチェーンの仕組みと動向(入門編)
ブロックチェーンの仕組みと動向(入門編)ブロックチェーンの仕組みと動向(入門編)
ブロックチェーンの仕組みと動向(入門編)
 
[2020.08.28 銀座Rails #24]Rails で Distributed Tracing をやる
[2020.08.28 銀座Rails #24]Rails で Distributed Tracing をやる[2020.08.28 銀座Rails #24]Rails で Distributed Tracing をやる
[2020.08.28 銀座Rails #24]Rails で Distributed Tracing をやる
 
5分でわかるブロックチェーンの基本的な仕組み
5分でわかるブロックチェーンの基本的な仕組み5分でわかるブロックチェーンの基本的な仕組み
5分でわかるブロックチェーンの基本的な仕組み
 
Deconstruction of Serverless and blockchain
Deconstruction of Serverless and blockchainDeconstruction of Serverless and blockchain
Deconstruction of Serverless and blockchain
 
Bitcoinを技術的に理解する
Bitcoinを技術的に理解するBitcoinを技術的に理解する
Bitcoinを技術的に理解する
 
ビットコイン~原理からソースまで~
ビットコイン~原理からソースまで~ビットコイン~原理からソースまで~
ビットコイン~原理からソースまで~
 
Kibanaでsysstatを可視化する
Kibanaでsysstatを可視化するKibanaでsysstatを可視化する
Kibanaでsysstatを可視化する
 
Congre chain説明資料
Congre chain説明資料Congre chain説明資料
Congre chain説明資料
 
ブロックチェーンの技術と動向
ブロックチェーンの技術と動向ブロックチェーンの技術と動向
ブロックチェーンの技術と動向
 
ブロックチェーンの解説 In.live ppt
ブロックチェーンの解説 In.live pptブロックチェーンの解説 In.live ppt
ブロックチェーンの解説 In.live ppt
 
JNSA Bitcoin 勉強会 佐藤 20140602
JNSA Bitcoin 勉強会 佐藤 20140602JNSA Bitcoin 勉強会 佐藤 20140602
JNSA Bitcoin 勉強会 佐藤 20140602
 
図解 Blockchainの仕組み
図解 Blockchainの仕組み図解 Blockchainの仕組み
図解 Blockchainの仕組み
 
暗号通貨輪読会 #20 bloXroute
暗号通貨輪読会 #20 bloXroute暗号通貨輪読会 #20 bloXroute
暗号通貨輪読会 #20 bloXroute
 
電子情報通信学会グローバル社会とビットコイン(山崎)
電子情報通信学会グローバル社会とビットコイン(山崎)電子情報通信学会グローバル社会とビットコイン(山崎)
電子情報通信学会グローバル社会とビットコイン(山崎)
 
ブロックチェインとOpen asset protocol
ブロックチェインとOpen asset protocolブロックチェインとOpen asset protocol
ブロックチェインとOpen asset protocol
 
ブロックチェーン活用事例
ブロックチェーン活用事例ブロックチェーン活用事例
ブロックチェーン活用事例
 
ブロックチェーン技術の基本と応用の可能性
ブロックチェーン技術の基本と応用の可能性ブロックチェーン技術の基本と応用の可能性
ブロックチェーン技術の基本と応用の可能性
 
ブロックチェーンまとめ
ブロックチェーンまとめブロックチェーンまとめ
ブロックチェーンまとめ
 
コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略
 
ブロックチェーンの基本構造
ブロックチェーンの基本構造ブロックチェーンの基本構造
ブロックチェーンの基本構造
 

Similar a JAWS FESTA 東海道 2016 ブロックチェーンとは何なのか?

[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...Insight Technology, Inc.
 
AWS歴2週間で IoT に挑戦してみた。
AWS歴2週間で IoT に挑戦してみた。AWS歴2週間で IoT に挑戦してみた。
AWS歴2週間で IoT に挑戦してみた。Shogo Matsuda
 
Agile Japan 2016 | アジャイルなIoTプラットフォーム開発
Agile Japan 2016 | アジャイルなIoTプラットフォーム開発Agile Japan 2016 | アジャイルなIoTプラットフォーム開発
Agile Japan 2016 | アジャイルなIoTプラットフォーム開発SORACOM,INC
 
IPv6 アプリケーション開発入門
IPv6 アプリケーション開発入門IPv6 アプリケーション開発入門
IPv6 アプリケーション開発入門v6app
 
OpenStack Summit Austin 2016 参加報告 - OpenStack最新情報セミナー 2016年5月
OpenStack Summit Austin 2016 参加報告 - OpenStack最新情報セミナー 2016年5月OpenStack Summit Austin 2016 参加報告 - OpenStack最新情報セミナー 2016年5月
OpenStack Summit Austin 2016 参加報告 - OpenStack最新情報セミナー 2016年5月VirtualTech Japan Inc.
 
Seccamp 2016 チューター成果報告
Seccamp 2016 チューター成果報告Seccamp 2016 チューター成果報告
Seccamp 2016 チューター成果報告slankdev
 
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou [Osaka]AMIMOTO(HHVM) hands-on #cmsdou
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou Hiromichi Koga
 
Spanner移行について本気出して考えてみた
Spanner移行について本気出して考えてみたSpanner移行について本気出して考えてみた
Spanner移行について本気出して考えてみたtechgamecollege
 
pg_bigmと類似度検索
pg_bigmと類似度検索pg_bigmと類似度検索
pg_bigmと類似度検索Masahiko Sawada
 
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumiYahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumiYahoo!デベロッパーネットワーク
 
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料Mitsutoshi Kiuchi
 
AWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAmazon Web Services Japan
 
徹底サーベイ : デジタル通貨の15年
徹底サーベイ : デジタル通貨の15年徹底サーベイ : デジタル通貨の15年
徹底サーベイ : デジタル通貨の15年Kenji Saito
 
さくらのIoT Platform βの概要と、BluemixやmyThingsとの連携
さくらのIoT Platform βの概要と、BluemixやmyThingsとの連携さくらのIoT Platform βの概要と、BluemixやmyThingsとの連携
さくらのIoT Platform βの概要と、BluemixやmyThingsとの連携法林浩之
 
Open stack+lagopus できるかな
Open stack+lagopus できるかなOpen stack+lagopus できるかな
Open stack+lagopus できるかなMasaru Oki
 
オープンソースNW監視ツールのご紹介
オープンソースNW監視ツールのご紹介オープンソースNW監視ツールのご紹介
オープンソースNW監視ツールのご紹介OSSラボ株式会社
 
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuriバッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuriKazuki Negoro
 
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack HinemosソリューションHinemos
 

Similar a JAWS FESTA 東海道 2016 ブロックチェーンとは何なのか? (20)

[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
 
AWS歴2週間で IoT に挑戦してみた。
AWS歴2週間で IoT に挑戦してみた。AWS歴2週間で IoT に挑戦してみた。
AWS歴2週間で IoT に挑戦してみた。
 
Agile Japan 2016 | アジャイルなIoTプラットフォーム開発
Agile Japan 2016 | アジャイルなIoTプラットフォーム開発Agile Japan 2016 | アジャイルなIoTプラットフォーム開発
Agile Japan 2016 | アジャイルなIoTプラットフォーム開発
 
IPv6 アプリケーション開発入門
IPv6 アプリケーション開発入門IPv6 アプリケーション開発入門
IPv6 アプリケーション開発入門
 
OpenStack Summit Austin 2016 参加報告 - OpenStack最新情報セミナー 2016年5月
OpenStack Summit Austin 2016 参加報告 - OpenStack最新情報セミナー 2016年5月OpenStack Summit Austin 2016 参加報告 - OpenStack最新情報セミナー 2016年5月
OpenStack Summit Austin 2016 参加報告 - OpenStack最新情報セミナー 2016年5月
 
Seccamp 2016 チューター成果報告
Seccamp 2016 チューター成果報告Seccamp 2016 チューター成果報告
Seccamp 2016 チューター成果報告
 
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou [Osaka]AMIMOTO(HHVM) hands-on #cmsdou
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
 
Spanner移行について本気出して考えてみた
Spanner移行について本気出して考えてみたSpanner移行について本気出して考えてみた
Spanner移行について本気出して考えてみた
 
pg_bigmと類似度検索
pg_bigmと類似度検索pg_bigmと類似度検索
pg_bigmと類似度検索
 
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumiYahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
Yahoo! JAPANが実践するOpenStackと大規模環境でのコンテナ利用 #devsumi
 
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
 
Azure &lt;3 Openness
Azure &lt;3 OpennessAzure &lt;3 Openness
Azure &lt;3 Openness
 
AWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon Kinesis
 
徹底サーベイ : デジタル通貨の15年
徹底サーベイ : デジタル通貨の15年徹底サーベイ : デジタル通貨の15年
徹底サーベイ : デジタル通貨の15年
 
さくらのIoT Platform βの概要と、BluemixやmyThingsとの連携
さくらのIoT Platform βの概要と、BluemixやmyThingsとの連携さくらのIoT Platform βの概要と、BluemixやmyThingsとの連携
さくらのIoT Platform βの概要と、BluemixやmyThingsとの連携
 
Open stack+lagopus できるかな
Open stack+lagopus できるかなOpen stack+lagopus できるかな
Open stack+lagopus できるかな
 
オープンソースNW監視ツールのご紹介
オープンソースNW監視ツールのご紹介オープンソースNW監視ツールのご紹介
オープンソースNW監視ツールのご紹介
 
Bambooによる継続的デリバリー
Bambooによる継続的デリバリーBambooによる継続的デリバリー
Bambooによる継続的デリバリー
 
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuriバッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
 
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション
 

JAWS FESTA 東海道 2016 ブロックチェーンとは何なのか?

  • 1. Copyright ©2016 HAW International Inc. all rights reserved. JAWS FESTA 東海道 2016 ブロックチェーンとは何なのか? 2016/10/22 株式会社ハウインターナショナル 安土茂亨
  • 2. Copyright ©2016 HAW International Inc. all rights reserved. 自己紹介
  • 3. Copyright ©2016 HAW International Inc. all rights reserved. 自己紹介 名前:安土 茂亨(あづち しげゆき) 所属:株式会社ハウインターナショナル コミュニティ:JAWS-UG福岡 •ブロックチェーンに関する取り組み ‣カラードコインの電子投票などへの応用 ‣Open Assets Protocolの実装の一つである openassets-rubyを独自開発しGithubで公開 ‣ ブロックチェーンエクスプローラの開発
  • 4. Copyright ©2016 HAW International Inc. all rights reserved. P2P型の投票システムCongrechain CongreChainはブロックチェーン 上 で 投票権の発行とその移転を分散記録す るシステム。 併せてOpen Assets Protocol (Bitcoinのブロックチェーン上で独 自 資 産 を 発 行 できる 拡 張 仕 様 )の Ruby実装であるopenassets-rubyを開 発し、オープンソースとして公開。 第8回 フクオカRuby大賞 優秀賞受賞
  • 5. Copyright ©2016 HAW International Inc. all rights reserved. •検証に適したマネージド・ブロックチェーン環境 ‣ 複 数のノードで構 成されるブロックチェーンクラスタ の作成と管理 ‣ ブロックチェーンの基本操作(ブロックや簡単なトラン ザクションの作成など) ‣ 発行したアセットの定義ファイルなどの作成・公開 ‣ ブロックチェーンおよびトランザクションの可視化 ‣ ブロックチェーンクラスタ全体のスナップショット取得 と復元 ‣ 外部からノードの操作が可能なREST API 主な機能
  • 6. Copyright ©2016 HAW International Inc. all rights reserved. •トランザクションなどの可視化・分析ツール グラフDB化することでブロックチェーンの柔軟な分析を可能に Powered by
  • 7. Copyright ©2016 HAW International Inc. all rights reserved. ブロックチェーンの仕組み
  • 8. Copyright ©2016 HAW International Inc. all rights reserved. さまざまなプロジェクト 本セッションの対象
  • 9. Copyright ©2016 HAW International Inc. all rights reserved. Bitcoinのブロックチェーンの特徴 ● 取引情報を時系列的に分散管理する技術(分散型台帳とも呼ばれる) ○ AさんからBさんに○Bitcoin送ったという取引記録が台帳に記録される ○ 取引データ(トランザクション)は約10分毎にブロックに記録され、 そのブロックがチェーンのように繋がる ○ データがチェーンのようにつながっているため、過去の情報を改竄しようと すると、それ以降の情報も全て改竄する必要があり現実的に改竄が困難 ○ 不特定多数のノード間でデータが管理されるため、障害に強い ○ 特定のユーザがシステム投資することなく、システム運用が可能 ○ 主体となる管理者がいない ● Bitcoin以外への応用 ○ 証券や土地の登記書など資産の所有権の管理 ○ タイムスタンプサービス
  • 10. Copyright ©2016 HAW International Inc. all rights reserved. ブロックチェーンのデータ構造 Block Transaction Input Output Block Block Block Transaction Transaction Input Output Output Output Output 約10分 約10分 約10分 発生した取引(トランザクション)を1つのブロックに取りまとめ、 そのブロックを時系列的につなげたチェーンで、非可逆的な記録台帳。
  • 11. Copyright ©2016 HAW International Inc. all rights reserved. トランザクションのデータ構造 Transaction Input Output Input Output Output Transaction Input Output Output Transaction Input Output Input Output Output Transaction Input Input … 入力は既存のトランザクション の出力と1対1になる 入力に使われていない出力(UTXO)が 使用可能なBitcoinの量 複数の入力と出力から構成される取引の連鎖 入力のBitcoinの合計=出力のBitcoin合計(+手数料)
  • 12. Copyright ©2016 HAW International Inc. all rights reserved. P2Pネットワークを利用したデータの伝搬 Transaction broadcast broadcast broadcast データを受け取る順序 やタイミングはノードに よって異なる Bitcoinを送るというのは、 Bitcoinの送付トランザザクションを 生成してブロードキャストすること ブロードキャストされたトラン ザクションはマイナーによっ てブロックに格納される 各ノードが全取引データを保持してい て、任意のノードがダウンしても Bitcoin のネットワークは動作し続ける 各ノードはデータを検証し 正しいデータであれば接続中の 別のノードにデータを送る
  • 13. Copyright ©2016 HAW International Inc. all rights reserved. ブロックのマイニング(Proof of Work) ブロック構造 ブロックサイズ ブロックヘッダ トランザクション数 トランザクションリスト ブロックヘッダ バージョン 前のブロックのハッシュ マークルルート ブロックの生成時刻 difficulty Nonce difficultyによってマイニングの 難易度を調整。 2016ブロック毎(2週間毎)に 調整される Nonceの値を変更しながら ブロックハッシュを計算し、 目的のブロックハッシュを得る 00000000000000………..463ad4accbe9823905 ブロックのデータからハッシュを生成 生成したハッシュの先頭が difficultyで指定されたビット数分 0が続くハッシュが生成できたらマイニング成功! マイニングとは、ある条件を満たすハッシュを生成する競争
  • 14. Copyright ©2016 HAW International Inc. all rights reserved. マイニングの報酬 マイニングに成功したマイナー(採掘者)には以下の報酬が与えられる。 ● 手数料 ブロックに含まれている各トランザクションの手数料の合計 ● マイニングの報酬 現在12.5 BTCがマイニングの報酬として与えられる。 マイニングによってのみ新しいBitcoinが発行される。 この2つの報酬はブロックのトランザクションリストの先頭のコインベースと呼ばれる 特別な(入力が出力への参照を持たない) トランザクションに含まれる。 マイニングによる報酬は約4年に一度(210,000ブロック毎)半減期を迎える。 直近では2016年07月10日に25 BTCから12.5 BTCに半減。 最終的には2140年頃にマイニングの報酬は0になり、それ以降新しいBitcoinは発行さ れない。
  • 15. Copyright ©2016 HAW International Inc. all rights reserved. ブロックチェーンの分岐 Block Block Block Block Block マイナーによるハッシュの計算がほぼ同じ タイミングで完了した場合、ブロックチェーンが 分岐する可能性がある。 分岐した場合は、分岐後のチェーンがより 長い方が正しいチェーンとして認識される Bitcoinの二重使用や改竄は、マイニングに参加している全ノードの計算量を上回る必要があ り、後続のブロックが続くほどその難易度も上がるため、現実的にほぼ不可能。
  • 16. Copyright ©2016 HAW International Inc. all rights reserved. Bitcoinを送る(使用する)のに必要なこと Transaction Input Output Output Transaction Input Output Output Output 各出力はBitcoinの量と、そのBitcoinを使用するための 解除条件を記載したスクリプト(scriptPubkey)を持つ 出力のBitcoinを使うためには、出力に記載された 解除条件を満たすロック解除スクリプト(scriptSig)を持つ scriptPubKey scriptSig 参照する出力のscriptPubkeyと入力のscriptSigのスクリプトを 結合し実行した結果がTRUEであれば、そのBitcoinの使用条件を満たす 有効なトランザクションと判断される。
  • 17. Copyright ©2016 HAW International Inc. all rights reserved. Bitcoinのスクリプト言語 トランザクションの出力と入力には、それぞれロックスクリプト(scriptPubkey)と アンロックスクリプ(scriptSig)を記述するが、その際に逆ポーランド記法のスタック型 のスクリプト言語を用いる。 ※逆ポーランド記法:演算子を非演算子の右に置く記法 (例) 3 + 4 を逆ポーランド記法で書くと 3 4 + となる。 4 OP_ADD 7 OP_EQUAL scriptPubKey 3 scriptSig 3 4 OP_ADD 7 OP_EQUAL スタック 3 スタック 4 3 スタック 7 スタック 7 7 スタック TRUE scriptSigとscriptPubkeyを結合 結合したスクリプトを実行するとスタックは ↓のように遷移していく 3がスタックにPUSHされる 4がスタックにPUSHされる ADDオペレータにより スタックの上から2つのアイテムを 取り出し加算結果をPUSHする 7がスタックにPUSHされる EQUALオペレータにより スタックの上から2つのアイテムを 比較し等しければTRUE(1)を スタックにPUSHする
  • 18. Copyright ©2016 HAW International Inc. all rights reserved. 鍵とアドレス Bitcoinで使われているECDSA SECP-256k1 【楕円曲線暗号】 楕円曲線上の離散対数問題の困難性を利用した暗号 RSA暗号と比較して短い鍵長で同等の安全性を確保で き、高速な暗号演算が可能なことからRSAに変わる公開 鍵暗号として注目されている。 ● 楕円曲線暗号に基づくキーペア(秘密・公開鍵)を生成 ● 公開鍵のハッシュ値にprefixとチェックサムを付けたのがBitcoinアドレス 16RTr2vL8yu1r1L2QzyRUSw3ZUn6UYP4CU ● キーペア及びアドレスは何個でも自由に作成可能 ● 秘密鍵を失うとBitcoinは取り出せなくなるので要注意 秘密鍵 公開鍵 アドレス  計算で生成可 非常に困難非常に困難  計算で生成可
  • 19. Copyright ©2016 HAW International Inc. all rights reserved. アドレスの種類 ● P2PKH(Pay to PubKey Hash) ”1”から始まる一般的に利用されるアドレスで、 相手の公開鍵ハッシュへ支払う BTCを受け取ったユーザは、公開鍵ハッシュに対応する 秘密鍵を使えばBTCを使用できる ● P2SH(Pay to Script Hash) ”3”から始まるアドレスで、公開鍵に代わって任意の スクリプトのハッシュへ支払う このBTCを利用するには元のScript(redeem script)を 知り、その解除条件を満たす必要がある
  • 20. Copyright ©2016 HAW International Inc. all rights reserved. 一般的なP2PKHを使ったBitcoinの送付 Transaction Output (3 BTC)Input (5 BTC) Output (2 BTC) 【アドレス】 1Kci5….iNbt 【アドレス】 19XW….VpA アリス ボブ アリスからボブに3 BTCを送付 ②署名 ③ブロードキャスト ①トランザクションを作成 scriptSig
  • 21. Copyright ©2016 HAW International Inc. all rights reserved. P2PKHを使った送金のスクリプト P2PKHを使った送金のscriptPubkey このロックを解除するscriptSig 1. 署名と公開鍵をスタックにPUSH 2. OP_DUPでスタックの一番上のアイテム(公開鍵)をコピー 3. OP_HASH160で一番上のアイテム(公開鍵)のハッシュ値を返却 4. OP_EQUALVERIFYでさっき計算したハッシュ値とトランザクションの 公開鍵のハッシュが一致するかチェック 5. OP_CHECKSIGで署名が公開鍵に対応したものかチェック OP_DUP OP_HASH160 公開鍵ハッシュ OP_EQUALVERIFY OP_CHECKSIG 公開鍵に対応した秘密鍵による署名 公開鍵 scriptPubKey scriptSig
  • 22. Copyright ©2016 HAW International Inc. all rights reserved. マルチシグ Bitcoinを使用する際に複数個の署名を必要とする仕組み。 3人のうち2人の署名があればBitcoinを使用できる アリス ボブ キャロル 2 アリスの公開鍵 ボブの公開鍵 キャロルの公開鍵 3 CHECKMULTISIG 2-of-3のマルチシグScript scriptPubKey
  • 23. Copyright ©2016 HAW International Inc. all rights reserved. タイムロック 将来のある時点までBitcoinをロックする仕組み ● OP_CLTV(Check Locktime Verify) 絶対時刻でロックする方法 この出力を指定ブロック高 or 指定時刻までロックする ● OP_CSV(Check Sequence Verify) 相対時間でロックする方法 この出力を持つトランザクションがBlockに含まれてから ○○ブロック経過するまでロックする
  • 24. Copyright ©2016 HAW International Inc. all rights reserved. スクリプトを組み合わせて作るコントラクト ● 有効期限のあるエスクロー ● アリスとボブとエスクローのうち2つの署名があれば、いつでもBitcoinを利用可 能だが、30日経過するとアリスの署名だけでBitcoinを利用可能になる。 ● 資金の凍結 IF 2 <アリスの公開鍵> <ボブの公開鍵> <エスクローの公開鍵> 3 CHECKMULTISIGVERIFY ELSE "30d" CHECKSEQUENCEVERIFY DROP <アリスの公開鍵> CHECKSIGVERIFY ENDIF <凍結時間> CHECKLOCKTIMEVERIFY DROP DUP HASH160 <所有者の公開 鍵> EQUALVERIFY CHECKSIG scriptPubKey scriptPubKey
  • 25. Copyright ©2016 HAW International Inc. all rights reserved. P2SH(Pay to Script Hash) <凍結時間> CHECKLOCKTIMEVERIFY DROP DUP HASH160 <所有者の公開 鍵> EQUALVERIFY CHECKSIG 03883e0db1752103e39299dcced3f711fd5042bb491d6351ec38b1e05140817 9ca579f1d7b4ac80bac c367b99a86f207d6345ff37a32b7001a64fc70f4 シリアライズ ハッシュ生成 HASH160 c367b99a86f207d6345ff37a32b7001a64fc70f4 EQUAL P2SHスクリプト作成 3NB4S1dZew1kYzxyikM2T6qEsF2mZ3zCzLk P2SHアドレス scriptPubKey
  • 26. Copyright ©2016 HAW International Inc. all rights reserved. ブロックチェーンの課題と今後
  • 27. Copyright ©2016 HAW International Inc. all rights reserved. ブロックチェーンの課題 ● スケーラビリティ ブロックに入れられるトランザクションの容量は決まっており、現在の仕様 で処理できるトランザクションは約秒間7トランザクションと他の決済システ ムと比べて低パフォーマンス。 ● プライバシーと匿名性 ブロックチェーン上に個人情報は記録されないが、どのアドレスからどのア ドレスへいくらのBitcoinを送ったということは誰もが確認できる。 円であれば、Aさんが持つ1万円もBさんが持つ1万円も等しく交換可能だ が、BitcoinではそのBitcoinがどういうアドレスを経由して送られてきたもの なのか分かってしまう。 ● マイニングの寡占化 マイニングプールによるマイニングの寡占化が進み、Bitcoinの機能拡張 のコンセンサスにも影響が発生する。
  • 28. Copyright ©2016 HAW International Inc. all rights reserved. スケーラビリティを解決するオフチェーン技術 マイクロペイメントチャネル(単方向) アリス ボブ Opening Transaction 2-of-2 マルチシグ アリスのBitcoinをアリスとボブのマルチ シグアドレスにBitcoinをデポジット 払い戻し用Transaction アリスのBTC アリスのアドレス デポジット 5 BTC チャネルの有効期間を過ぎたら(タイムロッ ク)アリスの秘密鍵を使って払い戻しが可能 off-chain Transaction アリスのアドレス 4.95 BTC デポジット 5 BTC ボブのアドレス 0.05 BTC ● ● ● アリスはボブへのBitcoinの支払いをす るトランザクションを作成しマルチシグの 自分の署名しボブに送る。 (ブロードキャストはしない) off-chainのトランザクションを受け取っ たボブは、あとは自分の署名をすれば いつでもブロードキャスト可能。 オフチェーンで行う決済はチャネルを閉 じるまで何回でも手数料無しで瞬時に決 済が可能。 署名 Closing Transaction アリスのアドレス 3.95 BTC デポジット 5 BTC ボブのアドレス 1.00 BTC ブロードキャストするとチャネルは閉じられる。
  • 29. Copyright ©2016 HAW International Inc. all rights reserved. Lightning Network ● 双方向のペイメントチャネル タイムロックするスクリプトとシークレットの交換を組み合わせて、 双方向のオフチェーン決済を可能にするペイメントチャネル ● Hash Time-Locked Contracts(HTLCs) 自分がこれから決済をしたい相手が、既に自分がチャネルを開いている 第三者とチャネルを開いている場合に、その第三者を経由して決済を行う 仕組み ● Routing P2PネットワークでHTLCsを利用した決済を行う際の、 ルーティングを解決する これらの機能を実装するLightning Networkが現在開発中で、実現すれば 既存の決済プラットフォームと同等のスループットのBitcoin決済が可能に