Encryption
解密 GnuPG 加密的文件
我有一些 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
。這意味著從存檔中提取的文件太大而無法放入分配給您帳戶的空間。要解決此問題,請刪除或壓縮不再需要的文件,直到您有足夠的空間來提取存檔,或者與您的系統管理員聯繫並讓他們為您的帳戶分配更多磁碟空間。