我正在C中的遠程備份項目... 我想發送數據和壓縮以及加密數據。壓縮和加密...首先應用哪個?
但是我很疑惑是先壓縮還是先加密!
將會有什麼更好的?:
- 壓縮數據,然後對其進行加密
- 對數據進行加密,然後壓縮它
而且我將使用zlib壓縮。 而我想知道哪個加密庫使用... 有人說libgcrypt是好的。 好的加密庫的建議(非常容易使用)將不勝感激... :)
或者是否有什麼做這兩個工作?
謝謝!
我正在C中的遠程備份項目... 我想發送數據和壓縮以及加密數據。壓縮和加密...首先應用哪個?
但是我很疑惑是先壓縮還是先加密!
將會有什麼更好的?:
而且我將使用zlib壓縮。 而我想知道哪個加密庫使用... 有人說libgcrypt是好的。 好的加密庫的建議(非常容易使用)將不勝感激... :)
或者是否有什麼做這兩個工作?
謝謝!
你應該在加密前壓縮。
任何好的加密算法都會產生無法壓縮的隨機數據。
我最喜歡易寫,理解和使用的算法是blowfish。在這個鏈接中有幾個實現在代碼的一些優先權。
它與AES/DES等大致相同的安全級別,即非常牢不可破。與所有加密一樣,真正的漏洞將會是你和你的用戶!
這是不正確的。 Blowfish沒有接近AES安全級別的地方,並且DES由於非常小的密鑰大小而被有效破壞。 Blowfish使用64位塊大小,所以無論模式如何,生日悖論告訴我們,在(2^32 * 8)= 32GB數據後,您將開始泄漏信息。 – mfanto
如果您使用「passwd」作爲密碼,或者將私鑰包含在PS3的固件中,那麼它同樣安全。加密的問題通常是人們的想法 - 我將使用庫中最令人印象深刻的聽起來mil-spec例程 –
是的,河豚是要走的路(作者是布魯斯·施奈爾!)。但是,這一切都與你如何使用它有關:確保使用正確的分組密碼模式以確保有足夠的強度抵禦加密攻擊 –
+1瞭解和速度。我幾乎擊敗你! – slashingweapon
雖然如果源數據在文件中的已知點處具有已知的壓縮標頭,您很容易受到已知的明文攻擊。 –
謝謝! C中的任何好的庫都知道加密和解密? – Sam