오픈소스 라이선스별 특징 정리

오픈소스 라이선스 중에 가장 중요한 정보는 사용시에 소스코드의 공개 여부이다.
상용 소프트웨어를 만들었다가 내부에 오픈소스가 포함되어 있으면
라이선스에 따라서는 소스를 공개 해야 하는 상황이 온다.

그걸 조심해야 한다.

오픈소스 라이선스 특징표

Licesnse Division Description
GNU GPL v2.0/v3.0 필수 요구사항 ▶수정한 소스코드 또는 GPL 소스코드를 활용한 소프트웨어 모두 GPL로 공개
▶라이선스 및 저작권 명시
▶변경사항 명시
가능한 활동 ▶ 상업적 이용
▶ 배포, 수정 가능
▶ 특허신청, 사적이용
소스코드 공개 의무 있음
제약조건 높음
부가설명 자유소프트웨어재단에서 제정.GPL라이선스를 이용하여 개발시 개인적, 내적 이용에 한해서는 소스코드를 공개하지 않아도 되나, 외부 배포 시 해당 소프트웨어의 전체 소스코드를 공개해야 함. (3.0버전은 아파치 라이선스와 같이 사용 가능)
ex) 파이어폭스(2.0), 리눅스 커널, 깃, 마리아DB 등
LGPL 필수요구사항 ▶LGPL 소스코드를 단순 라이브러리 이용
이외의 목적으로 사용시 소스코드 공개
▶ 라이선스 및 저작권 명시
▶변경사항 명시
가능한활동 ▶ 상업적 이용
▶ 배포, 수정 가능
▶ 특허신청, 사적이용
소스코드 공개 의무 있음
제약조건 중간
부가 설명 기존 GPL의 높은 제약을 완화시키기 위해 탄생. LGPL로 작성된 소스코드를 라이브러리(정적, 동적)로만 사용하는 경우엔 소스코드를 공개하지 않아도 됨. 그 이외 사항은 GPL과 동일.
ex) 파이어폭스(2.1)
BSD 필수요구사항 ▶라이선스 및 저작권 명시
가능한 활동 ▶ 상업적 이용
▶ 배포, 수정 가능
▶ 특허신청, 사적이용
소스코드 공개 의무 없음
제약조건 낮음
부가 설명 버클리 캘리포니아 대학에서 제정. BSD 자체가 공공공기관에 만든 것이므로 공공환원의 의도가 강해서 저작권 및 라이선스 명시 이외엔 아무 제약이 없이 사용 가능한 자유로운 라이선스
ex) OpenCV
Apache 필수 요구사항 ▶라이선스 및 저작권 명시
▶변경사항 명시
가능한 활동 ▶ 상업적 이용
▶ 배포, 수정 가능
▶ 특허신청, 사적이용
▶ 2차 라이선스 가능
소스코드 공개의무 없음
제약 조건 낮음
부가 설명 아파치 소프트웨어 재단에서 제정. 소스코드 공개 의무 없음. 단, 아파치 라이선스 사용을 밝혀야 함. BSD보다 좀더 완화된 내용.
ex) 안드로이드, 하둡 등
MIT 필수요구사항 ▶라이선스 및 저작권 명시
가능한활동 ▶ 상업적 이용
▶ 배포, 수정 가능
▶ 특허신청, 사적이용
▶ 2차 라이선스 가능
소스코드 공개의무 없음
제약 조건 낮음
부가 설명 BSD 라이선스를 기초로 MIT 대학에서 제정. MIT 라이선스를 따르는 소프트웨어 사용하여 개발 시, 만든 개발품을 꼭 오픈소스로 해야 할 필요는 없음. 물론 소스코드 공개 의무도 없음.
ex) X 윈도 시스템
MPL 필수 요구사항 ▶수정한 소스코드 MPL 라이선스로 공개
(단순 활용 시 공개 의무 없음)
▶라이선스 및 저작권 명시
▶특허기술이 구현된 경우 관련 사실을 LEGAL이란 파일에 기록하여 배포
가능한 활동 ▶상업적 이용
▶ 배포, 수정 가능
▶ 특허신청, 사적이용
▶ 2차 라이선스 가능
소스코드 공개 의무 가변적
제약 조건 중간
부가 설명 1.0 버전은 넷스케이프 변호사였던 미첼 베이커가 작성, 1.1과 2.0버전은 모질라 재단에서 제정. 소스코드와 실행파일의 저작권 분리가 특징. MPL라이선스의 소스코드를 사용하여 개발했을 시, 수정한 소스코드는 MPL로 공개하고 원저작자에게 수정한 부분에 대해 알려야 하지만, 실행파일은 독점 라이선스로 배포 가능. 또한 MPL와 무관하게 작성된 소스코드는 공개할 필요 없음.
ex) 파이어폭스(1.1)
Eclipse 필수 요구사항 ▶수정한 소스코드를 Eclipse 라이선스로 공
개(단순 활용 시 공개 의무 없음)
▶ 라이선스 및 저작권 명시
가능한 활동 ▶상업적 이용
▶ 배포, 수정 가능
▶ 특허신청, 사적이용
▶ 2차 라이선스 가능
소스코드 공개의무 가변적
제약 조건 중간
부가 설명 이클립스 재단에서 제정. CPL을 대체하며, GPL보다 약한 수준으로 기업 친화적인 특징.
ex) Eclipse
CDDL 필수 요구사항 ▶수정한 소스코드 CDDL 라이선스로 공개
▶라이선스 및 저작권 명시
▶특허기술이 구현된 경우 관련 사실을 LEGAL이란 파일에 기록하여 배포
가능한 활동 ▶상업적 이용
▶ 배포, 수정 가능
▶ 특허신청, 사적이용
소스코드 공개의무 없음
제약 조건 낮음
부가 설명 코드 공헌자가 기여한 기술에 대해 가질 수있는 특허에 대해 아무런 우려없이 CDDL 라이선스 구성 요소를
사용.
 MPL의 기발은로 만들어짐. Apache 및 BSD 라이센스와 호환.
ex) OpenDJ