把檔案進行壓縮是否本身就是一種加密?

時間 2021-05-07 23:42:46

1樓:馮東

當我們接收到乙個 message 的時候,實際上還隱含接收到乙個 frame message ID。比如說乙個雙語者接收到一條中文(或者英文)的訊息,他會識別出 frame message ID 是中文(還是英文),然後用相應的 frame message decoder 去解釋這個資訊(成為人腦中的 meta-language)。

而對於乙個只會說中文的人,他也許能識別出一條 message 的 frame message ID 是英文,但是沒有辦法對其進行 decoding。

但是在通常情況下,我們不能以接收者是否能學會某個 decoder 作為資訊的指向性。就像如果中美開戰了,美國一樣有會中文的人,中國一樣有會英文的人。美國二戰那種「風語者」無非是借人類幾千年發展的老本,說實話到了全球化時代也越來越難重現了。

更不可能 scale up 到計算機系統中。

而乙個好的加密演算法裡,frame message decoder 是可以分離為演算法和金鑰的。即使知道了 frame message ID,也知道了 frame message decoder 的演算法,沒有金鑰還是不能 decoding。

壓縮是什麼呢?只是 decoder 比明文更複雜一些,但是這個 decoder 並不能拆分。知道了 frame message ID,接收者就一定可以解密(在使用 well-known 壓縮演算法的時候)。

2樓:

7z.zip本身就支援用密碼加密。

雖然未加密的壓縮檔案可以被伺服器/運營商解壓縮分析,但是分別傳送密碼和加密過的壓縮文件的話就很難被截獲分析了。

3樓:

如果能掩蓋原文, 讓別人肉眼看不出來, 就算是加密。 但是從密碼學上說, 這個密碼強度非常差。 所以為了增強密碼強度, 我們加密的時候都利用很多非常複雜的數學問題來做加密。

比如說log-discret, factorisation, DH, 什麼的,為了保證密碼強度至少達到0.5的121次冪。而且根據用途不同又有不同的演算法, 到底是用來加密?

還是用來簽名? 還是用來做認證? 還是僅僅用來交換公鑰。。。

水比較深。。。。 不過, 加密的定義還是很簡單的啦。能覆蓋原文讓人猜不出來的就是!

abcd到bcda這種也算。

4樓:封禁讓我戒乎

壓縮只能算一種變換,它需要對應/相反的變換過程才能還原(如果是有失真壓縮,只能是粗略的還原)。

除了(無損)壓縮,最基本的 ASCII、國標碼、UTF。。。也都是變換、編碼。

加密,除了需要對應/相反的變換過程,還需要當時採用的密碼(或者其對應的公私鑰),才能還原。

5樓:jb jb

原文,若干鑰匙( 1, 2...),

加密方法,

解密方法,

密文壓縮是:

若干鑰匙全部公開,

加密方法公開,

解密方法公開,

密文公開,

gt;推出原文

並沒有要求你推出方法(由一組樣本推出方法大多時候是不可行的,AI是由大量樣本推出方法)

但是假如有一種極端的壓縮方法,還是上面的4個已知條件,假如解壓縮方法需要超快的電腦,傳送方有這樣的電腦,接收方也有這樣的電腦,但是你沒有,雖然你知道加密方法解密方法和引數 ,但是你的電腦要算12023年,那麼這個極端的壓縮方法對於傳送方和接受方來說是壓縮,對於你來說就是加密.

加密:若干鑰匙不全部公開,

加密方法公開,

解密方法公開,

密文公開,

gt;推出原文

通常的加密都是這樣的,對稱的只有一把不公開的鑰匙,非對稱的有一把不公開的 ,一把公開的 . 但是無論哪種,加密方法和解密方法都是公開的(至少對於傳送和接受方要公開乙個),如果方法不公開,那意義就不大了.

6樓:

壓縮只是一種檔案編碼(比如bmp格式和jpg格式都是對影象的一種編碼方式),本身並沒有降低檔案的資訊熵,而加密的時候秘鑰是不在檔案裡面的,如果沒有秘鑰,那就無法解密,也就是說加密後檔案的資訊熵是要低於加密以前的

7樓:王棟

壓縮不算是加密,如果你真的把它當做加密演算法的話則它的安全性完全依賴於壓縮演算法,而不是乙個你自己可以設定的秘鑰。

回到問題描述的情況來看,則有壓縮確實比明文要安全一些,比如說別人只是抓了相關的一兩個包,那這東西對他來說確實是沒法讀也沒法解。黑客在進行web注入的時候也首先要欺騙伺服器不要使用壓縮演算法。

不過嘛,壓縮所能帶來的相比明文的安全性,還是非常有限的。

8樓:

壓縮並不是一種現代密碼學意義上「好」的加密方法

對於現代密碼學來說, 加密應該是找到一種"單向陷門函式".

首先, 這個單向陷門函式應該是乙個單向函式. 也就是說, 如果你知道x, 那麼很容易就可以計算出f(x), 但是如果你知道f(x), 卻不那麼容易反推回x.

其次, 這個單向陷門函式需要乙個陷門. 就是, 雖然讓我直接從f(x)反推x比較困難, 但是如果我們知道了某些資訊y, 就可以比較容易地從f(x)反推得到x. 這裡y就相當於金鑰.

準確一點說, 解密秘鑰.

這樣加密的好處是, 加密使用的函式f是可以公開的, 只要你自己儲存好y, 那麼別人想通過f(x)反推回x就比較困難. 這樣就保證了安全性.

對於通常意義上的壓縮來說, 雖然也是通過某種演算法f, 從x計算得到f(x). 但是首先這個f不是單向函式, 更沒有什麼"陷門". 所以說壓縮演算法是不能當做現代密碼學意義上的加密來用的.

剛才我說了"通常意義上的壓縮", 是因為有例外情況的. 比如rar, 是支援使用AES加密的. 但這個過程是兩步走, 先壓縮, 再加密, 就不能算是單純的壓縮了.

我看之前有答主說, 你不能直接讀出壓縮的檔案, 所以認為壓縮屬於加密. 這是不對的. 密碼學上有乙個原則叫柯克霍夫原則.

通俗來說就是, 好的加密演算法應該保證, 即使對方知道你加密的演算法細節, 但只要他不知道你的金鑰, 仍然應該使對方無法解密.

而在壓縮的演算法中, 只要對方知道了你壓縮/解壓的演算法, 很容易就可以破解你壓縮後的資訊. 所以這不能說是乙個現代密碼學意義上"好"的加密演算法.

9樓:

首先,你在網上傳輸的壓縮過的檔案,就像明文一樣的透明,常用壓縮演算法的特徵都很明顯,分析網路流量的工具完全可以全自動地解壓縮。

即使你自己設計乙個壓縮演算法(或者乙個加密演算法),也不能把安全性提高多少。自己設計的演算法極可能是非常樸素的思路,對於研究這方面的人來說,可以說沒有任何障礙。但是,如果能讓自動工具失效,成本會變高,別人需要理由來分析你的演算法(但是從另乙個角度來說,使用自己的加密演算法這一事實,本身就可以說帶來了理由)。

再更進一步說,從本質上來說,加密和壓縮除了目的不同,其他方面都是一樣的。加密是一種對抗行為,很多時候要做悲觀假設,要關注最壞情況;而壓縮往往關心的是平均情況。加密關心的是對手的能力,而壓縮關心的資料本身的規律。

壓縮之所以有意義,是因為我們處理的資料,往往有很明顯的冗餘。根據鴿舍原理,不存在能夠壓縮所有資料的無失真壓縮演算法(最常見的詭計就是把次數之類的資訊藏在檔名裡面,假裝檔名不需要地方存放)。如果對資料沒有任何先驗假設,那幾乎所有的資料都不可壓縮的(柯爾莫哥洛夫複雜性)。

10樓:薛偉超

加密的目的:

隱藏資訊的含義

你可以截獲密文(資訊)但很難知道其有意義的內容(資訊的含義)壓縮的目的:

減少資訊的表面上/某個層面的熵

題主把兩者混淆,是因為壓縮這個手段/方法隱含著乙個推論,既不知道解壓方法時,資訊可以被認為是加密的

11樓:

如果你的壓縮演算法獨一無二,別人沒法解壓出來,只有你能,你也可以把你的壓縮當做是加密。但是一般而言,壓縮主要是為了減小儲存/傳輸資料量,而加密主要是為了保護資料的安全性,加密之後還可以壓縮,壓縮之後還可以加密,然後再壓縮,再加密,再壓縮,無窮匱也,只要你不把自己繞暈。對於一般的 http 傳輸編碼,http 庫會自己處理的,對於應用層來說,這些處理都是透明的。

12樓:夏洋

當然不是了,重點在於目的不同。

這裡有三個相關但是根本目的不同的行為:編碼(encoding),壓縮(compression),加密(encryption)。題主混淆的其實不是壓縮和加密,而是編碼和加密:

加密的根本目的不是提高熵密度(雖然效果上通常會),而是防止未授權的訪問,重點在於『授權』這個行為,其它結果都是副產品。

壓縮的根本目的是減小資訊體積,提高熵密度。

編碼的目的是把資訊進行某種變換,以達到某種目的,比如使得它能被裝進目標載體裡。

比如我寫了一封中文信,那麼歪果仁就看不懂了,但他隨便找個中中國人就能看懂。在這裡我『用中文』只是把我腦子裡的想法進行的一種編碼,目的並不在於『只允許我授權了的人解讀』。如果是後者,那麼我用密碼加密,除非我把密碼告訴你,否則(在不考慮演算法漏洞的情況下)你找誰都沒用,這才是加密。

13樓:張天明

加密和壓縮應該說是兩種不同的目的。

他們有一樣的表現形式:把原來的字元做了變換。

對資料壓縮不能保證轉換後的資料是很難解密的對資料加密不能保證轉換後一定是變短的

你是否認可奮鬥本身就是一種幸福?

艾文 認可,當然這個要看是否個人。有的人本身喜歡安逸的生活,覺得奮鬥會很累,不過有的人喜歡奮鬥。當然很多時候奮鬥也是沒辦法的事 今天也想出去玩 一直覺得努力之後有回報真的是特別快樂 奮鬥真的是為了自己呀 規劃好自己的人生 選擇權攥在自己手裡 不會整天渾渾噩噩被推著走 不會整天閒到累 沒有過多的時間杞...

物質存在本身是否屬於一種資訊

廿肆 生物認知中的 世界 是生物體系對外部世界的內部再現,常說的 視覺 根本上是對外部世界的空間關係的內部再現,並不一定要靠眼睛感知光線在構建視覺,例如蝙蝠大體上是通過聲音來構建 視覺 的,因為蝙蝠是通過聲音這種資訊來獲知外部世界的空間結構的。這種內部再現的實現方式是資訊的互動,所以我們感知中的 實...

「不存在」本身,是否也是一種存在?

Loace汐x偌 如果一切都不存在了,那至少還有一種東西存在,那就是 不存在 本身。如果連 不存在 都不存在了,那意味著一切可能存在都必須存在,可 不存在 也是一種存在,所以推出 不存在 仍然存在。可是 不存在 如果存在的話,那 不存在 就不存在了,因為還有 不存在 的存在。所以這是個悖論。不存在 ...