Đạo luật An toàn Trực tuyến Vương quốc Anh gây gián đoạn phát triển Mã nguồn Mở khi Kho lưu trữ Mã then chốt Chặn Truy cập
Một sự cố kỹ thuật ảnh hưởng đến việc xây dựng gói NixOS đã tiết lộ những hậu quả rộng lớn hơn của Đạo luật An toàn Trực tuyến Vương quốc Anh 2023, khi các nhà phát triển ở Vương quốc Anh thấy mình không thể truy cập vào các kho lưu trữ mã nguồn mở thiết yếu. Vấn đề nảy sinh khi repo.or.cz, một dịch vụ lưu trữ Git lâu đời, bắt đầu chặn tất cả các kết nối từ địa chỉ IP của Vương quốc Anh, viện dẫn gánh nặng tuân thủ quá lớn mà luật mới này áp đặt.
Phân tích Kỹ thuật: Khi Quá trình Xây dựng Gói Phần mềm Thất bại
Các nhà phát triển cố gắng xây dựng các gói như docutils, tinycc và cdimgtools trên các hệ thống đặt tại Vương quốc Anh đã gặp phải các lỗi không rõ nguyên nhân. Hàm fetchFromRepoOrCz trong Nixpkgs, được thiết kế để tải mã nguồn từ repo.or.cz, đã trả về các trang thông báo lỗi HTML thay vì các kho lưu trữ mã nguồn như mong đợi. Khi các hệ thống build cố gắng giải nén các tệp này, chúng nhận được lỗi không đúng định dạng gzip vì các tải xuống chứa thông báo chặn theo địa lý thay vì mã thực tế.
Sự cố này ảnh hưởng đến ít nhất bảy gói trong hệ sinh thái NixOS, bao gồm các công cụ phát triển quan trọng và mô-đun Python. Mặc dù hầu hết người dùng dựa vào các bản build được lưu trong bộ nhớ đệm và sẽ không gặp vấn đề, nhưng các nhà phát triển sửa đổi các gói này hoặc build từ mã nguồn tại Vương quốc Anh hiện phải đối mặt với các quy trình làm việc bị gián đoạn. Thời điểm này đặc biệt có vấn đề vì nó trùng với việc gia tăng sự giám sát về bảo mật chuỗi cung ứng phần mềm và khả năng tái tạo.
Lưu ý: NixOS là một bản phân phối Linux được biết đến với cấu hình khai báo và khả năng build có thể tái tạo, khiến việc truy cập mã nguồn đáng tin cậy trở nên thiết yếu cho hoạt động của nó.
Các gói phần mềm bị ảnh hưởng trong NixOS:
- tinycc (Tiny C Compiler)
- cdimgtools (Công cụ thao tác ảnh đĩa CD)
- docutils (Tiện ích tài liệu Python)
- syslinux (Trình khởi động hệ thống)
- glpng (Thư viện OpenGL PNG)
- windowmaker (Trình quản lý cửa sổ, đã khai báo nhưng chưa sử dụng)
- nvim-treesitter (Trình phân tích cú pháp Neovim, đã khai báo nhưng chưa sử dụng)
Bối cảnh Pháp lý: Tại sao một Kho lưu trữ Mã lại Chặn Vương quốc Anh
Quyết định của Repo.or.cz bắt nguồn từ Đạo luật An toàn Trực tuyến Vương quốc Anh 2023, đạo luật yêu cầu các trang web lưu trữ nội dung do người dùng tạo ra phải thực hiện các đánh giá rủi ro toàn diện và triển khai các hệ thống xác minh độ tuổi. Những người điều hành dịch vụ đã giải thích lập trường của họ trên một trang chặn dành riêng, nói rằng việc tuân thủ sẽ liên quan đến việc đọc qua hàng nghìn trang hướng dẫn pháp lý - một nhiệm vụ bất khả thi đối với hoạt động do tình nguyện viên điều hành của họ.
Luật này mang theo các khoản tiền phạt tiềm năng lên tới 18 triệu Bảng Anh (xấp xỉ 22 triệu Đô la Mỹ), mà nhóm repo.or.cz mô tả là có thể phá hủy cuộc sống của các tình nguyện viên cá nhân. Đánh giá của họ kết luận rằng luật pháp này cố tình mơ hồ, cố tình quyết liệt trong các điều khoản thực thi và nhắm cụ thể vào các trang web thuộc mọi quy mô, kể cả các dự án sở thích. Quan điểm này phản ánh mối lo ngại ngày càng tăng trong số các nhà cung cấp dịch vụ nhỏ về phạm vi rộng của đạo luật.
Một bình luận viên đã nắm bắt được tâm trạng chung: Nếu chúng tôi có đủ khả năng để chỉ hy vọng vào điều tốt nhất, chúng tôi sẽ rất muốn làm vậy. Theo cách tôi hiểu, việc đánh giá tác động của luật này đối với họ là không khả thi, vì vậy họ muốn giữ an toàn hơn là mạo hiểm để cuộc sống của họ bị hủy hoại.
Các điểm chính của Đạo luật An toàn Trực tuyến 2023:
- Yêu cầu đánh giá rủi ro đối với các trang web có nội dung do người dùng tạo
- Bắt buộc áp dụng hệ thống xác minh độ tuổi
- Mức phạt tối đa: 18 triệu bảng Anh (~22 triệu đô la Mỹ)
- Áp dụng cho các trang web ở mọi quy mô, bao gồm cả các dự án tình nguyện
- Các điều khoản thực thi được mô tả là "cố ý nghiêm khắc"
Phản ứng của Cộng đồng: Từ Vấn đề Kỹ thuật đến Cuộc tranh luận Chính trị
Sự cố kỹ thuật nhanh chóng châm ngòi cho một cuộc thảo luận rộng hơn về quyền tự do internet và sự lạm quyền của các quy định. Nhiều nhà phát triển bày tỏ sự ủng hộ đối với cách tiếp cận thận trọng của repo.or.cz, thừa nhận rằng các hoạt động quy mô nhỏ không thể đủ khả năng cho các cuộc chiến pháp lý hoặc tiền phạt khổng lồ. Những người khác lưu ý về sự tương đồng với việc chặn địa chỉ IP của Nga, mặc dù vì những lý do khác - trong khi các lệnh chặn của Nga thường xuất phát từ lo ngại an ninh, thì lệnh chặn của Vương quốc Anh thể hiện phản ứng trước rủi ro pháp lý.
Cuộc trò chuyện đã tiết lộ những ý kiến chia rẽ về chính Đạo luật An toàn Trực tuyến. Một số người bảo vệ mục đích của luật là để bảo vệ trẻ em trực tuyến, trong khi những người khác lập luận rằng nó tạo ra những hậu quả ngoài ý muốn gây hại cho các tài nguyên kỹ thuật và giáo dục hợp pháp. Sự việc này cho thấy cách mà các luật được ban hành với ý định tốt có thể vô tình làm gián đoạn hệ sinh thái mã nguồn mở, thứ làm nền tảng cho sự phát triển phần mềm hiện đại.
Bức tranh Tổng thể: Mối lo ngại về Sự Phân mảnh Internet
Sự việc này đại diện cho một xu hướng ngày càng tăng của sự phân mảnh internet được thúc đẩy bởi luật pháp khu vực. Những lo ngại tương tự đang nổi lên ở Liên minh Châu Âu với các quy định Kiểm soát Trò chuyện được đề xuất và ở các tiểu bang khác nhau của Hoa Kỳ với luật xác minh độ tuổi. Luật Texas yêu cầu xác minh danh tính đối với nội dung người lớn gần đây đã được duy trì là hợp hiến, cho thấy cách tiếp cận quy định này có thể lan rộng.
Đối với cộng đồng mã nguồn mở, những diễn biến này đặt ra những thách thức đáng kể. Bản chất phi tập trung của phát triển mã nguồn mở dựa vào quyền truy cập phổ quát vào các kho lưu trữ mã và các công cụ cộng tác. Khi các quốc gia thực hiện các luật khiến các dịch vụ nhỏ không thể hoạt động toàn cầu một cách thực tế, toàn bộ hệ sinh thái sẽ phải chịu hậu quả. Một số nhà phát triển đã bắt đầu khám phá các giải pháp thay thế ngang hàng để phân phối mã nguồn, mặc dù các giải pháp này vẫn còn ở giai đoạn thử nghiệm.
Chi tiết Tác động Kỹ thuật:
- Lỗi build: "gzip: stdin: not in gzip format"
- Nguồn: hàm fetchFromRepoOrCz trong Nixpkgs
- Chuyển hướng đến: https://repo.or.cz/uk-blocked.html
- Người dùng bị ảnh hưởng: các lập trình viên tại Anh đang build từ mã nguồn
- Cách khắc phục tạm thời: Sử dụng binary cache hoặc dịch vụ VPN
Hướng tới Tương lai: Giải pháp và Cách thức Khắc phục
Đối với các nhà phát triển ở Vương quốc Anh bị ảnh hưởng, các giải pháp tức thời bao gồm sử dụng VPN để vượt qua các lệnh chặn theo địa lý hoặc sao chép các gói thiết yếu sang các dịch vụ lưu trữ thay thế. Cộng đồng NixOS có thể cần cập nhật các định nghĩa gói để sử dụng các vị trí nguồn khác nhau cho người dùng Vương quốc Anh. Tuy nhiên, đây chỉ là các biện pháp khắc phục tạm thời không giải quyết được vấn đề cơ bản về sự phân mảnh internet.
Về lâu dài, sự việc này làm nổi bật sự cần thiết của các hệ thống phân phối linh hoạt hơn cho phần mềm mã nguồn mở. Một số bình luận viên đề xuất lưu trữ có địa chỉ nội dung và mạng ngang hàng như các giải pháp tiềm năng có thể chịu được việc chặn theo khu vực. Những người khác ủng hộ các giải pháp chính trị, bao gồm các sửa đổi đối với Đạo luật An toàn Trực tuyến để miễn trừ cho các tài nguyên kỹ thuật và giáo dục.
Việc chặn repo.or.cz phục vụ như một dấu hiệu cảnh báo - khi cơ sở hạ tầng do tình nguyện viên điều hành phải đối mặt với rủi ro tồn tại từ luật pháp nước ngoài, toàn bộ hệ sinh thái mã nguồn mở trở nên mong manh hơn. Như một nhà phát triển đã lưu ý, kết quả này hoàn toàn có thể dự đoán trước nhưng vẫn khiến nhiều người ngạc nhiên khi nó bắt đầu ảnh hưởng đến công việc hàng ngày của họ.