アトミック的にコインをスワップする: クロス・ブロックチェーンとプライバシーための交換

Slides:



Advertisements
Similar presentations
Maxent model への挑戦 - 驚きとドキドキ感の理論 - 大野ゆかり Phillips et al. (2006) Maximum entropy modeling of species geographic distributions. Ecological Modeling 190:
Advertisements

数理統計学  第9回 西山.
本日のスケジュール 14:45~15:30 テキストの講義 15:30~16:15 設計レビュー 16:15~16:30 休憩
Android と iPhone (仮題) 情報社会とコンピュータ 第13回
秘密のリンク構造を持つグラフのリンク解析
THE CONTINUOUS IMPROVEMENT MODEL called ADEC
アドベンチャー日本語一 2か1 の たんご.
笑顔の3分間ワークショップ Thank You株式会社.
Bassモデルにおける 最尤法を用いたパラメータ推定
アルゴリズムイントロダクション第5章( ) 確率論的解析
サークル活動支援サービス 【 Ripends】
19課 意見を述べる.
ブロックチェーン 株式会社アプライド・マーケティング 大越 章司
仮想マシンの並列処理性能に対するCPU割り当ての影響の評価
社会心理学のStudy -集団を媒介とする適応- (仮)
Crypto currency - work, security, reaction -
 Combinations(2)        古川 勇輔.
第4日目第2時限の学習目標 検査(テスト)の信頼性について学ぶ。 (1)検査得点の構成について知る。 (2)検査の信頼性の定義を知る。
国際経済学入門 10 丹野忠晋 跡見学園女子大学マネジメント学部 2013年12月23日
15.同時実行制御,トランザクション, データベースの回復
ブロックチェーン 株式会社アプライド・マーケティング 大越 章司
Air Pen -- an introduction of my recent result --
Linux リテラシ 2006 第4回 ネットワーク CIS RAT.
第10回 情報セキュリティ 伊藤 高廣 計算機リテラシーM 第10回 情報セキュリティ 伊藤 高廣
  情報に関する技術       情報モラル授業   .
携帯ゲーム機の進化 情報モラル研修 ~Nintendo3DSを例に~
appengine ja night #6 あらかわ
情報セキュリティ  第4回 メッセージ認証コード.
情報セキュリティ  第11回 デジタル署名.
インターネットにおける真に プライベートなネットワークの構築
ブロックチェーン 株式会社アプライド・マーケティング 大越 章司
セキュリティ 05A2013 大川内 斉.
栗原正純 UEC Tokyo 電気通信大学 電気通信学部 情報通信工学科 2009/4/15
クラウドにおけるIntel SGXを用いた VMの安全な監視機構
these are protocols used for changing the bitcoin network protocols
Q q 情報セキュリティ 第11回:2004年6月18日(金) q q.
5.RSA暗号 素因数分解の困難性を利用した暗号.
携帯ゲーム機の進化 情報モラル研修 ~Nintendo3DSを例に~
25. Randomized Algorithms
東北大学大学院情報科学研究科 教授 西関 隆夫
TCP/IPとプロセス間通信 2007年1月12日 海谷 治彦.
暗号技術 ~暗号技術の基本原理~ (1週目) 情報工学科  04A1004 石川 真悟.
Q q 情報セキュリティ 第7回:2007年6月1日(金) q q.
定型英会話(like) I like 〜. Do you like 〜? What 〜 do you like?
Intel SGXを用いた仮想マシンの 安全な監視機構
ブロックチェーン 株式会社アプライド・マーケティング 大越 章司
ロールプレイアクティビティ ある状況設定の中で、登場人物になりきり会話をします。 CAN-DO: 状況に応じた適切な質問をすることができる。
11.再帰と繰り返しの回数.
最低限インターネット ネットワークにつなぎましょ!
コミュニケーションと ネットワークを探索する
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
★C++/オブジェクト指向実践企画★ Othelloゲーム作成
Q q 情報セキュリティ 第9回:2007年6月15日(金) q q.
「おでかけ定期券」って なんだろう?.
VMリダイレクト攻撃を防ぐための 安全なリモート管理機構
Step.8 ファイアウォール PC 3 PC 1 PC 2 許可したアクセス のみ通過させる アクセスする ファイアウォール
売れるためのWEBサイト戦略.
Microsoft® Office® 2010 トレーニング
ネットワークプロトコル.
確率と統計 確率編- 平成20年10月29日(木).
担当:青木義満 情報工学科 3年生対象 専門科目 システムプログラミング 第11回 プロセス間通信4 仮想FTPの実現 担当:青木義満
Q q 情報セキュリティ 第6回:2005年5月26日(金) q q.
Q q 情報セキュリティ 第8回:2004年5月28日(金) の補足 q q.
情報生命科学特別講義III (3)たたみ込みとハッシュに 基づくマッチング
Libra 株式会社アプライド・マーケティング 大越 章司
Q q 情報セキュリティ 第7回:2005年5月27日(金) q q.
第4日目第2時限の学習目標 検査(テスト)の信頼性について学ぶ。 (1)検査得点の構成について知る。 (2)検査の信頼性の定義を知る。
情報ネットワーク 岡村耕二.
CSS符号を用いた量子鍵配送の安全性についての解析
計算技術研究会 C言語講座 第二回 制御構文 if , switch.
Presentation transcript:

アトミック的にコインをスワップする: クロス・ブロックチェーンとプライバシーための交換 Ethan Heilman, Nicolas Dorier

OR イントロ アトミッック・スワップ: 交換が起きた 両者はコインを取り戻す …両者が悪意を持って、お互いをだまそうとしたとしても! AliceとBobは仮想通貨(ビットコインなど)の交換が出来るように なり、下記の条件を実現する: アトミック:交換は「成功」か「失敗」、お互いにコインを送金せずに奪うことで相手をだます事は出来ない 信頼できない:信頼出来るサード・パーティーは必要ない 交換が起きた Alice Bob Alice Bob OR 両者はコインを取り戻す X …両者が悪意を持って、お互いをだまそうとしたとしても!

実例:クロス・ブロックチェーンの交換とプライバシー クロス・チェーンのアトミック・スワップ: AliceはLitecoinを持っていて、Bitcoinが欲しい BobはBitcoinを持っていて、Litecoinが欲しい それで、AliceはBobと 2LTC と 1BTC を交換する Alice Bob Tx Tx プライバシーのためのアトミック・スワップ: 自分のトランザクション・グラフを曖昧にするためにAliceとBobは 1BTC を 1BTC で交換する。これをミキシングと言います Alice Bob Tx Tx

同じブロックチェーン上でアトミック・スワップ Bob, Bitcoinを交換しましょうか? はい、トランザクション2の中にコインを持っています Alice Bob Transaction 1 Transaction 2 APK BPK Tx 3 needs Alice and Bob’s signatures to spend Tx 1 and 2. Transaction 3 APK BPK ステップ2: AliceはTx3をサインして、Bobへ署名を送る Aσ Bσ ステップ3: BobはTx3をサインして、ブロックチェーンにのせる ステップ1: AliceはTx3を作成して、Bobへ送る ステップ4: Tx3はブロックチェーンで確認された これはシンプルなCoinJoinの例。プライバシーについて話す時にこのプロトコルを再び検討する。 Tx3はブロックチェーン上で確認されるかどうか、つまりアトミックな交換である。 ただし、Tx1とTx2が異なるブロックチェーン上にある場合は、このプロトコルを使えない。

ノンアトミック・クロスブロックチェーンの交換 Bob, LitecoinとBitcoinを交換しますか? Yes, send me Litecoin first and I’ll send you Bitcoin ケケケケ、AliceのLitecoinを盗んだぞ!!! Alice Bob Transaction 1 Transaction 2 APK BPK Transaction 3 BPK ステップ1: AliceはTx3をサインして、Litecoinのブロックチェーンに乗せる Transaction 4 APK ステップ2: BobはTx3が確認されることを待つ ハッシュ・ロックを使って、これを防ぐことが出来ます! X 悪のステップ3: BobはTx4のサインも送信する事もしない! ステップ3: BobがTx4をサインして、Bitcoinのブロックチェーンに乗せる ノンアトミック:AliceはBobをだませないけど、 BobはAliceをだませる … AliceはBobを信頼すべき

資金をハッシュ・ロックする BPK , Y= H(?) Bσ, X Txのアウトプットをつかうために、H(X)=Yを満たすXの値を知るべき ステップ1: Aliceはランダムな値Xを選んで、ハッシュをしてYを得る。 Transaction 1 BPK , Y= H(?) ステップ2: AliceはBobがXを分かるとBobが使えるトランザクションを作成して乗せる Transaction 2 Bσ, X ステップ3: BobはXをわかって、Tx1を消費する ハッシュ・ロック: Txのアウトプットをつかうために、H(X)=Yを満たすXの値を知るべき

アトミック クロス・ブロックチェーンの交換 アトミック クロス・ブロックチェーンの交換 Bob Alice Transaction 1 BPK ,Y= H(?) Alice Bob Transaction 4 BPK Bσ, X Transaction 2 APK ,Y= H(?) ステップ1: Aliceはランダム値のXを選んで、Yにハッシュして、Tx1を乗せる ステップ2: BobはTx1が確認されることを待ってから、Tx2を乗せる Transaction 3 APK Aσ, X ステップ3: AliceはTx2が確認されることを待ってから、Tx3を乗せる ステップ4: BobはTx3からXが分かって、Tx4を送信する Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

アトミック クロス・ブロックチェーンの交換 アトミック クロス・ブロックチェーンの交換 Bob Alice Transaction 1 BPK ,Y= H(?) Transaction 4 BPK Bσ, X Transaction 2 APK ,Y= H(?) Transaction 5 APK Aσ Transaction 3 APK Aσ, X Transaction 6 BPK Bσ X X これはTier Nolanアトミック交換プロトコルと呼ばれている。 AliceはTx3を乗せなかったら何が起こる?全部のコインは消費出来なくなる! 時間制限に達するとコインを払い戻すタイムロックと呼ばれる追加の支払い条件を追加します。 Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

フルTier-Nolanアトミック交換プロトコル Bob Alice Transaction 1 BPK ,Y= H(?) Transaction 4 BPK Bσ, X Transaction 2 APK ,Y= H(?) Transaction 5 APK Aσ Transaction 3 APK Aσ, X Transaction 6 BPK Bσ 返金 交換が起きた 返金 Bitcoinは2つのタイム・ロック機能がある:absolute CLTV (BIP-65) と relative CSV (BIP-112) ここはCLTVを使います。 Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

フルTier-Nolanアトミック交換プロトコル:タイミング Aliceの返金 はアンロックされた Litecoin’s Blockchain Tx 1 Tx 3 Tx 4 Tx3: Aliceの署名とX Tx4: Bobの署名とX Tx 5 Tx 6 Tx6: Bobの署名 Tx5: Aliceの署名 Tx1の消費の条件: 1. Bobの署名とX または 2. Aliceの署名とLTC-高さ>205 200 201 202 203 204 205 206 Aliceのタイム・ロックはBobのものより大きくなければならない … じゃないと彼女が騙すことができる Bobの返金 はアンロックされた Bitcoin’s Blockchain Tx 2 300 301 302 303 304 305 306 Tx2の消費の条件: 1. Aliceの署名とX または 2. Bobの署名とBTC-高さ>304 Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

フルTier-Nolanアトミック交換プロトコル:タイミング Aliceの返金 はアンロックされた Litecoin’s Blockchain Tx 1 Tx 4 Tx 5 Tx1の消費の条件: 1. Bobの署名とX または 2. Aliceの署名とLTC-高さ>204 200 201 Tx5: Aliceの署名 202 203 204 205 206 Tx4: Bobの署名とX Alice ケケケケ、AliceのLitecoinを盗んだぞ!!! Aliceのタイム・ロックはBobのものより大きくなければならない … じゃないと彼女が騙すことができる Bob’s Refund unlocked Bitcoin’s Blockchain Tx 3 Tx3: Aliceの署名とX Tx 2 300 301 302 303 304 305 306 Tx2の消費の条件: 1. Aliceの署名とX または 2. Bobの署名とBTC-高さ>304 Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

クロス・チェーンの アトミック・スワップを やってみましょう

まとめ:クロス・チェーンのアトミック・スワップ クロス・チェーンのアトミック・スワップ: AliceはLitecoinを持って、Bitcoinが欲しい BobはBitcoinを持って、Litecoinが欲しい それで、AliceはBobと2LTCと1BTCを交換する Alice Bob Tier-Nolanアトミック交換 両者の仮想通貨の交換ができるようにする 両者はお互いにだますことができない Aliceが不正行為をしないようにタイムロックを慎重に選ぶ必要がある ハッシュロックとタイムロックをサポートする仮想通貨であれば動作できる 洗練された数学でハッシュロック要件は取り除ける ブロックチェーン上の4つのトランザクションが必要 AliceはBobを信頼すれば2つのトランザクションを減らせる

プライバシー Alice Bob 目的はトランザクショングラフの繋がりを破ること 2つのプロトコルについて簡単に説明する: Tx Tx プライバシーためのアトミック・スワップ: 自分のトランザクション・グラフを曖昧にするためにAliceとBobは1BTCと1BTCを交換する、これをミキシングと言います Alice Bob Tx Tx 目的はトランザクショングラフの繋がりを破ること 2つのプロトコルについて簡単に説明する: シングルトランザクションのCoinJoin MaxwellのCoinSwap (プライベート・アトミック・スワップ)

シンプルな2人のCoinJoinのプロトコル Alice Bob Transaction 1 Transaction 2 APK BPK Transaction 3 A’PK B’PK ステップ2: AliceはTx3をサインして、Bobに署名を送る Aσ Bσ ステップ3: BobはTx3をサインして、ブロックチェーンに乗せる ステップ1: AliceはTx3を作成して、Bobへ送る プライバシーのためにAliceとBobは新しいパブリックキーを使う。 ステップ4: Tx3はブロックチェーン上で確認された プライバシーの提供: どのTx3のパブリック・キーがAliceのものであるかを推測するのは1/2の確率

プライベート・アトミック・スワップ(MaxwellのCoinSwap) Transaction 1 Transaction 2 B’PK, A’PK B’’PK, A’’PK Transaction 6 APK Aσ, X Transaction 5 BPK Bσ, X Transaction 3 B’’σA’’σ Transaction 4 B’σA’σ A’’PK ,Y= H(?) B’PK Transaction 8 B’σA’σ B’PK Transaction 7 B’σA’σ A’’PK Refund プライバシーの提供:ブロックチェーン上に見えるのはTx1, Tx2, Tx7, Tx8だけで、繋がりは無い Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

プライバシーのまとめ Tx Tx Tx Tx MaxwellのCoinSwapは異なるブロックチェーン上の4つのマルチシグ・トランザクション からクロス・チェーンのアトミック・スワップを区別できないようにする しかし、値段、タイミング、ネットワークの情報、などで相関性が分かる アトミック・スワップのプライバシーのプロトコルはいくつかある: Barberのフェア・エクスチェンジ / XIM TumbleBit ...

質問 Topics Discussed: シンプルな交換プロトコル 1つの関係者を信頼する交換 1つのブロックチェーン上にまたがって機能するアトミックな交換 クロス・チェーンのアトミック・スワップ ハッシュ・ロック / タイム・ロック Tier Nolanのアトミック交換プロトコル プライバシー 2者間のCoinJoin アトミックな交換をプライベートにする

Backup slides

Backup slides

フルTier-Nolanアトミック交換プロトコル Bob Alice Transaction 1 BPK ,Y= H(?) Transaction 4 BPK Bσ, X Transaction 2 APK ,Y= H(?) Transaction 5 APK Aσ Transaction 3 APK Aσ, X Transaction 6 BPK Bσ 返金 交換が起きた 返金 Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

Full Tier-Nolan Atomic Trade Protocol Alice’s Refund unlocked Litecoin’s Blockchain Tx 1 Tx 3 Tx 4 Tx3: Alice sig & X Tx4: Bob sig & X Tx 5 Tx 6 Tx6: Bob sig Tx5: Alice sig Tx1 Spend Conditions: 1. Bob Sig & X Or 2. Alice Sig & LTC-Height>205 200 201 202 203 204 205 206 Bob’s Refund unlocked Bitcoin’s Blockchain Tx 2 300 301 302 303 304 305 306 Tx2 Spend Conditions: 1. Alice Sig & X Or 2. Bob Sig & BTC-Height>304 Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

フルTier-Nolanアトミック交換プロトコル:タイミング Aliceの返金 はアンロックされた Litecoin’s Blockchain Tx 1 Tx 3 Tx 4 Tx3: Aliceの署名とX Tx4: Bobの署名とX Tx 5 Tx 6 Tx6: Bobの署名 Tx5: Aliceの署名 Tx1の消費の条件: 1. Bobの署名とX または 2. Aliceの署名とLTC-高さ>205 200 201 202 203 204 205 206 Bobの返金 はアンロックされた Bitcoin’s Blockchain Tx 2 300 301 302 303 304 305 306 Tx2の消費の条件: 1. Aliceの署名とX または 2. Bobの署名とBTC-高さ>304 Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

シンプルな2人のCoinJoinのプロトコル Alice Bob Transaction 1 Transaction 2 APK BPK Transaction 3 A’PK B’PK ステップ2: AliceはTx3をサインして、Bobに署名を送る Aσ Bσ ステップ3: BobはTx3をサインして、ブロックチェーンに乗せる ステップ1: AliceはTx3を作成して、Bobへ送る プライバシーのためにAliceとBobは新しいパブリックキーを使う。 ステップ4: Tx3はブロックチェーン上で確認された プライバシーの提供: どのTx3のパブリック・キーがAliceのものであるかを推測するのは1/2の確率

Barber Protocol B’PK, A’PK B’’PK, A’’PK APK Aσ, X BPK Bσ, X B’’σA’’σ Transaction 1 Transaction 2 B’PK, A’PK B’’PK, A’’PK Transaction 6 APK Aσ, X Transaction 5 BPK Bσ, X Transaction 3 B’’σA’’σ Transaction 4 B’σA’σ A’’PK ,Y= H(?) B’PK Transaction 8 B’σA’σ B’PK Transaction 7 B’σA’σ A’’PK Refund Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X

Barber et al’s Fair-Exchange Protocol 公平な交換プロトコル:無信頼ミキサーでBitcoinをミキシングする [0] “Bitter to Better —How to Make Bitcoin a Better Currency”, Barber et al. Transaction 1 Transaction 2 APK BPK Transaction 3 BPK Step 1: Alice signs Tx 3 and posts it to Litecoin’s blockchain Transaction 4 APK X