DUICUO

4つの主要なオープンソースライセンスの比較: BSD、Apache、GPL、LGPL

この記事の参考文献: http://www.fsf.org/licensing/licenses/

現在、多くのオープンソースライセンスが利用可能であり、そのうち58はオープンソース・イニシアティブ(OSI)によって承認されています。BSD、GPL、LGPL、MITといった一般的なオープンソースライセンスはすべてOSIによって承認されています。コードをオープンソース化したい場合は、これらの承認済みライセンスのいずれかを選択する必要があります。

ここでは、オープンソース化やオープンソース製品の使用を準備している開発者/メーカーの参考として、最も一般的に使用されている 4 つのオープンソース ライセンスとその適用範囲について説明します。

BSD オープンソースライセンス (オリジナル BSD ライセンス、FreeBSD ライセンス、オリジナル BSD ライセンス)

BSDオープンソースライセンスは、ユーザーに大きな自由を与えるライセンスです。基本的に、ユーザーは何でも自由に行うことができます。ソースコードを自由に使用・改変でき、改変したコードをオープンソースソフトウェアまたはプロプライエタリソフトウェアとして再配布することもできます。

ただし、「好きなようにする」という前提として、BSD ライセンスを使用したコードをリリースする場合、または BSD ライセンスのコードに基づいて二次開発を行って独自の製品を作成する場合は、次の 3 つの条件を満たす必要があります。

再リリースされた製品にソース コードが含まれている場合、ソース コードには元の BSD ライセンスが含まれている必要があります。
再リリースがバイナリ ライブラリ/ソフトウェアのみである場合は、元の BSD ライセンスをライブラリ/ソフトウェアのドキュメントと著作権表示に含める必要があります。
オープンソース コードの作成者/組織の名前や元の製品名をマーケティング目的で使用することはできません。
BSDコードはコード共有を推奨しますが、コード作者の著作権を尊重する必要があります。BSDはユーザーによるコードの改変と再配布を許可し、BSDコードに基づく商用ソフトウェアの開発・配布も許可しているため、ビジネスに非常に優しいライセンスです。多くの企業がオープンソース製品を選択する際にBSDライセンスを選択しているのは、サードパーティのコードに対する完全なコントロール権を持ち、必要に応じて改変や更なる開発を行えるためです。

Apache License 2.0(Apache License, バージョン 2.0、Apache License, バージョン 1.1、Apache License, バージョン 1.0)

Apacheライセンスは、著名な非営利オープンソース組織Apacheが採用しているオペレーティングライセンスです。BSDライセンスと同様に、このライセンスはコード共有を奨励し、元の作者の著作権を尊重し、コードの改変と再配布(オープンソースソフトウェアまたは商用ソフトウェアとして)を許可しています。遵守すべき条件もBSDライセンスと同様です。

  1. コードのユーザーには Apache ライセンスが提供される必要がある。
  2. コードを変更する場合は、コードを変更したファイルでこれを指定する必要があります。
  3. 拡張コード (変更されたコードおよびソース コードから派生したコード) には、ライセンシー、商標、特許通知、および元の作成者が要求するその他のステートメントが含まれている必要があります。
  4. 再発行された製品に通知文書が含まれている場合、その通知文書にはApacheライセンスが含まれている必要があります。通知文書に独自のライセンスを追加することもできますが、Apacheライセンスの変更を構成するように見えるものであってはなりません。
  5. Apacheライセンスはビジネスフレンドリーなライセンスでもあります。ユーザーはニーズに合わせてコードを変更し、オープンソースまたは商用製品としてリリース・販売することができます。

GPL(GNU一般公衆利用許諾書)

私たちがよく知っているLinuxはGPLライセンスを採用しています。GPLライセンスは、コードの再利用を推奨するBSDライセンスやApacheライセンスとは大きく異なります。GPLの前提は、コードのオープンソース化/フリー利用、および参照/改変/派生コードのオープンソース化/フリー利用ですが、改変・派生コードをクローズドソースの商用ソフトウェアとしてリリース・販売することは認められていません。そのため、私たちは商用企業によるものも含め、様々なフリーLinuxディストリビューションや、個人、組織、商用ソフトウェア企業がLinux上で開発した多種多様なフリーソフトウェアを利用できるのです。

GPLライセンスの要点は、ソフトウェア製品がGPLライセンスの製品を使用する場合(「使用」とは、ライブラリ参照、改変コード、または派生コードを指します)、そのソフトウェア製品もGPLライセンスの製品でなければならない、つまりオープンソースかつフリーでなければならないということです。これは「感染性」と呼ばれるものです。GPLライセンスの製品をスタンドアロン製品として使用することは全く問題なく、フリーであることの利点も享受できます。

GPL では、GPL ライブラリを使用するソフトウェア製品には GPL ライセンスの使用が厳密に要求されているため、コードの機密性を必要とする商用ソフトウェアや部門は、ライブラリや二次開発の基盤として GPL ライセンスを使用するオープンソース コードを統合/採用するのに適していません。

GPL ライセンスの下でリリースされる必要があるなどのその他の詳細は、BSD/Apache の場合と同様です。

LGPL(GNU 劣等一般公衆利用許諾書)

LGPLは、主にライブラリ利用のために設計されたオープンソースライセンスであり、GPLのサブセットです。GPLライブラリを使用、改変、または派生するソフトウェアは必ずそのライブラリを使用することを義務付けるGPLとは異なり、LGPLでは、商用ソフトウェアがリンクを通じてLGPLライブラリを使用することを認めており、商用ソフトウェアのコードをオープンソース化する必要はありません。これにより、LGPLに基づくオープンソースコードは、商用ソフトウェアによってライブラリとして利用、配布、販売することが可能になります。

ただし、LGPLライセンスのコードからコードを変更または派生する場合、変更されたコード、変更に関連する追加コード、および派生コードはすべてLGPLライセンスの下でライセンスされる必要があります。したがって、LGPLライセンスのオープンソースコードは、商用ソフトウェアのサードパーティライブラリとして使用するには適していますが、LGPLライセンスのコードを改変および派生によるさらなる開発の基盤として使用することを目的とする商用ソフトウェアには適していません。

GPL と LGPL はどちらもオリジナルの作成者の知的財産権を保護し、他者がオープンソース コードを使用してコピーし、同様の製品を開発することを防ぎます。

この記事は http://www.awflasher.com/blog/archives/939 からのものです。

[編集者のおすすめ]

  1. 戦略的視点から見たオープンソースソフトウェアの7つの利点
  2. オープンソースに関する簡単な議論:GNU GPLの過去と現在
  3. フリーソフトウェアで金儲けをする歴史の振り返り