« 「青木まりこ現象」異論あり! | トップページ | 入れ替え戦 甲府先勝! »

2005.12.07

洗脳と宗教とハッキング

以下、妄想です。ケントンプソンや宗教とかについて脈絡無くぼーっと考えたことを、整理するために文字にしてみただけだったりします。

かなり長くなってしまったので、続きは下をクリックしてください。 
 

 
基本的にTVなんかに出てくる催眠術はまったく信用していないのですが、仮に、誰がやっても確実に命令に従わせる効果がある催眠術の奥義があったとします。相手に実行してもらいたい命令をある呪文ともにあたえると、任意の相手が確実に言うことをきいてくれるとします。

で、もし私がこのような呪文のオリジナルを発見したとします。そして、自ら教祖様になり新興宗教を興したとします。さて、この呪文をどのように利用するのが最も儲かるでしょうか?

周りの人間ひとりひとり順番に「教祖を信じろ! 教祖にお布施をよこせ!」と命令していってもいいのですが、これはなかなか疲れそうです。

やっぱり、ネズミ講方式ですかね。

(1)「教祖にお布施しなさい」
(2)「(1)と(2)と同じ呪文を、周りの人にかけなさい」

この命令が論理学的に正確かどうかはおいといて、これがうまくいけば、信者の一人に呪文をかけさえすれば、あとはネズミ算式に増えていき、教祖たる私は黙っていてもお布施で大もうけできそうです。

いまさらですが、まさにドーキンスの言うところのミームという概念です。世界的な宗教になるには、上の呪文に「他宗教の信者をやっつけろ!」という教義を加えてやればいいかもしれません。現在まで繁栄している大きな宗教の教義そのものですな。
 
 
さて、宗教という概念を持たない宇宙人がやってきて、まったく予備知識無しで人類社会を観察したとします。おそらく彼らは悩むでしょう。なぜ、数十億もの人間が、お釈迦様やイエスの教えを信じ、いまだに広めているだろう?

で、宇宙人達は必死になって人類のDNAとか脳神経とかを調べるわけですが、そんな還元主義的な方法でいくら研究しても、宗教の秘密は絶対にとけないでしょう(……たぶん)。
 
 
この辺から宗教のお話がコンピュータのお話に繋がっていくわけですが、単純に「肉体がハードウェアで宗教がソフトウェア」なんて例え話をすると、お話が矮小化(?)されてつまんなくなります。ミームや宗教をコンピュータウイルスやワームやチェーンメールに例えるのは簡単で、ある意味適切だとは思いますが、本質はそこじゃないと私は思うわけです。

(まったくの余談ですが、ブロガーの間では「ミーム」というと「○○バトン」の事を指すらしいですな)
 
 
上の宇宙人達が宗教の仕組みを解くためには、DNAも含めて人間の体をどんなに調べても無駄で、自らが神や仏を信じてみる必要があるのかもしれません。

最初に述べた仮定の呪文にしても、既存の宗教にしても、それによって引き起こされる行動は設計図(生物の場合はDNAなど)からは絶対に予測できない……というのがポイントでしょう。DNAから肉体が作られる過程で、外部から強制的に「宗教的な行動」を刷り込まれるのですから、いくらDNAを調べてもダメなわけです。
 
 
ここで強引にコンピュータ関連の話題に移ります。

一般のプログラムは、「ソースコード」と呼ばれる人間が書いたプログラムを、コンピュータが理解できる「実行ファイル」に変換して、はじめて動くことができます。このソースコードから実行ファイルへの変換を「コンパイル」といいます。

上のお話での「DNA」を「プログラムのソースコード」に例えると、「人間の行動」は「コンパイルされた実行ファイル」と例えられるかもしれません。
 
 
仮に、ハッカーが密かに世界中のコンピュータに、悪のプログラムを仕込もうと考えたとします。目的のシステムに「これこれこーゆー悪事をしろ」というプログラムを密かに追加するわけですな。

コンピュータウイルスを利用する方法もありますが、そのような強引な手法はハッカーとしてはちょっと下品だし、途中でばれる可能性が高いので、もっと上品(?)なハッキング手法を考えます。

リナックスなどオープンソースのシステムは、プログラムのソースコードが公開されています。利用する人は、このソースプログラムをコンパイルして実行ファイルにするわけです。ハッカーさんは、目標のシステムのソースコードに悪のプログラムを追加して世界にばらまけばいいわけですが、ソースコードの中身は世界中の人がチェックしているので、いずればれてしまうでしょう。

ソースコードそのものは変更せず、実行ファイルにコンパイル作業をする過程において、悪のプログラムを追加できたらどうでしょう? もしそれが可能なら、いくら世界中の人がソースコードをチェックしても、実行ファイルがどのように動くのかは想像できません。

そのためには、世界中の人が利用している「コンパイル作業のためのプログラム(コンパイラ)」に仕掛けをすればいいわけです。

つまり、コンパイラに対して

(1)「「目的のシステムのソースコードをコンパイルするときには、「これこれこーゆー悪事をする」ようにプログラムを仕込め」というプログラム」

を仕込むわけですな。

とは言っても、このコンパイラにも、もちろん元になるソースコードがあるわけですが、このソースコードに仕掛けをしても発見されてしまうのは同じです。

しかし、「コンパイラ」は他とは決定的な違いがあります。コンパイラ自身もコンパイラで作られるのです。

すなわち、上の(1)のプログラムに加えて

(2)「「コンパイラをコンパイルするときには、(1)と(2)の同じ仕掛けを仕込め」というプログラム」

を仕込んだコンパイラの実行ファイルを一度作り、それを一度ばらまけばいいわけです。
あとは、悪のプログラムを作り出すコンパイラが、コンパイラにより作り出されていくだけです。これは設計図であるソースコードをいくら見ても絶対に発見できませんので、代々悪の性質が受け継がれて世界に広がっていくわけですな。
 
 
このおそるべきハッキング手法は、なんと実際に行われたことがあります。UNIXを作ったケントンプソンと言う人が、UNIXの創世記(70年代頃)に実行し、83年にチューリング賞の受賞講演で暴露するまで、おそらく誰も気がつかなかったらしいです。

読みやすい解説
自分のコードを出力するプログラム(YABUKI Taro)
Ken Thompson氏(えびめも)
Reflections on Trusting Trust Ken Thompson(Association for Computing Machinery)
 
 
てなわけで、長くなってしまったので、無理矢理結論に入ります。要するに、宗教というのは、非常にハッキングに似ているなぁというお話でした。これからの宗教家は、教義を考えるにあたって、厳密な論理学とかオートマトンとかコンピュータアルゴリズムとかの知識が必要かもしれません。
 
続く……かも。
 

|

« 「青木まりこ現象」異論あり! | トップページ | 入れ替え戦 甲府先勝! »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/18696/7504494

この記事へのトラックバック一覧です: 洗脳と宗教とハッキング:

« 「青木まりこ現象」異論あり! | トップページ | 入れ替え戦 甲府先勝! »