何謂電腦對您忠誠?
作者:理查·史托曼我們說在您的電腦上執行自由軟體意味著其運作在您的控制之下。這隱含地預設了您的電腦會執行您的程式告訴它做的事情,僅此而已。換句話說,您的電腦會對您忠誠。
在 1990 年,我們認為這是理所當然的;但如今,許多電腦被設計成對其使用者不忠誠。現在有必要闡明,對於您的電腦而言,成為一個忠誠的平台,服從您透過告知它執行特定程式所表達的決策,這意味著什麼。
我們暫定的定義包含以下原則。
- 可安裝性
-
任何可以被其他人替換的軟體,使用者都必須被授權替換。
因此,如果電腦需要密碼或其他秘密才能替換其中的某些軟體,則出售電腦給您的人也必須告訴您該秘密。
- 對軟體的中立性
-
電腦將毫無偏見地執行您安裝在其中的任何軟體,並讓該軟體執行其程式碼所說的任何操作。
檢查所執行程式簽章的功能與此原則相容,前提是簽章檢查完全在使用者的控制之下。當情況如此時,該功能有助於實施使用者關於執行哪些程式的決策,而不是阻撓使用者的決策。相比之下,並非完全在使用者控制之下的簽章檢查違反了此原則。
- 對協定的中立性
-
電腦將毫無偏見地透過您安裝的軟體所實作的任何協定,與您指示它通訊的任何使用者和任何其他網路電腦進行通訊。
這意味著電腦不強加某種特定的服務而不是另一種,或某種協定而不是另一種。它不要求使用者獲得任何其他人的許可才能透過某種協定進行通訊。
- 對實作的中立性
-
當電腦使用任何給定的協定進行通訊時,它將毫無偏見地支持透過您選擇的任何程式碼(假設該程式碼實作了預期的協定)來進行通訊,並且它不會採取任何措施來幫助網際網路的任何其他部分區分您正在使用的程式碼或您可能對其進行的任何更改,或根據您的選擇進行歧視。
這意味著電腦拒絕遠端證明,也就是說,它不允許其他電腦透過網路確定您的電腦是否正在執行特定的軟體負載。遠端證明賦予網站權力,迫使您僅能透過具有您無法破解的數位版權管理 (DRM) 的應用程式連接到它們,從而剝奪您對用於與它們通訊的軟體的有效控制。
我們可以將遠端證明理解為一種通用方案,允許任何網站對您與之連接的本地軟體施加 tivoization 或「鎖死」。程式的簡單 tivoization 禁止修改後的版本正常運作;這使得該程式成為非自由軟體。網站的遠端證明禁止修改後的版本與使用它的那些網站一起運作,這使得該程式在使用這些網站時實際上成為非自由軟體。如果電腦允許網站阻止您使用修改後的程式與它們一起運作,則它對它們忠誠,而不是對您忠誠。
- 對通訊資料的中立性
-
當電腦使用任何協定接收資料時,它不會限制程式可以對透過該通訊接收的資料執行的操作。
任何硬體層級的數位版權管理 (DRM) 都違反了此原則。例如,硬體不得傳輸加密的視訊串流,以至於只有監視器才能解密它們。
- 可除錯性
-
電腦始終允許您分析正在運行的程式的操作。
- 完整性
-
以上原則適用於電腦的所有軟體介面和電腦執行的所有通訊。電腦不得具有任何不忠誠的可程式化功能或執行任何不忠誠的通訊。
例如,近期 Intel 處理器中的 AMT 功能運行非自由軟體,該軟體可以遠端與 Intel 通訊。除非停用,否則這會使系統變得不忠誠。
為了使電腦完全為您服務,它應隨附電腦中運行的軟體用於控制電腦的所有介面的文件。這樣的文件缺口本身並不意味著電腦主動不忠誠,但確實意味著它的某些方面不為您服務。根據該方面所做的事情,這可能是一個真正的問題,也可能不是。
我們要求讀者將有關此定義的批評和建議發送到 <computer-principles@gnu.org>。
此處定義的忠誠度是我們能想到的最有意義的最基本標準。它不要求電腦中的所有軟體都是自由軟體。然而,電腦中存在非自由軟體是驗證電腦是否忠誠,或確保其保持忠誠的障礙。
歷史
以下是此頁面中實質性變更的列表。