Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
ソフトウェアライセンス              Hiroaki Kono
Copyright   Copyright = 著作権   著作権とは     著作権(ちょさくけん)とは、言語、音楽、絵画、建築、     図形、映画、写真、コンピュータプログラムなどの表現     形式によって自らの思想・感情を創作的...
License   ライセンスとは     ライセンス(米: license、英: licence)は、それが存在      しなければ違法となる行為をすることを許可すること、      あるいはその許可を称する書面のことをいう。–    ...
Software License   ソフトウェアライセンスとは     ソフトウェアライセンス (software license) は、コン      ピュータのソフトウェアについて、ソフトウェア利用者      が遵守すべき事項を記載...
Open Source License GPL (2系,3系)       -   Linux Kernel (GPL2.0) LGPL (2系,3系)      -   OpenOffice.org (LGPL3.0) New BSD ...
Open Source Software(OSS)   書いたソースを公開するだけで「オープンソー    ス」というわけではない   オープンソースとはOSDに準拠していることを意    味する   すなわちオープンソースソフトウェアとは...
Open Source Definition(OSD) 1. 再頒布を許可すること 2. ソースコードの再頒布も許可すること     意図的にわかりづらくしたコードとかはダメ 3. 派生ソフトを同じライセンスでの頒布を許可すること 4...
Redistributions                                    更に改良   再頒布とは?                          できるぞこの人から見て                    ...
Redistributions   再頒布とは?                         頒布→丌特定の人に配ることこの人から見て                  配布→特定の人に配ること       Source        C...
Free Software?   フリーソフトウェアの定義*1     0. いかなる目的に対しても、プログラムを実行する自由     1. プログラムがどのように動作しているか研究し、必要      に応じて改造する自由     2....
Copy Left   FSF*1が提唱した著作権に対する考え方   コピーレフトの定義     著作物の利用、コピー、再配布、翻案を制限しない     改変したもの(二次的著作物)の再配布を制限しない     二次的著作物の利用、コ...
OSS Licenses
New BSD License   BSDライセンスを修正したライセンス 頒布時にはソースコードやドキュメント等に  Copyrightと本条件と無保証である旨の免責事項  を含めること 派生ソフトの広告に貢献者や団体の名前を許可  なく...
Original BSD License   修正される前のBSDライセンス   New BSD Licenseの    “派生ソフトの広告に貢献者や団体の名前を    許可なく記述していい”が “派生ソフトの広告に貢献者や団体の名前を 記...
MIT License(X11 License)   MITで開発されたX11(X Window System)の    配布に使われているライセンス   内容はNew BSD Licenseと同じ     http://opensour...
Apache License 2.0   Apache HTTP Serverの配布に使われている    ライセンス 内容はNew BSD Licenseとほぼ同じ “無料の特許ライセンスを不えること” “派生ソフト及びその広告にソフト...
GPL 2.0   コピーレフトなライセンス   そのまま頒布する場合     著作権・本条件・免責事項を書く   派生ソフトを頒布する場合     変更点を明示する     同じライセンス(GPL2.0)で頒布する     プロ...
GPL 3.0   技術等の進歩に伴ってライセンスも更新した   用語の選別、他ライセンスとの互換性、 Tivo化    への対処、DRMへの対処、ライセンス違反時の対    処法、などを修正した   Tivo化     GPLであるに...
LGPL 2.1, 3.0   GPLに比べて自由を守る力が弱い(Lesser)ライ    センス、限定的にコピーレフト   オープンソースなソフトウェアを利用して開発す    るとき、自分のコードには制約は課されない     emacs...
Things Programmer needs to care           about OSS
OSS Use   個人的に使う(再頒布(再配布)しない)     基本的に使用方法は問われない     AGPLの場合に限り例外あり   ライブラリとして利用して作ったものを頒布する    or 修正して頒布する    or リンクし...
License Compatibility   2つのソフトを組み合わせる時に、両者のライセンスに    互換性があるかどうか   GPL互換性     特にGPLとの互換性があるかないかが重要*1     GPLコードの含まれるコード...
GPL汚染   GPL汚染とは?     GPLは再頒布物にGPLを適用することを強制するため、      GPLのコードを1行でも含んでしまったソフトウェアは      ソースコードを全て公開する必要がある     現状では実質的にGP...
Multi Licensing (e.g. MySQL) マルチライセンシングとは複数種類の  ライセンスで配布する手法 利用者はどのライセンスを適用するか選べる     (1つだけ選べる)   MySQLのライセンス     GPL...
Creating OSS OSSとして公開する場合はOSI認定ライセンスの下で  公開すると良い ライセンスの記載方法はOSIサイトにテンプレが  あるのでそれを使う   e.g. MITライセンスで公開する場合     1. http...
Have fun coding!
Upcoming SlideShare
Loading in …5
×

Software license

1,270 views

Published on

勉強のため作ったものです。自分で調べた限りの知識でまとめたので内容に誤りがあるかもしれません。

Published in: Technology
  • Be the first to comment

Software license

  1. 1. ソフトウェアライセンス Hiroaki Kono
  2. 2. Copyright Copyright = 著作権 著作権とは  著作権(ちょさくけん)とは、言語、音楽、絵画、建築、 図形、映画、写真、コンピュータプログラムなどの表現 形式によって自らの思想・感情を創作的に表現した者に 認められる、それらの創作物の利用を支配することを目 的とする権利をいう。-wikipedia引用  著作権は著作者に対して付不される財産権の一種であり、 著作者に対して、著作権の対象である著作物を排他的に 利用する権利を認めるものである。-wikipedia引用  著作権者は、他人に対し、その著作物の利用を許諾する ことができる。-著作権法第63条1項
  3. 3. License ライセンスとは  ライセンス(米: license、英: licence)は、それが存在 しなければ違法となる行為をすることを許可すること、 あるいはその許可を称する書面のことをいう。– wikipedia引用  運転免許証 → 持ってなければ車運転しちゃダメ  医師免許証 → 持ってなければ医業しちゃダメ  etc...
  4. 4. Software License ソフトウェアライセンスとは  ソフトウェアライセンス (software license) は、コン ピュータのソフトウェアについて、ソフトウェア利用者 が遵守すべき事項を記載した文書である。-wikipedia引 用  要するにソフトウェアの利用上やっていいこととダメな ことを書いたもの ソースコードを公開している場合はソースコード のライセンスも含まれる  オープンソースライセンスが有名である
  5. 5. Open Source License GPL (2系,3系) - Linux Kernel (GPL2.0) LGPL (2系,3系) - OpenOffice.org (LGPL3.0) New BSD License - FreeBSD, PostgreSQL Apache License - Apache HTTP Server MIT License - X11, jQuery etc....
  6. 6. Open Source Software(OSS)  書いたソースを公開するだけで「オープンソー ス」というわけではない  オープンソースとはOSDに準拠していることを意 味する  すなわちオープンソースソフトウェアとはOSDに 準拠したライセンスの下で公開されているソフト ウェアのこと  OSD準拠のライセンス*1は OSI認定マークによって証明できる→Open Source Initiative *1 http://opensource.org/licenses/alphabetical
  7. 7. Open Source Definition(OSD) 1. 再頒布を許可すること 2. ソースコードの再頒布も許可すること  意図的にわかりづらくしたコードとかはダメ 3. 派生ソフトを同じライセンスでの頒布を許可すること 4. 派生ソフトの再頒布はパッチ形式を義務付けても良い 派生ソフトを別の名前で再頒布することを義務付けても良い 5. 個人(団体)への差別禁止 6. 利用分野への差別禁止  兵器利用は丌可とか制限できない 7. 再頒布時に別のライセンスの付加を求めてはいけない 8. 特定ソフトにおいてのみ有効なライセンスとしてはいけない  それが何かの一部であるとき、全体と一緒のときだけOSSとかはダメ 9. 共に頒布するソフトを制限してはいけない  こんなソフトと一緒に頒布したらダメ、とかいう制限はできない 10. 特定技術に依存したライセンスであってはならない  windows上で動かす場合のみOSSとかはダメ http://opensource.org/osd http://www.opensource.jp/osd/osd-japanese.html
  8. 8. Redistributions 更に改良 再頒布とは? できるぞこの人から見て (Modified) Source Source Code Code 再頒布 Binary (Modified) Code BinaryOSS OSS Codeですよ ですよ 便利だ!
  9. 9. Redistributions 再頒布とは? 頒布→丌特定の人に配ることこの人から見て 配布→特定の人に配ること Source Code 再頒布 Binary (Modified) Code Binary プロプラ CodeOSS イエタリですよ ですよ 便利だ!
  10. 10. Free Software? フリーソフトウェアの定義*1  0. いかなる目的に対しても、プログラムを実行する自由  1. プログラムがどのように動作しているか研究し、必要 に応じて改造する自由  2. 身近な人を助けられるよう、コピーを再配布する自由  3. 改変した版を他に配布する自由 Proprietary Software OSDとの違いは? フリーソフトウェアではないもの  思想がずれているようです*2  “Open source is a development methodology; free software is a social movement.”*3 *1 http://www.gnu.org/philosophy/free-sw.html *2 http://www.gnu.org/philosophy/open-source-misses-the-point.html *3http://www.gnu.org/philosophy/free-software-for-freedom.html
  11. 11. Copy Left FSF*1が提唱した著作権に対する考え方 コピーレフトの定義  著作物の利用、コピー、再配布、翻案を制限しない  改変したもの(二次的著作物)の再配布を制限しない  二次的著作物の利用、コピー、再配布、翻案を制限して はならない  コピー、再配布の際には、その後の利用と翻案に制限が 無いよう、全ての情報を含める必要がある(ソフトウェ アではソースコード含む)  翻案が制限されない反面、原著作物の二次的著作物にも 同一のコピーレフトのライセンスを適用し、これを明記 しなければならない -wikipedia引用 *1 Free Software Foundation
  12. 12. OSS Licenses
  13. 13. New BSD License BSDライセンスを修正したライセンス 頒布時にはソースコードやドキュメント等に Copyrightと本条件と無保証である旨の免責事項 を含めること 派生ソフトの広告に貢献者や団体の名前を許可 なく記述していい 以上の条件の下で改変の有無・形式を問わず 頒布してOK URL先を見ると早い  http://opensource.org/licenses/BSD-3-Clause
  14. 14. Original BSD License 修正される前のBSDライセンス New BSD Licenseの “派生ソフトの広告に貢献者や団体の名前を 許可なく記述していい”が “派生ソフトの広告に貢献者や団体の名前を 記述すること”だった 広告が大量の貢献者の名前で埋め尽くされるので この条項を消した
  15. 15. MIT License(X11 License) MITで開発されたX11(X Window System)の 配布に使われているライセンス 内容はNew BSD Licenseと同じ  http://opensource.org/licenses/MIT BSDライセンスはNewとOriginalを混同しやすい ため、MITライセンスを用いる人は多い
  16. 16. Apache License 2.0 Apache HTTP Serverの配布に使われている ライセンス 内容はNew BSD Licenseとほぼ同じ “無料の特許ライセンスを不えること” “派生ソフト及びその広告にソフトの名前やト レードマークを勝手に使わないこと” “変更箇所を変更したとわかるようにすること” などが加えられている
  17. 17. GPL 2.0 コピーレフトなライセンス そのまま頒布する場合  著作権・本条件・免責事項を書く 派生ソフトを頒布する場合  変更点を明示する  同じライセンス(GPL2.0)で頒布する  プログラム実行時の対話的な部分で著作権・ライセンス 条項を表示する バイナリコードを再頒布する場合  ソースコード(又はその入手方法)を添付する
  18. 18. GPL 3.0 技術等の進歩に伴ってライセンスも更新した 用語の選別、他ライセンスとの互換性、 Tivo化 への対処、DRMへの対処、ライセンス違反時の対 処法、などを修正した Tivo化  GPLであるにも関わらずハードウェアの制限によって ユーザの派生ソフトの作成を妨害するようなもの
  19. 19. LGPL 2.1, 3.0 GPLに比べて自由を守る力が弱い(Lesser)ライ センス、限定的にコピーレフト オープンソースなソフトウェアを利用して開発す るとき、自分のコードには制約は課されない  emacs, Eclipse等 しかしライブラリの場合は話は別、派生ソフトと みなされてしまう  jQuery, FuelPHP等(どちらもGPL系ではないが) そのライブラリの動的リンクを派生ソフトとみな さないのがLGPL  lddコマンドで出るやつが動的リンクされてるもの
  20. 20. Things Programmer needs to care about OSS
  21. 21. OSS Use 個人的に使う(再頒布(再配布)しない)  基本的に使用方法は問われない  AGPLの場合に限り例外あり ライブラリとして利用して作ったものを頒布する or 修正して頒布する or リンクして利用するものを頒布する  基本的に派生ソフトと見做され、コピーレフトであれば ソースコードの頒布も必要 ○ 配布であれば、配布対象者へのコードの配布でOK
  22. 22. License Compatibility 2つのソフトを組み合わせる時に、両者のライセンスに 互換性があるかどうか GPL互換性  特にGPLとの互換性があるかないかが重要*1  GPLコードの含まれるコードは全てGPLになる ○ GPLが許していることを禁止しているライセンスとは 互換性がない ○ e.g. Apache License x GPL2.0は非互換(特許権停止について) GPL互換性リスト  http://www.gnu.org/licenses/license-list.html *1 http://www.dwheeler.com/essays/gpl-compatible.html
  23. 23. GPL汚染 GPL汚染とは?  GPLは再頒布物にGPLを適用することを強制するため、 GPLのコードを1行でも含んでしまったソフトウェアは ソースコードを全て公開する必要がある  現状では実質的にGPLのコードをビジネスに使うのは 難しいということになっている GPLのコードをビジネスに使っている例  RedHat*1 GPLのコードをこっそり使っちゃった例  ElecomルータGPL違反*2 *1 http://jp.redhat.com/ *2 http://slashdot.jp/story/04/06/23/0624231/
  24. 24. Multi Licensing (e.g. MySQL) マルチライセンシングとは複数種類の ライセンスで配布する手法 利用者はどのライセンスを適用するか選べる  (1つだけ選べる) MySQLのライセンス  GPL  Commercial License  MySQLを内包したようなプログラムを配布するにはGPLとし て公開するかコマーシャルライセンスを購入する必要がある  MySQLのライブラリを使用したソフトを配布する場合等は 特に気にする必要無し*1 *1 http://www.mysql.gr.jp/
  25. 25. Creating OSS OSSとして公開する場合はOSI認定ライセンスの下で 公開すると良い ライセンスの記載方法はOSIサイトにテンプレが あるのでそれを使う e.g. MITライセンスで公開する場合  1. http://opensource.org/licenses/MIT にアクセス  2. ライセンス記述用のテキストファイルやソースコードの ヘッダ部分等にテンプレの必要個所を埋めて貼り付ける  3. ソースコードを添付してどこかしらにアップロードして公開する ○ githubやらbitbucketやら自分のサーバやら
  26. 26. Have fun coding!

×