BSD 3-Clause License
1. 개요
1. 개요
BSD 3-Clause License는 캘리포니아 대학교 버클리에서 개발된 BSD 라이선스 계열의 하나로, 퍼미시브 오픈 소스 소프트웨어 라이선스에 속한다. 이 라이선스는 소프트웨어의 사용, 복제, 수정, 배포에 있어 매우 제한이 적고 자유로운 조건을 제공하는 것이 특징이다.
주요 목적은 소프트웨어의 광범위한 배포와 재사용을 촉진하는 데 있으며, 오픈 소스 소프트웨어와 상용 소프트웨어 모두에 자유롭게 적용될 수 있다. GPL과 같은 카피레프트 라이선스와 달리, 이 라이선스로 배포된 코드를 수정하여 독점 소프트웨어에 포함시키거나 재배포하는 것도 허용된다.
라이선스의 핵심은 세 가지 주요 조항으로 구성되어 있으며, 이는 재배포 시 반드시 준수해야 할 조건을 명시한다. 이 라이선스는 소프트웨어 라이선스 중에서도 특히 간결하고 이해하기 쉬운 문구로 유명하며, MIT 라이선스와 함께 가장 인기 있는 퍼미시브 라이선스 중 하나로 꼽힌다.
2. 조항
2. 조항
2.1. 재배포 조건
2.1. 재배포 조건
BSD 3-Clause License에 따라 소프트웨어를 재배포할 때는 반드시 세 가지 조건을 충족해야 한다. 첫째, 소스 코드 형태로 재배포하는 경우, 원본 소스 코드에 포함된 저작권 고지, 이 라이선스 조건 목록, 그리고 보증 부인 고지를 그대로 유지해야 한다. 둘째, 바이너리 형태(컴파일된 형태)로 재배포하는 경우, 배포물과 함께 제공되는 문서나 기타 자료에 동일한 저작권 고지, 라이선스 조건, 보증 부인 고지를 포함시켜야 한다. 셋째, 사전 서면 허가 없이 라이선스 허가자나 기여자의 이름을 홍보 목적으로 사용해서는 안 된다.
이 재배포 조건은 라이선스의 퍼미시브(Permissive)한 성격을 잘 보여준다. 사용자는 소스 코드를 수정하거나 상용 소프트웨어에 포함시켜 재배포하는 것이 자유롭지만, 원작자의 저작권을 인정하고 법적 책임을 회피하기 위한 보증 부인 문구를 전파해야 할 의무가 있다. 특히 세 번째 조건은 BSD 라이선스의 초기 버전에서 발생했던 홍보 조항 문제를 해결한 것으로, 이제는 라이선스 허가자를 사전 동의 없이 홍보에 이용할 수 없다. 이러한 조건들은 아파치 라이선스나 MIT 라이선스와 같은 다른 퍼미시브 라이선스들과 유사한 재배포 의무를 규정하고 있다.
2.2. 저작권 고지 유지
2.2. 저작권 고지 유지
BSD 3-Clause License의 핵심 조항 중 하나는 소프트웨어의 저작권 고지와 라이선스 문구를 재배포 시 반드시 유지해야 한다는 것이다. 이는 소스 코드 형태로 배포하든, 바이너리 형태로 배포하든 관계없이 적용된다. 소프트웨어를 사용하거나 수정한 결과물을 배포할 때는 원본 소프트웨어에 포함된 모든 저작권 고지, 조건 목록, 면책 조항을 그대로 복제해야 한다.
이 조항은 라이선스의 기본적인 의무 사항으로, 소프트웨어의 출처와 원저작자의 권리를 명시적으로 인정하도록 한다. 재배포되는 모든 사본에는 원본 저작권 고지와 라이선스 조항이 포함되어야 하며, 일반적으로 소스 코드 파일 상단이나 문서, 기타 적절한 장소에 명시된다. 이는 매우 간단하고 명확한 요구사항으로, 라이선스 준수의 가장 기본적인 부분을 구성한다.
이러한 저작권 고지 유지 의무는 퍼미시브 라이선스의 전형적인 특징이다. GPL과 같은 카피레프트 라이선스도 유사한 요구사항을 포함하고 있지만, BSD 라이선스는 이외에 소프트웨어의 재사용과 수정에 대해 매우 제한이 적다. 이 조항을 준수하는 한, 수정본을 사유 소프트웨어에 통합하여 재배포하는 것도 허용된다.
2.3. 보증 부인
2.3. 보증 부인
보증 부인 조항은 BSD 3-Clause License의 세 번째이자 마지막 핵심 조항이다. 이 조항은 라이선스 허가자, 즉 원저작권자나 기여자가 해당 소프트웨어에 대해 어떠한 형태의 보증도 제공하지 않음을 명시적으로 선언한다. 이는 소프트웨어가 "있는 그대로(as is)" 제공되며, 상품성이나 특정 목적에의 적합성에 대한 묵시적 보증을 포함한 모든 보증이 부인됨을 의미한다.
이러한 보증 부인은 소프트웨어의 결함이나 문제로 인해 발생할 수 있는 법적 책임으로부터 라이선스 허가자를 보호하는 역할을 한다. 사용자는 소프트웨어를 사용함으로써 발생하는 모든 위험을 스스로 감수해야 하며, 소프트웨어에 문제가 있더라도 원저작권자나 기여자에게 손해배상을 청구할 수 없다. 이는 퍼미시브 라이선스의 일반적인 특징으로, MIT 라이선스나 아파치 라이선스 2.0에도 유사한 조항이 포함되어 있다.
보증 부인 조항은 소프트웨어의 자유로운 사용과 재배포를 허용하는 대가로, 라이선스 허가자에게 법적 안전장치를 제공한다. 이는 특히 오픈 소스 프로젝트에서 많은 기여자가 참여하는 환경에서 개별 기여자들이 예측하지 못한 법적 분쟁에 휘말리는 것을 방지하는 데 중요하다. 따라서 사용자는 소프트웨어를 신뢰하고 사용하기 전에 충분한 테스트와 평가를 직접 수행할 책임이 있다.
이 조항은 GNU 일반 공중 사용 허가서(GPL)와 같은 카피레프트 라이선스에도 포함되어 있지만, BSD 라이선스의 보증 부인은 특히 명시적이고 직접적인 표현을 사용한다는 점에서 특징적이다. 이는 소프트웨어의 법적 상태를 명확히 하고, 상업적 통합을 포함한 광범위한 재사용을 장려하는 BSD 라이선스의 퍼미시브한 성격을 뒷받침하는 기반이 된다.
3. GPL과의 비교
3. GPL과의 비교
BSD 3-Clause License와 GPL은 모두 널리 사용되는 오픈 소스 라이선스이지만, 그 철학과 요구 사항에서 근본적인 차이를 보인다. 가장 큰 차이는 라이선스의 성격에 있다. BSD 라이선스는 퍼미시브 라이선스로 분류되며, 사용자에게 매우 넓은 자유를 부여한다. 반면 GPL은 카피레프트 라이선스로, 소프트웨어의 자유를 보호하고 확장하기 위한 제약 조건을 포함한다.
이 차이는 소스 코드 공개의무에서 명확하게 드러난다. BSD 3-Clause License 하에 배포된 소프트웨어를 수정하거나 재배포할 때, 수정된 소스 코드를 공개할 의무가 없다. 사용자는 이를 사유 소프트웨어에 통합하여 소스 코드를 공개하지 않고 판매할 수도 있다. 그러나 GPL은 강력한 카피레프트 조항을 통해, GPL 코드를 사용하거나 수정한 모든 파생물도 동일한 GPL 조건으로 소스 코드를 공개해야 한다고 규정한다. 이는 소프트웨어의 자유가 파생 작품에서도 유지되도록 보장하는 것이다.
따라서 라이선스 선택은 프로젝트의 목표와 생태계에 큰 영향을 미친다. BSD 라이선스는 상용 소프트웨어 개발자나 제한 없이 코드를 자유롭게 활용하고 싶은 기업들에게 선호되는 경향이 있다. 대표적으로 FreeBSD 운영 체제 커널이 BSD 라이선스를 사용한다. 반면, 리눅스 커널과 같은 GPL 프로젝트는 소프트웨어의 자유로운 공유와 협업을 최우선 가치로 삼는 커뮤니티에 적합하다. 결국, BSD 라이선스는 '최대한의 사용 자유'를, GPL은 '자유의 지속적 보장'을 각각 추구한다고 볼 수 있다.
4. 사용 사례
4. 사용 사례
BSD 3-Clause License는 매우 허용적인 조건 덕분에 다양한 소프트웨어 프로젝트에서 널리 채택되고 있다. 이 라이선스는 소스 코드의 자유로운 사용, 수정, 배포를 허용하면서도 최소한의 제약만을 부과하기 때문에, 상용 소프트웨어에 포함시키기에도 매우 적합하다. 이러한 특징으로 인해 오픈 소스 커뮤니티뿐만 아니라 대기업의 상업적 제품에서도 활발히 사용된다.
주요 사용 사례로는 구글의 안드로이드 운영 체제의 일부 구성 요소, 마이크로소프트의 윈도우 및 .NET 프레임워크 관련 도구, 그리고 애플의 macOS 및 iOS의 핵심 시스템 요소인 다윈 운영 체제가 있다. 또한, 클라우드 컴퓨팅 플랫폼과 컨테이너 오케스트레이션 도구의 기반이 되는 많은 시스템 소프트웨어들도 이 라이선스를 따른다.
웹 개발 분야에서는 Node.js의 생태계를 구성하는 수많은 자바스크립트 라이브러리와 npm 패키지가 BSD 3-Clause License를 사용한다. 이는 라이선스의 제약이 적어 다른 라이선스의 프로젝트와 결합하거나 상용 서비스에 통합하기 용이하기 때문이다. 데이터베이스, 네트워크 프로토콜 스택, 컴파일러, 게임 엔진 등 다양한 분야의 기초적인 시스템 소프트웨어에서도 이 라이선스의 모습을 찾아볼 수 있다.
요약하면, BSD 3-Clause License는 라이선스 계약의 복잡성을 최소화하면서 최대한의 활용 자유를 보장하는 철학을 반영하여, 소프트웨어 산업 전반에 걸쳐 기초 기술과 혁신의 토대를 제공하는 데 크게 기여하고 있다.
5. 변형 라이선스
5. 변형 라이선스
5.1. BSD 2-Clause License
5.1. BSD 2-Clause License
BSD 2-Clause License는 BSD 라이선스 계열 중 가장 간결한 형태로, "Simplified BSD License" 또는 "FreeBSD License"라고도 불린다. 이 라이선스는 원래의 BSD 3-Clause License에서 비보증 조항을 제외한 두 가지 핵심 조항만을 포함한다.
주요 조항은 다음과 같다. 첫째, 소스 코드 형태로 재배포할 때는 저작권 고지사항과 이 허가 조항 목록을 복제해야 한다. 둘째, 2진 형태(컴파일된 형태)로 재배포할 때는 문서 및 기타 자료에 동일한 저작권 고지사항과 허가 조항 목록을 제공해야 한다. 이 두 가지 의무 사항 외에는 사용, 수정, 배포에 거의 제한이 없으며, 상용화나 사유 소프트웨어에의 통합도 자유롭게 허용된다.
이러한 극도의 간결함과 허용적 성격 때문에 GNU 일반 공중 사용 허가서(GPL) 등 카피레프트 라이선스와의 호환성이 매우 높으며, FreeBSD 및 NetBSD와 같은 주요 오픈 소스 프로젝트를 비롯해, Apache HTTP Server, Python의 일부 모듈 등 많은 소프트웨어에서 채택되고 있다. MIT 허가서와 함께 가장 제약이 적은 대표적인 퍼미시브 라이선스로 평가받는다.
5.2. BSD 4-Clause License
5.2. BSD 4-Clause License
BSD 4-Clause License는 BSD 라이선스의 초기 형태로, "Original BSD License" 또는 "BSD Advertising Clause License"로도 불린다. 이 라이선스는 BSD 3-Clause License에 비해 한 가지 추가 조항, 즉 광고 조항(advertising clause)을 포함하고 있다는 점이 특징이다.
이 추가 조항은 라이선스가 적용된 소프트웨어를 사용하거나 재배포하는 모든 자료에서, 해당 소프트웨어가 캘리포니아 대학교 버클리와 그 기여자들에 의해 개발되었다는 사실을 광고나 홍보 문구에 명시하도록 요구했다. 이는 저작권 고지와 별도로 의무화된 사항이었다. 이 조항은 소프트웨어의 상용화와 재배포 과정에서 실질적인 제약으로 작용했으며, 특히 GPL과 같은 다른 주요 오픈 소스 라이선스와의 호환성 문제를 야기했다.
이러한 문제점으로 인해, 오픈 소스 이니셔티브와 같은 커뮤니티는 이 라이선스를 순수한 오픈 소스 라이선스로 인정하지 않게 되었다. 결국 캘리포니아 대학교는 1999년 이 광고 조항을 삭제한 수정 라이선스를 공표했으며, 이는 오늘날 널리 사용되는 BSD 3-Clause License의 기반이 되었다. 따라서 BSD 4-Clause License는 현재는 역사적인 라이선스로 간주되며, 새로운 프로젝트에서는 거의 사용되지 않는다.
