Post

소프트웨어 라이선스 정리

소프트웨어 라이선스 정리

소프트웨어 라이선스 정의

소프트웨어 라이선스는 소프트웨어의 사용, 수정, 배포 등에 대한 규정을 담은 계약서입니다.
이에 따라 소프트웨어를 사용하거나 배포하는 경우, 해당 라이선스에 따라 제한이 있을 수 있습니다.
다음은 주요 소프트웨어 라이선스의 종류와 특징입니다.


1. GPL (GNU General Public License)

  • 자유 소프트웨어 재단에서 개발
  • 누구나 자유롭게 사용, 복제, 수정, 배포 가능
  • 수정된 소스 코드를 공개해야 하며, GPL 라이선스로 배포해야 함 (Copyleft)
  • 무료 사용 가능하지만, 상용 제품에 사용 시 소스 코드 공개 필요

2. Apache License

  • Apache Software Foundation에서 개발
  • 상용 및 비영리적 용도 모두 사용 가능
  • 소스 코드 수정 및 재배포 가능, 독자적 소프트웨어 개발/판매 가능
  • 배포 시 반드시 Apache License 포함 필요

3. MIT License

  • 매사추세츠 공과대학교에서 개발
  • 오픈 소스 라이선스 중 가장 자유로움
  • 누구나 사용, 복제, 수정, 배포 가능
  • 소스 코드 공개 여부에 제한 없음

4. BSD License

  • UC 버클리에서 개발
  • 상업적 용도를 포함한 모든 용도로 사용 가능
  • 수정 및 재배포 가능, 소스 코드 공개 여부는 선택적

5. LGPL (GNU Lesser General Public License)

  • GPL과 유사하지만 라이브러리 사용 시 상용 소프트웨어에도 적용 가능
  • LGPL 라이브러리 자체 수정 시에는 소스 코드 공개 필요
  • LGPL 라이브러리를 사용하는 소프트웨어는 소스 공개 필요 없음
  • 독자적인 소프트웨어 개발/배포 가능

6. MPL (Mozilla Public License)

  • 모질라 재단에서 개발
  • 상용 및 비상용 소프트웨어 모두 사용 가능
  • 수정 및 재배포 시 수정된 소스 코드 공개 필수
  • 상용 제품 사용 가능, 배포 시 MPL 포함 필요

7. CDDL (Common Development and Distribution License)

  • 선 마이크로시스템즈에서 개발
  • 오픈 소스 라이선스 중 상용 제품 사용 가능
  • 수정 및 재배포 가능, 소스 코드 공개 여부 선택적
  • 배포 시 CDDL 포함 필요

📝 소프트웨어 라이선스 Cheat Sheet

라이선스개발자/단체상용 사용수정 가능재배포 가능소스 공개 의무비고
GPL자유 소프트웨어 재단✅ 가능 (단, 소스 공개 필요)✅ 가능✅ 가능⚠️ 반드시 공개 (Copyleft)수정 후 배포 시 동일 라이선스 적용 필요
Apache LicenseApache Software Foundation✅ 가능✅ 가능✅ 가능⚠️ Apache License 포함 배포 필요상업적 소프트웨어 개발 가능
MIT License매사추세츠 공과대학교✅ 가능✅ 가능✅ 가능❌ 제한 없음가장 자유로운 오픈 소스 라이선스
BSD LicenseUC 버클리✅ 가능✅ 가능✅ 가능⚪ 선택적상업적 용도 자유
LGPL자유 소프트웨어 재단✅ 가능 (라이브러리 사용 시)✅ 가능✅ 가능⚠️ 라이브러리 수정 시 공개상용 소프트웨어에서 LGPL 라이브러리 사용 가능, 독립 소프트웨어 개발 가능
MPL모질라 재단✅ 가능✅ 가능✅ 가능⚠️ 수정된 소스 공개 필수상용 제품에도 사용 가능, 배포 시 MPL 포함
CDDL선 마이크로시스템즈✅ 가능✅ 가능✅ 가능⚪ 선택적배포 시 CDDL 포함 필요

🔹 아이콘 의미

  • ✅ : 가능
  • ⚠️ : 반드시 준수해야 함
  • ⚪ : 선택적
  • ❌ : 제한 없음

💡 Tip:

  • Copyleft : 수정 및 배포 시 원본 라이선스와 동일하게 배포해야 하는 의무
  • MIT, BSD 등은 매우 자유로움 → 상용 소프트웨어에 쉽게 사용 가능
  • GPL, LGPL, MPL 등은 소스 공개 의무를 확인해야 함
This post is licensed under CC BY 4.0 by the author.