使用ssh密鑰對加密文件

使用ssh密鑰對加密文件

是否可以使用 gnupg 使用 ssh 金鑰對加密文字檔案?在我工作的地方,我們已經創建了密鑰對,並且對於使用這些密鑰發送加密檔案非常有用。謝謝!

答案1

在安全性方面,它是高度不建議使用相同的金鑰對進行身份驗證和資料加密。例如,如果用於身份驗證的金鑰被洩露,它也會洩露先前用它加密的所有資料。 (我對密碼學一點也不擅長,但我相信這方面也存在一些問題。)

此外,產生第二個金鑰只需不到 10 秒(且在一台使用了五年的計算機上)。


技術上可以使用 SSH 金鑰對加密數據,儘管正如@DavidSchwartz 所指出的那樣,只有 RSA 金鑰可用於此目的 - DSA 和 ECDSA 只能用於簽署。

然而,這並不意味著您可以簡單地將密鑰導入 GnuPG 並期望它能夠工作。這個帖子顯示 GnuPG 使用的 PGP 憑證和 SSH 使用的裸 RSA 金鑰之間的一些差異;簡而言之,GnuPG「金鑰」包含的資訊不僅僅是 RSA 參數,而且根本沒有編寫任何可以將現有金鑰包裝在 GPG 憑證中的工具 - 主要是為了避免安全性問題。

「其他」電子郵件加密標準 S/MIME 使用更簡單的憑證格式 (X.509),並且用於基於現有 RSA 金鑰建立憑證的廣泛可用工具。最後,你可以拋棄現有標準並推出自己的標準,使用普通的舊 RSA 函數進行加密,這些函數幾乎適用於每種程式語言,甚至可以通過openssl.挖掘自己的墳墓留給讀者當作練習。

相關內容