你知道你的電腦在你沒注意的時候在做什麼嗎?也許你已經註冊參與了SETI@home專案,該專案利用志願者電腦的分散式計算能力來尋找來自太空的無線電訊號。如果是這樣,你已經下載了特殊的軟體。但是,今天在《自然》雜誌上描述的一種新型的基於網際網路的分散式計算可以在你不知情或未經你同意的情況下使用你的機器。它的建立者稱之為“寄生計算”,它依賴於Web伺服器之間正常的通訊來同時解決一個複雜問題的許多部分。
聖母大學的研究人員阿爾伯特-拉斯洛·巴拉巴斯、文森特·弗裡、河雲·鄭和傑·布羅克曼決定用他們寄生方法測試一個被稱為NP完全的問題。這類問題,包括著名的旅行商問題,是對計算方法的標準測試,因為它們的定義是,沒有已知的多項式時間演算法可以解決它們。在這種情況下,該團隊選擇了一個可滿足性問題,該問題涉及找到一個滿足特定邏輯要求的布林方程的解。
數學家經常透過生成大量的潛在解來處理NP完全問題,這些潛在解可以被測試——理想情況下是同時或並行地測試。因此,巴拉巴斯及其同事設計了特殊的訊息,以便同時分發到Web伺服器,其中訊息的一部分包含可滿足性問題的可能解。具體來說,他們利用目標伺服器無論如何都要進行的計算:傳輸控制協議(TCP)中的一個簡單“校驗和”,通常用於測試訊息在傳輸過程中是否損壞,從而誘使目標伺服器測試答案是否有效。
支援科學新聞報道
如果您喜歡這篇文章,請考慮透過以下方式支援我們屢獲殊榮的新聞報道 訂閱。透過購買訂閱,您正在幫助確保有關當今塑造我們世界的發現和思想的有影響力的故事的未來。
科學家們設計了該訊息,以便如果它測試的答案有效,則被徵用的校驗和將傳送一個響應。如果無效,則TCP校驗和失敗,並且不會收到回覆。當他們對該方案進行現場測試時——使用一臺普通的臺式計算機和北美、亞洲和歐洲各地各種不知情的Web伺服器——它像一個魅力一樣奏效。“該實現僅代表寄生計算的概念證明,”作者強調說,但補充說,他們沒有看到任何根本性的技術障礙。這並不是說沒有可能的複雜情況。“寄生計算提出了關於未經同意使用遠端主機的有趣的倫理和法律問題,”他們寫道,“挑戰我們思考網際網路上可用資源的歸屬權。”