SlideShare a Scribd company logo
1 of 39
Mimblewimble
さらなるスケーラビリティとファンジビリティを目指す
魔法
Takaya Imai
Co-founder and CTO@United Bitcoiners Inc.
CEO@Frontier Partners LLC
暗号通貨読書会/勉強会@株式会社オルトプラス
Jun/6/2017
自己紹介
• 株式会社ユナイテッド・ビットコイナーズ 共同創業者&CTO
• フロンティアパートナーズ合同会社代表CEO
• マスタリングビットコイン、翻訳者代表
• 2016/7/14出版、先日電子書籍版出ました
• オープンエディション版
• https://www.bitcoinbook.info
自己紹介
• バックグラウンド
• 新潟大学大学院 素粒子理論物理 博士(理)
• カカクコム
• 検索エンジン開発 検索サーバクラスタ構築運用 大規模データ処理 機械学
習 画像認識
• データタワー株式会社 代表取締役
• 株式会社ブロックチェーンハブ 技術アドバイザー
経緯
• 2016年8月2日
• <majorplayer> hi, i have an idea for improving
privacy in bitcoin. my friend who knows technology
says this channel would have interest
http://5pdcbgndmprm4wud.onion/mimblewimble.txt
• https://www.reddit.com/r/Bitcoin/comments/4vub3y/mimblewimble_noninteractive_coinjoin_and_better/
Mimblewimbleの当初のホワイトペーパーには不満足
な点もあり、2016年8月以降BlockstreamのAndrew
Poelstra氏らによってさらに発展していっている。
現在の進展まで追うことも考えたが、今回は当初のホ
ワイトペーパーに沿った形で説明を試みる。
さらなる進展については別途機会に行う。
http://www.unitedbitcoiners.com/blog/tumblebit
• 全トランザクション数: 1億5000万トランザクショ
ン
• うち、未使用アウトプットは400万個だけ
Mimblewimble概要
• ブロックチェーンサイズの削減
• 匿名性の確保
これまでの関連研究
• Confidential Transaction, Gregory Maxwell, 2013
• https://bitcointalk.org/index.php?topic=305791.0
• https://people.xiph.org/~greg/confidential_values.txt
• CoinJoin, Gregory Maxwell, 2013
• https://bitcointalk.org/index.php?topic=279249.0
• https://bitcointalk.org/index.php?topic=281848.0
• CryptoNote, Nicolas van Saberhagen, 2013
• https://cryptonote.org/whitepaper.pdf
• Ring Confidential Transaction, Shen Noether, 2015
• https://eprint.iacr.org/2015/1098.pdf
• One-way aggregate signatures(OWAS), Yuan Horas Mouton, 2013
• https://download.wpsoftware.net/bitcoin/wizardry/horasyuanmouton-owas.pdf
• https://bitcointalk.org/index.php?topic=290971.0
これまでの研究の問題点
• Confidential Transactionは秘匿性が素晴らしい。しかし、ト
ランザクションサイズが大きくなってしまう。
• CoinJoinは送金先秘匿性は素晴らしい。しかし、送金額はわ
かってしまうし、トランザクション圧縮にユーザ間調整が
必要なため使いづらい
(https://bitcointalk.org/index.php?topic=281848.0)。
• One-way aggregate signature(OWAS)はトランザクション圧
縮が素晴らしい。しかし、遅いし、ペアリングベース暗号
は暗号学的に不満足な点があり信用できない。
Mimblewimbleの提案
• これらの問題点をうまく解決する方法
• ブロックチェーンサイズの削減および増加速度低
減
• 送金受金関係と送金額の秘匿
• トランザクション圧縮の簡易化
Mimblewimbleの提案
• 離散対数問題に基づく公開鍵暗号を使用
• ブロックチェーンにはCoinbase TXとUTXOのみを
保持
• いわゆるscriptがない(Scriptless script)
• excess k*G、kに基づく署名、Range proof、明示的
なTx手数料の追加
大きく3つに分けて順に説明
• トランザクションレベル
• ブロックレベル
• ブロックチェーンレベル
トランザクション
レベル
Confidential Transaction
概要
• 目的の1つ
• 送金額を明示することなく、以下の等式を満たすことを証明する
• 各インプットの金額の総和 = 各アウトプットの総和(おつり含む) + TX手数
料
• 基本アイデア
• Bitcoinでの楕円曲線暗号ベースポイントGを使うと、以下の関係が成り立つ
• a + b = c <-> aG + bG = cG
• この関係を用いると、a, b, cを公開することなくa, b, cの間の関係を証明でき
る。
注: 楕円曲線が持つ位数を法として合同
Confidential Transaction
の変形
• C = r*G + v*H
• C: Pedersen Commitment
• G: Bitcoinでの楕円曲線暗号ベースポイント
• H: Gと同じベースポイント(G <> H), nothing-up-my-sleeve(NUMS)
• H = to_point(SHA256(ENCODE(G))
• v: 送金額
• r: ランダムなblinding secret key
Confidential Transaction
の変形
• トランザクションのやり取りの仕方
1. 送金者と受金者での送金額 b に合意する
2. 送金者はトランザクションを作成し、受金者に送る。このとき
、送金者側commitmentは、 r*G - b*H
3. 受金者はランダムな r’ を選んでcommitment k*G - fee*H と
range proofを作成し、受け取ったトランザクションに追加する
。
4. 受金者は k を使った空文字に対する署名をトランザクションに
追加する。
Confidential Transaction
の変形• 各commitment
• inputs
• (r*G + v_i1*H) + (r*G + v_i2*H)
• r は送金者が選んだランダムな値
• outputs
• (r’*G + v_o*H) + (r’*G + v_c*H)
• r’ は受金者が選んだランダムな値
• Tx fee
• fee*H
• 正常性の確認
• k*Gをあらかじめトランザクションに記載しておく(k は受金者しか知らない)
• inputs - outputs - txfee
• = (r*G + v_i1*H) + (r*G + v_i2*H) - (r’*G + v_o*H) - (r’*G + v_c*H) - fee*H
• = (2r - 2r’)*G
• = k’ *G
• k*G = k’*G ??
Confidential Transaction
の変形
• range proof(OR proof)は、値の範囲証明
• 証明が以下だけだと、お金を消したり増やしたりできてしまう
• 各インプットの金額の総和 = 各アウトプットの総和(おつり
含む) + TX手数料
• 例えば、(10 + 1) - (-9 + 20) = 0
• range proofの説明は割愛。
• 参照: https://eprint.iacr.org/2015/1098.pdf
ブロックレベル
ブロックのシンプル化
• この手順で作ったトランザクションは、複数のトランザクションをミッ
クスできる
• 細かい話をすると、このホワイトペーパーで説明されている方法は単純
にはうまくいかないらしく、BlockstreamのAndrew Poelstra氏が新たな
方法を提案している。
• Scaling bitcoin Milano, プレゼンシート
• https://scalingbitcoin.org/milan2016/presentations/D1%20-
%204%20-%20Andrew%20Poelstra.pdf
• http://diyhpl.us/~bryan/papers2/bitcoin/mimblewimble-andytoshi-
INCOMPLETE-DRAFT-2016-10-06-001.pdf
https://scalingbitcoin.org/milan2016/presentations/D1%20-%204%20-%20Andrew%20Poelstra.pdf
https://scalingbitcoin.org/milan2016/presentations/D1%20-%204%20-%20Andrew%20Poelstra.pdf
https://scalingbitcoin.org/milan2016/presentations/D1%20-%204%20-%20Andrew%20Poelstra.pdf
https://scalingbitcoin.org/milan2016/presentations/D1%20-%204%20-%20Andrew%20Poelstra.pdf
ブロックのシンプル化
• 1つのブロックに巨大な1個のトランザクションが
入るようにする。
• 複数のトランザクションのexcessをミックスして
1個にできる
• 送金受金関係がわからなくなる
ブロックのシンプル化
• ブロックのフォーマット
• 明示的な新規発行コイン額
• 全てのトランザクションのインプット
• 全てのトランザクションのアウトプット
• 全てのトランザクションのexcess k*G、range
proof、signature with k
ブロックチェーン
レベル
カットスルー
• ブロックチェーンに入っている全トランザクション
を全部つなぎ合わせる
• インプットとアウトプットで相殺するものがあるた
め、それが消え去る
https://scalingbitcoin.org/milan2016/presentations/D1%20-%204%20-%20Andrew%20Poelstra.pdf
https://scalingbitcoin.org/milan2016/presentations/D1%20-%204%20-%20Andrew%20Poelstra.pdf
https://scalingbitcoin.org/milan2016/presentations/D1%20-%204%20-%20Andrew%20Poelstra.pdf
https://scalingbitcoin.org/milan2016/presentations/D1%20-%204%20-%20Andrew%20Poelstra.pdf
カットスルー
• ブロックのフォーマット
• 明示的な新規発行コイン額
• 全てのトランザクションの未使用アウトプットと
merkle proof
• 全てのトランザクションのexcess k*G、range
proof、signature with k
Mimblewimbleの
ブロックチェーンサイズ
• Bitcoinのブロック数は423000、サイズは80GB(ホ
ワイトペーパー執筆時点)
• これが30GBになり、サイズ増加速度は遅い
ホワイトペーパーからの進展
• http://diyhpl.us/~bryan/papers2/bitcoin/mimblewimble-andytoshi-INCOMPLETE-DRAFT-2016-10-06-001.pdf
• BlockstreamのAndrew Poelstra氏による論文
• Mimblewimbleのホワイトペーパーに記載されていないコンセンサス部分や各定義の明確化、不満足点の解決
(Sinking Singnature等)を記載
• http://diyhpl.us/wiki/transcripts/mimblewimble-podcast/
• Andrew Poelstra氏、Pieter Wuille氏によるMimblewimbleの解説ポッドキャストの書き起こし
• 元ポッドキャスト
• https://soundcloud.com/heryptohow/mimblewimble-andrew-poelstra-peter-wuille-brian-deery-and-chris-odom
• https://lists.launchpad.net/mimblewimble/msg00086.html
• Mimblewimble上のlightning network
• https://github.com/ignopeverell/grin
日本語でのリファレン
ス
• http://btcnews.jp/mimblewimble-by-andrew-poelstra/
• http://techmedia-
think.hatenablog.com/entry/2015/12/31/002253
Thanks!
UB社はエンジニアを募集してます。

More Related Content

More from takayaimai

ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜takayaimai
 
Scalability problems @ neutrino 20181023
Scalability problems @ neutrino 20181023Scalability problems @ neutrino 20181023
Scalability problems @ neutrino 20181023takayaimai
 
LApps -- Offchain Academy Hackday
LApps -- Offchain Academy HackdayLApps -- Offchain Academy Hackday
LApps -- Offchain Academy Hackdaytakayaimai
 
ライトニングノードをいじってみよう
ライトニングノードをいじってみようライトニングノードをいじってみよう
ライトニングノードをいじってみようtakayaimai
 
Lightningエコシステムの最前線@HashHub Conference 2018
Lightningエコシステムの最前線@HashHub Conference 2018Lightningエコシステムの最前線@HashHub Conference 2018
Lightningエコシステムの最前線@HashHub Conference 2018takayaimai
 
セカンドレイヤーの技術動向@国際大学GLOCOM
セカンドレイヤーの技術動向@国際大学GLOCOMセカンドレイヤーの技術動向@国際大学GLOCOM
セカンドレイヤーの技術動向@国際大学GLOCOMtakayaimai
 
ライトニングノードをたててみよう
ライトニングノードをたててみようライトニングノードをたててみよう
ライトニングノードをたててみようtakayaimai
 
ライトニングネットワークのビジネス展開 消費者向け少額直接広告
ライトニングネットワークのビジネス展開 消費者向け少額直接広告ライトニングネットワークのビジネス展開 消費者向け少額直接広告
ライトニングネットワークのビジネス展開 消費者向け少額直接広告takayaimai
 
2nd presentation of ライトニングネットワーク JBA 2018/04/24
2nd presentation of ライトニングネットワーク JBA 2018/04/242nd presentation of ライトニングネットワーク JBA 2018/04/24
2nd presentation of ライトニングネットワーク JBA 2018/04/24takayaimai
 
1st presentation of ライトニングネットワーク JBA 2018/04/24
1st presentation of ライトニングネットワーク JBA 2018/04/241st presentation of ライトニングネットワーク JBA 2018/04/24
1st presentation of ライトニングネットワーク JBA 2018/04/24takayaimai
 
Blockchain技術勉強会 #Lightning Networkの技術と最前線
Blockchain技術勉強会 #Lightning Networkの技術と最前線Blockchain技術勉強会 #Lightning Networkの技術と最前線
Blockchain技術勉強会 #Lightning Networkの技術と最前線takayaimai
 
lnwalletウォレットアプリでのライトニングネットワーク受金方法
lnwalletウォレットアプリでのライトニングネットワーク受金方法lnwalletウォレットアプリでのライトニングネットワーク受金方法
lnwalletウォレットアプリでのライトニングネットワーク受金方法takayaimai
 
Technology of Lightning Network in Tel Aviv, Israel
Technology of Lightning Network in Tel Aviv, IsraelTechnology of Lightning Network in Tel Aviv, Israel
Technology of Lightning Network in Tel Aviv, Israeltakayaimai
 

More from takayaimai (14)

ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
 
Scalability problems @ neutrino 20181023
Scalability problems @ neutrino 20181023Scalability problems @ neutrino 20181023
Scalability problems @ neutrino 20181023
 
LApps -- Offchain Academy Hackday
LApps -- Offchain Academy HackdayLApps -- Offchain Academy Hackday
LApps -- Offchain Academy Hackday
 
ライトニングノードをいじってみよう
ライトニングノードをいじってみようライトニングノードをいじってみよう
ライトニングノードをいじってみよう
 
Lightningエコシステムの最前線@HashHub Conference 2018
Lightningエコシステムの最前線@HashHub Conference 2018Lightningエコシステムの最前線@HashHub Conference 2018
Lightningエコシステムの最前線@HashHub Conference 2018
 
セカンドレイヤーの技術動向@国際大学GLOCOM
セカンドレイヤーの技術動向@国際大学GLOCOMセカンドレイヤーの技術動向@国際大学GLOCOM
セカンドレイヤーの技術動向@国際大学GLOCOM
 
MuSig
MuSigMuSig
MuSig
 
ライトニングノードをたててみよう
ライトニングノードをたててみようライトニングノードをたててみよう
ライトニングノードをたててみよう
 
ライトニングネットワークのビジネス展開 消費者向け少額直接広告
ライトニングネットワークのビジネス展開 消費者向け少額直接広告ライトニングネットワークのビジネス展開 消費者向け少額直接広告
ライトニングネットワークのビジネス展開 消費者向け少額直接広告
 
2nd presentation of ライトニングネットワーク JBA 2018/04/24
2nd presentation of ライトニングネットワーク JBA 2018/04/242nd presentation of ライトニングネットワーク JBA 2018/04/24
2nd presentation of ライトニングネットワーク JBA 2018/04/24
 
1st presentation of ライトニングネットワーク JBA 2018/04/24
1st presentation of ライトニングネットワーク JBA 2018/04/241st presentation of ライトニングネットワーク JBA 2018/04/24
1st presentation of ライトニングネットワーク JBA 2018/04/24
 
Blockchain技術勉強会 #Lightning Networkの技術と最前線
Blockchain技術勉強会 #Lightning Networkの技術と最前線Blockchain技術勉強会 #Lightning Networkの技術と最前線
Blockchain技術勉強会 #Lightning Networkの技術と最前線
 
lnwalletウォレットアプリでのライトニングネットワーク受金方法
lnwalletウォレットアプリでのライトニングネットワーク受金方法lnwalletウォレットアプリでのライトニングネットワーク受金方法
lnwalletウォレットアプリでのライトニングネットワーク受金方法
 
Technology of Lightning Network in Tel Aviv, Israel
Technology of Lightning Network in Tel Aviv, IsraelTechnology of Lightning Network in Tel Aviv, Israel
Technology of Lightning Network in Tel Aviv, Israel
 

Recently uploaded

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 

Recently uploaded (9)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 

Mimblewimbleホワイトペーパー解説