派生物にも元と同じライセンスでの公開を義務づける考え方。
コピーレフトとは、「ソフトの自由を派生物(元のコードをもとに作った新しいソフト)にも引き継がせる」考え方です。著作権を表す「コピーライト(Copyright)」をもじって、自由を守る向きにひっくり返した造語です。
身近な例で考えると、「このレシピは自由に使ってよいが、それを改良した新しいレシピも必ず誰でも自由に使えるように公開すること」という条件付きのレシピのようなものです。自由がチェーン(鎖)のように次の人へつながっていきます。
普通の著作権が「使うな・真似するな」と独占を守るのに対し、コピーレフトは「みんなが使える状態を守れ」と自由を守ります。OSS(オープンソースソフトウェア)の世界で生まれた、ソフトの自由を絶やさないための仕組みです。
コピーレフトの継承の仕組みは、「自由が伝わるルール」を義務として課すことで実現します。具体的には次のとおりです。
・派生物は同じライセンスで公開:コピーレフトなコードを改変・組込みしたソフトは、元と同じライセンスを付けなければならない
・ソースを開示する義務がある:派生物を配布するときはソースコードも公開する
・自由が連鎖する:その派生物をさらに改良した人も、同じ義務を負う
このルールがある最大の理由は、改変版が囲い込まれるのを防ぐためです。もし義務がなければ、誰かが自由なコードを改良して非公開の有料製品にしてしまい、自由が途切れてしまいます。コピーレフトは「公開しないと使えない」という縛りで、自由がずっと続くことを保証しているのです。
コピーレフトを採用している代表的なライセンスは次のとおりです。コピーレフトの「強さ」によって少しずつ性質が異なります。
・GPL:強いコピーレフト。組み込んだソフト全体に同ライセンスを要求する
・LGPL:弱い(限定的)コピーレフト。ライブラリとして組み込む場合は緩い
・AGPL:ネットワーク越しの利用にも公開義務を広げたもの
これと対比されるのが非コピーレフト型のライセンスです。
・MIT・BSD・Apache:派生物に同ライセンスを強制しない
こちらは派生物のライセンスを自由に選べるため、企業が自社製品に組み込みやすいという特徴があります。
まとめると、コピーレフト型(GPL等)は自由を派生物に必ず引き継がせ、非コピーレフト型(MIT・BSD・Apache)はその縛りがないという違いになります。OSSを使うときは、この区別を意識しておくことが大切です。
Q1. コピーレフトの考え方の説明として最も適切なものはどれか。
Q2. コピーレフトを採用している代表的なライセンスはどれか。
Q3. コピーレフト型と非コピーレフト型の違いとして最も適切なものはどれか。