오픈 소스 라이선스의 이해
1. 오픈 소스 라이선스의 정의
사용허락. 저작권자가 일정한 조건을 부여하여 다른 사람에게 특정 행위를 할 수 있도록 허가함. 오픈 소스 라이선스는 해당 오픈 소스 사용방법, 조건, 의무를 명시하고 있으며, 일를 위반할 경우 저작권 위반으로 규정함.
라이선스 운영의 이유 : 저작권자의 권리를 보호하기 위해서 만들어짐
eg) GPL, LGPL, BSDL, GPLv3, Apache License, Eclipse Public License ...
가장 높은 사용률을 보이는 것은 GPL, LGPL이며 대략 69%정도의 사용률을 가짐.
Public Domain 라이선스는 아무런 제한이 없는 공공 자산을 의미함. 저작권의 유효기간이 넘은 소스코드가 해당하는 라이선스
GPL과 GPLv3의 가장 큰 차이점은 Tivoization 에 해당하는 행위를 금지하는가 하지 않는가의 차이라고 생각하면된다. (사용자가 수정한 소스코드를 이용해서 원래의 장비를 기동하려하면 작동을 하지 못하도록 막는 행위)
공통적 준수 사항
저작권 관련 문구, 제품명 중복 방지, 서로 다른 라이선스의 조합
※ 라이선스의 양립성(Compatibility) 문제 : MPL, GPL을 조합한 라이센스를 적용할 경우 요구 조건이 서로 달라 배포 자체가 불가능해지는데 이런 일이 발생하는 경우를 의미함.
선택적 준수 사항
사용 여부 명시(참조나 출처, 문서로 만들어서 함께 배포가능), 소스 코드 공개(원본 소스 코드, 추가 및 수정분, 링크하여 사용하는 경우), 특허(오픈 소스 SW의 원취지 위배)
개략적 내용
현존 오픈 소스 라이선스는 약 1250개 이상.
Reciprocal 오픈소스 : GPL, LGPL. 오픈 소스를 사용하여 만든 소스코드도 오픈 소스로 공개
Permissive 오픈소스 : BSD, Apache. 오픈 소스를 사용하여 상업적인 용도의 사용도 가능
2. 오픈 소스 라이선스의 종류
GPL(General Public License)
가장 큰 영향력을 가진 대표적 라이선스. 리눅스, MySQL, GCC
GPL 소프트웨어의 파생물을 만들게 되면 파생물 역시 GPL
2007.6.27에 발표된 GPLv3의 경우 라이선스 구속력이 강화되어 적용
(GPL 침해 업체는 GPL 소프트웨어 사용금지, 그렇지 않은 업체의 경우 DRM 기능을 탑재한 기기에서만 GPL 적용 소프트웨어 사용)
GPL 대표준수 사항
1) 자유로운 사용 복제 배포 및 수정
2) 저작권 표시, 보증 책임이 없다는 표시 및 GPL에 의해 배포된다는 사실 명시
3) 파생 소스의 경우 GPL 라이선스로 소스 코드를 공개
4) 예외사항으로 리눅스 기반 App 경우 소스 공개 불필요. sun 자바의 경우 classpath 관련 소스코드 공개 불필요
5) 커널 모듈 형태의 Loadable Device Driver 소스 공개 불필요
6) 소스코드 또는 Written Offer 를 함께 제공
7) 자신의 특허를 Royalty-Free 로 제공한 경우에 한하여 이를 구현한 프로그램을 GPL로 배포 가능, 제3자 특허인 경우에도 특허권자가 Royalty-Free 형태의 라이선스를 제공해야만 해당 특허 기술을 구현한 프로그램을 GPL로 배포 가능
LGPL(Lesser General Public License)
OSS의 활발한 사용 권장을 위하여 GPL 규정을 약화시켜 사용 소프트웨어와 자유롭게 연결
LGPL 대표준수 사항
1) 소프트웨어에 대한 자유로운 사용, 복제, 배포 및 수정등을 허용함
2) 저작권 표시, 보증 책임이 없다는 표시 및 LGPL에 의해 배포된다는 사실을 명시
3) LGPL 라이브러리의 일부를 수정하는 경우 수정한 라이브러리를 LGPL에 의해 소스코드를 공개
4) LGPL 라이브러리에 응용프로그램을 링크할 경우 소스코드 공개 불필요
5) 라이브러리 수정 후 동일한 실행 파일 생성을 할 수 있도록 링크시 응용프로그램의 오브젝트 코드를 제공
6) 특허는 GPL과 동일
MPL(Mozilla Public License)
모질라 브라우저의 소스코드 공개. 개작시 소스코드 공개의 의무 및 상업적 이용 허락.
여러 상업적인 성격을 띠는 오픈 소스 라이선스들의 초기 모델
IBM공용 라이선스를 포함한 여러 상용 소프트웨어 라이선스의 근간
기타 라이선스
Academic Free License, IBM Public License, BSD License, .....
오픈 소스 라이선스의 비교
Copyleft : Copyright 에 대한 언어적 유희. 저작권법의 복제 및 수정에 대한 엄격한 제한을 거부. GPL이 대표적인 라이선스이며 Reciprocal 라이선스.
cf) BSD 와 같이 2차 저작물에 대해서 어떤 라이선스등 가능하게 하는 것을 Permissive 라이선스라고 부른다.
오픈 소스 SW의 양립성
A 라이선스 : 2차 저작물 A 라이선스로 선언
B 라이선스 : 2차 저작물 B 라이선스로 선언
이런 경우 라이선스는 양립성이 없다고 말한다.
다중 라이선스의 종류
이중 라이선스 : 2가지 종류의 라이선스를 하나의 소프트웨어에 구분하여 적용
(비지니스 모델로 주로 사용됨)
eg) MySQL AB : GPL과 상용 라이선스를 동시에 제공한다. 어떤 라이선스를 따르더라고 실재 사용자가 얻는 프로그램을 동일하지만, 상용 라이선스를 사용하는 경우 튜닝된 성능과 관리도구를 사용가능하게 만드는 점이 다르다.
첨부 파일: 02_오픈소스라이선스의이해_요약본_080728.pdf