簡體   English   中英

檢查加密文件中是否有空內容

[英]Check encrypted file for empty content

我正在使用gpg解密供應商發送給我的文件。 當加密文件的內容為空時(供應商告訴我有關文件中沒有內容),一切正常。

如果我嘗試解密這些文件之一,則會得到:

gpg:無法處理此含糊不清的簽名數據

有什么方法可以檢查文件頭是否包含任何內容,以便我可以將其設置為更優雅地失敗?

根據此郵件列表帖子 ,官方的PGP工具存在一個錯誤,有時會導致它生成格式錯誤的消息。 您可以通過運行gpg --list-packets path/to/encrypted/file.pgp並查看輸出來驗證您的特定文件是否屬於這種情況。 如果您看到:onepass_sig packet:緊隨其后的是:signature packet:那么可能就是這種情況。

以我的經驗(有限的),如果發件人試圖加密一個空文件,則會發生這種情況。 不幸的是,由於加密的目的是使您很難看清內部內容,因此在嘗試解密之前很難說出是否確實如此。 gpg的--list-packets輸出將為您提供一些信息,但是我注意到:literal data packet:輸出通常會顯示“原始數據:0字節”,即使消息包含非空文件也是如此。

您可以使用--skip-verify選項使gpg忽略加密文件中的所有簽名數據,但是,當然,您無法確定要解密的文件是否來自受信任的來源。

假設您正在使用unix shell腳本,則可以先嘗試執行[[-s / the / file]“,然后再嘗試進行GPG解密。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM