bambouville

金鑰

金鑰頁面(iPad 上位於側邊欄,iPhone 上為金鑰標籤頁)管理你的 SSH 金鑰。 私密金鑰的位元組只存在於 iOS 鑰匙圈中 —— Tessera 自己的資料庫只保存公開的中繼 資料(名稱、指紋、使用情形)。

產生金鑰

輕點 + 產生 並選擇一種演算法:

  • Ed25519 ——「快速、現代的預設選項」。儲存在鑰匙圈中的軟體金鑰;可以輸出 為回復檔案,並在裝置之間移轉。
  • P-256 Enclave ——「綁定裝置」。在 Secure Enclave 內部產生,而且 永遠不會離開:這把金鑰無法輸出,也無法移轉到其他裝置。裝置一旦遺失,金鑰 就沒了 —— 請在別處保留第二把已授權的金鑰。

不支援產生 RSA 金鑰;請見疑難排解

輸入金鑰

輕點輸入並選擇一個 OpenSSH 私密金鑰檔案(最大 1 MB)。如果該檔案有密碼短語 保護,該密碼短語只會用來解密一次,不會被保留。

  • 只接受 Ed25519 的輸入。由於目前 SSH 堆疊只能提供已棄用的 RSA/SHA-1 簽章,RSA 輸入已停用 —— 請改用 Ed25519。
  • 每當畫面被擷取或 App 進入背景時,輸入面板都會自我隱藏(「已隱藏私密金鑰 輸入」)。

生物辨識保護

每把金鑰都有一個要求生物辨識或密碼開關:開啟後,Tessera 每次存取該金鑰時 都會要求 Face ID / Touch ID 或裝置密碼。對軟體 Ed25519 金鑰而言,這是由 iOS 在 鑰匙圈邊界處強制執行的;對 P-256 Enclave 金鑰而言,金鑰材料永遠不會離開 Secure Enclave,而每次使用前的驗證由 Tessera 自己強制執行 —— 這也正是這項設定始終可以 更改的原因。只有在此項可設定之前建立的金鑰,才會帶有鎖定的已強制標記。

連續連線授權

設定 → 安全性 → 為金鑰的連續連線授權 下,一次生物辨識授權可在 30 秒內 涵蓋以同一把金鑰連往同一端點的重複連線 —— 這樣 tmux 分頁和檔案傳輸就不會各自 跳出提示。App 進入背景一律會使這些授權失效,即使 App 鎖定是關閉 的也一樣。

產生或輸入金鑰時會提供這個開關,之後也可以從金鑰詳細資料中更改。例外是在此項 可設定之前建立的 P-256 Enclave 金鑰:它們帶有鎖定的已強制標記,要更改就得 產生新金鑰並輪換。

金鑰詳細資料面板

輕點某把金鑰即可查看它的類型、指紋 (sha256)(相容 OpenSSH)和公開金鑰。從 這裡你可以:

  • 拷貝公開金鑰 —— 也就是那一行 authorized_keys
  • 拷貝到主機… —— 把它安裝到伺服器上(見下文)。
  • 輸出私密金鑰… —— 僅限 Ed25519;會寫出以密碼短語加密的 openssh-key-v1 回復檔案。
  • 刪除本機私密金鑰… —— 請見刪除

使用者區段會列出參照這把金鑰的主機。

在主機上安裝金鑰

拷貝到主機… 會讓你挑選一台主機,顯示確切的 authorized_keys 內容,並透過 SSH 將它附加到 ~/.ssh/authorized_keys,同時加上檢驗標記。

  • 你必須先信任該主機金鑰:先連線一次以核對,然後重試。
  • 若某台主機已經使用該金鑰進行驗證,Tessera 會拒絕再把它安裝上去。
  • 已完成的安裝會被記錄,刪除流程也會回報它們(「已知的遠端安裝數:N」)。

輸出與回復

金鑰的回復區段會追蹤它的備份狀態 —— 是否存在已驗證的回復檔案輸出(含日期 和指紋),而對 Enclave 金鑰則會持續提醒:Secure Enclave 中的私密材料無法離開 本裝置。

  • 保護回復金鑰… —— 以密碼短語輸出。
  • 驗證回復檔案… —— 檢查某個回復檔案是否仍與該金鑰相符。
  • 從回復檔案回復… —— 以指紋核對的方式,修復鑰匙圈中缺失或不相符的材料 (例如從備份還原之後)。

在廣泛安裝軟體金鑰之前先備份 —— 一把無法回復的金鑰,會在密碼驗證被停用之後 把你自己鎖在門外。

刪除金鑰

刪除本機私密金鑰… 會在確認後把金鑰從鑰匙圈中移除。在本機刪除不會撤銷 你伺服器上任何 authorized_keys 項目 —— 當某台已記錄的主機有可用的備用憑證 時,刪除流程會提供「在 N 台已記錄的主機上撤銷並刪除」替你移除它們;否則, 若這把金鑰應該停止作用,就得自行在每台伺服器上移除對應的那幾行。

舊版遺留下來的 RSA 金鑰會以停用狀態顯示。

孤立的鑰匙圈項目

iOS 會在 App 刪除並重新安裝後仍保留鑰匙圈項目,因此金鑰的中繼資料和金鑰材料 可能會脫節。清單中若有金鑰的私密材料已不存在,會顯示缺少私有材料標記 (可用從回復檔案回復修復);而沒有對應金鑰的殘留私密材料,則會 以「N 個孤立的鑰匙圈項目」呈現,並附帶**查看清理…**流程 —— 若有疑慮,請先輸出 回復檔案再刪除。

裝置存取

當你的另一台裝置透過授權此裝置在某台主機上完成 註冊時,該授權會記錄在這裡:對端裝置、方向、主機和金鑰指紋。撤銷會利用你 自己的存取權限,把那台裝置的公開金鑰從主機上移除 —— 方式和當初安裝時相同。 如果無法連上該主機,該項目會維持標記為不確定,方便你重試或手動清理。

這些位元組究竟在哪裡

  • 軟體 Ed25519 金鑰:iOS 鑰匙圈(不同步)。
  • P-256 金鑰:Secure Enclave,設計上就無法輸出。
  • Tessera 自己的資料庫:公開金鑰、指紋、標籤、使用情形 —— 絕不包含私密材料。

完整的強化細節,請見公開的 私密金鑰安全稽核