← กลับไปยังบทความทั้งหมด

สัญญาอนุญาตซอฟต์แวร์โอเพนซอร์ส

สรุปใจความสำคัญ

  • สัญญาอนุญาตโอเพนซอร์สใช้กฎหมายลิขสิทธิ์เพื่อมอบสิทธิ์ในการเข้าถึงและแก้ไขรหัสต้นฉบับแทนการจำกัดสิทธิ์
  • แบ่งเป็น 2 ประเภทหลักคือ Permissive (ผ่อนปรน) และ Copyleft (ต้องส่งต่อเสรีภาพ)
  • Open Source Initiative (OSI) และ Free Software Foundation (FSF) เป็นองค์กรหลักที่กำหนดมาตรฐานของสัญญาอนุญาต

สัญญาอนุญาตซอฟต์แวร์โอเพนซอร์ส (Open-source license) คือสัญญาทางกฎหมายที่อนุญาตให้ผู้ใช้งานสามารถนำซอฟต์แวร์ไปใช้ แก้ไขดัดแปลง และเผยแพร่ต่อได้อย่างอิสระ โดยมีจุดประสงค์หลักเพื่อส่งเสริมการพัฒนาซอฟต์แวร์เสรีและโอเพนซอร์ส (Free and Open-Source Software หรือ FOSS) ซึ่งเป็นการใช้โครงสร้างทางกฎหมายด้านทรัพย์สินทางปัญญาในทิศทางที่ตรงกันข้ามกับการจำกัดสิทธิ์ เพื่อมอบสิทธิ์ในการเข้าถึงรหัสต้นฉบับ (Source Code) ให้แก่ผู้รับสัญญา

แผนภูมิวงกลมแสดงสัดส่วนการใช้สัญญาอนุญาตโอเพนซอร์สที่นิยมที่สุด
สัดส่วนการใช้สัญญาอนุญาตโอเพนซอร์สที่พบบ่อย โดยมี Apache, MIT และ GPL เป็นกลุ่มหลัก

ประวัติและความเป็นมา

ในช่วงหลังปี ค.ศ. 1980 สหรัฐอเมริกาเริ่มกำหนดให้ซอฟต์แวร์เป็นงานวรรณกรรมที่ได้รับความคุ้มครองภายใต้กฎหมายลิขสิทธิ์ ส่งผลให้ซอฟต์แวร์ส่วนใหญ่กลายเป็นซอฟต์แวร์กรรมสิทธิ์ (Proprietary Software) ที่จำกัดการเข้าถึงรหัสต้นฉบับ

เพื่อตอบโต้แนวโน้มดังกล่าว ริชาร์ด สตอลแมน (Richard Stallman) นักโปรแกรมเมอร์จาก MIT ได้ก่อตั้งขบวนการซอฟต์แวร์เสรี (Free Software Movement) และโครงการ GNU เพื่อสร้างระบบปฏิบัติการที่เสรี พร้อมทั้งก่อตั้งมูลนิธิซอฟต์แวร์เสรี (Free Software Foundation - FSF) โดยใช้กฎหมายลิขสิทธิ์มาสร้างสัญญาอนุญาตที่มอบเสรีภาพให้แก่ผู้ใช้ แทนที่จะใช้เพื่อจำกัดสิทธิ์

ต่อมาในทศวรรษที่ 1990 บรูซ เพเรนส์ (Bruce Perens) และ เอริก เอส. เรย์มอนด์ (Eric S. Raymond) ได้ก่อตั้ง Open Source Initiative (OSI) เพื่อนำเสนอคำว่า "โอเพนซอร์ส" (Open Source) แทนคำว่า "ซอฟต์แวร์เสรี" โดยมุ่งเน้นไปที่ข้อดีในเชิงการพัฒนาและประสิทธิภาพของโมเดลการพัฒนาแบบเปิด ซึ่งดึงดูดภาคธุรกิจได้มากกว่าการเน้นเรื่องจริยธรรมและเสรีภาพเพียงอย่างเดียว

ภาพถ่ายของบรูซ เพเรนส์ ในงานประชุม
บรูซ เพเรนส์ หนึ่งในผู้ก่อตั้ง Open Source Initiative (OSI)

ประเภทของสัญญาอนุญาตโอเพนซอร์ส

สัญญาอนุญาตโอเพนซอร์สสามารถแบ่งออกเป็นสองกลุ่มหลักตามเงื่อนไขในการเผยแพร่ผลงานดัดแปลง ดังนี้:

1. สัญญาอนุญาตแบบผ่อนปรน (Permissive Licenses)

เป็นสัญญาอนุญาตที่มีข้อจำกัดน้อยที่สุด มักมีต้นกำเนิดมาจากแวดวงวิชาการ ผู้ใช้สามารถนำซอฟต์แวร์ไปแก้ไขและเผยแพร่ต่อได้ โดยไม่จำเป็นต้องเปิดเผยรหัสต้นฉบับของส่วนที่แก้ไข หรือสามารถนำไปรวมในซอฟต์แวร์กรรมสิทธิ์ได้ ตัวอย่างที่พบบ่อย ได้แก่ MIT License และ Apache License

2. สัญญาอนุญาตแบบก๊อปปี้เลฟต์ (Copyleft Licenses)

เป็นสัญญาอนุญาตที่เกิดจากขบวนการซอฟต์แวร์เสรี มีเงื่อนไขสำคัญคือ หากมีการนำซอฟต์แวร์ไปดัดแปลงและเผยแพร่ต่อ ผลงานดัดแปลงนั้นจะต้องใช้สัญญาอนุญาตประเภทเดียวกันหรือที่คล้ายคลึงกัน และต้องเปิดเผยรหัสต้นฉบับด้วย เพื่อให้มั่นใจว่าซอฟต์แวร์จะยังคงเป็นเสรีตลอดไป ตัวอย่างที่ชัดเจนที่สุดคือ GNU General Public License (GPL)

มาตรฐานการพิจารณาสัญญาอนุญาต

การที่จะระบุว่าสัญญาอนุญาตใดเป็น "โอเพนซอร์ส" หรือ "ซอฟต์แวร์เสรี" จะต้องเป็นไปตามเกณฑ์มาตรฐานที่กำหนดโดยองค์กรหลัก ดังนี้:

  • The Open Source Definition (OSD): กำหนดโดย OSI โดยอ้างอิงจาก Debian Free Software Guidelines (DFSG)
  • Free Software Definition: กำหนดโดยมูลนิธิซอฟต์แวร์เสรี (FSF)

แม้ว่าทั้งสองนิยามจะมีจุดเน้นที่ต่างกัน (OSI เน้นประสิทธิภาพการพัฒนา, FSF เน้นเสรีภาพของผู้ใช้) แต่ในทางปฏิบัติ สัญญาอนุญาตส่วนใหญ่ที่ผ่านเกณฑ์ของทั้งสององค์กรจะมีข้อกำหนดพื้นฐานที่เหมือนกัน คือ ผู้รับต้องสามารถใช้งาน แก้ไข และเผยแพร่ซอฟต์แวร์ได้

คำถามที่พบบ่อย

ความแตกต่างระหว่าง Open Source และ Free Software คืออะไร?

ในเชิงเทคนิค สัญญาอนุญาตมักจะเหมือนกัน แต่ในเชิงปรัชญา Free Software เน้นที่เสรีภาพและจริยธรรมของผู้ใช้ ส่วน Open Source เน้นที่ความได้เปรียบในเชิงการพัฒนาและคุณภาพของซอฟต์แวร์ที่เกิดจากการร่วมมือกัน

Copyleft คืออะไร?

Copyleft คือเงื่อนไขในสัญญาอนุญาตที่กำหนดให้ซอฟต์แวร์ที่ถูกดัดแปลงจากงานต้นฉบับ จะต้องถูกเผยแพร่ภายใต้สัญญาอนุญาตเดิมหรือสัญญาอนุญาตที่เสรีเช่นเดียวกัน เพื่อป้องกันไม่ให้ซอฟต์แวร์ถูกนำไปเปลี่ยนเป็นซอฟต์แวร์กรรมสิทธิ์

สัญญาอนุญาตแบบ Permissive ต่างจาก Copyleft อย่างไร?

สัญญาอนุญาตแบบ Permissive อนุญาตให้ผู้ใช้นำรหัสไปใช้ในซอฟต์แวร์ปิดหรือซอฟต์แวร์กรรมสิทธิ์ได้โดยไม่ต้องเปิดเผยรหัสต้นฉบับของส่วนที่แก้ไข ในขณะที่ Copyleft บังคับให้ต้องเปิดเผยรหัสต้นฉบับหากมีการเผยแพร่ผลงานดัดแปลง