רישוי כפול (Dual Licensing)

עולם המוצר והעסקים

הגדרה

רישוי כפול הוא מודל שבו אותו קוד מוצע בו-זמנית תחת שני רישיונות — רישיון-קוד-פתוח מחייב, לרוב GPL, ורישיון מסחרי נפרד לחברות שאינן רוצות להתחייב לתנאיו.

מה זה רישוי כפול

רישוי כפול (Dual Licensing) הוא מודל שבו אותה בסיס-קוד מוצעת בו-זמנית תחת שני רישיונות שונים: רישיון-קוד-פתוח מחייב-שיתוף (copyleft), לרוב GPL או AGPL, ולצידו רישיון מסחרי נפרד לגורמים שאינם מעוניינים להתחייב לתנאיו. מי שמוכן שהנגזרות של הקוד שלו יהיו פתוחות גם הן יכול להשתמש בגרסה הפתוחה בחינם; מי שרוצה לשלב את הקוד במוצר קנייני סגור, בלי לחשוף את הקוד שלו-עצמו, משלם עבור רישיון מסחרי שמשחרר אותו מהתנאי הזה.

התנאי המקדים: בעלות מלאה על הקוד

כדי שהמודל יהיה חוקי בכלל, החברה חייבת להחזיק — או לשלוט באופן מלא — בזכויות-היוצרים על כל בסיס-הקוד. אי-אפשר להציע רישיון מסחרי על קוד שנכתב תחת GPL על-ידי צד שלישי שלא הסכים לכך. בגלל זה, מרבית הפרויקטים שמפעילים רישוי כפול דורשים מכל תורם-קוד לחתום על הסכם-תרומת-רישיון (CLA — Contributor License Agreement), שמעביר לבעלי-הפרויקט את הזכות להעניק גם רישיון מסחרי על אותה תרומה, לא רק את הרישיון הפתוח.

למה חברה בוחרת ברישוי כפול

המודל מאפשר לחברה למנף שני יתרונות בבת-אחת: לשמר מעורבות-קהילה סביב גרסה פתוחה שמושכת מפתחים, תרומות ותנועת-אימוץ אורגנית, ובמקביל למנוע מצב שבו מתחרה או לקוח גדול משתמש בקוד בחינם בתוך מוצר קנייני משלו בלי לשלם. משתמשים-יחידים ועסקים קטנים יכולים לרוב להשתמש בגרסה החינמית תחת הרישיון הפתוח; ארגונים שרוצים גרסה ידידותית-לעסקים, בלי מגבלות ה-copyleft, משלמים על כך.

דוגמה מוכרת: MySQL של Oracle

הדוגמה השגורה ביותר למודל היא מסד-הנתונים MySQL, שאורקל מציעה תחת רישיון GPL לפרויקטים בקוד-פתוח, ובמקביל מציעה רישיון מסחרי נפרד לחברות שרוצות לשלב את MySQL במוצר קנייני משלהן בלי להתחייב לתנאי ה-GPL — אותה בסיס-קוד בדיוק, בשני מסלולי-רישוי מקבילים.

איך זה נבדל מרישיון-מסחרי רגיל ומליבה-פתוחה

חשוב לא לבלבל בין רישוי כפול לבין שני מודלים קרובים. רישיון-מסחרי רגיל הוא מסלול-רישוי יחיד בלבד — אין לצידו גרסה פתוחה חלופית לאותו קוד. מודל ליבה-פתוחה (Open-Core), לעומת זאת, מפריד בין שני חלקי-קוד שונים — ליבה חופשית ופתוחה, ותוספות קנייניות נפרדות שרק עליהן חל הרישיון המסחרי. ברישוי כפול, לעומת שניהם, זהו אותו קוד בדיוק בשני הרישיונות — לא קוד שונה ולא מסלול יחיד.

מה זה אומר למי שבוחר תוכנה כזו

עבור עסק ששוקל להשתמש בתוכנה שמופצת תחת רישוי כפול, ההחלטה המעשית היא: אם השימוש שלו בקוד וכל שינוי שהוא עורך בו יכולים להישאר פתוחים — הוא יכול להשתמש בגרסה החינמית בלי לשלם. אם הוא רוצה לשלב את הקוד בתוך מוצר סגור ולמכור אותו בלי לחשוף את קוד-המקור שלו-עצמו, הוא חייב לרכוש את הרישיון המסחרי, גם אם לא ביצע בקוד המקורי שום שינוי מהותי.

שאלות נפוצות ❓

מה זה רישוי כפול?

מודל שבו אותה בסיס-קוד מוצעת בו-זמנית תחת רישיון-קוד-פתוח מחייב-שיתוף (כמו GPL) ותחת רישיון מסחרי נפרד למי שלא רוצה להתחייב לתנאי הראשון.

מה חייבת חברה כדי להציע רישוי כפול?

להחזיק או לשלוט באופן מלא בזכויות-היוצרים על כל בסיס-הקוד; לכן פרויקטים כאלה דורשים בדרך-כלל מתורמים לחתום הסכם-תרומת-רישיון (CLA).

מה הדוגמה הידועה ביותר לרישוי כפול?

מסד-הנתונים MySQL של Oracle, המוצע תחת רישיון GPL לפרויקטים בקוד-פתוח ותחת רישיון מסחרי נפרד לשילוב במוצרים קנייניים.

מה ההבדל בין רישוי כפול לליבה-פתוחה?

ברישוי כפול זהו אותו קוד בדיוק תחת שני רישיונות; בליבה-פתוחה יש שני חלקי-קוד שונים — ליבה חופשית ותוספות קנייניות נפרדות שעליהן חל הרישיון המסחרי.

מתי עסק חייב לשלם על תוכנה עם רישוי כפול?

כשהוא רוצה לשלב את הקוד בתוך מוצר סגור ולמכור אותו בלי לחשוף את קוד-המקור שלו-עצמו — אז הוא חייב לרכוש את הרישיון המסחרי.