오픈소스 라이선스별 의무사항
오픈소스 라이선스별 의무사항
재배포하지 않는다면 자유롭게 사용 가능
먼저, 대부분의 오픈소스 라이선스는 준수해야 할 의무 사항을 ‘재배포’시 부여합니다. 이 말은 오픈소스를 ‘재배포’하지 않는다면 고지, 소스 코드 공개 등의 의무사항이 발생하지 않고, 자유롭게 사용이 가능하다는 의미입니다.
재배포란?
여기서 재배포란 오픈소스의 소스 코드 또는 바이너리의 복사본을 다른 사람에게 제공하는 행위를 의미합니다. 앱스토어 배포, 판매, 3rd party 제공, 고객사 납품 등이 재배포에 해당합니다. 사내 개발 환경 구축, 테스트 도구 등 사내 용도로만 오픈소스를 사용하는 경우는 재배포에 해당하지 않습니다.
1. 제한 없는 라이선스 (Public Domain)
CC0, Public Domain과 같이 아무런 제한 없이 무료로 사용할 수 있는 라이선스가 있습니다.
Public Domain
단, Public Domain이라고 선언된 소프트웨어라도 사례별로 법적 검토가 필요한 복잡한 문제가 내재되어 있을 수 있습니다. 사용하려는 코드가 Public Domain인지 확인이 필요하다면 OSPO에 문의하시기 바랍니다.
2. Permissive 라이선스 (수월하게 사용 가능)
Permissive License라고 분류할 수 있는 오픈소스 라이선스는 고지 의무를 요구합니다. 오픈소스 라이선스의 고지 의무는 비교적 수월하게 준수할 수 있습니다.
이와 같이 고지 의무를 요구하는 Permissive 라이선스 하의 오픈소스를 포함하는 소프트웨어를 배포할 경우, “저작권 표시”, “라이선스 고지” 등의 의무를 준수해야 합니다. (참고: 저작권 표시 및 라이선스 고지)
SK텔레콤 오픈소스 컴플라이언스 프로세스를 통해 오픈소스 고지문을 발행하고 소프트웨어 배포 시 이를 동봉하여 고지 의무를 준수할 수 있습니다.
2-1. 주요 Permissive 라이선스
다음은 실무에서 가장 자주 사용되는 Permissive 라이선스로, 사용 사례별 가이드를 제공합니다.
2-2. 기타 Permissive 라이선스
이외에도 아래와 같은 Permissive 라이선스가 있습니다. 이들도 고지 의무를 준수하면 자유롭게 사용 가능합니다.
3. Weak Copyleft (조건부 사용 가능)
Weak Copyleft 유형의 라이선스는 소스 코드 공개를 요구하지만, 공개 범위가 Copyleft 유형의 라이선스에 비해 제한적이라는 특성이 있습니다.
LGPL Library는 Dynamic Link하여 사용
LGPL (Lesser GPL)도 역시 재배포 시 소스 코드 공개를 요구하는 등 GPL과 동일한 조건을 요구합니다. 단, Library 형태의 LGPL 하의 오픈소스를 Link 형태로 결합할 경우, LGPL Library 부분만 소스 코드를 공개하면 되고, 결합하는 코드는 공개 의무가 없다는 점이 GPL과 다릅니다.
LGPL이 적용된 컴포넌트를 dynamically-linked 형태로 사용할 경우, 자사 코드를 공개하지 않는 방식으로 사용할 수 있습니다.
Weak Copyleft 라이선스 유형으로 분류할 수 있는 오픈소스 라이선스는 다음과 같습니다.
주의: GPL/LGPL-3.0 설치정보 제공 의무
GPL-3.0/LGPL-3.0 하의 오픈소스가 설치된 사용자 제품(User Product)을 배포하기 위해서는 소스 코드 뿐만 아니라 설치 정보를 함께 제공해야 합니다. 이는 기업이 준수하기 어려운 조건이기 때문에 일반적으로 GPL-3.0/LGPL-3.0의 오픈소스는 사용자 제품(User Product) 개발 시 사용할 수 없음에 주의하시기 바랍니다.
- 사용자 제품(User Product): 전자 기기와 같은 embedded device
- 설치 정보(Installation Information): 사용자가 소스 코드를 빌드하여 다시 제품에 설치하기 위해 필요한 모든 정보 및 방법
Copyleft 라이선스 하의 오픈소스를 포함하는 소프트웨어를 배포할 경우, 사용자에게 소스 코드를 직접 제공하거나, 사용자가 요청시 소스 코드를 제공하겠다는 서면 약정서를 제공해야 합니다.
4. Copyleft (사용 주의)
GPL (GNU General Public License)은 오픈소스를 재배포 시 소스 코드 공개를 요구합니다. 오픈소스 자체의 소스 코드 뿐만 아니라 결합한 소스 코드까지 함께 동일한 라이선스 조건으로 공개할 것을 요구해서 Copyleft 성격의 라이선스라고도 합니다. Copyleft 라이선스 유형은 오픈소스 라이선스 중에 요구하는 의무사항이 가장 많은 라이선스 유형이기 때문에 이 유형의 라이선스로 배포되는 오픈소스는 사용 시 주의가 필요합니다.
자사 코드 분리 방법
대표적인 의무 사항은 이 라이선스로 배포되는 오픈소스를 제품에 포함하여 배포하려면 해당 오픈소스의 소스 코드의 공개가 필요합니다. 또한 이 오픈소스와 결합하는 소스 코드까지도 동일한 오픈소스 라이선스를 적용하여 공개해야 합니다.
따라서, Copyleft 라이선스 유형의 라이선스가 적용된 오픈소스는 SK텔레콤이 배포하는 제품에 포함 시 주의해야 합니다. 이러한 오픈소스는 설계 단계에서부터 Build 시 자사 소프트웨어와 통합되지 않고 Runtime에도 독립된 프로세스로 동작되도록 해야 합니다.
Copyleft 라이선스 유형으로 분류할 수 있는 오픈소스 라이선스는 다음과 같습니다.
5. Network Copyleft (SaaS 제공 시 주의)
AGPL (GNU Affero General Public License)은 일반 GPL의 “배포” 개념을 확장하여 네트워크를 통한 서비스 제공도 배포로 간주합니다.
AGPL 주의사항
AGPL로 공개된 오픈소스를 서버에서 실행하여 네트워크 서비스(SaaS, API 등)를 제공하는 경우, 바이너리를 배포하지 않더라도 다음 의무가 발생합니다:
- AGPL 오픈소스의 소스 코드 공개
- 함께 링크되어 동작하는 모든 소프트웨어의 소스 코드를 AGPL로 공개
- 서비스 사용자가 소스 코드를 다운로드할 수 있는 방법 제공
이는 SK텔레콤의 핵심 서버 프로그램까지 공개해야 하는 위험이 있습니다.
따라서 AGPL 오픈소스는 SK텔레콤의 네트워크 서비스 개발 시 사용할 수 없습니다.
예외적으로 사용이 필요한 경우 OSPO에 문의하시기 바랍니다.
6. Source Available (제한적 오픈소스)
Source Available 라이선스는 소스 코드가 공개되어 있지만, OSI (Open Source Initiative)가 승인한 오픈소스 라이선스가 아닙니다. 이들은 상업적 SaaS 제공 등에 제한을 가하고 있으며, 일반적인 오픈소스와는 다른 조건을 가지고 있습니다.
Source Available vs 오픈소스
SSPL, BSL, Elastic License 2.0은 OSI가 승인한 오픈소스가 아닙니다.
이들은 “Source Available” 라이선스로, 소스 코드는 공개되어 있지만 상업적 SaaS 제공 등에 제한이 있습니다. 일부는 일정 기간 후 진짜 오픈소스로 전환됩니다.
제품/서비스에 사용 전 반드시 OSPO에 문의하시기 바랍니다.
7. AI Model 라이선스
AI Model 라이선스는 AI 모델(가중치)에 적용되는 라이선스로, 일반 소프트웨어 라이선스와는 다른 특성을 가지고 있습니다. 이들은 모델의 사용, 수정, 배포는 허용하지만 특정 용도에 대한 제한을 포함하고 있습니다.
AI Model 라이선스 주의사항
AI Model 라이선스는 일반 소프트웨어 라이선스와 다른 특성을 가집니다:
- 용도 제한: 군사, 범죄, 감시, 차별 등 특정 목적 사용 금지
- 책임 조항: AI 생성 결과물에 대한 책임 명시 필요
- 데이터 출처: 학습 데이터의 라이선스도 함께 확인 필요
- 상업적 제한: 일부 라이선스는 대규모 상업적 사용 제한
AI 서비스 개발 시 반드시 OSPO에 문의하시기 바랍니다.
8. 사용 제한 라이선스
8-1. 비상업용 (Non-Commercial)
연구, 학습만을 위해서라고 해도 SK텔레콤 내에서 사용한다면 상업적인 활동으로 간주될 수 있습니다. 따라서 비상업적으로만 사용할 수 있도록 제한하는 라이선스에 따라 공개된 오픈소스는 SK텔레콤에서 사용할 수 없습니다. 이러한 비상업용 (Non-Commercial) 라이선스는 다음과 같습니다.
8-2. 광고 조항 포함
BSD-4-Clause 라이선스는 오픈소스의 기능/활용을 언급하는 모든 광고에 특정 문구 (“This product includes software developed by the .")의 포함을 요구합니다. 이러한 “advertising clause"의 요구사항을 준수하는 것은 쉽지 않기 때문에 사용을 제한합니다.
이러한 라이선스 하의 오픈소스를 반드시 포함해야 하는 경우라면 OSPO에 포함할 수 있는 방법을 문의하시기 바랍니다.
9. 문서/콘텐츠 라이선스
Creative Commons 라이선스는 주로 문서, 이미지, 데이터셋 등의 콘텐츠에 사용되는 라이선스입니다. 이들은 소프트웨어 코드보다는 창작물에 적합한 라이선스입니다.
소프트웨어 vs 문서/콘텐츠
Creative Commons 라이선스는 주로 문서, 이미지, 데이터셋, 콘텐츠에 사용됩니다. 소프트웨어 코드에는 적합하지 않으므로, 소프트웨어 개발 시에는 MIT, Apache-2.0 등의 소프트웨어 라이선스를 사용하시기 바랍니다.
10. 이외 언급하지 않은 라이선스
위에서 분류되지 않은 라이선스가 적용된 오픈소스를 SK텔레콤의 제품에 사용하기 위해서는 사전 검토가 필요합니다. OSPO에 사용 가능 여부를 문의하시기 바랍니다.
1 - AGPL-3.0 가이드
SPDX Identifier: AGPL-3.0-only 또는 AGPL-3.0-or-later
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 수정시 의무사항
- 추가/수정한 부분에 AGPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- 수정시 의무사항
- 추가/수정한 부분에 AGPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
- 소스 코드 제공 의무
- 바이너리에 해당하는 전체 소스 코드를 제공합니다.
- AGPL-3.0은 파생저작물에 대해서도 AGPL-3.0을 적용하여 소스 코드를 공개할 것을 요구합니다.
- 바이너리 사용자가 공개된 소스 코드로 동일한 바이너리를 만들 수 있는 빌드 환경을 제공합니다.
- 설치 정보 제공 의무 : 바이너리를 User Product와 배포한다면 설치 정보(Installation Information)를 제공합니다.
- 원격 네트워크 상호 작용
- 원격 사용자가 수정된 버전의 소스 코드를 다운 받을 수 있도록 네트워크 서버를 제공해야 합니다.
Copyleft 주의사항
AGPL-3.0은 가장 강력한 Copyleft 라이선스입니다. 바이너리 배포뿐만 아니라 네트워크를 통한 SaaS 제공 시에도 소스 코드 공개 의무가 발생합니다. 상용 소프트웨어 및 클라우드 서비스 개발 시 사용에 특히 주의가 필요합니다.
소스 코드 내 라이선스 문구
AGPL-3.0 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
AGPL-3.0 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
즉, 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 AGPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
Case 2. 바이너리 형태로 재배포
AGPL-3.0 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 AGPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
2-2 소스 코드 제공 의무
바이너리에 해당하는 소스 코드를 제공합니다. 이때 다음 사항을 준수합니다.
- AGPL-3.0은 파생저작물에 대해서도 AGPL-3.0을 적용하여 소스 코드를 공개할 것을 요구합니다. 아래 내용을 참고하여 AGPL-3.0 하의 오픈소스와 파생저작물의 소스 코드를 공개합니다.
AGPL-3.0 파생저작물의 범위
일반적인 AGPL-3.0의 파생저작물 범위는 다음과 같습니다.
- 수정 코드
- AGPL 프로그램과 동일한 프로세스에서 동작하는 Module
- AGPL 프로그램과 링크로 연결한 Library
- AGPL 프로그램을 상속한 Class
다음의 경우 GPL의 파생저작물로 보지 않습니다.
- CD와 같은 매체에 함께 존재하지만 AGPL 프로그램과 전혀 연동하지 않는 독립 프로그램 (#MereAggregation)
- AGPL 프로그램과는 별도의 프로그램으로써 Pipe, Socket, IPC, Command Line Arguments로 AGPL 프로그램과 통신하는 경우
- 바이너리 사용자가 공개된 소스 코드로 동일한 바이너리를 만들 수 있는 빌드 환경을 제공합니다. 여기에는 다음 사항이 포함됩니다.
- Tool chain 정보
- 빌드 스크립트
- 빌드 방법 (README)
소스 코드 대신 서면 약정서(Written Offer)를 제공할 수 있습니다. 여기에는 다음 진술이 포함되어야 합니다.
- 서면 약정서는 제품 판매 후 3년간 유효합니다.
- 누구에게나 제공합니다.
- 비용 청구를 하지 않습니다. (소스 전달을 위해 발생하는 비용 제외)
이후 외부로부터 서면 약정서를 근거로 소스 코드 제공을 요청 받을 경우, 위에서 언급한 바이너리에 해당하는 소스 코드를 제공해야 합니다. 따라서 회사는 제품 판매 후 최소 3년간 소스 코드를 보관해야 합니다.
2-3 설치 정보 제공 의무
바이너리를 User Product와 배포한다면 설치 정보(Installation Information)를 제공합니다.
- User Product : 전자 기기와 같은 Embedded Device
- 설치 정보(Installation Information) : 사용자가 소스 코드를 빌드하여 다시 제품에 설치하기 위해 필요한 모든 정보 및 방법
사용 제한
대부분의 User Product는 보안상의 이유로 설치 정보를 제공하는 것이 불가능합니다. 따라서 User Product로 배포하는 소프트웨어에는 AGPL-3.0의 오픈소스를 사용하지 않아야 합니다.
Case 3. 원격 네트워크 상호 작용
AGPL-3.0 하의 오픈소스를 (1) 수정하고, (2) 수정한 버전이 네트워크를 통해 원격의 사용자와 상호 작용하는 경우:
- 원격 사용자가 수정된 버전의 소스 코드를 다운 받을 수 있도록 네트워크 서버를 제공해야 합니다.
- 여기서의 소스 코드는 위의 “2-2. 소스 코드 제공 의무"에서 요구하는 범위와 동일합니다.
SaaS 제공 시 주의사항
바이너리를 배포하지 않는 네트워크 서버(SaaS, 클라우드 서비스) 개발 시에도 AGPL-3.0 하의 오픈소스를 사용할 경우에는 소스 코드 공개가 필요하기 때문에 가능한 사용하지 않아야 합니다.
GPL-3.0과의 차이점
AGPL-3.0은 GPL-3.0에 네트워크 사용 조항을 추가한 라이선스입니다.
- GPL-3.0: 바이너리 배포 시에만 소스 코드 공개 의무
- AGPL-3.0: 바이너리 배포 + 네트워크를 통한 서비스 제공 시에도 소스 코드 공개 의무
이는 SaaS나 클라우드 서비스로 소프트웨어를 제공하면서 GPL의 소스 코드 공개 의무를 회피하는 것을 방지하기 위한 조항입니다.
라이선스 호환성
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | 전체 프로젝트가 AGPL-3.0이 됨 |
| Apache-2.0 | 호환 | 전체 프로젝트가 AGPL-3.0이 됨 |
| GPL-3.0 | 호환 | 전체 프로젝트가 AGPL-3.0이 됨 |
| LGPL-3.0 | 호환 | LGPL 부분은 LGPL 유지 가능 |
| Proprietary | 비호환 | 상용 소프트웨어/SaaS에 사용 불가 |
가장 강력한 Copyleft
AGPL-3.0은 가장 강력한 Copyleft 조항을 가지고 있습니다. 다른 GPL 계열 라이선스와 결합 시 전체 프로젝트가 AGPL-3.0을 따라야 합니다.
참고 자료
2 - Apache-2.0 가이드
SPDX Identifier: Apache-2.0
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
소스 코드 내 라이선스 문구
Apache-2.0 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
Apache-2.0 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 라이선스 사본 제공
- 저작권, 특허, 상표권 등 정보를 유지합니다.
- NOTICE 파일이 포함되어 있을 경우 이를 유지합니다.
즉, 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
Case 2. 바이너리 형태로 재배포
Apache-2.0 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 라이선스 사본 제공
- 저작권, 특허, 상표권 등 정보를 유지합니다.
- NOTICE 파일이 포함되어 있을 경우 이를 유지합니다.
이를 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
라이선스 호환성
Apache-2.0 라이선스는 명시적인 특허 허여 조항을 포함하고 있어 대부분의 라이선스와 호환됩니다.
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | Apache-2.0 유지 권장 |
| GPL-3.0 | 호환 | 전체 프로젝트가 GPL-3.0이 됨 |
| GPL-2.0 | 비호환 | 특허 조항 충돌 |
| LGPL-3.0 | 호환 | 동적 링크 시 권장 |
| Proprietary | 호환 | 상용 소프트웨어에 사용 가능 |
주의사항
Apache-2.0은 GPL-2.0과 호환되지 않습니다. Apache-2.0의 특허 허여 조항이 GPL-2.0과 충돌하기 때문입니다. GPL-3.0과는 호환됩니다.
참고 자료
3 - BigScience RAIL 가이드
BigScience RAIL (Responsible AI License)은 BLOOM 등 대규모 언어 모델(LLM)에 사용되는 라이선스로, 모델의 자유로운 사용과 함께 책임있는 AI 개발을 위한 윤리적 제한 사항을 포함합니다.
SPDX Identifier: BigScience-RAIL-1.0
의무사항 요약
- 대규모 언어 모델 전용 라이선스
- 모델 사용, 수정, 배포: 자유롭게 허용 (상업적 사용 포함)
- 고지 의무: 라이선스 정보 및 사용 제한 사항 명시
- 용도 제한: 불법적, 차별적, 유해한 목적 사용 금지
- 파생 모델: 동일한 제한 사항 적용 필수
- 생성된 결과물: 사용자 책임 (모델 라이선스와 별개)
BigScience RAIL 주의사항
BigScience RAIL은 CreativeML Open RAIL-M과 유사하지만 언어 모델에 특화되어 있습니다:
- 텍스트 생성 모델(LLM)에 적용
- 더 구체적인 금지 용도 명시 (특히 차별, 허위 정보)
- 모델 카드(Model Card) 제공 의무
LLM 기반 서비스 개발 시 OSPO에 문의하시기 바랍니다.
BigScience RAIL이란?
BigScience RAIL (Responsible AI License)은 2022년 BigScience 프로젝트가 BLOOM 언어 모델과 함께 공개한 라이선스입니다.
BigScience 프로젝트
- BLOOM: 176B 파라미터 다국어 언어 모델
- 1000명 이상의 연구자 참여
- 책임있는 AI 개발을 핵심 가치로 설정
RAIL의 두 가지 버전
| 버전 | 적용 대상 | 특징 |
|---|
| RAIL-M | 모델 가중치 | 모델 자체의 사용 제한 |
| RAIL++-M | 모델 + 코드 | 모델과 학습/추론 코드 모두 포함 |
BigScience는 RAIL-M 사용 (모델에만 적용)
주요 사용 프로젝트
BLOOM 계열
- BLOOM: BigScience의 176B 모델
- BLOOMZ: 지시 따르기(instruction-following) 버전
- mT0: 다국어 제로샷 모델
기타 RAIL 채택 모델
- 일부 오픈 LLM 파인튜닝 모델
- 연구용 언어 모델들
허용 사항
자유롭게 할 수 있는 것
모델 사용
- 텍스트 생성
- 번역, 요약, 질의응답
- 챗봇 구축
- 상업적 서비스 제공
모델 수정
- 파인튜닝
- 추가 학습
- LoRA, QLoRA 등 경량화
모델 배포
- 수정된 모델 공개
- 파생 모델 배포
- 상업적 API 서비스
생성물 활용
- AI 생성 텍스트의 상업적 사용
- 2차 저작물 제작
금지 사항 (Restrictions)
BigScience RAIL은 다음 용도로 사용할 수 없습니다:
1. 불법 활동
- 범죄 계획 또는 실행 지원
- 불법 콘텐츠 생성
- 테러 활동 지원
2. 아동 보호
- 아동 성 착취물 생성
- 아동을 대상으로 한 유해 콘텐츠
- 아동 그루밍 지원
3. 차별 및 혐오
- 인종, 민족, 종교에 대한 차별
- 성별, 성적 지향에 대한 차별
- 장애, 연령에 대한 차별
- 혐오 발언 생성
4. 허위 정보 및 조작
- 의도적인 가짜 뉴스 생성
- 딥페이크 텍스트 생성 (신원 도용 목적)
- 선거 조작 목적 콘텐츠
- 사기 목적 콘텐츠
5. 프라이버시 침해
- 개인정보 무단 수집
- 스토킹, 괴롭힘 지원
- 감시 목적 사용
6. 의료 및 법률
- 전문적 의료 진단 대체
- 법률 자문 대체
- 재무 자문 대체
7. 자해 및 폭력
8. 고위험 의사결정
- 자동화된 신용 평가 (단독 의사결정)
- 자동화된 채용 결정 (단독 의사결정)
- 형사 사법 결정 (단독 의사결정)
사용 시나리오
허용되는 사용
1. 챗봇 서비스
시나리오: 고객 상담 챗봇
사용 방식: BLOOM 파인튜닝하여 상담 봇 구축
판단: 허용 (상업적 사용 OK, 금지 용도 아님)
2. 번역 서비스
시나리오: 다국어 자동 번역
사용 방식: BLOOM의 다국어 능력 활용
판단: 허용
3. 콘텐츠 생성 도구
시나리오: 마케팅 카피 생성 도구
사용 방식: BLOOM 기반 텍스트 생성
판단: 허용 (차별적/허위 콘텐츠 아닌 경우)
금지되는 사용
1. 가짜 뉴스 생성기
시나리오: 자동 가짜 뉴스 생성 도구
사용 방식: 허위 정보 대량 생성
판단: 금지 (허위 정보 생성)
2. 차별적 콘텐츠 생성
시나리오: 특정 집단을 비하하는 텍스트 생성
사용 방식: 혐오 발언 생성
판단: 금지 (차별 및 혐오)
3. 자동화된 신용 평가
시나리오: LLM으로 신용 점수 자동 결정
사용 방식: 대출 승인/거부 자동 결정
판단: 금지 (고위험 의사결정)
검토 필요
1. 교육용 챗봇
시나리오: 학생 상담 챗봇
사용 방식: 진로 상담, 심리 상담
판단: 의료/심리 자문 경계, 전문가 검토 필요
2. 채용 보조 도구
시나리오: 이력서 스크리닝 보조
사용 방식: 최종 결정은 사람이 하지만 AI가 추천
판단: 사용 방식에 따라 다름, OSPO 검토
모델 카드 의무
BigScience RAIL은 모델 카드(Model Card) 제공을 권장합니다.
모델 카드에 포함할 내용
모델 정보
- 모델 구조, 파라미터 수
- 학습 데이터 출처
- 학습 방법
제한 사항
- 모델의 한계
- 알려진 편향(Bias)
- 부적절한 사용 사례
사용 가이드
예시: BLOOM Model Card
파생 모델의 라이선스
파생 모델을 배포할 때:
필수 사항
- 동일한 용도 제한 사항 적용
- 라이선스 정보 명시
- 모델 카드 제공 (권장)
라이선스 전파
BLOOM → 파인튜닝 → 커스텀 모델
→ 커스텀 모델도 BigScience RAIL 또는 동등한 제한 적용
AI 생성물의 책임
중요: 생성된 텍스트의 책임
- 모델 제공자: 모델 사용 제한 명시 의무
- 모델 사용자: 생성물의 적법성 확인 의무
- 서비스 제공자: 사용자의 악용 방지 조치 의무
참고 자료
4 - BSD-2-Clause 가이드
BSD-2-Clause 라이선스는 BSD 2-Clause “Simplified” License라고도 불리며 소스 코드 공개를 요구하지 않는 Permissive 라이선스입니다. BSD-3-Clause보다 간략해졌습니다.
SPDX Identifier: BSD-2-Clause
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
소스 코드 내 라이선스 문구
BSD-2-Clause 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (c) <YEAR>, <OWNER>
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
BSD-2-Clause 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
즉, 소스 코드 내 저작권, 라이선스 등을 그대로 유지합니다.
Case 2. 바이너리 형태로 재배포
BSD-2-Clause 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
이를 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
라이선스 호환성
BSD-2-Clause 라이선스는 BSD 라이선스 중 가장 간결하며 대부분의 라이선스와 호환됩니다.
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | 유사한 라이선스 |
| Apache-2.0 | 호환 | Apache-2.0의 특허 조항 유지 권장 |
| GPL-2.0/3.0 | 호환 | 전체 프로젝트가 GPL이 됨 |
| Proprietary | 호환 | 상용 소프트웨어에 사용 가능 |
참고 자료
5 - BSD-3-Clause 가이드
BSD-3-Clause 라이선스는 BSD 3-Clause “New” or “Revised” License라고도 불리며 소스 코드 공개를 요구하지 않는 Permissive 라이선스입니다. BSD-4-Clause에서 문제가 된 “advertising clause"가 삭제되었습니다.
SPDX Identifier: BSD-3-Clause
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
소스 코드 내 라이선스 문구
BSD-3-Clause 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (c) <year>, <copyright holder>
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the <organization> nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
BSD-3-Clause 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
즉, 소스 코드 내 저작권, 라이선스 등을 그대로 유지합니다.
Case 2. 바이너리 형태로 재배포
BSD-3-Clause 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
이를 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
라이선스 호환성
BSD-3-Clause 라이선스는 조직명 무단 사용 금지 조항을 포함하고 있으며 대부분의 라이선스와 호환됩니다.
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | 유사한 라이선스 |
| Apache-2.0 | 호환 | Apache-2.0의 특허 조항 유지 권장 |
| GPL-2.0/3.0 | 호환 | 전체 프로젝트가 GPL이 됨 |
| Proprietary | 호환 | 상용 소프트웨어에 사용 가능 |
BSD-3-Clause 특징
BSD-3-Clause는 BSD-2-Clause에 “조직명이나 기여자 이름을 무단으로 홍보에 사용할 수 없다"는 조항이 추가되어 있습니다.
참고 자료
6 - BSD-4-Clause 가이드
BSD-4-Clause 라이선스는 BSD “Original” or “Old” License라고도 불리는 BSD 라이선스의 원형입니다. 소스 코드 공개를 요구하지는 않지만, 광고 조항(advertising clause)을 포함하고 있어서 사용에 문제가 됩니다.
SPDX Identifier: BSD-4-Clause
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- BSD-4-Clause 하 오픈소스의 기능/활용을 언급하는 모든 광고에 다음 문구 포함
“This product includes software developed by the <organization>."
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- BSD-4-Clause 하 오픈소스의 기능/활용을 언급하는 모든 광고에 다음 문구 포함
“This product includes software developed by the <organization>."
소스 코드 내 라이선스 문구
BSD-4-Clause 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (c) <year>, <copyright holder>
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software
must display the following acknowledgement:
This product includes software developed by the <organization>.
4. Neither the name of the <organization> nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
BSD-4-Clause 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 저작권 고지
- 라이선스 사본 제공
- 보증 부인 고지
- BSD-4-Clause 하 오픈소스의 기능/활용을 언급하는 모든 광고에 다음 문구 포함
“This product includes software developed by the <organization>."
즉, 소스 코드 내 저작권, 라이선스 등을 그대로 유지합니다.
Case 2. 바이너리 형태로 재배포
BSD-4-Clause 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 저작권 고지
- 라이선스 사본 제공
- 보증 부인 고지
- BSD-4-Clause 하 오픈소스의 기능/활용을 언급하는 모든 광고에 다음 문구 포함
“This product includes software developed by the <organization>."
이를 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
라이선스 호환성
BSD-4-Clause는 광고 조항으로 인해 다른 라이선스와의 호환성에 문제가 있습니다.
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | 광고 조항 유지 필요 |
| Apache-2.0 | 호환 | 광고 조항 유지 필요 |
| GPL-2.0/3.0 | 비호환 | GPL과 광고 조항 충돌 |
| Proprietary | 호환 | 광고 조항 준수 필요 |
FreeBSD, NetBSD, BSD 등의 오픈소스는 원래 BSD-4-Clause를 적용하였으나, “advertising clause” 조항의 문제를 인식하여 BSD-3-Clause, BSD-2-Clause 등으로 라이선스를 변경하였습니다.
참고 자료
7 - BSL 가이드
Business Source License (BSL)는 MariaDB가 만든 Source Available 라이선스로, 일정 기간(보통 3-4년) 후 자동으로 오픈소스 라이선스로 전환되는 특징이 있습니다.
SPDX Identifier: BUSL-1.1 (BSL-1.1이라고도 함)
의무사항 요약
- BSL은 OSI 승인 오픈소스가 아닙니다
- 특정 용도(Additional Use Grant에 명시)는 제한
- 변경 날짜(Change Date) 이후 자동으로 오픈소스 전환
- 비상업적/내부 사용: 일반적으로 허용
- 상업적 프로덕션 사용: 라이선스 조건 확인 필요
- 재배포 시: 저작권 및 라이선스 정보 유지
BSL 사용 주의사항
BSL은 프로젝트마다 다른 조건을 가질 수 있습니다:
- Additional Use Grant: 어떤 용도가 허용/제한되는지
- Change Date: 언제 오픈소스로 전환되는지
- Change License: 어떤 오픈소스 라이선스로 전환되는지
각 BSL 프로젝트의 LICENSE 파일을 반드시 확인하고 OSPO에 문의하시기 바랍니다.
BSL이란?
BSL(Business Source License)은 MariaDB Corporation이 2013년 만든 라이선스입니다. 핵심 특징은 시간 제한부 라이선스라는 점입니다.
동작 원리
초기 기간 (Change Date 이전)
- 특정 상업적 용도 제한
- 소스 코드는 공개되어 있음
- 비상업적/내부 사용은 일반적으로 허용
전환 기간 (Change Date 이후)
- 자동으로 진짜 오픈소스 라이선스로 전환
- 보통 Apache-2.0, GPL-2.0, MIT 등으로 전환
- 모든 제한 해제
BSL의 세 가지 주요 파라미터
1. Additional Use Grant
허용되는 특정 용도를 명시합니다.
예시:
- “연간 사용자 1000명 이하 서비스는 허용”
- “비프로덕션 환경에서는 자유롭게 사용 가능”
- “경쟁 서비스 제공 목적 사용 금지”
2. Change Date
오픈소스로 전환되는 날짜입니다. 일반적으로 릴리스 후 3-4년이 지정됩니다.
예: 2024년 1월 1일 릴리스 → 2028년 1월 1일 Change Date
3. Change License
전환될 오픈소스 라이선스입니다.
일반적으로:
- Apache-2.0 (가장 흔함)
- GPL-2.0
- MIT
주요 BSL 채택 프로젝트
데이터베이스
- MariaDB (일부 기능): Change License GPL-2.0, Change Date 릴리스 후 4년
- CockroachDB: Change License Apache-2.0 또는 MIT, Change Date 릴리스 후 3년
기타
- Ceph (일부 기능)
- MinIO (일부 에디션)
- Sentry (일부 기능)
- Akka (2.7 이후)
사용 가능 여부 판단
일반적으로 허용되는 경우
내부 개발/테스트
비프로덕션 용도
Additional Use Grant에 명시된 경우
제한되는 경우
상업적 프로덕션 사용
- 고객에게 제공하는 서비스
- 제품에 포함하여 판매
- SaaS로 제공
경쟁 서비스 제공
확인 필요
프로젝트마다 Additional Use Grant가 다르므로 각 프로젝트의 LICENSE 파일 확인이 필수입니다.
Change Date 이후 사용
Change Date가 지나면 자동으로 Change License로 전환됩니다.
예시: CockroachDB v20.1 (2020년 5월 릴리스)
- Change Date: 2023년 5월 19일
- Change License: Apache-2.0
- 2023년 5월 19일부터는 Apache-2.0로 자유롭게 사용 가능
참고 자료
8 - CDDL-1.0 가이드
CDDL-1.0은 Common Development and Distribution License 1.0이라고도 불리며, 파일 단위의 소스 코드 공개를 요구하는 Weak Copyleft 성격의 라이선스입니다.
SPDX Identifier: CDDL-1.0
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 수정시 의무사항
- 수정한 파일에 CDDL-1.0을 적용합니다. (별도로 추가한 파일에는 CDDL-1.0 적용 의무 없음)
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- 수정시 의무사항
- 수정한 파일에 CDDL-1.0을 적용합니다. (별도로 추가한 파일에는 CDDL-1.0 적용 의무 없음)
- 소스 코드 제공 의무
- 바이너리 내 CDDL-1.0에 해당하는 파일의 소스 코드를 제공합니다.
Weak Copyleft 특성
CDDL-1.0은 파일 단위 Weak Copyleft 라이선스입니다. MPL을 기반으로 만들어졌으며, CDDL-1.0 파일 자체를 수정한 경우에만 소스 코드 공개 의무가 발생합니다. 별도로 추가한 파일은 공개할 필요가 없어 상용 소프트웨어에서도 사용 가능합니다.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
CDDL-1.0 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 라이선스 사본
- 저작권, 특허, 상표권 등 법적 고지 유지
즉, 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 수정한 파일에 CDDL-1.0을 적용합니다. (별도로 추가한 파일에는 CDDL-1.0 적용 의무 없음)
Case 2. 바이너리 형태로 재배포
CDDL-1.0 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 라이선스 사본 제공
- 저작권, 특허, 상표권 등 법적 고지 유지
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 수정한 파일에 CDDL-1.0을 적용합니다. (별도로 추가한 파일에는 CDDL-1.0 적용 의무 없음)
2-2 소스 코드 제공 의무
바이너리 내 CDDL-1.0에 해당하는 소스 코드 파일을 제공합니다. 이때 다음 사항을 준수합니다.
- CDDL-1.0은 파일 내 추가한 내용에 대해서도 CDDL-1.0을 적용하여 소스 코드를 공개할 것을 요구합니다. 따라서 원본 파일과 더불어 수정한 파일도 CDDL-1.0을 적용하여 공개합니다.
오픈소스 고지문에 사용자가 소스 코드를 수령할 수 있는 방법을 안내함으로써 소스 코드 제공 의무를 준수할 수 있습니다.
MPL 기반 라이선스
CDDL-1.0은 Mozilla Public License(MPL)를 기반으로 Sun Microsystems(현 Oracle)가 제작한 라이선스입니다.
- MPL 유사성: 파일 단위 Copyleft 적용
- 주요 사용처: Sun/Oracle 프로젝트 (OpenSolaris, GlassFish 등)
- 현재 상황: 현재는 CDDL 사용이 감소하고 있는 추세
라이선스 호환성
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | CDDL 파일만 공개 |
| Apache-2.0 | 호환 | CDDL 파일만 공개 |
| GPL-2.0/3.0 | 비호환 | Copyleft 충돌 |
| MPL-2.0 | 호환 | 유사한 파일 단위 Copyleft |
| Proprietary | 호환 | CDDL 파일만 공개하면 사용 가능 |
GPL과의 비호환성
CDDL-1.0은 GPL 계열 라이선스와 호환되지 않습니다. CDDL과 GPL의 Copyleft 조항이 서로 충돌하기 때문입니다.
참고 자료
9 - CreativeML Open RAIL-M 가이드
CreativeML Open RAIL-M은 Stable Diffusion 등 AI 이미지 생성 모델에 사용되는 라이선스로, 모델 사용의 자유와 함께 책임있는 사용을 위한 제한 사항을 포함합니다.
SPDX Identifier: CreativeML-OpenRAIL-M
의무사항 요약
- AI 모델 전용 라이선스 (일반 소프트웨어와 다름)
- 모델 사용, 수정, 배포: 자유롭게 허용
- 고지 의무: 라이선스 정보 유지
- 용도 제한: 불법적, 유해한 목적 사용 금지
- 파생 모델: 동일한 제한 사항 적용 (RAIL 조항 유지)
- 생성된 결과물: 별도 라이선스 (모델 라이선스와 무관)
AI 모델 라이선스 특성
CreativeML Open RAIL-M은 일반 소프트웨어 라이선스와 다릅니다:
- Permissive: 상업적 사용 포함, 자유롭게 사용 가능
- Responsible AI: 특정 용도는 명시적으로 금지
- 생성물과 분리: AI가 생성한 이미지는 별도 저작권
AI 서비스 개발 시 OSPO에 문의하시기 바랍니다.
CreativeML Open RAIL-M이란?
CreativeML Open RAIL-M (Responsible AI License - Model)은 2022년 Stable Diffusion과 함께 공개된 AI 모델 라이선스입니다.
RAIL (Responsible AI License)의 특징
- Open: 누구나 자유롭게 사용
- Responsible: 책임있는 사용을 위한 제한
- Permissive: Apache-2.0처럼 상업적 사용 허용
- Use-Based Restrictions: 용도 기반 제한
일반 오픈소스 라이선스와의 차이
| 구분 | 전통적 라이선스 (MIT, Apache) | RAIL |
|---|
| 대상 | 소프트웨어 코드 | AI 모델 가중치 |
| 용도 제한 | 없음 | 있음 (유해 사용 금지) |
| 자유로운 사용 | 제한 없음 | 책임있는 사용만 |
| 상업적 사용 | 허용 | 허용 (용도 제한 준수 시) |
주요 사용 프로젝트
Stable Diffusion
- Stable Diffusion v1.x: CreativeML Open RAIL-M
- Stable Diffusion v2.x: CreativeML Open RAIL++-M (개선판)
- Stable Diffusion XL: CreativeML Open RAIL++-M
기타 이미지 생성 모델
- Waifu Diffusion
- DreamBooth 파인튜닝 모델들
허용 사항
자유롭게 할 수 있는 것
모델 사용
- 이미지 생성
- 상업적 목적 이미지 생성
- API 서비스 제공
모델 수정
- 파인튜닝 (Fine-tuning)
- 추가 학습
- 모델 최적화
모델 배포
- 수정된 모델 재배포
- 파생 모델 공개
- 상업적 서비스에 통합
생성물 활용
- 생성된 이미지의 상업적 사용
- 생성된 이미지의 판매
- 생성된 이미지의 2차 저작물 제작
금지 사항 (Use-Based Restrictions)
CreativeML Open RAIL-M은 다음 용도로 사용할 수 없습니다:
1. 폭력 및 범죄
- 폭력을 조장하거나 미화하는 콘텐츠 생성
- 범죄 계획 또는 실행 지원
- 테러 활동 지원
2. 아동 착취
- 아동 성 착취물 (CSAM) 생성
- 미성년자를 성적 대상화하는 콘텐츠
3. 개인 프라이버시 침해
- 개인의 동의 없이 딥페이크 생성
- 신원 도용 목적의 이미지 생성
- 허위 정보 유포 목적
4. 차별 및 혐오
- 인종, 성별, 종교 등에 대한 차별적 콘텐츠
- 혐오 발언을 조장하는 이미지
5. 의료 및 법률 자문
6. 기타 유해한 사용
- 자살 또는 자해 조장
- 불법 약물 홍보
- 도박 중독 조장
사용 시나리오
허용되는 사용
1. 마케팅 이미지 생성
시나리오: 광고용 이미지 생성 서비스
사용 방식: Stable Diffusion으로 제품 이미지 생성
판단: 허용 (상업적 사용 OK, 금지 용도 아님)
2. 게임 아트 생성
시나리오: 인디 게임 배경 이미지 제작
사용 방식: 파인튜닝하여 일관된 스타일 생성
판단: 허용
3. 교육용 콘텐츠
시나리오: 온라인 강의 썸네일 생성
사용 방식: AI 이미지 생성 API 제공
판단: 허용
금지되는 사용
1. 딥페이크 서비스
시나리오: 타인의 얼굴로 이미지 생성 서비스
사용 방식: 연예인 얼굴 합성
판단: 금지 (프라이버시 침해)
2. 가짜 뉴스 생성
시나리오: 정치인의 가짜 사진 생성
사용 방식: 허위 정보 유포 목적
판단: 금지 (개인 프라이버시 침해, 허위 정보)
검토 필요
1. 소셜 미디어 프로필 생성
시나리오: AI로 생성한 가상 인물 프로필
사용 방식: 실존하지 않는 인물의 프로필 사진
판단: 목적에 따라 다름, 악용 가능성 검토
파생 모델의 라이선스
CreativeML Open RAIL-M의 중요한 특징은 RAIL 조항 전파입니다.
파생 모델을 배포할 때:
- 동일한 용도 제한 사항 유지 필요
- 라이선스는 변경 가능하지만, Use-Based Restrictions는 유지
- 즉, “책임있는 사용” 조항은 계속 적용
예시:
Stable Diffusion → 파인튜닝 → 커스텀 모델 배포
→ 커스텀 모델도 동일한 금지 용도 적용
AI 생성물의 저작권
중요: 생성된 이미지는 모델 라이선스와 별개입니다
- 모델 라이선스: CreativeML Open RAIL-M (모델 자체)
- 생성물: 별도 저작권 (사용자가 소유)
생성된 이미지는:
- 사용자가 저작권 소유 (모델 제공자가 아님)
- 자유롭게 상업적 사용 가능
- 단, 생성 과정에서 금지 용도 위반하면 안 됨
참고 자료
10 - Elastic License 2.0 가이드
Elastic License 2.0은 Elastic사가 2021년 만든 Source Available 라이선스로, AWS와 같은 클라우드 제공업체의 상업적 서비스 제공을 제한하면서도 SSPL보다는 덜 제한적인 조건을 제공합니다.
SPDX Identifier: Elastic-2.0
의무사항 요약
- Elastic-2.0은 OSI 승인 오픈소스가 아닙니다
- 금지된 용도 (Prohibited):
- 관리형 서비스로 제공 (Managed Service)
- 경쟁 제품의 핵심 기능으로 사용
- 라이선스/보호 메커니즘 우회
- 허용된 용도:
- 내부 사용
- 자체 서비스/제품에 통합 (경쟁 서비스가 아닌 경우)
- 수정 및 재배포 (조건 준수 시)
Elastic-2.0 사용 주의사항
Elastic License 2.0은 세 가지 금지 사항(Limitations)이 있습니다:
- 관리형 서비스 제공 금지: Elasticsearch/Kibana를 서비스로 제공 불가
- 라이선스 우회 금지: 소프트웨어 보호 메커니즘 제거 금지
- 상표 사용 제한: Elastic 상표를 오해 소지 있게 사용 금지
제품/서비스에 포함 전 반드시 OSPO에 문의하시기 바랍니다.
Elastic License 2.0이란?
Elastic License 2.0 (ELv2)은 Elastic사가 2021년 Elasticsearch와 Kibana의 라이선스를 Apache-2.0에서 변경하면서 도입한 라이선스입니다.
라이선스 변경 배경
2021년 1월 이전: Apache-2.0
- AWS가 Elasticsearch를 관리형 서비스로 제공 (Amazon Elasticsearch Service)
- Elastic사의 수익 모델 침해
2021년 1월 이후: Elastic License 2.0 + SSPL 듀얼 라이선스
- AWS의 관리형 서비스 제공 제한
- 결과: AWS는 OpenSearch로 포크
세 가지 금지 사항 (Limitations)
1. 관리형 서비스 제공 금지
금지:
제3자에게 소프트웨어의 실질적 기능을 서비스로 제공하는 것
구체적 예시:
금지되는 경우:
- “Elasticsearch as a Service” 제공
- “Managed Kibana” 제공
- 고객에게 Elasticsearch 클러스터를 관리형으로 제공
허용되는 경우:
- 자사 서비스의 백엔드로 Elasticsearch 사용
- 내부 검색 기능 구현
- 로그 분석 시스템 구축
2. 경쟁 제품의 핵심 기능으로 사용 금지
금지:
소프트웨어의 기능을 우회하거나 경쟁 제품을 만드는 것
구체적 예시:
금지되는 경우:
- Elasticsearch의 유료 기능 제한을 우회
- X-Pack 기능의 라이선스 체크 제거
- Elastic 상용 기능을 무료로 제공하는 제품 개발
허용되는 경우:
- Elasticsearch를 검색 엔진으로 사용하는 일반 애플리케이션
- 로그 수집 및 분석 도구 개발
3. 상표 사용 제한
금지:
Elastic 상표를 오해의 소지가 있게 사용
구체적 예시:
금지되는 경우:
- “Powered by Elasticsearch” (공식 승인 없이)
- “Elasticsearch Compatible” (오해 소지)
허용되는 경우:
- “Works with Elasticsearch” (사실 기술)
- “Built on Elasticsearch technology” (명확한 사실 관계)
참고 자료
11 - EPL-2.0 가이드
EPL-2.0은 Eclipse Public License 2.0이라고도 불리며, 모듈 단위의 소스 코드 공개를 요구하는 Weak Copyleft 성격의 라이선스입니다.
SPDX Identifier: EPL-2.0
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 수정시 의무사항
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- 수정시 의무사항
- 소스 코드 제공 의무
- 바이너리 내 EPL-2.0에 해당하는 모듈의 소스 코드 파일을 제공합니다.
Weak Copyleft 특성
EPL-2.0은 모듈 단위 Weak Copyleft 라이선스입니다. EPL-2.0 모듈 자체를 수정한 경우에만 소스 코드 공개 의무가 발생하며, 별도로 추가한 모듈은 공개할 필요가 없습니다. 따라서 상용 소프트웨어에서도 사용 가능합니다.
소스 코드 내 라이선스 문구
EPL-2.0 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0 which is available at
http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
v. 1.0 which is available at
http://www.eclipse.org/org/documents/edl-v10.php.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
EPL-2.0 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 라이선스 사본 제공
- 저작권, 특허, 상표권, 보증부인, 면책 등 법적 고지 수정 금지
즉, 소스 코드 내 명시된 라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
Case 2. 바이너리 형태로 재배포
EPL-2.0 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 라이선스 사본 제공
- 저작권, 특허, 상표권, 보증부인, 면책 등 법적 고지 수정 금지
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
2-2 소스 코드 제공 의무
바이너리 내 EPL-2.0에 해당하는 모듈의 소스 코드 파일을 제공합니다. 이때 다음 사항을 준수합니다.
- EPL-2.0은 모듈 내 추가한 내용에 대해서도 EPL-2.0을 적용하여 소스 코드를 공개할 것을 요구합니다. 따라서 원 모듈과 더불어 모듈 내 추가/수정한 내용도 EPL-2.0을 적용하여 공개합니다.
오픈소스 고지문에 사용자가 소스 코드를 수령할 수 있는 방법을 안내함으로써 소스 코드 제공 의무를 준수할 수 있습니다.
모듈 단위 Copyleft
EPL-2.0의 핵심 특징은 모듈 단위로 Copyleft가 적용된다는 점입니다.
- EPL-2.0 모듈 수정 시: 해당 모듈만 EPL-2.0로 공개
- 별도 모듈 추가 시: 추가한 모듈은 공개 불필요
- 다른 라이선스와 결합: 모듈을 분리하면 결합 가능
이러한 특성으로 인해 Eclipse 재단 프로젝트와 상용 소프트웨어를 함께 개발할 수 있습니다.
라이선스 호환성
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | EPL 모듈만 공개 |
| Apache-2.0 | 호환 | EPL 모듈만 공개 |
| GPL-2.0 | 비호환 | 기본적으로 비호환 |
| GPL-3.0 | 조건부 | Secondary License 지정 시 호환 |
| Proprietary | 호환 | EPL 모듈만 공개하면 사용 가능 |
Secondary License 조항
EPL-2.0은 Secondary License로 GPL-2.0 또는 GPL-3.0을 지정할 수 있습니다. 이 경우 GPL 프로젝트에서도 사용 가능합니다.
참고 자료
12 - GPL-2.0 가이드
SPDX Identifier: GPL-2.0-only 또는 GPL-2.0-or-later
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 수정시 의무사항
- 추가/수정한 부분에 GPL-2.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- 수정시 의무사항
- 추가/수정한 부분에 GPL-2.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
- 소스 코드 제공 의무
- 바이너리에 해당하는 전체 소스 코드를 제공합니다.
- 바이너리 사용자가 공개된 소스 코드로 동일한 바이너리를 만들 수 있는 빌드 환경을 제공합니다.
Copyleft 주의사항
GPL-2.0은 강력한 Copyleft 라이선스입니다. GPL-2.0 코드를 포함하는 파생저작물은 전체가 GPL-2.0을 따라야 하며, 소스 코드를 공개해야 합니다. 상용 소프트웨어 개발 시 사용에 주의가 필요합니다.
소스 코드 내 라이선스 문구
GPL-2.0 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (C) yyyy name of author
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
GPL-2.0 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
즉, 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 GPL-2.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
Case 2. 바이너리 형태로 재배포
GPL-2.0 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 GPL-2.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
2-2 소스 코드 제공 의무
바이너리에 해당하는 소스 코드를 제공합니다. 이때 다음 사항을 준수합니다.
- GPL-2.0은 파생저작물에 대해서도 GPL-2.0을 적용하여 소스 코드를 공개할 것을 요구합니다. 아래 내용을 참고하여 GPL-2.0 하의 오픈소스와 파생저작물의 소스 코드를 공개합니다.
GPL-2.0 파생저작물의 범위
일반적인 GPL-2.0의 파생저작물 범위는 다음과 같습니다.
- 수정 코드
- GPL 프로그램과 동일한 프로세스에서 동작하는 Module
- GPL 프로그램과 링크로 연결한 Library
- GPL 프로그램을 상속한 Class
다음의 경우 GPL의 파생저작물로 보지 않습니다.
- CD와 같은 매체에 함께 존재하지만 GPL 프로그램과 전혀 연동하지 않는 독립 프로그램 (#MereAggregation)
- GPL 프로그램과는 별도의 프로그램으로써 Pipe, Socket, IPC, Command Line Arguments로 GPL 프로그램과 통신하는 경우
- 바이너리 사용자가 공개된 소스 코드로 동일한 바이너리를 만들 수 있는 빌드 환경을 제공합니다. 여기에는 다음 사항이 포함됩니다.
- Tool chain 정보
- 빌드 스크립트
- 빌드 방법 (README)
소스 코드 대신 서면 약정서(Written Offer)를 제공할 수 있습니다. 여기에는 다음 진술이 포함되어야 합니다.
- 서면 약정서는 제품 판매 후 3년간 유효합니다.
- 누구에게나 제공합니다.
- 비용 청구를 하지 않습니다. (소스 전달을 위해 발생하는 비용 제외)
이후 외부로부터 서면 약정서를 근거로 소스 코드 제공을 요청 받을 경우, 위에서 언급한 바이너리에 해당하는 소스 코드를 제공해야 합니다. 따라서 회사는 제품 판매 후 최소 3년간 소스 코드를 보관해야 합니다.
라이선스 호환성
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | 전체 프로젝트가 GPL-2.0이 됨 |
| Apache-2.0 | 비호환 | 특허 조항 충돌 |
| GPL-3.0 | 조건부 | GPL-2.0-or-later인 경우만 호환 |
| LGPL-2.1 | 호환 | LGPL 부분은 LGPL 유지 가능 |
| Proprietary | 비호환 | 상용 소프트웨어에 사용 불가 |
Apache-2.0과의 비호환성
GPL-2.0은 Apache-2.0과 호환되지 않습니다. Apache-2.0의 특허 허여 조항이 GPL-2.0과 충돌하기 때문입니다. Apache-2.0 코드가 필요한 경우 GPL-3.0 사용을 고려하시기 바랍니다.
참고 자료
13 - GPL-3.0 가이드
SPDX Identifier: GPL-3.0-only 또는 GPL-3.0-or-later
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 수정시 의무사항
- 추가/수정한 부분에 GPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- 수정시 의무사항
- 추가/수정한 부분에 GPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
- 소스 코드 제공 의무
- 바이너리에 해당하는 전체 소스 코드를 제공합니다.
- 바이너리 사용자가 공개된 소스 코드로 동일한 바이너리를 만들 수 있는 빌드 환경을 제공합니다.
- 설치 정보 제공 의무 : 바이너리를 User Product와 배포한다면 설치 정보(Installation Information)를 제공합니다.
Copyleft 주의사항
GPL-3.0은 강력한 Copyleft 라이선스입니다. GPL-3.0 코드를 포함하는 파생저작물은 전체가 GPL-3.0을 따라야 하며, 소스 코드를 공개해야 합니다. 상용 소프트웨어 개발 시 사용에 주의가 필요합니다.
소스 코드 내 라이선스 문구
GPL-3.0 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
GPL-3.0 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
즉, 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 GPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
Case 2. 바이너리 형태로 재배포
GPL-3.0 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 GPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
2-2 소스 코드 제공 의무
바이너리에 해당하는 소스 코드를 제공합니다. 이때 다음 사항을 준수합니다.
- GPL-3.0은 파생저작물에 대해서도 GPL-3.0을 적용하여 소스 코드를 공개할 것을 요구합니다. 아래 내용을 참고하여 GPL-3.0 하의 오픈소스와 파생저작물의 소스 코드를 공개합니다.
GPL-3.0 파생저작물의 범위
일반적인 GPL-3.0의 파생저작물 범위는 다음과 같습니다.
- 수정 코드
- GPL 프로그램과 동일한 프로세스에서 동작하는 Module
- GPL 프로그램과 링크로 연결한 Library
- GPL 프로그램을 상속한 Class
다음의 경우 GPL의 파생저작물로 보지 않습니다.
- CD와 같은 매체에 함께 존재하지만 GPL 프로그램과 전혀 연동하지 않는 독립 프로그램 (#MereAggregation)
- GPL 프로그램과는 별도의 프로그램으로써 Pipe, Socket, IPC, Command Line Arguments로 GPL 프로그램과 통신하는 경우
- 바이너리 사용자가 공개된 소스 코드로 동일한 바이너리를 만들 수 있는 빌드 환경을 제공합니다. 여기에는 다음 사항이 포함됩니다.
- Tool chain 정보
- 빌드 스크립트
- 빌드 방법 (README)
소스 코드 대신 서면 약정서(Written Offer)를 제공할 수 있습니다. 여기에는 다음 진술이 포함되어야 합니다.
- 서면 약정서는 제품 판매 후 3년간 유효합니다.
- 누구에게나 제공합니다.
- 비용 청구를 하지 않습니다. (소스 전달을 위해 발생하는 비용 제외)
이후 외부로부터 서면 약정서를 근거로 소스 코드 제공을 요청 받을 경우, 위에서 언급한 바이너리에 해당하는 소스 코드를 제공해야 합니다. 따라서 회사는 제품 판매 후 최소 3년간 소스 코드를 보관해야 합니다.
2-3 설치 정보 제공 의무
바이너리를 User Product와 배포한다면 설치 정보(Installation Information)를 제공합니다.
- User Product : 전자 기기와 같은 Embedded Device
- 설치 정보(Installation Information) : 사용자가 소스 코드를 빌드하여 다시 제품에 설치하기 위해 필요한 모든 정보 및 방법
사용 제한
대부분의 User Product는 보안상의 이유로 설치 정보를 제공하는 것이 불가능합니다. 따라서 User Product로 배포하는 소프트웨어에는 GPL-3.0의 오픈소스를 사용하지 않아야 합니다.
GPL-2.0 대비 주요 개선사항
GPL-3.0은 GPL-2.0의 핵심 원칙을 유지하면서 다음 사항을 개선하였습니다.
- 특허 허여 명시: 기여자의 특허 라이선스 허여를 명시적으로 규정
- 티보이제이션 방지: User Product에 설치 정보 제공 의무 추가
- 국제화: 전 세계적으로 적용 가능하도록 법적 용어 개선
라이선스 호환성
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | 전체 프로젝트가 GPL-3.0이 됨 |
| Apache-2.0 | 호환 | 전체 프로젝트가 GPL-3.0이 됨 |
| GPL-2.0 | 조건부 | GPL-2.0-or-later인 경우만 호환 |
| LGPL-3.0 | 호환 | LGPL 부분은 LGPL 유지 가능 |
| AGPL-3.0 | 호환 | 전체 프로젝트가 AGPL-3.0이 됨 |
| Proprietary | 비호환 | 상용 소프트웨어에 사용 불가 |
GPL-2.0과의 호환성
GPL-2.0-only 라이선스와 GPL-3.0은 호환되지 않습니다. 그러나 GPL-2.0-or-later 라이선스는 GPL-3.0으로 업그레이드할 수 있어 호환됩니다.
참고 자료
14 - LGPL-2.1 가이드
SPDX Identifier: LGPL-2.1-only 또는 LGPL-2.1-or-later
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 수정시 의무사항
- 추가/수정한 부분에 LGPL-2.1을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- 수정시 의무사항
- 추가/수정한 부분에 LGPL-2.1을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
- 소스 코드 제공 의무
- 바이너리(라이브러리)에 해당하는 전체 소스 코드를 제공합니다.
- 사용자가 공개된 LGPL 라이브러리의 소스 코드를 빌드하여 동일한 라이브러리를 만들 수 있는 빌드 환경을 제공합니다.
Weak Copyleft 특성
LGPL-2.1은 Weak Copyleft 라이선스입니다. LGPL 라이브러리 자체를 수정한 경우에만 소스 코드 공개 의무가 발생하며, 동적 링크(Dynamic Link)로 사용하는 애플리케이션은 공개할 필요가 없습니다. 따라서 상용 소프트웨어에서도 사용 가능합니다.
소스 코드 내 라이선스 문구
LGPL-2.1 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (C) year name of author
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
LGPL-2.1 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
즉, 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 LGPL-2.1을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
Case 2. 바이너리(라이브러리) 형태로 재배포
LGPL-2.1 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 라이브러리 재배포 시 동봉합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 LGPL-2.1을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
2-2 소스 코드 제공 의무
바이너리(라이브러리)에 해당하는 소스 코드를 제공합니다. 이때 다음 사항을 준수합니다.
- LGPL-2.1은 파생저작물에 대해서도 LGPL-2.1을 적용하여 소스 코드를 공개할 것을 요구합니다. 아래 내용을 참고하여 LGPL-2.1 하의 오픈소스와 파생저작물의 소스 코드를 공개합니다.
LGPL-2.1 파생저작물의 범위
일반적인 LGPL-2.1의 파생저작물 범위는 다음과 같습니다.
다음의 경우 LGPL-2.1의 파생저작물로 보지 않습니다.
사용자가 공개된 LGPL 라이브러리의 소스 코드를 빌드하여 동일한 라이브러리를 만들 수 있는 빌드 환경을 제공합니다. 여기에는 다음 사항이 포함됩니다.
- Tool chain 정보
- 빌드 스크립트
- 빌드 방법 (README)
LGPL 라이브러리를 Static Link하여 생성한 실행파일(Executable)을 배포하는 경우, 사용자가 LGPL 라이브러리를 수정하고 다시 실행파일을 생성할 수 있도록 실행파일을 구성하는 오브젝트 코드를 제공합니다. (#LGPLStaticVsDynamic)
소스 코드 대신 서면 약정서(Written Offer)를 제공할 수 있습니다. 여기에는 다음 진술이 포함되어야 합니다.
- 서면 약정서는 제품 판매 후 3년간 유효합니다.
- 누구에게나 제공합니다.
- 비용 청구를 하지 않습니다. (소스 전달을 위해 발생하는 비용 제외)
이후 외부로부터 서면 약정서를 근거로 소스 코드 제공을 요청 받을 경우, 위에서 언급한 바이너리에 해당하는 소스 코드를 제공해야 합니다. 따라서 회사는 제품 판매 후 최소 3년간 소스 코드를 보관해야 합니다.
동적 링크 vs 정적 링크
LGPL-2.1의 핵심은 링킹 방식에 따라 소스 코드 공개 범위가 달라진다는 점입니다.
- 동적 링크(Dynamic Link): LGPL 라이브러리만 공개, 애플리케이션 코드는 공개 불필요
- 정적 링크(Static Link): LGPL 라이브러리 + 오브젝트 코드 제공 필요
상용 소프트웨어 개발 시에는 동적 링크 사용을 권장합니다.
라이선스 호환성
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | 동적 링크 시 상용 소프트웨어 가능 |
| Apache-2.0 | 비호환 | 특허 조항 충돌 |
| GPL-2.0 | 호환 | GPL 부분은 GPL 유지 |
| LGPL-3.0 | 조건부 | LGPL-2.1-or-later인 경우만 호환 |
| Proprietary | 조건부 | 동적 링크 시 사용 가능 |
상용 소프트웨어 사용 조건
LGPL-2.1 라이브러리를 동적 링크로 사용하면 상용 소프트웨어에서도 사용 가능합니다. 단, LGPL 라이브러리 자체를 수정한 경우에는 해당 수정 부분의 소스 코드를 공개해야 합니다.
참고 자료
15 - LGPL-3.0 가이드
SPDX Identifier: LGPL-3.0-only 또는 LGPL-3.0-or-later
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 수정시 의무사항
- 추가/수정한 부분에 LGPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- 수정시 의무사항
- 추가/수정한 부분에 LGPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
- 소스 코드 제공 의무
- 바이너리(라이브러리)에 해당하는 전체 소스 코드를 제공합니다.
- 사용자가 공개된 LGPL 라이브러리의 소스 코드를 빌드하여 동일한 라이브러리를 만들 수 있는 빌드 환경을 제공합니다.
- 설치 정보 제공 의무 : 라이브러리를 User Product와 배포한다면 설치 정보(Installation Information)를 제공합니다.
Weak Copyleft 특성
LGPL-3.0은 Weak Copyleft 라이선스입니다. LGPL 라이브러리 자체를 수정한 경우에만 소스 코드 공개 의무가 발생하며, 동적 링크(Dynamic Link)로 사용하는 애플리케이션은 공개할 필요가 없습니다. 따라서 상용 소프트웨어에서도 사용 가능합니다.
소스 코드 내 라이선스 문구
LGPL-3.0 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
LGPL-3.0 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
즉, 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 LGPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 수정일, 수정내용을 주석 형태로 포함)
Case 2. 바이너리(라이브러리) 형태로 재배포
LGPL-3.0 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
- 저작권 고지 제공
- 보증 부인 제공
- 라이선스 사본 제공
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 라이브러리 재배포 시 동봉합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 추가/수정한 부분에 LGPL-3.0을 적용합니다.
- 수정 사항에 대한 고지를 포함합니다. (예: 오픈소스 고지문에 수정일, 수정내용을 포함)
2-2 소스 코드 제공 의무
바이너리(라이브러리)에 해당하는 소스 코드를 제공합니다. 이때 다음 사항을 준수합니다.
- LGPL-3.0은 파생저작물에 대해서도 LGPL-3.0을 적용하여 소스 코드를 공개할 것을 요구합니다. 아래 내용을 참고하여 LGPL-3.0 하의 오픈소스와 파생저작물의 소스 코드를 공개합니다.
LGPL-3.0 파생저작물의 범위
일반적인 LGPL-3.0의 파생저작물 범위는 다음과 같습니다.
다음의 경우 LGPL-3.0의 파생저작물로 보지 않습니다.
사용자가 공개된 LGPL 라이브러리의 소스 코드를 빌드하여 동일한 라이브러리를 만들 수 있는 빌드 환경을 제공합니다. 여기에는 다음 사항이 포함됩니다.
- Tool chain 정보
- 빌드 스크립트
- 빌드 방법 (README)
LGPL 라이브러리를 Static Link하여 생성한 실행파일(Executable)을 배포하는 경우, 사용자가 LGPL 라이브러리를 수정하고 다시 실행파일을 생성할 수 있도록 실행파일을 구성하는 오브젝트 코드를 제공합니다. (#LGPLStaticVsDynamic)
소스 코드 대신 서면 약정서(Written Offer)를 제공할 수 있습니다. 여기에는 다음 진술이 포함되어야 합니다.
- 서면 약정서는 제품 판매 후 3년간 유효합니다.
- 누구에게나 제공합니다.
- 비용 청구를 하지 않습니다. (소스 전달을 위해 발생하는 비용 제외)
이후 외부로부터 서면 약정서를 근거로 소스 코드 제공을 요청 받을 경우, 위에서 언급한 바이너리에 해당하는 소스 코드를 제공해야 합니다. 따라서 회사는 제품 판매 후 최소 3년간 소스 코드를 보관해야 합니다.
2-3 설치 정보 제공 의무
라이브러리를 User Product와 배포한다면 설치 정보(Installation Information)를 제공합니다.
- User Product : 전자 기기와 같은 Embedded Device
- 설치 정보(Installation Information) : 사용자가 소스 코드를 빌드하여 다시 제품에 설치하기 위해 필요한 모든 정보 및 방법
사용 제한
대부분의 User Product는 보안상의 이유로 설치 정보를 제공하는 것이 불가능합니다. 따라서 User Product로 배포하는 소프트웨어에는 LGPL-3.0의 오픈소스를 사용하지 않아야 합니다.
LGPL-2.1 대비 주요 개선사항
LGPL-3.0은 LGPL-2.1의 핵심 원칙을 유지하면서 다음 사항을 개선하였습니다.
- 특허 허여 명시: 기여자의 특허 라이선스 허여를 명시적으로 규정
- Apache-2.0 호환: Apache-2.0과의 호환성 문제 해결
- 티보이제이션 방지: User Product에 설치 정보 제공 의무 추가
라이선스 호환성
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | 동적 링크 시 상용 소프트웨어 가능 |
| Apache-2.0 | 호환 | LGPL-2.1과 달리 호환됨 |
| GPL-3.0 | 호환 | GPL 부분은 GPL 유지 |
| LGPL-2.1 | 조건부 | LGPL-2.1-or-later인 경우만 호환 |
| Proprietary | 조건부 | 동적 링크 시 사용 가능 |
Apache-2.0 호환성
LGPL-3.0은 LGPL-2.1과 달리 Apache-2.0과 호환됩니다. 특허 허여 조항이 명시적으로 추가되었기 때문입니다.
참고 자료
16 - Llama 2 Community License 가이드
Llama 2 Community License는 Meta의 Llama 2 언어 모델에 적용되는 라이선스로, 대부분의 사용을 허용하지만 월간 활성 사용자 7억 명 이상의 서비스에는 별도 라이선스가 필요합니다.
SPDX Identifier: Llama-2 (비공식)
의무사항 요약
- Meta의 독점 라이선스 (OSI 승인 오픈소스 아님)
- 규모 제한: 월간 활성 사용자(MAU) 7억 명 이상 서비스는 별도 라이선스 필요
- 상업적 사용: 허용 (규모 제한 내)
- 고지 의무: 라이선스 정보 유지
- 용도 제한: 불법적, 유해한 목적 사용 금지
- 파생 모델: Llama 2 기반임을 명시, 동일한 제한 적용
Llama 2 규모 제한
월간 활성 사용자(MAU) 7억 명 이상의 제품/서비스에서 Llama 2를 사용하려면 Meta로부터 별도 라이선스를 받아야 합니다.
- 7억 명 미만: 자유롭게 사용 가능
- 7억 명 이상: Meta에 라이선스 요청 필요
대부분의 기업과 서비스는 7억 명 미만이므로 자유롭게 사용 가능합니다.
Llama 2 기반 서비스 개발 시 OSPO에 문의하시기 바랍니다.
Llama 2 Community License는 2023년 Meta가 Llama 2 언어 모델과 함께 공개한 독점 라이선스입니다.
Llama 모델 계보
| 버전 | 공개 시기 | 라이선스 | 특징 |
|---|
| Llama 1 | 2023.02 | 연구용만 | 상업적 사용 불가 |
| Llama 2 | 2023.07 | Llama 2 Community | 상업적 사용 가능 (규모 제한) |
| Llama 3 | 2024.04 | Llama 3 Community | Llama 2와 유사 (업데이트됨) |
Meta는 이 라이선스를 다음과 같이 설명합니다:
- 커뮤니티의 혁신 장려: 대부분의 개발자와 기업이 자유롭게 사용
- 대기업 견제: 빅테크의 독점적 사용 제한
- 책임있는 AI: 유해한 사용 방지
7억 명 규모 제한
MAU (Monthly Active Users) 정의
월간 활성 사용자: 이전 달력월에 제품/서비스를 사용한 고유 사용자 수
예시:
시나리오 1: T전화 앱 (MAU 500만)
→ 7억 미만 → 자유롭게 사용 가능
시나리오 2: Facebook (MAU 30억)
→ 7억 이상 → Meta에 별도 라이선스 요청 필요
7억 명 기준을 넘는 서비스
전 세계적으로 7억 명 이상 MAU를 가진 서비스:
- Facebook, Instagram, WhatsApp (Meta)
- YouTube (Google)
- TikTok
- WeChat
대부분의 기업은 해당 없음
규모 제한 적용 시점
라이선스 동의 시점 + 사용 시작 이후 계속 적용됩니다.
중요: 처음에 7억 미만이었다가 나중에 초과하면?
→ 초과 시점에 Meta에 통보하고 별도 라이선스 협상
허용 사항 (MAU 7억 미만)
자유롭게 할 수 있는 것
상업적 사용
모델 수정
- 파인튜닝
- 양자화 (4-bit, 8-bit)
- 모델 병합
모델 배포
- 파생 모델 공개
- Hugging Face 등에 업로드
- 오픈소스 프로젝트 포함
생성물 활용
금지 사항 (Acceptable Use Policy)
Llama 2는 다음 용도로 사용할 수 없습니다:
1. 불법 활동
2. 아동 보호
3. 차별 및 혐오
4. 폭력 및 위험
5. 프라이버시 침해
6. 허위 정보
7. 고위험 분야 (단독 의사결정)
특이 조항:
Llama 2를 사용하여 Meta와 경쟁하는 LLM을 학습시킬 수 없음
금지 예시:
- Llama 2의 출력으로 새로운 LLM 학습
- Llama 2를 teacher 모델로 사용한 distillation
허용 예시:
- Llama 2 자체를 파인튜닝
- Llama 2의 출력을 데이터셋으로 사용 (특정 태스크용)
사용 시나리오
허용되는 사용
1. 고객 서비스 챗봇
시나리오: 통신사 고객 상담 챗봇
MAU: 1000만 명
판단: 허용 (7억 미만)
2. B2B AI 솔루션
시나리오: 기업용 문서 요약 솔루션
MAU: 10만 명
판단: 허용
3. 모바일 앱 AI 기능
시나리오: 사진 캡션 생성 앱
MAU: 500만 명
판단: 허용
제한되는 사용
1. 대규모 소셜 미디어
시나리오: MAU 10억 명의 소셜 미디어에 통합
판단: Meta 라이선스 필요
2. 경쟁 LLM 학습
시나리오: Llama 2 출력으로 새 LLM 학습
판단: 금지
검토 필요
1. 글로벌 서비스 확장
시나리오: 현재 MAU 5000만, 향후 10억 목표
판단: 7억 도달 전 Meta와 협의 필요
파생 모델의 라이선스
필수 요구사항
출처 명시
- “Based on Llama 2” 표시
- 모델 카드에 명시
라이선스 전파
- 동일한 Acceptable Use Policy 적용
- 7억 명 규모 제한 유지
Meta 상표 사용 제한
- “Llama” 상표 무단 사용 금지
- “Built with Llama 2” 표현은 OK
파생 모델 예시
허용되는 이름:
- “MyModel (based on Llama 2)”
- “CustomLLM-Llama2-7B”
금지되는 이름:
- “Llama 2 Pro”
- “Meta Llama Custom”
Llama 3 업데이트
2024년 4월 공개된 Llama 3는 업데이트된 라이선스를 사용합니다:
- 기본 구조 유사
- 용도 제한 조항 일부 개선
- 7억 명 규모 제한 유지
Llama 3 사용 시에도 동일한 가이드가 적용됩니다.
참고 자료
17 - MIT 가이드
MIT 라이선스는 Massachusetts Institute of Technology (MIT)에서 만들었으며, 소스 코드 공개를 요구하지 않는 대표적인 Permissive 라이선스입니다.
SPDX Identifier: MIT
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
소스 코드 내 라이선스 문구
MIT 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
Copyright (c) <year> <copyright holders>
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
MIT 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
즉, 소스 코드 내 저작권, 라이선스 등을 그대로 유지합니다.
Case 2. 바이너리 형태로 재배포
MIT 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
이를 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
라이선스 호환성
MIT 라이선스는 대부분의 다른 라이선스와 호환됩니다.
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| Apache-2.0 | 호환 | Apache-2.0의 특허 조항 유지 권장 |
| GPL-2.0/3.0 | 호환 | 전체 프로젝트가 GPL이 됨 |
| LGPL-2.1/3.0 | 호환 | 동적 링크 시 권장 |
| Proprietary | 호환 | 상용 소프트웨어에 사용 가능 |
주의사항
MIT 라이선스 코드를 GPL 프로젝트에 포함하면 전체 프로젝트가 GPL 라이선스를 따라야 합니다. GPL의 Copyleft 조건이 MIT보다 더 강한 제약을 가하기 때문입니다.
참고 자료
18 - MPL-2.0 가이드
MPL-2.0은 Mozilla Public License 2.0이라고도 불리며, 파일 단위의 소스 코드 공개를 요구하는 Weak Copyleft 성격의 라이선스입니다.
SPDX Identifier: MPL-2.0
의무사항 요약
- 소스 형태로 재배포
- 고지 의무 : 소스 코드 내 명시된 저작권/라이선스 정보를 그대로 유지한 상태로 재배포합니다.
- 바이너리 형태로 재배포
- 고지 의무 : 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
- 수정시 의무사항
- 추가/수정한 파일에 MPL-2.0을 적용합니다.
- 소스 코드 제공 의무
- 바이너리 내 MPL-2.0에 해당하는 파일의 소스 코드를 제공합니다.
Weak Copyleft 특성
MPL-2.0은 파일 단위 Weak Copyleft 라이선스입니다. MPL-2.0 파일 자체를 수정한 경우에만 소스 코드 공개 의무가 발생하며, 별도로 추가한 파일은 공개할 필요가 없습니다. 따라서 상용 소프트웨어에서도 사용 가능합니다.
소스 코드 내 라이선스 문구
MPL-2.0 라이선스 하의 오픈소스는 일반적으로 소스 코드 상단에 다음과 같은 문구가 있습니다.
This Source Code Form is subject to the terms of the Mozilla Public
License, v.2.0. If a copy of the MPL was not distributed with this file,
You can obtain one at https://mozilla.org/MPL/2.0/.
사용 사례별 의무사항
Case 1. 소스 형태로 재배포
MPL-2.0 라이선스 하의 오픈소스를 소스 형태로 재배포 시 다음 사항을 준수합니다.
1-1 고지 의무
- 라이선스 사본 제공 혹은 참조
- 법적 고지 수정 금지
즉, 소스 코드 내 명시된 라이선스 정보를 그대로 유지한 상태로 재배포합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 수정한 파일에 MPL-2.0을 적용합니다. (별도로 추가한 파일에는 MPL-2.0 적용 의무 없음)
Case 2. 바이너리 형태로 재배포
MPL-2.0 라이선스 하의 오픈소스를 빌드하여 바이너리 형태로만 재배포 시 다음 사항을 준수합니다.
2-1 고지 의무
이상의 내용을 포함하는 오픈소스 고지문을 생성하여 바이너리 재배포 시 동봉합니다.
수정 시 의무사항
오픈소스의 소스 코드를 일부 추가/수정하였을 경우, 다음 사항을 준수합니다.
- 수정한 파일에 MPL-2.0을 적용합니다. (별도로 추가한 파일에는 MPL-2.0 적용 의무 없음)
2-2 소스 코드 제공 의무
바이너리 내 MPL-2.0에 해당하는 소스 코드 파일을 제공합니다. 이때 다음 사항을 준수합니다.
- MPL-2.0은 파일 내 추가한 내용에 대해서도 MPL-2.0을 적용하여 소스 코드를 공개할 것을 요구합니다. 따라서 원본 파일과 더불어 수정한 파일도 MPL-2.0을 적용하여 공개합니다.
오픈소스 고지문에 사용자가 소스 코드를 수령할 수 있는 방법을 안내함으로써 소스 코드 제공 의무를 준수할 수 있습니다.
파일 단위 Copyleft
MPL-2.0의 핵심 특징은 파일 단위로 Copyleft가 적용된다는 점입니다.
- MPL-2.0 파일 수정 시: 해당 파일만 MPL-2.0로 공개
- 별도 파일 추가 시: 추가한 파일은 공개 불필요
- 다른 라이선스와 결합: 파일을 분리하면 결합 가능
이러한 특성으로 인해 상용 소프트웨어 개발에 유연하게 사용할 수 있습니다.
라이선스 호환성
주요 라이선스와의 호환성
| 결합 대상 라이선스 | 호환 여부 | 비고 |
|---|
| MIT | 호환 | MPL 파일만 공개 |
| Apache-2.0 | 호환 | MPL 파일만 공개 |
| GPL-2.0/3.0 | 호환 | Secondary License 조항 활용 |
| LGPL-2.1/3.0 | 호환 | MPL 파일만 공개 |
| Proprietary | 호환 | MPL 파일만 공개하면 사용 가능 |
Secondary License 조항
MPL-2.0은 Secondary License 조항을 통해 GPL-2.0/3.0과의 호환성을 제공합니다. MPL-2.0 코드를 GPL 프로젝트에 포함할 경우, GPL로 재라이선싱할 수 있습니다.
참고 자료
19 - SSPL 가이드
Server Side Public License (SSPL)는 MongoDB가 2018년 만든 Source Available 라이선스입니다. OSI가 승인한 오픈소스 라이선스가 아니며, 상업적 SaaS 제공에 매우 강력한 제한을 가하고 있습니다.
SPDX Identifier: SSPL-1.0
의무사항 요약
- SSPL은 OSI 승인 오픈소스가 아닙니다
- 소스 형태로 재배포
- 고지 의무: 저작권/라이선스 정보 유지
- 수정 시: AGPL-3.0과 동일한 의무
- 바이너리 형태로 재배포
- 고지 의무 + 소스 코드 제공
- AGPL-3.0과 동일한 의무
- SaaS 제공 시 추가 의무
- SSPL 소프트웨어 + 서비스 운영에 필요한 모든 소프트웨어 공개
- 인프라 관리 도구, 운영 스크립트 등도 포함
SSPL 사용 금지
SSPL은 OSI(Open Source Initiative)가 승인하지 않은 “Source Available” 라이선스입니다. 상업적 SaaS 제공 시 사실상 모든 서비스 인프라를 공개해야 하는 의무가 있어, SK텔레콤의 모든 제품과 서비스에서 사용할 수 없습니다.
SSPL이란?
SSPL(Server Side Public License)은 MongoDB가 AWS와 같은 클라우드 제공업체가 MongoDB를 상업적 서비스로 제공하는 것을 막기 위해 2018년 만든 라이선스입니다.
AGPL-3.0과의 차이점
| 항목 | AGPL-3.0 | SSPL |
|---|
| OSI 승인 | 승인됨 | 승인 거부됨 |
| 네트워크 서비스 | AGPL 코드 + 링크된 코드 공개 | 서비스 운영 전체 인프라 공개 |
| 공개 범위 | 애플리케이션 레이어 | 인프라 관리 도구까지 |
SSPL은 AGPL-3.0 Section 13을 수정하여, 서비스 제공 시 다음을 모두 공개하도록 요구합니다:
- SSPL 소프트웨어 자체
- 서비스와 상호작용하는 모든 소프트웨어
- 서비스를 운영하는 데 필요한 관리 소프트웨어
- 인프라 프로비저닝, 모니터링, 백업 도구 등
주요 사용 사례
MongoDB의 라이선스 변경
- 2018년 10월 이전: AGPL-3.0
- 2018년 10월 이후: SSPL-1.0
기타 SSPL 채택 프로젝트
왜 OSI가 승인하지 않았나?
OSI는 2019년 SSPL을 오픈소스로 인정하지 않기로 결정했습니다:
- 지나치게 광범위한 공개 요구: “서비스 운영에 필요한 모든 것"의 범위가 불명확
- 차별 금지 위반: 특정 사업 모델(SaaS)을 사실상 금지
- 자유로운 사용 제한: 상업적 클라우드 서비스 제공 사실상 불가능
사용 제한 이유
SSPL 소프트웨어를 사용하여 서비스를 제공하면 다음을 모두 공개해야 합니다:
- SSPL 소프트웨어의 소스 코드
- 서비스 애플리케이션 코드
- Kubernetes 설정
- Terraform 스크립트
- 모니터링 도구 (Prometheus, Grafana 등)
- CI/CD 파이프라인
- 백업 및 복구 시스템
이는 SK텔레콤의 핵심 인프라 정보를 모두 공개해야 하므로 사용이 불가능합니다.
대안
SSPL 소프트웨어를 사용해야 하는 경우 다음 대안을 고려하시기 바랍니다.
MongoDB
- MongoDB Community Edition: SSPL
- 대안 1: MongoDB Atlas (MongoDB 공식 클라우드 서비스)
- 대안 2: PostgreSQL + JSON 기능
- 대안 3: FerretDB (MongoDB 호환 AGPL 프로젝트)
Graylog
- Graylog Open Source: SSPL
- 대안 1: Elasticsearch + Kibana (Elastic License 2.0, 별도 검토 필요)
- 대안 2: Grafana Loki (AGPL-3.0)
참고 자료