0xStudyList - 오픈소스 라이센스에 대한 이해를 위한 가이드

0xStudyList - 오픈소스 라이센스에 대한 이해를 위한 가이드



이번 블로그 글은 제목처럼
다양하게 사용되는 오픈소스
그 중에서 오픈소스 라이센스에 대한 글이다.
모든 오픈소스가 말 그대로 무료라고 이해가 되고 통용이 되는데 그렇지 않다.

학생이라면 당연히 무료이기 때문에 좋아할 것이고
기업이라면 비용 지출이 없다는 이유로 좋아할 것이다.
하지만 이런 잘못된 선택과 사용으로 인해 문제가 발생할 수 있다.

이에 오픈소스 첫화면, 메뉴얼 등에서 언급되는 문구에 대한 가이드를 번역, 작성해 본다.

각 국가별 법적인 내용과 판례 등 사례와 기준이 다양하기 때문에
포괄적인 개념에서 이해하면서 글을 보기를 희망한다.

1. 소프트웨어 라이센스 저작권에 대한 기본 사항
저작권, 흔히 말하는 CopyRight 는 개인에게 자신의 저작물이 복사되거나 악용되는 것을 방지할 수 있는 법적 권리를 부여한다.
저작권이 있는 컨텐츠의 가장 일반적인 예로는 영화, 음악, 예술 작품과 같은 것이지만
특정 유형의 소프트웨어도 보호할 수 있다는 사실을 아는 것도 중요하다.

특허와 저작권 사이에도 차이가 있으므로 TLO Technology Licensing Office 에서는
일반적으로 개인이 자신의 필요에 가장 적합한 것을 결정하고 어떤 유형의 라이센스가 더 적용 가능한지에 대한 조언을 제공하는데 도움을 준다.
이런 것은 유통 전략에도 도움이 될 수 있다.

TLO Technology Licensing Office 란 회사에서 특허와 저작권 등을 보유하여 이런 것들을 사고 팔아 이득을 취하는 회사, 조직, 단체 등을 이야기 한다. 인터넷 등에서 살펴보면 특허 괴물이라는 이름으로 지칭되는 회사를 찾아볼 수 있는데, 이런 회사들이 TLO 라고 이해하면 된다.

2. 오픈소스 라이센스란
이를 설명하는 좋은 방법은 기본적으로 특정 조건을 따르는 한 소프트웨어를 상업적으로 사용할 수 있는 계약이라는 것이다. 이 문서는 개발자를 법적으로 구속할 것이며 그것 없이는 소프트웨어가 게시된 위치에 관계없이 작성자를 제외한 누구에게도 사용할 수 없다. 
일부 사용자는 일부 소프트웨어가 몇몇 대표적인 사이트와 같은 곳에 공개함으로써 무료로 사용할 수 있다고 생각할 수 있다.
가장 대표적인 사이트로는 GItHub 가 있다.

일반적으로 사용자의 신분에 대해 필요한 모든 정보는 이용 약관에서 확인할 수 있으며 허용되지 않는 정보 또한 찾을 수 있다.

대부분의 소프트웨어 개발자는 오픈소스 적용 범위에 의존함으로
최소한 기본 사항과 다양한 유형의 라이센스 간의 주요 차이점을 아는 것이 매우 중요하다.
결국, 완전히 이해하고 교육 받지 못한다면 추후 심각한 결과를 초래할 수 있다.

3. 이런 라이센스의 종류에 대해 알아야 하는 이유
권고와 규칙 등을 따르는 것은 쉬운 것처럼 들리고 또 이를 이행할 수 있다고 생각하지만 막상 현실이 되면 그렇게 되지 못하는 경우가 더 많다.
오픈소스 라이센스가 200개 이상이 존재 하며
각기 고유한 요구 사항, 정책 등이 있다는 점을 인지하고 이해하며 주목해야할 것이다.

참고 - 오픈소스 라이센스 종류와 유형

이로 인해 개발자와 사용자 모두 자신이 실제로 수행할 수 있는 작업을 이해하는 것이 본래 원하는 방향과 달리 복잡해질 수 도 있다는 것이다.

이런 카테고리에는 카피레프트 copyleft 와 허용 permissive 의 두 가지 카테고리가 있다. 차이점은 주로 라이센스가 가지고 있는 다양한 지점을 기반으로 한다.
예를 들어 카피레프트 범주에 속하는 사람들은
일반적으로 개인이 소프트웨어를 사용, 수정, 공유할 수 있도록 저작권이 있다.
하지만 다른 사람이 사용할 수 있도록 코드를 공개해야한다는 점을 기억하는 것이 좋다.
또는 허용 라이센스를 사용하면 사람들이 자유롭게 사용, 수정, 재배포도 할 수 있을 뿐만 아니라 오픈소스 구성요소를 사용할 때 거의 이익이나 수익을 독점 파생 작업을 허용할 수 있다.

4. 대표적으로 알아두면 좋은 라이센스 리스트
Ms-PL Microsoft Public License
마이크로소프트에서 출시한 라이센스는 오픈소스로 출시된 모든 프로젝트를 위해 만들어졌다. 기여자의 로고, 상표, 이름은 사용할 수 없더라도 원하는대로 자유롭게 수정, 복제를 할 수 있다. Ms-PL 은 개인의 소프트웨어에 문제가 발생하는 경우 제작자를 보호한다. 코드에 문제가 발생하더라도 인위적이거나 강제로 문제를 일으킨게 아니라면 제작자를 보호해 준다는 것이다.

MIT Massachusetts Institute of Technology License
사용 가능한 가장 편한 옵션 중 하나인 MIT 는 사용자가 기본적으로 원하는 것을 할 수 있기 떄문에 인기가 높다. 단순함과 자유는 많은 개발자들이 그것을 선택하는 주된 이유 중 하나이기도 하다.
또한 사용 중인 라이센스에는 여러가지 변형이 있으므로 제작자가 고유한 요구 사항에 가장 적합한 라이센스를 선택할 수 있다.
MIT 라이센스는 상업적이고 공공 용도에 적합하며 원본 저작권과 라이센스가 포함되어 있는 한 사람들이 소프트웨어를 수정하고 배포할 수도 있다.

CDDL Common Development and Distribution License
SPL Student Pilot Licence 을 대체하기 위해 Sun Microsystems 에서 발행한 CDDL 은 이제 Sun 에서 이전 라이센스 대신 무료 오픈소스 프로젝트와 소프트웨어를 출시하는데 사용한다.
대부분의 사람들은 일반적으로 사용하기 쉽고 재사용이 더 용이하기 때문에 처음의 정리된 형태로 간주된다. 특허, 저작권, 상표 고지를 제거하거나 변경할 수는 없지만 소프트웨어는 복제하고 배포할 수 있다.

BSD Berkeley Software Distribution
BSD 에는 몇가지 변형이 있으며 주요 변형은 원 BSD 라이센스, 수정된 BSD 라이센스와 무료 BSD 라이센스(단순화된 BSD 라이센스라고도 함.)등이 있다.
이 모든 것은 사용자가 적절하다고 생각하는대로 소프트웨어를 자유롭게 수정, 배포할 수 있는 무료 허용 라이센스이다.
하지만 먼저 준수해야할 요구 사항이 상당히 많다는 점에 주목해야 한다.
또한 이런 내부 요구 사항은 유형에 따라 모두 다르다.

이 외 살펴볼 라이센스 리스트
EPL Eclipse Public License
GPL GNU General Public License
APSL Apple Public Source License
MPL Mozilla Public License
CCO Creative Commons Zero
PSFL Python Software Foundation License
AGPL Affero General Public License
Apache License
Cryptix General License
Sleepycat License

이런 것들은 많은 옵션 중 일부에 불과함으로 실제 사용과 구매를 결정하기 전에 특정 라이센스에 대해 허용되는 것과 허용되지 않은 것을 정확하게 이해하는 것이 중요하다.
미래를 위해 선택하기 전에 할 수 있는 것과 할 수 없는 것을 이해하는 것은 사용자의 몫이다.

한국에서는 다음 사이트에서 오픈소스SW 정보를 알려주고 있으니 참고하도록 한다.

오픈소스SW 라이센스 종합정보시스템

댓글

이 블로그의 인기 게시물

0xNews - 안드로이드 폰 890만대 이상 사전 감염 확인

0xNews - 미군을 주제로 하여 한국인을 노리는 피싱 공격 캠페인 경고

0xNews - 리눅스 커널에서 StackRot 라는 이름의 취약점으로 권한 상승 취약점 발견