New BSD License
1. 개요
1. 개요
New BSD License는 BSD 라이선스 계열에 속하는 자유 소프트웨어 라이선스이다. 이 라이선스는 소프트웨어의 배포와 사용에 관해 매우 허용적인 조건을 제공한다. 오픈 소스와 자유 소프트웨어 운동에서 널리 채택되어 사용되고 있다.
이 라이선스는 원래의 Original BSD License에서 논란이 되었던 광고 조항이 삭제된 수정판이다. 따라서 라이선스 문구를 소프트웨어의 모든 사본에 포함시켜야 하며, 저작권 고지와 면책 조항을 유지해야 하는 의무는 그대로 남아 있다. 이러한 특징으로 인해 GPL과 같은 조항이 엄격한 라이선스와 비교할 때 사용과 재배포에 제약이 적다.
New BSD License는 주로 대학과 연구 기관에서 시작된 소프트웨어 프로젝트, 그리고 FreeBSD와 같은 BSD 계열 운영체제와 관련된 소프트웨어에 많이 적용된다. 또한, Python 소프트웨어 재단이 사용하는 라이선스로도 잘 알려져 있어, Python 생태계의 많은 라이브러리와 도구가 이 라이선스 하에 배포된다.
이 라이선스의 가장 큰 장점은 사용자가 소프트웨어를 자유롭게 사용, 수정, 배포할 수 있으며, 수정한 소스를 공개하지 않고 사유 소프트웨어에 통합하여 재배포하는 것도 가능하다는 점이다. 이러한 유연성 때문에 상업적 소프트웨어 개발에서도 많이 활용된다.
2. BSD 라이선스의 변형
2. BSD 라이선스의 변형
2.1. Original BSD License (4-clause)
2.1. Original BSD License (4-clause)
Original BSD License는 BSD 라이선스 계열의 최초 형태로, 4개의 조항으로 구성되어 있어 흔히 4-clause BSD License라고도 불린다. 이 라이선스는 캘리포니아 대학교의 버클리 캘리퍼스에서 개발한 BSD 운영 체제의 배포를 위해 처음 사용되었다.
이 라이선스의 핵심 조항은 소스 코드와 바이너리 형태의 재배포 시 저작권 고지와 면책 조항을 포함해야 한다는 것이었다. 그러나 논란의 중심은 제3조, 소위 '광고 조항'이었다. 이 조항은 라이선스가 적용된 소프트웨어를 사용하거나 홍보하는 모든 관련 자료에 캘리포니아 대학교와 그 기여자들의 이름을 사용한 승인을 표시하도록 요구했다.
이 광고 조항은 프로젝트나 제품의 문서 및 마케팅 자료에 특정 기관의 이름을 반드시 언급해야 하는 부담을 주었으며, 이는 다른 오픈 소스 라이선스와의 호환성을 떨어뜨리는 주요 요인이 되었다. 특히 GNU 일반 공중 사용 허가서(GPL)와는 이 조항 때문에 호환이 되지 않았다. 이러한 문제점으로 인해 이후 Modified BSD License와 New BSD License에서는 이 광고 조항이 삭제되었다.
2.2. Modified BSD License (3-clause)
2.2. Modified BSD License (3-clause)
Modified BSD License는 BSD 라이선스 계열의 중요한 변형 중 하나로, 흔히 3-clause BSD License라고도 불린다. 이 라이선스는 Original BSD License(4-clause)에서 논란이 되었던 "광고 조항"을 삭제하여 더욱 간결하고 사용하기 쉬운 형태로 진화한 것이다.
이 라이선스의 핵심은 세 가지 주요 조항을 포함한다. 첫째, 소프트웨어의 모든 복사본에 저작권 고지와 면책 조항을 유지해야 한다. 둘째, 저작권자와 기여자는 소프트웨어와 관련된 어떠한 직접적, 간접적 손해에 대해서도 책임을 지지 않는다는 면책 조항을 포함한다. 셋째, 원래 라이선스에 있던 "광고 조항"이 삭제되어, 파생 저작물을 홍보할 때 저작권자의 이름을 사용해야 한다는 제한이 사라졌다.
이러한 변경으로 인해 Modified BSD License는 GNU 일반 공중 사용 허가서(GPL)와의 호환성이 향상되었다. 광고 조항이 제거됨에 따라 GPL의 조항과 충돌하지 않게 되어, Modified BSD License로 배포된 코드를 GPL 프로젝트에 통합하는 것이 더욱 용이해졌다. 이는 라이선스의 실용성과 채택률을 크게 높이는 요인이 되었다.
현재 New BSD License라고 불리는 현행 3-clause 라이선스는 이 Modified BSD License와 본질적으로 동일한 것으로 간주된다. FreeBSD 및 NetBSD와 같은 주요 오픈 소스 프로젝트들은 이 라이선스를 채택하여 사용하고 있으며, 파이썬의 표준 라이브러리 일부를 포함한 많은 소프트웨어 컴포넌트들이 이 허가서 하에 배포되고 있다.
2.3. New BSD License (3-clause, 현행)
2.3. New BSD License (3-clause, 현행)
New BSD License는 BSD 라이선스 계열의 현행 표준 라이선스이다. 정식 명칭은 "New BSD License"이며, "3-clause BSD License" 또는 "Modified BSD License"라고도 불린다. 이 라이선스는 자유 소프트웨어 재단과 오픈 소스 이니셔티브로부터 자유 소프트웨어 라이선스이자 오픈 소스 라이선스로 승인받았다. 이전의 Original BSD License에 포함되어 있던 논란의 "광고 조항"이 삭제된 것이 가장 큰 특징이다.
라이선스의 주요 내용은 소프트웨어의 소스 코드와 바이너리 형태의 재배포를 허용하며, 사용, 복사, 수정, 병합, 출판, 배포, 서브라이선싱, 판매를 포함한 광범위한 권리를 부여한다. 이 권리를 행사하기 위한 유일한 조건은 소프트웨어의 모든 복사본에 원본 저작권 고지, 이 면책 조항, 그리고 라이선스 자체의 사본을 유지하는 것이다. 이러한 조건은 매우 간결하고 제한이 적어, MIT 라이선스와 함께 가장 허용적(permissive)인 라이선스 중 하나로 평가받는다.
New BSD License는 GNU 일반 공중 사용 허가서와 같은 카피레프트 라이선스와 달리, 라이선스된 코드를 수정하여 사유 소프트웨어에 포함시키거나 클로즈드 소스로 배포하는 것을 허용한다. 이는 기업이 상용 제품에 오픈 소스 컴포넌트를 자유롭게 통합할 수 있게 하여, 상업적 이용에 매우 유리한 환경을 제공한다. 이러한 허용적 성격 덕분에 프로그래밍 언어 인터프리터, 라이브러리, 프레임워크 등 다양한 기반 소프트웨어에 널리 채택되고 있다.
이 라이선스는 FreeBSD와 NetBSD 같은 주요 BSD 운영 체제 프로젝트를 비롯하여, 파이썬의 표준 라이브러리 일부, Go 언어의 초기 버전, 그리고 수많은 깃허브의 소프트웨어 프로젝트에서 사용되고 있다. 라이선스 텍스트가 짧고 명확하여 법적 해석의 복잡성이 낮으며, 다른 허용적 라이선스와의 라이선스 호환성도 매우 높은 편이다.
2.4. Simplified BSD License (2-clause)
2.4. Simplified BSD License (2-clause)
Simplified BSD License는 BSD 라이선스 계열 중 가장 간결한 형태로, 2항 라이선스(2-clause BSD License)라고도 불린다. 이 라이선스는 Original BSD License의 네 번째 조항인 "광고 조항"과 세 번째 조항인 "보증 부인 조항"을 제외한 두 가지 기본 조항만을 포함한다. 이로 인해 라이선스 문구가 매우 짧고 제한이 적어, 다른 라이선스와의 호환성이 높으며, 상용 소프트웨어에 통합하거나 GPL 라이선스 소프트웨어와 결합하는 데 제약이 적은 것이 특징이다.
주요 조항은 다음과 같다. 첫째, 소프트웨어의 모든 복사본에 원본 저작권 고지, 이 라이선스 문구, 그리고 면책 조항을 유지해야 한다. 둘째, 소프트웨어를 제공하는 자와 저작권자는 소프트웨어 사용으로 인해 발생할 수 있는 모든 직접적, 간접적, 부수적, 특별한, 징벌적 손해에 대해 책임을 지지 않는다는 면책 조항을 포함한다. 이 두 가지 의무만을 부과함으로써 사용자에게 최대한의 자유를 부여한다.
이러한 단순함 덕분에 Simplified BSD License는 FreeBSD와 NetBSD 같은 운영체제 프로젝트의 커널 및 핵심 구성 요소, 그리고 LLVM 컴파일러 인프라, SQLite 데이터베이스 엔진, Python 표준 라이브러리의 많은 모듈 등 다양한 오픈 소스 프로젝트에서 널리 채택되고 있다. 또한, 라이선스 문구가 간단하여 법적 검토가 용이하고, Apache License 2.0 및 MIT License와 유사한 수준의 자유도를 제공한다는 평가를 받는다.
3. New BSD License의 주요 조항
3. New BSD License의 주요 조항
3.1. 저작권 고지 유지
3.1. 저작권 고지 유지
New BSD License의 핵심 의무 사항 중 하나는 소프트웨어의 모든 복제본 또는 상당 부분에 원본 저작권 고지, 이 면책 조항 목록, 그리고 다음 면책 조항을 보존해야 한다는 점이다. 이는 라이선스의 기본적인 요구사항으로, 소프트웨어를 사용, 수정, 재배포하는 모든 사용자가 준수해야 한다.
구체적으로, 소스 코드 형태로 배포할 때는 위의 고지 사항을 소스 코드에 포함시켜야 하며, 실행 파일 형태나 문서화된 결과물로 배포할 때도 고지 사항을 쉽게 볼 수 있는 형태(예: 관련 문서나 표시)로 포함시켜야 한다. 이 규정은 BSD 라이선스 계열의 다른 변형들에서도 공통적으로 발견되는 특징이다.
이러한 저작권 고지 유지 의무는 라이선스의 자유로운 성격을 유지하면서도 원저작자의 공로를 인정하고, 라이선스 조건 자체가 전파되도록 보장하는 역할을 한다. New BSD License는 이와 같은 간단한 조건 외에 GPL과 같은 카피레프트 라이선스가 요구하는 수정본의 소스 코드 공개 의무나 동일 라이선스 하의 재배포 의무를 부과하지 않는다.
따라서 New BSD License 하의 소프트웨어는 상용 소프트웨어에 통합되어 재배포되거나, 수정된 채로 다른 라이선스 하에 배포되는 것이 원칙적으로 가능하다. 단, 이러한 모든 경우에서 원본 소프트웨어에 대한 저작권 고지는 반드시 유지되어야 한다.
3.2. 면책 조항
3.2. 면책 조항
New BSD License의 면책 조항은 라이선스 사용자에게 중요한 법적 보호를 제공한다. 이 조항은 라이선스 허가자(저작권자)가 소프트웨어의 사용으로 인해 발생할 수 있는 어떠한 손해에 대해서도 책임을 지지 않음을 명시한다. 즉, 소프트웨어에 결함이 있거나, 기대한 대로 작동하지 않아 발생하는 직접적, 간접적, 부수적, 특별한, 징벌적 손해에 대해 라이선스 허가자는 법적 책임을 지지 않는다.
이러한 면책 규정은 BSD 라이선스 계열뿐만 아니라 MIT 라이선스와 같은 많은 퍼미시브 라이선스의 공통된 특징이다. 이는 소프트웨어를 "있는 그대로" 제공한다는 원칙을 반영하며, 사용자가 스스로의 책임 하에 소프트웨어를 평가하고 사용해야 함을 의미한다. 이는 GPL과 같은 카피레프트 라이선스에도 유사한 면책 조항이 포함되어 있어, 오픈 소스 라이선스의 일반적인 관행이다.
면책 조항의 존재는 소프트웨어 제공자의 법적 위험을 제한함으로써, 개인 개발자, 대학, 기업 등이 자신들의 소스 코드를 자유롭게 공개하는 데 장려하는 역할을 한다. 사용자에게는 소프트웨어를 사용하기 전에 충분히 테스트하고, 필요한 경우 자신의 책임으로 보완하거나 수정해야 할 의무가 있음을 상기시킨다. 따라서 New BSD License 하의 소프트웨어는 상업적이든 비상업적이든, 사용자는 그에 따른 모든 위험을 감수해야 한다.
3.3. 광고 조항 삭제
3.3. 광고 조항 삭제
New BSD License는 기존의 Original BSD License에서 논란의 여지가 있던 광고 조항을 삭제한 것이 가장 큰 특징이다. Original BSD License의 3번 조항, 즉 소프트웨어를 홍보할 때 저작권자의 이름과 기여를 언급해야 하는 의무 조항은 사용자와 재배포자에게 부담을 주었으며, 특히 GPL과의 호환성을 해치는 주요 원인이 되었다. 이 광고 조항은 자유 소프트웨어 재단이 BSD 라이선스를 자유 소프트웨어 라이선스로 인정하면서도 GPL과 호환되지 않는다고 판단하는 근거가 되었다.
이 문제를 해결하기 위해 등장한 New BSD License는 이 광고 조항을 완전히 삭제하여 라이선스 문장을 단순화했다. 이로 인해 라이선스 준수 부담이 크게 줄어들었고, GPL 라이선스가 적용된 코드와의 결합 및 재배포가 훨씬 자유로워졌다. 결과적으로 New BSD License는 MIT 허가서와 매우 유사한 형태의 간결하고 제약이 적은 퍼미시브 라이선스로 자리 잡게 되었다. 이 변경은 BSD 라이선스 계열이 오픈 소스 생태계에서 더 널리 채택되는 데 기여했다.
4. GPL과의 호환성
4. GPL과의 호환성
New BSD License는 자유 소프트웨어 재단이 인정한 자유 소프트웨어 라이선스이며, GNU 일반 공중 사용 허가서와의 호환성 문제에서 중요한 위치를 차지한다. 원조 BSD 라이선스에는 "광고 조항"이 포함되어 있어, 이 라이선스가 적용된 코드를 사용한 모든 제품의 홍보 자료에 저작권자의 이름을 언급해야 했다. 이 조항은 GPL의 조항과 충돌하여 두 라이선스가 서로 호환되지 않는 주요 원인이 되었다.
이 문제를 해결하기 위해 등장한 New BSD License는 바로 이 광고 조항을 삭제한 3항 라이선스이다. 이 변경으로 인해 New BSD License는 GPL 버전 2 및 버전 3과 호환되는 것으로 간주된다. 즉, New BSD License로 배포된 코드를 GPL 프로젝트에 통합하거나 그 반대의 경우가 법적으로 가능해졌다. 이는 개발자들이 라이선스 제약 없이 두 진영의 소프트웨어를 자유롭게 결합할 수 있게 함으로써 오픈 소스 생태계의 상호운용성을 크게 향상시켰다.
그러나 모든 BSD 라이선스 변형이 GPL과 호환되는 것은 아니다. 광고 조항이 남아 있는 Original BSD License는 여전히 GPL과 호환되지 않는다. 또한, 매우 간소화된 Simplified BSD License는 GPL과 호환되지만, New BSD License에 포함된 "저작권자나 기여자의 이름을 홍보에 사용하지 말 것”이라는 조항이 없어 차이점이 존재한다. 따라서 프로젝트에 코드를 통합할 때는 정확히 어떤 BSD 라이선스 변종이 적용되었는지 확인하는 것이 중요하다.
5. 사용 사례
5. 사용 사례
New BSD License는 소스 코드 공개 의무가 없는 허용적 라이선스로, 상업적 이용과 소스 코드 수정 및 재배포에 제약이 적어 다양한 프로젝트에서 널리 채택되었다. 특히 학술 연구 기관이나 기업이 개발한 소프트웨어를 자유롭게 배포하고자 할 때 선호되는 라이선스 중 하나이다.
이 라이선스는 FreeBSD와 NetBSD 같은 주요 BSD 운영 체제 계열 프로젝트의 핵심 구성 요소를 비롯해, Python 프로그래밍 언어의 표준 라이브러리 일부, Google이 개발한 Go 언어의 초기 버전, 그리고 X Window System의 여러 확장 구현체 등에서 사용되었다. 또한 Apache HTTP Server의 일부 모듈과 LLVM 컴파일러 인프라의 특정 구성 요소에서도 채택된 바 있다.
오픈 소스 생태계 내에서 New BSD License는 MIT 허가서와 함께 가장 제약이 적은 대표적인 허용적 라이선스로 꼽힌다. 이로 인해 해당 라이선스로 배포된 코드는 GPL과 같은 카피레프트 라이선스를 가진 프로젝트에 통합하는 데 제한이 있을 수 있지만, 사유 소프트웨어나 다른 허용적 라이선스 프로젝트에는 자유롭게 포함될 수 있다. 이 같은 유연성 덕분에 상업적 제품의 기반 기술이나 임베디드 시스템용 소프트웨어 구성 요소로도 활발히 활용되고 있다.
6. 라이선스 텍스트
6. 라이선스 텍스트
New BSD License의 라이선스 텍스트는 매우 간결하며, 일반적으로 소프트웨어의 소스 코드나 문서 파일 상단에 포함된다. 이 텍스트는 저작권 고지와 면책 조항을 명시하는 표준적인 형식을 따른다. 라이선스의 전체 내용은 다음과 같다.
Copyright (c) <연도>, <저작권자>
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. Neither the name of the copyright holder 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 THE COPYRIGHT HOLDER 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.
이 라이선스 텍스트는 사용자에게 소스 코드와 바이너리 형태의 재배포를 허용하되, 세 가지 조건을 충족하도록 요구한다. 첫째, 저작권 고지와 조건 목록, 면책 조항을 유지해야 한다. 둘째, 바이너리 형태로 재배포할 때도 동일한 정보를 문서 등에 포함시켜야 한다. 셋째, 저작권자나 기여자의 이름을 사전 허락 없이 홍보 목적으로 사용할 수 없다. 이 마지막 조항은 Original BSD License의 광고 조항이 제거된 후, 저작권자의 명예를 보호하기 위해 남아 있는 유일한 제한 사항이다.
텍스트의 하단 부분은 전형적인 면책 조항으로, 이 소프트웨어는 어떠한 보증 없이 "있는 그대로" 제공되며, 저작권자는 이 소프트웨어의 사용으로 인해 발생할 수 있는 모든 직접적, 간접적, 부수적, 특별한 손해에 대해 책임을 지지 않음을 명시한다. 이 라이선스는 MIT 허가서와 매우 유사한 구조를 가지며, 자유 소프트웨어 재단과 오픈 소스 이니셔티브에 의해 승인된 자유 소프트웨어 라이선스이자 오픈 소스 라이선스로 인정받는다.
