ร่างกฎหมาย Cyber Resilience Act (CRA) ของสหภาพยุโรปได้จุดประกายการถกเถียงอย่างรุนแรงในชุมชน open source โดยนักพัฒนาต่อต้านความพยายามที่จะปฏิบัติต่อพวกเขาเหมือนผู้จัดจำหน่ายเชิงพาณิชย์ ประเด็นขัดแย้งมุ่งเน้นไปที่คำถามว่าผู้มีส่วนร่วมแบบอาสาสมัครควรรับผิดชอบทางกฎหมายต่อปัญหาด้านความปลอดภัยในซอฟต์แวร์ที่พวกเขาแจกจ่ายฟรีหรือไม่
ผู้เล่นหลักที่ต่อต้าน CRA:
- Python Software Foundation (ขู่ว่าจะบล็อกผู้ใช้ในสหภาพยุโรป)
- Apache Software Foundation
- Linux Foundation
- Eclipse Foundation
ความเข้าใจผิดเรื่อง Supply Chain
หัวใจของการถกเถียงครั้งนี้อยู่ที่ความเข้าใจผิดพื้นฐานเกี่ยวกับการทำงานของซอฟต์แวร์ open source ห่วงโซ่อุปทานการผลิตแบบดั้งเดิมเกี่ยวข้องกับความสัมพันธ์แบบมีค่าตอบแทนระหว่างผู้จัดจำหน่ายและลูกค้า ด้วยสัญญา การรับประกัน และภาระผูกพันทางกฎหมาย อย่างไรก็ตาม นักพัฒนา open source โต้แย้งว่าพวกเขาดำเนินการภายใต้หลักการที่แตกต่างออกไปโดยสิ้นเชิง - พวกเขาเป็นอาสาสมัครที่แบ่งปันโค้ดอย่างเสรี ไม่ใช่ผู้จัดจำหน่ายเชิงพาณิชย์ที่ผูกพันด้วยข้อตกลงทางธุรกิจ
การขู่ของ Python Software Foundation ที่จะบล็อกผู้ใช้ใน EU ในปี 2023 เป็นตัวอย่างที่แสดงให้เห็นความตึงเครียดนี้ เมื่อเผชิญกับข้อกำหนดที่อาจต้องทำงานด้านความปลอดภัยและแก้ไขบั๊กตามความต้องการภายใต้การคุกคามด้วยค่าปรับที่ทำลายล้าง มูลนิธิได้พิจารณาการดำเนินการที่รุนแรง การเผชิญหน้าครั้งนี้บังคับให้นักกฎหมาย EU ต้องพิจารณาแนวทางของพวกเขาใหม่บางส่วน และเน้นให้เห็นถึงพลวัตของอำนาจที่เล่นอยู่
การป้องกันแบบ As Is
ใบอนุญาต open source ทั้งหมดมีข้อปฏิเสธความรับผิดชอบที่ระบุว่าซอฟต์แวร์ถูกจัดหาในสภาพ as is โดยไม่มีการรับประกัน ภาษาทางกฎหมายนี้ปฏิเสธความสัมพันธ์แบบผู้จัดจำหน่าย-ลูกค้าอย่างชัดเจน นักพัฒนาเน้นย้ำว่าผู้ใช้ยอมรับเงื่อนไขเหล่านี้เมื่อดาวน์โหลดซอฟต์แวร์ โดยรับทราบว่าพวกเขารับความเสี่ยงทั้งหมด
ชุมชนโต้แย้งว่าบริษัทที่เรียกร้องความรับผิดชอบจากอาสาสมัครที่ไม่ได้รับค่าตอบแทนในขณะที่ปฏิเสธที่จะจ่ายค่าตอบแทนให้พวกเขา สร้างพลวัตที่ไม่ยั่งยืน โครงการ open source ที่สำคัญหลายโครงการต่อสู้ทางการเงิน โดยผู้ดูแลแทบจะไม่สามารถจ่ายค่าใช้จ่ายพื้นฐานได้ แม้ว่าซอฟต์แวร์ของพวกเขาจะเป็นรากฐานของระบบเชิงพาณิชย์ขนาดใหญ่
คำปฏิเสธความรับผิดชอบของใบอนุญาตโอเพนซอร์สมาตรฐาน: "ซอฟต์แวร์นี้มีให้ 'ตามสภาพที่เป็น' โดยไม่มีการรับประกันใดๆ ไม่ว่าจะเป็นการรับประกันโดยชัดแจ้งหรือโดยนัย รวมถึงแต่ไม่จำกัดเพียงการรับประกันด้านการค้า ความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ และการไม่ละเมิดสิทธิ"
การหาจุดสมดุล
สมาชิกชุมชนบางคนเสนอแบบจำลองทางเลือกเพื่อแก้ไขความตึงเครียดนี้ แนวคิดของการแยกการแจกจ่ายซอฟต์แวร์ออกจากการพัฒนาได้รับความสนใจ - คล้ายกับวิธีที่การแจกจ่าย Linux เช่น Ubuntu หรือ Red Hat แพ็กเกจและสนับสนุนซอฟต์แวร์ที่สร้างโดยคนอื่น ภายใต้แบบจำลองนี้ ผู้แจกจ่ายจะรับผิดชอบต่อแพ็กเกจที่พวกเขาส่งมอบ ในขณะที่นักพัฒนาต้นฉบับยังคงเป็นอิสระจากภาระผูกพันเชิงพาณิชย์
การบังคับ: ข้ามผ่านขั้นตอนเอกสาร EU ทำงานด้านความปลอดภัย และแก้ไขบั๊กตามความต้องการ หรือเผชิญกับค่าปรับที่ทำลายล้าง
แนวทางใหม่ที่เกิดขึ้นอีกแนวทางหนึ่งเกี่ยวข้องกับการเรียกเก็บค่าธรรมเนียมการบำรุงรักษาสำหรับโครงสร้างพื้นฐานของโครงการในขณะที่รักษาซอฟต์แวร์ให้เป็นฟรี แบบจำลองนี้ยอมรับว่าแม้โค้ดอาจมีให้ใช้ฟรี แต่การบำรุงรักษา repositories ตัวติดตามปัญหา และการสนับสนุนชุมชนต้องใช้ทรัพยากร
โมเดลการจัดจำหน่ายทางเลือก:
- โมเดลแบบดั้งเดิม: นักพัฒนาสร้างและจัดจำหน่ายซอฟต์แวร์โดยตรง
- โมเดลการจัดจำหน่าย: ผู้จัดจำหน่ายบุคคลที่สาม (เช่น Ubuntu / Red Hat ) ทำการแพ็กเกจและสนับสนุนซอฟต์แวร์
- โมเดลค่าธรรมเนียมการบำรุงรักษา: ซอฟต์แวร์ฟรีพร้อมการสนับสนุนโครงสร้างพื้นฐานของโครงการแบบเสียค่าใช้จ่าย
สถานะการควบคุมปัจจุบัน
การพัฒนาล่าสุดแสดงให้เห็นว่าหน่วยงานกำกับดูแลของ EU อาจกำลังหาแนวทางที่สมดุลมากขึ้น ตามการอภิปรายของชุมชน CRA เวอร์ชันใหม่ดูเหมือนจะปกป้องผู้มีส่วนร่วม open source จากความรับผิดชอบ ในขณะที่กำหนดให้บริษัทต้องพัฒนาแผนสำหรับการจัดการการพึ่งพา open source ของพวกเขา การเปลี่ยนแปลงนี้แสดงถึงชิงชัยสำหรับความพยายามในการสนับสนุนโดยมูลนิธิใหญ่ๆ รวมถึง Apache, Linux และ Eclipse
การถกเถียงสะท้อนคำถามที่กว้างขึ้นเกี่ยวกับความยั่งยืนของโครงสร้างพื้นฐานดิจิทัล เมื่อสังคมพึ่งพาซอฟต์แวร์ที่ดูแลโดยอาสาสมัครมากขึ้น การหาวิธีสนับสนุนโครงการเหล่านี้โดยไม่กำหนดภาระทางกฎหมายที่ไม่สมเหตุสมผลยังคงเป็นความท้าทายที่ต่อเนื่อง จุดยืนที่พัฒนาของ EU อาจเป็นแบบจำลองสำหรับเขตอำนาจศาลอื่นๆ ที่ต่อสู้กับปัญหาที่คล้ายกัน
อ้างอิง: I am not a supplier