我原本以爲,在 OpenGradient 私有推理裏,風險最大的部分在於隔離區(enclave)。

結果卻總是回到請求哈希上。

這就是不祥之兆。

因爲“純淨版”的說法聽起來很棒:封裝後的請求會被送進去。TEE(可信執行環境)進行響應。隨後返回簽名輸出。SDK 檢查 "tee_request_hash",發現它與客戶端實際發送的內容一致。

這就像一個小小的安心物件。

但它也很危險。

假設某個內部風險臺正在用 OpenGradient 的私有推理來處理一份信用備忘錄或制裁備註。上游把提示詞包裝(frame)好了。可能很糟。太狹窄。缺少上下文。有人暗自夾帶了一個腐壞的前提,並把它包裝成“上下文”。然後封裝請求送入,TEE 作答,簽名輸出返回;SDK 檢查 "tee_request_hash",所有人都在提早半步鬆口氣。

這就是分岔點。

@OpenGradient "tee_request_hash" 匹配。
SDK 很滿意。
提示詞的包裝方式仍然可能是一團糟。

這一點一直困擾着我。

因爲一旦 SDK 看到 "tee_request_hash" 匹配,提示就開始“借用”本不該獲得的審查。它證明了對應關係。僅此而已。

同一個封裝請求進入。
同一個封裝請求被迴應。
就這樣。

也可能依然是錯誤的提示詞。

我見過這種手法。只要某個精確的微小檢查通過,整個房間就會在錯誤的地方開始鬆懈。審查變軟。OpenGradient 上那裏的簽名輸出就擺在那裏。"tee_request_hash" 也匹配。於是突然之間,沒有人再想要重新打開對提示包裝方式的審視。

真是妙。

而等到那時,OpenGradient 已經把它的工作做完了。TEE 路徑成立。"tee_request_hash" 匹配。簽名輸出也回來了。醜陋的部分在更早的時候:提示詞的包裝、輸入判斷——以及在隔離區(enclave)看到文件之前就被塞進去的任何那種微小的人類捷徑。

那麼,錯誤到底藏在哪裏?

不在哈希裏。

這纔是惱人的部分。

如果提示詞是錯的,而 "tee_request_hash" 卻是對的,那麼究竟還驗證了什麼?除了“錯誤被完好無損地送達”之外。

是錯誤的東西。但被正確地交付。就這樣。

@OpenGradient $OPG #OPG