想查資料,卻不想讓伺服器知道你在查什麼

Private Information Retrieval 不把資料庫藏起來。它要保護的是一個更容易被忽略的訊號:你對哪一筆公開資料感興趣。

來源:Zero Knowledge Podcast Episode 407 | 原始發表日期:2026 年 7 月 29 日

SCROLL
PART 1 | 查詢本身會說話

資料是公開的,查什麼卻可能不是

Alex Hoover 將 Private Information Retrieval,簡稱 PIR,描述成一個直接的問題:使用者想從資料庫取回某筆資料,但不想讓持有資料庫的伺服器知道自己選了哪一筆。資料內容可以是公開的,查詢模式仍會透露人的位置、興趣、意圖,或下一步行動。

一般網路查詢把關鍵字、帳號或索引送給服務端,再由服務端回傳結果。HTTPS 可以保護傳輸途中不被旁觀者讀取,卻不會讓服務端忘記它收到的請求。PIR 想改變的是服務端看見查詢目標的這個前提。

PIR 保護的不是資料內容本身。它保護的是「使用者想拿哪一筆」這個選擇,讓資料庫能回答,卻無法把回答與特定索引連起來。

PART 2 | 代價不是魔法消失

少洩漏一個訊號,通常要多付一些計算

最直覺的私密查詢方式,是把整個資料庫都下載下來。伺服器當然不知道你要哪一筆,但頻寬成本很高。PIR 的研究目標是讓使用者與伺服器交換較短的訊息,同時避免伺服器辨識索引;代價可能轉移到伺服器計算、回應大小、預處理或更新成本。

訪談整理了 PIR 從理論構造走向實務的過程。單伺服器方案、批次查詢、關鍵字 PIR,以及可先做預處理的設計,都在回答不同限制:資料庫多大、查詢有多頻繁、是否需要更新、誰能承擔前置成本。

直接下載隱私強,卻把整個資料庫搬到使用者端。
PIR 查詢伺服器處理編碼請求,不應得知目標索引。
工程取捨頻寬、計算、預處理與更新成本要一起計算。
PART 3 | 區分預處理與查詢

能先準備,不代表資料庫從此不重要

節目特別更正一個技術細節:SimplePIR 的預處理並不是獨立於資料庫;它獨立的是被查詢的索引。這個差別看似小,卻關係到系統的真實部署條件。資料庫變更時,預處理是否需要重做,會影響建置成本與更新速度。

這也提醒讀者,不能只用「PIR 已經很快」判斷方案是否實用。必須問清楚:哪個步驟由誰做、何時做、依賴哪些資料、資料更新後發生什麼事。隱私技術的效能敘述,若沒有說明工作被移到哪裡,通常還不夠完整。

資料庫大小資料越大,掃描或回應的成本越不能忽略。
更新頻率會變動的資料庫,必須把更新與預處理一起估算。
查詢量高頻、批次查詢可能改變最合適的協定設計。
PART 4 | 區塊鏈的公開資料,也有私人意圖

公開鏈不等於每次讀取都該被看見

Hoover 把 PIR 放進區塊鏈情境:使用者可能想讀取某個狀態、取得 Merkle proof,或從大量公開紀錄找出與自己相關的資料。鏈上資料公開,並不表示每個人都願意讓 RPC、索引服務或中介者知道自己正在關注哪個帳戶、資產或合約。

這不代表 PIR 單獨解決所有隱私問題。它不會自動隱藏交易,也不會修補裝置、錢包或網路層的識別訊號。它提供的是較清楚的一層邊界:在資料讀取這件事上,讓查詢目標不必成為伺服器的觀測資料。

隱私不只是把資料鎖起來。
有時候,真正該被保留的,是你想從公開世界裡找出哪一件事。

Zero Knowledge Podcast Episode 407 談的是 PIR 的研究與工程取捨;不同方案的效能、信任假設與部署條件仍需分別檢查。

如果一個服務說它「支援私密查詢」,
你會先問哪件事?

選完之後,分享你的觀點

你的觀點

想聽完整訪談?

Zero Knowledge Podcast Episode 407 保留 Alex Hoover 對 PIR、關鍵字與批次查詢、預處理,以及區塊鏈資料讀取的完整討論。

閱讀完整文章 →