«前の日記(2004年04月18日) 最新 次の日記(2004年04月20日)» 編集

Matzにっき


2004年04月19日 [長年日記]

_ [OSS]SCO問題

kouさんのツッコミから。

あと、バザールの基本は好きな者に好きなようにつついてもらう点だと思うのですがSC○みたいなのに粘着されてモチベーション下げるような事も避けたい所ですし。

SCO問題は、Linuxが主題になっているのでオープンソース問題であるかのようにとらえられがちだが、 実際にはオープンソースとはまるで関係ない。彼らの主張は法廷と法廷外で全く違う点に注目する必要がある。

法廷での彼らの主張はこのようなものだ。

IBMはSCOとの契約に反して、SCOが権利を持つUNIXに含まれる技術をLinuxに持ち込んだ

つまり、その本質は「契約違反」である*1。 それは真実かもしれないし、そうでないかもしれない。 が、少なくともこの論理ではSCOと契約を結んでいないものは関係ない。 そもそも契約を結んでいないのだから、契約違反は発生しえない。

つまり、たまたま訴訟の一部に(オープンソースソフトウェアである)Linuxが関連しているという以上には、 この訴訟とオープンソースソフトウェアは関係がない。 これはオープンソースでない他のソフトウェアでも発生しうる問題だ。

ところが、法廷外ではSCOは

LinuxにはSCOが権利を持つコードを含んでいる。 だから、その権利によってLinuxを利用するためにはSCOとライセンスを結ぶ必要がある。

でなければ、(IBMのように)訴えるぞ。

ほのめかしたのである。みごとなFUDだ。

こちらの主張が真実である可能性はかなり低い。 迷惑な話だが、上のような「ほのめかし」程度では罪になるとまでは言えないような気がする。 粘着されるのはたいへん迷惑な話であるが、オープンソースが世間的に注目されるようになると、 なんらかの攻撃の対象になるのは避けられないことのような気がする。

静かにほそぼそとフリーソフトウェアを開発していた頃は平和だった。 が、それで飯を喰える状態ではなかった。

オープンソースが注目される今は、飯は喰えるが、粘着される危険性は高くなった。

なかなか、万事うまくいくとは行かないものだなあ。

*1  最近、SCOは著作権を争点に加えたが、成功しているとは言えないなあ

_ [OSS]沢山の目

続いてkouさんのツッコミの前半から。

つい最近こういう記事もありました。
>「UNIX開発者のバックドアを思い出せ」−Linuxの軍事利用に警鐘
><URL:http://www.itmedia.co.jp/enterprise/0404/14/epi04.html>

この記事を読んで思ったことは、Eric Raymondが語った「沢山の目があれば、どんなエラーも恐くない」*1という言葉は誤解されているということだ。

もちろん、ソースコードが公開されていて、チェックすることができる人がたくさんいれば、 バグは早く見つかるし、対応も速い。

が、だからと言って、どんなにレビューアーがいようと、何人開発者がいようと、 ただそれだけでは、問題が発生する前にバグが発見されるなんてことは決してないということだ。 Ken Thompsonがバックドアを仕込んだ経緯は知らないが、 そのバックドアは14年間決して利用されず、問題は発生しなかったのだろう。 よって積極的にはチェックは行われず、発見もされなかった。

オープンソースの良さは、問題が起きちゃったらすぐに対応できる点だ。 一度でも問題が起きたら困るケースで、 問題が発生する前にバグを発見するためには、地道なテストスイート作成と 繰り返しテストすること、積極的なコードレビューが必要だ。 それはオープンソースだろうとそうでないソフトだろうと同じこと。

さて、ITmediaで紹介されていた。「ダン・オダウド氏」なる人物の主張は

  • Linuxは「誰でも」コードをcontributeすることができるので、 信頼できないコードが組み込まれるかもしれない。
  • Ken Thompsonの例からも言えるように、ソースコードがあるからといって信頼できるわけではない。
  • よって、Linuxを軍事関係に利用すべきでない。

前二者には限定付きで同意できないことはない。 確かに、アメリカと利害関係が対立する人物がLinuxにコードをcontributeして、 そのコードに発見しにくい巧妙なバックドアを仕掛ける「陰謀」が存在する余地が まったくないと断言するのは難しい。

もっとも、そのためにはバックドアは

  • 発見されないくらい目立たない(できれば小さい)コード
  • かつ、意図が分からない程度に複雑

という相反する要求を満たし、 かつバージョン管理でそのコードがいつ誰によってコミットされたかが明らかになる危険性をかいくぐる必要がある。 もちろん、天才的コーディングでバックドアを用意し、 バージョン管理サーバーもクラックするのだろう。映画みたいだ。

そのような危険性があるので軍事関係にはLinuxを使わないとする。 だとしても私はいっこうに構わないのだが、仮にLinuxを使わないのだとすると、 代わりになにを使うべきか。「安全だと立証されたソリューション」とはなにか。

Windows? Solaris? AIX?

上記の困難を乗り越えてLinuxにバックドアを仕込むという 陰謀説を信じることができる人が、WindowsやSolarisなら大丈夫と言える感性が私には不思議だ。 アメリカ企業たるMicrosoftによって作られているソフトウェアなら安心ということだろうか。 私には、ロシア人開発者よりもマイクロソフトの方がよっぽど野望を持ちそうに思えるのだが。 第三者が検証することは事実上不可能だし。

たいへん(アメリカ的)愛国心のある話ではあるが、論理的ではない。

あるいは「安全だと立証されたソリューション」とは、 身元がはっきりした人間だけを用いてコンピュータは使わないことか。 論理的だが、現実的ではない。

いや、身元がはっきりしているはずの人間が内通者になるのはスパイ映画では常道だ。 誰も信じてはいけない。安全などないのだ。Trust no one.

追記:

KLさんのツッコミによれば、

「安全だと立証されたソリューション」...というのは、Green Hills SoftwareのOS(フットプリントがLinuxに比べ極めて小さく、ソースコードは米航空連邦局の監査をパスしている)ということになります。

だそうだ。うーん、それならそれで論理的ではあるが...。

ということは、軍事目的のOSはすべてそのような小さなOSしか使うなって主張なのかな。 論理的ではあっても、非現実的ではないかなあ。

*1  正確な文言は忘れちゃいました。後で調べておきます


«前の日記(2004年04月18日) 最新 次の日記(2004年04月20日)» 編集