لایسنس نرمافزار چیست؟
لایسنس نرمافزار یک توافقنامه حقوقی است که نحوه استفاده از یک نرمافزار را تعریف میکند. برای توسعهدهندگان نرمافزار که ممکن است بخواهند حقوق، لایسنسها و کنترلهای خاصی بر نحوه استفاده، ویرایش و اشتراکگذاری آثارشان توسط دیگران اعمال کنند، انتخاب لایسنس نرمافزار یک تصمیم مهم است. برخی توسعهدهندگان ممکن است بخواهند محدودیتهای شدیدی در استفاده از نرمافزار خود اعمال کنند. با این حال، دیگران ممکن است نرمافزار خود را با محدودیتهای کم یا بدون هیچ محدودیتی لایسنس دهند. دلیل این کار ممکن است تمایل به استفاده گستردهتر از نرمافزار باشد یا مخالفت با لایسنسهای محدودکننده نرمافزار از نظر فلسفی.
صرفنظر از دلایل، توسعهدهندگان میتوانند این هدف را با استفاده از یک لایسنس نرمافزار متنباز محقق کنند. به طور کلی، لایسنسهای نرمافزار متنباز اجازه استفاده، ویرایش و توزیع کد منبع را بر اساس شرایط و ضوابط توافقشده فراهم میکنند. لایسنسهای مختلفی برای نرمافزار متنباز وجود دارد که هرکدام با توجه به محدودیتهای مد نظر سازنده متفاوت هستند.
برای برنامهریزی بلندمدت پروژهتان مفید است که با لایسنسهای نرمافزار متنباز موجود آشنا باشید تا بتوانید تصمیم آگاهانهای در انتخاب مناسبترین لایسنس برای نیازهای پروژهتان داشته باشید. در این مقاله، اطلاعاتی درباره حقوقی که هنگام خلق اثر دارید (مانند حق چاپ) و نحوه ایجاد توافق حقوقی با کاربران نرمافزار از طریق لایسنس، ارائه خواهیم کرد. همچنین تفاوتهای نرمافزار مالکیتی، رایگان و متنباز، لایسنسهای پرمیسیو و کپیلفت، و گزینههای لایسنس نرمافزار متنباز پیشنهادی هنگام ایجاد پروژه در گیتهاب را بررسی خواهیم کرد.
توجه: این مقاله مشاوره حقوقی ارائه نمیدهد و صرفاً منبع اطلاعاتی درباره لایسنسهای نرمافزار متنباز است.
اگر میخواهید درباره پتنتها، علائم تجاری و مالکیت معنوی بیشتر بدانید، میتوانید به دفتر ثبت پتنت و علامت تجاری آمریکا
https://www.uspto.gov/ مراجعه کنید.
در ایالات متحده و بسیاری کشورها، برای هر اثر خلاقانهای که تولید میکنید، حفاظتهای قانونی خاصی بهطور خودکار اعطا میشود که یکی از آنها حق چاپ (Copyright) است. دفتر حق چاپ آمریکا حق چاپ را «نوعی مالکیت معنوی که آثار اصیل خلاقانه را محافظت میکند» تعریف میکند، بهویژه زمانی که «نویسنده اثر را به صورت مکتوب یا به شکل قابل لمس ثابت کند». این بدان معناست که حق چاپ مالک ایده نیست بلکه مالک بیان مکتوب یا ملموس آن ایده است. اگر دارنده حق چاپ بخواهد حفاظتهای قویتری داشته باشد، میتواند از طریق پتنتها، علائم تجاری و قوانین مالکیت معنوی این کار را انجام دهد. برای دریافت حق چاپ نیازی به انجام فرایند رسمی نیست.
حق چاپ شامل حقوق مختلفی میشود، مانند کپیبرداری و توزیع نسخههای اثر. اگر دارنده حق چاپ بخواهد کنترل استفاده دیگران را داشته باشد، باید از طریق لایسنسی که قوانین را تعریف کند، این کنترل را اعمال کند. اگر دارنده اثر اعلام کند «تمام حقوق محفوظ است» (All Rights Reserved)، یعنی هیچکس جز خودش حق استفاده یا ویرایش آن اثر را ندارد.
یکی دیگر از پیچیدگیها، آثاری است که در قالب کار برای کارفرما خلق میکنید. اگر در قالب کار به سفارش (work for hire) این آثار تولید شوند، مالکیت حقوقی آنها متعلق به کارفرما است که بابت آن حقوق پرداخت کرده است. در نتیجه، اشتراک این آثار بدون اجازه کارفرما پیامدهای حقوقی خواهد داشت، چون شما مالک حقوق حق چاپ و لایسنسهای آن نیستید.
نرمافزار مالکیتی (Proprietary Software)
نرمافزار مالکیتی به هر نرمافزاری اطلاق میشود که لایسنس آن محدودیتهایی برای استفاده، ویرایش یا اشتراکگذاری اعمال کند. بازیهای ویدیویی نمونه رایجی از نرمافزار مالکیتی هستند. وقتی بازیای را خریداری میکنید (به صورت فیزیکی یا دیجیتال)، معمولاً مجاز به کپیبرداری یا فروش مجدد آن نیستید و اجازه ویرایش کد بازی برای اجرای آن بر روی پلتفرم دیگری نیز ندارید.
کاربران نرمافزار مالکیتی معمولاً ملزم به رعایت توافقنامه لایسنس کاربر نهایی (EULA) هستند. ممکن است فکر کنید مالک نرمافزار هستید اما معمولاً در این لایسنس ذکر شده که شما مالک نرمافزار نیستید بلکه مالک لایسنسی هستید که اجازه استفاده از آن را به شما میدهد. EULA معمولاً نحوه استفاده از لایسنس را تعریف کرده و معمولاً اشتراکگذاری آن بدون اجازه مالک نرمافزار ممنوع است.
ابزار حقوقی مشابه EULA، قرارداد شرایط استفاده (Terms of Service یا ToS) است که قوانین استفاده از برنامه یا سرویس را تعیین میکند. معمولاً برای نرمافزارهایی که خرید یکباره دارند EULA استفاده میشود و برای سرویسهای اشتراکی یا وبسایتها بیشتر ToS به کار میرود. غالباً هنگام نخستین اجرای نرمافزار مالکیتی صفحهای ظاهر شده و قوانین را نشان داده و کاربر باید با دکمه «موافقم» تایید کند تا بتواند از برنامه استفاده کند.
قبل از دهه ۱۹۷۰، نرمافزار معمولاً همراه با کد منبع توزیع میشد و کاربران مختار به ویرایش و اشتراکگذاری بودند. با گذشت زمان، ناشران نرمافزار شروع به اعمال محدودیتهای بیشتر کردند تا از درآمدزایی بیشتر و کاهش کپیهای غیرقانونی اطمینان حاصل کنند.
جنبشهای نرمافزار آزاد و متنباز
این محدودیتها باعث شکلگیری دو جنبش مرتبط به هم شد: نرمافزار آزاد و نرمافزار متنباز. گرچه این دو متفاوتند، اما هردو معتقدند که کاربران باید به کد منبع دسترسی داشته، آن را ویرایش کرده و آزادانه به اشتراک بگذارند.
توجه: معمولاً نرمافزار آزاد شامل متنباز است، اما همه نرمافزارهای متنباز آزاد نیستند؛ بنابراین در این مقاله از اصطلاح «نرمافزار متنباز» استفاده میشود اما توجه داشته باشید که این دو اصطلاح همیشه جایگزین هم نیستند.
حامیان نرمافزار متنباز توصیه میکنند توسعهدهندگان نرمافزارهای خود را همراه با لایسنس متنباز منتشر کنند. به جای لایسنسهای مالکیتی که محدودیتهای زیادی تعریف میکنند، لایسنسهای متنباز آزادیهای کاربران را مشخص میکنند. این لایسنسها معمولاً در فایل LICENSE.txt یا نام مشابه در کنار نرمافزار قرار میگیرند.
انواع لایسنسهای متنباز
تفاوت نظر درباره آزادیهای تعریفشده در لایسنس متنباز باعث شکلگیری انواع متعددی از این لایسنسها شده است که عمدتاً در دو دسته قرار میگیرند: لایسنسهای پرمیسیو (Permissive) و کپیلفت (Copyleft).
- لایسنس پرمیسیو: اجازه استفاده، ویرایش و اشتراکگذاری کد را میدهد. همچنین به کاربران اجازه میدهد که شرایط لایسنس را برای کپیهای بعدی یا آثار مشتق شده تغییر دهند.
- لایسنس کپیلفت: اجازه استفاده، ویرایش و اشتراکگذاری کد را میدهد، اما مانع تغییر لایسنس و اعمال لایسنس متفاوت روی آثار مشتق شده میشود. یعنی اگر کسی تغییری ایجاد کرد، باید تغییرات خود را زیر همان لایسنس اصلی منتشر کند. این الزام برای حفظ حقوق و آزادی اصلی کاربر است.
علاوه بر این، لایسنسهای نیز وجود دارند که معادل حوزه عمومی (Public Domain) محسوب میشوند و اجازه استفاده بدون نیاز به ذکر منبع یا رعایت شرایط سازگاری لایسنس را میدهند. سازندگان با این لایسنسها تمام حقوق خود را عملاً کنار میگذارند. البته پذیرفته شدن این لایسنسها به عنوان «متنباز» مورد مناقشه بوده است. مثلاً CC0 که توسط کریتیو کامنز ارائه شده بود توسط سازمان Open Source Initiative (OSI) تأیید نشد اما Unlicense مورد تأیید OSI قرار گرفته است.
دلایل استفاده از لایسنس متنباز
هر اثر اصلی به محض خلق حق چاپ دارد اما بدون لایسنس، مشخص نیست کاربران چه حقوقی دارند. دلایل زیر میتواند شما را به انتخاب لایسنس متنباز ترغیب کند:
- بهبود: جامعه متنباز فرهنگ همکاری و نوآوری را ارتقاء میدهد. با ارائه لایسنس متنباز، کاربران تشویق میشوند تا در توسعه مشارکت کنند و باعث ارتقاء مستمر نرمافزار شوند.
- مالکیت: اگر میخواهید کنترل بیشتری روی اثر خود داشته باشید، لایسنس مناسب این امکان را فراهم میکند. به عنوان مثال، انتخاب لایسنس کپیلفت تضمین میکند که هر تغییر باید تحت همان لایسنس اولیه منتشر شود.
- رقابت: برای رقابت در بازار نرمافزار، استفاده از لایسنس متنباز میتواند به شناخته شدن شما کمک کند. نمونههای موفق این رویکرد شامل لینوکس، اندروید و مرورگر فایرفاکس است.
لطفاً توجه داشته باشید که امکان کسب درآمد از پروژههای متنباز وجود دارد، اما معمولاً روشهای کسب درآمد از نرمافزار بر پایه لایسنسهای مالکیتی است که از اشتراک یا سرقت جلوگیری میکنند.
در نهایت، انتخاب لایسنس مناسب نیازمند تحقیق عمیق است و توصیه میشود برای درک کامل ابعاد حقوقی آن، با یک مشاور حقوقی مشورت کنید.
محرک GitHub برای انتخاب لایسنس
در گیتهاب، هنگام ساخت یک مخزن جدید، گزینهای برای انتخاب لایسنس وجود دارد. با کلیک روی این گزینه، فهرستی از لایسنسهای پیشنهادی نمایش داده میشود.
در ادامه، خلاصهای از لایسنسهای متنباز پرمیسیو و کپیلفت که گیتهاب پیشنهاد میدهد، ارائه شده است. برای جزئیات بیشتر، همیشه مستندات رسمی هر لایسنس را بخوانید یا با یک متخصص حقوقی مشورت کنید.
لایسنسهای پرمیسیو
- Apache License:
توسط بنیاد Apache نوشته شده است. کاربران نیازی به اشتراکگذاری نسخه تغییر یافته نرمافزار تحت همان لایسنس ندارند و میتوانند لایسنس متفاوتی برای آثار مشتق شده اعمال کنند (sublicensing). - MIT License:
از موسسه MIT است و از کوتاهترین و سادهترین لایسنسهاست که محدودیت کمی دارد و اجازه sublicensing میدهد. - BSD Licenses:
گیتهاب دو نسخه دارد:- BSD 2-Clause «Simplified» License (FreeBSD)
- BSD 3-Clause «New» or «Revised» License
نسخه سهبندی اجازه نمیدهد که نام نویسنده یا حامیان برای تبلیغ محصولات استفاده شود.
- Boost Software License:
از کتابخانه Boost C++ است و مشابه MIT و BSD است، ولی نیاز به ذکر منبع هنگام توزیع به صورت باینری ندارد.
لایسنسهای کپیلفت
- GNU General Public License (GPL):
نسخههای مختلفی دارد:- GPL v3.0: کاربران باید تغییرات را اعلام کنند و کد منبع اصلی و تغییر یافته را در دسترس قرار دهند. سازگار با لایسنس Apache است.
- GPL v2.0: نسخه قوی کپیلفت است و اجازه توزیع اثر را در صورت رعایت قوانین لایسنس میدهد. محافظت خاصی در برابر دعاوی نقض پتنت دارد.
- GNU Lesser General Public License (LGPL) v2.1:
نوعی کپیلفت ضعیف است که اجازه میدهد نرمافزارهای ترکیبی شامل بخشهای LGPL و غیر-LGPL منتشر شود بدون اینکه کد منبع بخش غیر-LGPL لازم باشد منتشر شود. - GNU Affero General Public License (AGPL) v3.0:
برای نرمافزارهایی که روی سرور اجرا میشوند. اگر برنامه تغییر یافتهای روی سرور باشد، باید کد منبع آن در دسترس قرار گیرد. - Eclipse Public License (EPL):
کپیلفت ضعیف است که الزامات کمتری نسبت به GPL دارد. - Mozilla Public License (MPL):
کپیلفت ضعیف و مبتنی بر فایل است؛ یعنی فایلهای کد دارای لایسنسهای متفاوت میتوانند با هم ترکیب شوند.
لایسنسهای معادل حوزه عمومی (Public-domain-equivalent)
- Creative Commons Zero (CC0): توسط کریتیو کامنز ارایه شده و اجازه استفاده، توزیع و تغییر بدون نیاز به ذکر منبع میدهد اما OSI آن را تأیید نکرده است.
- The Unlicense: یک لایسنس معادل حوزه عمومی، مورد تأیید OSI، اجازه استفاده، تغییر، توزیع برای اهداف تجاری و غیرتجاری را میدهد.
جمعبندی
موارد فوق تنها چند نمونه از لایسنسهای رایج متنباز پیشنهادی گیتهاب هستند. در انتخاب لایسنس باید به نیازهای خاص پروژه خود دقت کنید و در صورت نیاز از متخصص حقوقی کمک بگیرید.
از همراهی شما با پارمین کلود سپاسگزاریم.

نظرات کاربران