電子情報通信学会グローバル社会とビットコイン(山崎)
Upcoming SlideShare
Loading in...5
×
 

電子情報通信学会グローバル社会とビットコイン(山崎)

on

  • 406 views

bitcoinの仕組みの解説と、ビットコイン型仮想通貨を使った地域通貨システムの話です。電子情報通信学会のソサエティ大会で話した内容です。

bitcoinの仕組みの解説と、ビットコイン型仮想通貨を使った地域通貨システムの話です。電子情報通信学会のソサエティ大会で話した内容です。

Statistics

Views

Total Views
406
Views on SlideShare
401
Embed Views
5

Actions

Likes
2
Downloads
5
Comments
0

1 Embed 5

https://twitter.com 5

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

電子情報通信学会グローバル社会とビットコイン(山崎) 電子情報通信学会グローバル社会とビットコイン(山崎) Presentation Transcript

  • グローバル社会とビット・コイン 仮想通貨の 技術的イノベーションと課題 近畿大学 山崎重一郎
  • 電子貨幣の 技術的跳躍
  • Bitcoin型仮想通貨 ソフトウェアだけで価値(量)が転々流通 カードやシステムへの投資不要 利用者登録も不要
  • Bitcoin型仮想通貨 信用に基づかない通貨 人間の欲望に基づいている 企業、銀行や国家の破綻と 運命をともにしない
  • Bitcoin型仮想通貨技術の核心 決済の非可逆性の保証 通貨の二重使用の防止
  • 時間の支配者がいたら お金を何度も使える • 過去の決済記録が消去できるのが問題
  • 非可逆性(完了性) 現金だけが持つ特質 • 即時に決済が完了 Bitcoinにも完了性がある • 時間経過とともに決済が非可逆に近づく(確率) • 30分~1時間経過で完了とみなす
  • Bitcoinによる送金 送金者はビットコインアドレスに送金する = 送金者がP2Pネットワークに取引記録を放送 ピア・ツー・ピア型ネットワーク 取引 記録 送金 送金者受領者
  • ビットコインアドレス 1NDdooBLUd6nBuLpRgtjER2pPDdsA9kKPC 送金先のアドレス 1で始まる34文字 本人の公開鍵から生成される
  • ビットコインの送金 送金=送金記録の作成(コインは無い) 公開鍵暗号を利用、入金部に電子署名 送金者 公開鍵秘密鍵 入金取引記録出金 インプット0 直前の取引記録への参照 送金者の電子署名 送金者の公開鍵 入金 アウトプット0 支払い先アドレス 支払い金額 50 ビットコインア ドレス 金額
  • 「多数決」で記録者を選出 投票権は計算回数(確率的計算の試行回数) 高性能の計算機を沢山所持=投票権が多い 一回の試行を一回の投票と考える
  • プルーフ・オブ・ワークを求める計算 一回の試行を一票と考える • 10分間にできる試行回数がその人の投票権 • 試行の計算には、暗号学的ハッシュ関数を利用 • 入力する数を変えながら試行を繰り返す • 目標値の条件を満たす入力がプルーフ・オブ・ワーク 数を順番に 暗号学的 変えていくハッシュ関数 結果の数 検証 結果の数は目標値 より小さいか? 膨大な回数くり返す 発見した 正解暗号学的結果の数 ハッシュ関数 結果の数は目標値 より小さいか? 検証OK! プルーフ・オブ・ワーク 試行 検証
  • Bitcoin型仮想通貨技術の核心 決済の非可逆性の保証 • ブロックチェイン(Bitcoin経済の大福帳) • プルーフ・オブ・ワーク(多大な計算の証拠) • 時間を巻き戻すには莫大な再計算が必要 ブロック 入金 出金 入金 出金 10分 10分 10分 10分 10分 10分 10分 取引記録 取引記録 直前のブロックのハッシュ値 プルーフ・オブ・ワーク
  • ブロックあたりの取引数 2014年9月 平均500程度で時間とともに増加 1000取引なら1ブロックで600Kb
  • 新規ブロックとコインベース 計算競争の勝利者は新規ブロックを作成する コインベースの作成=通貨発行 過去10分間の取引 取引 記録 取引 記録 計算競争の勝利者 ピア・ツー・ピア型 ネットワークから受信 新規ブロック プルーフ・オブ・ワーク プルーフ・オブ・ワーク 取引 記録 取引 記録 作成 取引 記録コインベース 自分への送金
  • 採掘者の報酬金額 4  年周期で減額(うるう年を含む10分単位の周期) 2009年1月~2013年1月:50BTC 現実装では最小単位が 1/1億BTC=1satoshi 132年で1satoshi未満に (2141年1月) BTC 年
  • P2P型分散ファイルシステム 採掘者は自分の新ブロックを放送 P2P型分散ファイルシステム全体で更新 計算競争の勝利者 ブロックチェイン ブロックブロックブロック 放送 新ブロック ブロックチェイン ブロックブロックブロック ブロックチェイン ブロックブロックブロック 更新 更新
  • P2P型分散ファイルシステム 新ブロックを みんなで確認 みんなで保管 計算競争の勝利者 ブロックチェイン ブロックブロックブロック ブロックチェイン ブロックブロックブロック ブロックチェイン 新ブロック ブロックブロックブロック 新ブロック 確認して 接続 新ブロック 確認して 接続 確認して 接続
  • ビットコインの決済の本質 抽象的な「貨幣的価値の表象」の転々流通  ビットコインの所持金は電磁的記録ではない P2Pネットワーク全体で管理されている「抽象的な情報」  送金に必要な「秘密鍵」は電磁的記録 USBやハードディスクなどに保管される
  • 従来のタイムスタンプの時間 信頼できる第三者 暦としての時間で、記録の存在を保証 時刻を付与 して保管 取引 記録 取引 記録 送金者受領者
  • ビットコインの時間 ブロックチェインに含まれることが 記録の存在証明 ブロック プルーフ・オブ・ワーク 取引 記録 取引 記録 コインベース ブロックに含まれることが タイムスタンプの付与と同等の意味 ブロックチェイン ブロックブロックブロック プルーフ・オブ・ワークプルーフ・オブ・ワークプルーフ・オブ・ワーク 約10分約10分約10分 時間の推移 取引 記録
  • ビットコインの時間 ブロック高(後方線型) 取引の入手金の因果関係(ネットワーク) ブロック高 320001 ブロック 取引記録 入金出金 取引記録 入金出金 入金出金 ブロック高 320002 ブロック 取引記録 入金出金 入金出金 取引記録 入金出金 ブロック高 320003 ブロック 取引記録 入金出金 取引記録 出金 入金 入金 ブロック高 320004 ブロック 取引記録 入金出金 入金出金 時間の推移 プルーフ・オブ・ワークプルーフ・オブ・ワークプルーフ・オブ・ワークプルーフ・オブ・ワーク
  • 時間の非可逆性への攻撃方法 ブロックチェインを後で追い越す 1次元ランダム・ウォーク (全計算能力の1/2以上あれば、追い越しが可能) 確認数が増えると指数関数で困難になる ½未満なら 1ブロック (3~6回で安心) ブロック 正しい 取引 記録 ブロックチェイン ブロック 取引 記録 自分宛ての送金 送金者受領者 ブロック 悪意の「採掘者」 時間の推移 n個のブロックを確認 したで送金完了と判断 密かにブロックブロックブロック ブロックチェインを作成し 正しいブロックを追い越す 不正な 取引 記録 ブロック... ... n+1ブロック nブロック 1ブロックnブロック
  • Bitcoin型仮想通貨技術の核心 通貨の二重使用の防止 • 時制的三式簿記 • 取引記録の出金と入金が1対1対応 取引記録 取引記録 入金 出金 金額 入金 過去 現在 未来
  • 複式簿記 Double Entry Accounting 資本主義、株式会社の発達に貢献 • 株式会社が株主に資産と利益を報告 • 対象は1企業のクローズドシステム • 会計期:1年 株主 説明義務 株式会社
  • 三式簿記 Triple Entry Accounting bitcoinが最初に本格的に採用 • 取引ネットワーク全体の正統性を説明する • 連鎖的なオープンシステム • 会計期:約10分間 • 過去、現在、未来の推移的 整合性 参加者 全員 説明義務 取引ネットワーク全体
  • Bitcoin型仮想通貨技術の核心 • 時制式三式簿記(推移的整合性) 出金入金 予算 合計 出金 合計 入金 入金 入金 合計 取引記録 出金 入金 入金 = 入金 取引記録 (未使用状態) 取引記録 (未使用状態) 入金 = 過去現在未来 過去 現在 未来
  • Bitcoin型仮想通貨技術の核心 通貨の二重使用の防止 • 一つの出金を複数使ってはいけない 入金 出金 金額 取引記録 入金 取引記録 入金 ☓ 取引記録
  • プルーフ・オブ・ワークの 計算難易度の調整 2016ブロックの計算ごとに難易度を調整 平均10分で答えが出るようにする 2016☓10分=2週間 計算完了が2週間より早ければ→難しくする 計算完了が2週間より遅ければ→簡単にする
  • プルーフ・オブ・ワーク 時間がかかる計算を頑張った証拠 ハッシュ関数を使う例  データ + nonce (いろいろ変えてみる)                SHA-256 000000001000111010001…1 ハッシュ値がゼロ8個で始まるnonceが見つかれば勝利!
  • プルーフ・オブ・ワーク 難易度を上げる方法 ネットワーク上の計算資源の総量が増えたとき  データ + nonce (いろいろ変えてみる)          SHA-256  000000000000111010001…1 ハッシュ値がゼロ9個で始まるnonceが見つかれば勝利!
  • プルーフ・オブ・ワーク難易度の変遷
  • 難易度のターゲットの信頼性 ブロックチェインに記録 • もし偽造したら • 自分のコインベースも無効になる ブロック ブロックヘッダ 直前のブロックヘッダ のハッシュ値 取引記録全体のハッシュ値 (マークル・ルート) 難易度ターゲット プルーフ・オブ・ワーク (ナンス) 取引記録0(コインベース) 取引記録1 :: 取引記録n
  • 取引手数料 2014  年4月から9月の実績1日あたり12BTC程度 ビットコイン経済が拡大すると大きくなる?
  • ブロックチェインの大きさ   時間とともに増大 2014年8月に20Gb超え
  • ブロックの実際の構造 ブロックヘッダは80バイト 40万ブロックでも32Mb   ブロック ブロックヘッダ 直前のブロックヘッダ のハッシュ値 取引記録全体のハッシュ値 (マークル・ルート) プルーフ・オブ・ワーク (ナンス) 取引記録0(コインベース) 取引記録1 :: 取引記録n ブロック ブロックヘッダ 直前のブロックヘッダ のハッシュ値 取引記録全体のハッシュ値 (マークル・ルート) プルーフ・オブ・ワーク (ナンス) 取引記録0(コインベース) 取引記録1 :: 取引記録n 時間の推移 約10分約10分
  • ブロックチェインのコンパクト化 25GBのブロックチェインをスマート・フォンに入れる?   スマート・フォンや一般のパソコンユーザは 自分に関係する取引記録のハッシュ値だけ ネットワーク経由でもらえばよい 完全なブロックチェイン を持つノード ブロックヘッダだけの ブロックチェインを持つノード マークル・ルート を計算 確認したい取引記録 のハッシュ値 確認に必要な 最低限度の情報 確認したい取引記録 確認に必要な 最低限度の情報 ブロック内の取引記録 マークル・ルート hash001 hash002 hash01 hash02 hash03 hash04 hash1 hash2 hash3 hash4 hash5 hash6 hash7 hash8 取引記録1 取引記録2 取引記録3 取引記録4 取引記録5 取引記録6 取引記録7 取引記録8 取引記録全体のハッシュ値 (マークル・ルート) 一致していれば 存在確認成功
  • ブロックのコンパクト化 マークルツリーを利用   2分木の高さだけのハッシュ値で検証できる 1024個の取引記録から自分の取引記録を検証するに は、ハッシュ値10個貰えばよい マークル・ルート hash001 hash002 hash01 hash02 hash03 hash04 hash1 hash2 hash3 hash4 hash5 hash6 hash7 hash8 取引記録1 取引記録2 取引記録3 取引記録4 取引記録5 取引記録6 取引記録7 取引記録8
  • Bitcoinの アイデンティティとプライバシ ブロックチェイン • bitcoin開闢以来の全取引履歴を誰でも確認可能 Bitcoinアドレスは仮名 • 仮名:「本人」とリンクしない • 匿名性(アイデンティティの積極的隠蔽)はない
  • ブロックチェインの解析可能性 フレックスコイン社の残高
  • Mt.Gox -> 6ホップの トランザクショングラフ (6282ノード) 赤いラインは10万BTC以 上の入金記録があるノード への流れ
  • mixing service ビットコインの取引の流れを匿名化する • 仮名から仮名への取引の流れを撹乱する ミクシング サービス A B C E F G
  • mixing serviceの原理 送金者 受領者 ミクシングサービス 共有ウォレット アドレス アドレス 10BTC +手数料 10BTC アドレス . . . 共有ウォレット
  • CoinJoin CoinJoinの実例
  • 仮想通貨の問題点 電力、資源の浪費の問題 • Proof of Work法以外のマイニング方法 マイニングの寡占化 • 電力、投資に莫大な資金が必要なら寡占化 • ある者が51%を超えると非可逆性は保証されない プライバシと匿名性のバランスの問題
  • Bitcoin型仮想通貨による 地域通貨  
  • Bitcoin型仮想通貨による地域通貨 特別なハードウェア不要 • 送金側はスマホ必須 • 受取側はQRコードの紙でOK 運用コストが非常に小さい • システムは無料(スマホアプリかweb) • Bitcoinが少し必要 300円相当のポイントあたり、bitcoin は0.5円+手数料
  • Bitcoin型仮想通貨による 電子ポイントの面白いところ • 転々流通型 • ユーザ登録不要 • プライバシの問題が少ない? • お金の流れがリアルタイムに見える • データがオープン
  • 薬院サルーでの実験(計画中) 福岡市薬院地区のはしご酒イベント  マイグラス片手に薬院のお店をハシゴする  
  • 現在は紙のチケットで運用 1000   円でドリンクチケット3枚とワイングラス1個 イベント後に全部集めて集計は手作業
  • スマートフォンでコインを転々譲渡 加速度と位置と時刻が一致ならコインを渡す サルー! サルー! Yakuin Saludメニュー 赤ワイン 生ビール 白ワイン Yakuin Salud Yakuin Salud Ya ku in Salud
  • 受け取り側はQRコードでもOK カメラでメニューのアドレスを読み取って送金 サルー! 赤ワイン ビール Yakuin Salud Yakuin Salud Yakuin メニュー 赤ワイン 生Salud ビール 白ワイン
  • サルー!の位置と時刻 決済履歴をリアルタイムでモニタできる
  • リアルタイムの リコメンデーション それまでどの店で何を飲んできたか、 サルー! この店で で注文した10分後 赤ワインを 飲んだ人は 次にこの店に Yakuin 行っています Yakuin Salud Salud Yakuin Salud
  • Bitcoinの拡張機能を利用  Bitcoinの上位レイヤでポイント価値の流通 ColoredCoins のレイヤ 薬院サルーコイン事務局が発行者 約款 薬院サルー加盟店は グラス一杯のドリンクと交 換します Bitcoinのレイヤ 0.05円 0.05円 0.05円 Bitcoinのブロックチェインをそのまま利用
  • カラードコインの Bitcoinアドレスとアセットアドレス  
  • 薬院サルーコインのシステム 事務局が一定量発行して発行停止。あとは還流 薬院サルー 事務局 交換 加加盟盟店店 加加盟盟店店 購入 交換 客 支払い 客
  • コインの流れの例 事務局が初期発行 店が客に販売 客が店で使用 客が客に譲渡
  • サルーコインの相互交換 発行量の1/3はリザーブ → 交換用 薬院サルー 事務局 交換 加加盟盟店店 加加盟盟店店 購入 平塚サルー 事務局 交換 客 支払い 客
  • 仮想地域通貨の相互運用 地域サフォーク交換所 業種サフォーク交換所
  • 個人情報を必要以上に集めない 利用者登録不要 • 年齢、性別などの個人情報は意図的に収集しない • 位置情報、購入履歴の収集は、アプリに明瞭表示 1JRubC4HyNkPJC1vfVyEuM4C6FSZh1yR6F Yakuin Salud Yakuin Salud Yakuin Salud Yakuin Salud 1rUh46sUWmNdetw2vGLCYm1XqMPDX6tjk 時刻、位置、購入内容を 収集します
  • でも、特別扱いしてほしい テレビ広告みたいな情報はいらない 今、この場所で欲しい情報 「もうビール飲んじゃったし」 「お腹いっぱい」  次は、日本酒? ワイン?  今日は、ちょっと涼しい
  • 人の属性の推定 2軒の餃子屋のどちらに行った? • 博多ひとくち餃子の店:カリッとビールや焼酎にあう • にんにくぬき餃子の店:いつも若い女子でいっぱい はしご酒の順序 • 餃子屋→ワインバー→とりかわ専門店→たこ焼き屋 • 花屋カフェ→ワインバー→スペインバル→スィーツ店
  • 観光旅行者用地域通貨 短時間に効率的なリコメンデーションが欲しい 属性を開示する メリットがある人 日本酒 MAN DARA KE
  • 観光旅行者用地域通貨 顧客のビットコインアドレスと連絡手段 帰国後 Bitcoin の顧客