FE EXAM

MITライセンス(制約の少ないOSSライセンス)

著作権表示さえ残せばほぼ自由に利用・改変・再配布できる、制約の少ないOSSライセンス。

DIAGRAM
MITコード
自由
唯一の条件
MITコードMITライセンスで公開されたソフトウェア改変が自由コードを書き換えてよい商用利用・組込み自由製品に組み込んで販売OK再配布が自由クローズドソース化も可唯一の条件著作権表示とライセンス文の保持これだけ守ればOK派生物を同じライセンスにする義務はない(非コピーレフト型)
解説

📌
MITライセンスとは

「自由に使ってOK」の許可証MIT License著作権表示を残せばあとはほぼ自由

MITライセンスとは、OSS(オープンソースソフトウェア=ソースコードが公開され誰でも使えるソフト)のライセンス(使ってよい条件を定めた取り決め)の一つで、制約が非常に少ないことで知られています。アメリカのマサチューセッツ工科大学(MIT)が作ったことからこの名前が付きました。

身近な例で考えると、「作者の名前さえ消さなければ、自由に使っていいですよ」と書かれた回覧自由のレシピのようなものです。料理して売っても、材料を変えても、ノートに書き写してもよく、ただ「考案者の名前」を残すことだけがお願いされている状態です。

MITライセンスは、派生物(元のコードをもとに作った新しいソフト)に同じ自由を引き継がせる義務がない「非コピーレフト型」の代表です。この点が後で出てくるGPLなどのコピーレフト型との大きな違いになります。

📌
制約が少ない理由

義務著作権表示の保持のみ自由改変・商用・再配布義務が1つだけなので緩い

MITライセンスが「緩い」と言われるのは、利用者に課される義務がたった1つしかないからです。具体的には次のとおりです。
唯一の義務は著作権表示とライセンス文の保持だけ:作者名と許諾条件の文章を残せばよい
改変・商用利用・クローズドソース化も自由:書き換えても、製品に組み込んで売っても、ソースを非公開にしてもよい
派生物を同ライセンスにする義務がない:作ったソフトに別のライセンスを付けてよい

とくに3つ目の「派生物を同じライセンスにしなくてよい」という点が重要です。これにより、企業はMITライセンスのコードを自社の有料製品に組み込んでも、製品全体のソースを公開する必要がありません。ビジネスで使いやすいため、世界中で広く採用されています。

📌
採用例

ReactjQueryRails.NET Core多くのnpmパッケージもMIT

MITライセンスは、私たちが日常的に使うソフトウェアの土台で数多く採用されています。代表的な例は次のとおりです。
React:画面を作るためのJavaScriptライブラリ
jQuery:古くから使われるJavaScriptライブラリ
Rails:Webアプリ開発の枠組み(フレームワーク)
.NET Core:マイクロソフトの開発基盤
多くのnpmパッケージ:JavaScriptの部品集

ここで覚えておきたいのがGPLとの違いです。GPL(後述するコピーレフト型ライセンス)は、改変した派生物にも同じGPLでの公開を義務づけます。一方MITはコピーレフトではないため、その縛りがありません。
MIT(非コピーレフト):派生物のライセンスは自由
GPL(コピーレフト):派生物も同じGPLで公開する義務
この「コピーレフトかどうか」が両者を分ける最大のポイントです。

📝
練習問題

Q1. MITライセンスで配布されたソフトウェアを利用する際に、唯一守らなければならない義務として最も適切なものはどれか。

Q2. MITライセンスの説明として最も適切なものはどれか。

Q3. MITライセンスを採用しているソフトウェアの例として適切なものはどれか。

関連コンテンツ