오픈소스 정의 및 라이선스 종류

2019. 4. 29. 18:06Programing

자료 출처 : Pixabay

 

들어가며

오픈소스가 대중화 되어 있고 자주 사용해 왔지만, 라이센스에 관한 부분에 대해선느 귀찮아서 였는지 그냥 이런게 있구나… 하면서 지나쳐 왔다. 하지만, 잘못된 이해 관계로 인해서 불미스러운 일이 발생 뻔하여 다른 개발자들은 이러한 일을 겪지 않게 정보를 공유하고자 글을 작성한다.

 

오픈 소스란?

위키백과를 보면 오픈 소스에 대하여 아래와 같이 정의하고 있다.

오픈 소스(open source, 문화어공개원천)는 소프트웨어 혹은 하드웨어의 제작자의 권리를 지키면서 원시 코드를 누구나 열람할 수 있도록 한 소프트웨어 혹은 오픈 소스 라이선스에 준하는 모든 통칭을 일컫는다. 어원에 대해서는 History of the OSI 자료에 따르면, 1998년 2월 3일 넷스케이프 브라우저의 원시 코드에 대해 어떠한 형태로 공개할까하는 전략회의에서 붙여진 새로운 용어라고 설명되어 있다.

소스 코드를 공개한다고 해서 모두 오픈 소스인 것은 아니다. 예를 들어, 마이크로소프트는 전체 비율로 보았을 때 극소수의 고객(주로 정부나 거대 다국적 기업 또는 대학교  연구소)들에게 마이크로소프트 윈도우의 소스를 공개했다. 오로지 보안 유지를 위해서만 소스를 직접 수정할 수 있으며, 그 수정본을 재배포하는 것은 금지되어 있다. 이것은 오픈 소스의 의의에 어긋나므로 이러한 경우는 오픈 소스라 부르지 않는다.

광의의 의미로는 이렇게 원래에는 컴퓨터 소프트웨어 개발에서 유래했지만 현재에는 오픈 소스 방식이라고 칭하는 가치들인 공동참여,오픈교환,투명성등을 두루 일컫는 개념들뿐만 아니라 이러한 방식을 일부분으로 포함 함으로써 지속 가능한 목표로 표방하는 행위까지로 넓혀져 가고 있다. [1]

 

출처: <https://ko.wikipedia.org/wiki/%EC%98%A4%ED%94%88_%EC%86%8C%EC%8A%A4>

 

그대로 공동참여, 오픈교환, 투명성 등의 개념을 두루 포함하여, 오픈되어 있는 소스를 이야기 하는 것이다. 여기서 많이들 착각하는 것이, 오픈 소스는 무료라고 착각하는 부분이다. 일부분은 맞지만, 이를 가벼이 여겼다가 좋은 경험을 하게 될지도 모르는 일이다.

그렇다면, 라이선스의 종류에는 어떤 것들이 존재할까?

 

라이선스의 종류

가장 널리 알려진 라이선스로는 Apache, MIT, GPL이다. 오픈 소스의 종류가 다양한게 첫번째 원인이 아닐까 생각된다.

본인이 오픈 소스를 활용하여 개인의 이익을 추구한다면, Apache / MIT / Artistic / BSD License를 사용하는 것을 권하며, 이를 사용한 오픈 소스를 사용하기 위해서는 사전에 개발자를 통해 추가 확인을 받는 것이 가장 안전한 방법이지 않을까 생각된다.

라이선스

설명 및 필수 사항

허락 조건

금지 조건

적용 사례

Apache License

 

제약조건:하

아파치 소프트웨어 재단이 자체 SW에 적용하기 위해 자체적으로 만든 라이선스다. 소스코드 공개 의무는 없지만, 저자권 명시에 대 의미는 존재한다.

 

    • 라이선스 및 저작권 명시 (아파치 라이선스 버전 2.0 반드시 명시)

    • 변경사항 안내

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 특허 신청 가능

    • 사적 이용 가능

    • 2차 라이선스

    • 보증책임 없음

    • 상표권 침해 금지

안드로이드(v2.0)

하둡(v2.0)

 

MIT License

 

제약조건:하

미국 매사추세츠공과대학교에서 해당 대학 SW 공학도들을 돕기 위해 개발한 라이선스다. 라이선스와 저작권 명시만 따른다면, 가장 느슨한 조건을 가진 라이선스 중 하나로 인기가 많은 오픈소스 중 하나이다.

 

    • 라이선스 및 저작권 명시

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 사적 이용 가능

    • 2차 라이선스

    • 보증책임 없음

부트스트랩

Angular.js 

Backbone.js

jQuery

Artistic License

 

제약조건:하

펄 로그래밍 언어를 사용하던 래리 월이 표준 펄 기능을 위해 만든 라이선스다.

 

    • 라이선스 및 저작권 명시

    • 변경사항 안내

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 사적 이용 가능

    • 2차 라이선스

    • 보증책임 없음

    • 상표권 침해 금지

NPM(Node Package Manager)(v2.0)

BSD License

 

제약조건:하

Berkeley Software Distribution의 약어로 버클리의 캘리포니아대학에서 배포하는 공개 SW 라이선스다. 명칭에서도 볼 수 있듯이, 공공의 몫으로 돌려주자는 의미가 강하므로, 라이선스 자체에는 아무러 제한없이 누구나 자신의 용도로 사용이 가능하다.

 

    • 라이선스 및 저작권 명시

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 사적 이용 가능

    • 2차 라이선스

    • 보증책임 없음

macOS

iOS

 

GNU GPL v2.0/v3.0

 

제약조건:상

자유소프트웨어재단에서 만든 라이선스다. 사용권에 대해서는 굉장히 자유로우나 이를 활용한 모든 소프트웨어는 모두 GPL로 공개하야 한다.

 

    • 수정한 소스코드 혹은 GPL 소스코드를 활용한 소프트웨어 모두 GPL로 공개

    • 라이선스 및 저작권 명시

    • 변경사항 안내

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 특허 신청 가능

    • 사적 이용 가능

    • 보증책임 없음

    • 2차 라이선스

모질라 파이어폭스(v2.0)

리눅스 커널(v2.0)

(v2.0)

마리아DB(v2.0)

워드프레스(v2.0)

드루팔(v2.0)

GNU AGPL

(Affero GPL) v3.0

 

제약조건:최상

    • 수정한 소스코드 혹은 AGPL 소스코드를 활용한 소프트웨어 모두 AGPL로 공개

    • 라이선스 및 저작권 명시

    • 변경사항 안내

    • 네트워크상 소프트웨어 사용자에게 소스코드 공개

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 특허 신청 가능

    • 사적 이용 가능

    • 보증책임 없음

    • 2차 라이선스

몽고DB(v3.0)

GNU LGPL

(Lesser GPL)

v2.1/v3.0

 

제약조건:중

    • 수정한 소스코드 LGPL로 공개(단순 활용시 공개 의무 없음)

    • 라이선스 및 저작권 명시

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 특허 신청 가능

    • 사적 이용 가능

    • 2차 라이선스

    • 보증책임 없음

모질라 파이어폭스(v2.1)

Eclipse License

 

제약조건:중

    • 수정한 소스코드 Eclipse로 공개(단순 활용시 공개 의무 없음)

    • 라이선스 및 저작권 명시

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 특허 신청 가능

    • 사적 이용 가능

    • 2차 라이선스

    • 보증책임 없음

이클립스(v1.0)

MPL v2.0

(Mozilla Public License)

 

제약조건:중

    • 수정한 소스코드 MPL로 공개(단순 활용시 공개 의무 없음)

    • 라이선스 및 저작권 명시

    • 특허기술이 구현된 프로그램의 경우 관련 사실을 ‘LEGAL’파일에 기록하여 배포

    • 상업적 이용 가능

    • 배포 가능

    • 수정 가능

    • 특허 신청 가능

    • 사적 이용 가능

    • 2차 라이선스

    • 보증책임 없음

    • 상표권 침해 금지

모질라 파이어폭스(v1.1)

모질라 썬더버드(v1.1)

 

추가로, Github 사용하는 경우에는 개발자가 명시해 놓은 Read.me 반드시 확인하기 바란다. 개발자가 명확한 라이선스를 명시하지 않았다면 사용을 자체하고 개일 용도 또는 개발자 확인을 통해 상업적 이용을 하는 것이 바람직하다.

 

[참고]

http://www.bloter.net/archives/209318

http://guswnsxodlf.github.io/software-license

https://ko.wikipedia.org/wiki/%EC%98%A4%ED%94%88_%EC%86%8C%EC%8A%A4