aka LWN JAPAN
[ C H A N G E L O G ]
[Tux]

ChangeLog

ChangeLog
メール版
登録

BIND8.2
ChangeLog
メール版
登録

ChangeLog

BIND 8.2 はフリーソフトではない?(Debian の BIND 事件顛末記)

DNS プロトコルを実装した BIND (英語)は、今も昔も Linux とインターネットにとって 欠かすことのできない重要なソフトウェアの一つです。

以下は、Debian の BIND 事件の顛末記です。

BIND8.2
まずは、 LWN の 9月9日付けの Leading Items (英語) からの抜粋です。
BIND8.2
BIND 8.2 は、どの程度「フリー」なのでしょうか?

Debian 開発者の方々は、 BIND 8.2 リリースの ライセンスにおける制限 (英語) を審査した結果、(DNSsec のサポートのため) RSADSI(現 Security Dynamics)社が RSA アルゴリズムを実装した DNSsafe として知られるコードが含まれており (※ そのため Bind の他の部分とは性格の異なる DNSsafe のライセンスが含まれており)、 これにより BIND は DFSG(Debian フリーソフトウェアガイドライン) (日本語。英語) 互換ではなくなったと結論を下したようです。

LWN では、BIND の管理者である ISC (インターネットソフトウェアコンソーシアム) (英語)の事務局長 David Conrad 氏と電子メールで 話し合いを持たせていただいたところ、 DNSsafe ライセンスの追加は、 そんなに重要な問題にはならないと考えられていたことが分かりました。 というのも、 ISC が同コンソーシアムの弁護士にそのライセンスを調査してもらったところ、 RSA の追加は認証にのみ使用されるので、 ソフトウェアは依然として自由に輸出できるということ が判明したためのようです。

けれども、フリーで再配布と輸出が可能であるということは、 必ずしも DFSG 互換と同じということではありません。 DFSG に違反している DNSsafe ライセンス制約の項目 がいくつか、Debian 開発者の方々により見つかっています。 特に:

「DNSsafe ソフトウェアは、BIND ソフトウェアと別個に 利用されたり配布されたりすることはできません。 あなたには、この製品を、 バンドルされた、統合したものとして 利用、または再配布する権利だけがあります。」
この項目は、 ソフトウェアの再配布を制限していることから、 DFSG をいくつかの点において違反します。 また、
「DNSsafe ソフトウェアは、 RFC 2065 とその後継 RFC に明記されている、 DNS(Domain Name System)のリソースレコード(RR: Resource Record) の認証を提供するため『だけ』に利用することができます。 あなたは DNSsafe ソフトウェアを他の目的で利用するために、 あるいは、その暗号化機能をエンドユーザが 他の目的で利用できるように、 BIND ソフトウェアを修正することはできません。」
このことは、DFSG の「利用」規定に違反します。さらに、
「DNSsafe ソフトウェア自体を修正する場合には、 文書化された API を修正してはなりません。 そして、(もし修正する場合には) 依存している特許やその他の著作権のすべてを利用する権利を含めた、 あなたの修正を、RSADSI 社が、 利用、修正、再配布できることを認めなければなりません。」
この項目には、いくつかの潜在的な問題があります。

と言っても、このライセンスの(あれもダメ、これもダメ、という) 言い方が、何か感じ悪い、、、ということが問題なのではありません。 問題なのは、 BIND の他の部分とは裏腹に、 DNSsafe のコード自体は、単純に、フリーソフトウェアではない、ということです。 RSADSI(現 Security Dynamics)社が所有する米国特許によって、 米国内で使用される RSA アルゴリズムの実装はすべて、 RSADSI の特許に引っ掛かります。 DNSsafe ライセンスは、商用利用と非商用利用の両方における 利用と再配布を可能にしていますが、 (DNSsafe ソフトウェアは) 本当にフリーソフトウェアの財産の一部であるとは言えないのです。

これは、どう取り扱われるべきでしょうか?

どうやら Debian の開発者の方々は、最初に ISC とコンタクトを取って、 この問題についてできることは何もない、という印象を受けたようです。 けれども、 RSA コードを含まない BIND へ分岐させるという選択肢は、まだあるかもしれない、 という David Conrad 氏のコメントを LWN が伝えると、 彼らは非常に興味を持ちました。 これはおそらくこの問題への最良の解決法だと思われます。 Debian 開発者の方々は、自分達が使用するソフトウェアを 完全にフリーに保つためには、一部の機能を無くしたって構わない、 という方々なのですから。 そういうわけで、 そのようなコード分岐の生成と管理が、 ISC にとって技術的に現実的なことなのかどうかを、期待して待つことにしましょう。

インターネットにおける Linux にとってこれほどまでに 重要なソフトウェアの一つであるBIND を、 (少なくともこの一時期において RSA の特許が切れるまであと1年以上も待たされることなどなく) 優れてメンテナンスされたフリーソフトのままにするということは、 すべて方が興味のあることでしょう。

BIND8.2
以上は、LWN の 9月9日付けの Leading Items (英語)でした。

そして、その直後、 John Gilmore 氏から LWN へとメッセージ(英語)が寄せられ、それに対して(devian-devel 上で) Bdale Garbee 氏のコメント(英語)がありました。

John Gilmore 氏(英語)は、 CodeFusion や GNUPro で知られる Cygnus Solutions 社(英語)の創設者の一人です。

※ Bdale Garbee 氏は、Debian の BIND パッケージ管理者です。

BIND8.2
Gilmore 氏は、 特許である RSA 技術を BIND で利用できるようにするよう DNSSEC ライセンスを取り決めた人物として、 BIND の作者がコードのライセンスを受けた理由、 また、RSA が彼らにコードを使用するライセンスを与えた理由は、 DNS 中心の公開鍵のインフラストラクチャを 思いきって発進させるという 共通の有益な目的のためだった、と説明し、 Debian もできるだけこの目的を支持するべきだとしました。

そして、Debian に、この RSA コードに対して 「フリー」で互換性があり高速な、代替物を書くことを勧めました。

そうすれば、 特許期間が終了して、BIND の配布や管理がやっかいになったときに、 ISC は、その「フリー」な代替物を使用することが可能になるからだ、 ということです。 (※特許と著作権(に基づくライセンス)は別の権利(ライセンス)なので、 ライセンスに明記していない限り(そして実際明記されていませんので) 特許期間が終了した後も、 他の部分とは異なるその特別なライセンスを順守する必要があるため。)

Gilmore 氏のこの論旨に対し、 Debian の BIND パッケージ管理者である Bdale Garbee 氏は、 Debian には、DNS 中心の公開鍵のインフラストラクチャ、という目的を 傷付けるつもりはまったくなく、ただ、RSA コードをディストリビューションに 含めることができないだけだ、とコメント(英語。debian-devel)しています。

けれども(下記記事にあるような過程を経て)解決を見ることができたので、 喜んでいる、と言っています。また、 Debian 開発者が BIND のための(RSA)代替コードの開発をサポートするかどうかは、 まだ分からない、としています。

BIND8.2
以下は、この件についての debian-devel のスレッド(9月8日〜9月12日)(英語)の要約です。
BIND8.2
BIND8.2 のライセンスが DFSG 互換でなくなったので Debian が BIND をディストリビューションに 含めるのを懸念していることに対し、 LWN の Liz が、BIND を管理している ISC の David Conrad 氏に問い合わせたところ、 「ISC は RSA コードを含まない分岐の 作成を考えることができる」とのことでした。

一方、Debian は ISC (の別の人)にコンタクトを取っていて、 ISC 側はこの件に対し対策を取るつもりはない、という印象を受けたため、 BIND パッケージは Debian の「main」から「non-free」へ移動されていました。

そこで、上記の David の反応が debian-devel に伝えられました。

Debian 開発者/ユーザには、 BIND を「フリー」に保つために必要なら機能的なトレードオフをしても良い、 という考えを持つ人が多かったので、 Bdale Garbee 氏(Debian の BIND パッケージ管理者)は、 BIND を RSA 「ナシ」(「main」ツリーに入れる) と「アリ」(「non-free」ツリーに入れる)の両方の構築、というのが良い妥協案 だろうとしました。

※ うかつにも「アリ」と「ナシ」が逆でした。 [訂正:1999/09/28] Thanks to 大沢さん(Debian Project)

そこで David (ISC)から、 (※コンパイルオプションの) 設定時の「--no-rsa」オプションが提案されましたが、 これに対する Debian 側の反応は、「悪くはないが不十分」で、 ベストなのは、 (Debian は RSA コードを「main」ツリーに入れることができないので) RSA ライセンスされているコードをまったく含まない BIND のソースツリーを得られる方法だということでした。

最終的には、ISC が (bind-8.2.2.tar.gz と bind-norsa-8.2.2.tar.gz のような) 2つの tar ファイルを作成することになりました。 bind-norsa-8.2.2.tar.gz は、もちろん、DNSsafe コードを抜き取ったものです。 こうして、この問題は「クリーン」に解決されました。

BIND8.2
以下は、LWN 9月16日付けの Distribution (英語)から抜粋です。
BIND8.2
Debian と ISC は、どうやら 友好的な解決 (英語) を見いだしたようだという嬉しいお知らせです。

「bind-norsa」パッケージ(※ BIND NO RSA … RSA を含まない Bind パッケージ)が、bind パッケージとともに配布されることになる予定です。

この問題を賢明に取り扱ったすべての関係者の方々に 賞賛が与えられるべきでしょう。 この結果は、私達すべてにとってプラスとなるでしょう。

詳細は、上記記事(日本語。英語原文)や、 Slashdot (英語)のコメントなどをご覧下さい。

BIND8.2

ChangeLog メール版登録(無料)
情報提供(御意見、御感想、補足・更新情報、新規ニュース)はお気軽にどうぞ
About Us  ChangeLog Mail  Mail To ChangeLog  Linux 野郎  DISCLAIMER
"Linux 野郎 なら ChangeLog" (^-^) is a catch phrase for ChangeLog, courtesy of Hideyuki Higa.
Linux (R) is a registered trademark of Linus Torvalds.
Copyright (C) 1999 Metachannel Systems Corp. all rights reserved. ChangeLog
Copyright (C) 1999 Eklektix, Inc. all rights reserved. Linux Weekly News
If we fail, we WILL lose the war. Dave Whitinger (Mozilla Project)