ฉันเคยเป็นทนายความทรัพย์สินทางปัญญาดังนั้นมีประสบการณ์กับใบอนุญาต ฉันรู้สึกว่าคำศัพท์เหล่านี้สามารถอ่านและเข้าใจได้อย่างเป็นธรรม แต่แล้วอีกครั้งฉันก็เข้าโรงเรียนกฎหมายสามปีและเวลากฎหมายบางอย่างก่อนที่ฉันจะได้รับปัญญาอีกครั้งและกลับมาแฮ็ค โดยเฉพาะอย่างยิ่งตั้งแต่ฉันยังไม่ได้เป็นทนายที่ใช้งานอยู่สิ่งนี้ไม่ได้มีไว้เพื่อเป็นคำแนะนำทางกฎหมายเพียงเล็กน้อยเท่านั้น
เริ่มต้นด้วยภาษาลิขสิทธิ์ของ MIT เอง จากนั้นฉันจะจัดทำประเด็นสำคัญสองสามข้อเพื่อทำความเข้าใจเกี่ยวกับใบอนุญาตโอเพนซอร์ซจากนั้นตอบคำถามของคุณและให้ข้อสังเกตระดับสูง
อนุญาตให้ผู้ใดก็ตามที่ได้รับสำเนาของซอฟต์แวร์นี้และไฟล์เอกสารที่เกี่ยวข้อง ("ซอฟต์แวร์") ได้รับอนุญาตโดยไม่คิดค่าใช้จ่ายในการจัดการซอฟต์แวร์โดยไม่มีข้อ จำกัด รวมถึง แต่ไม่ จำกัด เพียงสิทธิ์ในการใช้คัดลอกแก้ไขรวม เผยแพร่เผยแพร่แจกจ่ายใบอนุญาตและ / หรือขายสำเนาของซอฟต์แวร์และอนุญาตให้บุคคลที่ซอฟต์แวร์ได้รับการตกแต่งให้ทำภายใต้เงื่อนไขดังต่อไปนี้: (พวกเขาออกจากประกาศนี้ในตอนท้าย)
สิ่งสำคัญบางประการที่มีใบอนุญาตโอเพนซอร์สส่วนใหญ่ (รวมถึง BSD, MIT, GPL) สำหรับเจ้าของลิขสิทธิ์คือ:
- ใบอนุญาตไม่ได้เปลี่ยนความเป็นเจ้าของลิขสิทธิ์ของคุณเอง มันไม่ใช่ใบอนุญาต แต่เพียงผู้เดียวไม่ใช่การมอบหมายหรือริบกรรมสิทธิ์ การใช้ไลเซนส์ระบบปฏิบัติการไม่ใช่ "การนำบางสิ่งไปสู่สาธารณสมบัติ" แม้ว่าจะเป็นวิธีการหนึ่งในการเปิดโอเพ่นซอร์ส
- ไม่มีสิ่งใดที่ "บังคับ" ให้คุณซึ่งเป็นเจ้าของลิขสิทธิ์ทำการเปิดเผยรหัสในทางใดทางหนึ่งเพียงเพราะคุณแนบใบอนุญาตไว้
- แต่ถ้าคุณใช้ใบอนุญาตระบบปฏิบัติการคุณจะไม่สามารถป้องกันไม่ให้ใครก็ตามที่ "ได้รับ" รหัสใบอนุญาตระบบปฏิบัติการของคุณจากการทำให้มันเป็นสาธารณะในทางใดทางหนึ่งซึ่งเป็นสิทธิของพวกเขาอย่างชัดเจนภายใต้ใบอนุญาตทั้งหมดเหล่านี้
- Copyleft (เช่น GPL) จะต้องมีใบอนุญาต (แต่ไม่ใช่เจ้าของ) เพื่อให้งานที่ได้รับนั้นเป็นสาธารณะและโอเพ่นซอร์ส ไม่อนุญาต (MIT, BSD) (นี่อาจเป็นการทำให้เข้าใจง่าย แต่ก็เป็นความแตกต่างที่สำคัญ)
- ไม่มีประโยค "takeback" สำหรับใบอนุญาตโอเพนซอร์ซส่วนใหญ่ (เช่น MIT) ดังนั้นเมื่อมีคน "รับ" รหัสของคุณพวกเขามีสิทธิ์ที่จะใช้งานได้อย่างถาวรภายใต้ข้อกำหนดสิทธิการใช้งานที่พวกเขาได้รับ
- คุณสามารถแจกจ่ายเวอร์ชันในอนาคตของรหัสของคุณภายใต้ใบอนุญาตที่แตกต่างกันหรือเก็บไว้เป็นกรรมสิทธิ์อย่างสมบูรณ์ นั่นไม่ได้หยุดใครบางคนจากการเริ่มต้นด้วยเวอร์ชันโอเพ่นซอร์สของคุณ (สมมติว่าพวกเขา "ได้รับ") และเพิ่มชิ้นส่วนใหม่ของตัวเองและกระจาย
- คุณสามารถลบช่องของ "การได้รับ" สำหรับโค้ดรุ่นก่อนหน้าของคุณเช่นถอดออกจาก GitHub อย่างไรก็ตามดังที่กล่าวมาแล้วไม่ได้ป้องกันผู้อื่นจากการใช้หรือแจกจ่ายเวอร์ชั่นก่อนหน้าใด ๆ ที่คุณได้เปิดแหล่งข้อมูลไว้ไม่ว่าด้วยวิธีใด
ด้วยพื้นฐานนั้นฉันจะไปยังคำถามของคุณ
ฉันไม่ได้แจกจ่ายรหัสให้ใคร ฉันไม่ต้องแจกจ่ายรหัสลิขสิทธิ์ MIT ให้กับทุกคนหากฉันเป็นเจ้าของลิขสิทธิ์ถูกต้องหรือไม่ ฉันหมายความว่ามีคนขอให้ฉันปล่อยรหัสที่ฉันอ้างว่าตอนนี้อยู่ภายใต้ใบอนุญาตของ MIT หรือไม่? มันจะไม่ใช่จุดจบของโลกและฉันก็เห็นด้วยที่จะทำเช่นนั้นภายใต้การคุกคามทางกฎหมาย ... ในขณะเดียวกันฉันไม่ต้องการแจกจ่ายรหัสนี้เป็นโครงการโอเพนซอร์สให้กับทุกคน
ในฐานะผู้ถือลิขสิทธิ์คุณไม่จำเป็นต้องแจกจ่ายรหัสใด ๆ ให้ใคร คุณไม่จำเป็นต้องเคารพคำขอดังกล่าว (แม้ว่าจะเป็น GPL) คุณรักษาสิทธิ์ทั้งหมด อย่างไรก็ตามในสถานการณ์ที่คุณอธิบายคุณจะแจกจ่ายให้กับ บริษัท ใหม่ของคุณและให้สิทธิ์การใช้งานแก่พวกเขาภายใต้สิทธิ์ใช้งานระบบปฏิบัติการ นายจ้างของคุณ (มีแนวโน้มว่าจะเป็นอดีตนายจ้าง) สามารถวางรหัสของคุณกับอินเทอร์เน็ตได้และคุณจะไม่สามารถทำสิ่งใดนอกเหนือจากคำรามได้
ฉันถือว่าคุณหมายถึง "ใครนอกจากนายจ้างของฉัน" หากคุณไม่ต้องการมอบให้แก่นายจ้างของคุณ "เป็นโอเพนซอร์ซ" และให้สิทธิ์ทั้งหมดที่รวมอยู่ในใบอนุญาตนั้นรวมถึงการแจกจ่ายซ้ำและการใช้งานไม่ จำกัด เวลาไม่ว่าคุณจะต้องการอะไรคุณก็ไม่ควรใช้ ใบอนุญาตโอเพนซอร์ส คุณควรออกใบอนุญาตให้พวกเขาโดยตรงภายใต้เงื่อนไขที่คุณต้องการ กระสุนชี้ให้เห็นสิ่งที่คุณต้องการและมีทนายความเรียกเก็บเงินคุณหนึ่งหรือสองชั่วโมงเพื่อวางไว้ในรูปแบบย่อหน้า หรือเขียนมันเอง ใบอนุญาตเป็นเพียงสัญญาซึ่งเป็นข้อตกลงที่ใส่ไว้เป็นคำพูด
เป้าหมายสุดท้ายของฉันคือการใช้เฟรมเวิร์กการเข้ารหัสก่อนหน้าของฉันโดยไม่สูญเสียลิขสิทธิ์
คุณไม่สามารถสูญเสียลิขสิทธิ์เว้นแต่ว่าคุณมอบหมายให้ใครบางคนให้สิทธิ์ใช้งานมันเท่านั้น (รวมถึงไม่รวมตัวคุณเอง) หรือริบสิทธิ์ สิทธิ์การใช้งานโอเพนซอร์ซไม่ใช่ของสิ่งเหล่านี้ คุณจะสามารถใช้เวอร์ชันที่ได้รับมาที่คุณสร้างและสามารถให้สิทธิ์การใช้งานต่าง ๆ หรือสงวนสิทธิ์ทั้งหมดได้
แต่ข้อกังวลหลักที่ถูกต้องตามกฎหมายของคุณดูเหมือนว่าคุณจะยังคงสามารถเก็บลิขสิทธิ์และใช้รหัสของคุณได้ในอนาคตโดยที่นายจ้างไม่เรียกร้องรหัสนั้นเป็นของพวกเขาหรือคุณอยู่นอกสิทธิ์ที่จะทำเช่นนั้น กุญแจสำคัญในการนี้คือการสร้างหลักฐานหักล้างไม่ได้ว่า A) คุณเก็บลิขสิทธิ์งานก่อนหน้าของคุณและจะให้แก่พวกเขาภายใต้เงื่อนไขใบอนุญาต X (MIT งานถ้าคุณตกลงกับด้านโอเพนซอร์สของมันอธิบายไว้ข้างต้น ) B) พวกเขายอมรับข้อกำหนดเหล่านี้และ C) งานก่อนหน้านี้คืออะไร
สำหรับ (A) และ (B) คุณสามารถให้พวกเขาเซ็นหรือตกลงเป็นลายลักษณ์อักษรถึงสิ่งที่อ้างอิงหรือรวมถึงใบอนุญาตและพวกเขาเข้าใจว่าคุณกำลังนำรหัสไปยังตารางภายใต้ข้อกำหนดเหล่านั้น ในฐานะที่เป็น (C) ฉันไม่แน่ใจว่าสิ่งที่เป็นมาตรฐานของการทำเช่นนี้จะเป็น แต่มีเหตุผล หากขนาดไม่ใหญ่มากคุณสามารถพิมพ์รหัสและรวมไว้ในภาคผนวกเป็นสำเนาของข้อตกลงที่ทั้งคุณและนายจ้างของคุณลงนาม เก็บสำเนาของคุณพร้อมลายเซ็นของพวกเขาไว้ ถ้ามันใหญ่เกินไปที่จะพิมพ์จริงดูเหมือนว่า md5 hash จะมีประโยชน์ตรงนี้ บางทีคุณอาจอ้างถึงเป็น "ซิปไฟล์ชื่อ X ในพื้นที่เก็บข้อมูลส่วนตัว github /, (หรือไซต์ ftp, ฯลฯ ) ซึ่งมีแฮช md5 ของ XXXXXX ... และถูกส่งไปยัง บริษัท Y ที่ส่งคืน Z วันที่" จากนั้นคุณสามารถส่งอีเมลไปยังผู้จัดการของคุณหรือทนายความของพวกเขาหรือใครก็ตามจากบัญชีอีเมลส่วนตัวของคุณและแม้ว่าพวกเขาจะลบสำเนาของพวกเขาคุณยังคงเป็นของคุณและพวกเขาไม่สามารถโต้แย้งได้ว่าคุณได้ทำนายรหัส md5 ในอนาคต . ในทางทฤษฎีแล้วจะป้องกันไม่ให้พวกเขาอ้างสิทธิ์ในสิ่งอื่นใดบนท้องถนน