比特幣挖礦能不能順便解科學問題?

比特幣挖礦能不能順便解科學問題?的文章封面插畫

有些分散式科學計畫會借用閒置電腦,協助模擬分子、分析天文訊號或搜尋數學結果。比特幣挖礦同樣投入大量機器反覆運算,自然會讓人想到:這些計算能否在保護帳本之餘,也替研究解出一道實際問題?

不過,把「計算量很大」當成可自由替換的共同規格,忽略了工作量證明真正困難的部分。它要讓互不信任的參與者持續取得公平的新題目,讓答案昂貴難找、便宜好驗,還要把每次工作牢牢綁在當下的候選區塊上。

因此,現行比特幣礦機無法只換一套應用程式,就把同一批雜湊試算改成蛋白質模擬。研究者可以另行設計「有用工作量證明」,但那會是一套帶著新假設、新規則與新攻擊面的共識設計,並非替既有挖礦加上一項背景工作。

雜湊搜尋交出的是容易查驗的工作憑證

礦工先挑選交易並建立候選區塊。區塊標頭會包含前一個區塊的雜湊、交易所形成的默克爾根、時間、難度目標與可調整的 nonce 等欄位。礦機反覆改變可用資料並計算 SHA-256,直到某個結果低於當時的目標值。

單次嘗試的結果近似無法預測。先前失敗再多次,也不會讓下一次自動更接近答案;增加成功機會的直接方法,是在有限時間內做更多嘗試。可是,找到結果之後,全節點只要重新計算標頭雜湊、比較目標,再檢查區塊內交易是否符合規則,就能迅速拒絕偽造或無效資料。

這項不對稱很關鍵:提出證明平均需要大量試算,驗證者不用重演全部失敗過程。合格雜湊通常沒有獨立的科學產物,卻提供一張可公開查驗、可依難度估計工作量的憑證。協議利用的正是這個功能。

工作必須黏在眼前這一頁帳本上

候選區塊裡只要換掉一筆交易,默克爾根就會改變;前一個區塊一旦換成新的鏈尖,標頭也跟著改變。原本找到的雜湊幾乎不可能繼續合格,礦工必須針對新的內容重新搜尋。

這種綁定讓工作不能輕易搬到另一個競爭區塊,也難以在很久以前囤好答案,等需要時再拿出來取得提議權。後續區塊再把前一段歷史接進自己的標頭,想改寫舊交易的人便得重新追趕其後累積的工作。

科學計算的目標通常不同。一份成功的分子模擬或最佳化結果,往往希望能被重複查閱、交給多個研究者使用;它的價值不會因十分鐘後出現新區塊就消失。若要把這類成果拿來決定區塊勝負,協議還得證明工作確實針對目前鏈尖與特定候選內容完成,不能把舊答案貼到新區塊重複領取資格。

誰出題,也會成為安全邊界

比特幣的雜湊題目幾乎取之不盡。礦工可以持續改變 nonce、Coinbase 交易中的額外資料或時間欄位,產生新的標頭;網路則用一個數值目標統一調整難度。題目不需要由某間實驗室逐份核准,也不必先判斷哪一題比較有社會價值。

真實研究工作往往有明確提出者、資料來源與完成期限,而且每一題的難度未必能事前準確估計。若區塊提議權取決於外部提交的任務,系統就要回答誰能出題、題目是否暗藏捷徑、某些人是否預先知道答案,以及研究需求不足時要拿什麼維持出塊。

即使所有題目都出於善意,衡量工作也不容易。某些模擬要重做大量步驟才能確認,最佳化問題則常只能證明「找到一個更好的答案」,難以便宜證明它已經是最佳答案。若每個全節點都得花費接近礦工的資源才能核對結果,工作量證明原本便宜驗證的優勢就會消失。

有用工作量仍是另一套研究方向

以上困難不表示「有用工作量證明」在邏輯上永遠做不到。已有研究嘗試把組合最佳化、矩陣運算或其他任務,配上可快速驗證的證明、由鏈上狀態決定的輸入,以及防止預先計算與重複使用的規則。每種安排都要重新評估驗證成本、難度穩定性、任務供應與作弊優勢。

「有用」本身也會增加新的集中風險。若只有少數機構能提供資料、判定成果用途,或只有特定硬體擅長某類任務,它們可能同時影響工作來源與算力分布。外部市場願不願意購買成果,也會成為原本雜湊規則沒有的變數。

現有比特幣礦機多半是為 SHA-256 製作的專用硬體,缺少執行一般科學程式所需的彈性。改做另一種運算通常意味著更換設備;若連區塊有效條件也要改,還需要節點軟體與網路參與者共同採用新的共識規則。這已超出能源再利用或程式排程的範圍。

所以,判斷挖礦計算是否「有用」,要先說清楚用途指向哪一層。現行雜湊搜尋的外部研究產物很少,它在比特幣內部則負責分配區塊提議機會、讓工作容易驗證,並提高改寫歷史的成本。這些功能不會自動證明能源代價合理;同樣地,替計算附加一項科學用途,也不會自動保留原本的安全性。能否同時做到兩者,取決於完整協議如何處理出題、綁定、驗證與難度,而非只看運算名稱聽起來是否更有價值。