Gpl 라이센스란 - gpl laisenseulan

오픈소스 소프트웨어의 라이선스란 오픈소스 소프트웨어 개발자와 이용자 간에 사용 방법 및 사용 조건을 명시한 계약을 의미한다. 만일 개발자와 일정한 조건으로 라이선스 계약을 체결한 이용자가 미리 약정한 사용방법을 어긴 경우, 개발자는 라이선스 계약 위반과 저작권 침해를 주장할 수 있다. OSI는 현재 70여개의 라이선스를 인정하고 있다.

이 중 실제로 많이 사용되고 있는 라이선스로는 GPL(General Public License), LGPL(Lesser General Public License), MPL(Mozilla Public License), BSD(Berkeley Software Distribution), AL(Apache License)가 있다.

이들의 라이선스 내용은 자유로운 사용·수정·배포를 인정하다는 점에서 공통이나 구체적으로 살펴보면 상이한 라이선스 조건을 가지고 있다. 대체로 오픈소스 소프트웨어를 ‘공짜’로 쓰는데만 관심이 있고 개량에 기여하지 않는 것을 막아 보고자 라이선스 정책을 만들어 놓은 것이다. 소소코드 공개성과 전파성이 강한 것부터 정리하면 GPL, LGPL, MPL, BSD, AL가 된다.

GPL은 FSF가 주도하고, 현재 버전 3까지 나와 있다. 그 내용으로는 만일 소스코드를 배포하는 경우 GPL에 의해 배포된다는 사실을 명시해야 하며, 소소코드를 수정하는 경우 반드시 개작 부분은 공개해야 하고, 더불어 소스코드를 링크하는 경우에도 모두 소스코드를 공개해야 한다. 우리나라의 경우 GPL 라이선스 소프트웨어 등을 카이스트(ftp://ftp.kaist.ac.kr/gnu/gnu/) 등에서 다운로드할 수 있다.

LGPL은 FSF가 주도하고 현재 버전 3까지 나와 있다는 점에서 GPL가 동일하나, 일부 라이브러리(Library)에 대해 GPL보다 소스코드의 공개정도를 다소 완화된 형태로 사용할 수 있도록 만들었다는 특징이 있다. 따라서 LGPL 라이브러리의 일부를 수정하는 경우 수정한 라이브러리의 소스코드 공개해야 하나, LGPL 라이브러리에 응용프로그램을 링크시킬 경우 GPL과 달리 해당 라이브러리만 공개하면 되고 해당 응용프로그램의 소스를 공개할 필요가 없다.

MPL은 모질라 프로젝트(Mozilla Project)가 주도하고 현재 버전 2.0까지 나와 있다. 소소코드의 수정 시 소스코드 공개는 필수적이지만, MPL 코드와 다른 코드를 결합해 프로그램을 만들 경우 MPL 코드를 제외한 결합 프로그램에 대한 소스코드는 공개할 의무는 없다. 우리나라의 경우 카이스트(ftp://ftp.kaist.ac.kr/mozilla/) 등에서 MPL 라이선스 소프트웨어를 다운로드받을 수 있다.

BSD는 캘리포니아 대학에서 개발된 라이선스로서 수정 부분에 대해 소소코드 공개는 의무가 아니며, BSD 소스코드를 상용 프로그램과 조합하는 것도 허용되며, 이 경우 2차적 저작물에 대한 공개의무도 없다.

AL은 아파치 재단(Apache Software Foundation, ASF)에 의해 운영되며, BSD 라이선스와 비슷해 소스코드 공개 등의 의무가 발생하지 않는다. 다만 ‘아파치(Apache)’라는 표장에 대한 상표권을 침해하지 말아야 한다.

이상의 5가지 라이선스를 비교하면 아래 표와 같다.

Gpl 라이센스란 - gpl laisenseulan

위의 라이선스가 적용된 소프트웨어는 소스포지(http://sourceforge.net) 또는 프레시미트(http://freshmeat.net)에서 무료로 다운로드받아 볼 수 있다. 다양한 용도의 창의적인 소프트웨어를 무료로 체험하면서 즐거움을 느껴볼 수 있을 것이다.

* 법무법인 민후 김경환 대표변호사 작성, 디지털데일리(2014. 2. 21.), 마이크로소프트웨어 기고.

시스템구조

오픈소스 라이선스_GPL 2.0, GPL 3.0, LGPL, BSD, Apache, MPL

스윙스윙 2021. 9. 30. 21:57

▣ 오픈소스 라이선스_GPL 2.0, GPL 3.0, LGPL, BSD, Apache, MPL

  무료 이용가능 배포 허용가능 소스코드 취득가능 소스코드 수정가능 2차적 저작물 재공개 의무 독점SW와 결합가능
GPL O O O O O X
LGPL O O O O O O
MPL O O O O O O
BSD 라이선스 O O O O X O
아파치 라이선스 O O O O X O

오픈소스SW 라이선스의 의무사항은 각각의 라이선스마다 조금씩 차이가 있지만 크게 나누어 보면 공통적으로‘저작권관련문구유지’,‘ 제품명 중복방지’,‘ 서로 다른 라이선스의 SW 조합시 조합 가능 여부확인’등이있고, 선택적으로는‘소스코드공개’,‘ 특허관련사항준수’등이 있다.

GNU GPL 2.0

GPL은 현재 가장 많은 오픈소스 소프트웨어가 채택하고 있는 라이센스이다.

오픈소스 라이센서들 중에서 가장 많이 알려져 있고 의무사항들도 타 라이센스에 비해 엄격한 편이다.

  • SW를 배포하는 경우 저작권 표시, 보증책임이 없다는 표시 및 GPL에 의해 배포된다는 사실을 명시
  • SW를 수정하거나 새로운 SW를 링크(Static과 Dynamic linking 모두)시키는 경우 GPL에 의해 소스코드를 제공해야 함
  • Object Code 또는 Executable Form으로 GPL SW를 배포하는 경우, 소스코드 그 자체를 함께 배포하거나 또는 소스코드를 제공받을 수 있는 방법에 대한 정보를 함께 제공해야 함
  • 자신의 특허를 구현한 프로그램을 GPL로 배포하는 경우에는 그 프로그램을 GPL 조건에 따라 이용하는 이용자에게 특허에 대한 사용료를 받을 수 없으며, 제3자의 특허를 구현한 프로그램인 경우에는 그 특허권자가 GPL 조건에 따라 이용하는 프로그램 이용자에 대하여 특허 사용료를 받지 않을 때에만 그 프로그램을 GPL로 배포하는 것이 가능

GPL 3.0

기본적인 내용은 GPL 2.0과 동일하지만 GPL 3.0에서는 몇가지 추가되거나 변경된 부분이 있다.

  • GPL 3.0의 소스코드를 특정한 제품에 포함시키거나 혹은 그와 함께 배포하는 경우에는 해당 소스에 설치 정보(Installation Information)를 함께 제공해야 함. 다만 SW가 롬(ROM)에 설치된 경우처럼, 해당제품의 제조업체나 여타 제3자도 수정된 코드를 제품에 설치할 수 없는 경우에는 설치정보를 제공하지 않아도 됨
  • DRM(Digital Rights Management)9)과 관련하여 각국의 법률에 의해 보호되는 이익을 포기 해야 함
  • 특허와 관련해서 원래의 소스코드를 개선하여 배포한 기여자의 경우 자신이 기여한 부분에 대해서는 비차별적이고 특허 사용료가 없다는 내용의 라이선스를 제공해야 함
  • 특허와 관련해서 라이선시 등으로부터 특허소송이 제기되는 경우 소송을 제기한 날에 특허소 송을 제기한 라이선시의 오픈소스SW 라이선스는 종료됨
  • Apache License 2.0 및 Affero GPL과 양립 가능함

GNU Lesser GPL(LGPL) 2.1

GPL 라이센스를 사용하기만 해도 소스코드를 공개해야 한다는 부담 때문에 라이브러리와 모듈로의 링크를 허용한 라이선스이다

원래는 한정된 라이브러리에만 적용하려는 의로도 'Library GPL'이라는 이름을 붙였으나, 모든 라이브러리에 적용된다는 오해를 사 2.1 버전으로 'Lesser GPL'로 변경되었다.

⇒ 잠깐! 여기서 'Lesser란?' → (크기.양.중요성이) 더 적은, 덜한

  • SW를 배포하는 경우 저작권 표시, 보증책임이 없다는 표시 및 LGPL에 의해 배포된다는 사실을 명시
  • LGPL 라이브러리의 일부를 수정하는 경우 수정한 라이브러리의 소스코드 공개
  • LGPL 라이브러리에 응용프로그램을 링크시킬(Static과 Dynamic Linking 모두) 경우 해당 응용프로그램의 소스를 공개할 필요 없음. 다만 사용자가 라이브러리 수정 후 동일한 실행 파일을 생성할 수 있도록 Static Linking시에는 응용프로그램의 Object Code를 제공해야 함
  • 특허의 경우 GPL과 동일함

Berkeley Software Distribution(BSD) License

BSD 라이센스는 GPL/LGPL보다 덜 제한적이기 때문에 허용 범위가 넓다.

가장 큰 차이점은 소스코드를 공개하지 않아도 된다는 점이다.

  • 소프트웨어를 배포하는 경우 저작권 표시, 보증 책임이 없다는 표시
  • 수정 프로그램에 대한 소스 코드의 공개를 요구하지 않기 때문에 상용 소프트웨어에 무제한 사용가능

Appache License

아파치 라이선스(Apache License)는 아파치 웹서버를 포함한 아파치 재단(ASF: Apache Software Foundation)의 모든 SW에 적용되는 라이선스로 BSD 라이선스와 비슷하여 소스코드 공개 등의 의무가 발생하지 않는다. 다만“Apache”라는 이름에 대한 상표권을 침해하지 않아야 한다는 조항이 명시적으로 들어가 있고, 특허권에 관한 내용이 포함되어 BSD 라이선스보다는 좀 더 법적으로 완결된 내용을 담고 있다. 특히 아파치 라이선스 2.0에서 특허에 관한 조항이 삽입되어 GPL 2.0으로 배포되는 코드와 결합하는 것이 어렵다는 문제가 었었는데, GPL 3.0 에서는 이 문제를 해결하여 아파치 라이선스로 배포되는 코드가 GPL 3.0으로 배포되는 코드와 결합하는 것이 가능해졌다.

  • “Apache”라는 이름에 대한 상표권을 침해하지 않아야 함
  • SW를 배포하는 경우 저작권 표시, 보증책임이 없다는 내용을 표시
  • 수정프로그램에 대한 소스코드의 공개를 요구하지 않기 때문에 상용 SW에 무제한 사용가능

MPL(Mozilla Public License)

MPL은 Netscape 브라우저의 소스코드를 공개하기 위해 개발된 라이선스로 공개하여야 할 소스코드의 범위를 좀 더 명확하게 정의하고 있다. 즉, GPL에서는 링크되는 SW의 소스코드를 포함하여 공개하여야 할 소스코드의 범위가 모호하게 정의되어 있지만 MPL에서는 링크 등의 여부에 상관없이 원래의 소스코드가 아닌 새로운 파일에 작성된 소스코드에 대해서는 공개의 의무가 발생하지 않는다.

  • SW를 배포하는 경우 저작권 표시, 보증책임이 없다는 표시 및 MPL에 의해 배포된다는 사실을 명시
  • MPL 코드를 수정한 부분은 다시 MPL에 의해 배포 
  • MPL 코드와 다른 코드를 결합하여 프로그램을 만들 경우 MPL 코드를 제외한 결합 프로그램 에 대한 소스코드는 공개할 필요가 없음
  • 소스코드를 적절한 형태로 제공하는 경우, 실행파일에 대한 라이선스는 MPL이 아닌 다른 것 으로 선택가능
  • 특허기술이 구현된 프로그램의 경우 관련 사실을‘LEGAL’파일에 기록하여 배포

2018년 97번

Gpl 라이센스란 - gpl laisenseulan

정답 : 4번

LGPL 라이브러리에 응용프로그램을 링크시킬(Static과 Dynamic Linking 모두) 경우 해당 응용프로그램의 소스를 공개할 필요 없음. 다만 사용자가 라이브러리 수정 후 동일한 실행 파일을 생성할 수 있도록 Static Linking시에는 응용프로그램의 Object Code를 제공해야 함

GPL 2.0 라이선스로 SW를 수정하거나 새로운 SW를 링크(Static과 Dynamic linking 모두)시키는 경우 GPL에 의해 소스코드를 제공해야 함


2013년 80번

Gpl 라이센스란 - gpl laisenseulan

정답 : 1번

하이브리드 라이선스가 아니라 듀얼 라이선스(dual license)임


2020년 37번

Gpl 라이센스란 - gpl laisenseulan

정답 : 1번

허용적 라이선스
(Permissive license)
기존 라이선스의 수정을 금지하지 않는 라이선스임. 이러한 라이선스가 적용된 오픈소스를 그대로, 또는 그 수정물, 파생물을 재배포하는 경우 재배포자는 기존 라이선스의 내용을 따라야 하지만 기존 라이선스와 다른 라이선스로 재배포할 수 있음

Apache 2.0, BSD-2, BSD-3, MIT

약한 카리레프트 라이선스
(Weak copyleft license)
약한 카피레프트 사항을 가지는 것으로 분류되는 라이선스. 오픈소스코드 및 라이선스에서 정의하고 있는 파생물 범위에 한함

EPL 1.0, EUPL 1.0, LGPL 2.1, LGPL 3.0, MPL 2.0, MS-PL이 약한 카피레프트 라이선스로 분류됨

강한 카피레프트 라이선스
(Strong copyleft license)
강한 카피레프트 사항을 가지는 것으로 분류되는 라이선스. 수정물 뿐 아니라 파생물 전체에 동일한 라이선스를 적용할 것을 요구함. 즉 재배포시에는 기존의 라이선스를 그대로 적용하여 재배포해야 하며, 다른 라이선스는 동일한 규정일지라도 적용할 수 없음

GPL 2.0, GPL 3.0, AGPL 3.0이 강한 카피레프트 라이선스로 분류됨