WirelessWire News Philosophy of Safety and Security

by Category

オープンソース ソースコード コミュニティー イメージ

自由なソフトウェアと抗議と倫理の「(不)可能性」について

2022.05.10

Updated by yomoyomo on May 10, 2022, 18:15 pm JST

大変ごぶさたしております。実に約5年半ぶりになりますが、またこちらで書くことになりました。ブランクが長かったため、ここへの文章の書き方を自分でも忘れてしまったところがあるのですが、稲田豊史氏の「ウェブは最初に結論を書く、くどくど掘り下げて説明しない、とにかく簡潔に」という金言に逆らい、地味な話題についてくどくどと書いていこうと思います。

いや、結論だけは先に書いておきましょうか。銀の弾はない、それだけです。

2022年2月にロシアがウクライナへの侵攻を開始して早くも2カ月以上経ち、ロシア(のプーチン大統領)の甘い見通し、予想以上のウクライナの抵抗、多くの国のウクライナへの支援などと相まって、現状、ロシアが手こずっている印象が強いですが、まだまだこれからが本番であろうことは予想できます。

一昨年にコロナ禍が始まって間もなく、2020年代は後に「COVID decade」といわれることになるのかと考えてワタシなど鬱々となったものですが、そのときはまさか2020年代が第三次世界大戦のディケイドになりかねないとは思いもしませんでした。

さて、ロシアのウクライナ侵攻への抗議はテック界隈でもいろいろな形で行われましたが、少し変わったものでは、「プロテストウェア(protestware)」と呼ばれるフリーソフトウェア/オープンソースソフトウェア(FOSS)の利用があります。

プロテストウェアが行った「抗議」は、反戦やウクライナへの支援を訴えるメッセージを表示する他愛もないレベルだけでなく、ロシアやベラルーシにあるコンピュータのファイルを消去する、要はワイパー型マルウェアと同等の動作を行うかなり物騒なレベルまであり、ロシア最大手の銀行が、リスクを回避するためユーザーにソフトウェアのアップデートを実施しないよう呼びかける騒ぎにもなりました。

FOSSは当然ながらソースコードが公開されており、今回の「抗議」機能の追加についてもソースコードの修正を追えたわけですが、上記の悪意ある機能を追加するコードは、Base64でエンコードされたデータ内に隠匿されており、発見を難しくしていました。

プロテストウェアによる抗議について、ワタシの観測範囲で好意的な意見はほぼありませんでした。ワタシ自身同様でしたが、それはWiredに掲載された「戦争に抗議する『プロテストウェア』が、オープンソースエコシステムの信頼を揺るがしている」でも最初に指摘されている、人気のオープンソースライブラリの作者が、オープンソースソフトウェアに金銭的支援をしない大企業に業を煮やし、「ただ働きはもうしない」とライブラリを意図的に使用不能にする変更を行った、今年はじめの事件を真っ先に連想したということも要因です。

さらにいえば、その事件の少し前、2021年の年末には、Apache Log4jの任意のコード実行の脆弱性問題とともに、オープンソースソフトウェアの開発者が、大企業を含むその利用者からしかるべきリソースの支援を得ることなく、少数の開発者が(そのライセンスが何ら保証しない)バグの早期修正を要求される、大企業のアウトソーシングチーム扱いされている問題も浮き彫りになっています。

この少数のボランティア開発者にオープンソースソフトウェアのメンテナンスを依存する問題は、プロテストウェアの話にもつながる要素が実はあり、かつて「伽藍とバザール」においてエリック・レイモンドが「リーヌスの法則」と呼んだ「目玉の数さえ十分あれば、どんなバグも深刻ではない」という仮説は、大多数のオープンソースソフトウェアには当てはめるのが厳しい現実が見えてきます。

それに加えて、開発者という内部者による破壊行為、妨害行為の脅威が深刻になれば、オープンソースの安全性、信頼性の根本的な問題にかかわることは容易に理解できます。今では一種のインフラの役割を果たしている大規模なオープンソースプロジェクトのイメージも悪化しかねません(そちらは開発者の数が十分であるにも関わらず)。

プロテストウェアによる抗議の動機となったと思われる、平和や反戦の願い、侵略国家という「悪」の力を削ぐのに貢献して「善」を為したいという欲求自体は、ワタシにも理解できます。しかし、ロシアにあるコンピュータ上でのソフトウェア動作を意図的に防止したり、そこにあるファイルを削除するのは、それがかの地で反戦のために活動する反体制派や外国籍の人達にも多大な損害を与えかねないのは、少し考えれば分かる理屈であり、やはりオープンソースの武器化は危険すぎるといわざるをえません。

さらにしかし、ならば思考実験として、上記の利用範囲の問題がすべて解決可能だとして、他国の軍事侵攻に加担する「悪」にだけ効果を発揮させ得るなら、FOSSの意図的な武器化は肯定されるでしょうか?

されない、とワタシは考えます。それはそれらのライセンスが謳う自由を踏みにじるものであり、越えてはならない一線だと思うわけですが、異論もあるでしょう・・・と書いていて、昔、Economistに掲載された、民主国家の国民の自由を制約すれば安全につながるとしても、自由を犠牲にしてはいけない、と決然と訴えるこの論説を思い出しました。

そもそも、そうした変更を加えたソフトウェアは、「オープンソースの定義」における「個人やグループに対する差別の禁止」に明確に反することになり(あとおそらく「利用する分野に対する差別の禁止」にも)、もはやオープンソースと言えなくなるわけですが、別の側面でそれは重い事実を突きつけます。

上で紹介したEconomistの論説とのアナロジーで考えるなら、民主国家がテロを戦う「片手を背中に縛られた状態」の制約はFOSSにはない代わりに、独裁国家による人道に反する「悪」にさえ、利用の禁止をライセンスで課せないわけです。

この問題が意識されたのは、当然ながら今回が初めてではありません。FSFフリーソフトウェア賞を受賞したこともある著名開発者のマシュー・ギャレットは、2019年に「我々はフリーソフトウェアの定義を再考すべきなのだろうか?」と問いかけています。

ここでギャレットは、既存のライセンスに満足せず、新しいタイプのライセンスを提案する二つの動きを取り上げ、いずれが提案するライセンスも既存のフリーソフトウェアの定義から外れてしまうが、コミュニティが真剣に検討すべき問題を提起していると書いています。

二つの動きの一つは、ソフトウェアをサービスとして提供するビジネスモデルを制限しようとするライセンスの増加です。要はAmazon Web Servicesを筆頭とするクラウドベンダーに対して制約を課し、開発元の提供する商用ライセンスの利用への誘導を目的としています。

ギャレット自身は、この動き自体には好意的ではありませんが、上でも書いたFOSSの開発がボランティア開発者の無償労働に事実上依存し、慢性的な資金不足に陥っている問題を指摘します。それは、オープンソースの開発持続可能性とそのビジネスモデルが一筋縄ではいかない問題にもつながります。

それの(部分的な)解決策として新しいライセンスが作られているのは理解できますし、Open Source Initiative(OSI)にも認証された中国企業と海外企業の契約に配慮した中国発のMulan PSL2も広くはその文脈に含まれるかもしれません。

そして、もう一つの動きは、フリーソフトウェアの定義における「どんな目的に対しても、プログラムを望むままに実行する自由(第零の自由)」は、政府による国民の監視や拘禁や大量虐殺、つまり人民が権利を行使する自由を損なう目的でFOSSが利用されかねないことに異議を唱え、その倫理性を重視したライセンスを作ろうという動きです。

上にも書いたように、その欲求自体は普遍的なものであり、「このソフトウェアは、悪ではなく善のために利用されるべきである(The Software shall be used for Good, not Evil.)」の一文があるJSONのライセンスが作られたのは、今から20年前に遡ります。

ギャレットの文章が書かれた時点で、「オープンソースプロジェクトのための倫理的なライセンス」を掲げ、MITライセンスを基にしたHippocratic Licenseが既に形になっていましたが(現時点での最新版は、2021年10月に策定されたバージョン3.0)、ブルース・ぺレンズマット・アセイといったFOSS界隈のベテランたちは、それが善意の努力であることを認めながらも、概してHippocratic Licenseに否定的でした。

ワタシ自身についても同様ですが、脅威の対象を限定する努力の跡が見られるHippocratic Licenseにしても、何をもって「害を及ぼさない」とするか、つまりは何をもって善(悪)とするかは社会(文化)背景によって変わり、結局は人間の主観的判断に左右されてしまうと考えるからです。それにこういうライセンスを作る人達は、自分達の信条や活動が「悪」とみなされる可能性にあまりに無頓着ではないか、という疑念もワタシの中にあります。

それでも、2021年はじめにはOrganization for Ethical Sourceという非営利団体が設立されており、またオープンソース開発者の倫理性への配慮は、コントリビューター行動規範(Contributor Covenant)の受容などに反映されているように思います。

これらの動き、そしてロシアのウクライナ侵攻を受け、著名なフリーソフトウェア運動の活動家であるブラッドリー・M・クーンは、「コピーレフトはすべての問題を解決はしない。解決するのは一部だけ」において、フリーソフトウェアの支持者は、ソフトウェアの自由をより重要な権利や大義など道徳的な問題よりも優先させている、という批判に対するこれまで避けてきた回答を行っています。

クーンがまず書くのは、かつて(プロプライエタリソフトウェアと対比して)FOSSを「倫理的ソフトウェア」と呼んだ自分達が、「倫理的なソース運動」により、フリーソフトウェアはビッグテックの悪行に加担してきたではないかと批判される側になった皮肉です。これは、Web 2.0ムーブメントの裏面ともいえますが、かつて「邪悪になるな(Don't be evil)」を行動規範に掲げたGoogleが、今では監視資本主義を完成させた民主主義の敵呼ばわりされている現実があります。そして、FOSSのライセンスは、プーチンがウクライナ侵攻などの悪事にFOSSを利用する可能性を禁じません。

クーンは、「ソフトウェアの自由は最も重要な人権ではない」と認めます。彼はソフトウェアの自由という大義にスキルがぴったりマッチしたため、自分の才能と直接結びつく仕事に集中するよう努めてきたが、自分達が他の人権と比較してソフトウェアの自由の相対的な重要性を過大評価したことを認めています。

その上で、ソフトウェアのプライエタリ化自体は最も凶悪な人権侵害とはいえないが、社会正義の大義に関して害をなす企業を支援すると訴えます。結局のところ、コピーレフト(や他のFOSSのライセンス)は戦略であって、それ自体が道徳原理ではないが、プロプライエタリなソフトウェアが人々にとって有害なのは注意を払うべき道徳的原則なのだ、と。

現実的にプロプライエタリなソフトウェアを違法にはできないし、その開発者が金銭的報酬を得るのを思い留まらせることもできません。次善の策は、その代替となる自由なソフトウェアを開発することであり、それが1980年代初期のフリーソフトウェア運動が行ったことです。しかし、自由なソフトウェアはプロプライエタリなソフトウェアの基盤に利用されてしまう問題があり、プログラムそのものだけでなくその派生物の自由も要求する「コピーレフト」は、その対抗戦略だったわけです。

とはいえ、その自由の保障には確実にリソースが要りますし、コピーレフトは人権侵害がよく起こる法の支配の弱い場所で権利を行使する仕組みとしては不向きという現実があります。クーンは、「過去20年間、ロシア連邦におけるGPL違反について多くの報告を受けてきたが、それを追及しなかったこと」を明かします。プーチン政権下では、ロシア市民のソフトウェアの自由と権利を支持する公正な審理を受けられる可能性が非常に低いと判断したのがその理由です。

クーンは、倫理的なソース運動に一定の理解を示しながらも、ライセンス変更以外にも、技術系労働者の広範な組合化など平行して協力できることがあるし、そして一方で、ソフトウェアの自由のためには、コピーレフトこそ(遠回りでも)最善の妥協の戦略とも訴えます。政治的に分裂しつつあるこの社会において、包括的な社会正義の改革は極めて難しいが、コピーレフトは問題をソフトウェアの話に限定することで、連合(coalition)を維持する役割を果たす、というわけです。

社会正義の大義名分のもとでライセンスに条項を加えても、支持者の連合を損なうことにしかならないでしょう。多様な政治的生態系においては、包括的だけど複雑な解決策よりも、「まあまあ」機能するエレガントな方策のほうが多くの場合、良い結果をもたらすといわれています。

コピーレフトは、ソフトウェアを解放する魔法の妖精の粉ではありません。事実、上述の現実に必要なリソースを著しく過小評価していたのは、コピーレフトの設計における最大の欠陥の一つだとクーンは認めます。倫理的だけどソフトウェアとは無関係の(社会正義の大義の推進を求める)条項をライセンスに加えることは、その推進に測定可能な変化をもたらす明確な資金の道筋がない以上、戦術的な理由で反対するとクーンは書きます。

クーンは、FOSSのライセンスはソフトウェアの自由以外の社会正義の大義を推進する効果的な手段ではないが、コミュニティが何の義務も負っていないと主張するつもりはなく、道徳的義務はあると強調しています。

そしてクーンは、OSIがFOSSの軍事利用の議論を「利用分野の制限」として枠付けするのは的外れだとずっと感じていることを明かし、暗号ソフトウェアの共有が禁止された時代のように、ある種のソフトウェアが本よりも爆弾に近いものであるかのように語るレトリックを認めるべきではないと書きます。その上で、ソフトウェアの自由は、ソフトウェアの新しいバージョンの配布を拒否する権利を保証しているのだから、FOSSプロジェクトは、プーチンに自分たちのFOSSのアップデートの容易なアクセスを提供するのを避けるべきとまで書きます。この部分について、ワタシは正直疑問を感じるのですが、当方の理解が足らないだけかもしれません。

コピーレフトのライセンスは強力な戦略だが、利用者のソフトウェアの自由と権利を前進させる能力に長所と短所の両方があり、問題を抱えた世界をすべて解決する万能薬ではない。そして、コピーレフトの戦略をソフトウェアと関係のない原因に適用しても、意図した結果は得られず、最悪の場合、ソフトウェアの自由という重要な問題を矮小化することにしかならない、というのがクーンの結論になります。

ここまで書いてきて、やはりHippocratic Licenseなどのライセンスはオープンソースの定義から外れるとしか表現しようがないわけですが、一方で人間的な好き嫌いは別として、その仕事に敬意を払っている八田真行氏も、オープンソースの定義について、(それが正義とか神聖とかいうのではなく)単にそれが都合が良いから使っているだけ、と少し前に某所で語っているのを聞いた覚えがあります。

佐渡秀治氏が2006年の時点でとっくに書いているように、OSIなりFSFが変節したり、自分の考えが変われば、オープンソースの定義にしろコピーレフトにしろ捨てて、新たなものを作っていく必要があるのでしょうし、逆にいえば、基本的な考えが変わらない限り、それから逸脱する動きへの支持はせいぜい部分的なものに留まることになります。そして、ままならぬ事態を劇的に変える「かいしんのいちげき」としての銀の弾は、やはり存在しないのです。

WirelessWire Weekly

おすすめ記事と編集部のお知らせをお送りします。(毎週月曜日配信)

登録はこちら

yomoyomo

雑文書き/翻訳者。1973年生まれ。著書に『情報共有の未来』(達人出版会)、訳書に『デジタル音楽の行方』(翔泳社)、『Wiki Way』(ソフトバンク クリエイティブ)、『ウェブログ・ハンドブック』(毎日コミュニケーションズ)がある。ネットを中心にコラムから翻訳まで横断的に執筆活動を続ける。