[License] 오픈소스 라이센스 정리

오픈 소스 라이센스

오픈 소스 소프트웨어 라이센스는 코드를 공개하고 다른 이들이 자유롭게 사용, 수정, 및 배포할 수 있도록 하는 규정이다. 이는 소프트웨어의 자유로운 공유와 협업을 촉진하여 오픈 소스 소프트웨어 커뮤니티를 활성화하는 데에 도움을 준다. 다양한 오픈 소스 라이센스가 존재하는데, 이 포스트에서는 가장 대표적인 4가지 라이센스에 대해서만 알아본다.

오픈 소스 라이센스 종류

MIT 라이센스

MIT 라이센스는 매우 자유로운 조건을 제공하는 라이센스로, 라이센스와 원작자의 저작권을 고지하기만 하면 자유롭게 수정 또는 배포하거나 상업적으로 이용할 수 있다. 또한, MIT 라이센스는 소프트웨어를 보증하지 않고, 소프트웨어에 의한 문제에 대해서 법적 책임을 지지 않는다. 이 라이센스는 간단하고 이해하기 쉽기 때문에 많은 프로젝트에서 선택하는 인기 있는 라이센스이다.

GNU General Public License(GPL)

GPL은 자유롭게 수정 또는 배포할 수 있고, 상업적으로도 이용할 수 있다는 점에서는 MIT 라이센스와 유사하다. 하지만 이 라이센스는 대표적인 카피레프트 라이센스로, 원본 또는 수정된 코드를 반드시 공개해야 하고, 버전에 따라서는 파생 저작물 또는 GPL로 배포된 소프트웨어를 사용하는 소프트웨어도 공개해야 한다. GPL 라이센서를 변형한 LGPL, AGPL 등의 라이센스도 존재한다.

Apache 라이센스

Apache 라이센스는 자유로운 수정, 배포와 상업적 이용을 허용하는 비교적 자유로운 라이센스이다. 제약사항은 파생 저작물에 반드시 Apache 라이센스를 포함해야 하는 것이다.

BSD 라이센스

BSD 라이센스는 MIT 라이센스와 유사하지만 BSD 소프트웨어를 개발한 저작자의 이름을 사용하여 광고하는 것을 금지하는 점이 다르다.

요약

위의 내용을 정리하면 다음과 같다.

라이센스 상업적 사용 수정 배포 특허 부여 Copyleft
MIT License Yes Yes Yes No No
GNU GPL (v3) Yes Yes Yes Yes Strong Copyleft
Apache License 2.0 Yes Yes Yes Yes No
BSD 3-Clause Yes Yes Yes No No

라이센스 선택 고려 사항

오픈소스를 개발하거나 사용할 때는 아래의 내용을 고려하여 라이센스를 선택하는 것이 바람직하다.

  • 상업적 이용 여부: 선택한 라이센스가 상업적 이용을 허용하는지 확인
  • 파생 프로젝트 공개 의무: 코드를 수정하거나 파생 프로젝트를 만들 경우, 해당 코드를 공개해야 하는지 여부
  • 특허 규정: 라이센스에 특허 규정이 있는지

댓글남기기