오픈 소스 라이선스에 대한 빠른 가이드
게시 됨: 2020-05-07공유하고 싶은 소프트웨어를 만들거나 개조하고 싶은 제품을 사용하면 합법과 합법에 대한 질문이 팝업됩니다. 오픈 소스 라이선스가 있는 프로그램도 모두에게 무료는 아닙니다. 라이센스가 허용하는 사항에 대한 세부 사항을 모르는 경우 합법적인 온수에 들어갈 수 있습니다. 한계를 알면 자신 있게 소프트웨어를 사용하고 공유할 수 있습니다.
오픈 소스 라이선스란 무엇입니까?
오픈 소스 라이선스는 오픈 소스 정의를 따릅니다. 즉, 소프트웨어 또는 제품(해당 청사진, 디자인 및/또는 소스 코드)은 사용자가 원하는 대로 사용, 수정 및/또는 공유할 수 있습니다. 평신도의 관점에서 사용자는 자신의 필요에 맞게 제품을 사용자 정의한 다음 해당 제품을 다른 사람과 공유할 수 있습니다.
그러나 공유 방법에 대한 조건은 다양합니다. 오픈 소스 라이선스는 무제한이 아닙니다. 규정에는 저자의 이름을 유지하고 동일한 라이선스로 파생 상품을 재배포하는 것이 포함됩니다. 또한 라이선스 가 비상업적 목적으로만 제품의 수정 또는 재배포를 허용하는 경우 오픈 소스가 아닙니다.
오픈 소스 라이선스는 소프트웨어 작성자와 사용자 간의 법적 구속력이 있는 계약입니다. 공개적으로 게시되고 무료로 제공되는 소프트웨어는 자동으로 오픈 소스가 아닙니다. 라이센스는 공식적으로 오픈 소스가 됩니다. 많은 오픈 소스 소프트웨어가 무료이지만, 그렇다고 해서 무료가 오픈 소스 소프트웨어의 요구 사항이나 보장은 아닙니다.
오픈 소스 라이선스의 두 가지 주요 유형: Copyleft와 Permissive
Copyleft와 Permissive는 오픈 소스 라이선스의 두 가지 기본 범주입니다. 실제 오픈 소스 라이선스의 이름은 아니지만 특정 라이선스가 속하는 범주입니다.
카피레프트 오픈 소스 라이선스
카피레프트는 사용자가 자신의 제품 버전에 동일한 라이선스를 적용해야 하는 일종의 오픈 소스 라이선스입니다. 즉, 사용자가 소프트웨어를 수정하고 공유하는 경우 오픈 소스 라이선스를 유지해야 합니다.
허용되는 오픈 소스 라이선스
허용되는 오픈 소스 라이선스는 유연합니다. 카피레프트 라이선스가 아니므로 사용자는 자신의 제품 버전을 오픈 소스로 유지할 필요가 없습니다. 일반적으로 제한 사항이 거의 없습니다. 사용자는 많은 의무를 이행하지 않고도 독점적인 파생물을 만들 수 있습니다.
오픈 소스 라이선스의 가장 일반적인 유형
저자와 회사가 선택할 수 있는 다양한 종류의 오픈 소스 라이선스가 있습니다. 가장 인기있는 것을 살펴 보겠습니다.
아파치 라이선스
Apache 라이선스는 Apache Software Foundation의 오픈 소스 라이선스입니다. 라이선스에 따라 Apache 라이선스 제품을 사용, 수정 또는 배포할 수 있습니다.
Apache 라이선스에는 두 가지 주요 변경 사항이 있습니다. 2000년에 원래 광고 조항이 제거되었습니다. 이제 파생 작업을 위해 만든 광고 자료가 있는 경우 Apache 라이선스에 대한 저작자를 포함할 필요가 없습니다. 그러나 저작자는 문서에 남아 있어야 합니다. 2004년에는 라이선스에 대한 또 다른 업데이트가 특허권을 허용했습니다.
버클리 소프트웨어 배포(BSD)
BSD 라이선스에는 두 가지 유형이 있습니다.
- 수정된 BSD 라이선스(3절)
- FreeBSD 라이선스라고도 하는 단순화된 BSD 라이선스(2절)
각 BSD 라이선스는 소프트웨어 코드, 소스 또는 바이너리를 수정하고 배포할 수 있는 권한을 부여합니다. 그러나 조건, 저작권 고지 및 면책 조항의 사본을 보관해야 합니다.
원래 BSD 라이선스에는 광고 및 비보증 조항을 포함하여 4개의 조항이 있었습니다. 수정된 3개 조항 라이선스에는 광고 조항이 포함되어 있지 않습니다. 간소화된/무료 2개 조항 라이선스에는 비승인 조항이 없습니다.
공동 개발 및 배포 라이선스(CDDL)
CDDL은 Sun Microsystems(Oracle이 인수)에서 만든 오픈 소스 라이선스입니다. 현재 CDDL은 버전 2이며 Mozilla Public License의 스핀입니다. 또한 2004년까지 무료 및 오픈 소스 Sun 제품과 함께 제공된 Sun Public License를 대체했습니다.
CDDL에 따라 라이선스가 부여된 소프트웨어의 원본 또는 파생물을 복제 및 배포할 수 있습니다. 그러나 저작권, 특허 또는 상표에 대한 통지를 변경하거나 제거할 수 없습니다. 또한 사용자는 기여자 또는 개발자에 대한 귀속이 포함된 통지 또는 텍스트를 유지해야 합니다.
소프트웨어를 실행 가능한 형태, 즉 소스 코드가 아닌 형태로 배포하는 경우 소스 코드를 사용할 수 있도록 만들어야 합니다. CDDL 또는 CDDL 호환 라이센스에 따라 실행 가능한 형식을 릴리스할 수 있습니다. 다음 지침 중 하나 또는 둘 다를 충족하는 경우 기여에 대한 소스 코드를 공개해야 합니다.
- 원래 소프트웨어에 대한 추가, 수정 또는 삭제입니다.
- 원본 제품의 일부를 포함하는 새 파일입니다.
소스 코드를 릴리스할 때 CDDL 사본을 포함해야 합니다. 또한 모든 수정 사항에 대해 수정된 파일에 자신이 수정자라는 알림을 포함해야 합니다. 원본 코드가 없는 별도의 독립 파일에 추가한 경우 CDDL로 릴리스할 필요가 없습니다.
이클립스 공중 라이선스(EPL)
Eclipse Public License는 Eclipse Foundation의 카피레프트 오픈 소스 라이센스입니다. EPL의 목표는 회사에서 해당 구성 요소를 상용 제품에 사용하는 경우 작성자가 법적 문제에 빠지지 않도록 보호하는 것입니다. 라이센스는 또한 특허 부여를 제공합니다.
EPL 구성 요소를 수정하여 소스 코드로 배포하는 경우 수정된 코드를 공개해야 합니다. 제품을 개체 코드 형식으로 배포하는 경우 요청 시 소스 코드를 제공할 것임을 명확히 해야 합니다. 또한 소스 코드를 요청하는 방법을 명확히 해야 합니다. EPL 라이선스 제품의 일부가 포함된 프로그램을 재배포하는 경우 전체 저작권 및 라이선스 텍스트를 포함해야 합니다.

EPL은 또한 플러그인과의 인터페이스 또는 상호 운용이 플러그인을 자동으로 파생 작업으로 만들지 않는다고 말합니다. 간단히 말해서 플러그인의 일부를 실제로 수정하지 않는 한 파생 작업이 아닙니다.
GNU 일반 공중 사용 허가서(GPL)
GPL은 가장 널리 사용되는 오픈 소스 라이선스입니다(WordPress 플러그인 및 테마에는 이 라이선스가 있어야 함). 그것은 카피레프트 라이선스이므로 GPL 구성 요소를 사용하는 모든 소프트웨어는 코드의 아주 작은 비율이 수정된 코드에 있더라도 오픈 소스여야 합니다.
소프트웨어는 개인용이든 상업적 사용이든 거의 제한 없이 어디에서나 사용하고 수정할 수 있습니다. 그러나 자신의 조직 외부에 배포하는 경우 제한이 있습니다. 이 경우 원본 소프트웨어와 동일한 라이선스 조건과 함께 전체 소스 코드를 배포해야 합니다.
새 제품에 GPL 소프트웨어의 일부만 포함되어 있으면 전체 소스 코드를 배포해야 합니까? 아마도. GPL에 따르면 모든 파생 저작물은 완전한 라이선스 조건에 따라 라이선스를 받아야 합니다. 그러나 독점 시스템과 함께 GPL 소프트웨어를 배포하고 두 개의 별도 작업(데이터 구조를 공유하지 않고 별도의 프로세스에서 실행됨을 의미)인 경우 모든 소프트웨어의 소스 코드를 릴리스할 필요가 없습니다. .
GNU 약소 일반 공중 사용 허가서(LGPL)
GPL의 약한 버전인 LGPL에서는 라이선스가 부여된 제품을 독점 응용 프로그램에 연결할 수 있습니다. 프로그램이 동적으로 연결되어 있는지 아니면 정적으로 연결되어 있는지에 따라 소유권 코드는 여전히 소유권을 유지할 수 있습니다. 이 라이선스는 종종 자유 소프트웨어와 함께 제공되어 자유 소프트웨어나 독점 소프트웨어에 통합될 수 있습니다. 자신의 확장에 대한 소스 코드를 열 필요가 없습니다.
마이크로소프트 공중 라이선스(Ms-PL)
Ms-PL은 Microsoft의 무료 오픈 소스 소프트웨어 라이선스이며 Microsoft의 자체 오픈 소스 프로젝트와 함께 제공됩니다.
사용자는 소프트웨어의 원본 또는 파생물을 만들고 배포할 수 있지만 기여자의 이름, 로고 또는 상표를 사용할 수 없습니다. Ms-PL은 원래 귀속, 저작권, 특허 및 상표 고지를 유지해야 합니다. 또한 코드가 파생 작업에서 작동하지 않는 경우 작성자는 책임을 지지 않습니다. 코드 성능에 대한 보장이나 보증이 없습니다.
Ms-PL에 따라 제품을 배포할 때 소스 코드를 배포할 의무는 없지만 원할 경우 배포할 수 있습니다. 소스 코드 또는 소스 코드의 일부를 배포하기로 선택한 경우 Ms-PL 라이선스의 전체 사본을 포함해야 합니다.
여기에서 더 까다로워집니다. 소프트웨어의 일부를 컴파일된 또는 개체 코드 형식으로 배포하는 경우 선택한 라이선스는 Ms-PL을 준수해야 합니다.
소스 코드 대 개체 코드
프로그래머는 소스 코드를 작성합니다. 사람이 읽을 수 있는 언어로 작성된 텍스트 기반 문서(또는 파일)이며, 파일은 프로그래밍 언어로 되어 있습니다. 그러나 기계는 실제로 작성된 소스 코드를 읽을 수 없습니다.
기계가 읽을 수 있게 하려면 기계가 소스 코드 언어를 기계 실행 코드, 즉 목적 코드로 컴파일해야 합니다. 목적 코드는 이진수로 작성되며 이진 코드를 생성하는 과정은 "컴파일"입니다. 소스 코드는 시스템에 따라 다르지만 개체 코드는 시스템에 따라 다릅니다. 소스 코드는 다른 시스템에서 동일할 수 있지만 각 시스템은 이를 다른 목적 코드로 컴파일할 수 있습니다.
Ms-PL을 사용하여 개체 코드에 라이선스를 부여할 때 알아야 할 사항이 있습니다. 자신의 조건을 설정할 수 있지만 수신자에게 Ms-PL 라이선스보다 더 많은 권한을 부여할 수는 없습니다. 그러나 더 적은 수의 권한을 부여할 수 있습니다.
매사추세츠 공과대학(MIT) 라이선스
MIT 라이선스는 가장 유연한 오픈 소스 라이선스 중 하나이며 복사, 배포, 병합, 수정 등 오픈 소스 라이선스에서 기대할 수 있는 모든 최종 사용자 권한을 부여합니다. 특히 광고 조항을 포함하지 않습니다. 또한 판촉 콘텐츠에 저작권 소유자의 이름을 허용합니다.
이 라이선스에 따라 제품으로 마음이 원하는 것은 무엇이든 할 수 있습니다. 그러나 저작권 연도 및 소유자 정보는 파생 상품의 라이선스에 있어야 합니다.
모질라 공중 라이선스 2.0
Mozilla Public License 2.0은 카피레프트 라이선스입니다. 기고자는 코드 수정 사항을 공유할 수 있습니다. 또한 다른 공개 또는 독점 라이선스에 따라 코드를 코드와 결합할 수 있습니다.
어떤 목적으로든 MPL 소프트웨어를 사용하고 조직 내에서 배포하려는 경우 특별한 작업을 수행할 필요가 없습니다. MPL 소스 코드를 수정하고 파생 작업을 조직 외부에 배포하려면 다음을 수행해야 합니다.
- MPL에 따라 소스 코드(수정용 소스 코드 포함)를 사용할 수 있음을 수신자에게 알립니다.
- 받는 사람에게 MPL 보조금을 지급합니다. 이는 받는 사람이 사용, 수정, 표시, 복제, 배포 등을 할 수 있는 비독점적이고 로열티 없는 라이선스를 보유하고 있음을 의미합니다.
- 소스 코드에서 알림을 제거하거나 변경하는 데 대한 제한 사항을 준수합니다. 저작권, 특허, 보증 또는 책임에 대한 라이선스 고지를 제거하거나 변경할 수 없습니다.
오픈 소스 라이선스에 대한 최종 생각
제품 또는 소프트웨어에 대한 오픈 소스 라이선스를 선택하는 것은 원하는 만큼 간단하지 않습니다. 누가 당신의 제품으로 무엇을 하는지 상관하지 않는다면 MIT 라이선스와 같은 매우 유연한 라이선스 중 하나를 사용할 수 있습니다. 그렇지 않으면 경험이 풍부한 개발자이든 변호사이든 전문가와 상담하여 현재 가지고 있는 것과 원하는 것이 무엇인지, 어떤 라이선스가 가장 적합한지 논의하고 싶을 것입니다. 그러나 기본 사항, 특히 다루어야 하는 용어와 공통 라이선스를 미리 알고 있으면 제대로 시작하는 데 도움이 될 것입니다.
웹 전문가를 위한 최고의 오픈 소스 소프트웨어 앱 13가지를 살펴보세요.
