オープンソースソフトウェア(OSS)利用時に注意すべき事項について(法務視点)
Contents
【ご相談内容】
客先(ユーザ)が要望する事項を実現するために必要な作業量・費用と、客先(ユーザ)が想定している予算とが釣り合わないため、製品の一部につき無償で利用可能なオープンソースソフトウェア(OSS)を用いることを検討しています。
ただ、オープンソースソフトウェア(OSS)を利用したことで、国内外を問わずトラブルが発生しているという話も聞き及びます。
どういった点に注意すればよいのか教えてください。
【回答】
よく知られているオープンソースソフトウェア(OSS)の例としては、OS であるLinux やAndroid、プログラム開発言語のjava、開発フレームワークのEclipse、データベースのMySQL、WEB サーバの Apache HTTP Serverなどがあります。
費用や労力を抑えるためにオープンソースソフトウェア(OSS)を利用することが多くなっている昨今ですが、一方でオープンソースソフトウェア(OSS)には厳しいライセンス条件が課せられており、これを遵守しながらビジネス展開できるのか適切に判断することが求められています。
万一、ライセンス条件に違反した場合、権利者より著作権侵害等を理由とした差止めや損害賠償を受けることが想定されます。また、ベンダが開発した製品を今後供給することができないという悪影響もあり得ます。さらに、既に製品を供給したユーザが使用できないという問題も起こり得るところです。
オープンソースソフトウェア(OSS)を用いるのであれば、それ相応の覚悟が必要であることを十分ご理解いただきつつ、その注意点につき解説を行います。
なお、オープンソースソフトウェア(OSS)の法的問題について更に探求したい場合、一般財団法人ソフトウェア情報センターが公開している次の資料を参照することも検討してください。
(参考)
OSSの法的諸問題に関する調査研究(一般財団法人ソフトウェア情報センター)
【解説】
1.オープンソースソフトウェア(OSS)とは何か
(1)定義
オープンソースソフトウェア(OSS)には、法律上の定義がないことはもちろん、一般用語としても固まった定義があるわけではありません。
もっとも、Open Source Initiativeと呼ばれる世界的な団体が公表している要件を検討する限り、次の10要件全てを満たすものがオープンソースソフトウェア(OSS)に該当するとされています。
①再頒布の自由が認められること ②改変しやすい形式のソースコードが頒布されること ③派生ソフトウェアの作成が認められること、派生ソフトウェアを元のソフトウェアと同条件で頒布することが認められること ④ソースコードの作成者や改変者を明らかにすること ⑤個人・団体ごとで異なる条件を課さないこと(差別の禁止) ⑥用途に応じて異なる条件を課さないこと(利用分野における差別の禁止) ⑦再頒布先に対してライセンスが承継されること ⑧すべての製品に対して平等に条件を課すこと ⑨他のソフトウェアを制限する条件を課さないこと ⑩技術中立的な条件を課すことでなければならない |
なお、「フリーソフト」という用語例もありますが、オープンソースソフトウェア(OSS)と同義と言い切ることはできません。
なぜなら、フリーソフトも一般用語として固まった定義があるわけではないからです。特に、日本国内では、フリーという言葉に、①無料、②無条件の2つの意味を指すことが多く、この結果、フリーソフトといっても、オープンソースソフトウェア(OSS)のようにソースコードが公開されていないことが多いというのが実情です。
したがって、現場実務では、フリーソフトとオープンソースソフトウェア(OSS)は同義であると考えないほうが無難です。フリーソフトという言葉が用いられた場合、どのような意味・内容・条件なのかを逐一確認することをお勧めします。
(2)背景事情
ソースコードについて、①本来公開されるものではないこと、②無償でライセンスされるものではないこと、というのが一般的な感覚だと思います。現に、ソースコードが不正競争防止法上の営業秘密に該当することを認める裁判例も存在するところです(大阪地方裁判所平成25年7月16日判決)。
このため、オープンソースソフトウェア(OSS)の考え方については、ビジネス的な思考からすると理解しがたいところがあるかもしれません。
オープンソースソフトウェア(OSS)を理解するためには、根本的な発想の転換が必要となります。すなわち、優れたソフトウェアを世に生み出すためには、ソースコードを公開することで技術者等と共有し、その技術者等が自由にソフトウェアの開発に参加することで集合知を結集させ、改良を促進していくという発想が根本にあります。
端的には、ソースコードをマネタイズ化するための独占情報と捉えるのか、人類の文化財として保存しかつ発展させるべき対象と捉えるのか、と考えればすっきりするかもしれません。
ところで、オープンソースソフトウェア(OSS)については、よく「コピーレフト」という言葉が用いられます。
これは、著作権は英米ではコピーライトと呼ばれているところ、著作権は著作権者による著作物の独占権を認める権利であるのに対し、オープンソースソフトウェア(OSS)は、著作権者がライセンス条件として独占的な権利行使を禁止する(ソースコードの開示を義務付ける等)といった著作権法の逆利用を行うことを文字ったことに由来します。
(3)留意点
上記(1)で触れた「フリーソフト」とも関連してくるのですが、よくある誤解として、
・オープンソースソフトウェア(OSS)は、著作権が放棄されているから、自由利用が可能である。
というものがあります。
しかし、これは明らかな間違いです。
なぜなら、オープンソースソフトウェア(OSS)は、上記(2)のコピーレフトのところで少し触れましたが、ソースコード開示者の著作権は留保されたままだからです。
また、これもよくある誤解なのですが、
・オープンソースソフトウェア(OSS)の利用態様に一切の制限はない
というものがありますが、これも明確な間違いです。
なぜなら、ソースコードの開示者は著作権者である以上、そのライセンス条件を定めることができ、当該ライセンス条件を順守しなかった場合は著作権侵害であるとして利用差止めや損害賠償請求を行うことが可能だからです。
さらに、フリー=無料という認識に基づき
・オープンソースソフトウェア(OSS)は常に無料で利用可能である
という誤解もあるようです。
繰り返しとなりますが、ソースコードの開示者がライセンス条件をどのように定めるのかによりますので、常に無料で利用可能という保証はないことに注意を要します。
なお、技術者の中には
・誰でも閲覧可能な場所にソースコードが公開されているので、オープンソースソフトウェア(OSS)である
と考えている方もいるようですが、これも誤りです。
著作権者の意向として、ソースコードを開示すること自体はOKだが、不特定多数の者に利用させるつもりはない(例えば商用利用禁止など)ということもあり得ます。公開=オープンソースソフトウェア(OSS)と判断するのは危険であり、必ず利用条件を確認する必要があります。
2.オープンソースソフトウェア(OSS)の存在意義
オープンソースソフトウェア(OSS)は、プログラム制作者にとって利益の源泉であるソースコードを開示するものであり、メリットが無いのではと思われるかもしれません。また、オープンソース・プロジェクトに参加する技術者も、無償での協力を行うことが前提となる以上、やはりメリットが無いと思われるかもしれません。
しかし、発想の転換と言えばよいでしょうか、次のようなメリットが考えられます。
(1)企業(制作者側)にとってのメリット
次の3点が考えられます。
①プログラム制作物をオープンソースソフトウェア(OSS)化し、オープンソース・プロジェクトを支援することで、企業の知名度やイメージ向上を図ることができる
②さまざまな技術者が分析・改変に参加することで、企業自らでは気が付かなかったプログラム制作物の問題について、無償かつ迅速に改良してもらうことが期待できる
③何らかの事情により企業が事業活動を継続することができない場面に直面したとしても、ユーザ・顧客に与える影響を小さくすることができる
この点、①については、ある程度事業規模の大きい企業であれば、社会的な名声・信用を重視する必要がありますので、十分考慮に値するメリットといえます。
また、②については、ソースコードを独占化することで収益化するのか、ソースコードを開放し、第三者の知見等を用いながらプログラムとしての稼働安定性を得ることで信頼性を得つつ収益化するのか、という経営判断になります。営業力はあるが技術力に不安がある企業にとっては、メリットがあるかもしれません。
最後の③は、このような考え方もできる…という程度に留まりますが、ユーザがプログラム制作企業の継続性に不安を覚える場合、対処法の1つとして検討できるかもしれません。なお、この③の問題については、ソフトウェア・エスクロウという方法を用いることでも解決可能です。ソフトウェア・エスクロウについては、次の記事をご参照ください。
ソフトウェア・エスクロウとは何か? 活用場面とポイントを解説
(2)技術者にとってのメリット
ここでいう技術者とは、ソースコード開示者以外の、オープンソース・プロジェクトに参加する者のことを指します。
一歩間違えると“やる気搾取”と言われかねないところがありますが、次の3点のメリットが考えられます。
①分析・改変を行うことで、技術者としての評価や知名度を高めることが期待できる
②分析・改変に参加することで、スキルアップを図ることができる
③オープンソースソフトウェア(OSS)の開発を行う技術者同士の交流により、知識・ノウハウの共有を図ることが期待できる
この点、①については、特に独立系の技術者(フリーランスを含む)にとっては、自らの技術力のアピールの場となりますので、大きなメリットと言えます。
一方、②及び③については、技術者のテクニックを磨く場となりますので、技術力の向上に役立つ点でメリットがあるといえます。
3.オープンソースソフトウェア(OSS)に関するよくある誤解
典型的な誤解として、
・オープンソースソフトウェア(OSS)は、著作権が放棄されているから、自由利用が可能である。
というものがあります。
しかし、これは明らかな間違いです。
なぜなら、オープンソースソフトウェア(OSS)は、ソースコード開示者の著作権は留保されたままだからです。
また、これもよくある誤解なのですが、
・オープンソースソフトウェア(OSS)の利用態様に一切の制限はない
というものがありますが、これも明確な間違いです。
なぜなら、ソースコードの開示者は著作権者である以上、そのライセンス条件を定めることができ、当該ライセンス条件を順守しなかった場合は著作権侵害であるとして利用差止めや損害賠償請求を行うことが可能だからです。
さらに、フリー=無料という認識に基づき
・オープンソースソフトウェア(OSS)は常に無料で利用可能である
という誤解もあるようです。
繰り返しとなりますが、ソースコードの開示者がライセンス条件をどのように定めるのかによりますので、常に無料で利用可能という保証はないことに注意を要します。
なお、技術者の中には
・誰でも閲覧可能な場所にソースコードが公開されているので、オープンソースソフトウェア(OSS)である
と考えている方もいるようですが、これも誤りです。
著作権者の意向として、ソースコードを開示すること自体はOKだが、不特定多数の者に利用させるつもりはない(例えば商用利用禁止など)ということもあり得ます。公開=オープンソースソフトウェア(OSS)と判断するのは危険であり、必ず利用条件を確認する必要があります。
4.オープンソースソフトウェア(OSS)の「利用」と「使用」の違い
オープンソースソフトウェア(OSS)をプログラムの著作物と考えた場合、日本の著作権法が適用される場合があります(なお、厳密には、ライセンス条件の1つである準拠法がどの国の法律になっているかを検証する必要があります)。
さて、やや細かな話なのですが、日本の著作権法では「利用」と「使用」という言葉について、意識的に使い分けを行っているとされています(ただし、使い分けについて否定する解釈論も存在します)。端的に整理すると、次のようになります。
・使用…著作権者の許可を得ずに著作物を用いてOK
・利用…著作権者の許可を得ない限り著作物を用いることはNG(著作権侵害成立)
オープンソースソフトウェア(OSS)のライセンス条件には様々な事項が定められていますが、ライセンス条件違反が同時に著作権法上の「利用」違反となる場合、著作権法違反も成立しますので民事的な制裁のみならず、場合によっては刑事処分を受けるリスクが生じることになります。
5.オープンソースソフトウェア(OSS)を利用する際の条件
オープンソースソフトウェア(OSS)は、ソースコードの権利者が、その利用者に対し、ライセンスするという形式をとること、ここは必ず押さえておく必要があります。
上記1.(3)でも記載しましたが、権利者は権利放棄しているわけではありません。むしろ、権利者が権利行使の方法としてライセンス付与という形態をとる以上、ラインセス条件に違反する行為が発覚した場合は権利(著作権等)侵害があるとして、利用差止めや損害賠償等の権利行使を行ってくることになります。
では、オープンソースソフトウェア(OSS)における、ライセンス条件とはどのようなものがあるのでしょうか。以下では、代表的なものを取り上げながら解説します。
(1)多くの場合に定められているライセンス条件
後述(2)の通り、オープンソースソフトウェア(OSS)と一口で言っても、実は様々なライセンス条件が設定されています。しかし、多くの場合、次のようなライセンス条件が定められているようです。
・製品にオープンソースソフトウェア(OSS)が組込まれている場合、どのオープンソースソフトウェア(OSS)が含まれているのか明示すること ・オープンソースソフトウェア(OSS)を用いる場合、又はオープンソースソフトウェア(OSS)を改変した場合、権利者が設定したライセンス条件を適用しなければならないこと ・オープンソースソフトウェア(OSS)を改変した際に、開発者や頒布者の特許が含まれている場合、利用者に特許ライセンスを付与しなければならないこと |
上記3つは、オープンソースソフトウェア(OSS)として、誰もが自由にソフトウェアを利用することができるという理念を実現するために必要な最低条件といえるかもしれません。
(2)分類
オープンソースソフトウェア(OSS)には様々なライセンス条件が設定されていること、前述の通りですが、その特徴に応じて分類するとすれば、「ソースコードの開示義務がどこまで厳格か」というのが1つの視点になると考えられます。
この視点で分類した場合、大きくは次の3つに分類することが可能です。
ライセンスタイプの例 | 頒布に際しての開示範囲 | 派生ソフトウェアの開示範囲 |
BSD | ソースコード開示不要 | ソースコード非開示でOK |
MPL | ソースコード開示必要 | ソースコード非開示でOK |
GPL | ソースコード開示必要 | ソースコード開示必要 |
(※注)
「頒布に際しての開示範囲」とは、オープンソースソフトウェア(OSS)を組込んだ製品を制作した企業等が、第三者に当該製品を頒布する際にソースコードの開示が必要かという意味です。
「派生ソフトウェアの開示範囲」とは、オープンソースソフトウェア(OSS)と企業が独自に保有するソフトウェアとが組み合わされた場合、その企業が独自に保有するソフトウェアのソースコードまで開示対象となるのかという意味です。
上記分類に従った場合、例えばソースコードの独占化による収益化を図りたい企業にとっては、GPLが一番厳しいライセンス条件となり、BSDが一番緩いライセンス条件になるということが分かります。
なお、上記のライセンスタイプは一例にすぎず、オープンソースソフトウェア(OSS)は様々なものが存在します。
各ライセンス条件は、Open Source Initiativeと称する団体のWEBページにて確認する必要がありますが、原文は英語です。日本語訳については、一般社団法人オープンソース・グループ・ジャパンが公開しているものが参考になります。
(参考)
オープンソースライセンスの日本語参考訳(一般社団法人オープンソース・グループ・ジャパン)
6.オープンソースソフトウェア(OSS)を利用する際の注意事項
オープンソースソフトウェア(OSS)を利用する場合、上記3.(2)で記載したように、どのライセンスタイプに該当するのかを確認し、ライセンス条件を理解することが重要となります。なお、同じライセンスタイプであっても、バージョンによって内容が異なる場合があること(適用されるライセンス条件が異なる場合があること)にも注意を要します。
以下では、オープンソースソフトウェア(OSS)を利用する上で問題となりやすい事項につき、解説を行います。
(1)デメリット
オープンソースソフトウェア(OSS)のメリットは上記2.で記載した通りですが、当然のことながらデメリットもあります。
一般的には次のような事項がデメリットと考えられます。
・品質が保証されない(利用する側の自己責任)
・不具合等が発生した場合のサポート義務が無い(ソースコード開示者及び参加技術者のいずれも任意でしかサポートしてくれない)
・参加技術者が開発から離れてアップデート等の対応が行われなくなる可能性がある
・利用者側にソースコードの理解者(熟練者)がいないことには、上手く扱えない場合がある
・利用者が開発したプログラム技術やノウハウの外部流出を余儀なくされる場合がある(特に頒布者にソースコード開示義務がある場合)
最後の部分は企業の知的財産権及びノウハウ管理に関する内容ですが、その他は技術的な問題が関係してきます。
無料・安価という理由でオープンソースソフトウェア(OSS)を取り入れて製品開発を行ったベンダが、製品不具合が発生した場合に対処ができず、ユーザとトラブルになってしまうという事例が起こっています。実は、オープンソースソフトウェア(OSS)を使いこさせるのは上級者のみであると認識しておく必要があります。
(2)伝搬性(相互性)
伝搬性とは、ライセンスを受けたソフトウェアと同一ライセンスで頒布しなければならないということを意味し、相互性と呼ばれることもあります。
例えば、GPLを組込んだソフトウェアと企業が独自に保有するソフトウェアを組み合わせて1つの製品を制作し、これをユーザに頒布したとします。この場合、当該製品はGPLを組込んだソフトウェアと企業独自のソフトウェアが関連付けられている以上、当該製品の全体について同一ライセンスで頒布することが義務付けられます。この結果、GPLを組込んだソフトウェアのソースコード開示はもちろんのこと、企業独自のソフトウェアのソースコードを開示する必要が生じます。
このような現象を伝搬性(相互性)と呼ぶのですが、これはオープンソースソフトウェア(OSS)を利用する企業としては非常に悩ましい事態といえます。場合によっては、GPLに代表されるライセンスタイプのオープンソースソフトウェア(OSS)を利用することは控えた方が良いという経営判断を行う必要性も出てきます。
ライセンス条件の確認は十分に行うことをお勧めします。
(3)両立性(互換性)
複数のオープンソースソフトウェア(OSS)を利用する場合において、一方のライセンス条件と他方のライセンス条件との間で相互に矛盾があるか否かの問題を両立性または互換性と呼びます。
両立性(互換性)が無いとされる有名な事例として、BSDを組込んだソフトウェアとGPLを組込んだソフトウェアを組み合わせて1つの製品を制作し頒布する場合、ベンダはユーザに対し、GPLでライセンスすることは認められますが、BSDでライセンスすることはできません。なぜなら、頒布先へのソースコードの開示につき差異が生じているからです。
また、GPL(Version2)とApache License(Version2)についてもライセンス条件が両立しないとされています(頒布に際しての特許ライセンスについて差異があるため)。
この両立性(互換性)については、利用するオープンソースソフトウェア(OSS)のライセンス条件を熟読すると共に比較対照する必要があるのですが、かなり高度な法的知識を要求されることに注意が必要です。
(4)第三者が保有する権利侵害リスク
オープンソースソフトウェア(OSS)を利用する場合、オープンソースソフトウェア(OSS)それ自体に第三者(※オープンソースソフトウェア(OSS)の取組みに参加していない者。以下(4)内では同じ)の著作物が紛れ込んでいる可能性があります。あるいは、オープンソースソフトウェア(OSS)の改変等が行われている間に第三者の著作物が紛れ込む場合もあります。このため、著作権侵害のリスクを回避することは不可能であることを理解する必要があります。なお、特許権侵害リスクも同様と言わざるを得ない状況です。
もっとも、上記リスクについては、正直なところリスクをゼロにする有効策が無い状態です。
とりあえずの自衛策としては、自らにおいては改変履歴を記録化し、意図せず第三者の権利が混入した場合に直ぐ対処できる(侵害前の状態に復元できるようにする)ことが考えられます。
また、オープンソースソフトウェア(OSS)に対する保険もありますので、保険に加入することも一案かもしれません。
(5)ソフトウェア開発にOSSを用いたことによる責任
ベンダがオープンソースソフトウェア(OSS)を組込んだ製品を開発し、ユーザに当該製品を納品した場合において、オープンソースソフトウェア(OSS)に起因する不具合等が生じた場合、ベンダはどのような責任を負うのか、という点については整理しておく必要があります。
まず、オープンソースソフトウェア(OSS)を利用する場合、ベンダはソースコード開示者が設定するライセンス条件に従う必要があるところ、一般的にはソースコード開示者は一切の責任を負わないと定められています。
一方、ベンダとユーザの関係は製品開発に関する請負(又は準委任)契約によります。すなわち、製品に何らかの不具合があれば、特に定めがない限りベンダは債務不履行責任を負うことになります。オープンソースソフトウェア(OSS)を利用しているから、ベンダは当然免責されるという結論はあり得ないことをまずは押さえておく必要があります。
では、ベンダがユーザに対して責任を負わないようにするためには、どのようにすればよいのでしょうか。
最も明快な対策は、製品開発に関する請負(又は準委任)契約において、「不具合等が発生しても、ベンダは一切の責任を負わない」とする全部免責条項を定めることとなります。
ただ、ユーザが消費者の場合、全部免責条項は消費者契約法により無効となります(消費者契約法第8条第1項第1号、同項第3号)。また、ユーザが事業者の場合でも、ベンダに故意重過失が認められる場合は、全部免責条項の適用を否定する裁判例が多く存在します。さらに、ユーザの属性を問わず、製品という属性で考えた場合、製造物責任に関する全部免責を定める条項は公序良俗違反(民法第90条)により無効と判断される可能性が高いと考えられます。
したがって、全部免責条項を定めるだけでは十分な対策とは言えないこと、オープンソースソフトウェア(OSS)に起因する不具合については、ベンダはユーザとの関係で責任を負わざるを得ないことを理解する必要があります。
ちなみに、全部免責条項ではなく一部免責条項を定めることでリスクを低減させるという考え方も成り立ちます。しかし、ユーザが消費者の場合、消費者契約法第10条で一部免責条項が無効と判断される可能性があること、ユーザが事業者の場合、ベンダに故意重過失があれば一部免責条項の適用が否定される可能性があること、製造物責任を制限することについても公序良俗違反の問題が生じることから、やはり一定の責任をベンダは負担せざるを得ないと考えられます。
なお、ユーザが特定のオープンソースソフトウェア(OSS)の利用を指示した場合、請負契約であれば民法第636条によりベンダの責任が制限されること、準委任であれば、善管注意義務の範囲外であるとしてベンダの責任が制限される場合が考えられます。
また、ユーザと協議し、ユーザの意向に沿った特定のオープンソースソフトウェア(OSS)を選択したという事情があれば、過失相殺によりベンダの責任が軽減される可能性もあると考えられます。
(6)製品組込み利用
ベンダが開発する製品にオープンソースソフトウェア(OSS)を組込む場合、上記(2)で記載した伝搬性の問題、すなわちソースコードを開示することによる技術流出を問題視する必要が無いかを検討する必要があります。
また、上記(3)で記載した両立性の問題、すなわち複数のオープンソースソフトウェア(OSS)を組込むことで適用されるライセンス条件に矛盾が生じないかを検討する必要があります。
なお、オープンソースソフトウェア(OSS)を利用することで、ソフトウェアの特許出願や特許権行使に支障を来さないかについても、ライセンス条件を勘案しながら慎重に判断する必要があります。
(7)社内利用
社内用システムにオープンソースソフトウェア(OSS)を組込む場合、ソースコードの開示及び伝搬性の問題を気にする必要はなく、基本的にはライセンス条件に従って利用すれば、特に問題は起こりません。
もっとも、上記(1)で記載したデメリットを甘受する必要があり、何らかの不具合が生じた場合に迅速な復旧ができない等のリスクを抱えることになります。
7.当事務所でサポートできること
オープンソースソフトウェア(OSS)は気軽にかつ無償(安価)で利用ができるという点で、コスト削減を図りたい事業者にとっては大きなメリットがあります。
しかし、その反面、ソースコード開示者(権利者)が設定したライセンス条件を遵守する必要があり、ライセンス条件によっては、技術情報の流出を余儀なくされる、競業他社等に権利行使ができないといった、今後のビジネス展開に多大な支障を来す“毒薬”のようなところもあります。
いずれにせよ、オープンソースソフトウェア(OSS)を利用するのであれば、ライセンス条件を十分に理解することが不可欠なのですが、具体的な利用場面を想定しながらライセンス条件を読み込み、理解することは一筋縄ではいきません。
当事務所では、ご相談者様において、オープンソースソフトウェア(OSS)をどのような目的・態様にて利用しているのかをじっくりお伺いしながら、懸念事項の抽出及び回避策などのご提案を行っています。
オープンソースソフトウェア(OSS)利用に関する心配やお悩みがあれば、是非当事務所までご相談ください。
<2023年8月執筆>
※上記記載事項は弁護士湯原伸一の個人的見解をまとめたものです。今後の社会事情の変動や裁判所の判断などにより適宜見解を変更する場合がありますのでご注意下さい。