라이선스의 종류에 대해 알아볼까한다. 최근 MIT 라이선스인 오픈 소스를 가지고 2차 창작물로 만들고 있는데, 내부에 LGPL라이선스를 가지고 있는 라이브러리를 보게 되었다.

개념이 조금 헷갈리기 시작해서 공부할 겸 적어볼까한다.

라이선스 종류

  1. Apache License
  2. GNU(Gnu is Not Unix)
  3. General Public License(GPL)
  4. Affero GPL(AGPL)
  5. Lesser GPL(LGPL)
  6. MIT License

라이선스 종류는 더 있겠지만, 우선 가장 흔하게 볼 수 있는 라이선스만 먼저 다뤄보겠다.

Apache License

많이 들어온 아파치 라이선스는 아파치 소프트웨어 재단에서 자체적으로 만든 라이선스이다.
아파치 라이선스는 누구든 자유롭게 사용이 가능하며, 부분 혹은 전체를 개인적 혹은 상업적 목적으로 이용할 수 있다. 소스코드에 대한 공개 의무 또한 없다.

그러나 반드시 아파치 라이선스 버전 및 표기는 포함하여 아파치 라이선스로 개발된 소프트웨어라는 것을 명확하게 밝혀야 한다.

필수사항

  • 라이선스 및 저작권 명시
  • 변경사항 명시

사용범위

  • 상업적 이용 가능
  • 배포, 수정 가능
  • 특허 신청, 사적이용 가능
  • 2차 라이선스 가능

공개 유무

소스코드 공개 의무 없지만 아파치 라이선스 사용을 밝혀야 함

GNU(Gnu is Not Unix) , General Public License(GPL)

우선 설명하기 전에 Copyleft에 대해 잠깐 보고 가자.

Copyleft

Copyleft는 지식, 정보, 저작물은 자유롭게 공유되어야 한다라고 이야기한다.
1980년대 리처드 스톨먼이 자유로운 소프트웨어 이용을 주장하면서 나왔다고 한다.

그래서 프로그램을 무료로 만들고 프로그램의 모든 수정 및 확장 버전도 무료로 요구한다.

GNU(Gnu is Not Unix)

GNU는 1980년대 소프트웨어의 저작권에 대한 법률이 강화되면서 리처드 스톨먼에 의해 GNU 프로젝트와 Free Software Foundation(자유 소프트웨어 재단)을 세우고 여러 프로그래머들이 합류하며 시작되었다.

GNU프로젝트를 따르는 소프트웨어는 누구나 자유롭게 실행, 복사, 수정, 배포할 수 있고 이 권리를 침해할 수 없다.

GPL (General Public License)

GPL는 소스코드를 이용하게 될 경우, 전체를 포함한 소스 코드를 공개해야 한다. 이렇게 소스코드를 공개하는 이유는 최종적으로 오픈 소스 진영의 발전을 도모하는 것이 목적이라고 볼 수 있기 때문이다.

필수사항

  • 수정한 소스코드 또는 GPL 소스코드를 활용한 소프트웨어 모두 GPL로 공개
  • 라이선스 및 저작권 명시
  • 변경사항 명시

사용범위

  • 상업적 이용 가능
  • 배포, 수정 가능
  • 특허 신청, 사적이용 가능

공개 유무

개발시 개인적, 내적 이용에 한해서는 소스코드를 공개하지 않아도 되나, 외부 배포 시 해당 소프트웨어의 전체 소스코드를 공개해야 함.

Affero GPL(AGPL)

AGPL은 기존의 GPL v3을 수정한 것인데, 만약 서버에서 프로그램을 실행하여 서버 상에서 다른 사용자들과 통신하게 된다면 실행되고 있는 프로그램의 소스 코드를 사용자들이 다운로드 받을 수 있게 해야 한다.

필수 사항

  • 수정한 소스 코드 및 프로그램 모두 AGPL로 공개
  • 라이선스 및 저작권 명시
  • 변경사항 명시
  • 네트워크내의 프로그램 사용자에게 소스코드 공개

사용범위

  • 상업적 이용 가능
  • 수정 및 배포 가능
  • 특허 가능
  • 사적 이용 가능

Lesser GPL(LGPL)

GPL에서 조금 더 완화된 라이선스이다. LGPL로 작성된 소스코드를 라이브러리(정적, 동적)로만 사용하는 경우에는 소스코드를 공개하지 않아도 된다(명시만 하면 됨). 그러나 LGPL 라이브러리의 소스코드를 수정하였을 때에는 2차적 파생 저작물에 해당하므로 라이브러리의 소스코드를 제공해야한다.

필수 사항

  • 수정한 소스 코드 및 프로그램 모두 LGPL로 공개
  • 라이선스 및 저작권 명시
  • 라이브러리에만 적용

사용범위

  • 상업적 이용 가능
  • 수정 및 배포 가능
  • 특허 가능
  • 사적 이용 가능

공개 유무

LGPL로 작성된 소스코드를 라이브러리(정적, 동적)로만 사용하는 경우에 소스코드를 공개하지 않아도 됨. 그러나 LGPL 라이브러리의 소스코드를 수정하게 되면 2차적 파생 저작물에 해당되므로 라이브러리의 소스코드를 공개해야 함

GPL vs LGPL 차이점

GPL은 소스코드를 전부 공개, LGPL은 2차적 파생 저작물이 아니라면 단순한 라이브러리나 모듈 링크를 허용하는 라이선스.

MIT License

MIT에서 해당 대학의 소프트웨어 공학도들을 돕기 위해 개발한 라이선스이다.

필수 사항

  • 라이선스 및 저작권 명시

사용범위

  • 상업적 이용 가능
  • 수정 및 배포 가능
  • 특허 가능
  • 사적 이용 가능
  • 2차 라이선스 가능

Reference

https://ldap.or.kr/
https://datalibrary.tistory.com/111