/
進捗報告 SFC WIDE ARCH 進捗報告 SFC WIDE ARCH

進捗報告 SFC WIDE ARCH - PowerPoint Presentation

vamput
vamput . @vamput
Follow
342 views
Uploaded On 2020-08-06

進捗報告 SFC WIDE ARCH - PPT Presentation

bhangra 2014710 1 Bitcoin ネットワーク Bitcoin Node New Node DNS Round Robin 2014710 2 Bitcoin では DNS とリソースの 問い合わせメッセージを用いて新規接続を行う ID: 799796

bitcoin node 2014 dns node bitcoin dns 2014 192 robin sipa getaddr dns

Share:

Link:

Embed:

Download Presentation from below link

Download The PPT/PDF document "進捗報告 SFC WIDE ARCH" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

進捗報告

SFC WIDE ARCH bhangra

2014/7/10

1

Slide2

Bitcoin

ネットワーク

Bitcoin Node

New Node

DNS Round Robin

2014/7/10

2

Slide3

Bitcoin

ではDNSとリソースの

問い合わせメッセージを用いて新規接続を行う

Bitcoin Node

New Node

DNS Round Robin

2014/7/10

3

Slide4

DNS

ラウンドロビンを用いたリソース探索

Bitcoin Node

New Node

DNS Round Robin

bitcoin.sipa.be

2014/7/10

4

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

192.0.2.10

"seed.bitcoin.sipa.be“?

Slide5

DNS

ラウンドロビンを用いたリソース探索

Bitcoin Node

New Node

DNS Round Robin

bitcoin.sipa.be

2014/7/10

5

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

192.0.2.10

"seed.bitcoin.sipa.be“?

192.0.2.10

Slide6

DNS

ラウンドロビンを用いたリソース探索

Bitcoin Node

New Node

DNS Round Robin

bitcoin.sipa.be

2014/7/10

6

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

192.0.2.10

ACK

SYN

Slide7

Bitcoin

ではデフォルトで8つのノードとの接続が必要

Bitcoin Node

New Node

DNS Round Robin

2014/7/10

7

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

192.0.2.10

Slide8

getaddr

メッセージで他のノードのリストを要求

New Node

2014/7/10

8

Bitcoin Node

192.0.2.10

getaddr

Bitcoin

Node

2

Bitcoin Node

5

Bitcoin Node

4

Bitcoin Node

Bitcoin Node

3

Slide9

全てのノードは隣接ノードとの接続状況をリストで持ってる

Bitcoin

Node

2

New Node

2014/7/10

9

Bitcoin Node

5

Bitcoin Node

4

Bitcoin Node

Bitcoin Node

3

Bitcoin Node

192.0.2.10

getaddr

Node 2

は生きてる

Node 3

も生きてる

Node 4

は少し前に通信した

Node 5

と通信出来ない・・・・・

Slide10

Node

2

Node 3

Node

4

疎通性のあるノードのリストを

addr

メッセージで送る

Bitcoin

Node

2

New Node

2014/7/10

10

Bitcoin Node

5

Bitcoin Node

4

Bitcoin Node

Bitcoin Node

3

Bitcoin Node

192.0.2.10

addr

Slide11

これ

で多くのノードと通信が出来てネットワークも強くなる

Bitcoin

Node

2

New Node

2014/7/10

11

Bitcoin Node

5

Bitcoin Node

4

Bitcoin Node

Bitcoin Node

3

Bitcoin Node

192.0.2.10

Slide12

もし悪さする人が居たらどうなるだろう

Bitcoin Node

New Node

DNS Round Robin

2014/7/10

12

Slide13

もし

DNS

が悪さをしていたら

悪い

DNS

2014/7/10

13

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

悪いノード

Bitcoin Node

バラバラのネットワーク作ってやった

ったw

Slide14

もし

DNS

が悪さをしていたら

悪い

DNS

2014/7/10

14

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

悪いノード

Bitcoin Node

新しいブロック見つけた!!

( ´_

ゝ`

)

フーン

Slide15

もし

DNS

が悪さをしていたら

悪い

DNS

2014/7/10

15

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

悪いノード

Bitcoin Node

他の子にも

ブロック回して!

わかった

Slide16

もし

DNS

が悪さをしていたら

悪い

DNS

2014/7/10

16

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

悪いノード

Bitcoin Node

・・・・・・・・

Slide17

もし

DNS

が悪さをしていたら

悪い

DNS

2014/7/10

17

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

悪いノード

Bitcoin Node

・・・・・・・・

新しいブロック見つけた!!

Slide18

もし

DNS

が悪さをしていたら

悪い

DNS

2014/7/10

18

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

Bitcoin Node

悪いノード

Bitcoin Node

新しいブロック見つけた!!

Slide19

ビザンチン将軍問題風に言えば

元々

Bitcoinは開発者や普及者が

bitcoin

は 全てのノードの半分以上の計算力が無いと崩せない

(キリッ)」

と言ってたけどbitcoinのソース内に記載されてるDNS

サーバ7台、そして幾つかのノードを運用するだけで中長期的にブロックチェインフォーク等の問題を蔓延させられる脆弱性がある。

2014/7/10

19

Slide20

自分が短期的にやろうとしている事

bitcoin

のソース内に記載されてるDNS

サーバ群に既知のノードを全て教えてもらい、それらのノード達の近隣ノードを教えてもらい、どういうトポロジーになっているかを可視化する

2014/7/10

20

Slide21

進捗

。。。

ソースに記載されてるDNSサーバにノードの問い合わせを数回送り、ラウンドロビンが機能している事を確認

それらのノードに

Bitcoin

のポートで

TCPを張る事に成功

まだ簡単なソケットプログラミングしただけです。。2014/7/10

21

Slide22

TODO

キチンとしたヘッダでハッシュ値も含んだ

“getaddr”

メッセージを送信し、

addr

”メッセージに含まれているノードのリストを確認する可能な限り全てのノードを

DNSサーバ群から聴き集め、それらと他のノードの接続状況、もといトポロジーを可視化修論のストーリーを決める。。。。

2014/7/10

22