"שימוש בקוד פתוח – הטוב, הרע והמשפטי"

/, טכנולוגיה ומשפט, סטארט-אפים, עמוד הבית, קניין רוחני/"שימוש בקוד פתוח – הטוב, הרע והמשפטי"

"שימוש בקוד פתוח – הטוב, הרע והמשפטי"

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

המטרה של קוד פתוח היא לאפשר שימוש למשתמשים רבים ככל הניתן, במגוון דרגות של "חופש שימוש", אשר מוגדרות באמצעות מודלים לרישוי באינטרנט, או במילה אחת – רישיונות. חשוב לציין שמטרת הקוד הפתוח אינה לאפשר שימוש בחינם בקוד, אלא לאפשר הפצה החופשית ככל הניתן ממגבלות שימוש.

רישיונות עבור "קוד פתוח"

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

הכפפת קוד פתוח לרישיון, הינה שימוש בדיני זכויות יוצרים על מנת לאפשר הפצת יצירות באינטרנט ללא הפרת זכויות יוצרים. הרישיונות נכתבים בשפה פשוטה ולא בשפה משפטית וניתן לאכוף אותם כחוזה לכל דבר ועניין.

לדוגמא, מודל לרישוי ידוע מאוד הינו רישיון GPL – General Public License. רישיון זה, מאפשר לכל משתמש לבצע שימוש בקוד הפתוח ואף לכתוב באמצעותו קוד נוסף. זאת בתנאי שהמשתמש יעניק לאחרים רישיון להשתמש בקוד הנוסף באותם תנאים בדיוק (כקוד פתוח). כך לדוגמא, אם משתמש מפתח תוכנה תוך שימוש בקוד פתוח אשר כפוף לרישיון GPL, עליו לאפשר שימוש בתוכנה שפיתח כ"קוד פתוח" (או "תוכנה פתוחה" ליתר דיוק). לרישיון GPL יש עוד מגוון תנאים ודרישות, אך הוא, בדומה לרישיונות אחרים, מסדיר את נושא זכויות היוצרים ומאפשר את מטרת ה"קוד הפתוח" – הרחבת השימוש בקוד.

ישנם מודלים נוספים לרישוי דוגמת Apache, MIT, BSD ועוד אשר לא ארחיב אודותיהם במאמר זה. ההפרדה בין רישיון לרישיון נובעת מארבע הבחנות עיקריות, כאשר כל רישיון לקוד פתוח יכול לשלב מספר הבחנות ויכול להתמקד באחת מהן:

  1. ייחוס (Attribution) – העתקה/הפצה/הצגת הקוד הפתוח, בתנאי שאותו קוד מיוחס ליוצר באופן שנקבע ברישיון.
  2. שימוש שאינו מסחרי (Non-commercial) – העתקה/הפצה/הצגת הקוד הפתוח, בתנאי שאותו קוד יעשה לשימושים בלתי מסחריים בלבד ("מסחרי"= פעולה שאעשה בקוד שתניב לי תמורה כלשהי).
  3. שיתוף זהה – כל קוד (או כל יצירה אחרת) שניצור בהתבסס על הקוד הפתוח אפשרית לשימוש והפצה, אך הקוד "החדש" מחויב וכפוף לתנאי הרישיון של הקוד הפתוח (בדומה לרישיון ה-GPL).
  4. איסור על יצירה נגזרת – העתקה/הפצה/הצגת הקוד הפתוח אפשרית כל עוד לא נעשה כל שינוי בקוד הפתוח. כלומר, ייעשה שימוש בקוד הפתוח כפי שהוא.


יתרונות וחסרונות הקוד הפתוח

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

יתרון מרכזי נוסף הוא החיסכון בעלויות עסקה. המשתמש חוסך זמן יקר שהיה משקיע בחיפוש היוצר על מנת לבקש את אישורו לשימוש בתוכנה, במשא ומתן לגבי השימוש בתוכנה ועוד. במידה והתוכנה מוגדרת כ"קוד פתוח" (או במילים מדויקות יותר – "תוכנה חופשית"), למשתמש יש רישיון מוגדר בפשטות המסביר לו בדיוק מה מותר ומה אסור לו לבצע במסגרת זכויות היוצרים של היוצר. בנוסף, המשתמש יכול להתאים את הקוד לצרכים שלו ולפתח את הקוד בהתאם.

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

למול היתרונות קיימים מספר חסרונות ל"קוד פתוח". החסרון הבולט ביותר אותו חווה היוצר הוא איבוד שליטה על הפצת הקוד שלו. משתמשים עשויים לבצע שימוש לרעה בקוד (פיתוח תוכנות בעלי אופי פוגעני, שימוש בקוד לצורך עבירה על החוק וכדומה) והיוצר לא יכול  למנוע את השימוש בקוד למשתמשים ספציפיים או לאמצעי הפצה כאלה ואחרים. מאידך, ניתן ליצור רישיון המגביל את השימוש ומגן מפני הנ"ל. עם זאת, נראה כי רוב הרישיונות תומכים בהגנה על זכויות היוצרים בלבד, ולא הגנה מפני שימוש לרעה על ידי משתמשים. על מנת להתמודד עם חסרון זה התפתחו פתרונות שונים דוגמת מערכות ניהול זכויות יוצרים המאפשרות שליטה מסוימת בשימוש בהתאם לסוג היצירה, סוג המשתמש ועוד.

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

כיצד לפעול נכון כדי למזער את החשיפה המשפטית בשימוש בקוד פתוח?

ראשית, חשוב מאוד לתעד את השימוש בקוד פתוח במסגרת המיזם במסמך אחד מרוכז. יש לדעת לגבי כל קוד פתוח בו נעשה שימוש את הדברים הבאים- תוכן הקוד הפתוח, הרישיון שניתן לקוד הפתוח (ומה נדרש במסגרת ציות לרישיון), דרישות נוספות במידה וישנן, (לדוגמא Copyrights – היוצר דורש, במסגרת הרישיון, קרדיט שיינתן לו עבור כל שימוש בקוד הפתוח) ולבסוף – לאיזה רכיב במוצר מתחבר הקוד הפתוח? האם מדובר ברכיב שמופץ מחוץ לחברה או שנשאר בתוך החברה?

מדובר בשאלות חשובות מאוד, שהרי רכיבים אשר מופצים לקהל הרחב, חשופים יותר לבחינה של המוצר ואכיפה גבוהה יותר של ציות לרישיון. זאת למול רכיבים שמפותחים ונשארים בתוך החברה, אשר חשופים לביקורת מצד עובדי החברה בלבד (בדגש על המחלקה המשפטית).

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

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

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

אין לראות במידע המוצג כייעוץ משפטי ואין להסתמך עליו ככזה. המידע עשוי להיות לא מעודכן ולהשתנות בכל עת ללא הודעה מראש או בדיעבד.

אודות המחבר:

Karin Maimon
Law & Business (Accounting) student at the IDC Herzliya. Dreams of becoming an owner of a VC company that will connect between different markets around the world, focusing on innovation and technology.
נגישות