Encryption

解密 GnuPG 加密的文件

  • February 22, 2019

我有一些 RNA-seq 文件需要解密。

例如

1672_WTSI-OESO_005_w3.tar.gz.gpg

可能我在同一個文件夾中有密鑰

1672_WTSI-OESO_005_w3.gpgkey

我也有一個文件名

1672_WTSI-OESO_005_w3.md5

裡面我有

884f9fa72fb7f6adbba95dc677eb0ec9  1672_WTSI-OESO_005_w3.tar.gz.gpg

已編輯

   [fi1d18@cyan01 fereshteh]$ gpg --decrypt --passphrase-file=1672_WTSI-OESO_036_a_RNA.gpgkey --output - 1672_WTSI-OESO_036_a_RNA.tar.gz.gpg | tar -xvzf -
gpg: CAST5 encrypted data
can't connect to `/home/fi1d18/.gnupg/S.gpg-agent': No such file or directory
gpg: encrypted with 1 passphrase
1672_WTSI-OESO_036_a_RNA/
1672_WTSI-OESO_036_a_RNA/mapped_sample/
1672_WTSI-OESO_036_a_RNA/mapped_sample/HUMAN_1000Genomes_hs37d5_RNA_seq_WTSI-OESO_036_a_RNA.dupmarked.bam.bai
1672_WTSI-OESO_036_a_RNA/mapped_sample/HUMAN_1000Genomes_hs37d5_RNA_seq_WTSI-OESO_036_a_RNA.dupmarked.bam
gpg: WARNING: message was not integrity protected

gzip: stdin: invalid compressed data--crc error

gzip: stdin: invalid compressed data--length error
tar: Skipping to next header
tar: Child returned status 1
tar: Error is not recoverable: exiting now
[fi1d18@cyan01 fereshteh]$

根據您顯示的 GnuPG 輸出,該文件是使用 CAST5 算法加密的文件。這是一種對稱加密算法,這意味著您應該能夠使用該.gpgkey文件中的密碼gpg --decrypt來解密它(無需將其導入您的密鑰環;它不是那種密鑰)。

要解密文件並將解密的數據直接傳遞tar給解包,您可以使用

gpg --decrypt --passphrase-file=1672_WTSI-OESO_005_w3.gpgkey --output - 1672_WTSI-OESO_005_w3.tar.gz.gpg |
tar -xvzf -

這將從提供的文件中讀取密鑰,使用該密鑰解密消息,並將數據傳遞給tar.

如果文件1672_WTSI-OESO_005_w3.gpgkey沒有解密消息,那麼您將不得不與向您提供加密文件的人聯繫,並詢問他們有關如何解密的說明。

.md5文件用於確保該.gpg文件包含正確的數據。您可以使用它來驗證數據,如下所示:

md5sum -c 1672_WTSI-OESO_005_w3.md5

如果這沒有給出輸出

1672_WTSI-OESO_005_w3.tar.gz.gpg: OK

然後文件以某種方式損壞,您需要從任何地方獲得它的新副本。如果它說,FAILED那麼將無法解密和解包數據。gpg``tar


更新問題(現已刪除)末尾顯示的錯誤是Cannot write: Disk quota exceeded。這意味著從存檔中提取的文件太大而無法放入分配給您帳戶的空間。

要解決此問題,請刪除或壓縮不再需要的文件,直到您有足夠的空間來提取存檔,或者與您的系統管理員聯繫並讓他們為您的帳戶分配更多磁碟空間。

引用自:https://unix.stackexchange.com/questions/502326