Reference-Request

加密 PGP 私鑰的二進制格式?

  • June 21, 2016

問題的簡短版本:我想從加密的私鑰二進製表示中刪除任何可預測的資訊。有沒有人提示加密 GnuPG 私鑰 (.gpg) 的二進制格式記錄在哪裡?

問題的更長解釋版本:嘿,伙計們,基本上我正在嘗試編寫一個程序,該程序使用隱寫術將加密的私鑰隱藏在隨機使用者可選擇的介質(例如 JPEG 圖像)中。

我假設攻擊者知道媒體的種類,但不知道具體的文件,如果私鑰不是完全隨機的,那將毫無用處。

基本上,我想刪除任何可預測的資訊,例如使用的加密類型(可能是 AES-128-CBC),並在從介質中檢索後重建密鑰。錯誤選擇的媒介應該提供看似有效的私鑰。因此,攻擊者必須暴力破解所有可能儲存介質的所有可能密碼。

這通常是一種愚蠢而徒勞的努力嗎?

從我查看的加密密鑰和收集的資訊中,我猜想該密鑰是像“SALT + EncryptedByteStream + InformationOnEncryptionAlgorithm”一樣連接起來的。有沒有人暗示在哪裡可以找到它?我現在有點厭倦了隨意探勘原始碼。

PGP 密鑰格式在RFC 4880中定義。具體來說,第 5.5 節

私鑰格式包括公鑰和相當多的未加密形式的其他資訊。在使用隱寫術之前,在此之上添加另一層加密可能更容易。

引用自:https://crypto.stackexchange.com/questions/37198