Pgp
是否可以在未經密鑰所有者同意的情況下簽署 OpenPGP 密鑰?如果是,是否可以從密鑰中刪除未經請求的簽名?
例如,我在密鑰伺服器上列出了我的密鑰。有一天,一把以朱利葉斯·凱撒(Julius Caesar)的名字簽發的鑰匙在我的鑰匙上簽名。顯然這個密鑰是一個假密鑰,我想從我的密鑰中刪除它的簽名可以做到嗎?我可以阻止未經請求的密鑰簽名嗎?只有在我驗證簽名後,我才能讓簽名出現在我的密鑰上?
由於每個認證都是一個獨立的 OpenPGP 數據包,因此當然可以將其刪除——OpenPGP 允許通過打開
gpg --edit-key <key-id>
菜單並delsig
在其中執行來刪除。另一種方法是將gpgsplit
OpenPGP 密鑰文件拆分為單獨的數據包,刪除有問題的簽名並cat
再次合併文件。但是,您不能從密鑰伺服器網路中刪除任何內容。大多數關鍵伺服器相互同步,這是通過無一例外地合併所有未知數據包來完成的。使用通用密鑰伺服器軟體,刪除單個數據包並不容易(您必須轉儲所有內容,找到有問題的證書,將其刪除並再次導入數據)。但是即使被刪除,一旦伺服器再次與其他證書同步,違規的證書也會被合併回來。
您幾乎無法說服關鍵伺服器運營商出於給定原因刪除認證;並且出於技術原因,您必須說服所有關鍵伺服器運營商同時這樣做(希望沒有其他使用者擁有該證書的副本並在將來的某個時候再次上傳)。
OpenPGP 密鑰伺服器網路的設計原則之一是防止刪除:僅通過始終收集伺服器可以獲得的所有資訊,即使是強大的攻擊者也很難控制伺服器的相關部分來應用任何類型的審查制度。接受可能包含錯誤資訊的事實,根本不驗證密鑰伺服器網路中的任何內容(除了一些基本的協議級別的技術驗證)。