« 2006年2月 | トップページ | 2006年4月 »

2006年3月の7件の投稿

2006.03.25

[P2P入門]これで納得!P2P超入門~その1

これから数回に渡ってP2P超入門を連載します。P2Pのイメージをつかんでもらうことが目的なので、一部あいまいな点がありますが、それは許して下さいね。

ここではP2Pの研究をしている大学院生「太郎」さんと、サークルの後輩で大学1年の「さくら」さんの会話を通しながら、P2Pについてわかりやすく解説します。

□はじめに

さくら☆
太郎さん、最近「P2Pが~!」とか「Winnyが~?」という記事が多いよね。でもP2PやWinnyって実際よくわからないんだけども。

太郎★
そうね、テレビ番組や新聞もきちんとP2PやWinnyについて解説してない場合が多いから、誤解している人やよくわからない人が多いと思うよ。

さくら☆
「P2Pは良くない」って良く言われているんだけども、どうしてなの?

太郎★
実は「P2Pは良くない」とか「P2Pは悪」というのは間違った見方なんだ。

さくら☆
どういうこと?

太郎★
P2Pは通信技術の一つであって、使い方次第で良い利用法もあるし、悪い利用方法もあるんだ。

さくら☆
よくわからな~い!

太郎★
例えばさくらさんもメールを良く使うよね。メールを使うことは良いと思う?悪いと思う?

さくら☆
だってメールは仕事でもプライベートでも良く使うし。良いことに決まっているじゃないの!?

太郎★
でも、よく知らない人からメールが来たり、広告メールも見たりするよね。あるいはウィルス付のメールが来たり。

さくら☆
あ、そうか!ああいうメールって厄介だよね。

太郎★
そう、私たちが使うメールという通信技術を見ても使い方次第で「良いことをする」手段であったり、「悪いことをする」手段であったりする。

さくら☆
だからP2Pも使い方次第で「良いことをする」手段だったり「悪いことをする」手段だったり見えるという説明なのね。

太郎★
その通り。まずはP2Pについて知らない人が多いから、これからわかりやすく説明するね!

さくら☆
はい!期待大です♪

□P2Pとは?

さくら☆
P2Pってぶっちゃっけ何なの?

太郎★
P2PはPeer to Peer の略なんだ。to と2「two」の英語の発音が同じなので、P2Pと書かれていることが多いね。Peerとは「対等な」という意味。だから直訳すると「対等同士のつながり」っていう感じかな。

さくら☆
よくわからな~い!

太郎★
そうだよね。例えばパソコン同士を直接繋げて通信するような感じかな。

さくら☆
イメージはわかるけども、もう少し具体的に説明して欲しいなぁ~。

太郎★
では、いわゆる通常の通信方法について説明しようね。

□お金持ちと召使

太郎★
さくらさんが例えばお金持ちだったとします。何人も召使がいたらどうする?

さくら☆
うん、まずワインと美味しい食事をもってきてもらおうかな。(笑)、あと車の運転をしてもらうの!私は助手席で。

太郎★
なんか、さくらさんの召使が大変そう(笑)ところで、召使がいれば、なんでも命令できるよね。実はこれが一般的な通信と関係あるんだ。

さくら☆
どういうこと???

太郎★
例えば、さくらさんがメールを桃子さんに送ることを考えてみます。メールはさくらさんのパソコンから送りるよね。

さくら☆
うん、そうだけども!?

太郎★
実はさくらさんがメールを送る直接の相手先は桃子さんでなくて、メールサーバというものなんです。

さくら☆
へえ、そうなんだ。じゃあ、桃子さんに渡すメールは一旦メールサーバというところを通過するんだ。

太郎★
そう、そして実はさくらさんのパソコンはメールサーバに対して「メールを桃子さんに届けてね!」という命令を出している。

さくら☆
ということは、パソコンがある命令を出して、メールサーバがその命令を受けて動いているということ?

太郎★
その通り。だから、先ほどの例でいうと、さくらさんのパソコンが命令する側、つまり「金持ち」で、メールサーバは命令を実行する側、つまり「召使」になる。これを通は「クライアント=サーバモデル」って呼ぶんだ。

さくら☆
じゃあ、パソコンは命令を出すだけということですね。なんだか「クライアント=サーバモデル」と呼ぶとカッコいいですね!

太郎★
実は「クライアント」は「お客」、「サーバ」は「召使」という意味とほぼ同等なんだ。

さくら☆
なるほど!納得しました♪

□テニスゲームとP2P

さくら☆
こんどはP2Pですね。P2Pなら召使が何人もいるのかな?

太郎★
残念ながら、そうじゃないなぁ(笑)今度はテニスを考えみよう!

さくら☆
急にテニスの話題?

太郎★
うん、テニスを例にするとわかりやすいんだ。テニスってシングルだと2人で行うよね。

さくら☆
私、テニスやったことありますよ。こう見えても上手なんだよ!

太郎★
私はテニスは大学の授業でしか受けたことないなぁ。こんと教えてもらおうかな。
そことでテニスのルールは基本的にはボールを受けて、返すことだね。シングルでさくらさんと桃子さんが試合した場合、さくらさんと桃子さん、どちらも同じような動作だよね。

さくら☆
だってそれがテニスのルールだからね。

太郎★
実はこれがP2Pの本質なんだ。

さくら☆
どういうこと???

太郎★
今、「ボールを返すこと」を命令と考えてみよう。テニスのルールだとさくらさんは桃子さんに「ボールを私に返してね!」という命令を出すとともに、桃子さんはさくらさんに「ボールを私に返してね!」という命令を出していることになるね。

さくら☆
そうね。テニスでは、お互い「ボールを相手に返す」命令をしているんだ!

太郎★
そして、さくらさんは桃子さんから受けた命令を受けて、きちんと桃子さんに「ボールを返す」という命令の実行をして逆に桃子さんはさくらさんから受けた命令を受けて、きちんと私に「ボールを返す」という命令の実行をすることになる。

さくら☆
なるほど。。私も命令をするけども、他の人から命令を受けるわけね♪

太郎★
さくらさんも桃子さんも命令を出すけども、逆に誰かから命令を受けたらその命令を実行するわけだ。だから、さくらさんと桃子さんの役割は「同じ」だよね。

さくら☆
先ほど教えてもらった「クライアント=サーバモデル」は、お金持ちが一方的に命令を出して、召使が一方的に命令を実行していただけども、P2Pの場合は「誰もが命令をすることができて、誰もがその命令を受けて実行することができる」というモデルなんですね!

太郎★
そこまでわかれば完璧!P2Pはお互いのパソコンが命令を受けて、命令を実行するという対等な立場なので、「Peer」つまり「対等」という言葉が使われている。対等なパソコンから対等なパソコンへの通信だからPeer to Peer、略して「P2P」なんだ。

さくら☆
やっとP2Pが理解できたよ!

□次回予告

さくら☆
P2Pについてはわかったけども、P2Pっていろんな方法があるみたい。あと、P2Pって一体何に使われているか良くわからない~!

太郎★
では次回はそれについて解説しようね。

さくら☆
次回も楽しみ!

| | コメント (0) | トラックバック (2)

2006.03.18

[Winny][P2P]Winnyでbotネットを構築し、新型大規模DDoS攻撃が起きる懸念

Winny経由によるウィルス感染及びそれによる情報アップロード+暴露等による被害が紙面をにぎわしているが、今後はウィルスが進化し悪質化することが考えられる。

Winny関連ウィルス(いわゆるAntinny)は大きく感染被害例で分けると
-Winnyネットワークに情報を勝手にアップロードする
-PCがHTTPサーバのように振る舞い、PC内容が閲覧できる状態になる
-特定の組織にメールを送信する
-ウィルス作者によって指定されたサイトへのDDoS攻撃
etc..

が挙げられる。

ところで、今後もWinnyのネットワークを利用したAntinnyは出現する事が考えられる。そのひとつが「トロイの木馬」型ウィルスだ。(トロイの木馬をウィルスと書くのは微妙だが、とりあえずこのように表記しよう。)

トロイの木馬は、ウィルス感染した端末に対して他人が勝手にアクセス、作動させることができるウィルスだ。この手のウィルスはDoS攻撃、DDoS攻撃によく利用されるほか、踏み台にするために利用する事もある。

トロイの木馬に感染したPCはIRCと呼ばれるプログラムを利用して操作することができる。このトロイの木馬にウィルスしたPCはあるネットワークを構築しており、botネットと呼ばれることがある。botを利用してウィルス作者、ある
いはそのウィルス技術を知っている人は感染PCを好きなように利用する事ができるのだ。
なお、 botやbotネットについては下記の記事を参考にして欲しい。
http://itpro.nikkeibp.co.jp/free/ITPro/OPINION/20041215/153889/
http://www.microsoft.com/japan/technet/security/secnews/articles/column0411bot.mspx

さて、ここでWinnyとトロイの木馬の関連が出てくる。通常のbotネットはチャットで利用されるIRCを利用して形成するが、Antinnyでのトロイの木馬はWinnyをbotネットとして使う事が考えられる。既に同様の指摘がされている。
http://d.hatena.ne.jp/winny/20060316

例えばWinnyをbotネットとして使う場合、感染ノードをプロキシとして使うようにすれば、誰から操作されてい
るかさっぱりわからなくなることができる。

もう少し見方を変えるとWinnyのキャッシュ機能を使うと更に匿名性を確保しつつ感染PCを操作することができる。その方法はWinnyに流通しているkeyやファイルを利用して感染PCを操作する方法だ。kyeあるいはファイルに特定の命令を埋め込む事ができる。この操作方法は特定のPCに対する操作や即時性が求められる操作は難しいが、継続的に広範囲に不特定多数に行う操作は可能だろう。既に前文でわかると思うが、その一つの
応用例がDDoSアタックだ。攻撃者があるファイルにDDoSアタックを行う命令を入れれば、感染PCは継続的にあるターゲットに攻撃する。もちろん、攻撃者はWinnyの匿名性により特定できないということになる。

もちろん、今までもAntinnyによるDDoSは発生している。ただし、私が言っているのは、攻撃者の「命令」によって、任意のサイトをアタックできるDDoSアタックである。このようなDDoSはAntinnyでは今まで発生してない。
ちなみにAntinnyによる「特定」サイトのアタックについては下記を参考にして欲しい。
http://www.itmedia.co.jp/enterprise/articles/0412/03/news026.html?edr


このようなDDoSアタックで一番怖い攻撃は、実はWinnyならではの機能を使ったDDoSだ。それはWinnyのダウンロード機能を利用するものである。例えば、感染PCが無差別にファイルのダウンロードすることによって、接続
ネットワークの帯域が大幅に消費される攻撃だ。すると、そのネットワークに繋がっているノード(ひいては国内全体のPC)に影響を与える事になる。最悪、日本国内のPCがどのWebサーバにもつなげないという自体になるかもしれない。

このような懸念は既に私のBlogで指摘していた。
http://toremoro.tea-nifty.com/tomos_hotline/2004/10/p2pp2pddos.html
そして、まさしくそのような懸念点が実現性を増した事になる。早急に技術面及び法整備面からAntinny対策をする必要がある。

| | コメント (2) | トラックバック (1)

2006.03.11

[P2P][DHT]第2回DHT(分散ハッシュテーブル)勉強会を開催します!

昨年、筑波大学でDHTオフ会を主催しました。
私や産総研の小島さんがDHTに関するプレゼンを行いました。
参加者は40人を超え、積極的に意見交流ができました。

※当日の様子やプレゼン資料は以下のページをご覧下さい。
http://muziyoshiz.jp/20050627.html
http://homepage3.nifty.com/toremoro/study/study.html
http://d.hatena.ne.jp/KazuhiroKojima/20050628

好評につき、今年は「DHT勉強会」と名称もパワーアップして開催します。

講師陣と講演内容は現在調整中です。
また講師は随時募集です。自薦、他薦は問いません。
私もDHT-VPNかセキュリティの話で講演する予定です。

なお開催日時は5月~7月の土または日、会場は現在調整中です。

□募集していること
・協力して頂くスタッフの方
・50名程度が収容できる場所を提供して頂ける方
・講師陣を推薦あるいは紹介して頂ける方

皆様のご協力の程、よろしくお願い致します!

<関連>
DHT勉強会準備トピック(Mixi)

| | コメント (0) | トラックバック (0)

2006.03.07

[Mixi][Blog]私がMixiにも日記をつける理由

Mixiを利用している人ならご存知だと思うのだが、Mixiは日記をつけることが可能だ。とは言っても既にMixi以外のBlog(これを外部Blogと呼ぶことにしよう)を使っているユーザも多いので、Mixiで外部BlogのURLを指定すれば、Mixiでも外部Blogのタイトルをマイミクに周知する事が出来る。ということはMixiを利用することだけで友人のBlogは、RSSリーダのように簡単にチェックできることになる。

さて、こうように書くと外部Blogを書けば、わざわざMixiに日記を書く必要がないのではないかと思われるだろうが、実はそうではない。私の実体験を元にその理由を書いてみる。

□Mixi日記と外部Blogはアクセス障壁の高さが違う

例えばマイミクの日記を見ようとする。Mixiの日記に書いてある場合にはそのまま簡単に見ることが出来る。しかし外部Blogを利用している場合、タイトルしか表示せずに、実際に中身を見ようとすると別ウィンドウを立ち上げる必要がある。これはMixiを使っている人にとっては、とても面倒と感じる作業だ。
とても些細な事だと考えてしまうが、Mixi日記をつけているマイミクと外部Blogをつけているマイミクでは、(少なくとも私は)圧倒的にMixi日記の方を見る。

モバイルMixi頻度が高い人はより障壁が高い。フルブラウザ携帯を使わない限り外部Blogは見ることができないからだ。私はMixiを専ら通勤途中で見るので、モバイルMixiから外部Blogが見えないという障壁は大きい。

上記なことを痛感して、私もMixi日記をつけるようになった。

□Mixi日記と外部Blogはコメント数が違う

Mixi日記をつけて実感したのはコメントの数、そして内容だ。

外部Blogでは他の人からもコメントを見ることが出来ないせいか、なかなか思い切った事が言えないし、コメントするのには勇気が要る。しかしMixi日記の場合には、その人を知らない人以外は(基本的には)
日記を見ないため、気軽にコメントできる。特に面白いのが自分の複数のマイミクが、やはりお互いマイミク同士の場合が多く、コメントに対する「コメント」が付きやすいことだ。これによってコメントの連鎖生産状況が生まれる。もちろん、マイミクがつけたコメントにレスをしないと、コメント数が伸びないのは言うまでもない。
Mixiでは自分がコメントした日記を簡単にチェックできるのもこのようなコメント連鎖を生み出す大きな要因だろう。

もう一つコメント連鎖を生む要因は自分の日記に対してコメントをしてもらうと、やはりマイミクの恩義として、その人に対してもコメントしないといけないという一種の義務感(あるいは弱い強迫観念)が生まれることである。
そのように考えるとコメント連鎖には

[連鎖1]一つの日記に対するコメント連鎖(コメントスパン小)
[連鎖2]マイミク間の日記によるコメント連鎖(コメントスパン大)

という2つの循環があることに気づく。

もう少し心理的なアプローチをしてみよう。

このマイミク間の日記によるコメント連鎖は一種の「報酬」的な行為と考えられる。つまり、コメントをすることにより、その人はコメントのレスという「報酬」をもらえることを(実は当然のように)「期待」している。この期待を日記管理者がきちんと応じれば、コメントをする人もというコメント「作業」のリスク(これはコメントを書くに要する時間が失われ且つ手間がかかるということ)を超えて、「報酬」によるメリットが大きくなり
何度もその人に対してコメントをするということになる。この報酬とはよく考えるとコメントによる「自己表現の達成」とレスによる「自己存在の証明」の2つが明確に実現することに他ならない。

□自己開示とコメント連鎖の深い関わり

このように心理学的なアプローチでもコメント連鎖はとても面白い。
このMixi日記のコメント連鎖は拡大解釈するとMixiコミュニティのコメント連鎖の考察にも応用できるだろう。

さて、日記というのは実はマイミクに対して自己開示をすることである。自己開示をするということは、他人からみれば親近感を持つことに他ならない。親近感を強く持たせるには、実は研究やビジネスの事より、自分の身近な出来事を日記に書いた方が良い。

というのは、そのほうがマイミクにとって共通項が多く共感しやすからだ。Mixiは基本的にマイミクしか見ないものだから、いわゆる「ぶっちゃけトーク」ができる。これがBlogと大きな違いである。自分の内面を曝け出すほうが、表面的な日記を書く人よりも共感できるのである。このようなことで、マイミクが日記を通じてさらに親しくなるという現象は往々とある。

親近感が増すと、コメントをしたくなるのが世の常である。
何回かコメントをするとより親近感が強くなる。これは、実は心理学的にも興味深い現象である。

一般的に、何回も繰り返し会う人の方が、滅多に会わない人よりも親近感が増す。このリアルでの心理現象がバーチャルなMixiでも適用できるのだ。

このようにMixiという「特定な人」しか見ない環境により、日記による自己開示が進み、結果的にで親近感が増すのである。その現象として現れるのが、コメント連鎖ということになる。

長文になってしまい申し訳ない。
次回は私が実践しているMixi日記とBlog日記の差別化戦略について書く予定だ。

| | コメント (2) | トラックバック (0)

2006.03.06

[音楽]購入したCDラックが、かなり良い

引っ越しのときに1000枚ぐらいあるCDを段ボールにしまっていたのだが、さすがにそろそろ片付けるためにCD購入をしようと考えた。

一般に通販のほうがCDラックが安いということで、いろいろなカタログを見たのだが、なかなか気に入ったものがない。

私のCDラックに対する条件は

□CDがたくさん収納できること
□ラックが省スペースであること
□スタイリッシュであること
□安価であること

であった。

いろいろと探して見つけたのがAmazonで見つけたCDラック。

商品名からわかるように464枚CDが収納できる。ラックの位置を変えるとDVDも収納可能だ。
このラック、買ってからわかったのだが、使い勝手がとてもよい。

メリットとして
□CDのラベル面がやや上方になるように、取り出し口が傾いている。そのため立っていても座っていてもCDが見つけ易い。
□上記設計のために、CDがラックから取り易い。もちろんラックへCDを片付けるのも楽だ。
□棚板毎(というか棚棒?)に各一つずつCDストッパーがついている。CDの収納や分類にとても便利だ。
□464毎CDラックの場合、なんと2つのラックに分かれることができる。2つのラックを縦に並べて高さを出してもよいし、2つを横に並べて背の低いラックとして見せることも可能だ。もう一つラックを買えば3つ縦に並べることも可能だろう。その場合天井が高い部屋の場合には有効でしょう。

デメリットとして
□説明書がやや読みにくい。何回か組み立て方法を間違えた。
というのがあるが、これは何とかなるだろう。

464枚もCDがない!という方姉妹版のCDラック Aladdin232 メタリックグレイもあります。こちらは先ほどのハーフサイズで232枚CDを収納できる。これを2つくっつければ、前者と同じ収納力になります。

これからも、気に入った製品や本を(不定期ですが)紹介しますね。

| | コメント (0) | トラックバック (0)

2006.03.05

[Winny]ウィルス対策の有効な手法を検討する

各種情報漏洩が蔓延すると、もうWinnyがファイル共有で著作権対策云々というよりも早急にウィルス対策をしなければならない。国家レベルでの機密漏洩が相次ぐことは国家戦略的にも、とてもまずいことである。

長期的な戦略としてウィルス作者にプレッシャーをかけることが大切である。海外のウィルス作者逮捕のインパクトを各種メディアが報道して抑制力をかける戦略もアリだろう。
また、お手軽ソフトでウィルスソフトの亜種でも作っている人を逮捕することも考えられる。もしWinnyBBSを使ってウィルス作者が怪しいファイルをアップロードすると宣言したなら、WinnyBBSの「バグ」からウィルス作者を特定できる。または犯人捜査に懸賞金を掛けるとか。
亜種を作っている人はほとんどが愉快犯なので、このような手法で少しは抑制力がかかるだろう。

それよりも即効性のある方法として

□EXEなどの実行ファイル系を画面に表示させないパッチ
□X(例えば20)文字以上のファイル名を画面に表示させないパッチ
□圧縮ファイルでEXEなどの実行ファイル系を含んでいるものを表示させないパッチ
□上記らの各種ウィルス感染の可能性があるファイルをWinnyキャッシュから自動的に削除させるパッチ

というのを提供する必要があるだろう。つまり、ウィルス感染のあるファイルを踏まなければ、ウィルスに感染することはない。ウィルス感染してからの対策はとても複雑なので、予防するのが一番手っ取り早い対策である。

皆様はどのようなウィルス対策手法を考えているでしょうか?

| | コメント (2) | トラックバック (0)

2006.03.03

[Skype]Skypeの本質は多対多VPN

SkypeはVoIPとしてとても有名なシステムだが、その本質は多対多VPNだと考えている。
Skype自体はセキュアなVPNインフラであって、その上に対してVoIP,チャット,データ等どのようなものでも流通してもよいのである。SkypeがAPIを提供してから、私はますますそのような見方が強まってきた。

多対多VPNを多くの人に提供するのは、コスト面やスケーラビリティからサーバ=クライアント方式では厳しい。ということで、P2Pシステムを採用したと推測できる。もちろん、NAT越えなどユーザを意識したシステム作りもシステム的には興味があるのだが、本質的にはVPNサービスであることを忘れてはならない。
このように書くとSkype社がSkypeをインフラと強調している理由がわかるだろう。

Skypeの戦略はコンタクトリストを武器にして、相手に対するコネクティビリティ(接続性)をぎっちり握ってしまうことである。Skype APIを使えば相手と連携するシステムが簡単に構築できる。ただし接続するには相手とコンタクトリストを共有する必要がある。これはとても重要な意味がある。

例えばメールアドレスがあれば、他人とメールすることができる。つまりコネクティビリティはメールアドレスを保持すれば有することができる。このメールアドレスは各ISPが払い出す。

しかしSkypeやSkype APIを使ったシステムはSkypeが完全にコンタクトリストを管理していることに注意してほしい。Skypeはコンタクトリストを利用してユーザに対する様々な分析やそれを使った広告ビジネス等を展開できる可能性がある。

話を少しずらしてWeb2.0のことについて考えてみよう。Googleはインターネットというオープンな世界をうまく利用して情報共有という企業メリットを生かしてWeb2.0の覇者になった。ではWeb2.0の後の展開は何だろうか?個人的には個々があらゆるサービスを「ある特定の人」と共有することと考えている。つまり完全なオープンでなく、半クローズドな世界である。これはSNSの世界に近い。
このような世界を仮にWeb3.0とすると、それを今実現できるのはSkypeだ。Skype APIを使えばどのようなサービスも基本的には「知人」と共有することができる。

このようなことをMixiの日記に書いたら、マイミクの方から意見を頂いた。
それはWeb3.0の世界はなんらかのIDを元にすべてのサービスのコネクティビリティを保証する時代がくるのでは?ということである。IDを使ってメール、チャット、ファイル共有、あるいはWordやExcelなどのアプリケーションの同時共有などが「特定の人と」できるのである。

このような概念はP2Pの世界で言う分散ハッシュテーブル(DHT)の思想にかなり近い。
ただし通常のDHTとSkypeで違うのは
□Skypeは知人同士でしかコネクティビリティがない。
□DHTはどんな人ともコネクティビリティが可能。

ということである。もちろんDHTがSkypeのようなコネクティビリティを実装することは可能だ。
SkypeとDHTのどちらがWeb3.0の覇者になるのか、まだ私には見えない。ただし、オープンな世界とクローズドの世界というのは、交互に現れるものだから、今度はSkypeのような知人だけにしかコネクティビリティがないシステムのほうが人気が出るかもしれない。

| | コメント (0) | トラックバック (2)

« 2006年2月 | トップページ | 2006年4月 »