오픈소스 라이선스란?
오픈소스 란?
오픈소스란 라이선스 방식을 통해 배포된 소스 코드를 자유롭게(freely) 복사, 수정, 사용, 재배포할 수 있는 소프트웨어를 뜻합니다. 오픈소스는 누구라도 버그를 수정하거나 코드를 개조해 기능을 추가할 수 있으며, 소프트웨어 개발에 참여할 수 있습니다. 이렇게 오픈소스는 개발자에게 프로그램 배포 권리, 소스 코드 접근 권리, 소스 코드 수정 권리를 제공합니다.
오픈소스에도 법적 책임이!
오픈소스는 잘 활용하면 개발 비용과 기간을 줄일 수 있어 널리 쓰이지만, 적지 않은 사용자가 오픈소스의 법적 책임과 그에 따른 위험을 잘 알지 못합니다.
- 상용 소프트웨어와 마찬가지로 오픈소스를 사용하려면 해당 오픈소스의 라이선스를 반드시 준수해야 합니다. 이를 위반하면 사용 권리가 박탈되고, 이를 제품화한 경우 제품을 판매할 수 없습니다.
- 또한 오픈소스 커뮤니티로부터 클레임을 받아, 라이선스 위반 기업으로 기업 이미지에 큰 손실을 입을 수 있습니다.
- 최악의 경우 법적 소송에 연루될 수 있으므로, 오픈소스에 대해 미리 알고 대처하는 것이 중요합니다.
오픈소스의 법적 책임은 오픈소스 라이선스의 종류에 따라 다르므로, 오픈소스를 사용할 때는 각 라이선스의 법적 책임을 반드시 알고 사용해야 합니다.
소프트웨어 지식재산권
오픈소스의 법적 리스크를 이해하려면 소프트웨어에 관한 지식재산권과 라이선스의 기본 개념을 이해해야 합니다. 오픈소스 라이선스는 소프트웨어 라이선스의 일종이기 때문입니다. 소프트웨어를 보호하는 법적 장치, 즉 소프트웨어에 관한 지식재산권으로는 저작권, 특허권, 상표권, 영업비밀이 있습니다.
저작권 (Copyright)
저작권(Copyright)은 창작자(저작자)가 창작물에 대해 취득하는 권리로, 창작의 결과물을 보호하며 창작과 동시에 발생합니다. 따라서 어떤 프로그래머가 소프트웨어를 개발하면 저작권이 자동으로 발생하며, 그 권리는 프로그래머 또는 그가 속한 회사에 부여됩니다. 저작권이 있는 저작물은 저작권자의 허락 없이는 누구도 복제, 배포, 수정할 수 없습니다.
특허권 (Patent)
특허권(Patent)은 발명에 관하여 발명자(특허권자)가 갖는 독점 배타권입니다. 저작권과 달리 일정한 방식으로 출원해야 하며, 심사를 통과한 후 등록되어야 권리가 발생합니다. 특허기술을 사용하려면 반드시 특허권자의 허락을 얻어야 합니다. 특허받은 방식을 구현하는 소프트웨어라면 프로그래밍 언어와 상관없이 특허권의 범위에 속합니다.
| 저작권 | 특허권 | |
|---|---|---|
| 권리 발생 | 창작과 동시에 발생 | 특허 출원, 심사, 등록 |
| 권리 내용 | 인격권 (공표권, 성명 표시권, 동일성 유지권) 재산권 (복제권, 개작권, 배포권, 전송권) | 독점배타권 실시권 |
| 효력 범위 | 표현(코드)의 실질적 유사성 | 아이디어(알고리즘, 기능)의 동일성 |
소프트웨어 라이선스
소프트웨어에 대한 독점배타권을 가진 권리자는 다른 사람이 해당 소프트웨어를 사용하거나 배포하는 것을 허락할 수 있습니다. 간단히 말해 라이선스는 자신의 저작물을 다른 사람이 사용, 복사, 수정, 배포할 수 있도록 허가하는 것을 말합니다.
- 일반적인 상용 소프트웨어는 그 대가로 로열티를 요구합니다.
오픈소스 라이선스
일반 상용 소프트웨어와 마찬가지로 오픈소스에도 저작권 등 지식재산권이 있습니다. 그래서 권리자의 허락 없이 함부로 사용하면 소송을 당할 수 있습니다. 그런데 오픈소스의 권리자들은 많은 사람이 자유롭게 사용할 수 있도록 광범위한 라이선스를 부여합니다.
예를 들어 사용자에게 사용 권리뿐만 아니라 자유롭게 복제와 배포를 할 수 있도록 하고, 소스코드까지 제공해 자유롭게 수정할 수 있도록 허락합니다. 이를 위해서는 이러한 권한을 명시적으로 나타내는 오픈소스 라이선스가 필요합니다. 따라서 오픈소스 라이선스가 적용되지 않은 소프트웨어는 오픈소스가 아니며, 저작권자를 제외한 누구도 그 소프트웨어를 사용, 복제, 수정, 배포할 수 없습니다.
여기서 주의해야 할 점은, GitHub에 공개된 프로젝트라고 해서 모두 오픈소스인 것은 아니라는 사실입니다. GitHub의 Public 프로젝트에는 GitHub’s Terms of Service가 적용되어, 다른 사람이 내 프로젝트를 보거나 Fork할 수는 있지만 그 밖의 권한은 부여되지 않습니다. 오픈소스 프로젝트라면 많은 사람이 자유롭게 사용, 수정, 배포하고 다시 기여할 수 있도록 오픈소스 라이선스가 적용되어야 합니다.
만약 코드에 라이선스가 명시되어 있지 않다면, 그 코드를 사용할 수 있는 권리는 여전히 저작권자에게만 있습니다. 따라서 우리는 그 코드를 사용할 권리가 없습니다. 그 코드를 회사의 제품이나 서비스에 포함시킬 수 없습니다. 꼭 필요한 코드라면 코드의 저작자에게 연락하여 다음과 같이 요청하세요.
“We’d love to use this code in a project of ours and wanted to make sure that you are OK with it. Would you be willing to add an OSI-approved license like the MIT or the Apache License to the project so that we know this is really open source?”
대부분의 저작자는 이에 긍정적으로 대응할 것입니다.
오픈소스 라이선스는 상용 소프트웨어처럼 로열티를 요구하지는 않으며, 대신 소스 코드 제공 등 몇 가지 지켜야 할 의무사항을 요구합니다.
주요 의무 사항
오픈소스의 의무사항을 이해하고 준수하는 것은 중요합니다. 오픈소스 라이선스의 일반적인 의무사항은 고지와 소스 코드 공개입니다.
단, 대부분의 오픈소스 라이선스는 오픈소스를 재배포(redistribute)할 때 의무사항을 부과합니다. 즉, 사외로 재배포하는 소프트웨어나 모델에 포함된 오픈소스만 의무 사항을 준수하면 됩니다. 예를 들어 오픈소스를 사내에서 테스트 용도로만 사용한다면 의무사항이 부과되지 않습니다.
저작권 표시 및 라이선스 고지
대부분의 오픈소스 라이선스는 개발자나 기여자에 관한 사항과 저작권에 관한 사항을 제품에 표시하거나 포함하도록 요구하며, 이용자가 오픈소스에 관한 권리를 잘 이해할 수 있도록 배포자가 해당 라이선스의 사본을 함께 첨부하도록 요구합니다.
예) Apache License 2.0
4. a. You must give any other recipients of the Work or Derivative Works a copy of
this License;
4. c. You must retain, in the Source form of any Derivative Works that You distribute,
all copyright, patent, trademark, and attribution notices from the Source form of the
Work, excluding those notices that do not pertain to any part of the Derivative Works;
소스코드 공개
대표적으로 GPL 계열의 라이선스는 바이너리 형태의 소프트웨어 배포를 허용하는 대신, 바이너리에 해당하는 소스코드를 함께 공개하도록 요구합니다.
예) GPL 2.0
3. You may copy and distribute the Program (or a work based on it, under Section 2) in
object code or executable form under the terms of Sections 1 and 2 above provided that
you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code,
재배포시 동일 라이선스 적용
라이선스에 따라 큰 차이를 보이는 부분은 ‘Copyleft’에 관한 사항입니다. GPL을 대표로 하는 Copyleft 라이선스들은 이용자가 소프트웨어를 수정한 후 배포하려 할 때, 수정된 소프트웨어도 동일한 라이선스로 배포하도록 요구합니다.
예) GPL 2.0
2. You may modify your copy or copies of the Program or any portion of it, thus forming
a work based on the Program, and copy and distribute such modifications or work under
the terms of Section 1 above, provided that you also meet all of these conditions:
b) You must cause any work that you distribute or publish, that in whole or in part
contains or is derived from the Program or any part thereof, to be licensed as a whole
at no charge to all third parties under the terms of this License.
OSI (Open Source Initiative)는 오픈소스에 해당하는 라이선스의 최소한의 기준을 정의(Open Source Definition, OSD)해 두고, 이 정의에 따라 오픈소스 라이선스를 인증합니다. 인증된 오픈소스 라이선스는 80여 개입니다. 각 라이선스가 요구하는 의무사항이 다릅니다.
각 라이선스별 의무사항과 SK텔레콤의 제한 정책은 다음 페이지에서 설명합니다.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.