LinuCレベル1 102試験の例題と解説
1.11.1オープンソースの概念とライセンス
今回は、LinuC 102試験の試験範囲から「1.11.1 オープンソースの概念とライセンス」についての例題を解いてみます。
今回は各種ライセンスの概要を学びます。
例題
次の選択肢からMITライセンスについて述べているものを選んでください。
- このライセンスが適用されているソフトウェアを再配布するとき、同じライセンスを適用しなければならない。
- 派生物にも同一のライセンス適用が求められ、ネットワーク経由での利用について明記されている。
- このライセンスのソフトウェアを外部プログラムとして呼び出す分には自由なライセンスを使ってよいが、ソフトウェア内にこのライセンスが適用されたプログラムを組み込んだ場合、同一のライセンスを適用しなければならない。
- 誰でも無償かつ無制限に扱うことができ、再配布する際はライセンスの許諾表示を含めればよい。
- 派生物にも同一ライセンスの適用を求めるが、このライセンスが適用されたソフトウェアが他のソフトウェアと組み合わせて作成された場合、組み合わせ先ソフトウェアには同一ライセンスの適用を求められない。
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「4」です。
オープンソースには様々なライセンスが適用されています。
基本的には、誰でも・自由に・無償で・自己責任で扱ってよいという決まりが適用されますが、各ライセンスごとに再配布時の決まりなどの違いがあります。
代表的なライセンスを以下にまとめます。
GPL
正式名称は、GNU General Public Licenseです。
主な特徴としては、コピーレフトが適用されていて、二次創作物もこのライセンスを適用しなければいけないという点です。これは、あるGPLソフトウェアをライブラリとして呼び出す場合にも、その呼び出し元ソフトウェアにもGPLの適用を求められます。
LGPL
正式名称は、GNU Lesser General Public Licenseで、GPLの制限を少し緩めたライセンスです。
GPLから派生したライセンスなので、基本的には同じ扱いをする必要がありますが、LGPLの場合、LGPL適用ソフトウェアを外部ライブラリとして呼び出す場合には、呼び出し元プログラムに、LGPLライセンスを適用することを求められない、という違いがあります。
AGPL
正式名称は、GNU Affero General Public Licenseで、GPLの適用範囲を広げたライセンスです。
こちらもGPLから派生したライセンスなので、基本的には同じ扱い方をする必要があります。GPLと異なるのはネットワーク経由でアクセスしたユーザにも、ソースコードを公開する必要があるという点です。
GPLライセンスで配布されている場合、配布したユーザにソースコードを公開する必要がありますが、ネットワーク経由で利用するユーザにはソースコードを公開する義務はありません。
AGPLはGPLのその点を見直し、ネットワーク経由で利用するユーザにもソースコードを公開することを求めています。
BSDライセンス
カリフォルニア大学バークレー校で配布されたソフトウェアに添付されたライセンスです。ソフトウェアの再配布時に、著作権や免責条件の表示が求められます。また、書面による許可なしに著作者やコントリビュータの名前を使用してはいけないという制限があります。
MIT
マサチューセッツ工科大学で考案されたライセンスです。
BSDライセンスをベースに作成されています。GPLライセンスでは、二次創作物にもGPLライセンスの適用を求めていましたが、MITライセンスには、二次創作物に同一ライセンスの適用を求められません。
著作権表示とライセンスの全文を掲載すれば、自由なライセンスを適用することができます。
MPL
正式名称は、Mozilla Public Licenseです。
GPLと同様にコピーレフト型ライセンスですが、MPLライセンス適用ソフトウェアを改変した場合は、同一ライセンスの適用を求められますが、そうでない場合は同一ライセンスの適用を求められないという特徴があります。
例えば、MPLライセンス適用ソフトウェアAと自作ソフトウェアBを組み合わせて、あるソフトウェアを作成した場合、Aの部分のソースコードは公開を求められますが、Bの部分は公開しなくてもよいということになります。
選択肢を見ていきます。
- このライセンスが適用されているソフトウェアを再配布するとき、同じライセンスを適用しなければならない。
これはGPLについての説明なので、誤りです。 - 派生物にも同一のライセンス適用が求められ、ネットワーク経由での利用について明記されている。
これはAGPLについての説明なので、誤りです。 - このライセンスのソフトウェアを外部プログラムとして呼び出す分には自由なライセンスを使ってよいが、ソフトウェア内にこのライセンスが適用されたプログラムを組み込んだ場合、同一のライセンスを適用しなければならない。
これはLGPLについての説明なので、誤りです。 - 誰でも無償かつ無制限に扱うことができ、再配布する際はライセンスの許諾表示を含めればよい。
これはMITについての説明なので、正しい選択肢です。 - 派生物にも同一ライセンスの適用を求めるが、このライセンスが適用されたソフトウェアが他のソフトウェアと組み合わせて作成された場合、組み合わせ先ソフトウェアには同一ライセンスの適用を求められない。
これはMPLについての説明なので、誤りです。
各種ライセンスの相違点を把握し、正しくOSSを扱えるようにしましょう。
例題作成者
株式会社デージーネット ソリューション開発部 徳武竜太