กฎหมายความปลอดภัยออนไลน์ของสหราชอาณาจักรสร้างความเสียหายต่อการพัฒนาโอเพ่นซอร์ส เมื่อคลังรหัสหลักปิดกั้นการเข้าถึง
ปัญหาทางเทคนิคที่ส่งผลต่อการสร้างแพ็คเกจ NixOS ได้เผยให้เห็นผลกระทบในวงกว้างของกฎหมาย Online Safety Act 2023 ของสหราชอาณาจักร โดยนักพัฒนาในสหราชอาณาจักรไม่สามารถเข้าถึงคลังรหัสโอเพ่นซอร์สที่สำคัญได้ ปัญหานี้เกิดขึ้นเมื่อ repo.or.cz ซึ่งเป็นบริการโฮสต์ Git ที่มีมายาวนาน เริ่มปิดกั้นการเชื่อมต่อทั้งหมดจากที่อยู่ IP ในสหราชอาณาจักร โดยอ้างถึงภาระการปฏิบัติตามกฎหมายที่สูงจนรับไม่ไหวซึ่งถูกบังคับใช้โดยกฎหมายใหม่นี้
การวิเคราะห์ทางเทคนิค: เมื่อการสร้างแพ็คเกจล้มเหลว
นักพัฒนาที่พยายามสร้างแพ็คเกจเช่น docutils, tinycc และ cdimgtools บนระบบที่ตั้งอยู่ในสหราชอาณาจักรประสบกับความล้มเหลวที่ไม่สามารถเข้าใจได้ ฟังก์ชัน fetchFromRepoOrCz ใน Nixpkgs ซึ่งออกแบบมาเพื่อดาวน์โหลดซอร์สโค้ดจาก repo.or.cz กำลังส่งคืนหน้าเว็บข้อผิดพลาด HTML แทนที่ไฟล์เก็บถาวรซอร์สโค้ดที่คาดหวังไว้ เมื่อระบบพยายามแกะไฟล์เหล่านี้ พวกเขาได้รับข้อผิดพลาด not in gzip format เนื่องจากสิ่งที่ดาวน์โหลดมาคือข้อความการปิดกั้นตามภูมิศาสตร์ แทนที่จะเป็นโค้ดจริง
ปัญหานี้ส่งผลกระทบต่ออย่างน้อยเจ็ดแพ็คเกจในระบบนิเวศ NixOS รวมถึงเครื่องมือการพัฒนาที่สำคัญและโมดูล Python แม้ผู้ใช้ส่วนใหญ่จะพึ่งพาการสร้างที่แคชไว้และจะไม่ประสบปัญหา แต่ตอนนี้นักพัฒนาที่ปรับเปลี่ยนแพ็คเกจเหล่านี้หรือกำลังสร้างจากซอร์สในสหราชอาณาจักรต้องเผชิญกับเวิร์กโฟลว์ที่เสียหาย ช่วงเวลานี้เป็นปัญหาอย่างยิ่งเพราะมันเกิดขึ้นพร้อมกับการตรวจสอบความปลอดภัยของซัพพลายเชนซอฟต์แวร์และความสามารถในการทำซ้ำที่เพิ่มขึ้น
หมายเหตุ: NixOS คือการกระจาย Linux ที่รู้จักจากค่าการกำหนดค่าเชิงประกาศและการสร้างที่สามารถทำซ้ำได้ ทำให้การเข้าถึงซอร์สโค้ดที่เชื่อถือได้เป็นสิ่งสำคัญต่อการทำงานของมัน
แพ็กเกจที่ได้รับผลกระทบใน NixOS:
- tinycc (Tiny C Compiler)
- cdimgtools (เครื่องมือจัดการอิมเมจ CD)
- docutils (ยูทิลิตี้เอกสาร Python)
- syslinux (Boot loader)
- glpng (ไลบรารี OpenGL PNG)
- windowmaker (Window manager, ประกาศไว้แต่ไม่ได้ใช้งาน)
- nvim-treesitter (Neovim parser, ประกาศไว้แต่ไม่ได้ใช้งาน)
พื้นหลังทางกฎหมาย: เหตุใดคลังรหัสจึงปิดกั้นสหราชอาณาจักร
การตัดสินใจของ Repo.or.cz เกิดจากกฎหมาย Online Safety Act 2023 ของสหราชอาณาจักร ซึ่งกำหนดให้เว็บไซต์ที่โฮสต์เนื้อหาที่สร้างโดยผู้ใช้ต้องดำเนินการประเมินความเสี่ยงอย่างกว้างขวางและใช้ระบบการยืนยันอายุ ทีมผู้ให้บริการอธิบายตำแหน่งของพวกเขาบนหน้าเพจที่ปิดกั้นโดยระบุว่าการปฏิบัติตามกฎหมายจะต้องเกี่ยวข้องกับการอ่านแนวทางทางกฎหมายหลายพันหน้า ซึ่งเป็นงานที่เป็นไปไม่ได้สำหรับการดำเนินงานที่บริหารโดยอาสาสมัคร
กฎหมายนี้มีค่าปรับที่อาจสูงถึง 18 ล้านปอนด์สเตอร์ลิง (ประมาณ 22 ล้านดอลลาร์สหรัฐ) ซึ่งทีม repo.or.cz อธิบายว่ามันจะ ทำลายชีวิต สำหรับอาสาสมัครแต่ละคน การประเมินของพวกเขาสรุปว่ากฎหมายนี้ตั้งใจให้คลุมเครือ ตั้งใจให้รุนแรงในบทบัญญัติการบังคับใช้ และมุ่งเป้าโดยเฉพาะต่อเว็บไซต์ทุกขนาด รวมถึงโครงการงานอดิเรก มุมมองนี้สะท้อนถึงความกังวลที่เพิ่มขึ้นในหมู่ผู้ให้บริการรายย่อยเกี่ยวกับขอบเขตที่กว้างขวางของกฎหมาย
ผู้แสดงความคิดเห็นหนึ่งคนจับใจความความรู้สึกนี้ได้ว่า: หากเราสามารถจ่ายได้เพื่อแค่หวังในสิ่งที่ดีที่สุด เราก็อยากทำเช่นนั้น วิธีที่ผมเข้าใจเรื่องนี้คือ มันไม่สมเหตุสมผลสำหรับพวกเขาที่จะประเมินว่ากฎหมายส่งผลกระทบต่อพวกเขาอย่างไร ดังนั้นพวกเขาจึงต้องการอยู่ข้างที่ปลอดภัยมากกว่าที่จะเสี่ยงให้ชีวิตของพวกเขาถูกทำลาย
ประเด็นสำคัญของ Online Safety Act 2023:
- กำหนดให้ต้องมีการประเมินความเสี่ยงสำหรับเว็บไซต์ที่มีเนื้อหาที่ผู้ใช้สร้างขึ้น
- บังคับใช้ระบบยืนยันอายุ
- ค่าปรับสูงสุด: 18 ล้านปอนด์ (~22 ล้านดอลลาร์สหรัฐ)
- ใช้กับเว็บไซต์ทุกขนาด รวมถึงโครงการอาสาสมัคร
- บทบัญญัติการบังคับใช้ถูกอธิบายว่า "รุนแรงโดยเจตนา"
ปฏิกิริยาจากชุมชน: จากปัญหาทางเทคนิคสู่การอภิปรายทางการเมือง
ปัญหาทางเทคนิคได้จุดประกายการอภิปรายที่กว้างขึ้นอย่างรวดเร็วเกี่ยวกับเสรีภาพทางอินเทอร์เน็ตและการบังคับใช้กฎหมายที่มากเกินไป นักพัฒนาหลายคนแสดงการสนับสนุนแนวทางที่ระมัดระวังของ repo.or.cz โดยตระหนักว่าการดำเนินงานขนาดเล็กไม่สามารถสู้คดีทางกฎหมายหรือจ่ายค่าปรับจำนวนมหาศาลได้ คนอื่นๆ ชี้ให้เห็นความคล้ายคลึงกับการปิดกั้นที่อยู่ IP ของรัสเซีย แม้จะด้วยเหตุผลที่ต่างกัน - ในขณะที่การปิดกั้นของรัสเซียมักเกิดจากความกังวลด้านความปลอดภัย การปิดกั้นสหราชอาณาจักรแสดงถึงการตอบสนองต่อความเสี่ยงด้านกฎระเบียบ
การสนทนาเปิดเผยความคิดเห็นที่แบ่งออกเกี่ยวกับตัวกฎหมาย Online Safety Act เอง บางคนปกป้องเจตนาของกฎหมายในการปกป้องเด็กออนไลน์ ในขณะที่คนอื่นๆ โต้แย้งว่ามันสร้างผลที่ตามมาโดยไม่ตั้งใจซึ่งเป็นอันตรายต่อทรัพยากรทางเทคนิคและทางการศึกษาที่ถูกต้อง เหตุการณ์นี้แสดงให้เห็นว่ากฎหมายที่มีเจตนาดีสามารถรบกวนระบบนิเวศโอเพ่นซอร์สซึ่งเป็นรากฐานของการพัฒนาซอฟต์แวร์สมัยใหม่โดยไม่ได้ตั้งใจได้อย่างไร
ภาพรวมที่ใหญ่ขึ้น: ความกังวลเกี่ยวกับการแบ่งแยกทางอินเทอร์เน็ต
เหตุการณ์นี้แสดงถึงแนวโน้มที่เพิ่มขึ้นของการแบ่งแยกทางอินเทอร์เน็ตซึ่งขับเคลื่อนโดยกฎหมายระดับภูมิภาค ความกังวลที่คล้ายกันกำลังเกิดขึ้นในสหภาพยุโรปด้วยข้อบังคับ Chat Control ที่ถูกเสนอ และในหลายรัฐของสหรัฐอเมริกาที่มีกฎหมายการยืนยันอายุ กฎหมายของ Texas ที่กำหนดให้ต้องยืนยันตัวตนสำหรับเนื้อหาผู้ใหญ่เพิ่งได้รับการยืนยันว่าถูกต้องตามรัฐธรรมนูญ ซึ่งบ่งชี้ว่าแนวทางด้านกฎระเบียบนี้อาจแพร่กระจาย
สำหรับชุมชนโอเพ่นซอร์ส การพัฒนานี้นำมาซึ่งความท้าทายที่สำคัญ ลักษณะการกระจายศูนย์ของการพัฒนาโอเพ่นซอร์สต้องพึ่งพาการเข้าถึงคลังรหัสและเครื่องมือการทำงานร่วมกันอย่างเป็นสากล เมื่อประเทศต่างๆ ดำเนินการใช้กฎหมายที่ทำให้บริการขนาดเล็กไม่สามารถดำเนินงานในระดับโลกได้อย่างเหมาะสม ระบบนิเวศทั้งหมดก็ได้รับความเสียหาย นักพัฒนาบางคนกำลังสำรวจทางเลือกแบบเพียร์ทูเพียร์สำหรับการกระจายซอร์สอยู่แล้ว แม้ว่าคำตอบเหล่านี้จะยังคงอยู่ในขั้นทดลอง
รายละเอียดผลกระทบทางเทคนิค:
- ข้อผิดพลาดในการ Build: "gzip: stdin: not in gzip format"
- แหล่งที่มา: ฟังก์ชัน fetchFromRepoOrCz ใน Nixpkgs
- เปลี่ยนเส้นทางไปยัง: https://repo.or.cz/uk-blocked.html
- ผู้ใช้ที่ได้รับผลกระทบ: นักพัฒนาที่อยู่ในสหราชอาณาจักรที่ทำการ build จากซอร์สโค้ด
- วิธีแก้ไขชั่วคราว: ใช้ binary caches หรือบริการ VPN
มองไปข้างหน้า: วิธีแก้ปัญหาและทางออก
สำหรับนักพัฒนาในสหราชอาณาจักรที่ได้รับผลกระทบ วิธีแก้ปัญหาในทันทีรวมถึงการใช้ VPN เพื่อเลี่ยงการปิดกั้นตามภูมิศาสตร์ หรือการทำมิเรอร์ของแพ็คเกจที่สำคัญไปยังบริการโฮสต์ทางเลือก ชุมชน NixOS อาจจำเป็นต้องอัปเดตคำจำกัดความแพ็คเกจเพื่อใช้ตำแหน่งที่มาที่แตกต่างกันสำหรับผู้ใช้ในสหราชอาณาจักร อย่างไรก็ตาม สิ่งเหล่านี้เป็นเพียงการแก้ไขชั่วคราวที่ไม่ได้จัดการกับปัญหาพื้นฐานของการแบ่งแยกทางอินเทอร์เน็ต
ในระยะยาว เหตุการณ์นี้เน้นย้ำถึงความจำเป็นของระบบการกระจายซอฟต์แวร์โอเพ่นซอร์สที่ยืดหยุ่นมากขึ้น ผู้แสดงความคิดเห็นบางคนแนะนำให้ใช้ที่เก็บข้อมูลที่อ้างอิงตามเนื้อหาและเครือข่ายเพียร์ทูเพียร์เป็นวิธีแก้ปัญหาที่อาจเกิดขึ้น ซึ่งสามารถทนทานต่อการปิดกั้นตามภูมิภาคได้ คนอื่นๆ สนับสนุนวิธีแก้ปัญหาทางการเมือง รวมถึงการแก้ไขกฎหมาย Online Safety Act เพื่อยกเว้นทรัพยากรทางเทคนิคและทางการศึกษา
การปิดกั้นของ repo.or.cz ทำหน้าที่เป็นสัญญาณเตือน - เมื่อโครงสร้างพื้นฐานที่บริหารโดยอาสาสมัครเผชิญกับความเสี่ยงต่อการดำรงอยู่จากกฎหมายต่างประเทศ ระบบนิเวศโอเพ่นซอร์สทั้งหมดก็เปราะบางมากขึ้น ดังที่นักพัฒนาคนหนึ่งระบุไว้ว่า ผลลัพธ์นี้ คาดเดาได้ทั้งหมด แต่ก็ยังทำให้หลายคนประหลาดใจเมื่อมันเริ่มส่งผลกระทบต่องานประจำวันของพวกเขา