FE EXAM

GPL(コピーレフト型ライセンス)

派生物にも同じ条件での公開を義務づける、コピーレフト型の代表的OSSライセンス。

DIAGRAM
GPLは派生物にも「公開義務」が伝わっていく
GPLコードソース公開済みGPL改変・組込み派生物GPL部分(流用)自分のコード伝播全体がGPLに自分のコードも含めソース公開義務(コピーレフトの伝播)※ GPLコードを少しでも組み込むと、ソフト全体に公開義務が及ぶ→ ソースを秘密にしたい独自製品には組み込みにくい
解説

📌
GPLとは

GPL = GNU General Public Licenseコピーレフト型の代表的ライセンス派生物にも公開義務を継承させる

GPLGNU General Public License)とは、派生物にも同じ条件でのソース公開を義務づける、コピーレフト型の代表的なOSSライセンスです。Linux(OSの一種)など、多くの著名なOSSで採用されています。

身近な例で考えると、「もらった料理のレシピを改良したら、その改良レシピも必ず公開する」という約束に似ています。便利な部分を取り入れる代わりに、自分の工夫もみんなに返す──この「自由を受け継がせる」という考え方がGPLの核心です。

上の図解のように、GPLコードを改変・組み込みすると、その派生物全体に公開義務が伝わっていくのが大きな特徴です。GPLは、ソースコードがずっと自由であり続けることを保証するための仕組みなのです。

📌
コピーレフト原則

GPL元自由改変版自由を継承どこまで改変が進んでも「自由」が続く

コピーレフトとは、改変・再配布する場合、その派生物も同じライセンスでソース公開しなければならない、という決まりのことです。GPLはこのコピーレフトを採用した代表的なライセンスです。

「コピーライト(著作権 = copyright)」をもじった言葉で、著作権の力を使って「自由であり続けること」を逆に義務づけるのがねらいです。普通の著作権が「使わせない」方向に働くのに対し、コピーレフトは「自由を手放させない」方向に働きます。

上の図解のように、GPLのコードを誰かが改変しても、その改変版もGPLとして公開され、自由が次々と受け継がれていきます。「自由を継承させる」という言葉でこの性質を覚えておくとよいでしょう。

📌
派生物への影響

GPL(コピーレフト)GPL独自も公開MIT(非コピーレフト)MIT独自非公開OK

GPLの最大のポイントは、GPLのコードを組み込んだソフトは、全体がGPLになるということです。つまり、自分で書いた独自部分も含めてソース公開義務が伝播します。

この性質には次のような影響があります。
ソース公開義務が伝播:組み込んだ部分だけでなく、ソフト全体を公開する必要がある
商用の独自製品に組み込みにくい:中身を秘密にしたい製品には使いづらい
OSSの自由が保たれる:改変版が囲い込まれず、コミュニティに還元される

これに対し、MITBSD といった非コピーレフト型のライセンスは、組み込んでもソース公開を強制しません。そのため、ソースを公開したくない商用製品ではこちらが選ばれます。上の図解で、GPL(左)は独自部分も公開、MIT(右)は独自部分を非公開にできる違いを比べてみてください。

練習問題

🎯
基本情報技術者 練習問題

Q1.GPL(GNU General Public License)の説明として最も適切なものはどれか。
A.改変・組み込みも一切認めないライセンス
B.派生物にも同じ条件でのソース公開を義務づけるコピーレフト型ライセンス
C.著作権表示だけ残せば自由に組み込めるライセンス
D.商用利用を完全に禁止するライセンス
Q2.コピーレフトの原則の説明として最も適切なものはどれか。
A.改変・再配布する場合、派生物も同じライセンスでソース公開しなければならない
B.著作権を完全に放棄してパブリックドメインにする
C.ソースコードの改変を禁止する
D.無償での配布だけを認め、有償配布を禁止する
Q3.GPLのコードを組み込んだソフトウェアへの影響として正しいものはどれか。
A.組み込んだ部分だけ非公開にできる
B.ソフト全体がGPLになり、ソース公開義務が伝播する
C.GPLの影響は一切受けず自由に独占できる
D.MITライセンスに自動的に変わる

関連コンテンツ