Включите исполнение JavaScript в браузере, чтобы запустить приложение.
17 фев 2025

Разбираемся с лицензиями BSD и MIT

BSD и MIT — лицензии для open source ПО разрешающего типа. Они подходят для создания как бесплатных, так и коммерческих продуктов на основе открытого кода. Выбрать между BSD и MIT поможет наше сравнение.

Программным обеспечением open source можно пользоваться бесплатно, а открытый исходный код — просматривать и дорабатывать под свои задачи. Однако есть ограничения. Они зависят от лицензии, под которой распространяется ПО.

Организация Open Source Initiative (OSI), которая занимается учетом и продвижением открытого программного обеспечения, признает более 80 лицензий, подходящих под определение open source. По другим подсчетам, в мировом IT-сообществе сейчас доступно около 2 000 вариантов открытых лицензионных соглашений. Все варианты соглашений делятся на две категории:

  • копилефтные (авторское лево);
  • разрешающие.

Копилефт требует, чтобы ПО, созданное на базе продукта open source, тоже оставалось свободным и открытым, то есть распространялось на тех же условиях, что и исходник. Другими словами, авторское лево направлено на предотвращение коммерциализации кода в новых проектах.

Разрешающие соглашения дают больше свободы в создании и использовании ПО на основе открытого исходника. В числе наиболее популярных соглашений разрешающего типа — BSD и MIT. Рассказываем, чем они отличаются.

Что такое лицензия BSD

Это семейство разрешительных лицензионных соглашений, которые предоставляют пользователям большую свободу в использовании и доработке ПО.

Программные продукты относятся к категории open source software (OSS). Они доступны бесплатно, их можно модифицировать и распространять в любых целях, в том числе коммерческих. При этом нужно соблюдать требования:

  • добавлять в софт копию лицензионного соглашения;
  • включать в любое распространение отказ от ответственности.

Аббревиатура расшифровывается как Berkeley Software Distribution License. Лицензия изначально создавалась для разработок Калифорнийского университета Беркли, но сейчас под этим соглашением распространяется множество программных продуктов. Среди них:

  • UNIX-подобные операционные системы;
  • языки программирования;
  • системы управления базами данных;
  • библиотеки и фреймворки;
  • веб-серверы.

Разработчики используют Berkeley Software Distribution License как в бесплатных, так и в проприетарных проектах, когда нужно сделать ПО доступным для широкой аудитории и при этом сохранить права на программный продукт.

Структура лицензионного соглашения BSD

Текст содержит несколько пунктов:

  • уведомление об авторском праве;
  • описание прав и обязанностей пользователей программного продукта;
  • отсутствие обязанностей и гарантий со стороны поставщика ПО.

Количество и состав пунктов зависят от вида лицензии, которые мы подробнее рассмотрим ниже. 

В некоторые варианты лицензионных соглашений, кроме указанных условий, входят информация о защите кода патентом и требования о сохранении авторства. Поэтому при использовании open source ПО, распространяемого под Berkeley Software Distribution License, важно читать условия соглашения и анализировать, насколько требования подходят под ваши задачи.

Преимущества BSD License

Berkeley Software Distribution — одна из самых распространенных и широко используемых лицензий open source. Ее преимущества — простота и гибкость.

Программные продукты можно использовать в коммерческих целях, интегрировать в корпоративное ПО, платные сервисы и проприетарные системы.

Ограничений на изменение и распространение кода не предусмотрено. Разработчики получают полную свободу модификации. Это упрощает разработку ПО для частных программистов и компаний, а в глобальном плане способствует более быстрому развитию технологий и появлению все новых открытых программных решений.

В отличие от копилефтных лицензионных соглашений, Berkeley Software Distribution не требует наследования лицензии в продуктах, созданных на основе исходника. Открывать исходный код при распространении своего ПО не обязательно: OS-компонентами можно воспользоваться в разработке закрытых и коммерческих проектов. Решение сделать программу с открытым программным кодом или скрыть исходники от получателей ПО остается за авторами проекта.

В некоторых версиях лицензионного соглашения нет пункта о патентной защите. Это открывает разработчикам возможность применения запатентованных решений в своих проектах без риска попасть под судебные разбирательства.

Требования соглашения минимальны и легко выполнимы: достаточно сохранять уведомления об авторских правах и отказе от гарантий. Поэтому Berkeley Software Distribution License практически универсальная и подходит для применения в самых разных проектах. 

Проблемы BSD License

Несмотря на большой список преимуществ, у Berkeley Software Distribution есть недостатки, которые могут принести проблемы разработчикам и пользователям программных продуктов.

Одна из проблем — размытые формулировки. С точки зрения юристов, текст лицензионного соглашения двусмысленен. Например, право на доработку и использование кода не объясняет, какие именно права и в каком объеме сохраняются за авторами проекта.

Может возникнуть путаница в вопросах о том, как именно должен быть указан оригинальный автор, особенно при работе над крупными проектами с участием множества контрибьюторов.

Разрешительный характер лицензионного соглашения может препятствовать прогрессу: пользователи вправе использовать открытые исходники и создавать на их основе полезные решения, но не обязаны делиться своими наработками с сообществом. В отличие от копилефта, который требует, чтобы модификации кода оставались открытыми, Berkeley Software Distribution не предусматривает такого условия, чем замедляет развитие глобального OSS-движения.

Еще одна проблема — совместимость с другими открытыми лицензиями. По закону в одной системе или программе можно объединить несколько компонентов, выпущенных под разными лицензионными соглашениями, только если условия этих соглашений друг другу не противоречат. Например, при комбинации лицензии BSD с копилефтными соглашениями семейства GNU все приложение нужно лицензировать по GNU, а под Berkeley Software Distribution License оставить только те компоненты, которые под ней были созданы. 

Отсутствие обязательств и гарантий можно рассматривать как недостаток с позиции пользователей. Покупатели или получатели программного продукта рассчитывают на стабильность и надежность ПО, но авторы не обязаны нести ответственность за качество софта, созданного на основе открытого кода.

Виды лицензий BSD

Первый вариант соглашения Original License (4-Clause License) появился в 1990 году и включает четыре пункта.

Один из них описывает требование об указании использования программного обеспечения в рекламе и продвижении конечного продукта. В любые маркетинговые материалы нужно добавлять фразу «Этот продукт включает ПО, разработанное Университетом Калифорнии, Беркли, и помогавшими лицами» (оригинал — This product includes software developed by the University of California, Berkeley and its contributors).

Это требование усложняет использование коммерческих продуктов с масштабными рекламными кампаниями. В каждом рекламном сообщении с упоминанием программного продукта необходимо указывать всех правообладателей, а это неудобно и сложно в реализации, особенно если в проекте использовано несколько компонентов open source. Также версия 4-Clause License оказалась несовместимой с GNU, что создавало компаниям юридические трудности в распространении ПО. 

В конце 90-х требование об атрибуции в рекламных материалах убрали, и появилась версия 3-Clause с тремя пунктами вместо четырех. Новая версия совместима с GNU и содержит условие, запрещающее использовать имя проекта или авторов для продвижения производных работ без специального разрешения.

Помимо 3-Clause License, доступны следующие версии:

  • Free (2-Clause License) — включает два пункта о сохранении уведомления об авторских правах и отказе от гарантий, пункт об указании имени автора исключен;
  • Clear License — основана на 3-Clause, дополнительно содержит информацию о патентных правах;
  • 1-Clause License — состоит из одного пункта с условием сохранения уведомления об авторских правах и отказа от ответственности;
  • Zero-Clause (ISC License) — создана на основе 2-Clause License для использования в Internet System Consortium, отличается более точными юридическими формулировками о передаваемых правах.

Все варианты позволяют вносить вклад в оригинальный код или использовать чужие наработки в своих проектах, платных или открытых. Выбор версии лицензионного соглашения зависит от особенностей конечного продукта и политики разработчика. Например, если вы хотите защитить свое имя от несанкционированного использования и контролировать упоминания бренда, можно выбрать 3-Clause License. Для максимальной свободы использования кода подходит 2-Clause License. 

Что такое лицензия MIT

Massachusetts Institute of Technology License (другое название — X11 License) отличается простотой и гибкостью. По функциональности X11 близка к Berkeley Software Distribution License из двух пунктов и разрешает практически любое использование ПО в коммерческих и некоммерческих целях, но с требованием сохранения оригинального уведомления об авторских правах во всех копиях.

Что допускает соглашение:

  • любое изменение исходника;
  • копирование;
  • внедрение исходного фрагмента в другие продукты;
  • монетизацию продуктов;
  • публикацию кода;
  • распространение ПО в любом виде;
  • предоставление сублицензии;
  • продажу копий программного обеспечения.

X11 License появилась в 1988 году и широко используется в продуктах разного масштаба, например, в инструментах разработки:

  • программных средах;
  • JavaScript-библиотеках;
  • редакторах кода;
  • фреймворках.

Благодаря распространенности X11 License хорошо известна и понятна разработчикам и пользователям. 

Структура лицензионного соглашения MIT

Одно из особенностей X11 License — краткость. Текст насчитывает менее 200 слов и содержит минимум условий.

Лицензионное соглашение включает несколько элементов:

  • название — необязательный пункт;
  • копирайт с указанием года и имени автора (опционально);
  • разрешение на использование — заявление о том, что любому лицу, получившему копию программного обеспечения и сопутствующей документации, предоставляется разрешение на свободное использование этих копий, доработку, слияние, сублицензирование, распространение на платной или безвозмездной основе;
  • условие свободного распространения и модификации — при сохранении указания уведомления об авторских правах и текущего разрешения;
  • отказ от гарантий — предоставление ПО в формате «как есть»;
  • снятие ответственности с авторов и правообладателей программного продукта. 

Этих условий достаточно для однозначной трактовки прав и обязанностей всех сторон:

  • авторов исходных продуктов;
  • разработчиков, которые создают свои проекты на базе открытого кода;
  • пользователей.

Чем BSD лицензия отличается от MIT

Текст Massachusetts Institute of Technology License более понятен и корректен с юридической точки зрения. Лицензиат вправе бесплатно использовать ПО с открытым исходным кодом без ограничений. Можно свободно распространять как исходники, так и модифицированные версии.

Лицензия MIT требует сохранения уведомления об авторских правах, других требований атрибуции нет. Berkeley Software Distribution в версии 3-Clause License запрещает использовать имена авторов, что можно использовать для защиты бренда или имени разработчика.

По критерию совместимости MIT предоставляет больше свободы, так как 3-Clause License может вызвать сложности при совместимости с GPL.

MIT — самая популярная лицензия. Вот данные исследования, проведенного организацией OSI в 2023 году, о доле использования лицензионных соглашений open source в проектах на разных языках программирования:

Язык программированияДоля проектов на MITДоля проектов на BSD
JavaScript53%1,45% в версии 3-Clause License
C#/.NET21,55%не вошло в отчет
Java7,4%не вошло в отчет
Python29,14%6,25% в версии 2-Clause License
Ruby63,11%1,26% в версии 3-Clause License
PHP64,37%5,72% в версии 3-Clause License
Rust27,8% и 30,83% совместно с Apache 2.0не вошло в отчет
Go20,1%1,04% в версии 3-Clause License

Выбор лицензии зависит от проекта и задач разработки. MIT подходит, если:

  • нужно простое, понятное лицензионное соглашение с минимальными условиями;
  • в приоритетах проекта — юридическая простота и гибкость.

Berkeley Software Distribution позволяет внести дополнительные ограничения, чтобы лучше контролировать использование вашего продукта и бренда.

Проведем сравнение двух видов лицензионных соглашений по ключевым параметрам:

Параметр сравненияMITBSD лицензия
ТипРазрешительнаяРазрешительная
Обязательства по раскрытию исходного кодаНетНет
Использование в проприетарных проектахРазрешеноРазрешено
Свобода модификацииРазрешена без обязательств по раскрытию измененийРазрешена без обязательств по раскрытию изменений
РаспространениеРазрешено, с минимальными ограничениямиРазрешено, с минимальными ограничениями
Требования к атрибуцииТребуется сохранить уведомление об авторских правахТребуется сохранить уведомление об авторских правах
Требование об упоминании авторовОтсутствуетВ некоторых версиях присутствует (например, 4-Clause License)
Требование об упоминании патентовОтсутствуетВ версиях 2-Clause и 3-Clause отсутствует
СовместимостьСовместима с большинством Open Source LicenseСовместима с большинством Open Source License
Краткость текстаБолее короткаяБолее длинная, особенно в версиях с тремя и четырьмя пунктами
Простота и понятность текстаОчень простаяЗависит от версии
ПопулярностьОчень распространенаОчень распространена

Разрабатывать продукты на основе любых лицензий удобно на GitVerse. Это российская платформа для хранения файлов с исходным кодом, управления проектами и совместной разработки. На GitVerse можно обмениваться идеями с участниками IT-сообщества, привлекать других пользователей к развитию проектов и пользоваться AI-ассистентом, чтобы сделать процесс программирования более продуктивным. Перенести проекты со всеми ветками и историей разработки можно парой кликов после быстрой регистрации на GitVerse.